PDA

View Full Version : سوال: خطا در استفاده از وقفه ی 16h در امولاتور



Kamyar_ku
یک شنبه 18 دی 1390, 03:19 صبح
سلام. موقعی که من میخوام توی emu8086 از وقفه ی 16h برای تشخیص کلید فشار داده شده استفاده کنم، خطا میده میگه امولاتور از این وقفه پشتیبانی نمیکنه.
به جای این وقفه از چی باید استفاده کنم؟
ممنون میشم جوابمو بدید

xman_1365_x
یک شنبه 18 دی 1390, 17:08 عصر
خوب emu8086 فقط از تابع 0 و 1 وقفه 16h پشتیبانی میکنه! لیست وقفه های داس و بایوس (http://www.ctyme.com/intr/int.htm)
INT 16h / AH = 00h - get keystroke from keyboard (no echo).
return:
AH = BIOS scan code.
AL = ASCII character.
(if a keystroke is present, it is removed from the keyboard buffer).


INT 16h / AH = 01h - check for keystroke in the keyboard buffer.
return:
ZF = 1 if keystroke is not available.
ZF = 0 if keystroke available.
AH = BIOS scan code.
AL = ASCII character.
(if a keystroke is present, it is not removed from the keyboard buffer).
موفق باشی