home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1993 September / 1993-09.d64 / mn (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  3KB  |  98 lines

  1. 10 ifa=0thena=1:load"textreader64",8,1
  2. 30 poke56,56:poke55,0:clr
  3. 40 f=49153:fl=49170:fori=820to1023:pokei,0:next
  4. 50 n=9:dimt$(n),a$(n),p$(n)
  5. 60 fori=0ton:readt$(i),a$(i),p$(i):next
  6. 70 sp$="                                      "
  7. 80 a$="compute's september gazette disk":cx=20-len(a$)/2
  8. 90 z$="":a$=left$(sp$,cx)+a$+sp$:fori=1to40
  9. 100 z$=z$+chr$(asc(mid$(a$,i))+128):next
  10. 110 np=int(n/8):cp=0:tt=183
  11. 120 poke53280,15:poke53281,15
  12. 130 poke53282,8:poke53283,1:poke53284,6
  13. 140 gosub610:rem opening advisory
  14. 150 print"[147]":poke53280,15:poke53281,15:poke53265,peek(53265)or64
  15. 160 printchr$(142)"[147][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]";
  16. 170 print""z$;
  17. 180 print"[160][160][168][195][169][160][177][185][185][179][160][195][207][205][208][213][212][197][160][208][213][194][204][174][160][201][206][212][167][204][172][160][204][212][196][174][160][160]";
  18. 190 print"[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][145]"
  19. 200 print"[146][144]----------------------------------------";
  20. 210 s=cp*8:e=cp*8+7:ife>nthene=n
  21. 220 fori=stoe:print"[160]";chr$(177+i-cp*8);"[160][151]";t$(i);
  22. 230 printleft$(sp$,36-len(t$(i)));
  23. 240 print"[146][144]----------------------------------------";:next
  24. 250 print"this is page #";cp+1;"of";np+1
  25. 260 print"press [210][197][212][213][210][206][146] for next page[145][145]"
  26. 265 gosub 900
  27. 266 :
  28. 270 print"[145][145][160][208][210][197][211][211][160][177][173]"chr$(tt);
  29. 280 print"[160][212][207][160][204][207][193][196][160][193][160][208][210][207][199][210][193][205][160][207][210][160][193][210][212][201][195][204][197][160]";
  30. 290 print"[160][160][160][160][160][160][160][160][208][210][197][211][211][160][216][160][212][207][160][197][216][201][212][160][212][207][160][194][193][211][201][195][160][160][160][160][160][160][160][160]";
  31. 300 geta$:ifa$<>chr$(13)and(a$<"1"ora$>"8"anda$<>"x")then300
  32. 310 ifa$="x"thenprint"[147]":poke53265,27:sys65409:poke56,160:poke55,0:clr:end
  33. 320 ifa$=chr$(13)thencp=cp+1:ifcp>npthencp=0
  34. 330 ifa$=chr$(13)then150
  35. 340 fv=(asc(a$)-48):fv=fv+7*(fv>8)
  36. 350 c=fv+cp*8-1
  37. 360 ifc>nthen300
  38. 365 if a$(c)="xx" goto 550
  39. 366 if p$(c)="xx" goto 580
  40. 370 print"[147]":poke53265,27:ifcp=1 and c=11 then 580
  41. 380 b=0:print""tab(11)"article[146] or program"
  42. 390 printtab(8)"[145][145][145][145][145]press any key to switch,"
  43. 400 printtab(10)"or return[146] to select."
  44. 410 geta$:ifa$=""then410
  45. 420 ifa$=chr$(13)then460
  46. 430 ifb=0thenar$="article or program[146]":b=1:goto450
  47. 440 ar$="article[146] or program":b=0
  48. 450 print""tab(11)ar$:goto410
  49. 460 ifb=0then580
  50. 470 ifc<>3then550
  51. 480 b=0:c=1
  52. 490 cx=21-len(q$(c))/2:b$=left$(sp$,cx)+q$(c)
  53. 500 print""b$
  54. 510 geta$:ifa$=""then510
  55. 520 ifa$=chr$(13)thenp$(c)=r$(c):goto550
  56. 530 ifb=0thenc=c+1:b=1:goto490
  57. 540 c=c-1:b=0:goto490
  58. 550 print"[147][146][155]load[146]";chr$(34);p$(c);chr$(34);",8":print"run"
  59. 560 d$=p$(c):gosub850
  60. 570 poke631,13:poke632,13:poke631,13:poke198,2:end
  61. 580 fori=1tolen(a$(c)):pokei+f,asc(mid$(a$(c),i,1)):next
  62. 590 pokefl,len(a$(c))+2:d$=t$(c)
  63. 600 print"[147]":d$=a$(c):gosub850:sys49171:goto150
  64. 610 printchr$(14)"[147] [194]efore attempting to run any programs"
  65. 611 print" please refer to the instructions in"
  66. 612 print" [195][207][205][208][213][212][197]'s [199]azette [205]agazine issue"
  67. 613 print" dated the same month as this disk."
  68. 614 print" [208]lease note that this disk contains"
  69. 615 print" [194][207][206][213][211] programs which are not published"
  70. 616 print" in the [199]azette. [198]or your convenience,"
  71. 617 print" documentation has been included on the"
  72. 618 print" disk, along with a text reader. [215]hen a"
  73. 619 print" [194][207][206][213][211] program is selected from the"
  74. 620 print" menu, you are given the option of"
  75. 621 print" reading the article or running the"
  76. 622 print" program. [213]se the cursor keys to make"
  77. 623 print" your selection, then hit [210][197][212][213][210][206]."
  78. 626 print"      [208][210][197][211][211] [193][206][217] [203][197][217] [198][207][210] [212][200][197] [205][197][206][213]"
  79. 670 getmt$:ifmt$=""then670
  80. 680 return
  81. 700 data database,xx,database
  82. 710 data brick layer,xx,brick layer
  83. 720 data cd+,xx,cd-doodle
  84. 730 data silicon cobbler,xx,silicon cobbler
  85. 760 data *bonus* football,football.a,footnote
  86. 780 data "pd: 1581 directory assist",xx,1581 dir assist
  87. 786 data "pp: vector finder",xx,vector finder.pp
  88. 796 data "pp: screenbouncer",xx,screenbouncer.pp
  89. 846 data 64 mlx,xx,64 mlx
  90. 848 data automatic proofreader,xx,proofreader
  91. 850 poke53265,27:print"[146]";
  92. 860 ff$="loading "+chr$(34)+d$+chr$(34)
  93. 870 printtab((40-len(ff$))/2)ff$
  94. 880 print"            please stand by[155]":return
  95. 900 tt=176+8
  96. 910 if (cp+1)*8 > (n+1) then tt=176+n+1-cp*8
  97. 920 return
  98.