From 4d989b0e3e88e27084269bc73a8f0a6cbeff9a8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Hord=C3=A9?= Date: Sat, 30 Oct 2004 19:25:45 +0000 Subject: [PATCH] =?UTF-8?q?feat:=20int=C3=A9gration=20de=20la=20commande?= =?UTF-8?q?=20projfile=20de=20projection=20en=20bloc=20m=C3=A9moire?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- noyau/disque.asm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/noyau/disque.asm b/noyau/disque.asm index e842a0b..b683d08 100644 --- a/noyau/disque.asm +++ b/noyau/disque.asm @@ -68,6 +68,7 @@ tables dw readsector dw readcluster dw writecluster dw getdir + dw projfile maxfunc equ 24 @@ -156,6 +157,44 @@ errorload: pop di bx eax ret +;============projfile (Fonction 17)=============== +;Charge le fichier ds:si sur un bloc mémoire -> ecx taille -> es bloc +;-> AH=17 +;<- Flag Carry si erreur +;===================================================== +projfile: + push eax bx di gs + push cs + pop es + mov di,offset tempfit + call searchfile + jne errorload + jc errorload + mov eax,cs:tempfit.FileSize + mov ecx,eax + add ecx,19000 + push ax + mov ah,2 + int 49h + pop ax + jc errorload2 + push gs + pop es + mov cx,cs:tempfit.FileGroup + mov di,100h + call loadway + jc errorload2 + clc + mov ecx,eax + pop gs di bx eax + ret +errorload2: + stc + mov ecx,0 + pop gs di bx eax + ret + + tempfit db 32 dup (0) ;=============SearchFile (Fonction 10)===============