home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1992 November
/
64er_Magazin_92-11_1992_Markt__Technik_de_Side_A.d64
/
geoconvert.bas
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
5KB
|
173 lines
10 rem ods/060692
20 poke53280,0:poke53281,0:print"[147]"
30 dimf$(3),mz(7),d$(3),is%(256)
40 f$(1)="([211][197][209])":f$(2)="(schnell)":f$(3)="([197][201][206])":p1$="->":p2$=" ":m%=1:mz(1)=5
50 mz(2)=7:mz(3)=9:mz(4)=11:mz(5)=13:mz(6)=15:mz(7)=17:d$(1)=",p":d$(2)=",s"
60 d$(3)=",u":dz%=2:md%=1:lk%=1:f1=-1:qn$="8":zn$="8":qn%=8:zn%=8:a1=53265
70 a2=49152
80 :
90 print"[158]"spc(13)"[199][197][207][195][207][206][214][197][210][212] 1.0"
100 print"[155]"spc(5)"(w) & (c) 1992 by [207]laf [196]zwiza"
110 print" [153][203]onvertierung starten"
120 print" [153][196]ateityp [218]ieldatei [150]"f$(1)
130 print" [153][205]odus [150]"f$(2)
140 print" [153][204]aufkontrolle [150]"f$(3)
150 print" [153][194]efehl senden/[196]irectory
160 [153]" print(NULL)aufwerksadressen"
170 [153]" printvalnde"
180 ze%[178]20:sp%[178]1:[141]230:[153]"pokepeekitte eingeben: ";
190 ze%[178]21:[141]230:[153]"poke> to "
200 [139]f1[179][177][171]1[167][141]520:[137]220
210 [141]500:[141]510:[141]520:[137]220
220 f1[178][171]1:[137]580
230 [151]211,sp%[171]1:[151]214,ze%[171]1:[158]58640:[142]
240 :
250 tx$[178]"":[151]198,0:sp%[178]1:ze%[178]21:[141]230:[153]"print> to cmdcmdcmdcmdcmd";:[151]203,0
260 [161]x$:[139]x$[178][199](13)[167]350
270 [139]x$[178]""[167]260
280 [139][195](tx$)[178]0[175][198](x$)[178]20[167]260
290 i%[178][198](x$):[139]i%[179]32[176]i%[177]133[175]i%[179]159[167][139]i%[179][177]20[167]260
300 [139][195](tx$)[178]sl%[175]i%[179][177]20[167]260
310 tx$[178]tx$[170]x$
320 [153][199](20);x$;"to";
330 [139]i%[178]20[167]tx$[178][200](tx$,[195](tx$)[171]2):[137]260
340 [137]260
350 [153]"cmd ":[151]203,0:[151]198,0:[142]
360 :
370 [139]lk%[178]1[167][151]53280,s%
380 [152]15,"u1";5;0;t%;s%:[129]b[178]0[164]255
390 [139]md%[178]2[167][152]15,"b-p";5;b
400 [161]#5,a$:[151]a2[170]b,[198](a$[170][199](0)):[130]:[142]
410 :
420 vg$[178]"":[129]c[178]0[164]15:d%[178][194](a2[170]5[170]a[172]32[170]c):[139]d%[178]0[167]c[178]16
430 [139]d%[178]160[167]c[178]16
440 [139]c[178]16[167]460
450 vg$[178]vg$[170][199](d%)
460 [130]
470 [139]qf$[178]vg$[167]x%[178]255:[142]
480 x%[178]0:[142]
490 :
500 [159]15,qn%,15:[132]15,f1,f1$:[160]15:[142]
510 [159]15,zn%,15:[132]15,f2,f2$:[160]15:[142]
520 ze%[178]23:sp%[178]1:[141]230:[153]" "
530 ze%[178]24:sp%[178]1:[141]230:[153]" "
540 ze%[178]23:sp%[178]1:[141]230:[153]"print(NULL)(NULL)atn(NULL)(NULL)(NULL) ("qn$"):"f1"cmd, "f1$
550 ze%[178]24:sp%[178]1:[141]230:[153]"print(NULL)(NULL)atn(NULL)(NULL)(NULL) ("zn$"):"f2"cmd, "f2$
560 [142]
570 :
580 sp%[178]1:[129]i[178]5[164]17[169]2:ze%[178]i:[141]230:[153]p2$:[130]
590 ze%[178]mz(m%):[141]230:[153]p1$
600 [161]a$:[139]a$[179][177]""[175]a$[179][177]"on"[175]a$[179][177][199](13)[167]600
610 [139]a$[178]""[167]m%[178]m%[170]1[170]7[172](m%[178]7)
620 [139]a$[178]"on"[167]m%[178]m%[171]1[171]7[172](m%[178]1)
630 [139]a$[179][177][199](13)[167]580
640 [145]m%[137]670,1180,1240,1290,1340,1590
650 [151]53280,14:[151]53281,6:[153]"loadreturncont";:[128]
660 :
670 [153]"poke-> (NULL)onvertierung starten"
680 [153]" str$ateityp (NULL)ieldatei "f$(1)
690 [153]" (NULL)odus "f$(2)
700 [153]" (NULL)aufkontrolle "f$(3)
710 [153]" peekefehl senden/str$irectory
720 print" [204]aufwerksadressen"
730 print" [197]nde"
740 print"[153][194]itte eingeben: [155][206]ame der [209]uelldatei"
750 sl%=16:gosub250:qf$=tx$:ifqf$=""then750
760 ze%=20:sp%=17:gosub230:print"[155][206]ame der [218]ieldatei ":sl%=16
770 sp%=1:ze%=21:gosub230:print" ":gosub250
780 zf$=tx$:ifzf$=""then770
790 tx$="":fori=1tolen(qf$)
800 a$=mid$(qf$,i,1):a%=asc(a$)
810 ifa%>=193anda%<=218thentx$=tx$+chr$(a%-96):goto830
820 tx$=tx$+a$
830 next:qf$=tx$:tx$=""
840 open1,qn%,2,qf$+",u":close1:gosub500
850 iff1<>0then90
860 open1,zn%,2,zf$+d$(dz%)+",w":close1:gosub510
870 iff2<>0then90
880 open15,zn%,15,"s:"+zf$:close15
890 zg%=0:open15,qn%,15:open5,qn%,5,"#":pokea1,11:t%=18:s%=1
900 open2,zn%,2,zf$+d$(dz%)+",w"
910 gosub370:fora=0to7:x%=peek(a2+2+a*32):ifx%=131thengosub420
920 ifx%=255then960
930 next:t%=peek(a2):s%=peek(a2+1):ift%=0thenprint"[147]";:close2:close5:close15
940 ift%=0thenopen15,8,15,"s:"+zf$:close15:poke53280,0:pokea1,27:f1=-1:goto90
950 goto910
960 x%=a:a=8:next:pokea2+x%*32,131
970 t1%=peek(a2+3+x%*32):s1%=peek(a2+4+x%*32):td%=t%:sd%=s%
980 t%=t1%:s%=s1%:gosub370:fori=0to255:is%(i)=peek(a2+i):next:zg%=2
990 t%=peek(a2+2-o1%):s%=peek(a2+3-o1%)
1000 gosub370
1010 ifpeek(a2)=0then1060
1020 forx=0to253:we%=peek(a2+x):ifwe%<31orwe%>126thenifwe%<>13thenwe%=32
1030 ifwe%=91orwe%=92orwe%=93orwe%=123orwe%=124orwe%=125orwe%=126thenwe%=63
1040 print#2,chr$(we%);
1050 next:o1%=2:goto990
1060 forx=0topeek(a2+1):we%=peek(a2+x):ifwe%<31orwe%>126thenifwe%<>13thenwe%=32
1070 ifwe%=91orwe%=92orwe%=93orwe%=123orwe%=124orwe%=125orwe%=126thenwe%=63
1080 print#2,chr$(we%);
1090 next
1100 zg%=zg%+2:ifzg%=256then1130
1110 ifis%(zg%)=0then1130
1120 t%=is%(zg%):s%=is%(zg%+1):goto1000
1130 close2:close5:close15:poke53280,0
1140 print"[147] [158][203]onvertierung beendet."
1150 print""spc(12)"[212]aste druecken."
1160 pokea1,27:poke198,0:wait198,1:poke198,0:print"[147]";:f1=-1:goto90
1170 :
1180 dz%=dz%+1+3*(dz%=3)
1190 ifdz%=1thenf$(1)="([208][210][199])"
1200 ifdz%=2thenf$(1)="([211][197][209])"
1210 ifdz%=3thenf$(1)="([213][211][210])"
1220 goto90
1230 :
1240 md%=md%+1+2*(md%=2)
1250 ifmd%=1thenf$(2)="(schnell)"
1260 ifmd%=2thenf$(2)="(sicher )"
1270 goto90
1280 :
1290 lk%=lk%+1+2*(lk%=2)
1300 iflk%=1thenf$(3)="([197][201][206])"
1310 iflk%=2thenf$(3)="([193][213][211])"
1320 goto90
1330 :
1340 print"[151] [203]onvertierung starten"
1350 print" [196]ateityp [218]ieldatei "f$(1)
1360 print" [205]odus "f$(2)
1370 print" [204]aufkontrolle "f$(3)
1380 print"-> [194]efehl senden/[196]irectory"
1390 print" [204]aufwerksadressen"
1400 print" [197]nde"
1410 print"[153][194]itte eingeben: [155][194]efehl ($ fuer [196]ir)"
1420 sl%=30:gosub250
1430 iftx$="$"then1470
1440 open15,qn%,15,tx$:close15
1450 f1=-1:goto90
1460 :
1470 print"[147][158][201]nhaltsverzeichnis der aktuellen [196]isk:[155]"
1480 open15,qn%,15:open1,zn%,2,"_'[212]%[216]$#6":close1:input#15,f1,f1$:close15
1490 iff1<>0andf1<>62thenprint"[147]";:goto90
1500 open1,zn%,0,"$":get#1,a$,a$
1510 get#1,a$,a$:ifst=64thenclose1:goto1550
1520 get#1,a$,b$:printasc(a$+chr$(0))+256*asc(b$+chr$(0));
1530 get#1,a$:printa$;:ifa$<>""then1530
1540 print:goto1510
1550 print"[158][212]aste druecken."
1560 poke198,0:wait198,1:poke198,0
1570 print"[147]";:open15,zn%,15,"i":close15:f1=-1:f1$="":goto90
1580 :
1590 print"[151] [203]onvertierung starten"
1600 print" [196]ateityp [218]ieldatei "f$(1)
1610 print" [205]odus "f$(2)
1620 print" [204]aufkontrolle "f$(3)
1630 print" [194]efehl senden/[196]irectory
1640 [153]"-> (NULL)aufwerksadressen"
1650 [153]" valnde"
1660 [153]"printpeekitte eingeben: listatndresse (NULL)uellfloppy ("qn$") "
1670 sl%[178]2:[141]250:qn$[178]tx$
1680 qn%[178][197](qn$):[139]qn%[179]8[176]qn%[177]11[167]1590
1690 ze%[178]20:sp%[178]17:[141]230:[153]"listatndresse (NULL)ielfloppy ("zn$")"
1700 sl%[178]2:[141]250:zn$[178]tx$
1710 zn%[178][197](zn$):[139]zn%[179]8[176]zn%[177]11[167]1590
1720 f1[178][171]1:[137]90