Page 1 of 1

What's wrong here??

Posted: Fri Apr 25, 2003 12:59 pm
by WaCkY
Hello everybody,

can somebody tell me, what's wrong in this code?
NASM never print a error-message, but if i start my PC with this, i'll only see a blank screen... why? ???

My Code:

   [BITS 16]         ; Zu Beginn sind wird noch im Real-Mode

   ORG 0x7C00         ; Ab dieser Stelle wird gebootet

   MOV SI, Boot_Status_0
   CALL Meldung         ; Eine Meldung ausgeben

   ; ...
   
   MOV SI, Boot_Status_1
   CALL Meldung
   
   dummy:
      JMP dummy



   ;==========================================
   ; Einige wichtige Funktionen
   ;==========================================
   
   Meldung:
   
      PUSHA            ;Alle Register sichern
      STI
   
   M_Loop:   
      LODSB
      OR AL, AL
      JZ SHORT M_Done
      MOV AH, 0x0E
      MOV BX, 0
      MOV BH, 7
      INT 0x10
      JMP SHORT M_Loop
   
   M_Done:
      POPA
      RET
      

;==================================================
; Meldungen, die w?rend des Bootprozesses
; ausgegeben werden sollen.
;==================================================

Boot_Status_0:   db "Starte das System", 13, 10,
Boot_Status_1:   db "--> Erfolgt!", 13, 10,

;==================================================
; Das Ende des Bootblocks.
;==================================================
   TIMES 510-($-$$) DB 0      ; Den Rest des Bootblocks mit Nullen auff?llen
   DW 0xAA55      

thx for helping... WaCkY

Re:What's wrong here??

Posted: Fri Apr 25, 2003 1:12 pm
by Jamethiel
Only one thing comes to mind. I think you got the parameters for int 10/0e wrong.

Try changing the two lines MOV BX, 0 / MOV BH, 7 in M_Loop to MOV BX, 7.

Hope this helps.

Re:What's wrong here??

Posted: Fri Apr 25, 2003 1:17 pm
by WaCkY
Year, that was my mistake.. THANK YOU very much!! ^_^