Posted By: online (Gwen's OnLine) on 'CZprogram'
Title:     Ochrana we Windozich
Date:      Tue Feb 24 20:21:43 1998

Hi all !

    Takze, pokud chces zapisovat nebo cist primo pres ASM ve windozich, tak ti 
to primo pres INT 13H samozrejme nemuze fachat. Musis pouzit emulaci pres 
DPMI sluzby, ktery to vsechno potom zaridi.... Dosti tlachu, tady je nejprve 
rutinka na cteni sektoru (doufam ze je ok, netestoval jsem ji :)) ):

[BITES 32]
[SECTION .bss]
realny_reg        resb 32h        ;nadefinovani volnyho mista - 32h bajtu

[SECTION .text]
                  mov ax,300h     ;simuluj realny preruseni
                  mov bl,13h      ;v nasem pripade to bude INT 13h
                  xor bh,bh       ;to musi byt nula...dle dokumentace
                  xor cx,cx       ;kolik slov se bude kopcit na realnej stack,
                                  ;v nasem pripade nic...
                  mov dx,ds       ;proste, ES:EDI obsahuje pointer na 
                                  ;strukturu obsahujuci hodnoty real.reg.
                  mov edi,realny_reg
                  xor eax,eax      ;mno, sluzba cteni sektoru ma cislo 2
                  mov ah,2
                  mov al,1         ;pocet sektoru
                  mov dword[ds:edi+1ch],eax ;ulozime ji do tabulky
                  xor edx,edx
                  mov dl,0        ;cislo drive - zde disketa, tj. 0
                  mov dh,nn       ;cislo hlavy, dej si tam co chces
                  mov dword[ds:edi+14h],edx
                  xor ecx,ecx
                  mov ch,nn       ;cislo stopy
                  mov cl,nn       ;cislo sektoru
                  mov dword[ds:edi+18h],ecx
                  int 31h         ;zavolej DPMI.....

                  ret


   That`s all falks !!!

      PS: priste dodam zapis sektoru, ted me vyhazujou od kompu :(((

                                                 OnLine@fido.cz
OnLine`s CHAOS Signature

                     Z I V J E L A C R N A G O R A ! ! ! !
              --------------------------------------------------
                 V I V A V E R O M O N T E N E G R O ! ! ! !
              --------------------------------------------------

Search the boards