home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Compute! Gazette 1987 October
/
1987-10.d64
/
animator
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
3KB
|
113 lines
10 rem copyright 1987 compute! publications, inc. - all rights reserved
20 ifll=1thenll=0:goto220
30 poke55,0:poke56,72:clr
40 open1,0,0
50 poke53280,6:poke53281,0
60 print"[147] copyright 1987 compute! pub., inc."chr$(142)chr$(8)
70 printtab(11)"all rights reserved"
80 fori=679to765:reada:x=x+a:pokei,a:next
90 ifx<>9869thenprint"error in data statement.":stop
100 data 169,0,160,0,162,0,173,0,6,141,0,8,173,0,36,141,0,220,238,174
110 data 2,173,174,2,201,0,208,3,238,175,2,238,177,2,173,177,2,201,0
120 data 208,3,238,178,2,238,180,2,173,180,2,201,0,208,3,238,181,2,238
130 data 183,2,173,183,2,201,0,208,3,238,184,2
140 data 232,224,128,240,3,76,173,2,200,192,8,240,3,76,171,2,96
150 dim po(10,2)
160 forr=1to10:pa(r)=50:nextr:print"[147]"
170 bg=1:nu=9:bf=1
180 forr=0to9:po(r,1)=18432+r*2048:po(r,2)=po(r,1)+1024
190 po(r,1)=po(r,1)/256:po(r,2)=po(r,2)/256:nextr
200 forr=0to9:poke687,4:poke693,4:poke690,(18432+2048*r)/256
210 poke696,(18432+1024+2048*r)/256:sys679:nextr
220 print"[147]":ifbg=2thenprint"[144]";
230 print"animator 64:"
240 print"0-9) edit screen d)isplay"
250 print"c)opy screen p)arameters"
260 print"s)ave to disk l)oad from disk"
270 print"e)xit program"
280 print " choice?";
290 geta$:a=val(a$)
300 ifa$=""then290
310 on-(a$="d")-(a$="c")*2-(a$="p")*3goto350,460,570
320 on-(a$="s")-(a$="e")*2-(a$="0"ora<>0)*3goto700,840,880
330 on-(a$="l")goto940
340 goto290
350 forr=1to500:nextr:ub=1
360 ifub=-1andbf=1thenforlo=nu-1to1step-1:goto380
370 forlo=0tonu
380 xx=lo:gosub1100
390 forpa=1topa(xx):nextpa
400 geta$:ifa$<>" "anda$<>chr$(13)then430
410 ifa$=" "thengosub440:goto430
420 goto220
430 nextlo:ub=-ub:goto360
440 geta$:ifa$=""then440
450 return
460 x=cr:x1=cr+1:ifx1=10thenx1=0
470 x2=x1:print"[147]copy screen:"
480 print"copy screen # "x"[157][157][157][157]";:inputc1
490 print"to: screens "x1"[157][157][157][157]";:inputc2
500 print" through "x2"[157][157][157][157]";:inputc3
510 forr=c2toc3
520 poke687,po(c1,1):poke693,po(c1,2)
530 poke690,po(r,1):poke696,po(r,2)
540 sys679
550 nextr
560 goto220
570 print"[147]parameters:"
580 forr=0to9:a$="pause":ifr<>10thena$=a$+" "
590 a$=a$+str$(r)+" : "+str$(pa(r)):printa$:nextr:print
600 print"background (1-16): "bg
610 print"hi screen # (0-9): "nu
620 print"back/forward (0/1): "bf
630 print"";:mo$=""
640 forr=0to9:printmo$;:inputpa(r):nextr
650 print:printmo$;:inputbg:ifbg<1orbg>16then570
660 printmo$;:inputnu:ifnu<0ornu>9then570
670 printmo$;:inputbf:ifbf<>0andbf<>1then570
680 poke53280,bg-1:poke53281,bg-1
690 goto220
700 print"[147]save screens to disk:"
710 print"filename to save?"
720 print"("chr$(34)"exit"chr$(34)" to abort)"
730 print:print">";:input#1,fi$
740 iffi$="exit"then220
750 print:print:print"** please standby **"
760 f1$=fi$+".dat,s,w":f2$=fi$+".scr":f3$="s0:"+f2$
770 open15,8,15,"s0:"+f1$:close15:open2,8,2,"0:"+f1$
780 print#2,bg:print#2,bf:print#2,nu
790 forr=1to10:print#2,pa(r):nextr
800 close2
810 open15,8,15,f3$:close15
820 sys57812f2$,8:poke193,0:poke194,72:poke174,0:poke175,152:sys62954
830 print:print"saved ...":forr=1to1000:nextr:goto220
840 print"[147]are you sure?"
850 geta$:ifa$=""ora$<>"y"anda$<>"n"then850
860 ifa$="n"then220
870 end
880 print"";:xx=a:cr=xx:gosub1100
890 input#1,bl$
900 geta$:ifa$="a"then220
910 ifa$<>chr$(13)then900
920 gosub1070
930 goto220
940 print"[147]load from disk:"
950 print"filename to load?"
960 print"("chr$(34)"exit"chr$(34)" to abort)"
970 print">";:input#1,fi$
980 iffi$="exit"then220
990 print:print:print"** please standby **"
1000 f1$=fi$+".dat,s,r":f2$=fi$+".scr"
1010 open2,8,2,f1$
1020 input#2,bg:input#2,bf:input#2,nu
1030 forr=1to10:input#2,pa(r):nextr:close2
1040 poke53281,bg-1:poke53280,bg-1
1050 ll=1:loadf2$,8,1
1060 end
1070 poke687,1024/256:poke693,55296/256
1080 poke690,po(xx,1):poke696,po(xx,2)
1090 sys679:return
1100 poke690,1024/256:poke696,55296/256
1110 poke687,po(xx,1):poke693,po(xx,2)
1120 sys679:return