Hallo zusammn....
Ich hab jetzt schon ne ganze Weile ein Problem mit so einem blöden Realmode code.
Er sollte den 5. Sektor auf der Diskette in den Speicher laden, welcher so aussieht:
Dieser Sektor ist ganz sicher an der Position 0xA00 (also eben 5x512), ich habs mit nem Hex-Editor überprüft.
Dannach soll er die Datei nach 'Tr' durchsuchen, bis er auf eine Null stösst. Allerdings, findet der Code schon ganz am Anfang eine Null, was eingentlich nicht sein dürfte....Darum denk ich, liegt der Fehler am Code, welcher den Sektor lädt (ganz am Anfang dieses Codeabschnitts):
Vielen Dank
Nooooooooooos
Ich hab jetzt schon ne ganze Weile ein Problem mit so einem blöden Realmode code.
Er sollte den 5. Sektor auf der Diskette in den Speicher laden, welcher so aussieht:
Code: [Auswählen]
dw 'Tr'
dw 0,0Dieser Sektor ist ganz sicher an der Position 0xA00 (also eben 5x512), ich habs mit nem Hex-Editor überprüft.
Dannach soll er die Datei nach 'Tr' durchsuchen, bis er auf eine Null stösst. Allerdings, findet der Code schon ganz am Anfang eine Null, was eingentlich nicht sein dürfte....Darum denk ich, liegt der Fehler am Code, welcher den Sektor lädt (ganz am Anfang dieses Codeabschnitts):
Code: [Auswählen]
xor ax,ax
mov ds,ax
mov es,ax
mov bx,0x8000
mov ah,2
mov cx,5
mov dx,0
mov al,5
int 0x13
jc nomal
mov bx,0x8000
jmp inschleiferein
wiederholeen:
add bx,24
inschleiferein:
cmp WORD[bx],0
je FehlerPlus3A
cmp WORD[bx+2],0
jne weitermachen
Fehler:
ax,0xB800
mov ds,ax
mov BYTE [0x10], '+'
jmp Fehler
weitermachen:
cmp WORD[bx],'Tr'
jne wiederholeenVielen Dank
Nooooooooooos

Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken

Gespeichert