home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 74 / 074.d81 / pd (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  6KB  |  159 lines

  1. 10 open15,8,15:print#15,"i":close15:print"[147]":poke53265,peek(53265)or16:poke198,0
  2. 15 open8,8,8,"disk,s,r":input#8,xi:close8:poke832,xi
  3. 20 poke53280,6:poke53281,6
  4. 23 ifxi=0thenux=1:gosub44
  5. 25 ifde=0andxi=9thende=1:goto100
  6. 26 print"[147]insert data disk. [return]":gosub99
  7. 30 geta$:ifa$<>""then30
  8. 35 geta$
  9. 40 ifa$="_"then44
  10. 42 ifa$<>chr$(13)andpeek(56320)<>111then35
  11. 43 goto100
  12. 44 poke53280,0:poke53281,0:ifde=0andxi=9thende=1:goto900
  13. 45 print"[147]insert 'dungeon' disk. [return]":gosub99
  14. 46 geta$
  15. 47 ifa$="_"thenprint"[147]":run
  16. 48 ifa$<>chr$(13)andpeek(56320)<>111then46
  17. 49 goto900
  18. 50 rem
  19. 55 forg=1toz:printa$(g);:nextg:e=1
  20. 57 print "";a$(e);"[146]"
  21. 60 a=peek(56320):ifa<>127thenforg=1to10:nextg:goto70
  22. 65 geta$:ifa$="" then 60
  23. 70 ifa=126ora$="[145]"thenk=-1:goto90
  24. 75 ifa=125ora$=""thenk=1:goto90
  25. 80 ifa=111ora$=chr$(13) then return
  26. 88 goto60
  27. 90 printa$(e);:e=e+k:ife=0thene=z
  28. 95 ife=z+1thene=1
  29. 98 goto57
  30. 99 print"press [_] to escape.":return
  31. 100 xi=peek(832)
  32. 102 a=0:print"[147]":open8,xi,8,"master disk,s,r":input#8,a:close8:ifa<>1then20
  33. 103 open8,xi,8,"treasure,s,r":input#8,tw,tm,tp,tt:close8:de=0
  34. 105 poke53280,12:poke53281,0:f$="                          "
  35. 110 print"[147][152]                                        ";
  36. 115 print"           print directories            ";
  37. 120 print"                                        ";:print"[146]"
  38. 130 print"[193][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][211]"
  39. 135 forg=1to9:print"[180][170]":nextg
  40. 140 print"[218][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][216]"
  41. 150 a$(1)="  characters   "
  42. 152 a$(2)="  monsters     "
  43. 154 a$(3)="  magic items  "
  44. 156 a$(4)="  weapons      "
  45. 158 a$(5)="  armor        "
  46. 160 a$(6)="  traps        "
  47. 162 a$(7)="  dungeons     "
  48. 168 a$(8)="  change disk  "
  49. 170 a$(9)="  finished     "
  50. 175 z=9:gosub50
  51. 180 ife=8thenrun100
  52. 183 ife=9then44
  53. 185 onegoto200,300,400,500,600,700,800
  54. 200 print"[147][print characters]"
  55. 220 open8,8,8,"@0:cha. data,s,r":input#8,x:ifx=0thenclose8:goto290
  56. 225 dimpl$(x),na$(x),sr$(x),in$(x),de$(x),lu$(x),hp$(x),hd$(x),ra$(x),le$(x)
  57. 230 dimac$(x),td$(x):forg=1tox
  58. 235 input#8,pl$(g),na$(g),sr$(g),in$(g),de$(g),lu$(g),hp$(g),hd$(g),ra$(g)
  59. 240 input#8,le$(g),ac$(g),td$(g),a,a$:nextg:close8
  60. 245 open4,4,0
  61. 247 a$="character        player           race      st in de lu hp lv died "
  62. 248 a$=a$+"points":print#4,a$
  63. 249 d$="----------------------------------------------------------------------"
  64. 250 d$=d$+"---":print#4,d$
  65. 255 forg=1tox
  66. 260 a$=na$(g)+left$(f$,17-len(na$(g)))+pl$(g)+left$(f$,17-len(pl$(g)))
  67. 265 b$=hd$(g)+left$(f$,3-len(hd$(g)))
  68. 267 c$=ra$(g)+left$(f$,10-len(ra$(g)))
  69. 268 e$=td$(g)+left$(f$,5-len(td$(g)))
  70. 270 print#4,a$;c$;sr$(g);in$(g);de$(g);lu$(g);hp$(g);b$;e$;le$(g)
  71. 275 nextg
  72. 280 print#4,d$:close4:run100
  73. 290 print"there are no charcters here!"
  74. 295 forg=1to2000:nextg:goto110
  75. 300 print"[147][print monsters]"
  76. 310 open8,xi,8,"monster,s,r":input#8,x:ifx=0then350
  77. 312 dimd$(x),b$(x):forg=1tox
  78. 315 input#8,d$(g),b$(g):nextg:close8
  79. 317 open4,4,0:print#4,"#   monster name       x.p"
  80. 318 print#4,"----------------------------"
  81. 320 forg=1tox:a$=str$(g):a$=right$(a$,len(a$)-1):a$=a$+left$(f$,4-len(a$))
  82. 330 a$=a$+d$(g)+left$(f$,19-len(d$(g)))
  83. 335 a$=a$+b$(g):print#4,a$:nextg
  84. 340 print#4,"----------------------------":close4:run100
  85. 350 close8:print"there is no data here!":forg=1to2000:nextg:goto110
  86. 400 print"[147][print magic items]":iftm=0then350
  87. 410 x=tm:dimna$(x),fc$(x):open3,xi,3,"magic":open15,xi,15:forg=1tox
  88. 420 print#15,"p"chr$(3)chr$(g)chr$(0)chr$(1):input#3,na$(g)
  89. 425 print#15,"p"chr$(3)chr$(g)chr$(0)chr$(19):input#3,fc$(g):nextg
  90. 430 close15:close3:open4,4,0
  91. 435 print#4,"#   name of item       spells"
  92. 440 print#4,"--------------------------------------------------------"
  93. 445 forg=1tox:a$=str$(g+199):a$=right$(a$,len(a$)-1)
  94. 450 a$=a$+" "+na$(g)+left$(f$,19-len(na$(g)))+fc$(g)
  95. 455 print#4,a$:nextg
  96. 460 print#4,"--------------------------------------------------------"
  97. 465 close4:run100
  98. 500 print"[147][print weapons]":iftw=0then350
  99. 510 open3,xi,3,"weapons":open15,xi,15:x=tw:dimwe$(x),re$(x)
  100. 515 forg=1tox:print#15,"p"chr$(3)chr$(g)chr$(0)chr$(1):input#3,we$(g)
  101. 520 print#15,"p"chr$(3)chr$(g)chr$(0)chr$(23):input#3,re$(g):nextg
  102. 525 close3:close15:open4,4,0
  103. 530 print#4,"#   weapon          damage rate"
  104. 535 print#4,"-------------------------------"
  105. 540 forg=1tox:b=1:c=1:d=1:y$=we$(g)
  106. 545 a$=mid$(y$,b,1):ifa$="[166]"thena$(c)=mid$(y$,d,b-d):c=c+1:d=b+1:ifc=3then555
  107. 550 b=b+1:goto545
  108. 555 a$=str$(g):a$=right$(a$,len(a$)-1):a$=a$+left$(f$,4-len(a$))
  109. 560 a$=a$+a$(1)+left$(f$,16-len(a$(1)))
  110. 565 a$=a$+"1-"+a$(2)+left$(f$,5-len(a$(2)))+re$(g)
  111. 570 print#4,a$:nextg
  112. 575 print#4,"-------------------------------":close4:run100
  113. 600 print"[147][print armor]":iftp=0then350
  114. 610 open3,xi,3,"armor":open15,xi,15:x=tp:dimwe$(x),re$(x)
  115. 615 forg=1tox:print#15,"p"chr$(3)chr$(g)chr$(0)chr$(1):input#3,we$(g)
  116. 620 print#15,"p"chr$(3)chr$(g)chr$(0)chr$(22):input#3,re$(g):nextg
  117. 625 close3:close15:open4,4,0
  118. 630 print#4,"#   item            rate type"
  119. 635 print#4,"-----------------------------"
  120. 640 forg=1tox:b=1:c=1:d=1:y$=we$(g)
  121. 645 a$=mid$(y$,b,1):ifa$="[166]"thena$(c)=mid$(y$,d,b-d):c=c+1:d=b+1
  122. 650 ifc=3then660
  123. 655 b=b+1:goto645
  124. 660 a$(3)=right$(we$(g),len(we$(g))-b):a$=str$(g+699):a$=right$(a$,len(a$)-1)
  125. 665 ifa$(3)="a"thenl$="arm":goto675
  126. 670 l$="shd"
  127. 675 a$=a$+" "+a$(1)+left$(f$,16-len(a$(1)))
  128. 680 a$=a$+re$(g)+left$(f$,5-len(re$(g)))+l$:print#4,a$:nextg
  129. 685 print#4,"-----------------------------"
  130. 690 close4:run100
  131. 700 print"[147][print traps]":iftt=0then350
  132. 720 x=tt:dimtr$(x):open3,xi,3,"traps":open15,xi,15:forg=1tox
  133. 730 print#15,"p"chr$(3)chr$(g)chr$(0)chr$(1):input#3,tr$(g):nextg:close3
  134. 735 close15:open4,4,0
  135. 737 print#4,"#   trap            effect"
  136. 738 print#4,"--------------------------":forg=1tox
  137. 740 b$=right$(tr$(g),2):ifval(b$)<>0then755
  138. 745 ifb$="bk"thenb$="block":goto760
  139. 750 b$="tele":goto760
  140. 755 b=val(b$):b$=str$(b):b$=right$(b$,len(b$)-1):b$="1-"+b$
  141. 760 c$=left$(tr$(g),len(tr$(g))-2):c$=c$+left$(f$,16-len(c$))
  142. 765 a$=str$(g):a$=right$(a$,len(a$)-1):a$=a$+left$(f$,4-len(a$))
  143. 770 a$=a$+c$+b$:print#4,a$:nextg
  144. 775 print#4,"--------------------------":close4:run100
  145. 800 print"[147][list dungeons]"
  146. 820 open8,xi,8,"list,s,r":input#8,x:ifx=0then870
  147. 825 dimdu$(x),cr$(x):forg=1tox:input#8,du$(g),cr$(g):nextg:close8
  148. 830 open4,4,0:print#4,"dungeons on this disk:"
  149. 835 print#4,"---------------------------------------":f$=".................."
  150. 840 forg=1tox:a$=du$(g)+left$(f$,19-len(du$(g)))+"by "+cr$(g)
  151. 845 print#4,a$:nextg
  152. 850 print#4,"---------------------------------------":close4:run100
  153. 870 print"there are no dungeons on this disk!":forg=1to2000:nextg:goto110
  154. 900 print"[147]":a1=0:open8,8,8,"master disk,s,r":input#8,a1:close8:ifa1<>7then44
  155. 905 ifux=1thenux=0:return
  156. 910 poke53280,0:poke53265,peek(53265)and239
  157. 915 clr:forg=631to634:pokeg,13:nextg:poke198,4
  158. 920 print"[147]load";chr$(34);"me";chr$(34);",8":print"run":end
  159.