Hallo,
ich habe folgendes Problem. Ich möchte einfach ein Zeichen per Interrupt 21h ausgeben. Ich habe mit folgendem inline Assembler-Code versucht ein einfaches A auszugeben:
__asm
{
mov ah, 0x02;
mov dl, 65;
int 0x21;
}
Es wird der Compiler des Visual Studio 6.0 verwendet. Rufe ich das Programm dann auf, gibt er mir zwar das Zeichen auf dem Bildschirm aus, aber er stürzt danach mit einer Access-Violation ab.
Kann ich diesen Interrupt nicht verwenden? Welche Alternativen habe ich, ohne großen Overhead (also sehr performant) ein Zeichen auf die Console zu schreiben?
lg, Flatty
int 21h unter Windows
Moderatoren: crack, Krüsty, Marwin
- crack
- Administrator
- Beiträge: 280
- Registriert: Dienstag 21. Dezember 2004, 15:02
- Wohnort: 53783 Eitorf
- Kontaktdaten:
Re: int 21h unter Windows
Der MASM32 kennt dafür die Funktion oder das Macro 'stdout', liess mal in der MASM32.hlp nach ...Flatty hat geschrieben:Hallo,
ich habe folgendes Problem. Ich möchte einfach ein Zeichen per Interrupt 21h ausgeben. Ich habe mit folgendem inline Assembler-Code versucht ein einfaches A auszugeben:
__asm
{
mov ah, 0x02;
mov dl, 65;
int 0x21;
}
Es wird der Compiler des Visual Studio 6.0 verwendet. Rufe ich das Programm dann auf, gibt er mir zwar das Zeichen auf dem Bildschirm aus, aber er stürzt danach mit einer Access-Violation ab.
Kann ich diesen Interrupt nicht verwenden? Welche Alternativen habe ich, ohne großen Overhead (also sehr performant) ein Zeichen auf die Console zu schreiben?
lg, Flatty
Ups, ich les grad 'Visual Studio 6.0' da müsste es die Funktion 'stdout' sowieso geben ...
mit freundlichen grüssen,
with best regards,
crack
with best regards,
crack