home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AMOS PD CD
/
amospdcd.iso
/
sourcecode
/
demos
/
64_part.amos
/
64_part.amosSourceCode
next >
Wrap
AMOS Source Code
|
1990-02-19
|
16KB
|
595 lines
Set Buffer 55
Sam Swapped
Dim C(16)
Global O,C()
O=1
Close Editor
Close Workbench
Global TXT$,OFF,C
Erase 2 : Erase 10
Load "64font.abk"
Bank Swap 2,10
Bload "64font.abk.cfnt", Extension_8_0044
INIT
_DECRUNCH
FLD
BYE_BYE
Wait 100
Fade 5 : Wait 15*5
While Screen<>-1
Screen Close Screen
Wend
Screen Open 0,320,34,2,Lowres
Curs Off : Flash Off : Cls 0 : Hide On : Colour 1,0
Screen Display 0,,148,,
Paste Bob 55,0,60
Fade 1,0,$F : Wait 16
Run "goodbye.amos"
Procedure INIT
Hide On
Colour Back $88F
Auto View Off
View
Screen Open 0,320,200,4,Lowres
Colour 0,$88F
Curs Off : Flash Off : Cls 0
Colour 1,$88F
Colour 2,$44A
Colour 17,$44A
Colour 18,$88F
Ink 2
Bar 0,0 To 312,200
Hide
Screen Display 0,130,60,,
TXT$="# **** COMMODORE 64 BASIC V2 **** ## 64K RAM SYSTEM 38911 BASIC BYTES FREE"
TXT$=TXT$+"##READY."
TXT$=TXT$+"LOAD"
TXT$=TXT$+"##PRESS PLAY ON TAPE"
TXT$=TXT$+"#OK"
TXT$=TXT$+"##FOUND THE SPIRIT LEVEL"
X=2
Y=1
For T=1 To 85
T$=Mid$(TXT$,T,1)
C=Asc(T$)
C=C-64
If C=-32
C=39
End If
If C=-29
Add Y,8 : X=2-8
End If
If C=-22
C=36
End If
If C=<0 and C>-16
Add C,42
End If
If C=-18
C=37
End If
If C<>-29
Paste Bob X,Y,C
End If
Add OF,1
Add X,8
Next T
X=2 : Add Y,8
Sprite 10,128+X,60+Y,38
Channel 1 To Sprite 10
Anim 1,"(38,20)(39,20)L"
Anim On
View
Auto View On
Wait 200
For T=86 To 89
T$=Mid$(TXT$,T,1)
C=Asc(T$)
C=C-64
If C=-32
C=39
End If
If C=-29
Add Y,8 : X=2-8
End If
If C=-22
C=36
End If
If C=<0 and C>-16
Add C,42
End If
If C=-18
C=37
End If
If C<>-29
Paste Bob X,Y,C
End If
Add OF,1
Add X,8
Sprite 10,128+X,60+Y,38
Wait 10
Next T
Wait 100
For T=90 To 109
T$=Mid$(TXT$,T,1)
C=Asc(T$)
C=C-64
If C=-32
C=39
End If
If C=-29
Add Y,8 : X=2-8
End If
If C=-22
C=36
End If
If C=<0 and C>-16
Add C,42
End If
If C=-18
C=37
End If
If C<>-29
Paste Bob X,Y,C
End If
Add OF,1
Add X,8
Sprite Off 10
Next T
Wait 200
Colour 2,$88F
Wait 200
Colour 2,$44A
For T=110 To Len(TXT$)
T$=Mid$(TXT$,T,1)
C=Asc(T$)
C=C-64
If C=-32
C=39
End If
If C=-29
Add Y,8 : X=2-8
End If
If C=-22
C=36
End If
If C=<0 and C>-16
Add C,42
End If
If C=-18
C=37
End If
If C<>-29
Paste Bob X,Y,C
End If
Add OF,1
Add X,8
Next T
Wait 100
Colour 2,$88F
Colour Back 0
End Proc
Procedure _DECRUNCH
Randomize Timer
While Screen<>-1
Screen Close Screen
Wend
C(1)=0 : C(2)=$FFF : C(3)=$903 : C(4)=$9FE : C(5)=$E7F : C(6)=$5C6 : C(7)=$33B : C(8)=$FF8
C(9)=$E95 : C(10)=$741 : C(11)=$E79 : C(12)=$444 : C(13)=$AAA : C(14)=$AFA : C(15)=$88F : C(16)=$EEE
For T=0 To 5000
Poke $DFF180,C(Rnd(15))
Next T
Wait Vbl
End Proc
Procedure LETTER_WRITER[SCRN]
Extension_8_0016 0,0
TX$="Welcome to the 64 .....� "
TX$=TX$+"�"
TX$=TX$+"this part has been designed in the�"
TX$=TX$+"64 style so all the people who have�"
TX$=TX$+"not seen a 64 demo before this is a �"
TX$=TX$+"example of what goes on.�"
TX$=TX$+"�"
TX$=TX$+"(space to exit .....but not yet!!)�"
TX$=TX$+"�"
TX$=TX$+"credits for this part ....�"
TX$=TX$+"coding - cerberus�"
TX$=TX$+"music - lazarus�"
TX$=TX$+"graphics and design - cerberus�"
TX$=TX$+" lazarus�"
TX$=TX$+"technical support - utiliser�"
TX$=TX$+"scroll text - d.s.ate�"
TX$=TX$+"flooze routine (?!?) - paragon�"
TX$=TX$+"�"
TX$=TX$+"before i start waffling about the�"
TX$=TX$+"technical side of this demo�"
TX$=TX$+"and equipment list we`d first like�"
TX$=TX$+"to give out some greetings and thanx�"
TX$=TX$+"to the following -�"
TX$=TX$+"�"
TX$=TX$+"l.o.c. thanx for our ad in your�"
TX$=TX$+" forthcoming mega demo and�"
TX$=TX$+" for all the copies of a.c.c.�"
TX$=TX$+" from crow.�"
TX$=TX$+"�"
TX$=TX$+"j.b.i. greets to tim lee jez and ali�"
TX$=TX$+" mr tim wright-�"
TX$=TX$+" its no good im telling the �"
TX$=TX$+" whole world that it is i who �"
TX$=TX$+" writes all your amazing riffs�"
TX$=TX$+" supplies your high quality�"
TX$=TX$+" samples (beast 2 awesome etc)�"
TX$=TX$+" and i still havent received�"
TX$=TX$+" my brand new mr2 as agreed !�"
TX$=TX$+"�"
TX$=TX$+" (only joking ... or am i !!)�"
TX$=TX$+"�"
TX$=TX$+" p.s look out for the new jbi �"
TX$=TX$+" demo fillet the fish 2.5 �"
TX$=TX$+" with its excellent sfx by �"
TX$=TX$+" d.s. ate of omega/jbi �"
TX$=TX$+"�"
TX$=TX$+"many thanx go out to tony for the�"
TX$=TX$+"graphics in our recent release �"
TX$=TX$+" willies waterworks�"
TX$=TX$+" (available now from u.p.d.)�"
TX$=TX$+"�"
TX$=TX$+"rebel uk -yes well er love the demos�"
TX$=TX$+" they are really great.�"
TX$=TX$+" i must admit you sure have�"
TX$=TX$+" quashed us(re utah saints)�"
TX$=TX$+"�"
TX$=TX$+" you couldnt quash orange !�"
TX$=TX$+"�"
TX$=TX$+"formal greetings to .....�"
TX$=TX$+"deja vu(sandra sharkey),paul ciupek,�"
TX$=TX$+"syntex (red sector of amos ?),sprog,�"
TX$=TX$+"mr.wig, ms1, hannasis v, mark 2, me,�"
TX$=TX$+"that clive fellow who designed the�"
TX$=TX$+"spectra or something .... ah yes the�"
TX$=TX$+"c5 (one day it will come back like�"
TX$=TX$+"flairs have - or will it !)�"
TX$=TX$+"massive greetings to vic, bob, and�"
TX$=TX$+"les(les fact number 2363 - les likes�"
TX$=TX$+"to examine water buffalos while �"
TX$=TX$+"chewing large amounts of fish)�"
TX$=TX$+"�"
TX$=TX$+"right,now for some technical info on�"
TX$=TX$+"the entire golden ages demo.�"
TX$=TX$+"it was coded in amos and took about�"
TX$=TX$+"4 months of the groups combined work�"
TX$=TX$+"including several games of bowls (by�"
TX$=TX$+"paragon), infinite trips to the�"
TX$=TX$+"kentucky fried chicken,large amounts�"
TX$=TX$+"of beer (and whiskey (see below)),�"
TX$=TX$+"1 or 2 arguments (or 3 or 4 !), 1�"
TX$=TX$+"semi-broken disk and the following..�"
TX$=TX$+"5 amigas (1 meg except for utiliser�"
TX$=TX$+"with 2 meg and harddrive), action�"
TX$=TX$+"replay mk2, sanyo video camera (and�"
TX$=TX$+"digitiser (tony)), c 64, 2 samplers�"
TX$=TX$+"(trilogic,mastersound), tannoy and�"
TX$=TX$+"j.b.l. speakers, m1r,tg55, cz101,�"
TX$=TX$+"r8m, midiverb 3, kawai mx8sr mixer,�"
TX$=TX$+"ds8,(d.s.ate !), teac amp, midi box,�"
TX$=TX$+"yamaha kx 530 cass deck and a hell �"
TX$=TX$+"of a lot of electricity.�"
TX$=TX$+"�"
TX$=TX$+"a diary of a typical omega coder(any�"
TX$=TX$+"resemblance to any one(like neal) is�"
TX$=TX$+"coincidental)�"
TX$=TX$+"�"
TX$=TX$+"just recieved a phone call.the omega�"
TX$=TX$+"christmas **** up is on saturday in�"
TX$=TX$+"brymbo - great cant wait!�"
TX$=TX$+"�"
TX$=TX$+"the day has arrived.ill just iron my�"
TX$=TX$+"jeans.lets have a kentucky (scram).�"
TX$=TX$+"ill have a few double whiskeys cause�"
TX$=TX$+"they are dead cheap at the local and�"
TX$=TX$+"i was brought up on them after all�"
TX$=TX$+"�"
TX$=TX$+"several hours later(we have switched�"
TX$=TX$+"to cerberus diary due to unreadable�"
TX$=TX$+"entries in this ficticous diary that�"
TX$=TX$+"is not anything to do with neal ....�"
TX$=TX$+"at all!!�"
TX$=TX$+"hey where is steve.oh i remember hes�"
TX$=TX$+"in the bogg being sick.Or is he just�"
TX$=TX$+"asleep.�"
TX$=TX$+"�"
TX$=TX$+"ill just go and check�"
TX$=TX$+"�"
TX$=TX$+"hmmm is he okay he has been in there�"
TX$=TX$+"for 1 and a half bloody hours!!!�"
TX$=TX$+"�"
TX$=TX$+"well he says he is ok but he wont�"
TX$=TX$+"come out.....why?................�"
TX$=TX$+"�"
TX$=TX$+"oh dear me...d.s.ate cannot seem to�"
TX$=TX$+"drink his seventh double never mind�"
TX$=TX$+"neal will drink it for him.�"
TX$=TX$+"�"
TX$=TX$+"good god neal can really handle his�"
TX$=TX$+"drinks he has been on double whiskey�"
TX$=TX$+"pernods vodkas etc all bloody night�"
TX$=TX$+"and he doesnt seem slightly drunk�"
TX$=TX$+"�"
TX$=TX$+"time to go now..last orders are upon�"
TX$=TX$+"us..d.s.ate has gone to try and drag�"
TX$=TX$+"steve away from his new home.�"
TX$=TX$+"is he building a kitchen in there!?!�"
TX$=TX$+"�"
TX$=TX$+"we are now outside,but where is neal�"
TX$=TX$+"oh dear..he appears to be trying to�"
TX$=TX$+"run home..down a hill..down a very�"
TX$=TX$+"steep hill..oh dear me he has fallen�"
TX$=TX$+"�"
TX$=TX$+"i think he is dead..no the fresh air�"
TX$=TX$+"has completely wiped him out.�"
TX$=TX$+"�"
TX$=TX$+"neal has just woke up but will not�"
TX$=TX$+"move.there is a car coming neal it�"
TX$=TX$+"is time to bloody move...�"
TX$=TX$+"he stumbles to his feet.....and gets�"
TX$=TX$+"carried away..by the rest of o.d.i.�"
TX$=TX$+"�"
TX$=TX$+"why wont he stop being sick his dog �"
TX$=TX$+"might try to eat it.and why is steve�"
TX$=TX$+"trying to walk home 10 miles?�"
TX$=TX$+"�"
TX$=TX$+"well the official omega demos xmas�"
TX$=TX$+"***** up was a complete success�"
TX$=TX$+"�"
TX$=TX$+"�"
TX$=TX$+" even though it was raining........�"
TX$=TX$+"�"
TX$=TX$+"�"
TX$=TX$+" or was it?!?!?!?!?�"
TX$=TX$+"�"
TX$=TX$+"�"
TX$=TX$+"�"
TX$=TX$+"�"
TX$=TX$+" the end�"
Screen SCRN
Flash 7,"(741,5)(e7f,5)(903,5)(e79,5)(fff,5)(e79,5)(903,5)(e7f,5)"
X=0 : CNT=0 : Y=8
Screen Show 0 : Screen Show 1 : Screen Show 2
For T=1 To Len(TX$)
T$=Inkey$ : If T$=" " Then Pop Proc
A$=Mid$(TX$,O,1)
C$=Upper$(A$)
If Asc(C$)=163
Add Y,8 : X=0
End If
Extension_8_0006 X,Y,C$
Add O,1,0 To Len(TX$)
If X<300
Add X,8
Else X=0
End If
If Y=120
Wait 200
Y=8
X=0
Cls 0
End If
If Mouse Key=1
DLY=1 : Else DLY=5
End If
Wait DLY
Next T
End Proc
Procedure FLD
Sload Start(13),Start(14)
Extension_1_022E 0,0,0,1
Wait Vbl
Sam Swapped
Wait Vbl
Extension_1_022E 0,0,0,1
Sprite Off : Amal Off
Screen Open 0,320,255,16,Lowres : Flash Off : Curs Off : Hide
Screen Hide 0
Palette 0,$FFF,$903,$9F3,$E7F,$5C6,$33B,$FF8,$E95,$741,$E79,$444,$AAA,$AFA,$88F,$EEE
Cls 0
Double Buffer : Autoback 0
A$="H: "
B$="G: "
C$="I: "
D$="B: "
E$="S: "
For LP=1 To 360 Step 16
Degree
X=30
Y=150+10*Cos(LP)
A$=A$+"Let X="+Str$(X)+";Let Y="+Str$(Y)+";P;"
Next LP
For LP=1 To 360 Step 16
Degree
X=30
Y=165+10*Cos(LP)
B$=B$+"Let X="+Str$(X)+";Let Y="+Str$(Y)+";P;"
Next LP
For LP=1 To 360 Step 16
Degree
X=30
Y=180+10*Cos(LP)
C$=C$+"Let X="+Str$(X)+";Let Y="+Str$(Y)+";P;"
Next LP
For LP=1 To 360 Step 16
Degree
X=30
Y=195+10*Cos(LP)
D$=D$+"Let X="+Str$(X)+";Let Y="+Str$(Y)+";P;"
Next LP
For LP=1 To 360 Step 16
Degree
X=30
Y=210+10*Cos(LP)
E$=E$+"Let X="+Str$(X)+";Let Y="+Str$(Y)+";P;"
Next LP
A$=A$+" Jump H"
B$=B$+" Jump G"
C$=C$+" Jump I"
D$=D$+" Jump B"
E$=E$+" Jump S"
Channel 1 To Bob 1
Bob 1,320,256,53
Amal 1,"Move 0,0,"+Str$(1*2)+" ; "+A$
Channel 2 To Bob 2
Bob 2,320,256,54
Amal 2,"Move 0,0,"+Str$(2*2)+" ; "+B$
Channel 3 To Bob 3
Bob 3,320,256,55
Amal 3,"Move 0,0,"+Str$(3*2)+" ; "+C$
Channel 4 To Bob 4
Bob 4,320,256,56
Amal 4,"Move 0,0,"+Str$(4*2)+" ; "+D$
Channel 5 To Bob 5
Bob 5,320,256,57
Amal 5,"Move 0,0,"+Str$(5*2)+" ; "+E$
Amal On
Screen Open 2,320,116,8,Lowres
Curs Off : Flash Off : Cls 0
Palette 0,,,,,,,,,$FFF,$903,$33B,$444,$AAA,$88F,$EEE
Screen Open 1,320,116,8,Lowres
Curs Off : Flash Off : Cls 0
Wait Vbl
Dual Playfield 2,1
Wait Vbl
Screen Display 2,,70,,
Wait Vbl
Screen Hide 2 : Screen Hide 1
Screen 1
Wait Vbl
Paste Bob 35,0,58
Flash 1,"(fff,3)(eee,3)(aaa,3)(444,3)(000,3)(444,3)(aaa,3)(eee,3)"
Flash 1,"(fff,3)(eee,3)(aaa,3)(444,3)(000,3)(444,3)(aaa,3)(eee,3)"
LETTER_WRITER[2]
End Proc
Procedure BYE_BYE
Sam Swapped
While Screen<>-1 : Screen Close Screen : Wend
Bob Off : Amal Off : Anim Off : Rainbow Del 1
Auto View Off
Set Rainbow 0,0,300,"","",""
Rainbow 0,0,0,300
For S=0 To 299
Rain(0,S)=$88F
Next S
View
Screen Open 0,320,200,4,Lowres
Curs Off : Flash Off : Cls 0
Colour 1,$88F
Colour 2,$44A
Colour 17,$44A
Colour 18,$88F
Ink 2
Bar 0,0 To 312,200
Hide
Screen Display 0,130,60,,
TXT$="# **** COMMODORE 64 BASIC V2 **** ## 64K RAM SYSTEM 38911 BASIC BYTES FREE"
TXT$=TXT$+"##READY."
TXT$=TXT$+"##MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
TXT$=TXT$+"#MALFUNCTION..MALFUNCTION..MALFUNCTION"
X=2
Y=1
For T=1 To 85
T$=Mid$(TXT$,T,1)
C=Asc(T$)
C=C-64
If C=-32
C=39
End If
If C=-29
Add Y,8 : X=2-8
End If
If C=-22
C=36
End If
If C=<0 and C>-16
Add C,42
End If
If C=-18
C=37
End If
If C<>-29
Paste Bob X,Y,C
End If
Add OF,1
Add X,8
Next T
X=2 : Add Y,8
Sprite 10,128+X,60+Y,38
Channel 1 To Sprite 10
Anim 1,"(38,20)(39,20)L"
Anim On
View
Auto View On
Wait 200
Sprite Off 10
For T=86 To Len(TXT$)
T$=Mid$(TXT$,T,1)
C=Asc(T$)
C=C-64
If C=-32
C=39
End If
If C=-29
Add Y,8 : X=2-8
End If
If C=-22
C=36
End If
If C=<0 and C>-16
Add C,42
End If
If C=-18
C=37
End If
If C<>-29
Paste Bob X,Y,C
End If
Add OF,1
Add X,8
Next T
Wait 40
Unpack 7 To 1 : Screen To Back 1
For T=0 To 19
Screen To Back 0
Wait 5
Screen To Front 0
Wait 5
Next T
For T=0 To 10
Screen To Back 0
Wait Vbl
Screen To Front 0
Wait 3
Next T
Rainbow Del 0
For T=0 To 10
Screen To Back 0
Wait Vbl
Screen To Front 0
Wait Vbl
Next T
Screen 0
Cls 0
For T=0 To 20
Screen To Back 0
Wait Vbl
Screen To Front 0
Wait Vbl
Next T
Screen To Front 1
Screen Close 0
End Proc