wok rev 20473

Up ncdu (1.13)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Tue Oct 16 16:37:20 2018 +0200 (2018-10-16)
parents a3684252aaf1
children 8c864718b7b3
files linld/stuff/src/HIMEM.CPP linld/stuff/src/JUMP.ASM linld/stuff/src/MEMCPY32.ASM linld/stuff/src/TAZBOOT.CPP linld/stuff/src/VCPI.ASM ncdu/receipt
line diff
     1.1 --- a/linld/stuff/src/HIMEM.CPP	Fri Oct 12 19:21:44 2018 +0200
     1.2 +++ b/linld/stuff/src/HIMEM.CPP	Tue Oct 16 16:37:20 2018 +0200
     1.3 @@ -12,7 +12,7 @@
     1.4  // Called from inside kernel just before rm->pm
     1.5  // _loadds _saveregs: done by hand
     1.6  void far last_ditch() {
     1.7 -    cli();  // we start doing *really* destructive things to DOS/BIOS
     1.8 +//    cli();  // we start doing *really* destructive things to DOS/BIOS
     1.9              // it means: do not even try to enable ints
    1.10              // or call BIOS services after this
    1.11      asm {
     2.1 --- a/linld/stuff/src/JUMP.ASM	Fri Oct 12 19:21:44 2018 +0200
     2.2 +++ b/linld/stuff/src/JUMP.ASM	Tue Oct 16 16:37:20 2018 +0200
     2.3 @@ -30,6 +30,65 @@
     2.4          segment _TEXT byte public use16 'CODE'
     2.5  
     2.6  ;***************************************************************
     2.7 +;void dos_shutdown()
     2.8 +;***************************************************************
     2.9 +
    2.10 +	macro	dos_shutdown
    2.11 +		xor	bx,bx
    2.12 +		mov	ds,bx
    2.13 +		ifndef	NO386
    2.14 +		push	[dword bx+4]		; save step
    2.15 +		mov	[word bx+4],offset step19
    2.16 +		else
    2.17 +		mov	ax,offset step19
    2.18 +		xchg	ax,[word bx+4]
    2.19 +		push	[word bx+6]	
    2.20 +		push	ax			; save step
    2.21 +		endif
    2.22 +		mov	[word cs:sssp],sp
    2.23 +		;cmp	[byte bx+7],0F0h
    2.24 +		;jnc	notdos
    2.25 +		mov	[bx+6],cs
    2.26 +		pushf
    2.27 +		pushf
    2.28 +		pop	ax
    2.29 +		inc	ah			; set TF
    2.30 +		push	ax
    2.31 +		popf
    2.32 +		call	[dword bx+4*19h]
    2.33 +notdos:
    2.34 +		ifndef	NO386
    2.35 +		lss	sp,[dword cs:sssp]
    2.36 +		else
    2.37 +		lds	ax,[dword cs:sssp]
    2.38 +		push	ds
    2.39 +		pop	ss
    2.40 +		xchg	ax,sp
    2.41 +		endif
    2.42 +		xor	bx,bx
    2.43 +		mov	ds,bx
    2.44 +		ifndef	NO386
    2.45 +		pop	[dword bx+4]		; restore step
    2.46 +		else
    2.47 +		pop	[word bx+4]		; restore step
    2.48 +		pop	[word bx+6]
    2.49 +		endif
    2.50 +	endm
    2.51 +	macro	step19code
    2.52 +step19:
    2.53 +		push	bx
    2.54 +		push	ds
    2.55 +		mov	bx,sp
    2.56 +		lds	bx,[dword ss:bx+4]	; read cs:ip
    2.57 +		cmp	[word bx],19CDh		; int 19h ?
    2.58 +		pop	ds
    2.59 +		pop	bx
    2.60 +		je	notdos
    2.61 +		iret
    2.62 +	endm
    2.63 +
    2.64 +
    2.65 +;***************************************************************
    2.66  ;void boot_kernel();
    2.67  ;****** Never returns
    2.68  ;***************************************************************
    2.69 @@ -37,42 +96,39 @@
    2.70          proc    _boot_kernel near
    2.71          
    2.72                  p8086
    2.73 -; Shrink stack: we won't need much of it now and have no malloc() plans
    2.74  		extrn	_heap_top:word
    2.75 -		mov	ax,[_heap_top]
    2.76 -		inc	ah
    2.77 -		cmp	ax,sp
    2.78 -		ja	@@samesp
    2.79 -		xchg	ax,sp
    2.80 -@@samesp:
    2.81  		ifdef	NO386
    2.82  		extrn	_topseg:near
    2.83  		call	near _topseg
    2.84 -		mov	es,ax
    2.85  		xchg	ax,bx
    2.86 +		mov	ax,[_heap_top]
    2.87 +		inc	ah
    2.88  		mov	cl,4
    2.89 -		mov	ax,sp
    2.90  		shr	ax,cl
    2.91  		else
    2.92                  p386
    2.93  		mov	bx,9000h
    2.94 -		mov	es,bx
    2.95 -		mov	ax,sp
    2.96 +		mov	ax,[_heap_top]
    2.97 +		inc	ah
    2.98  		shr	ax,4
    2.99  		endif
   2.100 +		mov	es,bx
   2.101  		mov	dx,cs
   2.102  		add	ax,dx
   2.103  		cmp	ax,bx
   2.104  		jb	@@nooverflow
   2.105 +		global	sssp
   2.106 +sssp:
   2.107  ; Oops! We can stomp on our toes... better stop now
   2.108  		mov	bx,offset overflow
   2.109  		extrn	die:near
   2.110  		call	near die
   2.111  @@nooverflow:
   2.112 -		cli				; we start doing destructive things to DOS
   2.113 +		;cli				; we start doing destructive things to DOS
   2.114  		push	es
   2.115  		pop	ss
   2.116  		mov	sp,0A000h
   2.117 +		mov	[word sssp+2],ss
   2.118  		extrn	_csip:dword
   2.119  		push	[dword _csip]
   2.120  		extrn	_rm_size:word
   2.121 @@ -92,7 +148,11 @@
   2.122  		rep
   2.123  		  movsb
   2.124  		cmp	al,cl			; load high ?
   2.125 +		ifdef  noelks
   2.126  		jne	@@isbzimage
   2.127 +		else
   2.128 +		jne	@@isbzimagez
   2.129 +		endif
   2.130  		ifdef	NO386
   2.131  		add	bh,9
   2.132  		push	bx			; topseg()+0x0900
   2.133 @@ -112,40 +172,36 @@
   2.134  		mov	cx,offset movedend
   2.135  		rep
   2.136  		  movsb
   2.137 +		push	ax
   2.138  		push	es
   2.139 -		call	near @@doretf		; mov cs,es
   2.140 -		push	ss
   2.141 -		pop	es
   2.142 +		dos_shutdown			; clear bx
   2.143 +		call	near @@doretf		; pop cs
   2.144  		push	cs
   2.145  		pop	ds
   2.146 -		push	ax
   2.147 -		extrn	dos_shutdown:near
   2.148 -		call	near dos_shutdown
   2.149  		;in	al,70h
   2.150  		;or	al,80h			; disable NMI
   2.151  		;out	70h,al
   2.152 -		pop	bx
   2.153 +		pop	dx
   2.154  		; move zImage pm
   2.155  		mov	ax,8
   2.156 -		cwd				; clear dx
   2.157 -		cmp	bx,ax
   2.158 +		cmp	dx,ax
   2.159  		ja	@@bufhigh
   2.160 -		sub	ax,bx
   2.161 +		sub	ax,dx
   2.162  		inc	ax
   2.163  @@bufhigh:
   2.164  		push	ax
   2.165 -		push	dx			; size=up to 512k
   2.166 -		push	bx			; src ofs= pm.fallback
   2.167 -		push	dx
   2.168 -		push	dx			; srcseg=0
   2.169 +		push	bx			; size=up to 512k
   2.170 +		push	dx			; src ofs= pm.fallback
   2.171 +		push	bx
   2.172 +		push	bx			; srcseg=0
   2.173  		ifdef	NO386
   2.174 -		inc	dx
   2.175 -		push	dx			; dst
   2.176 -		dec	dx
   2.177 +		inc	bx
   2.178 +		push	bx			; dst
   2.179 +		dec	bx
   2.180  		else
   2.181  		push	1			; dst	
   2.182  		endif
   2.183 -		push	dx			;    ofs=64k
   2.184 +		push	bx			;    ofs=64k
   2.185  		extrn   _memcpy32:near
   2.186  		call	_memcpy32
   2.187  		add	sp,14
   2.188 @@ -155,37 +211,40 @@
   2.189  		pop	ds
   2.190  		ifndef	NO386
   2.191  		cmp	[dword 1E6h],'SKLE'
   2.192 +		jne	@@notelks
   2.193 +@@isbzimagez:
   2.194 +		jne	@@isbzimage
   2.195  		else
   2.196  		cmp	[word 1E6h],'LE'
   2.197  		jne	@@notelks
   2.198 +@@isbzimagez:
   2.199 +		jne	@@isbzimage
   2.200  		cmp	[word 1E8h],'SK'
   2.201 +		jne	@@notelks
   2.202  		endif
   2.203 -		jne	@@notelks
   2.204  		ifdef	NO386
   2.205 -		mov	cx,120h
   2.206 +		mov	cx,120h		; CS=0120
   2.207  		push	cx
   2.208 -		mov	cl,0h
   2.209 +		mov	cl,0h		; DS=ES=SS=0100
   2.210  		push	cx
   2.211  		else
   2.212 -		push	120h
   2.213 -		push	100h
   2.214 +		push	120h		; CS=0120
   2.215 +		push	100h		; DS=ES=SS=0100
   2.216  		endif
   2.217  		pop	es
   2.218  		xor	si,si
   2.219  		xor	di,di
   2.220 -		mov	ch,05h
   2.221 +		mov	ch,05h		; 500h mini
   2.222  		rep
   2.223  		  movsw
   2.224  		push	es
   2.225  		pop	ss
   2.226 -		push	cx
   2.227 +		push	cx		; IP=0000
   2.228  @@notelks:
   2.229  		endif
   2.230  @@isbzimage:
   2.231  		push	ss
   2.232  		pop	ds
   2.233 -		;push	ss
   2.234 -		;pop	es
   2.235  		ifndef	NO386
   2.236  		push	ss
   2.237  		pop	fs
   2.238 @@ -195,8 +254,11 @@
   2.239  		assume	nothing
   2.240  		assume	cs:DGROUP
   2.241  @@doretf:
   2.242 +		push	ss
   2.243 +		pop	es
   2.244                  retf
   2.245  
   2.246 +		step19code
   2.247  movedend:
   2.248          endp    _boot_kernel
   2.249  
     3.1 --- a/linld/stuff/src/MEMCPY32.ASM	Fri Oct 12 19:21:44 2018 +0200
     3.2 +++ b/linld/stuff/src/MEMCPY32.ASM	Tue Oct 16 16:37:20 2018 +0200
     3.3 @@ -11,91 +11,15 @@
     3.4                  p386
     3.5  		endif
     3.6  
     3.7 -        group   DGROUP  _TEXT,_DATA,_BSS
     3.8 +        group   DGROUP  _TEXT,_DATA
     3.9          assume  cs:DGROUP,ds:DGROUP
    3.10  
    3.11          segment _DATA byte public use16 'DATA'
    3.12          ends    _DATA
    3.13  
    3.14 -        segment _BSS byte public use16 'BSS'
    3.15 -		global	sssp:dword
    3.16 -sssp 		dd	?
    3.17 -        ends    _BSS
    3.18 -
    3.19          segment _TEXT byte public use16 'CODE'
    3.20  
    3.21  ;***************************************************************
    3.22 -;void dos_shutdown()
    3.23 -;***************************************************************
    3.24 -        global  dos_shutdown:near
    3.25 -        proc    dos_shutdown near
    3.26 -
    3.27 -dos_shutdown:
    3.28 -		ifndef	NO386
    3.29 -		;pusha
    3.30 -		else
    3.31 -		;push	bp si di
    3.32 -		endif
    3.33 -		xor	bx,bx
    3.34 -		mov	ds,bx
    3.35 -		ifndef	NO386
    3.36 -		push	[dword bx+4]		; save step
    3.37 -		mov	[word bx+4],offset step19
    3.38 -		else
    3.39 -		mov	ax,offset step19
    3.40 -		xchg	ax,[word bx+4]
    3.41 -		push	[word bx+6]	
    3.42 -		push	ax			; save step
    3.43 -		endif
    3.44 -		mov	[word sssp],sp
    3.45 -		mov	[word sssp+2],ss
    3.46 -		;cmp	[byte bx+7],0F0h
    3.47 -		;jnc	notdos
    3.48 -		mov	[bx+6],cs
    3.49 -		pushf
    3.50 -		pop	ax
    3.51 -		inc	ah			; set TF
    3.52 -		push	ax
    3.53 -		popf
    3.54 -		jmp	[dword bx+4*19h]
    3.55 -doiret:
    3.56 -		iret
    3.57 -step19:
    3.58 -		push	bx
    3.59 -		push	ds
    3.60 -		mov	bx,sp
    3.61 -		lds	bx,[dword ss:bx+4]	; read cs:ip
    3.62 -		cmp	[word bx],19CDh		; int 19h ?
    3.63 -		pop	ds
    3.64 -		pop	bx
    3.65 -		jne	doiret
    3.66 -notdos:
    3.67 -		ifndef	NO386
    3.68 -		lss	sp,[dword cs:sssp]
    3.69 -		else
    3.70 -		lds	ax,[dword cs:sssp]
    3.71 -		push	ds
    3.72 -		pop	ss
    3.73 -		xchg	ax,sp
    3.74 -		endif
    3.75 -		xor	bx,bx
    3.76 -		mov	ds,bx
    3.77 -		ifndef	NO386
    3.78 -		pop	[dword bx+4]		; restore step
    3.79 -		;popa
    3.80 -		else
    3.81 -		pop	[word bx+4]		; restore step
    3.82 -		pop	[word bx+6]
    3.83 -		;pop	di si bp
    3.84 -		endif
    3.85 -		push	cs
    3.86 -		pop	ds
    3.87 -		ret
    3.88 -
    3.89 -        endp    dos_shutdown
    3.90 -
    3.91 -
    3.92 -;***************************************************************
    3.93  ;void memcpy32(u32 dstofs,u16 srcseg,u32 srcofs,u32 size);
    3.94  ;***************************************************************
    3.95  ;****** Uses:   Flags
     4.1 --- a/linld/stuff/src/TAZBOOT.CPP	Fri Oct 12 19:21:44 2018 +0200
     4.2 +++ b/linld/stuff/src/TAZBOOT.CPP	Tue Oct 16 16:37:20 2018 +0200
     4.3 @@ -76,7 +76,7 @@
     4.4  	if (!*iso || isoreset(*iso) < 0) return;
     4.5  	skip_alloc++;
     4.6  	base_himem = memtop() /2;
     4.7 -	//if (base_himem > _64m) base_himem = _64m;
     4.8 +	//if (base_himem >= _64m) base_himem = _64m;
     4.9  	if (* ((char *) &base_himem +3) >= 4) base_himem = _64m;
    4.10  	isoopen("boot") >= 0 ||
    4.11  	isoopen("live") >= 0 ||	// debian
    4.12 @@ -132,8 +132,7 @@
    4.13  		if (*init && isolseek(&initrddesc) != -1) {
    4.14  			read(x->fd, &x->filemod, 10); // + x->fileofs & x->filesize
    4.15  			magic = x->filemod;
    4.16 -			//x->fileofs &= 0xFFFFL;
    4.17 -			* ((short *) &x->fileofs + 1) = 0;
    4.18 +			x->fileofs &= 0xFFFFL;
    4.19  			//x->fileofs -= 0xC0L + (x->filesize &= 0xFFFF);
    4.20  			* ((short *) &x->filesize + 1) = 0;
    4.21  			x->fileofs -= 0xC0L + x->filesize;
     5.1 --- a/linld/stuff/src/VCPI.ASM	Fri Oct 12 19:21:44 2018 +0200
     5.2 +++ b/linld/stuff/src/VCPI.ASM	Tue Oct 16 16:37:20 2018 +0200
     5.3 @@ -379,9 +379,15 @@
     5.4          global  _vm2rm:near
     5.5          proc    _vm2rm near
     5.6  
     5.7 +                ifdef NO386
     5.8                  p8086
     5.9  		extrn	_vcpi:byte
    5.10  		test	[_vcpi],-1
    5.11 +                else
    5.12 +                p386
    5.13 +                smsw    ax      ;SMSW cannot be trapped! :-)
    5.14 +                and     al,1	;MSW_PE
    5.15 +                endif
    5.16  		jz	vcpi_ret
    5.17                  p386
    5.18                  pop	ax
    5.19 @@ -391,7 +397,7 @@
    5.20                  push    ds
    5.21  		extrn	sssp:word
    5.22                  mov     [sssp],sp
    5.23 -                mov     [sssp+2],ss
    5.24 +                ;mov     [sssp+2],ss
    5.25  
    5.26  		call	switch_to_pm
    5.27  
     6.1 --- a/ncdu/receipt	Fri Oct 12 19:21:44 2018 +0200
     6.2 +++ b/ncdu/receipt	Tue Oct 16 16:37:20 2018 +0200
     6.3 @@ -1,7 +1,7 @@
     6.4  # SliTaz package receipt.
     6.5  
     6.6  PACKAGE="ncdu"
     6.7 -VERSION="1.12"
     6.8 +VERSION="1.13"
     6.9  CATEGORY="utilities"
    6.10  SHORT_DESC="NCurses Disk Usage."
    6.11  MAINTAINER="paul@slitaz.org"
    6.12 @@ -16,7 +16,6 @@
    6.13  # Rules to configure and make the package.
    6.14  compile_rules()
    6.15  {
    6.16 -	cd $src
    6.17  	./configure \
    6.18  		--prefix=/usr \
    6.19  		--infodir=/usr/share/info \
    6.20 @@ -31,4 +30,3 @@
    6.21  	mkdir -p $fs/usr
    6.22  	cp -a $install/usr/bin $fs/usr
    6.23  }
    6.24 -