Retrocomputer, Emulazione, Riparazioni Scambi/Vendite e collezionismo - Cerco Commodore - Approfondimenti, Listati Basic Commodore

Commodore CErco COmmodore - l'iniziativa di appassionati di retrocomputer


Listato per il basic del Commodore 64 che consente di disegnare in alta risoluzione e salvare il disegno.

I tasti F1 ed F2 servono rispettivamente per cancellare il video ad alta risoluzione e per richiamare o memorizzare il disegno.

        10 For i=20000 to 20121:read q:pokei,q:next
        20 data 169,0,133,251,169,32,133,252,160,0,169,0,145,251,230,251,197,251,240,2
        30 data 208,246,230,252,169,64,197,252,208,236,169,0,133,251,169,4,133,252
        40 data 160,0,138,145,251,230,251,169,232,197,251,208,7,169,7,197,252
        50 data 208,1,96,152,197,251,240,4,138,24,144,230,230,252,24,144,224
        60 data 255,162,0,169,18,157,0,4,232,224,255,208,248,162,0,169,18,157,255,4,232
        70 data 224,255,208,248,162,0,169,18,157,254,5,232,224,255,208,248,162,0,169
        80 data 18,157,253,6,232,224,235,208,248,96
        90 sys 20000:sys 20071
        100 poke53272,peek(53272)or 8
        110 poke53265,peek(53265)or 32
        120 x=160:y=100
        130 z=peek(56320):n=peek(197)
        140 if n=4 then sys20000:sys20071
        150 if n=5 then 1000
        160 if z=126 then y=y-1
        170 if z=125 then y=y+1
        180 if z=123 then x=x-1
        190 if z=119 then x=x+1
        200 if z=118 then x=x+1:y=y-1
        210 if z=117 then x=x+1:y=y+1
        220 if z=121 then x=x-1:y=y+1
        230 if z=122 then x=x-1:y=y-1
        240 ch=int(x/8):ro=int(y/8):ln=yand7:by=8192+ro*320+8*ch+ln:bi=7-(xand7)
        250 pokeby,peek(by)or(2[elevato (freccia in alto sulla tastiera del C64)]bi)
        500 goto 130
        1000 print chr$(147):poke53265,27:poke53272,21
        1010 z1=8192:z2=16191
        1020 input"Nome del file";z$
        1030 input"Disco o Nastro (D/N)";t$
        1040 if t$="n" then x=1
        1050 if t$="d" then x=8
        1060 input"Load o Save (L/S)";s$
        1070 if s$="s" then 1100
        1080 if s$="l" then 1160
        1100 open 1,x,1,z$
        1110 fors=z1toz2:m=peek(i)
        1120 print#1,m
        1130 nexti:close 1
        1140 goto 90
        1160 poke53272,peek(53272)or8:print chr$(147):sys20000:sys20071
        1170 poke53265,peek(53265)or32
        1180 open 1,x,0,z$
        1190 fori=z1toz2
        1200 input#1,m
        1210 pokei,m:next i:close 1:goto 130
		  

Torna indietro



Copyright 2003 - 2018 (c) - Tutti i diritti riservati -