wok-next annotate syslinux/stuff/iso2exe/mvcom.S @ rev 17813
syslinux/iso2exe: update partition table (again)
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Mar 21 15:26:13 2015 +0100 (2015-03-21) |
parents | ada914860f33 |
children | 62104f2454a3 |
rev | line source |
---|---|
pascal@14150 | 1 .text |
pascal@14150 | 2 .code16 |
pascal@14150 | 3 |
pascal@14150 | 4 ORGCOM = 0x100 |
pascal@14150 | 5 |
pascal@14150 | 6 .org 0 |
pascal@14150 | 7 |
pascal@14150 | 8 .globl _start |
pascal@14150 | 9 _start: |
pascal@14150 | 10 movw $0, %si // .com size |
pascal@14150 | 11 movw $0, %bx // .com loc |
pascal@14150 | 12 #if 1 |
pascal@14267 | 13 // Move up EXE/PE and DOS/COM to ensure that bootiso[] |
pascal@14267 | 14 // in EXE/PE will not be affected by the DOS/COM move. |
pascal@14150 | 15 pushw %si |
pascal@14150 | 16 leaw 1-64-256(%bx,%si), %cx |
pascal@14150 | 17 leaw (%bx,%si), %si |
pascal@14267 | 18 movw $0xF000, %di // Keep 4K for stack |
pascal@14150 | 19 cmpw %si, %di |
pascal@14150 | 20 jc skip |
pascal@14150 | 21 std |
pascal@14150 | 22 rep |
pascal@14150 | 23 movsb |
pascal@14150 | 24 subw %si, %di |
pascal@14150 | 25 addw %di, %bx |
pascal@14150 | 26 skip: |
pascal@14150 | 27 popw %si |
pascal@14150 | 28 #endif |
pascal@14150 | 29 movw $done-install, %cx |
pascal@14150 | 30 leaw (%bx,%si), %di |
pascal@14150 | 31 pushw %si |
pascal@14150 | 32 call move |
pascal@14150 | 33 install: |
pascal@14150 | 34 popw %cx |
pascal@14150 | 35 movw $ORGCOM, %di |
pascal@14150 | 36 pushw %bx |
pascal@14150 | 37 move: |
pascal@14150 | 38 popw %si |
pascal@14150 | 39 pushw %di |
pascal@14150 | 40 cld |
pascal@14150 | 41 rep |
pascal@14150 | 42 movsb |
pascal@14150 | 43 ret |
pascal@14150 | 44 done: |
pascal@14317 | 45 .ascii "(www.slitaz.org)" |
pascal@14317 | 46 |
pascal@14150 | 47 // .org 64 |