home *** CD-ROM | disk | FTP | other *** search
/ Go64! / Go64_1999-09_1999_CSW_Side_A.d64 / menusystem (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  3KB  |  105 lines

  1. 5 ifi9=0theni9=1:ifpeek(648)<>204thenload"zeichensatz",8,1
  2. 10 gosub59000
  3. 20 br=mb:i7=1:i8=1
  4. 30 st$="[205]ove [194]ar with [195]ursor keys,              [211]elect with <[210]eturn>":gosub1700
  5. 40 gosub1600
  6. 50 i4=1:gosub1500:ifri=0then50
  7. 60 ifri=1thengosub1300:i7=i7+1:i8=1:i4=2:ifi7>mntheni7=1
  8. 70 ifri=2thengosub1300:i7=i7-1:i8=1:i4=2:ifi7=0theni7=mn
  9. 80 ifri=3theni8=i8+1:ifi8>hotheni8=1
  10. 90 ifri=4theni8=i8-1:ifi8=0theni8=ho
  11. 100 ifri=5theni6=br:gosub1300:gosub1700:gosub2000:zl=1:br=i6:goto30
  12. 110 oni4gosub1610,1600:goto50
  13. 999 end
  14. 1100 gosub1200:printk$(i5,0);:fori9=1tobr:printk$(i5,1);:next:printk$(i5,2)
  15. 1110 fori9=1toho:printtab(sp)k$(i5,3)left$(l$(0),br)k$(i5,5):next
  16. 1120 printtab(sp)k$(i5,6);:fori9=1tobr:printk$(i5,7);:next:printk$(i5,8);:return
  17. 1200 poke214,zl:poke211,sp:sys58640:return
  18. 1300 gosub1200:fori9=1toho+2:printtab(sp)left$(l$(1),br+2);:ifi9<ho+2thenprint
  19. 1310 next:return
  20. 1400 en$="":i9=0
  21. 1405 print"[164][157]";
  22. 1410 getx9$:ifx9$=""then1410
  23. 1420 ifx9$=chr$(13)then1480
  24. 1430 ifx9$=chr$(20)andi9>0thenprint" [157][157][164][157]";:i9=i9-1:en$=left$(en$,i9)
  25. 1440 ifx9$<" "orx9$>"[218]"then1410
  26. 1450 ifx9$>"_"andx9$<"[193]"then1410
  27. 1460 ifx9$=chr$(34)thenprintchr$(148)x9$chr$(20);
  28. 1470 en$=en$+x9$:printx9$;:i9=i9+1:iflg>i9then1405
  29. 1480 print" ";:return
  30. 1500 ri=0
  31. 1510 getx9$:ifx9$=""then1510
  32. 1520 ifx9$=""thenri=1
  33. 1530 ifx9$="[157]"thenri=2
  34. 1540 ifx9$=""thenri=3
  35. 1550 ifx9$="[145]"thenri=4
  36. 1560 ifx9$=chr$(13)thenri=5
  37. 1570 return
  38. 1600 zl=1:ho=mn%(i7):sp=mb*(i7-1):ifsp+mb>38thensp=37-mb
  39. 1605 i5=0:gosub1100
  40. 1610 sp=sp+1:fori6=1toho:zl=zl+1:gosub1200:ifi6=i8thenprint"";
  41. 1620 printmn$(i7,i6)"[146]";:next:zl=1:sp=sp-1
  42. 1630 return
  43. 1700 zl=23:sp=0:gosub1200:printl$(0):printl$(0);:zl=zl-1:gosub1200:en$="[168]":lg=40:gosub1800
  44. 1710 zl=zl+1:gosub1200:printst$;:st$="":en$="":return
  45. 1800 fori9=1tolg:printen$;:next:return
  46. 2000 ifi7<>1then2050
  47. 2010 ifi8=1thengosub5000
  48. 2020 ifi8=2thengosub5000
  49. 2030 ifi8=3thengosub5000
  50. 2040 ifi8=4thengosub5000
  51. 2045 ifi8=5thengosub4900
  52. 2050 ifi7<>2then2100
  53. 2060 ifi8=1thengosub5000
  54. 2070 ifi8=2thengosub5000
  55. 2080 ifi8=3thengosub5000
  56. 2090 ifi8=4thengosub5000
  57. 2100 ifi7<>3then2150
  58. 2110 ifi8=1thengosub5000
  59. 2120 ifi8=2thengosub5000
  60. 2150 ifi7<>4then2200
  61. 2160 oni8gosub6000,5000,5000
  62. 2200 return
  63. 4900 zl=8:sp=8:br=22:ho=5:i5=3:gosub1100:zl=zl+3:sp=sp+1:gosub1200
  64. 4920 print"[199]ood [194]ye!";
  65. 4930 st$="[212]hank you for [202]oining in! [195][213] [204]ater! $[193][196]":gosub1700
  66. 4940 zl=1:sp=0:gosub1200
  67. 4950 end
  68. 5000 zl=8:sp=9:br=20:ho=5:i5=3:gosub1100:zl=zl+2:sp=sp+1:gosub1200
  69. 5010 print"("mn$(i7,i8)")";
  70. 5020 zl=zl+2:gosub1200:print"[200]it any key.";
  71. 5030 st$="[212]his is the [211]tatus [204]ine. ":gosub1700:lg=1:gosub1400
  72. 5040 zl=8:sp=9:br=20:ho=5:gosub1300
  73. 5050 return
  74. 6000 zl=8:sp=9:br=20:ho=5:i5=1:gosub1100:zl=zl+1:sp=sp+1:gosub1200
  75. 6010 print"[205]enues in [194][193][211][201][195]";
  76. 6020 zl=zl+2:gosub1200:print"for [199][207]64!"
  77. 6030 zl=zl+1:gosub1200:print"by";
  78. 6040 zl=zl+1:gosub1200:print"        [193]rndt [196]ettke[144]";
  79. 6050 st$="[200]ave [198]un with this [208]rogram! ":gosub1700:lg=1:gosub1400
  80. 6060 zl=8:sp=9:br=20:ho=5:gosub1300
  81. 6070 return
  82. 59000 i9=0:i8=0:i7=0:i6=0:i5=0:i4=0:zl=0:sp=0:br=0:ho=0:x9$="":en$="":st$=""
  83. 59010 read mn,sm,mb:dim mn$(mn,sm),mn%(mn),l$(1),k$(3,8)
  84. 59020 fori9=1tomn:readmn$(i9,0):next
  85. 59025 fori8=1tomn:readmn%(i8):sm=mn%(i8):fori9=1tosm:readmn$(i8,i9):next:next
  86. 59030 fori9=0to3:fori8=0to8:readk$(i9,i8):next:next
  87. 59070 poke56576,148:poke53272,59:poke648,204
  88. 59080 l$(0)="                                       ":lg=1
  89. 59085 l$(1)="[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]"
  90. 59090 fc=0 :fb=1 :fr=12:poke53281,fb:poke53280,fr:poke646,fc:i8=52263
  91. 59091 print"[147]";:sp=0:en$="[160]":lg=39:forzl=0to21:gosub1200:gosub1800
  92. 59092 pokei8+40*zl,96:next:zl=0
  93. 59095 gosub1200:print""l$(0)" [146]";:fori9=1tomn:sp=(i9-1)*mb:gosub1200:printmn$(i9,0);:next
  94. 59099 return
  95. 60000 data 4,6,10:rem anzahl menues,max. anzahl submenues, menuebreite
  96. 60010 data "[198][201][204][197]","[197][196][201][212]","[197][216][212][210][193][211]","[200][197][204][208]"
  97. 60020 data 5,"[206]ew","[207]pen","[195]lose","[211]ave","[209]uit"
  98. 60030 data 4,"[213]ndo","[195]ut","[195]opy","[201]nsert"
  99. 60040 data 2,"[201]mport","[197]xport"
  100. 60050 data 3,"[193]bout...","[201]ndex","[199]eneral"
  101. 60060 data"[167]","[168]","[169]","[165]"," ","[170]","[173]","[164]","[174]"
  102. 60070 data"[188]","[177]","[189]","[187]"," ","[184]","[190]","[178]","[191]"
  103. 60080 data"[182]","[183]","[180]","[182]"," ","[180]","[182]","[175]","[180]"
  104. 60090 data"[166]","[163]","[162]","[165]"," ","[182]","[220]","[161]","[221]"
  105.