start tok64 d64-Mcc2QJ 0 REM"{141}{up}pd-pd-pd-pd-pd-pd-pd-pd-pd-pd-pd-pd-pd- 5 v$="4.00":REM verision 10 REM"{delete} character master v4.00 15 REM (c)peter karlsson(mr.p) 1991 20 REM"{141}{up}**************************************** 25 REM flytta tecken i maskinkod c64 (av: gunnar berglund) 30 POKE53280,11:POKE53281,. 35 FORl=679TO730:READa:POKEl,a:NEXT 40 SYS679 45 POKE52,128:POKE56,128 50 POKE56578,PEEK(56578)OR3:POKE56576,(PEEK(56576)AND252)OR1 55 POKE648,136:POKE53272,32:PRINTCHR$(142):PRINT"{clear}" 60 DATA120,165,1,41,251,133,1,169,0,133,251,169,208,133,252,169,0,133,253,169 65 DATA128,133,254,160,0,177,251,145,253,200,192,0,208,247,230,252,230,254,165 70 DATA252,201,216,208,237,165,1,9,4,133,1,88,96 75 REM visa alla tecken p] sk[rmen (c)peter karlsson 1991 80 FORi=49152TO49166:READa:POKEi,a:NEXT:FORi=49408TO49434:READa:POKEi,a:NEXT 85 DATA162,,138,157,208,138,169,12,157,208,218,232,208,244,96 90 REM ladda/spara (c)peter karlsson-91 95 FORi=49664TO49696:READa:POKEi,a:NEXT:POKE52989,64:POKE52990,48:POKE52991,58 100 DATA169,8,170,160,,32,186,255,169,16,162,,160,207,32,189,255,169,,162,,160 105 DATA128,32,213,255,96, 169,8,170,160,255,32,186,255,169,19,162,253,160,206 110 DATA32,189,255,162,,160,128,134,251,132,252,169,251,160,136,32,216,255,96 115 REM"{141}{up}**************************************** 120 POKE650,128:d=35536 125 PRINT"{yellow}{clear}{ct h}character master 64{.*3} {white}v"v$:POKE53280,0:POKE53281,0 130 SYS49152 135 PRINT"{home}{down*24}{right*17}{gray}fil ins end{home} 140 sc=32768:bs=PEEK(648)*256:REM sc=b{pound}rjan tecken & bs=b{pound}rjan sk[rm. 145 PRINT"{down}{yellow}v[lj tecken. 150 PRINT"{down}ditt val: {right}. ({right*3}) 155 PRINT"{down*10}{gray}v[lj {cyan}ins {gray}f{pound}r instruktioner." 160 PRINT"{home}{down}{yellow}(c)peter karlsson {green}1988-89-90-91 165 POKEd,PEEK(d)OR128:dd=d 170 GETa$:a=NOTPEEK(56320) 175 IFa$<" "ORa$="{left}"ORa$="{up}"THEN190 180 s=PEEK(bs):PRINT"{yellow}{home}"a$:t=PEEK(bs):POKEbs,s:d=35536+t:GOTO235 185 GETa$:a=31-(PEEK(56320)AND31) 190 IFa$="{right}"ORaAND8THENd=d+1 195 IFa$="{left}"ORaAND4THENd=d-1 200 IFa$="{up}"ORaAND1THENd=d-40 205 IFa$="{down}"ORaAND2THENd=d+40 210 IFd<>ddTHEN235 215 IFa$=CHR$(13)ORaAND16THEN285 220 q=PEEK(d)AND127:IFd>35663THEN230 225 PRINT"{home}{down*4}{right*13}{yellow}("RIGHT$(STR$(1e3+q),3)")":POKEbs+170,q 230 GOTO165 235 IFd<35536THENd=35801 240 IFd>35663ANDd<35793ANDdd35663ANDd<35793THENd=35663 250 IFd>35793ANDd<35797ANDdd35793ANDd<35797THENd=35793 260 IFd>35797ANDd<35801ANDdd35797ANDd<35801THENd=35797 270 IFd>35801THENd=35536 275 IFd<35336THENd=35801 280 POKEdd,PEEK(dd)AND127:GOTO220 285 ct=q:IFd=35801THEN520 290 IFd=35793THEN540 295 IFd=35797THENGOSUB830:GOTO125 300 PRINT"{home}{down*2}{space*12}" 305 PRINT"{home}{down*6}{yellow}";:y=sc+(ct*8):yy=sc+((ct+128)*8) 310 FORk=yTOy+7:a=PEEK(k) 315 FORl=7TO0STEP-1 320 IFaAND(2^l)THENPRINT"{reverse on} ";:GOTO330 325 PRINT"{reverse off}-"; 330 NEXTl:PRINT,"{green}{reverse off}"a"{left}.{yellow}{space*2}":NEXTk 335 r=6:k=. 340 z=r*40+k+bs:cs=r*40+k+55296:POKEcs,1:x=PEEK(z) 345 GETa$ 350 a=NOTPEEK(56320) 355 IFaAND1THENr=r-1 360 IFaAND2THENr=r+1 365 IFaAND4THENk=k-1:GOTO485 370 IFaAND8THENk=k+1:GOTO485 375 IFaAND1ORaAND2THEN485 380 IFa$=""ANDa=.THEN340 385 IFa$="i"THENGOSUB1070:GOTO340 390 IFa$="@"THEN305 395 IFa$="{f1}"THEN515 400 IFa$="m"THENGOSUB790:GOTO340 405 IFa$="{right}"THENk=k+1:GOTO485 410 IFa$="{down}"THENr=r+1:GOTO485 415 IFa$="{up}"THENr=r-1:GOTO485 420 IFa$="k"THEN1035 425 IFa$="{left}"THENk=k-1:GOTO485 430 IF(a$="{f3}"ORaAND16)ANDx=160THENa$="0" 435 IF(a$="{f3}"ORaAND16)ANDx=45THENa$="1" 440 IFa$="*"ORa$="x"ORa$="1"THENx=160:k=k+1:GOTO485 445 IFa$="n"THENGOSUB800:GOTO125 450 IFa$="."ORa$=" "ORa$="{sh space}"ORa$="0"THENx=45:k=k+1:GOTO485 455 IFa$=CHR$(13)THENa$="":POKEcs,7:GOTO490 460 IFa$="u"ORa$="d"THENGOSUB1080:GOTO340 465 IFa$="l"ORa$="r"THENGOSUB755:GOTO340 470 IFa$="c"THENGOSUB725:GOTO340 475 GOTO340 480 ok=k:OR=r:RETURN 485 POKEcs,7:POKEz,x:k=k+((k>7)-(k<.))*8:r=r+((r>13)-(r<6))*8:GOTO340 490 PRINT"{home}{down*6}";:FORr=6TO13:j=0:FORk=7TO0STEP-1 495 v=PEEK(bs+r*40+(7-k)) 500 IFv=160THENj=j+2^k 505 NEXT:POKEy+(r-6),j:PRINT,"{green}"j"{left}.{space*6}":POKEyy+(r-6),255-j 510 NEXT 515 PRINT"{home}{down}";:GOTO145 520 PRINT"{light gray}{clear}{space*13}sluta? {reverse on}j{reverse off}a, {reverse on}n{reverse off}ej" 525 GETa$:IFa$="n"THEN125 530 IFa$="j"THENPRINTLIST1110-1185 535 GOTO525 540 PRINT"{light gray}{clear}{space*6}{reverse on}s{reverse off}para {reverse on}l{reverse off}adda {reverse on}d{reverse off}irectory {reverse on}e{reverse off}ditor 545 GETb$:IFb$="e"THEN125 550 IFb$<>"l"ANDb$<>"s"ANDb$<>"d"THEN545 555 PRINT"{clear}{space*2}{reverse on}c{reverse off}haracter master- {reverse on}a{reverse off}rt studio-fonter 560 GETa$:IFa$="c"THENp=1:GOTO575 565 IFa$<>"a"THEN560 570 p=2 575 PRINT"{clear}{space*8}enhet: {reverse on}a{reverse off}=8 {reverse on}b{reverse off}=9 {reverse on}c{reverse off}=10 {reverse on}d{reverse off}=11 580 GETa$:IFa$<"a"ORa$>"d"THEN580 585 en=ASC(a$)-57 590 PRINT"{clear} s[tt i r[tt diskett. tryck {reverse on}mellanslag{reverse off}. 595 POKE198,.:WAIT198,1:POKE198,.:CLOSE1:CLOSE2:IFb$="d"THEN635 600 SYS49152 605 INPUT"filnamn";fi$:ONpGOTO610,615 610 fi$=LEFT$(fi$+"{space*12}",12)+".cmf":GOTO620 615 fi$=LEFT$(fi$+"{space*11}",11)+" font 620 FORi=1TO16:POKE52991+i,ASC(MID$(fi$,i)):NEXT:IFb$="s"THEN685 625 POKE49409,en:SYS49408 626 IFp=2THENFORi=32768TO33503:POKEi+1024,255-PEEK(i):NEXT 630 OPEN15,en,15:GOSUB715:CLOSE15:GOTO125 635 ONpGOTO640,645 640 OPEN2,en,.,"$0:{?*12}.cmf":GOTO650 645 OPEN2,en,.,"$0:{?*11} font 650 GET#2,a$:IFa$<>CHR$(34)THEN650 655 PRINT"{down}disk : ";:FORi=1TO16:GET#2,a$:PRINTa$;:NEXT:GET#2,a$:PRINT 660 PRINT"fonter p] disken:", 665 GET#2,a$:IFstTHENCLOSE2:GOTO680 670 IFa$<>CHR$(34)THEN665 675 FORi=1TO12:GET#2,a$:PRINTa$;:NEXT:PRINT,:GET#2,a$,a$,a$,a$,a$:GOTO665 680 PRINT"tryck {reverse on}mellanslag{reverse off}":POKE198,.:WAIT198,1:POKE198,.:GOTO125 685 ONpGOTO690,695 690 POKE49665,en:SYS48664:GOTO630 695 OPEN15,en,15:OPEN2,en,2,"@0:"+fi$+",p,w":GOSUB715 700 PRINT#2,CHR$(64)CHR$(72);:GOSUB715 705 FORi=32768TO33503:PRINT#2,CHR$(PEEK(i));:GOSUB715 710 NEXT:CLOSE2:GOSUB715:GOTO125 715 INPUT#15,en,em$,et,es:IFen<20THENRETURN 720 PRINT"disk fel -"em$","et"{left},"es:CLOSE2:CLOSE15:END 725 REM ** clear ** 730 FORrr=6TO13 735 FORkk=0TO7 740 POKEbs+rr*40+kk,45 745 NEXT:NEXT 750 RETURN 755 REM ** rotate left or right ** 760 IFa$="r"THEN775 765 FORrr=6TO13:z=PEEK(bs+rr*40):FORkk=1TO7 770 POKEbs+rr*40+(kk-1),PEEK(bs+rr*40+kk):NEXT:POKEbs+rr*40+7,z:NEXT:RETURN 775 FORrr=6TO13:z=PEEK(bs+rr*40+7):FORkk=6TO0STEP-1 780 POKEbs+rr*40+(kk+1),PEEK(bs+rr*40+kk):NEXT:POKEbs+rr*40,z:NEXT:RETURN 785 REM ** mirror ** 790 FORrr=6TO13:FORkk=0TO7:b(kk)=PEEK(bs+rr*40+kk):NEXT 795 FORkk=0TO7:POKE(bs+rr*40+(7-kk)),b(kk):NEXT:NEXT:RETURN 800 REM ** number ** 805 PRINT"{home}{down*6}"; 810 FORi=0TO7:PRINT,"{green}{left}";:INPUTa 815 POKEy+i,a:IFar=1THENPOKEyy+i,255-a 820 NEXT 825 RETURN 830 PRINT"{white}{clear}character master v"v$" (c)peter karlsson"; 835 PRINT"{down}{cyan}{-*4}att v[lja ett tecken att editera{-*4}"; 840 PRINT"{yellow}styr mark{pound}ren (se n[sta sida). du kan 845 PRINT"[ven v[lja ett tecken genom att trycka 850 PRINT"p] motsvarande tangent och sedan return. 855 PRINT"{cyan}{-*3}specialfunktioner i tecken-editorn{-*3}"; 860 PRINT"{yellow}c{space*2}{green}-{yellow} rensar tecknet 865 PRINT"l,r{green}-{yellow} roterar tecknet v[nster och h{pound}ger 870 PRINT"u,d{green}-{yellow} roterar tecknet upp och ner 875 PRINT"@{space*2}{green}-{yellow} ger tillbaka det gamla tecknet":PRINT"m{space*2}{green}-{yellow} speglar tecknet 880 PRINT"n{space*2}{green}-{yellow} l]ter dig utforma tecken med{space*12}siffror 885 PRINT"k{space*2}{green}-{yellow} kopierar in ett annat tecken 890 PRINT"i{space*2}{green}-{yellow} inverterar tecknet 895 PRINT"{down}{cyan}{-*9}ladda och spara fonten{-*9}"; 900 PRINT"{yellow}v[lj {white}fil{yellow} och sedan {white}l{yellow} f{pound}r ladda eller 905 PRINT"{white}s{yellow} f{pound}r spara. {white}e{yellow} ger ]terhopp. du kan bara"; 910 PRINT"spara p] diskett. se [ven n[sta sida. 915 PRINT"{down}(c) 1988-89-90-91: peter karlsson 920 PRINT"{white}tryck return{home} 925 POKE198,.:WAIT198,1:GETa$:IFa$<>CHR$(13)THEN925 930 PRINT"{white}{clear}character master v"v$" (c)peter karlsson"; 935 PRINT"{down}{cyan}{-*3}ritinstruktioner f{pound}r teckeneditorn{-*3}{yellow}"; 940 PRINT"x,*,1{space*5}{green}-{yellow} t[nd en punkt 945 PRINT"space,0{space*3}{green}-{yellow} sl[ck en punkt 950 PRINT"{green}f3{yellow},fire{space*3}{green}-{yellow} invertera en punkt 955 PRINT"{green}f1{space*8}-{yellow} l[mnar editor utan att [ndra{space*12}tecknet." 960 PRINT"{down}{cyan}{-*11}att styra mark{pound}ren{-*11}{yellow}"; 965 PRINT"crsr{space*6}{green}-{yellow} styr mark{pound}ren i en riktning 970 PRINT"return{space*4}{green}-{yellow} v[ljer tecken eller l[mnar{space*16}teckeneditorn 975 PRINT"joystick#2{green}-{yellow} styr mark{pound}ren i en riktning 980 PRINT"{down}{cyan}--att utnyttja fonterna i egna program--"; 985 PRINT"{yellow}f{pound}r att anv[nda en font i egna program, 990 PRINT"ladda och lista {green}character loader{yellow} av 995 PRINT"peter karlsson(mr.p.) 1000 PRINT"{down}{cyan}{-*8}fonter i olika filformat{-*8}"; 1005 PRINT"{yellow}ange i meny 2 i fil: c f{pound}r {green}character 1010 PRINT"master {yellow}eller a f{pound}r {green}the ocp art studio{yellow}. 1015 PRINT"{down}{yellow}{arrow left}{white} ger f{pound}rra sidan. {yellow}return{white} ger editor{home} 1020 POKE198,.:WAIT198,1:GETa$:IFa$="{arrow left}"THEN830 1025 IFa$<>CHR$(13)THEN1020 1030 RETURN 1035 PRINT"{home}{down*2}kopiera fr]n?";:OPEN1,0:INPUT#1,a$:CLOSE1:PRINT:ct=PEEK(bs+93)AND127 1040 PRINT"{home}{down*6}{yellow}";:z=sc+(ct*8):FORq=zTOz+7:a=PEEK(q):FORw=7TO.STEP-1 1045 IFaAND(2^w)THENPRINT"{reverse on} ";:GOTO1055 1050 PRINT"{reverse off}-"; 1055 NEXT:PRINT,"{green}{reverse off}"a"{left}.{yellow}{space*2}":NEXT:PRINT"{home}{down*2}{yellow}{space*18}" 1060 GOTO340 1065 REM ** invert ** 1070 FORrr=6TO13:FORkk=.TO7:y=bs+rr*40+kk:z=PEEK(y):x=45:IFz=45THENx=160 1075 POKEy,x:NEXT:NEXT:RETURN 1080 REM ** rotate up or down ** 1085 bm=bs+240:IFa$="d"THEN1100 1090 FORkk=.TO7:z=PEEK(bm+kk):FORrr=0TO6:POKEbm+rr*40+kk,PEEK(bm+rr*40+40+kk) 1095 NEXT:POKEbm+7*40+kk,z:NEXT:RETURN 1100 FORkk=.TO7:z=PEEK(bm+kk+280):FORrr=7TO1STEP-1 1105 POKEbm+rr*40+kk,PEEK(bm+rr*40-40+kk):NEXT:POKEbm+kk,z:NEXT:RETURN 1110 REM"{141}{up}**viktigt!! l[s detta noga!!** 1115 REM"{141}{up}****************************** 1120 REM"{141}{up}*{space*3}character master v3.21{space*3}* 1125 REM"{141}{up}* {=*26} * 1130 REM"{141}{up}* f{pound}r omstart{space*2}utan att f{pound}r- * 1135 REM"{141}{up}* lora tecknen:{space*2}starta med: * 1140 REM"{141}{up}*{space*7}-- goto 120 --{space*7}* 1145 REM"{141}{up}* {=*26} * 1150 REM"{141}{up}* {-*9} obs!! {-*10} * 1155 REM"{141}{up}* om du trycker stop+restore * 1160 REM"{141}{up}* "dyker" datorn. skriv{space*3}d] * 1165 REM"{141}{up}* run & tryck return! sk[rm- * 1170 REM"{141}{up}* minne & spritepekare finns * 1175 REM"{141}{up}* p] 34816-35839($8800-$8bff)* 1180 REM"{141}{up}*{space*3}(c)peter karlsson 1991{space*3}* 1185 REM"{141}{up}****************************** stop tok64 (bastext 1.0)