Added int16 (Keyboard) support, mostly stubs.
This commit is contained in:
parent
6101324f3b
commit
7bcf341a64
173
include/debug.h
173
include/debug.h
|
@ -63,92 +63,93 @@
|
|||
#define dbch_imm 55
|
||||
#define dbch_int 56
|
||||
#define dbch_int10 57
|
||||
#define dbch_int21 58
|
||||
#define dbch_int31 59
|
||||
#define dbch_ipaddress 60
|
||||
#define dbch_key 61
|
||||
#define dbch_keyboard 62
|
||||
#define dbch_ldt 63
|
||||
#define dbch_listbox 64
|
||||
#define dbch_listview 65
|
||||
#define dbch_local 66
|
||||
#define dbch_mci 67
|
||||
#define dbch_mcianim 68
|
||||
#define dbch_mciwave 69
|
||||
#define dbch_mdi 70
|
||||
#define dbch_menu 71
|
||||
#define dbch_message 72
|
||||
#define dbch_metafile 73
|
||||
#define dbch_midi 74
|
||||
#define dbch_mmaux 75
|
||||
#define dbch_mmio 76
|
||||
#define dbch_mmsys 77
|
||||
#define dbch_mmtime 78
|
||||
#define dbch_module 79
|
||||
#define dbch_mpr 80
|
||||
#define dbch_msacm 81
|
||||
#define dbch_msg 82
|
||||
#define dbch_nativefont 83
|
||||
#define dbch_nonclient 84
|
||||
#define dbch_ntdll 85
|
||||
#define dbch_ole 86
|
||||
#define dbch_pager 87
|
||||
#define dbch_palette 88
|
||||
#define dbch_pidl 89
|
||||
#define dbch_print 90
|
||||
#define dbch_process 91
|
||||
#define dbch_profile 92
|
||||
#define dbch_progress 93
|
||||
#define dbch_prop 94
|
||||
#define dbch_psapi 95
|
||||
#define dbch_psdrv 96
|
||||
#define dbch_rebar 97
|
||||
#define dbch_reg 98
|
||||
#define dbch_region 99
|
||||
#define dbch_relay 100
|
||||
#define dbch_resource 101
|
||||
#define dbch_s 102
|
||||
#define dbch_scroll 103
|
||||
#define dbch_security 104
|
||||
#define dbch_segment 105
|
||||
#define dbch_selector 106
|
||||
#define dbch_sem 107
|
||||
#define dbch_sendmsg 108
|
||||
#define dbch_shell 109
|
||||
#define dbch_shm 110
|
||||
#define dbch_snoop 111
|
||||
#define dbch_sound 112
|
||||
#define dbch_static 113
|
||||
#define dbch_statusbar 114
|
||||
#define dbch_stress 115
|
||||
#define dbch_string 116
|
||||
#define dbch_syscolor 117
|
||||
#define dbch_system 118
|
||||
#define dbch_tab 119
|
||||
#define dbch_task 120
|
||||
#define dbch_text 121
|
||||
#define dbch_thread 122
|
||||
#define dbch_thunk 123
|
||||
#define dbch_timer 124
|
||||
#define dbch_toolbar 125
|
||||
#define dbch_toolhelp 126
|
||||
#define dbch_tooltips 127
|
||||
#define dbch_trackbar 128
|
||||
#define dbch_treeview 129
|
||||
#define dbch_tweak 130
|
||||
#define dbch_uitools 131
|
||||
#define dbch_updown 132
|
||||
#define dbch_ver 133
|
||||
#define dbch_virtual 134
|
||||
#define dbch_vxd 135
|
||||
#define dbch_win 136
|
||||
#define dbch_win16drv 137
|
||||
#define dbch_win32 138
|
||||
#define dbch_wing 139
|
||||
#define dbch_winsock 140
|
||||
#define dbch_wnet 141
|
||||
#define dbch_x11 142
|
||||
#define dbch_x11drv 143
|
||||
#define dbch_int16 58
|
||||
#define dbch_int21 59
|
||||
#define dbch_int31 60
|
||||
#define dbch_ipaddress 61
|
||||
#define dbch_key 62
|
||||
#define dbch_keyboard 63
|
||||
#define dbch_ldt 64
|
||||
#define dbch_listbox 65
|
||||
#define dbch_listview 66
|
||||
#define dbch_local 67
|
||||
#define dbch_mci 68
|
||||
#define dbch_mcianim 69
|
||||
#define dbch_mciwave 70
|
||||
#define dbch_mdi 71
|
||||
#define dbch_menu 72
|
||||
#define dbch_message 73
|
||||
#define dbch_metafile 74
|
||||
#define dbch_midi 75
|
||||
#define dbch_mmaux 76
|
||||
#define dbch_mmio 77
|
||||
#define dbch_mmsys 78
|
||||
#define dbch_mmtime 79
|
||||
#define dbch_module 80
|
||||
#define dbch_mpr 81
|
||||
#define dbch_msacm 82
|
||||
#define dbch_msg 83
|
||||
#define dbch_nativefont 84
|
||||
#define dbch_nonclient 85
|
||||
#define dbch_ntdll 86
|
||||
#define dbch_ole 87
|
||||
#define dbch_pager 88
|
||||
#define dbch_palette 89
|
||||
#define dbch_pidl 90
|
||||
#define dbch_print 91
|
||||
#define dbch_process 92
|
||||
#define dbch_profile 93
|
||||
#define dbch_progress 94
|
||||
#define dbch_prop 95
|
||||
#define dbch_psapi 96
|
||||
#define dbch_psdrv 97
|
||||
#define dbch_rebar 98
|
||||
#define dbch_reg 99
|
||||
#define dbch_region 100
|
||||
#define dbch_relay 101
|
||||
#define dbch_resource 102
|
||||
#define dbch_s 103
|
||||
#define dbch_scroll 104
|
||||
#define dbch_security 105
|
||||
#define dbch_segment 106
|
||||
#define dbch_selector 107
|
||||
#define dbch_sem 108
|
||||
#define dbch_sendmsg 109
|
||||
#define dbch_shell 110
|
||||
#define dbch_shm 111
|
||||
#define dbch_snoop 112
|
||||
#define dbch_sound 113
|
||||
#define dbch_static 114
|
||||
#define dbch_statusbar 115
|
||||
#define dbch_stress 116
|
||||
#define dbch_string 117
|
||||
#define dbch_syscolor 118
|
||||
#define dbch_system 119
|
||||
#define dbch_tab 120
|
||||
#define dbch_task 121
|
||||
#define dbch_text 122
|
||||
#define dbch_thread 123
|
||||
#define dbch_thunk 124
|
||||
#define dbch_timer 125
|
||||
#define dbch_toolbar 126
|
||||
#define dbch_toolhelp 127
|
||||
#define dbch_tooltips 128
|
||||
#define dbch_trackbar 129
|
||||
#define dbch_treeview 130
|
||||
#define dbch_tweak 131
|
||||
#define dbch_uitools 132
|
||||
#define dbch_updown 133
|
||||
#define dbch_ver 134
|
||||
#define dbch_virtual 135
|
||||
#define dbch_vxd 136
|
||||
#define dbch_win 137
|
||||
#define dbch_win16drv 138
|
||||
#define dbch_win32 139
|
||||
#define dbch_wing 140
|
||||
#define dbch_winsock 141
|
||||
#define dbch_wnet 142
|
||||
#define dbch_x11 143
|
||||
#define dbch_x11drv 144
|
||||
/* Definitions for classes identifiers */
|
||||
#define dbcl_fixme 0
|
||||
#define dbcl_err 1
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#include "debugtools.h"
|
||||
#endif
|
||||
|
||||
#define DEBUG_CHANNEL_COUNT 144
|
||||
#define DEBUG_CHANNEL_COUNT 145
|
||||
#ifdef DEBUG_RUNTIME
|
||||
short debug_msg_enabled[][DEBUG_CLASS_COUNT] = {
|
||||
{1, 1, 0, 0},
|
||||
|
@ -151,6 +151,7 @@ short debug_msg_enabled[][DEBUG_CLASS_COUNT] = {
|
|||
{1, 1, 0, 0},
|
||||
{1, 1, 0, 0},
|
||||
{1, 1, 0, 0},
|
||||
{1, 1, 0, 0},
|
||||
};
|
||||
const char* debug_ch_name[] = {
|
||||
"1",
|
||||
|
@ -211,6 +212,7 @@ const char* debug_ch_name[] = {
|
|||
"imm",
|
||||
"int",
|
||||
"int10",
|
||||
"int16",
|
||||
"int21",
|
||||
"int31",
|
||||
"ipaddress",
|
||||
|
|
|
@ -0,0 +1,77 @@
|
|||
/*
|
||||
* DOS interrupt 16h handler
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "config.h"
|
||||
#include "debug.h"
|
||||
|
||||
#include "ldt.h"
|
||||
#include "drive.h"
|
||||
#include "msdos.h"
|
||||
#include "miscemu.h"
|
||||
#include "module.h"
|
||||
|
||||
/**********************************************************************
|
||||
* INT_Int16Handler
|
||||
*
|
||||
* Handler for int 16h (keyboard)
|
||||
*
|
||||
* NOTE:
|
||||
*
|
||||
* KEYB.COM (DOS >3.2) adds functions to this interrupt, they are
|
||||
* not currently listed here.
|
||||
*/
|
||||
|
||||
void WINAPI INT_Int16Handler( CONTEXT *context )
|
||||
{
|
||||
switch AH_reg(context) {
|
||||
|
||||
case 0x00: /* Get Keystroke */
|
||||
FIXME(int16, "Get Keystroke - Not Supported\n");
|
||||
break;
|
||||
|
||||
case 0x01: /* Check for Keystroke */
|
||||
FIXME(int16, "Check for Keystroke - Not Supported\n");
|
||||
break;
|
||||
|
||||
case 0x02: /* Get Shift Flags */
|
||||
FIXME(int16, "Get Shift Flags - Not Supported\n");
|
||||
break;
|
||||
|
||||
case 0x03: /* Set Typematic Rate and Delay */
|
||||
FIXME(int16, "Set Typematic Rate and Delay - Not Supported\n");
|
||||
break;
|
||||
|
||||
case 0x09: /* Get Keyboard Functionality */
|
||||
FIXME(int16, "Get Keyboard Functionality - Not Supported\n");
|
||||
/* As a temporary measure, say that "nothing" is supported... */
|
||||
AL_reg(context) = 0;
|
||||
break;
|
||||
|
||||
case 0x0a: /* Get Keyboard ID */
|
||||
FIXME(int16, "Get Keyboard ID - Not Supported\n");
|
||||
break;
|
||||
|
||||
case 0x10: /* Get Enhanced Keystroke */
|
||||
FIXME(int16, "Get Enhanced Keystroke - Not Supported\n");
|
||||
break;
|
||||
|
||||
case 0x11: /* Check for Enhanced Keystroke */
|
||||
FIXME(int16, "Check for Enhanced Keystroke - Not Supported\n");
|
||||
break;
|
||||
|
||||
case 0x12: /* Get Extended Shift States */
|
||||
FIXME(int16, "Get Extended Shift States - Not Supported\n");
|
||||
break;
|
||||
|
||||
default:
|
||||
FIXME(int16, "Unknown INT 16 function - 0x%x\n", AH_reg(context));
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue