Bert F
Artikelen: 0
Berichten: 2.589
Lid geworden op: vr 15 aug 2003, 20:37

Programmaatje laden door bootloader.

ik heb volgende stukje code:

Code: Selecteer alles

main:		 ; Label for the start of the main program

;schrijf iets op het scherm

   mov ah,0x09

   mov al,"S"

   mov bh,0x00

   mov bl,0x11

   mov cx,0x11

   int 10h

haal de volgende 512b van de diskette

   mov ax,0x1000

 ;ES:BX Buffer Address Pointer   0x1000:0x0000

   mov es,ax

   mov bx,0x0000

   mov ah,02H;AH 02h

   mov al,0x01

  ;AL Sectors To Read Count

   mov ch,0x01

  ;CH Track

   mov cl,0x02

  ;CL Sector

   mov dh,0x01

  ;DH Head

   mov dl,0x01

  ;DL Drive

   int 13h

jump nu naar dat ingeladen stuk in het geheugen

  jmp 0x1000:0x0000

times 510-($-$$) db 0 ; Fill the rest with zeros

dw 0xAA55

 ; Boot loader signature
Hiermee boot ik mijn computer en schrijf er iets mee op het scherm verder laad ik de volgende 512bytes van de diskette waarop ik volgende heb gezet:

Code: Selecteer alles

main:		 ; Label for the start of the main program

Schrijf nog iets op het scherm

   mov ah,0x09

   mov al,"S"

   mov bh,0x00

   mov bl,0x11

   mov cx,0xCC

   int 10h

times 510-($-$$) db 0 ; Fill the rest with zeros

dw 0xAA55

 ; Boot loader signature
Dus kortom ik heb twee bin bestanden die ik allebei kan gebruiken om een pc op te starten maw op zich zouden ze moeten werken. Ik start met de eerste code te laten utvoeren tijdens het bootproces dan is het de bedoeling dat het tweede stuk word geladen en er dan naartoe gejump wordt.

Echter ik krijg niet het verwachte resultaat, waar zit mijn fout? Groeten.

edit ik kan het eerste stukje code goed uitvoeren en dan krijg ik een zwart scherm, niet de tekst.
Gebruikersavatar
Revelation
Artikelen: 0
Berichten: 2.364
Lid geworden op: do 24 mar 2005, 20:56

Re: Programmaatje laden door bootloader.

Je leest sector 2 van cylinder 1 en head 1.

Probeer:
mov al,0x01 ;AL Sectors To Read Count

mov ch,0x00 ;CH Track

mov cl,0x02 ;CL Sector

mov dh,0x00 ;DH Head

mov dl,0x01 ;DL Drive
Bijgevoegd zit mijn bootloader met FAT-loader die de second stage bootloader zoekt op de schijf. Misschien heb je daar wat aan. Succes!
boot3
(7.79 KiB) 609 keer gedownload
“Quotation is a serviceable substitute for wit.” - Oscar Wilde

Terug naar “Informatica en programmeren”