home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Disc 53
/
Commodore_Disc_53_19xx_-_de.d64
/
edit
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
9KB
|
271 lines
10 dim kt$(9):dim be$(350) :na$="keines":nb$="keines":mp=0
50 poke54272+24,15:poke54272+5,25:poke54272+6,15
55 poke54272,0:poke54273,15
90 poke53280,0:poke53281,0:poke788,52 :goto100
95 rem --- ton ---
96 poke54276,33:forx=0to600:next :poke54276,0 :return
97 rem ---------
99 rem --- menue ---
100 print"[147]-------------super--quiz---------------- e d";
101 print" i t o r":print" [176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"
102 print" [221][157][221][157][171][157][221][157][221][157][221][157][221][157][221][157][221][157][221][157][221][157][171][157][221][157][221][157][173]";
103 print"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]"
104 print" [221][157][221][157][179][157][221][157][221][157][221][157][221][157][221][157][221][157][221][157][221][157][179]";
105 print"[157][221][157][221]"
106 print" [192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"
107 print" [192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"
109 ifna$="_"thenna$=nb$
110 print"[154] file : ":print""na$"[154]"
115 me$(0)=" neu eingeben "
120 me$(1)=" ergaenzen "
125 me$(2)=" ansehen "
130 me$(3)=" korrigieren "
140 me$(4)=" loeschen "
142 me$(5)=" sortieren "
143 me$(6)=" laden "
144 me$(7)=" abspeichern "
145 me$(8)=" spiel starten "
146 me$(9)="programm beenden"
147 forx=0to9:printme$(x):next
148 print""me$(mp)"[146]"
149 poke198,0
150 geta$:ifa$=""then150
152 ifasc(a$)=13then220
155 ifa$=""ora$="+"ora$="[136]"ora$="[135]"thenprintme$(mp):mp=mp+1
157 ifa$="[145]"ora$=""ora$="-"ora$="[133]"ora$="[134]"thenprintme$(mp):mp=mp-1
170 ifmp<0thenmp=9
180 ifmp>9thenmp=0
190 print""me$(mp)"[146]"
200 goto150
220 onmp+1goto500,1000,1500,2500,2000,6000,7000,8000,4900,400
400 end
500 rem --- neu eingeben ---
502 x$=""
505 print"[147]-------neuen begriffsatz eingeben-------"
510 print"name fuer den neuen begriffsatz:"
520 poke198,0:input" _[157][157][157]";x$
525 ifx$="_"then100
526 ifx$=""then505
528 iflen(x$)<12then550
530 print"[150]zu lang ! (max 11 zeichen)[154]" :gosub95:poke198,0:wait198,1
540 goto505
550 na$=x$:nb$=x$
560 forka=0to9
562 print"kategorie "ka":";
564 input"";ka$:print"[154]";
565 ifka$=""thenka$="nicht belegt " :print"[145]"ka$"[154]"
570 iflen(ka$)>16thenprint"[150]! zu lang! (max.16 zeichen)[154]":gosub95:ka$="":goto562
572 iflen(ka$)=16then580
575 forz=1to16-len(ka$):ka$=ka$+" ":next
580 kt$(ka)=ka$:ka$="":nextka
590 ab=0
595 rem ---------
600 be$=""
605 ifab<350then610
607 print"[150]keine weiteren eingaben moeglich ![154]":gosub95
608 poke198,0:wait198,1:goto100
610 print"begriff"ab+1":"
620 poke198,0:input" _[157][157][157]";be$ :print"[154]";
625 ifbe$="_"then 100
626 ifbe$=""thenprint"[145][145][145]":goto610
627 gosub8500:iffe=1then610
630 print"kategorie(0-9) ? ";
640 print" "ar"[157]/"kt$(ar)"[157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";:gosub5000:print
670 ab=ab+1:be$(ab)=be$+str$(ar)
680 goto600
810 goto100
1000 rem --- ergaenzen ---
1002 ifna$="keines"then150
1005 print"[147]---------begriffsatz ergaenzen----------"
1110 goto600
1500 rem --- ansehen ---
1505 ifna$="keines"then150
1510 print"[147]----------begriffsatz ansehen-----------"
1555 print"[150]<ret>[154] unterbricht,[150]<_>[154] beendet auflistung"
1557 printtab(16)"[150]<space>[154]": poke198,0:wait198,1:poke198,0
1565 for ka=0to9:print"kategorie"ka":";:print""kt$(ka)"[154]":next
1569 ifab=0then1620
1570 forz=1toab
1575 printz":"
1590 print""be$(z)"[150][157][157]()[154]"
1595 ifpeek(198)<>0thenpoke198,0:wait198,1:getx$:ifx$="_"then 100
1597 poke198,0
1600 nextz
1620 poke198,0:wait198,1:goto100
2000 rem --- loeschen ---
2010 print"[147][150]----------begriffsatz loeschen----------"
2020 poke53281,2:poke53280,2
2030 print"filename :";
2040 poke198,0:input" _[157][157][157]";z$
2050 ifz$="_"then90
2060 ifz$=""then2010
2070 open2,8,2,"satz "+z$:input#2,z :close2
2080 gosub10100:print"[150]";:ifx>0then 2010
2082 ifz<30thenprint"sind sie sicher ??(j/n)":goto2087
2084 print"sie wollen "z"begriffe einfach so"
2086 print"loeschen ??(j/n)"
2087 getx$:ifx$=""then2087
2088 ifx$="j"then2090
2089 goto90
2090 open1,8,15,"s:satz "+z$:close1
2100 gosub10100:goto90
2500 rem --- korrigieren ---
2501 ifna$="keines"then150
2505 nr=1:poke650,128
2510 print"[147]--------------korrigieren---------------"
2520 print" f1[146] +10 k/ategorien"
2530 print" f3[146] +1 l/oeschen"
2540 print" f5[146] -1 a/endern"
2550 print" f7[146] -10 m/enue"
2590 ifab=0then2650
2600 print" 1:[146]"
2601 print""be$(1)"[150][157][157]()[154]"
2650 poke198,0
2670 geta$:ifa$=""then2670
2675 ifab=0then2726
2680 ifa$="[133]"then nr=nr+10
2690 ifa$="[134]"then nr=nr+1
2700 ifa$="[135]"then nr=nr-1
2710 ifa$="[136]"then nr=nr-10
2713 if nr>ab then nr=1
2716 if nr<1 then nr=ab
2720 ifa$="l"then2960
2725 ifa$="a"then2800
2726 ifa$="m"thenpoke650,0:goto90
2729 ifa$="k"then3000
2750 ifab=0then2670
2752 print""nr"[157]:[146] "
2755 print" [145]";
2760 print""be$(nr)"[150][157][157]()[154]";
2780 goto2670
2800 rem --- aendern ---
2802 print" "
2804 print" "left$(be$(nr),len(be$(nr))-2)" "
2810 poke198,0:be$="":input"";be$
2830 ifbe$=""then2810
2840 gosub8500:iffe=1then2810
2900 ar=val(right$(be$(nr),1)) :print"[154]kategorie(0-9) :";
2910 printar"[157]/";kt$(ar)"[157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
2920 gosub5000
2930 be$(nr)=be$+str$(ar)
2940 print:print"[145][145] ";
2945 print" "
2950 goto2750
2960 rem --- loeschen ---
2962 ifnr<abthen2970
2965 ab=ab-1:nr=nr-1
2966 ifab>0then2750
2967 print" ":print" "
2968 goto2750
2970 forx=nrtoab-1:be$(x)=be$(x+1):next
2980 ab=ab-1
2985 poke198,0:goto2750
3000 rem --- kategorien ---
3005 nr=0
3010 print"b/egriffe "
3020 print"kat."nr": "kt$(nr)"[154]"
3030 print" "
3050 geta$:ifa$=""then3050
3060 ifa$="[134]"ora$="[133]"then nr=nr+1
3070 ifa$="[135]"ora$="[136]"then nr=nr-1
3080 if nr>9 then nr=0
3090 if nr<0 then nr=9
3100 ifa$="l"thenkt$(nr)="nicht belegt "
3110 ifa$="b"then2505
3120 ifa$="m"thenpoke650,0:goto90
3130 ifa$="a"then3200
3150 print"kat."nr": "kt$(nr)"[154]"
3160 goto3050
3200 rem --- kat aendern ---
3210 input"[145] ";x$:print"[154]";
3220 iflen(x$)>16thengosub95:goto3210
3230 iflen(x$)=16then3250
3240 forz=1to16-len(x$):x$=x$+" ":next
3250 kt$(nr)=x$
3290 goto3150
4900 rem --- spiel laden ---
4910 print"[152][147] einen moment..."
4920 print"[144]load"chr$(34)"super quiz"chr$(34)",8"
4930 print"run50"
4940 poke631,13:poke632,13:poke198,2:new
5000 rem --- kat.input ---
5010 poke198,0:print"";
5020 geta$:ifa$=""then5020
5025 ifasc(a$)=13 then print"[154]";:return
5030 ifasc(a$)<48 orasc(a$)>57then5020
5050 ar=val(a$):printar"[157]/";kt$(ar)"[157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";:goto5020
6000 rem --- sortieren ---
6005 ifna$="keines"then150
6010 print"[147]----------begriffsatz sortieren---------"
6015 poke198,0:print"bubble,bubble";
6020 y=0:forx=2toab:
6030 ifright$(be$(x-1),1)<=right$(be$(x),1)then6050
6040 be$=be$(x-1):be$(x-1)=be$(x):be$(x)=be$:y=1
6050 ifpeek(198)>0then6100
6055 nextx:print".";
6060 ify=1then6020
6070 print"ok.":forx=1to500:next
6080 goto100
6100 print:print"[150]! sortieren abgebrochen !":gosub95
6110 poke198,0:wait198,1:goto100
7000 rem --- laden ---
7010 print"[147]------------begriffsatz laden-----------"
7030 print"filename :";
7040 poke198,0:input" _[157][157][157]";na$
7050 ifna$="_"then100
7060 ifna$=""then7010
7070 open2,8,2,"satz "+na$:input#2,ab: close2
7080 gosub10100:ifx>0then7010
7100 open2,8,2,"satz "+na$
7110 print"loading...":input#2,ab
7120 forka=0to9:input#2,kt$(ka):next
7150 forz=1toab:input#2,be$(z):next
7160 close2:nb$=na$:gosub10100:goto100
8000 rem --- speichern ---
8005 ifna$="keines"then 150
8010 print"[147]----------begriffsatz abspeichern-------"
8030 open2,8,2,"satz "+na$+",s,w":print#2,ab:close2
8040 gosub10100:ifx=0then8100
8045 ifx<>63then8010
8050 print"altes file ueberschreiben (j/n) ?"
8055 poke198,0
8060 geta$:ifa$=""then8060
8065 ifa$<>"j"then8200
8070 open2,8,2,"@:satz "+na$+",s,w":print#2,ab:goto8120
8100 open2,8,2,"satz "+na$+",s,a"
8120 print"saving..." :forka=0to9:print#2,kt$(ka):next
8130 forz=1toab:print#2,be$(z):next
8170 close2:gosub10100:goto100
8200 rem ----------
8210 print"namen aendern (j/n) ?"
8220 poke198,0
8230 geta$:ifa$=""then8230
8240 ifa$<>"j"then100
8250 input"neuer name ";na$
8270 open2,8,2,"satz "+na$+",s,w":print#2,ab:close2
8280 gosub10100:ifx=0then8100
8290 ifx=63thengosub95:print"[150]filename existiert bereits![154]":goto8250
8300 goto100
8500 rem --- eingabe pruefen ---
8505 fe=0
8510 iflen(be$)<=37 then 8550
8530 print"[150]! zu lang ![154]":gosub95 :poke198,0:wait198,1
8540 print"[145] " :print" ":goto8620
8550 z=0
8560 forx=1tolen(be$)
8570 x$=mid$(be$,x,1):y=asc(x$) :ify<>32thenify<65ory>90thenz=1
8580 nextx
8590 if z=0thenreturn
8600 print"[150]! bitte nur buchstaben ![154]" :gosub95
8610 poke198,0:wait198,1:print"[145] "
8615 print" "
8620 fe=1:return
10000 :
10100 rem --- fehlerkanal abfragen ---
10110 open3,8,15
10120 input#3,x,x$:ifx=63then10140
10130 ifx>0thenprint"[150]error"x": "x$"[154]" :gosub95:poke198,0:wait198,1
10140 close3
10150 return
11000 rem --- edit / ende ---