wok-6.x rev 23797

linld: fix argstr
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sat May 23 18:02:24 2020 +0000 (2020-05-23)
parents ae9776c2d2b4
children 00ef8230cd61
files icu-dev/receipt icu/receipt libopusenc-dev/receipt libopusenc/receipt linld/stuff/src/!COMPILE.BAT linld/stuff/src/CRTL.ASM linld/stuff/src/ISOSTATE.INC linld/stuff/src/LINLD.CPP linld/stuff/src/_BEG.ASM opus-dev/receipt opus-tools/receipt opus/receipt opusfile-dev/receipt opusfile/receipt unzip/receipt zip/receipt
line diff
     1.1 --- a/icu-dev/receipt	Fri May 22 13:54:45 2020 +0100
     1.2 +++ b/icu-dev/receipt	Sat May 23 18:02:24 2020 +0000
     1.3 @@ -7,7 +7,7 @@
     1.4  WANTED="icu"
     1.5  MAINTAINER="pankso@slitaz.org"
     1.6  LICENSE="MIT"
     1.7 -WEB_SITE="http://www.icu-project.org/"
     1.8 +WEB_SITE="https://www.icu-project.org/"
     1.9  
    1.10  DEPENDS="icu pkg-config gcc-lib-base"
    1.11  
     2.1 --- a/icu/receipt	Fri May 22 13:54:45 2020 +0100
     2.2 +++ b/icu/receipt	Sat May 23 18:02:24 2020 +0000
     2.3 @@ -8,7 +8,7 @@
     2.4  LICENSE="MIT"
     2.5  SOURCE="icu4c"
     2.6  TARBALL="$SOURCE-${VERSION//./_}-src.tgz"
     2.7 -WEB_SITE="http://www.icu-project.org/"
     2.8 +WEB_SITE="https://www.icu-project.org/"
     2.9  WGET_URL="http://download.icu-project.org/files/$SOURCE/$VERSION/$TARBALL"
    2.10  #WGET_URL="http://www.sfr-fresh.com/unix/misc/$TARBALL"
    2.11  
     3.1 --- a/libopusenc-dev/receipt	Fri May 22 13:54:45 2020 +0100
     3.2 +++ b/libopusenc-dev/receipt	Sat May 23 18:02:24 2020 +0000
     3.3 @@ -6,7 +6,7 @@
     3.4  SHORT_DESC="High-level Opus encoding library, development files"
     3.5  MAINTAINER="pascal.bellard@slitaz.org"
     3.6  LICENSE="GPL2"
     3.7 -WEB_SITE="http://opus-codec.org/"
     3.8 +WEB_SITE="https://opus-codec.org/"
     3.9  WANTED="libopusenc"
    3.10  
    3.11  DEPENDS="libopusenc pkg-config"
     4.1 --- a/libopusenc/receipt	Fri May 22 13:54:45 2020 +0100
     4.2 +++ b/libopusenc/receipt	Sat May 23 18:02:24 2020 +0000
     4.3 @@ -7,7 +7,7 @@
     4.4  MAINTAINER="pascal.bellard@slitaz.org"
     4.5  LICENSE="GPL2"
     4.6  TARBALL="$PACKAGE-$VERSION.tar.gz"
     4.7 -WEB_SITE="http://opus-codec.org/"
     4.8 +WEB_SITE="https://opus-codec.org/"
     4.9  WGET_URL="https://archive.mozilla.org/pub/opus/$TARBALL"
    4.10  
    4.11  DEPENDS="opus"
     5.1 --- a/linld/stuff/src/!COMPILE.BAT	Fri May 22 13:54:45 2020 +0100
     5.2 +++ b/linld/stuff/src/!COMPILE.BAT	Sat May 23 18:02:24 2020 +0000
     5.3 @@ -10,5 +10,5 @@
     5.4  mawk -f pipehole.awk LINLD.ASO > LINLD.ASM
     5.5  mawk -f pipehole.awk LOAD.ASO > LOAD.ASM
     5.6  mawk -f pipehole.awk HIMEM.ASO > HIMEM.ASM
     5.7 -tasm /la /m /dMOVE_SETUP /dUSE_ARGSTR /dNO386 /dLARGE_IMAGES /dLONG_FILENAME *.asm > asm.log
     5.8 +tasm /la /m /dISOHOOK /dMOVE_SETUP /dUSE_ARGSTR /dNO386 /dLARGE_IMAGES /dLONG_FILENAME *.asm > asm.log
     5.9  tlink /m /s /t @link.cmd > lnk.log
     6.1 --- a/linld/stuff/src/CRTL.ASM	Fri May 22 13:54:45 2020 +0100
     6.2 +++ b/linld/stuff/src/CRTL.ASM	Sat May 23 18:02:24 2020 +0000
     6.3 @@ -31,26 +31,7 @@
     6.4          segment _BSS byte public use16 'BSS'
     6.5  
     6.6  		ifdef EXTRA
     6.7 -;typedef unsigned dirsizetype;
     6.8 -struc		isostate		; struct isostate {
     6.9 -curpos		dw	?		; 0	unsigned curpos;
    6.10 -filename2open	dw	?		; 2	char *filename2open;
    6.11 -fd		dw	?		; 4	int fd;
    6.12 -filemod		dw	?		; 6	unsigned short filemod;
    6.13 -fileofs		dd	?		; 8	unsigned long fileofs;
    6.14 -filesize	dd	?		;12	unsigned long filesize;
    6.15 -filename	dw	?		;16	char *filename;
    6.16 -curdirsize	dw	?		;18	dirsizetype curdirsize;
    6.17 -dirsize		dw	?		;20	dirsizetype dirsize;
    6.18 -curdirofs	dd	?		;22	unsigned long curdirofs;
    6.19 -dirofs		dd	?		;26	unsigned long dirofs;
    6.20 -;overlap
    6.21 -entrysize	dw	?		;30	int entrysize;
    6.22 -tmp		dw	?		;32	const char *tmp;
    6.23 -c		db	?		;34	char c;
    6.24 -_64bits		db	?		;35	char _64bits;
    6.25 -buffer		db	?		;36	char buffer[2048+512];
    6.26 -ends		isostate		; } isostate;
    6.27 +		include	"isostate.inc"
    6.28  		public	_isostate
    6.29  _isostate	isostate	<?>
    6.30  		org	$-7
    6.31 @@ -59,7 +40,7 @@
    6.32  filecnt		db	?		; in fact 0 minus file count...
    6.33  nextfilename	dw	?
    6.34  	ifdef	EXTRA
    6.35 -ultoabuf	db	12	dup (?)
    6.36 +utoabuf		db	6	dup (?)
    6.37  	endif
    6.38  
    6.39          ends    _BSS
    6.40 @@ -111,6 +92,8 @@
    6.41  		xchg	ax,dx
    6.42  strend:
    6.43                  pop	si
    6.44 +	global	@ret:near
    6.45 +@ret:
    6.46  		ret
    6.47  
    6.48          endp	@strcatb$qpxzct1
    6.49 @@ -185,6 +168,10 @@
    6.50          proc    @open$qpxzc near
    6.51  
    6.52  open:						; open(bx)
    6.53 +	ifdef	ISOHOOK
    6.54 +		extrn	iso_open_hack:word
    6.55 +		call	[iso_open_hack]		; or ret
    6.56 +	endif
    6.57  	ifdef	LONG_FILENAME
    6.58  		mov	ax,716Ch
    6.59  		push	bx si
    6.60 @@ -221,6 +208,10 @@
    6.61  
    6.62          global  close:near			; close(ax)
    6.63  close:
    6.64 +	ifdef	ISOHOOK
    6.65 +		extrn	iso_close_hack:word
    6.66 +		call	[iso_close_hack]	; or ret
    6.67 +	endif
    6.68  		mov	bh,3Eh
    6.69  dosbx:
    6.70  		xchg	ax,bx
    6.71 @@ -263,6 +254,10 @@
    6.72  @read$cxdxbx:
    6.73                  mov	ah,3Fh
    6.74  		endif
    6.75 +	ifdef	ISOHOOK
    6.76 +		extrn	iso_read_hack:word
    6.77 +		call	[iso_read_hack]		; or ret
    6.78 +	endif
    6.79                  jcxz	fail
    6.80  dos:
    6.81                  int	21h
    6.82 @@ -302,6 +297,10 @@
    6.83  lseekword:
    6.84  		sbb	cx,cx
    6.85  lseekset:
    6.86 +	ifdef	ISOHOOK
    6.87 +		extrn	iso_lseek_hack:word
    6.88 +		call	[iso_lseek_hack]	; or ret
    6.89 +	endif
    6.90  		mov	bh,42h			; bx=fd cx:dx=offset al=whence
    6.91  		jmp	dosbx
    6.92  
    6.93 @@ -394,13 +393,8 @@
    6.94  		xchg	ax,di			; vars => di
    6.95  		dec	bx
    6.96  @@testalt:
    6.97 -		mov	al,-1
    6.98  		sub	di,dx
    6.99 -@@test:
   6.100 -		cmp	al,'='
   6.101 -		je	@@found
   6.102 -		cmp	al,0			; eos, si=next argv
   6.103 -		je	@@found
   6.104 +@@loop:
   6.105  		mov	si,cx			; s
   6.106  		add	di,dx
   6.107  @@match:
   6.108 @@ -416,15 +410,29 @@
   6.109  @@notopt:
   6.110  		ifdef	EXTRA
   6.111  		cmp	[byte bx],'/'
   6.112 -		je	@@testalt
   6.113 +		jne	@@notalt
   6.114 +		or	al,al			; 1st loop ?
   6.115 +		js	@@testalt
   6.116 +@@notalt:
   6.117  		endif
   6.118  		cmp	[byte bx],'|'
   6.119  		je	@@test
   6.120 +		cmp	[byte bx],0
   6.121 +		je	@@test
   6.122 +		mov	al,-1
   6.123  		inc	bx
   6.124 -		cmp	[byte bx-1],0
   6.125 -		jne	@@notopt
   6.126 +		jmp	@@notopt
   6.127 +@@test:
   6.128 +		or	al,al			; 1st loop ?
   6.129 +		jns	@@testal
   6.130 +		cmp	[byte bx],0
   6.131 +		jne	@@loop
   6.132 +@@testal:
   6.133 +		cmp	al,'='
   6.134 +		;je	@@found
   6.135 +		;cmp	al,0			; eos, si=next argv
   6.136  		stc
   6.137 -		jmp	@@nokeyword
   6.138 +		jne	@@nokeyword
   6.139  @@found:
   6.140  		mov	[di],si
   6.141  		dec	dx
   6.142 @@ -573,7 +581,7 @@
   6.143  		jz	@@eos
   6.144  		or	al,al
   6.145  		jnz	@@scan
   6.146 -		dec	cx
   6.147 +		dec	cx			; blocked to eos
   6.148  @@eos:
   6.149  		mov	[(image_himem di).state],cx
   6.150  		dec	si
   6.151 @@ -1300,34 +1308,25 @@
   6.152  		ifdef	EXTRA
   6.153                  p8086
   6.154  ;***************************************************************
   6.155 -;_fastcall char *ultoa(axdx:unsigned long n);
   6.156 +;_fastcall char *utoa(ax:unsigned n);
   6.157  ;***************************************************************
   6.158 -        global  @ultoa$qul:near
   6.159 -        proc    @ultoa$qul near
   6.160 +        global  @utoa$qui:near
   6.161 +        proc    @utoa$qui near
   6.162  
   6.163 -		xchg	ax,cx
   6.164 -		xchg	ax,dx		; AX:CX = n
   6.165 -		push	si
   6.166 -		mov	si,10
   6.167 -		mov	bx,offset ultoabuf+11
   6.168 +		mov	cx,10
   6.169 +		mov	bx,offset utoabuf+5
   6.170  @@loop:
   6.171  		dec	bx
   6.172  		xor	dx,dx
   6.173 -		div	si		; DX:AX = 0000:hi(n)
   6.174 -		xchg	ax,cx		; CX = hi(n)/10
   6.175 -		div	si		; DX:AX = hi(n)%10:lo(n)
   6.176 -		xchg	ax,cx		; CX = lo(n/10)
   6.177 -					; AX = hi(n)/10 = hi(n/10)
   6.178 +		div	cx		; DX:AX = n%10:n/10
   6.179  		mov	[byte bx],'0'
   6.180  		add	[bx],dl		; DL = n%10
   6.181 -		mov	dx,ax
   6.182 -		or	dx,cx
   6.183 +		or	ax,ax
   6.184  		jnz	@@loop
   6.185  		xchg	ax,bx
   6.186 -		pop	si
   6.187  		ret
   6.188  
   6.189 -        endp    @ultoa$qul
   6.190 +        endp    @utoa$qui
   6.191  
   6.192  
   6.193  ;***************************************************************
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/linld/stuff/src/ISOSTATE.INC	Sat May 23 18:02:24 2020 +0000
     7.3 @@ -0,0 +1,21 @@
     7.4 +
     7.5 +;typedef unsigned dirsizetype;
     7.6 +struc		isostate		; struct isostate {
     7.7 +curpos		dw	?		; 0	unsigned curpos;
     7.8 +filename2open	dw	?		; 2	char *filename2open;
     7.9 +fd		dw	?		; 4	int fd;
    7.10 +filemod		dw	?		; 6	unsigned short filemod;
    7.11 +fileofs		dd	?		; 8	unsigned long fileofs;
    7.12 +filesize	dd	?		;12	unsigned long filesize;
    7.13 +filename	dw	?		;16	char *filename;
    7.14 +curdirsize	dw	?		;18	dirsizetype curdirsize;
    7.15 +dirsize		dw	?		;20	dirsizetype dirsize;
    7.16 +curdirofs	dd	?		;22	unsigned long curdirofs;
    7.17 +dirofs		dd	?		;26	unsigned long dirofs;
    7.18 +;overlap
    7.19 +entrysize	dw	?		;30	int entrysize;
    7.20 +tmp		dw	?		;32	const char *tmp;
    7.21 +c		db	?		;34	char c;
    7.22 +_64bits		db	?		;35	char _64bits;
    7.23 +buffer		db	?		;36	char buffer[2048+512];
    7.24 +ends		isostate		; } isostate;
     8.1 --- a/linld/stuff/src/LINLD.CPP	Fri May 22 13:54:45 2020 +0100
     8.2 +++ b/linld/stuff/src/LINLD.CPP	Sat May 23 18:02:24 2020 +0000
     8.3 @@ -71,7 +71,7 @@
     8.4  	else if (argnum(*argv,"root|vga|mem|-b",&root_dev) != -1);
     8.5  	else {
     8.6  	    *clp = (const char *) buf_cmdline + 1;
     8.7 -	    strcatb((const char *) buf_cmdline,*argv);
     8.8 +	    do strcatb((const char *) buf_cmdline,*argv++); while (*argv);
     8.9  	boot:
    8.10              puts(*clp);
    8.11  	    set_cmdline(*clp);
     9.1 --- a/linld/stuff/src/_BEG.ASM	Fri May 22 13:54:45 2020 +0100
     9.2 +++ b/linld/stuff/src/_BEG.ASM	Sat May 23 18:02:24 2020 +0000
     9.3 @@ -60,6 +60,9 @@
     9.4  clearbss:
     9.5  		mov	[si],bl		; clear bss + heap
     9.6  		inc	si
     9.7 +	ifdef	ISOHOOK
     9.8 +		cmp	si,bx
     9.9 +	endif
    9.10  		jne	clearbss
    9.11  
    9.12  ;***************************************************************
    9.13 @@ -100,6 +103,21 @@
    9.14  		jmp	endcpu86
    9.15  		endif
    9.16  
    9.17 +	ifdef	ISOHOOK
    9.18 +		extrn	@ret:near
    9.19 +		global	iso_open_hack
    9.20 +iso_open_hack	dw	@ret
    9.21 +		global	iso_read_hack
    9.22 +iso_read_hack	dw	@ret
    9.23 +		global	iso_lseek_hack
    9.24 +iso_lseek_hack	dw	@ret
    9.25 +		global	iso_close_hack
    9.26 +iso_close_hack	dw	@ret
    9.27 +		global	iso_cleanup_hack
    9.28 +iso_cleanup_hack	dw	@ret
    9.29 +		dw	_cpu_features+3
    9.30 +	endif
    9.31 +
    9.32  ;***************************************************************
    9.33  ; checks for vcpi
    9.34  ;***************************************************************
    10.1 --- a/opus-dev/receipt	Fri May 22 13:54:45 2020 +0100
    10.2 +++ b/opus-dev/receipt	Sat May 23 18:02:24 2020 +0000
    10.3 @@ -6,7 +6,7 @@
    10.4  SHORT_DESC="Totally open, royalty-free, highly versatile audio codec, development files."
    10.5  MAINTAINER="pascal.bellard@slitaz.org"
    10.6  LICENSE="BSD"
    10.7 -WEB_SITE="http://opus-codec.org/"
    10.8 +WEB_SITE="https://opus-codec.org/"
    10.9  
   10.10  WANTED="opus"
   10.11  DEPENDS="opus pkg-config"
    11.1 --- a/opus-tools/receipt	Fri May 22 13:54:45 2020 +0100
    11.2 +++ b/opus-tools/receipt	Sat May 23 18:02:24 2020 +0000
    11.3 @@ -7,7 +7,7 @@
    11.4  MAINTAINER="pascal.bellard@slitaz.org"
    11.5  LICENSE="GPL2"
    11.6  TARBALL="$PACKAGE-$VERSION.tar.gz"
    11.7 -WEB_SITE="http://opus-codec.org/"
    11.8 +WEB_SITE="https://opus-codec.org/"
    11.9  WGET_URL="https://archive.mozilla.org/pub/opus/$TARBALL"
   11.10  
   11.11  DEPENDS="libogg flac opusfile libopusenc"
    12.1 --- a/opus/receipt	Fri May 22 13:54:45 2020 +0100
    12.2 +++ b/opus/receipt	Sat May 23 18:02:24 2020 +0000
    12.3 @@ -7,7 +7,7 @@
    12.4  MAINTAINER="pascal.bellard@slitaz.org"
    12.5  LICENSE="BSD"
    12.6  TARBALL="$PACKAGE-$VERSION.tar.gz"
    12.7 -WEB_SITE="http://opus-codec.org/"
    12.8 +WEB_SITE="https://opus-codec.org/"
    12.9  WGET_URL="https://archive.mozilla.org/pub/$PACKAGE/$TARBALL"
   12.10  
   12.11  DEPENDS=""
    13.1 --- a/opusfile-dev/receipt	Fri May 22 13:54:45 2020 +0100
    13.2 +++ b/opusfile-dev/receipt	Sat May 23 18:02:24 2020 +0000
    13.3 @@ -6,7 +6,7 @@
    13.4  SHORT_DESC="Opus streams in the Ogg container I/O, development files"
    13.5  MAINTAINER="pascal.bellard@slitaz.org"
    13.6  LICENSE="GPL2"
    13.7 -WEB_SITE="http://opus-codec.org/"
    13.8 +WEB_SITE="https://opus-codec.org/"
    13.9  WANTED="opusfile"
   13.10  
   13.11  DEPENDS="opusfile openssl-dev opus-dev pkg-config"
    14.1 --- a/opusfile/receipt	Fri May 22 13:54:45 2020 +0100
    14.2 +++ b/opusfile/receipt	Sat May 23 18:02:24 2020 +0000
    14.3 @@ -7,7 +7,7 @@
    14.4  MAINTAINER="pascal.bellard@slitaz.org"
    14.5  LICENSE="GPL2"
    14.6  TARBALL="$PACKAGE-$VERSION.tar.gz"
    14.7 -WEB_SITE="http://opus-codec.org/"
    14.8 +WEB_SITE="https://opus-codec.org/"
    14.9  WGET_URL="https://downloads.xiph.org/releases/opus/$TARBALL"
   14.10  
   14.11  DEPENDS="libssl libogg opus"
    15.1 --- a/unzip/receipt	Fri May 22 13:54:45 2020 +0100
    15.2 +++ b/unzip/receipt	Sat May 23 18:02:24 2020 +0000
    15.3 @@ -7,7 +7,7 @@
    15.4  MAINTAINER="pascal.bellard@slitaz.org"
    15.5  LICENSE="other"
    15.6  TARBALL="$PACKAGE${VERSION//./}.tar.gz"
    15.7 -WEB_SITE="http://www.info-zip.org/"
    15.8 +WEB_SITE="http://infozip.sourceforge.net/"
    15.9  WGET_URL="$SF_MIRROR/infozip/$TARBALL"
   15.10  TAGS="archive compression"
   15.11  
    16.1 --- a/zip/receipt	Fri May 22 13:54:45 2020 +0100
    16.2 +++ b/zip/receipt	Sat May 23 18:02:24 2020 +0000
    16.3 @@ -7,7 +7,7 @@
    16.4  MAINTAINER="pankso@slitaz.org"
    16.5  LICENSE="other"
    16.6  TARBALL="$PACKAGE${VERSION//./}.tgz"
    16.7 -WEB_SITE="http://www.info-zip.org/"
    16.8 +WEB_SITE="http://infozip.sourceforge.net/"
    16.9  WGET_URL="ftp://ftp.info-zip.org/pub/infozip/src/$TARBALL"
   16.10  TAGS="archive compression"
   16.11