home *** CD-ROM | disk | FTP | other *** search
- 1 if a=0 then a=1:load "pgm.bin",8,1
- 2 poke 55,255:poke 56,131:clr
- 3 ba=33792:rem base address
- 4 dp=ba+3:rem de-activate pgm
- 5 sa=ba+6:rem set address
- 6 bs=ba+9:rem bsave
- 7 bl=ba+12:rem bload
- 8 ds=ba+15:rem dos commands
- 9 fm=ba+18:rem fill memory
- 10 xf=ba+21:rem xfer memory
- 11 ho=ba+24:rem hires on
- 12 hf=ba+27:rem hires off
- 13 mo=ba+30:rem multicolor on
- 14 mf=ba+33:rem multicolor off
- 15 ce=ba+36:rem 80 column char driver
- 16 cd=ba+39:rem char driver
- 17 dc=ba+42:rem data compress
- 18 uc=ba+45:rem uncompress data
- 19 cw=ba+48:rem copy window
- 20 rw=ba+51:rem restore window
- 21 pl=ba+54:rem plot a point
- 22 up=ba+57:rem unplot a point
- 23 dr=ba+60:rem draw a line
- 24 ud=ba+63:rem undraw a line
- 25 bf=ba+66:rem bitmap fill
- 26 sb=ba+69:rem split border
- 27 br=ba+72:rem 3d bar
- 28 se=ba+75:rem eight sprite mode
- 29 fs=ba+78:rem fourteen sprite mode
- 30 so=ba+81:rem sprite on
- 31 sd=ba+84:rem sprite define
- 32 sp=ba+87:rem sprite plot
- 33 sr=ba+90:rem sprite reflect
- 34 rs=ba+93:rem sprite reverse
- 35 sx=ba+96:rem sprite xfer
- 36 an=ba+99:rem animate sprite
- 37 ca=ba+102:rem cease animate
- 38 jo=ba+105:rem joystick on
- 39 jf=ba+108:rem joystick off
- 40 wc=ba+111:rem color window
- 41 rw=ba+114:rem reverse window
- 42 fw=ba+117:rem fill window
- 43 rd=ba+120:rem dir reader
- 44 sys sa,57344,52224:rem set address
- 45 sys ba:rem activate pgm
- 46 sys ho:rem hires on
- 47 sysse:rem eight sprite mode
- 48 rem
- 49 rem program begins here
- 50 poke 53280,0:poke53281,0
- 51 rat=0
- 52 sysbl,49152,"alfredo.spr,p"
- 53 adr=peek(781)+peek(782)*256
- 54 sd=54272
- 55 syscd,55296,1,1,"[144][147]"
- 60 sysdr,0,0,319,0,1,0
- 65 sysdr,319,0,319,150
- 70 sysdr,319,150,0,150
- 75 sysdr,0,150,0,0
- 80 sysdr,0,150,319,150
- 85 sysdr,200,150,200,75
- 90 sysdr,200,75,319,75
- 100 sysdr,200,75,319,50
- 110 sysdr,220,100,250,100
- 115 sysdr,250,100,250,110
- 120 sysdr,250,110,220,110
- 125 sysdr,220,110,220,100
- 130 rem sysse:rem eight sprite mode
- 135 sysba+3*28,0,0,0,0,0,1
- 140 sysba+3*29,0,25,183,0
- 145 sysba+3*27,1,0
- 150 fr=25:tm=100:y=183:sl=1:mn=0:mx=3:gosub7000
- 160 sysud,80,150,110,150
- 161 sysdr,135,yy,188,yy
- 162 gosub4005
- 165 sysdr,80,150,110,180
- 170 forx=091to125step2:r=0:y=y+2:pt=4:gosub9000:next
- 175 rem ** scene 2 **
- 177 sysba+81,0,0
- 179 x=180:y=50:gosub9000
- 180 syscd,55296,1,1,"[144][147]"
- 185 sysdr,130,0,130,199:sysdr,190,0,190,199
- 190 sysdr,160,100,160,199:sysdr,135,100,185,100
- 192 sysba+81,1,0
- 195 fory=50to133step3:x=180:r=0:pt=8:gosub9000:next:pt=5:gosub9000
- 200 for yy=100to190step4:sysdr,135,yy,185,yy:sysud,135,yy,185,yy
- 202 sysud,160,yy-4,160,yy
- 205 y=y+4:gosub9000
- 210 next
- 220 rem ** scene 3 **
- 225 sysba+81,0,0
- 227 y=53:gosub9000
- 230 syscd,55296,1,1,"[144][147]"
- 235 sysdr,130,0,130,199:sysdr,130,199,190,199:sysdr,190,199,190,195
- 240 sysdr,190,195,319,195:sysdr,190,0,190,165:sysdr,190,165,319,165
- 245 sysdr,160,20,160,199
- 247 sysba+81,1,0
- 250 y=53:for yy=20to195step4:sysdr,135,yy,185,yy:sysud,135,yy,185,yy
- 252 sysud,160,yy-4,160,yy
- 255 y=y+4:gosub9000
- 260 nextyy
- 262 sysdr,135,yy,188,yy
- 264 sysud,160,yy-4,160,yy-1
- 265 fr=180:tm=320:sl=3:mn=15:mx=19:gosub7000
- 270 rem ** scene 4 **
- 275 sysba+81,0,0
- 280 syscd,55296,1,1,"[144][147]"
- 285 sysdr,0,100,319,100:sysdr,0,150,160,150:sysdr,160,150,180,170
- 290 sysdr,180,170,319,170
- 291 y=183:x=24:gosub9000
- 292 sysba+81,1,0
- 295 y=183:fr=24:tm=171:sl=3:mn=15:mx=19:gosub7000
- 300 pt=4:gosub9000
- 305 forx=171to192:y=y+1:gosub9000:next
- 310 y=203:fr=195:tm=320:sl=3:mn=15:mx=19:gosub7000
- 320 rem ** scene 5 ***
- 325 sysba+81,0,0
- 330 syscd,55296,1,1,"[144][147]"
- 335 sysdr,0,100,200,100:sysdr,200,100,200,0:sysdr,0,199,200,199
- 340 sysdr,200,199,319,80
- 342 y=232:x=24:gosub9000
- 345 sysba+81,1,0
- 350 y=232:fr=24:tm=210:sl=3:mn=15:mx=19:gosub7000
- 355 y=234:rat=-3:fr=215:tm=320:sl=3:mn=15:mx=19:gosub7000
- 360 rem ** scene 6 **
- 365 sysba+81,0,0
- 370 syscd,55296,1,1,"[144][147]"
- 375 sysdr,0,199,100,99:sysdr,100,99,100,199:sysdr,180,99,180,199
- 380 sysdr,180,99,319,99
- 382 y=227:x=24:gosub9000
- 385 sysba+81,1,0
- 390 y=227:rat=-3:fr=24:tm=110:sl=3:mn=15:mx=19:gosub7000
- 395 y=142:rat=-2:fr=108:tm=130:sl=3:mn=16:mx=16:gosub7000
- 400 y=128:forx=130to150step3:pt=18:y=y+2:gosub9000:next
- 410 y=140:rat=3:fr=150:tm=151:sl=.033707:mn=8:mx=10:gosub7000
- 420 rem ** scene 7 **
- 425 sysba+81,0,0
- 430 syscd,55296,1,1,"[144][147]"
- 435 sysdr,100,0,100,125:sysdr,180,0,180,125:sysdr,180,125,319,125
- 440 sysdr,0,125,100,125:sysdr,0,199,319,199:sysdr,0,175,319,175,6,0
- 442 y=50:x=150:gosub9000
- 445 sysba+81,1,0
- 450 y=50:rat=3:fr=150:tm=151:sl=.018:mn=8:mx=10:gosub7000
- 452 gosub 4015
- 455 rat=0:fr=150:tm=320:y=218:sl=3:mn=12:mx=13:gosub7000
- 460 rem ** scene 8 **
- 465 sysba+81,0,0
- 470 syscd,55296,1,1,"[144][147]"
- 475 sysdr,0,125,100,125,1,0:sysdr,100,125,100,0:sysdr,100,0,300,0
- 480 sysdr,300,0,300,125:sysdr,300,125,319,125:sysdr,0,175,100,175
- 485 sysdr,100,175,100,199:sysdr,100,199,319,199
- 490 sysdr,0,165,95,165,6,0:sysdr,95,165,103,175:sysdr,103,175,103,190
- 495 sysdr,103,190,319,190
- 497 x=24:y=210:gosub9000
- 500 sysba+81,1,0
- 505 rat=0:fr=24:tm=120:y=210:sl=3:mn=12:mx=13:gosub7000
- 510 fory=210to229step4:pt=14:r=0:x=120:gosub9000:next
- 512 gosub 4015
- 515 rat=0:fr=120:tm=193:y=232:sl=3:mn=12:mx=13:gosub7000
- 520 sysud,165,0,185,0
- 521 foryz=0to175step5:sysdr,165,yz,165,yz+5,1,0:sysdr,185,yz,185,yz+5:next
- 527 sysdr,175,0,175,185,1,0
- 530 pt=8:x=x+3:gosub9000
- 532 y=y-2
- 535 foryy=185to1step-1:sysud,175,yy,175,yy:y=y-1:gosub9000
- 536 if yy=180thensysdr,175,190,175,190,6,0
- 537 next
- 540 rem ** scene 9 **
- 545 sysba+81,0,0
- 550 syscd,55296,1,1,"[144][147]"
- 555 sysdr,0,0,0,175,1,0:sysdr,0,175,250,175:sysdr,250,175,250,0
- 560 sysdr,250,0,0,0
- 561 foryz=0to194step5:sysdr,25,yz,25,yz+5,1,0:sysdr,45,yz,45,yz+5:next
- 562 sysud,25,175,45,175
- 565 sysdr,35,0,35,190
- 570 x=55:y=239:gosub9000
- 575 sysba+81,1,0
- 580 foryy=199to170step-1:sysud,35,yy,35,yy:y=y-1:gosub9000:next
- 585 sysud,25,0,25,199:sysud,45,0,45,199
- 590 sysud,35,0,35,190
- 595 sysdr,0,175,90,175,1,0
- 600 sysdr,0,0,90,0
- 610 pt=6:gosub9000:fort=1to1010:next
- 615 pt=7:gosub9000:fort=1to1010:next
- 620 y=y-1:fr=55:tm=250:sl=1:mn=0:mx=3:gosub7000
- 630 pt=2:gosub9000
- 635 fort=165to155step-1:sysdr,250,t,319,t:sysdr,250,165+(165-t),319,165+(165-t)
- 640 sysud,250,t,319,t:sysud,250,165+(165-t),319,165+(165-t):next
- 645 sysdr,250,155,319,155:sysdr,250,175,319,175
- 650 fr=250:tm=320:sl=3:mn=15:mx=19:gosub7000
- 655 rem ** scene 10 **
- 660 sysba+81,0,0
- 665 syscd,55296,1,1,"[144][147]"
- 670 sysdr,0,150,250,150:sysdr,250,150,250,100:sysdr,250,100,50,100
- 675 sysdr,50,100,50,130:sysdr,50,130,0,130
- 676 y=183:x=24:gosub9000
- 677 sysba+81,1,0
- 680 fr=24:tm=182:y=183:sl=3:mn=15:mx=19:gosub7000
- 685 pt=6:gosub9000:fort=1to1000:next
- 690 sysud,0,150,50,150:sysud,0,130,50,130:sysdr,50,130,50,150
- 693 pt=5:gosub9000
- 695 forxx=75to160step4:sysdr,xx,101,xx,149:sysdr,160+(160-xx),101,160+(160-xx),149
- 700 sysud,xx,101,xx,149:sysud,160+(160-xx),101,160+(160-xx),149
- 702 if xx=155thensysba+81,0,0
- 705 next
- 707 sysba+81,1,0
- 710 sysud,150,150,170,150:sysdr,160,100,160,150:y=y+14:pt=8:gosub 9000
- 715 sysdr,150,150,150,199:sysdr,170,150,170,199
- 720 foryy=150to190step3
- 725 y=y+3:gosub9000:next
- 730 rem ** scene 11 **
- 735 sysba+81,0,0
- 740 syscd,55296,1,1,"[144][147]"
- 745 sysdr,0,0,0,75:sysdr,20,0,20,75:sysdr,20,75,319,75:sysdr,0,75,75,150
- 750 sysdr,75,150,319,150
- 755 x=29:y=49:gosub9000
- 760 sysba+81,1,0
- 765 foryy=2to70step3
- 770 y=y+3:gosub9000:next
- 780 x=29:y=127:pt=4:r=0:gosub9000
- 785 fory=127to182step2:x=x+2:gosub9000:next
- 790 x=x+5
- 795 fr=x:tm=320:sl=3:mn=15:mx=19:gosub7000
- 800 rem ** scene 12 **
- 805 sysba+81,0,0
- 810 syscd,55296,1,1,"[144][147]"
- 815 sysdr,0,50,319,50:sysdr,0,150,319,150:sysdr,150,50,150,137
- 820 sysdr,170,50,170,137:sysdr,170,137,150,137
- 823 y=183:x=24:gosub9000
- 825 sysba+81,1,0
- 830 fr=24:tm=178:y=183:sl=3:mn=15:mx=19:gosub7000
- 835 pt=8:gosub9000
- 837 sysud,148,150,172,150:sysdr,148,150,148,199:sysdr,172,150,172,199
- 840 foryy=137to190:y=y+1:gosub9000:sysud,151,yy-1,169,yy-1
- 845 sysdr,150,yy,170,yy:next
- 850 rem ** scene 13 **
- 855 sysba+81,0,0
- 860 syscd,55296,1,1,"[144][147]"
- 865 sysdr,148,0,148,130:sysdr,148,130,0,130:sysdr,0,150,172,150
- 870 sysdr,172,150,172,0
- 875 y=46:gosub9000
- 880 sysba+81,1,0
- 885 foryy=1to122step4:y=y+4:gosub9000
- 886 sysud,150,yy,170,yy
- 887 sysdr,150,yy+4,150,yy:sysdr,170,yy+4,170,yy:sysdr,150,yy+4,170,yy+4
- 890 next
- 895 for y=176to183step2:gosub9000:next
- 900 for xx=171to165step-1:sysdr,xx+1,140,xx+1,140:sysdr,xx,131,xx,149
- 902 sysud,xx,131,xx,149
- 905 next
- 907 pt=15:gosub9000
- 910 for xx=165to10step-4:sysdr,xx+1,140,xx+5,140:sysdr,xx,131,xx,149
- 911 sysud,xx,131,xx,149
- 912 x=x-4
- 915 pt=pt+1:ifpt=20thenpt=15
- 920 gosub9000
- 922 gosub 9100
- 925 next
- 930 rem ** scene 14 **
- 935 sysba+81,0,0
- 940 syscd,55296,1,1,"[144][147]"
- 945 sysdr,319,130,160,130:sysdr,160,130,160,50:sysdr,160,50,0,50
- 950 sysdr,0,50,0,150:sysdr,0,150,25,150:sysdr,25,150,25,199
- 955 sysdr,50,199,50,150:sysdr,50,150,319,150
- 957 x=325:gosub9000:sysba+81,1,0
- 960 for xx=313to48step-5:sysdr,xx+1,140,xx+6,140:sysdr,xx,131,xx,149
- 965 sysud,xx,131,xx,149
- 970 x=x-5
- 975 pt=pt+1:ifpt=20thenpt=15
- 977 gosub 9100
- 980 gosub9000
- 985 next
- 987 sysdr,48,131,48,149,1,0
- 990 pt=8:fory=183to229:gosub9000:next
- 995 rem ** scene 15 **
- 997 pt=8
- 1000 sysba+81,0,0
- 1005 syscd,55296,1,1,"[144][147]"
- 1010 sysdr,150,0,150,50:sysdr,150,50,145,55:sysdr,170,0,170,50
- 1015 sysdr,170,50,175,55:sysdr,150,125,150,150:sysdr,170,125,170,150
- 1020 sysdr,150,150,170,150:sysdr,150,150,145,155:sysdr,170,150,175,155
- 1025 sysdr,0,155,319,155:sysdr,250,155,250,135:sysdr,250,135,270,135
- 1030 sysdr,270,135,270,155:sysba+39,53248,14,30,"exit"
- 1035 x=178:y=50:gosub9000:sysba+81,1,0
- 1040 fory=50to183step3:gosub9000:next
- 1045 pt=5:x=175:c=181:gosub9000
- 1047 sysba+81,0,0
- 1049 cl=1:gosub9100:forxx=169to151step-1:sysdr,xx,125,xx,149,cl,0:next
- 1050 forcl=2to10:gosub9100:forxx=169to151step-3:sysdr,xx,125,xx,149,cl,0:
- 1052 next:next
- 1055 sysdr,150,133,0,133:sysdr,150,137,0,137
- 1057 sysdr,149,135,0,135,1,0
- 1060 forcl=1to10:sysdr,149,134,0,134,cl,0:sysdr,149,136,0,136,cl,0:next
- 1061 foryy=133to137:sysud,149,yy,0,yy:next
- 1065 syscd,53248,22,12,"to be continued"
- 1070 fora=1to1000:next
- 1075 syscd,53248,24,13,"press any key"
- 1080 poke198,.:wait 198,1:syshf:print"[147]";:sysdp:poke178,28
- 1090 open15,8,15,"r0:hello connect=hello connect":input#15,er:close15
- 1095 ifer<>63thenend
- 1100 load "hello connect",8
- 4000 rem ** sound fx **
- 4005 s=54272:pokes+24,15:pokes+5,190:pokes+6,25:forx=127to10step-17:pokes+1,2*x
- 4010 pokes+1,129-x:pokes+4,17:forl=1to4:next:pokes+1,4:next:pokes+4,16:return
- 4015 s=54272:pokes+24,15:pokes+6,240:pokes+4,17:forla=1to2:forlx=255to1step-55
- 4020 pokes+1,lx/2:pokes+1,255-lx/2:next:next:pokes+4,16:return
- 7000 z=0:r=0:pt=mn:forf=frtotmstepsl
- 7005 z=z+1:ifz<3then7020
- 7010 ifpt<mxthenpt=pt+1:z=0:goto7020
- 7015 pt=mn:z=0
- 7020 x=f:y=y+rat:gosub9000:ifpt=15orpt=18thengosub9100
- 7021 ifpt>14thenz=2
- 7025 next
- 7030 return
- 9000 rem ** position sprite **
- 9005 sysba+3*29,r,x,y,pt
- 9010 return
- 9100 pokesd+24,.:pokesd+24,15:return
-