home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / MISC / GAPQBDR.ZIP / GAPQBSRC.BI < prev    next >
Text File  |  1994-01-05  |  6KB  |  164 lines

  1. '
  2. '  Copyright (C) 1988-1993 The GAP Development Company
  3. '
  4. '  All Rights Reserved
  5. '
  6. '
  7. '  GAPQBSRC.BI
  8. '
  9. '  Include file for all GAPQBDR source modules
  10. '
  11. '
  12.  
  13. ' Internal functions used by GAPQBDR. May be used by the programmer
  14.  
  15. DECLARE SUB getlocal(flag%)               ' stores address of l.ocal flag
  16. DECLARE SUB dosprint (a$)                 ' sends a string to display via BIOS
  17. DECLARE SUB gapputs (a$)                  ' sends string to local and remote
  18. DECLARE SUB CLS.ALL ALIAS "CLS_ALL" ()    ' clear all of the screen
  19. DECLARE SUB CLS23 ()                      ' clear 1st 23 lines of screen
  20. DECLARE SUB cursor (flag%)                ' turn cusor on or off
  21. DECLARE SUB set.cursor ALIAS "SET_CURSOR" (position%)  ' positions cursor to row & column
  22. DECLARE SUB set.directory (drive$)        ' sets the default drive and path
  23. DECLARE SUB wrap.word ()                  ' wraps words during sysop chat
  24. DECLARE FUNCTION get.cursor% ALIAS "GET_CURSOR" ()     ' returns cursor position
  25. DECLARE FUNCTION getkeyc% ()              ' ket a key from local console
  26. DECLARE FUNCTION get.directory$ ()        ' get current drive and path
  27.  
  28. ' source code not provided for following functions
  29.  
  30. DECLARE FUNCTION get.time& ()             ' returns time as long integer
  31. DECLARE FUNCTION getanum& ()              ' used internally by getrand
  32. DECLARE SUB init.rand ()                  ' used internally by init.door
  33.  
  34.  
  35. ' function declarations for the communications routines
  36.  
  37. DECLARE FUNCTION init.port% ALIAS "INIT_PORT" (parity%, d.ata%) ' initializes port
  38. DECLARE FUNCTION setport% (port%, baud&, irq%, b.ase%) ' configures the port
  39. DECLARE FUNCTION ckeypress% ()                      ' checks for keypress
  40. DECLARE FUNCTION comgetc% ()                        ' gets a character
  41. DECLARE FUNCTION iscd% ()                           ' checks for carrier
  42. DECLARE FUNCTION isring% ()                         ' checks if phone is ringing
  43. DECLARE FUNCTION rxempty% ()                        ' checks if receive buffer is empty
  44. DECLARE SUB clr.buf ALIAS "CLR_BUF" ()              ' clears receive buffer
  45. DECLARE SUB computc (c%)                            ' sends a character
  46. DECLARE SUB computs (a$)                            ' sends a string
  47. DECLARE SUB dtr (how%)                              ' toggles DTR
  48. DECLARE SUB rts (how%)                              ' toggles RTS
  49.  
  50.    ' DigiBoard specific routines
  51.  
  52. DECLARE FUNCTION dsetup% (b.ase%, port%, chnl%, baud&, parity%, d.ata%, s.top%)
  53.  
  54.    ' used to setup Direct DigiBoard Programming support
  55.    ' RESETDIG.EXE must have already been run in the AUTOEXEC.BAT or this
  56.    ' function will fail
  57.  
  58.    ' base   = Memory Window
  59.    ' port   = I/O Port
  60.    ' chnl   = DigiBoard Channel # (1 - 8)
  61.    ' baud   = baudrate (long)
  62.    ' parity = 0 = None, 1 = Odd, 2 = Even
  63.    ' data   = 6, 7, or 8
  64.    ' stop   = 1 or 2
  65.  
  66.    ' Return 0 = success
  67.    '        1 = no board
  68.    '        2 = Can't talk to board
  69.    '        3 = Invalid Parameter
  70.    '        4 = EPROM too old
  71.  
  72.  
  73. DECLARE FUNCTION int14set% (chnl%, baud&, parity%, d.ata%, s.top%)
  74.  
  75.    ' used to setup DigiBoard via INT14/EBIOS Device Driver
  76.    ' The Device Driver must be installed and configured for EBIOS Support
  77.    ' or this function will fail
  78.  
  79.    ' chnl   = DigiBoard Channel # (usually 4 - 11)
  80.    ' baud   = baudrate (long)
  81.    ' parity = 0 = None, 1 = Odd, 2 = Even
  82.    ' data   = 6, 7, or 8
  83.    ' stop   = 1 or 2
  84.  
  85.    ' Return 0 = success
  86.    '        1 = Device Driver Not installed or board not installed
  87.    '        2 = EBIOS not configured
  88.    '        3 = Invalid Parameter
  89.  
  90.    ' all other Digi Functions work with either Direct Programming or
  91.    ' Int14/EBIOS
  92.  
  93.  
  94. DECLARE SUB drestore ()
  95.  
  96.    ' Resets The Modem attached to the DigiBoard
  97.    ' don't call if you want DTR to stay up
  98.  
  99.  
  100.    ' Fossil specific routines
  101.  
  102. DECLARE FUNCTION fos.setport% ALIAS "FOS_SETPORT" (port%)
  103.  
  104.    ' Used to tell Fossil driver we want to use the specified Port
  105.  
  106.    ' MUST BE CALLED prior to using any Communications routine (if using
  107.    ' the Fossil Interface).
  108.  
  109.    ' port = COM Port # (0 based, COM 1 = 0, COM 2 = 1, etc)
  110.  
  111.    ' Return 0 = success
  112.    '        1 = Device Driver Not installed
  113.  
  114.  
  115. DECLARE SUB fos.resetport ALIAS "FOS_RESETPORT" ()
  116.  
  117.    ' Tells the Fossil Driver we are finished with the port.
  118.  
  119.  
  120. DECLARE FUNCTION fos.initport% ALIAS "FOS_INITPORT" (baud&, parity%, d.ata%, s.top%)
  121.  
  122.    ' Initializes the Fossil port 
  123.  
  124.    ' baud   = baudrate (long)
  125.    ' parity = 0 = None, 1 = Odd, 2 = Even
  126.    ' data   = 6, 7, or 8
  127.    ' stop   = 1 or 2
  128.  
  129.    ' Return 0 = success
  130.    '        1 = bad parameter passed
  131.  
  132.  
  133. DECLARE SUB fos.clrtx ALIAS "FOS_CLRTX" ()
  134.    
  135.    ' Clears the Fossil port's Transmit Buffer
  136.  
  137.  
  138.  
  139.    '***********************************************************************
  140.    '*  private GAPQBDR variables                                          *
  141.    '*                                                                     *
  142.    '*  these variables may be used in your source modules                 *
  143.    '***********************************************************************
  144.  
  145.    COMMON SHARED /GAPQBDR/ parity        AS INTEGER  ' actually data and not used
  146.    COMMON SHARED /GAPQBDR/ numbells      AS INTEGER  ' used in time.left function
  147.    COMMON SHARED /GAPQBDR/ usemore1      AS INTEGER  ' true if showing a file
  148.    COMMON SHARED /GAPQBDR/ redisplay     AS INTEGER  ' true if wants to start over
  149.    COMMON SHARED /GAPQBDR/ endview       AS INTEGER  ' true if dont want to see any more
  150.    COMMON SHARED /GAPQBDR/ NS            AS INTEGER  ' true if in Continuous Mode
  151.    COMMON SHARED /GAPQBDR/ clockon       AS INTEGER  ' 0 = no clock, 1 = display clock
  152.    COMMON SHARED /GAPQBDR/ chat          AS INTEGER  ' true if chatting with user
  153.  
  154.    COMMON SHARED /GAPQBDR/ recnum        AS LONG     ' user's record number
  155.    COMMON SHARED /GAPQBDR/ temptime      AS LONG     ' for calculating time out
  156.  
  157.    COMMON SHARED /GAPQBDR/ anystring1    AS STRING   ' global garbage collector
  158.    COMMON SHARED /GAPQBDR/ five.left     AS STRING   ' five minutes left
  159.    COMMON SHARED /GAPQBDR/ ANSI.CLS      AS STRING   ' ansi clear screen
  160.    COMMON SHARED /GAPQBDR/ strtime       AS STRING   ' holds the time string
  161.    COMMON SHARED /GAPQBDR/ curtime       AS STRING   ' holds the current time as a string
  162.    COMMON SHARED /GAPQBDR/ expired.time  AS STRING   ' out of time
  163.  
  164.