Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- FORCE Data Base Compiler - ############################################################################## http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
##############################################################################
###+---------+################################################################
#+-| KEY_DOS |-----------------------------------------------+################
#| +---------+ Channels keyboard input through DOS functions |################
#+-----------------------------------------------------------+################
##############################################################################
##############################################################################
#+--| Summary |------------+##################################################
#|     #INCLUDE io.hdr     |##################################################
#+-------------------------+##################################################
##############################################################################
##############################################################################
#+--| Syntax |-------------------------+######################################
#|     PROCEDURE key_dos PROTOTYPE     |######################################
#+-------------------------------------+######################################
##############################################################################
##############################################################################
##########+---| Description |--------------------------------------+##########
##########| The key_dos procedure channels keyboard input through  |##########
##########| DOS functions, allowing redirection of FORCE input at  |##########
##########| the DOS command line.  The BIOS driver, key_bios, is   |##########
##########| the default keyboard driver.                           |##########
##########+--------------------------------------------------------+##########
##############################################################################
##############################################################################
###########+---| Design |------------------------------------------+##########
###########| The FORCE library contains replaceable drivers for    |##########
###########| screen and keyboard i/o.  FORCE library contains two  |##########
###########| standard libraries for keyboard input.  key_bios      |##########
###########| retrieves keys from BIOS while key_dos retrieves keys |##########
###########| from DOS.  Use key_bios when speed, size and dBASE    |##########
###########| compatibility is important.  Use key_dos when a       |##########
###########| program requires DOS redirection or piping.           |##########
###########+-------------------------------------------------------+##########
##############################################################################
##############################################################################
#########+--| Example 1 |-------------------------------------------+#########
#########| *    Redirect keyboard system through DOS so that        |#########
#########| *    this program can be used as a command line          |#########
#########| *    filter.  This program, lower.exe converts all       |#########
#########| *    standard input to lower case.  Use scrn_dos         |#########
#########| *    to output characters through DOS.                   |#########
#########|                                                          |#########
#########| #include io.hdr                                          |#########
#########|                                                          |#########
#########| PROCEDURE force_main                                     |#########
#########|     VARDEF                                               |#########
#########|         BYTE    i                                        |#########
#########|         UINT    bytes_read                               |#########
#########|     ENDDEF                                               |#########
#########|                                                          |#########
#########|     DO key_dos              && get input from std-in     |#########
#########|     DO scrn_dos             && and output through DOS    |#########
#########|                                                          |#########
#########|     DO WHILE fb_read( i, 1 ) > 0                         |#########
#########|         IF i >= 'A' .AND. i =< 'Z'                       |#########
#########|             i = i - 'A' + 'a'                            |#########
#########|         ENDIF                                            |#########
#########|         fb_write( i, 1 )                                 |#########
#########|     ENDDO                                                |#########
#########| ENDPRO                                                   |#########
#########|                                                          |#########
#########| *--- To use the above program at the DOS prompt type:    |#########
#########|                                                          |#########
#########| type anyfile.txt | lower                                 |#########
#########+----------------------------------------------------------+#########
##############################################################################

See Also: key_bios scrn_bios scrn_direct scrn_dos

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson