home *** CD-ROM | disk | FTP | other *** search
/ C!T ROM 5 / ctrom5b.zip / ctrom5b / PROGRAM / ASM / ALIB30A / ALIB2.DOC < prev    next >
Text File  |  1994-12-03  |  29KB  |  400 lines

  1.  
  2. The following information summaries ALIB functions.  Functions are grouped
  3. into categories and then into modules.  The module is the smallest unit
  4. which the linker can handle.  The category is for descriptive purposes.
  5.  
  6.                                                                Category  Module
  7.                                                                --------  ------
  8. SHRINK - compress data block, adaptive huffman                 compress shrink1
  9. EXPAND - expand data back to original state, adaptive huffman  compress shrink1
  10. COMPRESS - compress data block, limpel-ziev algorithm          compress shrink2
  11. UNCOMPRESS - uncompress data block, limpel-ziev algorithm      compress shrink2
  12.  
  13. GET_SETUP - read setup file from disk & write initial file      config   config
  14. CHANGE_SETUP - allow user to change setup configuration.        config   config
  15. WRITE_SETUP - write setup block to disk file                    config   config
  16. SET_LIB_COLORS - set a color for library use                    config   config
  17.  
  18. COMPARE1 - compare asciiz strings, use case, registers updated  compare compar1
  19. COMPARE2 - compare strings cx=len, use case, registers restore  compare compar2
  20. COMPARE3 - compare asciiz strings, use case, registers updated  compare compar3
  21. COMPARE4 - compare strings cx=len, use case, registers restore  compare compar4
  22. COMPARE5 - compare asciiz strings,  no case, registers updated  compare compar5
  23. COMPARE6 - compare strings cx=len,  no case, registers restore  compare compar6
  24. COMPARE7 - compare asciiz strings,  no case, registers updated  compare compar7
  25. COMPARE8 - compare strings cx=len,  no case, registers restore  compare compar8
  26. COMPARE9 - compare characters, ignore case (no case)            compare compar9
  27. COMPAREF - compare files, using case                            compare comparf
  28.  
  29. BYTE_TO_DEC_STDOUT - convert byte to decimal ascii and output   convert  conv20
  30. BYTE_TO_HEX_STDOUT - convert byte to hex ascii and output       convert  conv23
  31. BYTE_TO_HEX_CRT - convert hex byte to ascii and display         convert  conv06
  32. BYTE_TO_HEX_STR - convert hex byte to two ascii characters      convert  conv06
  33. DEC_STR_TO_WORD - convert unsigned asciiz string to word        convert  conv25
  34. DEC_STR_TO_DWORD - convert unsigned asciiz string to word       convert  conv24
  35. DEC_STRZ_TO_DWORD - convert unsigned asciiz string to word      convert  conv24
  36. DEC_STR1_TO_WORD - convert unsigned asciiz string to word       convert  conv10
  37. DEC_STR1_TO_DWORD - convert unsigned asciiz string to dword     convert  conv14
  38. DEC_STR2_TO_WORD - convert unsigned ascii string to word        convert  conv11
  39. DEC_STR2_TO_DWORD - convert unsigned ascii string to dword      convert  conv15
  40. DEC_STR3_TO_WORD - convert signed asciiz string to word         convert  conv12
  41. DEC_STR3_TO_DWORD - convert signed asciiz string to dword       convert  conv16
  42. DEC_STR4_TO_WORD - convert signed ascii string to word          convert  conv13
  43. DEC_STR4_TO_DWORD - convert signed ascii string to dword        convert  conv17
  44. DWORD_TO_DEC_STRX - convert dword to decimal ascii & format     convert  conv07
  45. DWORD_TO_DEC_CRTX - convert dword to decimal ascii and display  convert  conv07
  46. DWORD_TO_DEC_STR - convert dword value and save in memory       convert  conv03
  47. DWORD_TO_DEC_STDOUT - convert dword value to decimal and output convert  conv22
  48. DWORD_TO_HEX_STR - convert hex double word to ascii             convert  conv06
  49. DWORD_TO_HEX_CRT - convert hex double word to ascii and display convert  conv06
  50. DWORD_TO_HEX_STDOUT - convert dword value to hex and output     convert  conv23
  51. HEX_STR_TO_BYTE - convert 2 hex ascii characters to 1 hex byte  convert  conv05
  52. HEX_STR_TO_WORD - convert 4 hex ascii characters to 2 hex bytes convert  conv05
  53. WORD_TO_DEC_STR - convert an integer value to an ASCIIZ string  convert  conv04
  54. WORD_TO_DEC_CRT - display integer as decimal value              convert  conv04
  55. WORD_TO_DEC_STDOUT - convert word to decimal ascii and output   convert  conv21
  56. WORD_TO_HEX_STR - convert hex word to four ascii characters     convert  conv06
  57. WORD_TO_HEX_CRT - convert hex word to ascii and display         convert  conv06
  58. WORD_TO_HEX_STDOUT - convert hex word to ascii and output       convert  conv23
  59.  
  60. DBASE_INIT  - initialize a database for use                     database dbase
  61. DBASE_READ - read specific record from the database             database dbase
  62. DBASE_READ_NEXT - read next sequential record                   database dbase
  63. DBASE_READ_PREV - read previous record                          database dbase
  64. DBASE_APPEND - append this record to end                        database dbase
  65. DBASE_INSERT - insert this record before specific record        database dbase
  66. DBASE_REPLACE - replace data for a specific record              database dbase
  67. DBASE_REMOVE - delete specific record                           database dbase
  68. DBASE_CLOSE - close & write any pending data to file            database dbase
  69. DBASE_KILL - delete dbase file                                  database dbase
  70.  
  71. FILE_COPY - copy a file                                         disk     disk1
  72. FILE_SIZE1 - find an open file's size                           disk     disk2
  73. FILE_SIZE2 - find a closed file's size                          disk     disk2
  74. FILE_COUNT - counts the number of files matching a filespec     disk     disk3
  75. FILE_FLUSH - flushes the DOS output buffer for specified handle disk     disk4
  76. FILE_EXIST - determines if a file exists and can be opened      disk     disk8
  77. EXPAND_FILENAME - Expand a file string to the full path         disk     disk9
  78. DECODE_FILENAME - build pointers to major portions of file name disk     diska
  79. FIND_HOME_PATH - get executing programs disk location           disk     diskb
  80. INSERT_HOME_PATH - build path to reach data                     disk     diskg
  81. GET_PATH - finds paths in program environment                   disk     diskc
  82. CHANGE_PATH - switch to new directory, save current path first  disk     diskd
  83. RESTORE_PATH - switch to directory saved by CHANGE_PATH         disk     diskd
  84. WALK_PATH - provide files matching pattern for processing       disk     diske
  85. DiskWrite_open - open disk file for buffer write                disk     diskf
  86. DiskWrite_buffer - open disk file for buffer write              disk     diskf
  87. DiskWrite_close - close disk file used for buffer write         disk     diskf
  88.  
  89. PUT_CRT_CHR - display single character                          display  crt1
  90. GET_CRT_CHR - read character and attribute from text screen     display  crt1
  91. REPEAT_PUT_CRT - displays a single char CX times                display  crt1
  92. PUT_CRT_BLK - copies a string to video memory buffer            display  crt2
  93. VERTICAL_REPEAT_CHR - repeat columns of a character vertically  display  crt2
  94. TABULAR_DRAW - Subroutine to draw using a table                 display  crt3
  95. CLEAR_SCREEN - fill screen with specified character and color   display  crt4
  96. DISPLAY_STRING - display string directly to video buffer        display  crt4
  97. DISPLAY_STRING_FILL - display string at specified position      display  crt4
  98. DISPLAY_STRING_LIST -  display a list of strings                display  crt4
  99. CLEAR_WINDOW - fill a rectangular area of screen                display  crt5
  100. DRAW_BOX - draw a box on screen                                 display  crt5
  101. WINDOW_STRING - display string in a window, handles cr/lf       display  crt5
  102. BOX_RIGHT - move box parameters right                           display  crt5
  103. BOX_LEFT -  move box parameters left                            display  crt5
  104. BOX_UP - move box parameters up one position                    display  crt5
  105. BOX_DOWN - move box parameters down one position                display  crt5
  106. BOX_EXPAND - expand box one position in all directions          display  crt5
  107. BOX_SHRINK - shrink box parameters one position                 display  crt5
  108. GET_ANSI_COLOR - find color attribute used by ANSI driver       display  crt6
  109. CURSOR_ - like SHOW_CURSOR, but the underscore cursor is used   display  crt6
  110. SHOW_CURSOR - move cursor to (row, col) and update cursor shape display  crt6
  111. HIDE_CURSOR - make hardware cursor invisible                    display  crt6
  112. BLINK_ON - enable blinking attributes                           display  crt6
  113. BLINK_OFF - disable blinking attributes                         display  crt6
  114. SAVE_WINDOW - save area of display in memory buffer             display  crt7
  115. RESTORE_WINDOW - restore a previously saved area of display     display  crt7
  116. DISK_TO_CRT - loads a screen image file saved by CRT_TO_DISK    display  crt8
  117. CRT_TO_DISK - saves a screen image to disk                      display  crt8
  118. POSN_TO_ADR - library internal usage only                       display  crt9
  119. ADR_TO_POSN - library internal usage only                       display  crt9
  120.  
  121. LIB_ERROR_HANDLER1 - pre definded errors in a window            error    error1
  122. ERROR_HANDLER1 - text in memory displayed in window             error    error1
  123. ERROR_PRIME1 - setup error handler for window display           error    error2
  124. ERROR_TABLE_HANDLER1 - windowed error messages from table       error    error2
  125. ERROR_FILE_HANDLER1 - windowed error messages from file         error    error2
  126. LIB_ERROR_HANDLER2 - pre defined errors to stdout               error    error3
  127. ERROR_HANDLER2 - general stdout error handling                  error    error3
  128. ERROR_PRIME2 - setup for ERROR_TABLE_HANDLER2                   error    error4
  129. ERROR_TABLE_HANDLER2 - errors from table to stdout              error    error4
  130.  
  131. FLOAT_OPEN - open the floating point module & hardware for use  float    float1
  132. FLOAT_CLOSE - release the memory allocated by FLOAT_OPEN        float    float1
  133. BINARY_IN - double word binary to floating format               float    float2
  134. BINARY_OUT - floating format to double word binary              float    float2
  135. FMOVE - move floating point token variables                     float    float2
  136. F_SUBTRACT - floating point subtract                            float    float2
  137. F_ADDITION - floating point addition                            float    float2
  138. F_COMP - floating point compare                                 float    float2
  139. F_MULTIPLY - floating point multiply                            float    float2
  140. F_DIVIDE - floating point divide                                float    float2
  141. ROUND - round floating number to two decimal points             float    float2
  142. TEXT_OUT - floating point to ascii conversion                   float    float2
  143. TEXT_IN - ascii to floating point conversion                    float    float2
  144. FLOAT_SET - enable/disable hardware (not used at present)       float    float2
  145.  
  146. DMUL_10_PLUS - multiply times ten & add value                   math     math01
  147. DWORD_NEGATE - negate dwouble word                              math     math02
  148. DWORD_DIVIDE - divide dword by word                             math     math02
  149. DWORD_ADD    - add two double words                             math     math02
  150. DWORD_SUB    - subtract two dwords                              math     math02
  151. DWORD_MUL    - multiply two dwords                              math     math02
  152. WORD_CRC1 - undate CRC word sum for next byte                   math     math07
  153. WORD_CRC2 - fast 16bit CRC for a buffer of data                 math     math07
  154. DWORD_CRC    - compute 32 bit crc                               math     math03
  155. WORD_SQROOT  - compute square root of word value                math     math04
  156. DWORD_COMPARE - unsigned 32 bit number compare                  math     math05
  157. QUAD_MULTIPLY1 - multiply two dwords                            math     math05
  158. QUAD_MULTIPLY2 - multiply two 32 bit unsigned numbers           math     math05
  159. QUAD_DIVIDE - divide quad value by dword                        math     math05
  160. BLOCK_ADD     Add two values in memory                          math     math06
  161. BLOCK_NEGATE - negate block in memory                           math     math06
  162. BLOCK_SUBTRACT - subtract two data blocks in memory             math     math06
  163. BLOCK_DIVIDE - divide two variable blocks in memory             math     math06
  164. BLOCK_MULTIPLY - multiply of two block in memory                math     math06
  165.  
  166. MEM_OPEN     - interrogate memory and setup database.           memory  memory1
  167. MEM_ALLOCATE - allocate a block of memory.                      memory  memory1
  168. MEM_PUT      - write to allocated memory area.                  memory  memory1
  169. MEM_GET      - read from allocated memory area.                 memory  memory1
  170. MEM_RELEASE  - release allocated memory block.                  memory  memory1
  171. MEM_CLOSE    - close memory handler.                            memory  memory1
  172. DOS_MEM_ALLOCATE - allocate dos memory for direct writes        memory  memory1
  173. DOS_MEM_RELEASE - release DOS_MEM_ALLOCATE memory               memory  memory1
  174.  
  175. CMOS_TYPE - check cmos type                                     memory  memory2
  176. CMOS_CHECKSUM - checksum a block of cmos memory                 memory  memory2
  177. CMOS_READ_BYTE - read one char from cmos memory                 memory  memory2
  178. CMOS_READ_WORD - read one word from cmos memory                 memory  memory2
  179. CMOS_READ_BLOCK - read block of data from cmos memory           memory  memory2
  180. CMOS_WRITE_BYTE - write one char to cmos memory                 memory  memory2
  181. CMOS_WRITE_WORD - write one word to cmos memory                 memory  memory2
  182. CMOS_WRITE_BLOCK - write block of data to cmos memory           memory  memory2
  183.  
  184. MCB_FIND_FIRST - scan for start of MCB chain                    memory  memory3
  185. MCB_FIND_NEXT - scan for next MCB entry                         memory  memory3
  186. MCB_CHECK_NAME - compare current MCB name against list of names memory  memroy3
  187. MCB_FIND_NAME - scan current mcb to see if name is present      memory  memory3
  188. MCB_DISPLAY_NAME - display program name if present              memory  memory3
  189.  
  190. CHECK_DOS_MEMORY - check DOS memory size and amount available   memory  memory4
  191. XMS_CHECK - check XMS memory size and amount available          memory  memory5
  192. XMS_UMB_CHECK - check if UMB area allocated by XMS driver       memory  memory5
  193. XMS_ALLOCATE - allocate xms memory                              memory  memory5
  194. XMS_READ - read XMS memory block                                memory  memory5
  195. XMS_WRITE - write block of data to XMS memory                   memory  memory5
  196. XMS_RELEASE - release current XMS memory block                  memory  memory5
  197. EMS_CHECK - detects EMS driver                                  memory  memory6
  198. EMS_ALLOCATE - allocate EMS memory                              memroy  memory6
  199. EMS_PAGE - request page of ems memory                           memory  memory6
  200. EMS_RELEASE - release allocated ems memory                      memory  memory6
  201. EXT_CHECK - check if EXT memory is present                      memory  memory7
  202. EXT_READ - read block of ext memory                             memory  memory8
  203. EXT_WRITE - write to EXT memory                                 memory  memory8
  204.  
  205.  
  206. MENU_SYSTEM - Menu bar display and decode of user selection     menu   puldown1
  207. QMENU_SYSTEM - Quick pull down menu bar                         menu   puldown2
  208.  
  209. MESSAGE - boxed message display                                message   msg1
  210. QMESSAGE - Quick message display (msg in file)                 message   msg3
  211. QWARN - Quick message display (msg in mem)                     message   msg3
  212.  
  213. BIT_COUNT - count bits in -al-                                  misc     misc1
  214. REGISTER_DUMP - dump registers for debugging                    misc     misc2
  215. STACK_DUMP - dump stack for debugging                           misc     misc2
  216. A20_CHECK - check if A20 line is active                         misc     misc3
  217. A20_WRAP_OFF - check if A20 line is active                      misc     misc3
  218. A20_WRAP_ON - check if A20 line is active                       misc     misc3
  219. SEG_TO_ABS - convert segment:offset to absolute address         misc     misc3
  220.  
  221. IS_ALPHA - determines if a key from KEY_READ alpha char        mouse/key mkey01
  222. IS_TEXT  - determines if key from KEY_READ is 20h-7eh or tab   mouse/key mkey01
  223. IS_DIGIT - determines if a key from KEY_READ is number         mouse/key mkey02
  224. IS_LOWER - determine if a key from KEY_READ is lower case      mouse/key mkey03
  225. IS_UPPER - determine if a key from KEY_READ is upper case      mouse/key mkey04
  226. TO_UPPER - converts keycode returned by KEY_READ to upper case mouse/key mkey05
  227. TO_LOWER - converts keycode returned by KEY_READ to lower case mouse/key mkey06
  228. IS_STDOUT_CONSOLE - check if stdout is redirected              mouse/key mkey19
  229. CAPS_ON - keyboard capslock key enabled                        mouse/key mkey07
  230. NUMLOCK_ON  - keyboard numlock key enabled                     mouse/key mkey07
  231. SCROLL_ON - keyboard scroll lock key enabled                   mouse/key mkey07
  232. INSERT_OFF - keyboard insert key disabled                      mouse/key mkey07
  233. CAPS_OFF - keyboard capslock key disabled                      mouse/key mkey07
  234. NUMLOCK_OFF - keyboard numlock key disabled                    mouse/key mkey07
  235. SCROLL_OFF - keyboard scroll lock key disabled                 mouse/key mkey07
  236. YES_OR_NO - wait for yes or no user response                   mouse/key mkey08
  237. FLUSH_KEYBOARD - clears the keyboard's 'type-ahead' buffer     mouse/key mkey09
  238. KEY_CHECK - determines if a key is waiting                     mouse/key mkey09
  239. KEY_READ - returns next key pressed                            mouse/key mkey09
  240. KEY_PUT - put key back into BIOS buffer                        mouse/key mkey10
  241. KEY_IF_READY - Returns key if one is waiting                   mouse/key mkey11
  242. SETUP_MOUSE - initializes mouse if present                     mouse/key mkey12
  243. MOUSE_PARMS - determine mouse position & buttons pressed       mouse/key mkey12
  244. KEY_OR_MOUSE - waits for keypress or mouse button click        mouse/key mkey13
  245. MOVE_MOUSE - position the mouse cursor                         mouse/key mkey14
  246. BOX_THE_MOUSE - limits mouse's range of motion                 mouse/key mkey15
  247. MOUSE_CURSOR_ON - enable the mouse cursor at BIOS level        mouse/key mkey15
  248. MOUSE_CURSOR_OFF - disable the mouse cursor at BIOS level      mouse/key mkey15
  249. GET_STRING - read string from the keyboard.                    mouse/key mkey16
  250. KEY_DECODE - analyze key and select processing                 mouse/key mkey16
  251. QGET_STRING - Quick call to get string & return when done      mouse/key mkey16
  252. window_edit - edit text within window                          mouse/key mkey17
  253. window_cstring - display text with hyper formatting            mouse/key mkey17
  254.  
  255. RANDOM_BYTE1 - generate random byte value                      random   random3
  256. RANDOM_DWORD1 - generate random dword value                    random   random4
  257. RANDOM_WORD1 - generate random word value, using method 1      random   random1
  258. RANDOM_WORD2 -  generate random word value, using method 2     random   random2
  259. RANDOM_WORD3 - generate random word value, using method 3      random   random5
  260. RANDOM_WORD4 - generate random word value, method 4            random   random6
  261. RANDOM_WORD4_SCALED - random number within a specific range    random   random6
  262. RANDOM_WORD5 - generate random word value, method 5            random   random7
  263. SCALE - scale word value                                       random   random7
  264. RANDOM_SEED - get low clock value for us as random number      random   random8
  265.  
  266. PARSE_FIRST - parse first argument from command line            parse    parse
  267. PARSE_NEXT - parse next command line parameter                  parse    parse
  268.  
  269. SCAN_BLOCK_TINY1 - scan buffers for string, case match          search   scan01
  270. SCAN_BLOCK_TINY2 - scan buffers for string, match either case   search   scan02
  271. SCAN_BLOCK1 - scan buffers for string, match case               search   scan03
  272. SCAN_BLOCK2 - scan buffers for string, match either case        search   scan04
  273. SCAN_BLOCK_FOPEN - initialize fast scan of sequential buffers   search   scan05
  274. SCAN_BLOCK_FCLOSE - terminate fast scan sequential buffers      search   scan05
  275. SCAN_BLOCK_FAST - fast scan of sequential buffers for string    search   scan05
  276. BUFFER_SEARCH - search string1 for the first string2            search   scan16
  277. BUFFER_SEACHC - search a buffer for the first of a string       search   scan16
  278. SCAN_CHAR1 - scan asciiz buffer for character, case match       search   scan06
  279. SCAN_CHAR2 - scan asciiz buffer for char, match either case     search   scan07
  280. SCAN_CHAR3 - scan  buffer for character, case match             search   scan08
  281. SCAN_CHAR4 - scan buffer for character, match either case       search   scan09
  282. SCAN_LAST_CHAR1 - scan asciiz string for last match, case match search   scan10
  283. SCAN_LAST_CHAR2 - scan asciiz buffer for last occurance of char search   scan11
  284. SCAN_LAST_CHAR3 - scan  buffer for last char match, case match  search   scan12
  285. SCAN_LAST_CHAR4 - scan buffer for last match, match either case search   scan13
  286. SCAN_LAST_STR1 -  find last match of str in buffer, case match  search   scan14
  287. LAST_CHAR - find last char in block                             search   scan15
  288. LAST_CHARC - find last char in block                            search   scan15
  289.  
  290. BUBBLE_SORT_BUFFER - bubble sort of buffer in memory             sort    sort30
  291. BUBBLE_SORT_FILE - bubble sort of file                           sort    sort31
  292. BUBBLE_SORT_ARRAYW - bubble sort array of word integers          sort    sort33
  293. BUBBLE_SORT_ARRAYD - bubble sort array of double words           sort    sort34
  294. MERGE_SORT_BUFFER - merge sort of buffer in memory               sort    sort20
  295. MERGE_SORT_FILE - merge sort of file                             sort    sort21
  296. MERGE_SORT_ARRAYW - merge sort array of words                    sort    sort23
  297. MERGE_SORT_ARRAYD - merge sort array of double words             sort    sort24
  298. SELECTION_SORT_BUFFER - selection sort of buffer in memory       sort    sort10
  299. SELECTION_SORT_FILE - selection sort of file                     sort    sort11
  300. SELECTION_SORT_ARRAYW - selection sort of array of words         sort    sort13
  301.  
  302. SOUND_ON - enable sounds on speaker from BEEP or ONE_BEEP       sound    sound1
  303. SOUND_OFF - disable sounds on speaker from BEEP or ONE_BEEP     sound    sound1
  304. ONE_BEEP - beep once                                            sound    sound2
  305. MAKE_SOUND make sound for number of milliseconds.               sound    sound2
  306.  
  307. STRLEN1 - finds length of an ASCIIZ string in DS:SI             string   str01
  308. STRLEN2 - finds length of an ASCIIZ string in DS:DI             string   str01
  309. STRLEN3 - finds length of an ASCIIZ string in DS:BX             string   str01
  310. LEGAL_CHAR_CHECK - scan target string for legal characters      string   str08
  311. ILLEGAL_CHAR_CHECK - scan target string for illegal characters  string   str09
  312. STR_UPPER - change lower-case characters to upper case          string   str16
  313. STR_UPPERC - changes lower-case characters in n-length string   string   str17
  314. STR_LOWER - changes bytes of a string to lower case             string   str19
  315. STR_LOWERC - changes n bytes of a string to lower case          string   str20
  316. STR_CENTER - centers a string in a fixed field                  string   str21
  317. STR_LEFT - left-justifies a string in a fixed field             string   str22
  318. STR_RIGHT - right-justifies a string in a fixed field           string   str23
  319. STR_CLEANL - remove leading blanks from an ASCIIZ string        string   str24
  320. STR_CLEANR - removes trailing blanks from an ASCIIZ string      string   str25
  321. STR_REMOVE - remove all occurrences of a character from string  string   str26
  322. STR_CHAR_DEL - deletes a character from a string                string   str27
  323. STR_CHAR_DELC - deletes a character from string of known length string   str27
  324. STR_REVERSE - reverses all characters in a string               string   str28
  325. STR_REVERSEC - reverses n characters in a string                string   str28
  326. STR_SWAP - swaps strings or portion of strings                  string   str29
  327. STR_CLEAN - sets all bytes of string to a specified character   string   str30
  328. STR_CLEANC - sets n bytes of string to a specified character    string   str30
  329. STR_JOIN - appends string2 at end of string1                    string   str31
  330. STR_INSERT - inserts string2 in string1 at specified offset.    string   str32
  331. STR_INSERTC - inserts string2 in string1 at specified offset.   string   str32
  332. STR_COPY - copy an ASCIIZ string to existing buffer             string   str33
  333. STR_COPYC - copy CX bytes to an existing buffer                 string   str33
  334.  
  335. STDOUT_CHAR - put character to stdout                           stdout  stdout01
  336. STDOUT_STRING - put asciiz string to stdout                     stdout  stdout01
  337. STDOUT_CRLF   - put new line to stdout                          stdout  stdout01
  338. STDOUT_SPACES - put spaces to stdout                            stdout  stdout01
  339.  
  340. LIBRARY_SETUP - setup library for use                           system   sys1
  341. LIBRARY_TERMINATE - close out library for program exit          system   sys1
  342. FIND_CPU_TYPE - detects cpu type                                system   sys1
  343. MATH_HARDWARE - determines if 80x87 math coprocessor present    system   sys1
  344. KEYBOARD_SETUP - determine type of keyboard attached            system   sys1
  345. FIND_MOUSE - determines if a mouse is installed                 system   sys1
  346. CHECK_ANSI - determines if ANSI is present                      system   sys1
  347. DISPLAY_INFO - analyze display type and return parameters       system   sys1
  348. DETECTVID -  determine display type                             system   sys1
  349. FIND_DISPLAY_SEGMENT - scan for current display buffer segment  system   sys1
  350. SPAWN_DOS - execute a second copy of DOS and application        system   sys2
  351. COUNT_FLOP_DRIVES - determine the number of floppy drives       system   sys3
  352. GET_DRV_TYPE - determine drive type                             system   sys3
  353. BREAK_KEY_INTERCEPT - initialize Ctrl+Break trap                system   sys4
  354. BREAK_KEY_RESTORE - restore previous Ctrl+Break handler         system   sys4
  355. BREAK_CHECK -  check if break key pressed                       system   sys4
  356.  
  357. DAYS_TO_DATE - date for a given number of days since 1-1-1980   time     time1
  358. MONTH_TO_ASCII - get ASCII string for specified month           time     time2
  359. DAY_TO_ASCII - get ASCII string for specified day               time     time2
  360. GET_TIME - get the current system time.                         time     time3
  361. ASC_TIME: Creates an ASCIIZ time string of the form HH:MM Xm.   time     time3
  362. GET_DATE - get the current system date and day of the week      time     time4
  363. GET_DAY - get the day of the week for a given date.             time     time4
  364. ASC_DATE - Creates an ASCIIZ date string of the form MM/DD/YY   time     time5
  365. DATE_TO_DAYS - get days between Jan 1, 1980 and a given date    time     time6
  366. START_TIMER - start high resolution timer                       time     time7
  367. read_timer - read  high resolution timer                        time     time7
  368. CONVERT_TIMER - convert timer ticks to seconds and microsecond  time     time7
  369. DISPLAY_TIMER - display timer values to stdout                  time     time7
  370. CALIBRATE_TIMER - calibrate timer                               time     time7
  371.  
  372.  
  373.  
  374.       ALIB Overview
  375.       -------------
  376.  
  377.         ALIB functions were written assuming a memory manager
  378.         is present and that information about the system they
  379.         are executing on is available.  This allows the code
  380.         to make efficient use of memory, and avoids redundant
  381.         system interrogation.  For example, the display 
  382.         routines know the display mode, where display memory
  383.         is located, and what colors the user prefers.  
  384.  
  385.         The information needed to run any program is supplied
  386.         by the routine LIBRARY_SETUP.  This function needs to
  387.         be at the start of every program, and LIBRARY_TERMINATE
  388.         needs to be at the end.  Now the programmer can save
  389.         display data to a buffer with ease.  The library knows
  390.         where display memory is located, and it can allocate a
  391.         buffer to hold the data.  The programmer simply calls
  392.         SAVE_WINDOW, and eventually RESTORE_WINDOW to put the data
  393.         back on the display.  This allows very complex library
  394.         functions and very efficient use of memory.  Of course, it
  395.         also has a few restrictions.  Programs must be in a fairly
  396.         standard form.  The file TEMPLATE.ASM is a sample of the
  397.         form needed.  Additionally, their are numerous sample
  398.         programs which also show the form needed.
  399.  
  400.