home *** CD-ROM | disk | FTP | other *** search
/ 64'er Special 46 / 64er_Magazin_Sonderheft_46_19xx_Markt__Technik_de_Side_A.d64 / kochrezepte (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  10KB  |  360 lines

  1. 5 gosub 5000
  2. 10 m$="[203]och-[210]ezeptverwaltung":gosub 6000
  3. 20 z=4:s=4:gosub 2000:print "[196]aten"
  4. 30 s=14:gosub2000:print"[196][201][211][203]"
  5. 35 s=24:gosub 2000:print"[196]rucker"
  6. 40 gosub 20000:gosub 25000
  7. 50 if menue(1,1)=ok then menue(1,1)=off:gosub 110
  8. 55 if menue(1,2)=ok then menue(1,2)=off:gosub26200:ktr=1:gosub 26000:ktr=0
  9. 60 if menue(1,3)=ok then menue(1,3)=off:goto 410
  10. 65 if menue(1,4)=ok then menue(1,4)=off:goto 500
  11. 70 if menue(1,5)=ok then menue(1,5)=off
  12. 75 if menue(1,6)=ok then menue(1,6)=off:goto 920
  13. 80 if menue(2,1)=ok then menue(2,1)=off:goto180
  14. 85 if menue(2,2)=ok then menue(2,2)=off:goto 250
  15. 90 if menue(2,3)=ok then menue(2,3)=off:goto 350
  16. 91 if menue(2,4)=ok then menue(2,4)=off
  17. 92 if menue(3,1)=ok then menue(3,1)=off:goto 600
  18. 93 if menue(3,2)=ok then menue(3,2)=off:goto 700
  19. 100 goto 10
  20. 110 print"[147]";:m$="[210]ezepteingabe":gosub6000
  21. 115 z=4:s=0:gosub2000:z=5:s=0
  22. 120 ifrn$<>""thenprint"[193]lter [210]ezeptname :"rn$:gosub2000:print"[206]euer [210]ezeptname :";
  23. 130 ifrn$=""thengosub2000:print"[210]ezeptname :";
  24. 140 la=13:gosub 3000:if en$="" or en$=" " then 10
  25. 150 rn$=en$
  26. 160 gosub 11000:goto 10
  27. 180 if vs=0 thenf$="[203]eine [196]aten im [211]peicher !":gosub9500:goto 10
  28. 185 print"[147]";:m$="[196]aten speichern":gosub 6000
  29. 190 print:print"[196]ateiname : "rn$
  30. 195 print:print"[211]icher (j/n) ?";:la=1:gosub 3000
  31. 200 if en$="j"thengosub30000
  32. 210 goto 10
  33. 250 print"[147]";:gosub 6000:print:print
  34. 260 if vs>0 then print"[197]s ist noch ein [210]ezept im [212]extspeicher"
  35. 270 ifvs>0thenprint"vorhanden ! [196]ieses muss erst aus dem"
  36. 275 ifvs>0thenprint"[212]extspeicher geloescht werden !"
  37. 280 if vs>0thenz=19:gosub 9000:goto10
  38. 290 print"[196]ateiname : ";:la=13:gosub3000
  39. 295 rn$=en$:print:print"[215]irklich laden(j/n) ?";:la=1:gosub3000
  40. 300 if en$="j" then gosub30500
  41. 310 goto 10
  42. 350 dv=8:gosub7000:ifwahr=0thengosub9500:goto 10
  43. 360 print"[147][196][201][211][203]-[196]irectory :":print
  44. 370 sys 828
  45. 380 print:print"[198]ehlerkanal : ";:sys 933
  46. 390 print:print:z=23:gosub9000
  47. 400 goto 10
  48. 410 if vs=<0thenf$="[203]ein [210]ezept im [211]peicher !":gosub9500:goto 10
  49. 420 m$=rn$:se=1
  50. 430 print"[147]";:gosub 6000:print:print
  51. 440 for i= 1 to 14:printte$(se,i):next
  52. 450 gett$:ift$=""then450
  53. 460 if t$=""thenifse<vsthense=se+1:goto 430
  54. 470 if t$="[145]"thenifse>1thense=se-1:goto430
  55. 480 if t$=chr$(13)then10
  56. 490 goto 450
  57. 500 print"[147]";:m$="[212]extspeicher loeschen":gosub 6000
  58. 510 z=4:s=0:gosub 2000
  59. 520 print"[215]irklich ganzen [212]extspeicher"
  60. 530 print"loeschen(j/n) ?";:la=1:gosub3000
  61. 540 if en$<>"j" then 10
  62. 550 for t = 1 to vs:fori = 1 to 14
  63. 560 te$(t,i)="":next:next
  64. 570 vs=0:rn$=""
  65. 580 print:print"[212]extspeicher wurde geloescht !":z=19:gosub 9000:goto 10
  66. 600 print"[147]";:m$="[210]ezept-[196]irectory drucken":gosub 6000
  67. 610 s=0:z=3:h=1:b=36:gosub 2000:gosub 1000
  68. 620 z=5:s=1:print"[215]irklich drucken (j/n) ?";:la=1:gosub 3000
  69. 630 if en$<>"j"then10
  70. 635 dv=4:gosub7000:if wahr=0thengosub9500:goto 10
  71. 640 ktr=2:open3,4,7:gosub 26000:print#3:close 3
  72. 650 goto 10
  73. 700 ifvs=<0thenf$="[203]ein [210]ezept im [211]peicher !":gosub 9500:goto 10
  74. 710 print"[147]";:m$="[193]ktuelles [210]ezept drucken":gosub 6000:print:print
  75. 720 z=5:s=0:gosub 2000:print "[218]eichen     :40"
  76. 730 z=6:s=0:gosub 2000:print "[204]inker [210]and :";:la=2:gosub3000:lr=val(en$)
  77. 740 if lr=<0 or lr>40 then print"[198]ehlereingabe !!":goto 730
  78. 750 z=8:s=0:gosub2000:print"[215]irklich drucken (j/n)?";:la=1:gosub 3000
  79. 760 if en$<>"j"then 10
  80. 770 dv=4:gosub7000:ifwahr=0thengosub9500:goto 10
  81. 780 open 1,4,7:gosub900
  82. 785 for i = 1 to vs:for t = 1 to 14
  83. 790 print#1,spc(lr)te$(i,t):next
  84. 800 ifi=4thenifi<vsthenforb=1to9:print#1:next:gosub900
  85. 810 next
  86. 820 print#1:close 1:print
  87. 830 print"[196]aten wurden gedruckt !"
  88. 840 z=19:gosub 9000
  89. 850 goto 10
  90. 900 sp=(40-len(rn$))/2:print#1,spc(lr+sp)rn$:print#1,spc(lr);:forx=1to40
  91. 910 print#1,"-";:next:print#1:return
  92. 920 m$="[208]rogrammende":gosub6000
  93. 930 print:print"[215]irklich beenden (j/n) ?";:la=1:gosub3000
  94. 940 if en$<>"j"then10
  95. 950 remsys64738
  96. 999 end
  97. 1000 printtab(s)"[176]";
  98. 1005 fori=1tob
  99. 1010 print"[192]";
  100. 1015 next
  101. 1020 print"[174]"
  102. 1025 fori=1toh:printtab(s)"[221]"spc(b)"[221]"
  103. 1030 next
  104. 1035 printtab(s)"[173]";
  105. 1040 fori=1tob:print"[192]";:next:print"[189]"
  106. 1045 return
  107. 2000 print"";
  108. 2005 ifz=0 then2025  
  109. 2010 fori=1toz
  110. 2015 print
  111. 2020 next
  112. 2025 printtab(s);
  113. 2030 return
  114. 2035 end
  115. 3000 en$=""
  116. 3005 i9=0
  117. 3010 print "[164][157]";
  118. 3015 getx9$:if x9$="" then goto3015
  119. 3020 if x9$=chr$(13) then3055  
  120. 3025 if x9$=chr$(20)thenifi9>0thenen$=left$(en$,len(en$)-1):print" [157][157] [157]";:i9=i9-1
  121. 3026 if i9=>la then 3015
  122. 3030 if x9$ < " " or x9$ > "[218]" then 3010
  123. 3035 if x9$ < "[193]" and x9$ > "_"then 3015
  124. 3040 if x9$=chr$(34) then print chr$(148);:print x9$;:print chr$(20);
  125. 3045 en$=en$+x9$:print x9$;:i9=i9+1
  126. 3050 goto3010
  127. 3055 print" "
  128. 3060 return
  129. 5000 for i=0to 29
  130. 5005 reada:poke11*64+i,a
  131. 5010 next
  132. 5015 fori=30 to 63:poke11*64+i,0
  133. 5020 next
  134. 5025 data 0,0,0
  135. 5030 data 0,0,0
  136. 5035 data 0,0,0
  137. 5040 data 0,0,0
  138. 5045 data 0,0,0
  139. 5050 data 0,0,0
  140. 5055 data 255,0,0
  141. 5060 data 255,0,0
  142. 5065 data 0,0,0
  143. 5070 data 0,0,0
  144. 5075 poke2040,11
  145. 5080 rempoke53248,sx*8+24
  146. 5085 rempoke53249,sy*8+50
  147. 5090 rempoke53248+39,farbe
  148. 5095 rempoke53248+21,ein-aus
  149. 5100 rem init
  150. 5105 poke 53280,0:poke 53281,0:print"[153][147]"chr$(14)
  151. 5110 s=.:fori=828to960:readq:pokei,q:s=s+q:next
  152. 5120 data169,36,133,251,169,251,133,187,169,0,133,188,169,1,133,183
  153. 5130 data169,8,133,186,169,96,133,185,32,213,243,165,186,32,180,255
  154. 5140 data165,185,32,150,255,169,0,133,144,160,3,132,251,32,165,255
  155. 5150 data133,252,164,144,208,47,32,165,255,164,144,208,40,164,251,136
  156. 5160 data208,233,166,252,32,205,189,169,32,32,210,255,32,165,255,166
  157. 5170 data144,208,18,170,240,6,32,210,255,76,136,3,169,13,32,210
  158. 5180 data255,160,2,208,198,32,66,246,96,169,8,133,186,32,180,255
  159. 5190 data169,111,133,185,32,150,255,32,165,255,32,210,255,201,13,208
  160. 5200 data246,32,171,255,96
  161. 5205 sh=25:dim te$(sh,16),me$(3,6),ho(3),me(3,6):ok=1:off=not ok
  162. 5210 data "[196]aten","[210]ezept-[212]exteditor","[210]ezept-[196]irectory"
  163. 5220 data "[193]ktuelles [210]ezept zeigen"
  164. 5230 data "[212]extspeicher loeschen","[200]auptmenue","[208]rogrammende"
  165. 5235 for i = 0 to 6:read me$(1,i):next:ho(1)=6
  166. 5240 data "[196][201][211][203]","[210]ezept speichern","[210]ezept laden","[196][201][211][203]-[196]irectory"
  167. 5242 data "[200]auptmenue"
  168. 5245 fori=0to4:read me$(2,i):next:ho(2)=4
  169. 5250 data "[196]rucker","[210]ezept-[196]irectory drucken","[193]ktuelles [210]ezept drucken"
  170. 5252 data "[200]auptmenue"
  171. 5255 fori=0to3:read me$(3,i):next:ho(3)=3
  172. 5260 return
  173. 6000 print"[147]";
  174. 6005 for t=1to2
  175. 6010 fori=1to39:print"[162]";:next:print
  176. 6020 fori=1to39:print"[153] [146]";:next:print
  177. 6030 fori=1to39:print"[184]";:next:print
  178. 6035 z=21:s=0:gosub 2000:next:print"[153]"
  179. 6040 s=8:z=22:gosub2000:print"[215]ritten by [200][197][201][203][207][160][200][197][206][203][197][160]!"
  180. 6050 z=1:s=(40-len(m$))/2:gosub2000:print""m$
  181. 6060 return
  182. 7000 rem geraet bereit ???
  183. 7010 wahr=0:true=-1:false=0
  184. 7020 wahr=trve
  185. 7030 poke 768,185
  186. 7040 open 9,dv,15
  187. 7050 print#9,"";
  188. 7060 close9
  189. 7070 poke 768,139
  190. 7080 if (st and 128) then wahr=false
  191. 7090 if wahr=false then f$="[199]eraet nicht bereit !!":return
  192. 7095 wahr=trve:return
  193. 8000 input#2,f,f$,x,y
  194. 8005 if rn$="$" thenf$="[213]ngueltiger [196]ateiname !":f=1
  195. 8010 if f=0 then wahr=-1:return
  196. 8030 wahr=0:return
  197. 9000 s=12:gosub2000
  198. 9005 print" [212]aste <[211][208][193][195][197]> [146]"
  199. 9010 gosub2000
  200. 9015 fori=1to100:get a$:if a$<>"" thenreturn
  201. 9020 next
  202. 9025 print"               [146]"
  203. 9030 fori=1to100:get a$:if a$<>"" then9045
  204. 9035 next
  205. 9040 goto9000
  206. 9045 gosub 2000:print"               ":return
  207. 9500 print"[147]";:fori=1to39:print" [146]";:next:print"";tab(13)"[198]ehlermeldung :[146]"
  208. 9510 z=5:s=1:b=35:h=5:gosub 2000:gosub1000
  209. 9520 z=7:s=3:b=31:h=1:gosub 2000:gosub1000
  210. 9525 z=6:s=16:gosub2000:print"[197][210][210][207][210] :"
  211. 9530 z=8:s=4:gosub2000:printf$
  212. 9535 z=19:gosub 9000
  213. 9540 return
  214. 10000 ss=24+sx*8
  215. 10001 if ss<=255thenpoke53248+16,0
  216. 10002 if ss>255thenpoke53248+16,1:ss=ss-255
  217. 10005 poke53248,ss
  218. 10010 poke53249,sy*8+50
  219. 10020 poke53248+39,4
  220. 10030 return
  221. 10100 z=7:s=0:gosub 2000:for i = 1 to 14:printtab(1)te$(se,i):next:return
  222. 11000 se=1:rem "
  223. 11005 [153]"printload";
  224. 11007 m$[178]rn$:[141] 6000
  225. 11008 [129]z[178]0[164]2:s[178]0:[141]2000:[153]" ";:[130]:[129]z[178]21[164]23:s[178]0:[141]2000:[153]" "
  226. 11009 [130]
  227. 11010 z[178]6:s[178]0:[141]2000:[153]" ";:[129]i[178]1[164]38:[153]"tan";:[130]
  228. 11020 z[178]4:s[178]0:[141] 2000
  229. 11050 [153]"asc1=(NULL)eite vor     asc2=(NULL)eite zurueck"
  230. 11060 [153]"asc3=(NULL)eue (NULL)eite    asc4=(NULL)enue"
  231. 11070 sx[178]1:sy[178]1[170]6:[151]53248[170]21,1:[139] vs[178]0 [167] vs[178]1
  232. 11071 m$[178]"(NULL)eite:"[170][196](se)[170]" von "[170][196](vs)[170]"close(NULL)eiten"
  233. 11074 s[178](40[171][195](m$))[173]2:z[178]3:[141]2000:[153]m$
  234. 11080 [141] 10100
  235. 11090 [143] "close
  236. 11100 gosub 10000
  237. 11105 s=sx:z=sy:gosub 2000
  238. 11110 get t$:if t$="" then 11110
  239. 11115 gosub 11400:ifktr=1thenktr=0:goto11100
  240. 11117 gosub 11500:ifktr=1thenktr=0:goto11005
  241. 11118 if ktr=2 then ktr=0:poke 53248+21,0:return
  242. 11120 ift$=chr$(13)thenifsy<20thensy=sy+1:sx=1:goto 11100
  243. 11125 ift$=chr$(148)thengosub11600:goto 11100
  244. 11130 ift$=chr$(20) then gosub 11300:goto 11100
  245. 11140 if sx>37 then 11110
  246. 11150 if t$ < " " or t$ > "[218]" then11100
  247. 11160 if t$ < "[193]" and t$ > "_"then11100
  248. 11170 ift$=chr$(34)thenprintchr$(148);:printt$;:printchr$(20);
  249. 11200 print t$;:sx=sx+1
  250. 11205 ifsx-1>len(te$(se,sy-6))thente$(se,sy-6)=te$(se,sy-6)+t$:goto11100
  251. 11210 h1$=left$(te$(se,sy-6),sx-2)
  252. 11220 h2$=right$(te$(se,sy-6),len(te$(se,sy-6))-(sx-1))
  253. 11225 te$(se,sy-6)=h1$+t$+h2$
  254. 11230 goto 11100
  255. 11300 ifsx>len(te$(se,sy-6))then11350
  256. 11305 h1$=left$(te$(se,sy-6),sx-1)
  257. 11310 h2$=right$(te$(se,sy-6),len(te$(se,sy-6))-sx)
  258. 11320 te$(se,sy-6)=h1$+h2$:s=1:z=sy:gosub2000:printte$(se,sy-6);:print" ";
  259. 11340 s=sx:gosub 2000:return
  260. 11350 ifsx>1then te$(se,sy-6)=left$(te$(se,sy-6),len(te$(se,sy-6))-1)
  261. 11360 ifsx>1thenprint" [157][157] [157]";:sx=sx-1
  262. 11370 return
  263. 11400 ift$=chr$(29)thenifsx-1<len(te$(se,sy-6))thensx=sx+1:ktr=1
  264. 11410 ift$=chr$(157)thenifsx>1thensx=sx-1:ktr=1
  265. 11420 ift$=chr$(17)thenifsy<20thensy=sy+1:ktr=1
  266. 11430 ift$=chr$(145)thenif(sy-6)>1thensy=sy-1:ktr=1
  267. 11440 return
  268. 11500 if t$=chr$(133) then if se<vs then se=se+1:ktr=1
  269. 11510 if t$=chr$(137) then if se>1then se=se-1:ktr=1
  270. 11520 if t$=chr$(134) then if vs<25 then vs=vs+1:se=vs:ktr=1
  271. 11530 if t$=chr$(138) then ktr=2
  272. 11540 return
  273. 11600 if len(te$(se,sy-6))+1=>37thenreturn
  274. 11610 h1$=left$(te$(se,sy-6),sx-1)
  275. 11620 h2$=right$(te$(se,sy-6),len(te$(se,sy-6))-sx+1)
  276. 11630 te$(se,sy-6)=h1$+"[160]"+h2$:s=1:z=sy:gosub2000:printte$(se,sy-6);
  277. 11640 s=sx:gosub 2000:return
  278. 20000 sp=3:s=sp:h=1:b=7:z=3:gosub 2000:gosub 1000:mz=0:men=1
  279. 20005 ms=sp
  280. 20010 get t$:if t$=""then20010
  281. 20015 ift$=""thensp=sp+10:men=men+1:if sp>23 then men=1:sp=3
  282. 20020 ift$="[157]"thensp=sp-10:men=men-1:if sp<3 then men=3:sp=23
  283. 20030 if t$=chr$(13)thenreturn
  284. 20040 if sp=ms then 20010
  285. 20050 print"[144]";:s=ms:gosub 2000:gosub 1000
  286. 20060 print"[153]";:s=sp:gosub 2000:gosub 1000
  287. 20070 goto 20005
  288. 25000 s=5:z=8:b=25:h=ho(men):gosub2000:gosub 1000:y=1:my=0
  289. 25005 z=9:s=0:gosub 2000:fori=1toho(men):printtab(6)me$(men,i):next:s=6
  290. 25010 z=y+8:gosub 2000:print"[150]"me$(men,y):my=y
  291. 25020 gett$:ift$=""then25020
  292. 25030 if t$=""theny=y+1:ify>ho(men)theny=1
  293. 25040 if t$="[145]"theny=y-1:ify<1theny=ho(men)
  294. 25050 if t$=chr$(13)thenmenue(men,y)=ok:return
  295. 25060 if y=mythen25020
  296. 25070 z=my+8:gosub2000:print"[153]"me$(men,my)
  297. 25080 goto 25010
  298. 26000 io=0:gz=0:dv=8:gosub7000:if wahr=0 then gosub9500:return
  299. 26005 open2,8,15
  300. 26010 open1,8,0,"$0"
  301. 26015 get#1,a$,b$
  302. 26020 get#1,a$,b$
  303. 26025 get#1,a$,b$
  304. 26030 c=0
  305. 26035 if a$<>"" then c=asc(a$)
  306. 26040 if b$<>"" then c=c+asc(b$)*256
  307. 26045 get#1,b$:if st<>0 then26095
  308. 26050 if b$<>chr$(34) then26045
  309. 26055 get#1,b$:if b$<>chr$(34)thenia$=ia$+b$:goto26055
  310. 26060 z=4:s=1:gosub2000:printia$;:fori=1to16-len(ia$):print" ";:next
  311. 26065 ifright$(ia$,3)=".rd"thenia$=left$(ia$,len(ia$)-3):io=1
  312. 26066 ifio=1thenif ktr=1thenio=0:gosub 26100
  313. 26067 ifio=1thenifktr=2thenio=0:gosub 26300
  314. 26070 ia$=""
  315. 26075 get#1,b$:if b$=chr$(32) then26080
  316. 26080 c$=""
  317. 26085 c$=c$+b$:get#1,b$:if b$<>""  then26085
  318. 26090 if st=0 then26020
  319. 26095 close 1:close 2
  320. 26096 ifktr=1thenif gz<12 and gz>0 then z=20:gosub9000
  321. 26097 return
  322. 26100 gz=gz+1:z=6+gz:s=1:gosub 2000
  323. 26110 print ia$
  324. 26120 if gz=12thenz=20:gosub 9000:gosub26200:gz=0
  325. 26130 return
  326. 26200 gz=0:m$="[210]ezept-[196]irectory":gosub 6000
  327. 26210 z=6:s=0:h=12:b=36:gosub 2000:gosub 1000
  328. 26220 z=3:h=1:b=36:gosub2000:gosub1000
  329. 26299 return
  330. 26300 rem "
  331. 26310 gz[178]gz[170]1
  332. 26320 [139] gz[178]1 [167][141]26400
  333. 26330 [152]3,[166]3)ia$
  334. 26340 [139] gz[178][177]66[167] gz[178]0
  335. 26350 [142]
  336. 26400 [152]3:[152]3:[152]3:[152]3,[166]32)"(NULL)ezept-str$irectory"
  337. 26410 [152]3:[129]i[178]1[164]80:[152]3,"-";:[130]:[152]3:gz[178]gz[170]7
  338. 26420 [142]
  339. 30000 [143] "
  340. 30010 dv=8:gosub 7000:if wahr=0 then gosub 9500:return
  341. 30020 open 2,8,15:open 1,8,2,rn$+".rd,s,w":gosub8000
  342. 30030 if wahr=0thengosub9500:close 1:close 2:return
  343. 30040 print#1,vs:print#1,rn$
  344. 30050 for i=1tovs:for j = 1 to 14
  345. 30060 print#1,te$(i,j)
  346. 30070 next:next
  347. 30080 close 1:close 2
  348. 30090 return
  349. 30500 dv=8:gosub7000:ifwahr=0thengosub9500:return
  350. 30510 open2,8,15:open 1,8,2,rn$+".rd,s,r":gosub 8000
  351. 30520 if wahr=0thenclose1:close2:gosub9500:return
  352. 30525 input#1,vs:input#1,rn$
  353. 30530 fori=1tovs:forj=1to14:en$=""
  354. 30540 get#1,x9$
  355. 30550 if x9$=chr$(13)then 30570
  356. 30560 en$=en$+x9$:goto 30540
  357. 30570 te$(i,j)=en$:next:next
  358. 30580 close 1:close 2
  359. 30590 return
  360.