| static char RCSId[] = "$Id: keyboard.c,v 1.2 1993/09/13 18:52:02 scott Exp $"; |
| static char Copyright[] = "Copyright Scott A. Laird, 1993"; |
| |
| #include <stdlib.h> |
| #include <stdio.h> |
| #include "prototypes.h" |
| #include "windows.h" |
| |
| int ToAscii(WORD wVirtKey, WORD wScanCode, LPSTR lpKeyState, |
| LPVOID lpChar, WORD wFlags) |
| { |
| printf("ToAscii (%d,%d)\n",wVirtKey, wScanCode); |
| return -1; |
| } |
| |
| #ifdef BOGUS_ANSI_OEM |
| |
| int AnsiToOem(LPSTR lpAnsiStr, LPSTR lpOemStr) |
| { |
| printf("AnsiToOem (%s)\n",lpAnsiStr); |
| strcpy(lpOemStr,lpAnsiStr); /* Probably not the right thing to do, but... */ |
| return -1; |
| } |
| |
| BOOL OemToAnsi(LPSTR lpOemStr, LPSTR lpAnsiStr) |
| { |
| printf("OemToAnsi (%s)\n",lpOemStr); |
| strcpy(lpAnsiStr,lpOemStr); /* Probably not the right thing to do, but... */ |
| return -1; |
| } |
| |
| #endif |
| |
| DWORD OemKeyScan(WORD wOemChar) |
| { |
| printf("*OemKeyScan (%d)\n",wOemChar); |
| return 0; |
| } |
| |
| /* VkKeyScan translates an ANSI character to a virtual-key and shift code |
| * for the current keyboard. For now we return -1, which is fail. */ |
| |
| WORD VkKeyScan(WORD cChar) |
| { |
| printf("VkKeyScan (%d)\n",cChar); |
| return -1; |
| } |
| |
| int GetKeyboardType(int nTypeFlag) |
| { |
| printf("GetKeyboardType(%d)\n",nTypeFlag); |
| switch(nTypeFlag) |
| { |
| case 0: /* Keyboard type */ |
| return 4; /* AT-101 */ |
| break; |
| case 1: /* Keyboard Subtype */ |
| return 0; /* There are no defined subtypes */ |
| break; |
| case 2: /* Number of F-keys */ |
| return 12; /* We're doing an 101 for now, so return 12 F-keys */ |
| break; |
| default: |
| printf(" Unknown type on GetKeyboardType\n"); |
| return 0; /* The book says 0 here, so 0 */ |
| } |
| } |
| |
| /* MapVirtualKey translates keycodes from one format to another. This |
| * is a total punt. */ |
| |
| WORD MapVirtualKey(WORD wCode, WORD wMapType) |
| { |
| printf("*MapVirtualKey(%d,%d)\n",wCode,wMapType); |
| return 0; |
| } |
| |
| int GetKbCodePage(void) |
| { |
| printf("GetKbCodePage()\n"); |
| return 437; /* US -- probably should be 850 from time to time */ |
| } |
| |
| /* This should distinguish key names. Maybe later */ |
| |
| int GetKeyNameText(LONG lParam, LPSTR lpBuffer, int nSize) |
| { |
| printf("GetKeyNameText(%d,<ptr>, %d)\n",lParam,nSize); |
| lpBuffer[0]=0; /* This key has no name */ |
| return 0; |
| } |
| |
| #ifdef BOGUS_ANSI_OEM |
| |
| void AnsiToOemBuff(LPSTR lpAnsiStr, LPSTR lpOemStr, int nLength) |
| { |
| printf("AnsiToOemBuff(%s,<ptr>,%d)\n",lpAnsiStr,nLength); |
| strncpy(lpOemStr,lpAnsiStr,nLength); /* should translate... */ |
| } |
| |
| void OemToAnsiBuff(LPSTR lpOemStr, LPSTR lpAnsiStr, int nLength) |
| { |
| printf("OemToAnsiBuff(%s,<ptr>,%d)\n",lpOemStr,nLength); |
| strncpy(lpAnsiStr,lpOemStr,nLength); /* should translate... */ |
| } |
| |
| #endif |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |