feat: ajout de la fonction fileexec permetant l'execution directe d'un fichier. La liberation de la mémoire n'est pas encore prise en compte.
This commit is contained in:
parent
8a5dcd0172
commit
4b570f7995
|
@ -69,6 +69,7 @@ tables dw readsector
|
|||
dw writecluster
|
||||
dw getdir
|
||||
dw projfile
|
||||
dw execfile
|
||||
|
||||
maxfunc equ 24
|
||||
|
||||
|
@ -157,6 +158,45 @@ errorload:
|
|||
pop di bx eax
|
||||
ret
|
||||
|
||||
;============execfile (Fonction 18)===============
|
||||
;Execute le fichier ds:si
|
||||
;-> AH=18
|
||||
;<- Flag Carry si erreur
|
||||
;=====================================================
|
||||
execfile:
|
||||
pushad
|
||||
pushf
|
||||
push ds es fs gs
|
||||
mov ah,17
|
||||
int 48h
|
||||
jc reallyerror
|
||||
push cs
|
||||
mov ax,offset arrive
|
||||
push ax
|
||||
push es
|
||||
push 0100h
|
||||
push es
|
||||
push es
|
||||
push es
|
||||
pop ds
|
||||
pop fs
|
||||
pop gs
|
||||
push 7202h
|
||||
popf
|
||||
sti
|
||||
db 0CBh
|
||||
arrive:
|
||||
cli
|
||||
pop gs fs es ds
|
||||
popf
|
||||
popad
|
||||
ret
|
||||
reallyerror:
|
||||
pop gs fs es ds
|
||||
popf
|
||||
popad
|
||||
ret
|
||||
|
||||
;============projfile (Fonction 17)===============
|
||||
;Charge le fichier ds:si sur un bloc mémoire -> ecx taille -> es bloc
|
||||
;-> AH=17
|
||||
|
|
Loading…
Reference in New Issue