fasm - bios int 21h (ah = 1h) - problem

09/16/2012 12:46 =0x500+0x30+0x9#1
Hallo zusammen,

seitdem Ich von meinem externen Floppy Laufwerk meinen Code booten lasse und den bios int 10h (ah = 0Eh) "video - teletype output" verwende,
funktioniert int 21h (ah = 1h) "read character from standart input, with echo" für mich nicht mehr.

Code:
    mov ah, 1h
    int 21h

Folgendes (int 21h (ah = 7h) "direct character input, without echo") funktioniert hier auch nicht.

Code:
	mov ah, 7h
	int 21h
	mov byte ptr input, al
	mov si, input
	mov ah, 0Eh
	lodsb
	int 10h

Möglicherweise hat jemand einen Lösungsvorschlag?
09/16/2012 15:58 link#2
int 21h ist ein DOS-, kein BIOS-interrupt. Versuch mal int 16h mit ah = 00h, um den nächsten Charakter aus dem Input Buffer zu holen bzw. ah = 01h, um abzufragen, ob sich einer im Buffer befindet.
09/16/2012 17:26 =0x500+0x30+0x9#3
Stimmt, das ist MS-DOS API, danke.