T A B L E O F C O N T E N T S 1. Introduction...............................................1 2. Technical Nitty Gritties...................................1 3. User Supported Software....................................2 3.1. Registering...........................................2 3.2. Support Services......................................2 3.2.1. Electronic Support.............................3 4. The Basics.................................................4 4.1. Window Basics.........................................5 4.2. Data Entry Basics.....................................6 4.3. Form Basics...........................................7 4.4. Mouse Basics..........................................8 4.5. Important Concepts...................................11 4.5.1. WINDOWS.H.....................................11 4.5.2. Window Handles................................11 4.5.3. Mouse Handles.................................11 4.5.4. Window Origin.................................11 4.5.5. Text and Data Field Origins...................11 4.5.6. Attributes....................................11 4.5.7. Fields and Forms..............................12 4.5.8. Return Values.................................12 4.5.9. Closing Forms and Windows.....................12 4.5.10. Overlapping Windows..........................13 4.5.11. Functions....................................14 5. Distribution Methods & Media Kits ........................15 5.1. CompuServe, GENIE & Bulletin Board Files.............15 5.2. The SHAREWARE Distribution Diskette(s)...............15 5.3. The SOURCE Distribution Diskette(s)..................18 6. Installation, Compiling, Linking .........................26 6.1. Installation.........................................26 6.2. Compiling............................................28 6.3. Linking..............................................28 7. General Notes.............................................29 7.1. Borland Turbo C......................................31 7.2. Microsoft C..........................................31 7.3. Microsoft QuickC.....................................31 7.4. MIX Power C..........................................32 7.5. Zortech C............................................32 7.6. Lattice C............................................33 7.7. Aztec C..............................................33 7.8. Watcom C.............................................33 7.9. Express C............................................33 7.10. Feedback............................................33 7.11. Hints on Resolving Common Problems..................34 8. Making Changes............................................35 8.1. General Considerations...............................35 8.2. Specific Changes to Consider.........................36 8.3. Making Changes - An Overview by The Numbers .........37 8.4. Assembly Language Object Files.......................37 8.5. Assembly Language Object File Matrix.................38 8.6. Assembler Code.......................................39 8.7. C Code...............................................40 9. Function Call Synopsis....................................41 9.1. wn_init -- init window system........................42 9.2. wn_exit -- exit window system........................42 9.3. wn_psinit() -- init window system given physical scr.42 9.4. wn_dmode -- set window display mode..................43 9.5. wn_open -- open window ..............................44 9.6. wn_title -- title window.............................45 9.7. wn_titla -- title window with attribute..............45 9.8. wn_close -- close window.............................46 9.9. wn_save -- save screen image ........................46 9.10. wn_restore -- restore saved screen image............47 9.11. wn_move -- move window..............................47 9.12. wn_locate -- locate cursor in window................48 9.13. wn_printf -- window printf..........................49 9.14. wn_puts -- put string (high speed)..................50 9.15. wn_putc -- put character ...........................50 9.16. wn_gets -- get string with validation...............51 9.17. wn_putsa -- put string and attribute (high speed)...52 9.18. wn_putca -- put character and attribute.............52 9.19. wn_insrow -- insert row in window...................53 9.20. wn_delrow -- delete row from window.................53 9.21. wn_clr -- clear window..............................54 9.22. wn_activate -- activate window......................54 9.23. wn_color -- set window & border attribute...........55 9.24. wn_wrap -- set/clear line wrap flag.................56 9.25. wn_sync -- set/clear cursor synchronization flag....56 9.26. wn_scroll -- set scrolling method for window........57 9.27. wn_dma -- set/clear write ram directly flag.........58 9.28. wn_fixcsr -- update window cursor position..........58 9.29. wn_boxset -- set box drawing character set..........59 9.30. wn_natrib -- set new attribute in window NOW!.......59 9.31. wn_dborder -- draw (replace) border on window.......60 9.32. wn_input -- general purpose window input............61 9.33. wn_frmopn -- open data entry form...................64 9.34. wn_frmget -- get (read) data entry form.............65 9.35. wn_frmcls -- close data entry form..................66 9.36. wn_gdate - input date in window.....................67 9.37. wn_gtime -- input time in window....................69 9.38. wn_gphone -- input phone number in window...........71 9.39. wn_gtext -- input text in window....................73 9.40. wn_gutext -- input uppper case text in window.......73 9.41. wn_gltext -- input lower case text in window........73 9.42. wn_gpword -- input password in window...............75 9.43. wn_gint -- input integer in window..................77 9.44. wn_guint - input unsigned integer in window.........79 9.45. wn_glong -- input long integer in window............81 9.46. wn_gulong -- input unsigned long integer in window..83 9.47. wn_gfloat -- input float in window..................85 9.48. wn_gdouble -- input double in window................87 9.49. wn_gbool -- input logical in window.................89 9.50. wn_dtext -- display text on input form..............91 9.51. wn_iemsg -- display input error message.............92 9.52. wn_ihmsg -- display input help message..............93 9.53. wn_sleftj -- (string) left justify .................94 9.54. wn_srightj -- (string) right justify ...............94 9.55. wn_scenter -- (string) center ......................95 9.56. wn_sdelspc -- (string) delete leading/trailing spac.96 9.57. wn_strndx -- (string) return index of s2 in s1......96 9.58. mo_reset -- reset/init mouse........................97 9.59. mo_show -- show mouse...............................98 9.60. mo_hide -- hide mouse...............................99 9.61. mo_pos -- get mouse pixel position & status........100 9.62. mo_move -- move mouse pixel cursor.................101 9.63. mo_pbinfo -- get pressed mouse botton status.......102 9.64. mo_rbinfo -- get released mouse button status......103 9.65. mo_clim -- set mouse min/max pixel column limits...104 9.66. mo_rlim -- set mouse min/max pixel row limits......104 9.67. mo_sgcursor -- set mouse graphics cursor...........105 9.68. mo_scursor -- set mouse cursor.....................106 9.69. mo_motion -- get mouse motion counters............108 9.70. mo_task -- define mouse event handler..............109 9.71. mo_lpon -- mouse light pen emulation on............110 9.72. mo_lpoff -- mouse light pen emulation off..........110 9.73. mo_ratio -- set motion to pixel ratio..............110 9.74. mo_rcpos -- return current position of mouse.......111 9.75. mo_locate -- locate (position) mouse cursor........113 9.76. mo_press -- get mouse button press status..........114 9.77. mo_release -- get mouse button release status......116 9.78. mo_reigon -- set mouse region......................118 9.79. mo_setptr -- set mouse pointer and attributes......119 9.80. mo_wait -- wait for mouse to settle................120 9.81. mo_nbutt -- get mouse button count.................121 9.82. _getca -- get character and attribute..............122 9.83. _putca -- put character and attribute .............122 9.84. _vidblt -- video block transfer....................123 9.85. v_spage -- set active display page.................123 9.86. v_cls -- clear entire video screen ................124 9.87. v_smode -- set video mode..........................124 9.88. v_wca -- write character and attribute.............125 9.89. v_wtty -- write character TTY mode.................125 9.90. v_locate -- locate (position) cursor...............126 9.91. v_hidec -- hide cursor.............................126 9.92. v_sctype -- set cursor type (style)................127 9.93. v_sapu -- scroll active display page up............127 9.94. v_sapd -- scroll active display page down..........128 9.95. v_rcpos -- return current cursor position..........128 9.96. v_rcvs -- return current video state...............129 9.97. v_getch -- get keyboard character and scan code....129 9.98. v_kstat -- get keyboard status.....................130 9.99. v_kflush -- flush keyboard buffer..................130 9.100. v_border -- set border color......................130 10. Registration Form........................................131 1