wok annotate syslinux/stuff/iso2exe/lzcom.S @ rev 13713

syslinux/iso2exe: add loram support
author Pascal Bellard <pascal.bellard@slitaz.org>
date Tue Dec 18 16:09:07 2012 +0100 (2012-12-18)
parents
children 5b84cc8c4002
rev   line source
pascal@13691 1 .text
pascal@13691 2 .code16
pascal@13691 3
pascal@13691 4 ORGCOM = 0x100
pascal@13691 5 STKSZ = 0x4000 // unlzma needs 16Kb
pascal@13691 6 CODESZ = (0x10000-STKSZ)/2 // max < 16 sectors = 32Kb
pascal@13691 7
pascal@13691 8 .org 0
pascal@13691 9
pascal@13691 10 .globl _start
pascal@13691 11 _start:
pascal@13691 12 cld
pascal@13691 13 movw $packedcode-unpack, %ax
pascal@13691 14 movw $packedcode+ORGCOM, %si
pascal@13691 15 movw $-STKSZ-CODESZ, %di
pascal@13691 16 subw %ax, %di
pascal@13691 17 pushw %di
pascal@13691 18 movw $CODESZ/2, %cx
pascal@13691 19 rep
pascal@13691 20 movsw // packed code
pascal@13691 21 movw $unpack+ORGCOM, %si
pascal@13691 22 movw %di, %bx
pascal@13691 23 xchgw %ax, %cx
pascal@13691 24 rep
pascal@13691 25 movsb // decompressor
pascal@13691 26 movw $ORGCOM, %di
pascal@13691 27 popw %si
pascal@13691 28 pushw %di
pascal@13691 29 pushw %bx
pascal@13691 30 ret
pascal@13691 31
pascal@13691 32 unpack:
pascal@13691 33 #define FLAT16
pascal@13691 34 #include "unlzma.S"
pascal@13691 35
pascal@13691 36 packedcode: