wok-6.x rev 13288
memtest: lzma compression (again)
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sun Aug 26 00:28:25 2012 +0200 (2012-08-26) |
parents | 3fd2f1836a8c |
children | e76c37f7bfe6 |
files | memtest/stuff/unpack.S |
line diff
1.1 --- a/memtest/stuff/unpack.S Sun Aug 26 00:21:22 2012 +0200 1.2 +++ b/memtest/stuff/unpack.S Sun Aug 26 00:28:25 2012 +0200 1.3 @@ -1,6 +1,8 @@ 1.4 -#define TOP 0x8FF00 1.5 -#define SYSTEM 0x10000 1.6 -#define SETUP 4 1.7 +#define TOP 0x8FD00 1.8 +#define SYSTEM 0x10000 1.9 +#define SETUP 4 1.10 + 1.11 +#define CHANGE_STACK 1 1.12 1.13 .text 1.14 .code16 1.15 @@ -67,17 +69,31 @@ 1.16 moved: 1.17 popw %es // restore setup seg 1.18 movw START_IP, %di 1.19 +#if CHANGE_STACK 1.20 + movw $0xFFFE, %ax 1.21 + movw %ss, %bx 1.22 + pushw $0 1.23 + popw %ss 1.24 + xchgw %ax, %sp 1.25 + pushw %bx // %ss 1.26 + pushw %ax // %sp 1.27 +#endif 1.28 call unpack // unpack setup 1.29 pushw $SYSTEM/16 1.30 popw %es 1.31 xorw %di,%di 1.32 call unpack // unpack system 1.33 +#if CHANGE_STACK 1.34 + popw %ax // %sp 1.35 + popw %ss 1.36 + xchgw %ax, %sp 1.37 +#endif 1.38 popw %es 1.39 popw %ds 1.40 popal 1.41 iret 1.42 1.43 unpack: 1.44 -#include "unlz4.S" 1.45 +#include "unlzma.S" 1.46 1.47 end: