feat: mise à jour du code pour compilation sur LZASM en stdcall
This commit is contained in:
parent
1742c77553
commit
1d17c0fc92
|
@ -1,80 +1,73 @@
|
|||
.model tiny
|
||||
.386c
|
||||
.code
|
||||
model tiny,stdcall
|
||||
p586N
|
||||
locals
|
||||
jumps
|
||||
codeseg
|
||||
option procalign:byte
|
||||
|
||||
include "..\include\mem.h"
|
||||
include "..\include\divers.h"
|
||||
|
||||
org 0h
|
||||
|
||||
|
||||
include ..\include\mem.h
|
||||
|
||||
start:
|
||||
header exe <,1,0,,,offset imports,,>
|
||||
header exe <"CE",1,0,0,,offset imports,,offset realstart>
|
||||
|
||||
realstart:
|
||||
mov ah,28h
|
||||
int 47h
|
||||
push offset msg
|
||||
call [print]
|
||||
mov bp,1000h
|
||||
xor di,di
|
||||
xor cx,cx
|
||||
xor edx,edx
|
||||
VerifAll:
|
||||
mov ah,1
|
||||
int 16h
|
||||
jz nokey
|
||||
cmp al,' '
|
||||
je enend
|
||||
call [savestate]
|
||||
call [print],offset msg
|
||||
mov bp,1000h
|
||||
xor di,di
|
||||
xor cx,cx
|
||||
xor edx,edx
|
||||
verifall:
|
||||
mov ah,1
|
||||
int 16h
|
||||
jz nokey
|
||||
cmp al,' '
|
||||
je enend
|
||||
nokey:
|
||||
mov dx,di
|
||||
push edx
|
||||
mov dx,cx
|
||||
inc dx
|
||||
push edx
|
||||
mov ax,cx
|
||||
inc ax
|
||||
mov si,100
|
||||
mul si
|
||||
mov si,2880
|
||||
div si
|
||||
mov dx,ax
|
||||
push edx
|
||||
push offset msg2
|
||||
call [print]
|
||||
call gauge
|
||||
mov ah,2
|
||||
int 48h
|
||||
jc errors
|
||||
je noprob
|
||||
inc di
|
||||
mov dx,di
|
||||
push edx
|
||||
mov dx,cx
|
||||
inc dx
|
||||
push edx
|
||||
mov ax,cx
|
||||
inc ax
|
||||
mov si,100
|
||||
mul si
|
||||
mov si,2880
|
||||
div si
|
||||
mov dx,ax
|
||||
push edx
|
||||
call [print],offset msg2
|
||||
call gauge
|
||||
call [verifysector],cx
|
||||
jc errors
|
||||
je noprob
|
||||
inc di
|
||||
noprob:
|
||||
inc cx
|
||||
cmp cx,2880
|
||||
jnz verifall
|
||||
enend:
|
||||
cmp di,0
|
||||
je noatall
|
||||
push offset error2
|
||||
call [print]
|
||||
jmp someof
|
||||
inc cx
|
||||
cmp cx,2880
|
||||
jnz verifall
|
||||
enend:
|
||||
cmp di,0
|
||||
je noatall
|
||||
call [print],offset error2
|
||||
jmp someof
|
||||
noatall:
|
||||
push offset noerror
|
||||
call [print]
|
||||
call [print],offset noerror
|
||||
someof:
|
||||
mov ah,0
|
||||
int 16h
|
||||
mov ah,29h
|
||||
int 47H
|
||||
retf
|
||||
mov ah,0
|
||||
int 16h
|
||||
call [restorestate]
|
||||
retf
|
||||
errors:
|
||||
push offset error
|
||||
call [print]
|
||||
mov ah,0
|
||||
int 16h
|
||||
mov ah,29h
|
||||
int 47H
|
||||
retf
|
||||
|
||||
|
||||
call [print],offset error
|
||||
mov ah,0
|
||||
int 16h
|
||||
call [restorestate]
|
||||
retf
|
||||
|
||||
error db '\g10,10Erreur avec le lecteur de disquette !',0
|
||||
error2 db '\g10,10Le disque est defectueux, appuyez sur une touche pour quitter',0
|
||||
|
@ -83,31 +76,31 @@ msg db '\m02\e\c07\g29,00- Test de surface du disque -\g02,49<Pressez espace pou
|
|||
msg2 db '\g10,20%u %%\g10,16%u cluster testes. \h34%u cluster defectueux. ',0
|
||||
|
||||
gauge:
|
||||
push ax dx
|
||||
mov ax,cx
|
||||
mul sizeof
|
||||
div max
|
||||
xor edx,edx
|
||||
mov dx,sizeof
|
||||
sub dx,ax
|
||||
push dx
|
||||
push 'Û'
|
||||
mov dx,ax
|
||||
push dx
|
||||
push 'Û'
|
||||
push offset gauges
|
||||
call [print]
|
||||
pop dx ax
|
||||
retn
|
||||
push ax dx
|
||||
mov ax,cx
|
||||
mul [sizeof]
|
||||
div [max]
|
||||
xor edx,edx
|
||||
mov dx,[sizeof]
|
||||
sub dx,ax
|
||||
push dx
|
||||
push 'Û'
|
||||
mov dx,ax
|
||||
push dx
|
||||
push 'Û'
|
||||
push offset gauges
|
||||
call [print]
|
||||
pop dx ax
|
||||
retn
|
||||
|
||||
max dw 2879
|
||||
sizeof dw 50
|
||||
|
||||
gauges db '\g10,18\c05%cM\c07%cM',0
|
||||
|
||||
imports:
|
||||
db "VIDEO.LIB::print",0
|
||||
print dd 0
|
||||
dw 0
|
||||
|
||||
End Start
|
||||
importing
|
||||
use VIDEO.LIB,print
|
||||
use VIDEO,savestate
|
||||
use VIDEO,restorestate
|
||||
use DISQUE,verifysector
|
||||
endi
|
||||
|
|
Loading…
Reference in New Issue