home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er Special 83
/
64er_Magazin_Sonderheft_83_19xx_Markt__Technik_de_Side_A.d64
/
wizcopy-editor
(
.txt
)
< prev
Wrap
Commodore BASIC
|
2022-10-26
|
2KB
|
83 lines
10 poke53280,0:poke53281,0:poke646,7
100 print"[147]";chr$(142);" wizcopy - editor"
110 print" bitte programmdiskette einlegen"
120 print" und taste druecken."
130 poke198,0:wait198,1
140 p=61:dimw(p)
142 open15,8,15:open3,8,3,"wizcopy v1.0,p,r"
144 gosub2000:fori=1to17:gosub2100:next
146 fori=1top:gosub2100:w(i)=asc(a$):next:close3
147 :
148 print" beantworten sie nun folgene fragen":poke198,0
150 print" geraeteadresse (primaeradresse) "w(57)"[157][157][157][157]";:inputa:ifa<4ora>7then150
155 w(57)=a
160 print" sekundaeradresse "w(58)"[157][157][157][157]";:inputa:ifa<0ora>255then160
170 print:w(58)=a
200 print" benoetigt der drucker einen linefeed"
210 input" nach einem carriage return (j/n) n[157][157][157]";a$:ifa$<>"n"anda$<>"j"then200
220 print:w(37)=13:w(38)=255:ifa$="j"thenw(38)=10
300 fori=59to61:reada$
310 print" "a$" "w(i)"[157][157][157][157]";:inputa:ifa<0ora>15then310
320 w(i)=a:next
330 :
500 print"[147] geben sie nun die folgenden"
510 print" steuersequenzen ein. erlaubt sind:"
520 print" 1) das zeichen esc"
530 print" 2) zahlenwerte in dezimaler form"
540 fori=1to8
550 reada$,s,t:print" "a$:print" beispiel: star nl 10: ";
560 forj=stot:ifw(j)=27thenprint"esc";:goto570
565 ifw(j)<>255thenprintstr$(w(j));
570 w(j)=255:next:print
580 a$="":j=s:input" ihre eingabe: ";a$
590 gosub1000:iff=0thenifj<t or len(a$)=0then600
595 print" das kann nicht stimmen! bitte geben"
596 print" sie die sequenz nochmal ein.":f=0:goto580
600 iflen(a$)>0then590
610 next
650 :
660 print" abspeichern ? [j/n] ";
670 geta$:ifa$<>"j"anda$<>"n"then670
680 printa$:ifa$="n"thenend
690 print" bitte warten..."
700 :
710 open3,8,3,"wizcopy v1.0,p,r"
720 open4,8,4,"!wizcopy v1.0,p,w"
730 gosub2000:fori=1to17:gosub2100:print#4,a$;:next
760 fori=1top:gosub2100:print#4,chr$(w(i));:gosub2110:next
790 j=0:fori=0to1
800 get#3,a$:ifa$=""thena$=chr$(0)
810 ifst<>0thenj=1
820 print#4,a$;:i=j:next
850 gosub2000:close3:close4
880 print#15,"s0:wizcopy v1.0"
890 print#15,"c0:wizcopy v1.0=!wizcopy v1.0"
900 print#15,"s0:!wizcopy v1.0"
910 gosub2000:close15:end
920 :
1000 gosub1090:iflen(a$)=0then1040
1020 ifleft$(a$,3)="esc"thenw(j)=27:j=j+1:a$=mid$(a$,4):return
1030 ifasc(a$)>47thenifasc(a$)<58then1050
1040 f=1:return
1050 l=2
1060 a=asc(mid$(a$,l)+chr$(0)):ifa>47anda<58thenl=l+1:goto1060
1070 a=val(left$(a$,l-1)):ifa<0ora>255then1040
1080 a$=mid$(a$,l):w(j)=a:j=j+1
1090 iflen(a$)>0thenifasc(a$)=32thena$=mid$(a$,2):goto1090
1095 return
2000 input#15,f,f$:iff<2thenreturn
2010 print" ";f;f$:close3:close4:close15:end
2100 get#3,a$:ifa$=""thena$=chr$(0)
2110 ifst=0thenreturn
2120 input#15,f,f$:goto2010
2130 :
8000 data hintergrund-farbe,text-farbe,balken-farbe
9000 data drucker initialisieren,1,8
9010 data unterstreichen ein,9,12
9020 data unterstreichen aus,13,16
9030 data engschrift (136 zeichen pro zeile),17,20
9040 data zeilenabstand auf 5/72 zoll setzen,21,24
9050 data potenzierungs-modus ein (hochschrift),25,28
9060 data fettschrift ein,29,32
9070 data fettschrift aus,33,36