wok diff linld/stuff/src/MEMCPY32.ASM @ rev 21623
linld: more ram for zImage (again)
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sun May 26 12:07:54 2019 +0200 (2019-05-26) |
parents | f0d71e920c5a |
children | 04ffefac5707 |
line diff
1.1 --- a/linld/stuff/src/MEMCPY32.ASM Fri Nov 09 16:37:55 2018 +0100 1.2 +++ b/linld/stuff/src/MEMCPY32.ASM Sun May 26 12:07:54 2019 +0200 1.3 @@ -46,7 +46,7 @@ 1.4 ;cld 1.5 pushf 1.6 push ds es 1.7 - pushad 1.8 + pushad ; struct declared in VCPI.ASM 1.9 mov cl,4 1.10 movzx esi,[srcseg] 1.11 shl esi,cl 1.12 @@ -73,6 +73,9 @@ 1.13 and di,cx 1.14 inc cx 1.15 sub [sz],ecx 1.16 + jae @@movpara 1.17 + add ecx,[sz] 1.18 +@@movpara: 1.19 rep movsb 1.20 ja @@movlp 1.21 jmp @@done 1.22 @@ -135,7 +138,7 @@ 1.23 pop si 1.24 js @@done16 1.25 p386 1.26 - pushad 1.27 + pushad ; struct declared in VCPI.ASM 1.28 mov esi,[srcofs] 1.29 mov edi,[dstofs] 1.30 1.31 @@ -149,11 +152,8 @@ 1.32 jz @@real_mode 1.33 ; Note: bp points to std stack frame now. bp will be passed to 1.34 ; pm routine. This allows params to be passed on stack 1.35 - extrn do_memcpy_vcpi:near 1.36 - push offset do_memcpy_vcpi 1.37 - extrn call_pm_routine:near 1.38 - call near call_pm_routine ; Call pm copy routine via vcpi pm 1.39 - pop ax 1.40 + extrn vcpi_pm_copy_routine:near 1.41 + call near vcpi_pm_copy_routine ; Call pm copy routine via vcpi pm 1.42 jmp @@done 1.43 @@real_mode: 1.44 cmp esi,edi 1.45 @@ -204,7 +204,7 @@ 1.46 p8086 1.47 @@done16: 1.48 pop es ds 1.49 - popf 1.50 + popf ; restore I & D 1.51 ifndef NO386 1.52 p386 1.53 leave