KnowledgeBase Archive

An Archive of Early Microsoft KnowledgeBase Articles

View on GitHub

Q31534: MASM 5.10 EXT.DOC: ReadChar - Returns Next Raw Keystroke

Article: Q31534
Product(s): See article
Version(s): 5.10   | 5.10
Operating System(s): MS-DOS | OS/2
Keyword(s): ENDUSER | | mspl13_masm
Last Modified: 12-JAN-1989

The following information is from the MASM Version 5.10 EXT.DOC
file.
   Please note that numbering for both COL and LINE variables begins
with 0.

/*  ReadChar - returns next raw keystroke
 *
 *  The ReadChar intercepts the next keystroke from the user. No action
 *  is taken, but information about the keystroke is passed. Once
 *  intercepted, the keystroke cannot be placed back for execution.
 *
 *  returns     a long value containing information on the keystroke:
 *
 *              byte 0: ASCII code for character
 *              byte 1: scan code for character
 *              byte 2: shift info for character:
 *                          (S)HIFT, (C)TRL, (A)LT, (N)UMLOCK
 *                          Format is: SxCAxNxx
 *              byte 3: 0
 *
 *  In the format for byte 2, each "x" indicates an unused bit. The
 *  bits S, C, A, and N are each on or off, depending on the associated
 *  condition. For example, if the SHIFT, CTRL, and ALT conditions are
 *  all on, but not the NUMLOCK condition, then byte 2 will be returned as
 *  10110000. Note: the "N" bit is always 0, unless the the key pressed
 *  is on the numeric keypad.
 */
long pascal ReadChar();

THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Copyright Microsoft Corporation 1986-2002.