wok diff syslinux/stuff/iso2exe/bootiso.S @ rev 19428

syslinux/isohybrid: random uuid in gpt
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sat Oct 01 10:31:58 2016 +0200 (2016-10-01)
parents 73cdd2cf47c4
children 5ba4b4fd03bc
line diff
     1.1 --- a/syslinux/stuff/iso2exe/bootiso.S	Thu Sep 29 13:47:18 2016 +0200
     1.2 +++ b/syslinux/stuff/iso2exe/bootiso.S	Sat Oct 01 10:31:58 2016 +0200
     1.3 @@ -123,6 +123,7 @@
     1.4  
     1.5  exestart:
     1.6  	cld
     1.7 +	movw	$EXEADRS(puts), %bp	
     1.8  	movw	129, %ax
     1.9  	cmpb	$0x2F, %al
    1.10  	je	ishelp
    1.11 @@ -137,8 +138,7 @@
    1.12  	movw	$0x1000+EXESTR(noDOS3), %ax
    1.13  	jc	tst386
    1.14  abort:
    1.15 -jputs:
    1.16 -	jmp	puts
    1.17 +	jmp	%bp
    1.18  
    1.19  tst386:
    1.20  	pushfw				// save flags
    1.21 @@ -166,7 +166,7 @@
    1.22  	inc	%ax
    1.23  	//movb	$EXESTR(realmodemsg), %al
    1.24  realmode:
    1.25 -	call	jputs
    1.26 +	call	%bp
    1.27  is86:
    1.28  	movw	comstart-end_header(%di), %si		// .com address
    1.29  	pushw	%di
    1.30 @@ -175,6 +175,20 @@
    1.31  	movsw
    1.32  	ret
    1.33  
    1.34 +CallVPCI:
    1.35 +	int	$0x67
    1.36 +	testb	%ah, %ah
    1.37 +	xchgw	%ax, %cx
    1.38 +	pusw	%si
    1.39 +ScanVCPI:
    1.40 +	popw	%si
    1.41 +ChkVCPI:
    1.42 +NoVCPI:
    1.43 +	movb	$EXESTR(ERRvcpi), %al
    1.44 +	jne	abort
    1.45 +	lodsb
    1.46 +	shlw	$8, %ax
    1.47 +	jne	CallVCPI
    1.48  VersionVCPI:
    1.49  	xchgw	%ax, %si		// movb	$EXESTR(vm86modemsg), %al
    1.50  	cmpb	$0x40, %cl		// EMM386 / VCPI 4.0 mini
    1.51 @@ -189,19 +203,8 @@
    1.52  	lodsw
    1.53  	popw	%ds
    1.54  	jne	NoVCPI
    1.55 -	xorw	$0x5858, %ax		// XX(X0)
    1.56 -	movw	$EXEADRS(CmdVCPI), %si
    1.57 -ChkVCPI:
    1.58 -NoVCPI:
    1.59 -	movb	$EXESTR(ERRvcpi), %al
    1.60 -	jne	abort
    1.61 -	lodsb
    1.62 -	shlw	$8, %ax
    1.63 -	je	VersionVCPI
    1.64 -	int	$0x67
    1.65 -	testb	%ah, %ah
    1.66 -	xchgw	%ax, %cx
    1.67 -	jmp	ChkVCPI
    1.68 +	xorb	$0x58, %al		// X(XX0)
    1.69 +	call	ScanVCPI
    1.70  CmdVCPI:
    1.71  	.byte	0x40			// status
    1.72  	.byte	0xDE			// vcpi present ?