wok diff linld/stuff/src/CRTL.ASM @ rev 20778

Update some WEB_SITE
author Pascal Bellard <pascal.bellard@slitaz.org>
date Thu Feb 14 13:44:59 2019 +0100 (2019-02-14)
parents cbcb33ee9044
children 03507e8ec4b9
line diff
     1.1 --- a/linld/stuff/src/CRTL.ASM	Tue Feb 12 12:12:36 2019 +0100
     1.2 +++ b/linld/stuff/src/CRTL.ASM	Thu Feb 14 13:44:59 2019 +0100
     1.3 @@ -82,6 +82,9 @@
     1.4  		adc	al,cl		; set S when bx != si or cl = 80
     1.5  		mov	al,20h
     1.6  		jns	@@cpyhead
     1.7 +	else
     1.8 +		mov	al,20h
     1.9 +		jmp	@@cpyhead
    1.10  	endif
    1.11  @@nocat:
    1.12  @@cpylp:
    1.13 @@ -104,7 +107,7 @@
    1.14  	ifdef	EXTRA
    1.15                  p8086
    1.16  ;***************************************************************
    1.17 -;_fastcall char strstr(bx:const char* a, ax:const char* b);
    1.18 +;_fastcall int strstr(bx:const char* a, ax:const char* b);
    1.19  ;***************************************************************
    1.20          global  @strstr$qpxzct1:near
    1.21          proc    @strstr$qpxzct1 near
    1.22 @@ -517,9 +520,8 @@
    1.23  ;        global  _abort:near
    1.24  _abort:
    1.25  		cli
    1.26 -@@stop:
    1.27  		hlt
    1.28 -		jmp	@@stop
    1.29 +		jmp	_abort
    1.30  
    1.31  	endp	@die$qpxzc
    1.32  
    1.33 @@ -920,10 +922,13 @@
    1.34  		ifdef	EXTRA
    1.35  		cmp	[(image_himem di).next_chunk],0	; iso image/initrd ?
    1.36  		jnz	@@next
    1.37 -		endif
    1.38  		mov	[(image_himem di).next_chunk],offset next_chunk
    1.39  @@next:
    1.40                  call	[(image_himem di).next_chunk]	; m->next_chunk()
    1.41 +		else
    1.42 +@@next:
    1.43 +		call	next_chunk
    1.44 +		endif
    1.45  		ifndef	NO386
    1.46  		add	eax,3
    1.47  		and	al,0FCh
    1.48 @@ -939,7 +944,11 @@
    1.49  		endif
    1.50  		jnz	@@next
    1.51                  pop	[(image_himem di).state]
    1.52 +		ifdef	EXTRA
    1.53                  call	[(image_himem di).next_chunk]	; m->next_chunk()
    1.54 +		else
    1.55 +		call	next_chunk
    1.56 +		endif
    1.57  @@alreadydone:
    1.58                  pop	di
    1.59  		ret
    1.60 @@ -974,7 +983,8 @@
    1.61  		xchg	ax,cx
    1.62  @@szok:
    1.63  		jcxz	image_done
    1.64 -		mov	dx,offset _xfer_buf
    1.65 +		mov	dx,offset _xfer_buf+4096
    1.66 +		sub	dx,si
    1.67  		mov	bx,[di]
    1.68  		call	@read$cxdxbx
    1.69  		jc	image_done
    1.70 @@ -1008,9 +1018,16 @@
    1.71  		endif
    1.72  		sub	si,bx
    1.73  		pushf
    1.74 +		ifdef	EXTRA
    1.75                  and	cx,[(image_himem di).next_chunk]
    1.76  		jcxz	@@same_chunk
    1.77 +		push	di
    1.78  		call	cx
    1.79 +		pop	cx
    1.80 +		else
    1.81 +		jcxz	@@same_chunk
    1.82 +		call	next_chunk
    1.83 +		endif
    1.84  @@same_chunk:
    1.85  		popf
    1.86  		jnz	@@loop