home *** CD-ROM | disk | FTP | other *** search
/ PC-Blue - MS DOS Public Domain Library / PC-Blue MS-DOS Public Domain Library - NYACC.iso / vol117 / tableofc.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1986-12-15  |  11.5 KB  |  331 lines

  1. 10  REM Documentation for the Genealogy ON DISPLAY Programs
  2. 20  REM All data is in the form of DATA statements.
  3. 30  REM By:  Melvin O. Duke.  Updated Janyary 1985.
  4. 40  DATA Genealogy
  5. 50  DATA User's Manual
  6. 60  DATA -5
  7. 70  DATA 1
  8. 80  INDENT = 0
  9. 90  DASHES$ = "+"+STRING$(54,45)+"+"
  10. 100  TRIM.LINE$ = "(Trim-line)"
  11. 110  REM Program begins here
  12. 120  READ TITLE$, DOC.NAME$, PAGE.NO, LINE.NO
  13. 130  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  14. 140  GOSUB 500  'For trim line and heading space
  15. 150  FOR I = 1 TO 6 : LPRINT : NEXT I
  16. 160  LPRINT CHR$(14);  'Set Expanded Print
  17. 170  LPRINT TAB(TAB.POS-2);TITLE$
  18. 180  LPRINT CHR$(18);  'Return to normal
  19. 190  FOR I = 1 TO 3 : LPRINT : NEXT I
  20. 200  LPRINT CHR$(27); "E"; 'Set Emphasized mode
  21. 210  LPRINT TAB(TAB.POS+12);"ON DISPLAY"
  22. 220  LPRINT CHR$(27); "F"; 'Return to normal
  23. 222  LPRINT : LPRINT : LPRINT
  24. 224  LPRINT TAB(TAB.POS+11);"Version 3.0"
  25. 230  FOR I = 1 TO 11 : LPRINT : NEXT I
  26. 240  LPRINT TAB(TAB.POS+10); DOC.NAME$
  27. 250  LINE.NO = LINE.NO + 27
  28. 260  '
  29. 270  READ REPLY$
  30. 280  IF LEFT$(REPLY$,1) = "." THEN GOSUB 850: GOTO 270
  31. 290  IF LINE.NO > 44 THEN GOSUB 610
  32. 300  REM Print the line if not a command
  33. 303  REM First, change tildes to quotes
  34. 304  FOR Q = 1 TO LEN(REPLY$)
  35. 305   IF MID$(REPLY$,Q,1)="~"THEN MID$(REPLY$,Q,1)=CHR$(34)
  36. 306  NEXT Q
  37. 310  LPRINT TAB(TAB.POS);REPLY$
  38. 320  LINE.NO = LINE.NO + 1
  39. 330  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  40. 340  GOTO 270
  41. 350  REM Data for the Copyright Page
  42. 354  DATA ".pa"
  43. 358  DATA "Anyone may request a copy of these"
  44. 362  DATA "programs by sending a blank, double-"
  45. 366  DATA "sided, double-density diskette to the"
  46. 370  DATA "author of the programs."
  47. 378  DATA ".sp"
  48. 382  DATA "An addressed, postage-paid return"
  49. 386  DATA "mailer must accompany the diskette (no"
  50. 390  DATA "exceptions, please).
  51. 394  DATA ".sp"
  52. 398  DATA "A copy of the programs with documenta-"
  53. 402  DATA "tion will be sent by return mail."
  54. 410  DATA ".vt 2"
  55. 415  DATA "Users are encouraged to copy and share"
  56. 420  DATA "the programs with others."
  57. 430  DATA ".vt 6"
  58. 434  DATA "If you are using these programs, and"
  59. 438  DATA "finding them of value, your contribution"
  60. 442  DATA "($35 suggested) will be anticipated."
  61. 446  DATA ".sp"
  62. 450  DATA "Melvin O. Duke"
  63. 454  DATA "P. O. Box 20836"
  64. 458  DATA "San Jose, CA  95160"
  65. 462  DATA ".vt 4"
  66. 466  DATA "Copyright (c) 1983, 1984, 1985, by:"
  67. 470  DATA "Melvin O. Duke."
  68. 474  DATA ".sp"
  69. 478  DATA "All rights reserved."
  70. 482  '
  71. 500  REM Top of each page routine
  72. 510  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  73. 520  LPRINT
  74. 530  LPRINT TAB(30); TRIM.LINE$
  75. 540  LPRINT DASHES$ 'Dashes
  76. 550  FOR I = 1 TO 6
  77. 560   LPRINT
  78. 570  NEXT I
  79. 580  LINE.NO = LINE.NO + 6
  80. 590  RETURN
  81. 600  '
  82. 610  REM Bottom of each page Routine
  83. 620  IF PAGE.NO < 1 THEN LPRINT : LPRINT : LPRINT : GOTO 740
  84. 630  LPRINT TAB(TAB.POS); STRING$(40,45)  'on line 46
  85. 640  LPRINT TAB(TAB.POS+3); TITLE$+" ON DISPLAY.  Version 3.0" 'on line 47
  86. 650  IF PAGE.NO MOD 2 = 1 THEN 690
  87. 660  LPRINT TAB(TAB.POS);"Page";PAGE.NO;
  88. 670  LPRINT TAB(TAB.POS+27);"User's Manual"
  89. 680  GOTO 740
  90. 690  LPRINT TAB(TAB.POS); "User's Manual";
  91. 700  IF PAGE.NO < 10 THEN DELTA = 34
  92. 710  IF PAGE.NO >  9 THEN DELTA = 33
  93. 720  IF PAGE.NO > 99 THEN DELTA = 32
  94. 730  LPRINT TAB(TAB.POS+DELTA); "Page"; PAGE.NO  'on line 48
  95. 740  LPRINT : LPRINT : LPRINT
  96. 750  LPRINT DASHES$ 'dashes after 51
  97. 760  LPRINT TAB(30); TRIM.LINE$
  98. 770  LPRINT CHR$(12);
  99. 780  PAGE.NO = PAGE.NO + 1
  100. 790  LINE.NO = 1
  101. 800  IF REPLY$ = ".eof" THEN 820  'Bypass after last page
  102. 810  GOSUB 500  'For top of next page
  103. 820  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  104. 830  RETURN
  105. 840  '
  106. 850  REM Command Processor
  107. 860  IF LEFT$(REPLY$,3) = ".h1" THEN 960
  108. 870  IF LEFT$(REPLY$,3) = ".h2" THEN 1100
  109. 880  IF LEFT$(REPLY$,3) = ".h3" THEN 1210
  110. 890  IF LEFT$(REPLY$,3) = ".sp" THEN 1320
  111. 900  IF LEFT$(REPLY$,4) = ".eof" THEN 1370
  112. 910  IF LEFT$(REPLY$,3) = ".pa" THEN 1410
  113. 920  IF LEFT$(REPLY$,3) = ".vt" THEN 1480
  114. 930  IF LEFT$(REPLY$,3) = ".pk" THEN 1590
  115. 940  IF LEFT$(REPLY$,3) = ".in" THEN 1720
  116. 950  STOP
  117. 960  REM Head 1 Processor
  118. 970  FOR I = LINE.NO TO 44
  119. 980   LPRINT
  120. 990  NEXT I
  121. 1000  GOSUB 610  'Bottom of page Routine
  122. 1010  IF PAGE.NO MOD 2 = 0 THEN GOSUB 1410  'For h1 on Odd pages
  123. 1020  LPRINT CHR$(14);  'Set expanded print
  124. 1030  IF PAGE.NO MOD 2 = 0 THEN ADJUST = -4 ELSE ADJUST = -7
  125. 1040  LPRINT TAB(TAB.POS+ADJUST); RIGHT$(REPLY$,LEN(REPLY$)-4)
  126. 1050  LPRINT CHR$(18);  'Return to normal
  127. 1060  LINE.NO = LINE.NO+1
  128. 1070  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  129. 1080  RETURN
  130. 1090  '
  131. 1100  REM Head 2 Processor
  132. 1110  IF LINE.NO = 7 THEN 1130 'skip spacing if at top of page
  133. 1120  IF LINE.NO > 43 THEN GOSUB 1410 ELSE LPRINT:LPRINT:LINE.NO = LINE.NO+2
  134. 1130  LPRINT CHR$(27); "E"; 'Set emphasized print
  135. 1140  LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-4)
  136. 1150  LPRINT CHR$(27); "F"; 'Return to normal
  137. 1160  LPRINT
  138. 1170  LINE.NO = LINE.NO + 2
  139. 1180  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  140. 1190  RETURN
  141. 1200  '
  142. 1210  REM Head 3 Processor
  143. 1220  IF LINE.NO = 7 THEN 1240 'skip spacing if at top of page
  144. 1230  IF LINE.NO > 43 THEN GOSUB 1410 ELSE LPRINT:LPRINT:LINE.NO = LINE.NO+2
  145. 1240  LPRINT CHR$(27); "E"; 'Set emphasized print
  146. 1250  LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-4)
  147. 1260  LPRINT CHR$(27); "F"; 'Return to normal
  148. 1270  LPRINT
  149. 1280  LINE.NO = LINE.NO + 2
  150. 1290  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  151. 1300  RETURN
  152. 1310  '
  153. 1320  REM Single Space Processor
  154. 1330  IF LINE.NO = 7 THEN 1350
  155. 1340  IF LINE.NO > 44 THEN GOSUB 1410 ELSE LPRINT : LINE.NO = LINE.NO + 1
  156. 1350  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  157. 1360  RETURN
  158. 1370  REM End of File Processor
  159. 1380  GOSUB 1410 'Bottom of Page
  160. 1390  LPRINT CHR$(12);
  161. 1400  GOTO 3340
  162. 1410  REM Page Eject Processor
  163. 1420  FOR I = LINE.NO TO 44
  164. 1430   LPRINT
  165. 1440   LINE.NO = LINE.NO + 1
  166. 1450  NEXT I
  167. 1460  GOSUB 610  'Bottom of Page Processing
  168. 1470  RETURN
  169. 1480  REM Vertical Tab Processor
  170. 1490  IF LINE.NO = 7 THEN 1580
  171. 1500  IF LINE.NO > 44 THEN GOSUB 610  'End of page
  172. 1510  QTY = VAL(RIGHT$(REPLY$,LEN(REPLY$)-3))
  173. 1520  FOR I = 1 TO QTY
  174. 1530   LPRINT
  175. 1540   LINE.NO = LINE.NO + 1
  176. 1550   IF LINE.NO > 44 THEN I = QTY
  177. 1560  NEXT I
  178. 1570  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  179. 1580  RETURN
  180. 1590  REM Pack Processor
  181. 1600  IF LINE.NO > 44 THEN GOSUB 610
  182. 1610  IF TAB.POS = 8 THEN ADJUST = 4
  183. 1620  IF TAB.POS = 13 THEN ADJUST = 7
  184. 1630  TAB.POS = TAB.POS + ADJUST + INDENT
  185. 1640  LPRINT CHR$(15); 'Packed printing
  186. 1650  WIDTH "lpt1:", 132 'set condensed width
  187. 1660  LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-3)
  188. 1670  LPRINT CHR$(18); 'Return to normal
  189. 1680  WIDTH "lpt1:", 80  'return to normal
  190. 1690  LINE.NO = LINE.NO + 1
  191. 1700  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  192. 1710  RETURN
  193. 1720  REM Indent Processor
  194. 1730  INDENT = VAL(RIGHT$(REPLY$,LEN(REPLY$)-3))
  195. 1740  RETURN
  196. 2000  DATA ".h1 TABLE OF CONTENTS"
  197. 2010  DATA ".sp"
  198. 2020  DATA "INTRODUCTION - - - - - - - - - - - -   1"
  199. 2030  DATA "  OVERVIEW - - - - - - - - - - - - -   1"
  200. 2040  DATA "  CAPABILITIES - - - - - - - - - - -   1"
  201. 2050  DATA "    Display the Genealogy  - - - - -   2"
  202. 2060  DATA "    Print Pedigree Charts (Family       "
  203. 2070  DATA "      Trees) - - - - - - - - - - - -   2"
  204. 2080  DATA "    Print Family Group Sheets  - - -   3"
  205. 2090  DATA "    Produce Descendents Charts - - -   3"
  206. 2100  DATA "    Create the Data Files  - - - - -   3"
  207. 2110  DATA "    Update the Data Files  - - - - -   4"
  208. 2120  DATA "    Create the Indices - - - - - - -   4"
  209. 2130  DATA "    List the Records in the File - -   4"
  210. 2140  DATA "    Printing the Contents of the"
  211. 2150  DATA "      files  - - - - - - - - - - - -   5"
  212. 2160  DATA "    Alphabetical Lists - - - - - - -   5"
  213. 2170  DATA "    Parent/Child Index List  - - - -   5"
  214. 2180  DATA "  BENEFITS/ADVANTAGES  - - - - - - -   6"
  215. 2190  DATA "  RESULTS  - - - - - - - - - - - - -   6"
  216. 2200  DATA "  REQUIREMENTS - - - - - - - - - - -   7"
  217. 2210  DATA "    Hardware Requirements  - - - - -   7"
  218. 2220  DATA "    Software Requirements  - - - - -   8"
  219. 2230  DATA ".sp"
  220. 2240  DATA "GENERAL INFORMATION  - - - - - - - -   9"
  221. 2250  DATA "  DESCRIPTION OF FUNCTIONS - - - - -   9"
  222. 2260  DATA "    File Creation  - - - - - - - - -   9"
  223. 2270  DATA "    File Maintenance - - - - - - - -   9"
  224. 2280  DATA "    File Indexes - - - - - - - - - -   9"
  225. 2290  DATA "    Summary Lists  - - - - - - - - -  10"
  226. 2300  DATA "    Detailed Data  - - - - - - - - -  10"
  227. 2310  DATA "    Displaying the Genealogy - - - -  10"
  228. 2320  DATA "    Printing Pedigree Charts - - - -  11"
  229. 2330  DATA "    Printing Family Group Sheets - -  11"
  230. 2340  DATA "    Producing Descendents Charts - -  11"
  231. 2350  DATA ".pa"
  232. 2360  DATA "  DEFINITION OF TERMS  - - - - - - -  12"
  233. 2370  DATA "    Personal Information - - - - - -  12"
  234. 2380  DATA "    Pedigree Information - - - - - -  12"
  235. 2390  DATA "    Family Group Information - - - -  12"
  236. 2400  DATA "    Descendents Information  - - - -  13"
  237. 2410  DATA "    Ordinance Information  - - - - -  13"
  238. 2420  DATA "  EXPLANATION OF GENERAL CONCEPTS  -  14"
  239. 2430  DATA "    Persfile - - - - - - - - - - - -  15"
  240. 2440  DATA "    Marrfile - - - - - - - - - - - -  16"
  241. 2450  DATA "    Pcindex  - - - - - - - - - - - -  17"
  242. 2460  DATA "    Mindex - - - - - - - - - - - - -  17"
  243. 2470  DATA "    Ordfile  - - - - - - - - - - - -  18"
  244. 2480  DATA "    Relationships  - - - - - - - - -  19"
  245. 2490  DATA "  BEFORE YOU START - - - - - - - - -  20"
  246. 2500  DATA "    List of Persons  - - - - - - - -  20"
  247. 2510  DATA "    List of Marriages  - - - - - - -  22"
  248. 2520  DATA ".sp"
  249. 2530  DATA "USING THE PROGRAMS - - - - - - - - -  23"
  250. 2540  DATA "  GETTING STARTED  - - - - - - - - -  23"
  251. 2550  DATA "  FIRST TIME USAGE - - - - - - - - -  25"
  252. 2560  DATA "    Backing up the Distribution         "
  253. 2570  DATA "      Diskette - - - - - - - - - - -  25"
  254. 2580  DATA "    Preparing a new Data Diskette  -  25"
  255. 2590  DATA "    Copying the Testdata Data File -  26"
  256. 2600  DATA "    Copying the Menu Program - - - -  27"
  257. 2610  DATA "    Creating the Data Files  - - - -  28"
  258. 2620  DATA "    Caution  - - - - - - - - - - - -  29"
  259. 2630  DATA "  HOW TO OPERATE - - - - - - - - - -  30"
  260. 2640  DATA "    Selecting an individual program   30"
  261. 2650  DATA "    Operating the updatper program -  31"
  262. 2660  DATA "    Operating the updatmar program -  33"
  263. 2670  DATA "    Operating the updatord program -  35"
  264. 2680  DATA "    Operating the indexpc program  -  36"
  265. 2690  DATA "    Operating the indexmar program -  37"
  266. 2700  DATA "    Operating the display program  -  38"
  267. 2710  DATA "    Operating the pedigree program -  41"
  268. 2720  DATA "    Operating the family program - -  42"
  269. 2730  DATA "    Operating the descend program  -  42"
  270. 2740  DATA "    Operating the other programs - -  43"
  271. 2750  DATA ".sp"
  272. 2760  DATA "  HOW TO STOP  - - - - - - - - - - -  44"
  273. 2770  DATA "    Stopping the update programs - -  44"
  274. 2780  DATA "    Stopping the display program - -  44"
  275. 2790  DATA "    Stopping the pedigree program  -  44"
  276. 2800  DATA "    Stopping the family program  - -  45"
  277. 2810  DATA "    Stopping the descend program - -  45"
  278. 2820  DATA "    Stopping the other programs  - -  45"
  279. 2830  DATA ".sp"
  280. 2840  DATA "REFERENCE MATERIAL - - - - - - - - -  47"
  281. 2850  DATA "  SAMPLE SCREENS AND PROMPTING"
  282. 2860  DATA "      MESSAGES - - - - - - - - - - -  47"
  283. 2870  DATA "    Menu Logo  - - - - - - - - - - -  48"
  284. 2880  DATA "    Menu of Programs - - - - - - - -  49"
  285. 2890  DATA "    Display Logo - - - - - - - - - -  50"
  286. 2900  DATA "    Personal Information - - - - - -  52"
  287. 2910  DATA "    Pedigree Information - - - - - -  53"
  288. 2920  DATA "    Family Group Information - - - -  54"
  289. 2930  DATA "    Ordinance Information  - - - - -  55"
  290. 2940  DATA "  COMMANDS USED  - - - - - - - - - -  57"
  291. 2950  DATA "    Basic Command  - - - - - - - - -  57"
  292. 2960  DATA "    Load Command - - - - - - - - - -  57"
  293. 2970  DATA "    Save Command - - - - - - - - - -  57"
  294. 2980  DATA "    Run Command  - - - - - - - - - -  58"
  295. 2990  DATA ".sp"
  296. 3000  DATA "APPENDIX A.  MESSAGES  - - - - - - -  59"
  297. 3010  DATA "  Start-up Messages  - - - - - - - -  59"
  298. 3020  DATA "  Error Messages - - - - - - - - - -  60"
  299. 3030  DATA ".sp"
  300. 3040  DATA "APPENDIX B. SUMMARY  - - - - - - - -  61"
  301. 3050  DATA "  General Programs - - - - - - - - -  61"
  302. 3060  DATA "  Documentation  - - - - - - - - - -  62"
  303. 3070  DATA ".pa"
  304. 3080  DATA "APPENDIX C. HINTS  - - - - - - - - -  63"
  305. 3090  DATA "  Names  - - - - - - - - - - - - - -  63"
  306. 3100  DATA "  Dates  - - - - - - - - - - - - - -  63"
  307. 3110  DATA "  Commas - - - - - - - - - - - - - -  63"
  308. 3120  DATA "  Replacing with Blanks  - - - - - -  64"
  309. 3130  DATA "  Removing a Record  - - - - - - - -  64"
  310. 3140  DATA ".sp"
  311. 3150  DATA "APPENDIX D.  MODIFICATIONS - - - - -  65"
  312. 3160  DATA "  Changing the Number of Persons - -  65"
  313. 3170  DATA "  Changing the Number of Marriages -  70"
  314. 3180  DATA "  Repositioning the Data Files - - -  73"
  315. 3190  DATA "    Persons File - - - - - - - - - -  73"
  316. 3200  DATA "    Marriages File - - - - - - - - -  74"
  317. 3210  DATA "    Ordinances File  - - - - - - - -  75"
  318. 3220  DATA "    Parent/Child Index - - - - - - -  76"
  319. 3230  DATA "    Marriages Index  - - - - - - - -  77"
  320. 3240  DATA "  Removing the Ordinances File - - -  78"
  321. 3250  DATA "  Changing the Ordinances File - - -  79"
  322. 3260  DATA "  Repositioning the Programs - - - -  80"
  323. 3270  DATA "  Utilizing Other Printers - - - - -  82"
  324. 3280  DATA ".sp"
  325. 3290  DATA "APPENDIX E.  TERMS & CONDITIONS  - -  87"
  326. 3300  DATA "  Terms  - - - - - - - - - - - - - -  87"
  327. 3310  DATA "  Conditions - - - - - - - - - - - -  88"
  328. 3320  DATA "  Disclaimer - - - - - - - - - - - -  88"
  329. 3330  DATA ".eof"
  330. 3340  END
  331.