LnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!) "ENTER TIMING: ",T(2"ENTER VOLUME: ",V<#1,".AUDIO"F#1 PX=113ZNd128);V);#nN-256*N/256));N/256));#xT-256*T/256));T/256));X#1:".D1/MENU.MAKER"Z$10( 1946,1aa!r *MUSIC.SEED!!r5(ALOHA.OE dr(!r()PRINT.ALL  &NOISES _ !_*.PICK.THAT.TUNE 4sd^"!^:POP2^!ܢTV^!ܢ)MUSIC.DOC  a !!(CAMPTOWN _!_ 'GOODBYE^"!A)GSAVETUNE! ^!LORD.AUDIO1 BY/!q*+LORD.AUDIO2 \ !a-READ.ME.FIRST  O;MIDI2_!_III.BSB.16u' %MUSIC /!C()BGRAF.INV (^!L+CATEGORIES 1^!CHILDRENj^!ܢCOUNTRYN^!ܢDISKNAME.DAT >dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@L836,1733,1636,1544,1457,1376" 1298,1226,1157,1092,1031,973 #1,".AUDIO"(#1 2X=172<N,TF128);60);#PN-256*N/256));N/256));#ZT-256*T/256));T/256));dXn#1Z$".D1/MENU.MAKER"C 1946,5,1946,5,1544,5,1298,5,1298,10,649,5,649,10,772,5,772,10D     `OLIHEDCB?<;8541.+*x  `"hhhhhhhh    HH`XVTRPN.GRAFIX jj# \\JHFD=;9210-,+*)!   v Q )``.`5`=`C`E` `BGRAF (C) APPLE 1980j @@@@ @``` kLK``9(89:9g:h:h L89:mm95:6:6hg gh h 99 O S   L `ee m`iɂ`0`hIhJh\h] wh]h^ w\\ ]] ]L ]L\A \A JHIH`i8\i]i\`\]`K`M %b&*L+ 16>:)    kL GA3/1.01/LINr GRAFIXMO ,649,10B 1946,5,1946,5,1544,5,1298,5,973,10,486,5,486,10,578,5,578,10? 1733,5,1733,5,1157,5,1157,5,1157,20,1376,5,1298,5,772,30 0 973,5,1544,5,1544,10,1733,5,1157,10,1298,5# 1946,10,1946,5,1946,3,1946,100 1946,5,1946,5,1544,5,1298,5,1298,10,649,5,649,10,772,5,772,10 C 2061,5,2061,5,1733,5,1157,5,1157,10,578,5,578,10,729,5,729,10D 2061,5,2061,5,1733,5,1157,5,1157,10,578,5,578,10,729,5,729,10 B 1946,5,1946,5,1544,5,1298,5,973,10,486,5,486,10,649,5LJFE>987410/-   `+(%" Bhhh h h h hh hhhhhh  HH`ZXVTRPNLJHFDB@<;85431hhhh   HH`420.-&#  Phhhhhhhhhh  HH`DB@><:86421.+*)'jhhhhhhhh    X XSOSWRITESWRITERWBUF  RETADDR PLINITCHK sITCHK VIEWPORT VIEWPORTWBUFLEN }UFLEN SOSWRITESWRITERWBUF  xplhd`\XUFLEN SOSWRITESWRITERWBUF ~zvrRETADDR $ INITCHK ITCHK XFROPTIO XFROPTIORANGECHKNGECHKWBUFLEN UFLEN #ITCHK WBUFLEN DUFLEN SOSWRITEGSWRITERWBUF ?:72-(SYSFONT SYSFONT RETADDR njDRAWIMAG DRAWIMAGINITCHK ITCHK WBUFLEN RETADDR INITCHK ITCHK RANGECHKECHKWBUFLEN UFLEN SOSWRITESWRITERWBUF  NEWFONT NEWFONT INITCHK =+SOSWRITE@.!RWBUF  83& INITCHK uITCHK GRAFIXON GRAFIXONWBUFLEN UFLEN SOSWRITESWRITERWBUF zBUF GPGSREQDLGRAFIXMO GRAFIXMORBUFLEN 9RANGECHKwWBUFLEN ASOSWRITERWBUF \SOSREAD GBASADR TSOSSMARK$INITCHK ITCHK INITGRAF INITGRAFWBUFLEN RETADDR ISOSDSTATGSCB kSOSOPEN INITCHK READPARM5CREFNUM DWBUFADR ?BMOVCHK RBUFADR 7WRITEPAR=SREFNUM FRREFNUM 6WREFNUM >INITFLG KSOSCLOSEhhhhhh HHHH`&$<D^Z FpHx  )) y xHHHJJiH 詏 鮀 `}wqnkjba_\[ZYXWVURQ$hhhhhh HH H)HHH`20+*)Hhhhhhh HHHH`&$< 詏 )x `a^]NMJGF>=<10/.+* )) y xHHHJJiH 詏 鮀hhhh  HH`420.,*)&#"! Rhhhhhh    HH`DB@><:983.+('&$h J)` `!0 nljhfdcbQNMLJFEDCBA<;6hhhhhh  HH`420.,*)&#"! Rhhhhhh    HH`DB@><:983.+('&$hhh-&#  P  `"hhhhhh  HH`420.,*)&#"! Rhhhhhh  B B HH`yyP`GB HH`)r` @A>~|zxvtslgbWTSRPMED=hhhh   HH`420.-&#  Phhhh   HH`420.TRETADDR  SETCTAB SETCTAB  INITCHK ITCHK RANGECHKHKWBUFLEN UFLEN SOSWRITESWRITERWBUF  'RETADDR tpINITCHK ITCHK PENCOLOR PENCOLOR RANGECHKNGECHKWBUFLEN UFLEN SOSWRITESWRITERWBUF |x FILLCOLO FILLCOLO YLOC  SDSTATGSCB  INITCHK  ITCHK XLOC XLOC RETADDR     SOSDSTAT SDSTATGSCB   INITCHK  ITCHK YLOC  ASADR SOSSMARK SSMARKRETADDR  z v INITCHK  ITCHK XYCOLOR XYCOLOR RWBUF  F SOSREAD  SREAD RETADDR  SOSDSTATGPGSREQD GSREQDSOSCLOSE SCLOSEGRAFIXMO AFIXMOGLOAD GLOAD RBUFLEN  N RWBUF    SOSREAD  EAD GBASADR GBASADR ( ASADR SOSDSTAT~ SDSTATGSCB  INITCHK { ITCHK CREFNUM  EFNUM RBUFADR  ADR SREFNUM  EFNUM RREFNUM  M WBUFADR   ADR GSAVE GSAVE WREFNUM F  M GPGSREQD5 GSREQDSOSCLOSE> SCLOSEWBUFLEN 8  LEN SOSWRITE; SWRITERWBUF C F INITCHK  ITCHK BMOVCHK  OVCHK INITFLG  ITFLG RWBUF  F SOSDSTAT" SDSTATGSCB % CB INITCHK  ITCHK CREFNUM  EFNUM  T P SOSDSTATj SDSTATGSCB LINEREL LINEREL INITCHK g ITCHK WBUFLEN  UFLEN SOSWRITE SWRITERWBUF } d ` \ X RELEASE RELEASE  RETADDR % ! INITCHK  ITCHK LINETO LINETO WBUFLEN  UFLEN SOSWRITE SWRITERWBUF     CALCABS x q ABS RETADDR CALCABS  ABS RETADDR  SOSDSTAT SDSTATGSCB INITCHK  ITCHK DOTREL DOTREL WBUFLEN  UFLEN SOSWRITE SWRITERWBUF SWRITERWBUF  RETADDR c _ < 8 INITCHK O ITCHK WBUFLEN Y UFLEN SOSWRITE\ SWRITERWBUF T L H D @ DOTAT DOTAT RWBUF ZRNJFCALCABS BRETADDR SOSDSTATSDSTATGSCB  MOVEREL MOVEREL INITCHK ITCHK WBUFLEN UFLEN SOSWRITEWBUFLEN !UFLEN SOSWRITE$SWRITERWBUF BUF RETADDR ieB>INITCHK UITCHK MOVETO MOVETO  WBUFLEN _UFLEN SOSWRITEbSWRITERETADDR INITCHK ITCHK RANGECHKNGECHKWBUFLEN UFLEN SOSWRITESWRITERWBUF  INITCHK ITCHK FILLPORT FILLPORT ?@x? @x("?x?@x?~x <?@x?~x"PLA?x?@x? @@@x--------?X<@x?@x?x **?B @x? @x?xIRST"?@ x?@x?xUNENAME$?@@ @x?@x?x0),A%(S,?x?@x?~x********?x?@x?<xI&P?@x?D @x * * ?x?@x? @@@x"** ?`< @x?@x?>"""">>">"""<>"x * ?q#@p@x? @x?x** * ?@x?rscar@``a@B@`r@x?x ?~x?@x?x **** ?x?@x?@@@x ?x?@x?|`x ?`@x?$ @xYT?x?@x? D@@xF.INV ?@| @x?@x?"""""""6""""xDWID?~x? @x?xRAWIMAGE?@x?0@@@B@@x?x%15)K?@ x?@x?x%(0,16)= "#$%&'()*+,-./0?x?@x?`@@x'  ?x?@x?xx(X#?x?@x?@@xERS HERE?x?r`arpc@paapBpprC@x?x@J" ?@ x?@x?xLECTION ?@@ @x?@x?"">"<>"xSTARTP?x?@x? p@xF 42?x?@x?`@@x,42,2,44?BH@@@x? @x?xR ****?`@x? @x46,2,44,?@( x?@x?xHILL"?~x?@x? <"*""*"**x,1,39,2,?x?@x?@`@x "COME?0x?PrRr@pA0@pB@Rr@x?xHAPPY BI?x?@x?@x);TI?x?@x?@@@x35,8245?Q @ @x?`@x?x28);"T?~x? @xNOTE ROU?@ x?@x?xS INCORR?@@ @x?@x? "" ""&""""""&&x***+?x?@x? @@xJ=0?x?R@@BP@B@2@@x?x=> ";REP?x?@x?>@x' TO CON?x?@x?~x--------?b@x? @x?x@TUNE?@@p@x? @xORE%(I)=?@ x?@x?x-?@@ @x?@x?" """"""""""""x$(I);" N?x?@x?@@@xSS TUNE ?x?2@@B@"A@@@x?x:<?@x?`<p@xBID%(?x?@x? @@xBIDDER ?~x?@x?xBID INFO?| @x? @xP L A Y ?x?@x?~x *?P@x?P@@P@rC@@x?x,1,44,2,?@H x?@x?x2,1,51,1?@x @x?@x?  " >2"> *> 222x,2,48,3,!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(2HIGHSCORE6 9^22HIGHSCORE7 :^22HIGHSCORE8 ;^22HIGHSCORE9 <^22(NOTEFILE F ^h 2TUNEFILE D^h 2^22HIGHSCORE15 B^22HIGHSCORE16 C^22HIGHSCORE2 5^22HIGHSCORE3 6^22HIGHSCORE4 7^22HIGHSCORE5 8^223POPv^' 'HIGHSCORE1 4^22HIGHSCORE10 =^22HIGHSCORE11 >^22HIGHSCORE12 ?^22HIGHSCORE13 @^22HIGHSCORE14 A<!((g %(r(z(q( %y(i(0z %"#$ %&' $"#$%&'   `%$%ɠ%* " ~#C #p $ %*0"#)#)i $"% * %*  L! {" j% %ƌ(X#!POP MUSIC TUNES !POP!COUNTRY & WESTERN TUNES!COUNTRY!CHILDREN TUNES !CHILDREN!TV TUNES !TV!END!ENDz(q( %y(a(0: %   "$%&e$'e% R % <?BHH@x? @x?x ****F?@x?  @x !OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(,-,)*$")*,-,)1/-,,%' %')*%'/1431431/' ')+ )+,EGHIJKLM11.)))$*))*,%'))*,,*)'../11/.,*,. )/1//)*''.,.)*)'.131.0,..331..,*)))%'''$)))%***)1erican Pie!I Only Have Eyes For You!You Don't Bring Me Flowers!Sweet Caroline!Morning Has Broken!Can't Smile Without You!Can You Read My Mind?!Time In A Bottle!Good Morning Starshine!And I Love You So! Hawaii Five-O!END*,,,!Scarborough Fair!Beethoven's Fifth!Come Saturday Morning! Georgy Girl!People! Moon River!The Sound Of Music!The Rainbow Connection!The Entertainer!#I'd Like To Teach The World To Sing!Somewhere Over The Rainbow!Honey!Love Me Tender!Aquarius! Am!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(.,310.,*,%0.,*,%' )%,)'%,)'131/.,*)'))*,*)')*,./131/),1355*,113'),01.,.),135)'()1)NHIGHSCORE6 U^2NHIGHSCORE7 V^2NHIGHSCORE8 W^2NHIGHSCORE9 X^2N(NOTEFILE b ^h NTUNEFILE `^h N^2NHIGHSCORE15 ^^2NHIGHSCORE16 _^2NHIGHSCORE2 Q^2NHIGHSCORE3 R^2NHIGHSCORE4 S^2NHIGHSCORE5 T^2NOCOUNTRYv^' 'HIGHSCORE1 P^2NHIGHSCORE10 Y^2NHIGHSCORE11 Z^2NHIGHSCORE12 [^2NHIGHSCORE13 \^2NHIGHSCORE14 ]0.5330,5853 ./../.,+.'',.0.1 ,.010..,+.' ,+.',.01*%*,.0)))*,.*)*)'%,,,)),0.)))',))),...,,,,./..../../.,+.'',.0.1 ,.010..,+.' ,+.),0.)0.0%),53*1010.%')')%),53-435..0../.%),130.,.0.,%'),.,''' ,),1+,..,++,'.,++,'0" ) ""**)*)))""**./11,.///.,*,...,*%),%,13.,'333'),*)' '),.,*,*' ,.031010/-),,%', "**1 310.,.,.00..,.01 31.,. ,31100.,.33333111100311..,./ //,/,',+,.).,+)+,',+,.).,+)+,0.01.*,%10,.01%., "*)%')*'$%')%,% 1.1.311.1.1.1)11345135031'()1)1)'%'*'%'**,.,.,.,.1.,.!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!Am I Losing You?!Crazy!Green, Green Grass Of Home!Snowbird! Rose Garden!King Of The Road! Delta Dawn!Here You Come Again!Everything Is Beautiful! Galveston!It Was Almost Like A Song!Make The World Go Away!$The Most Beautiful Girl In The World!On,,)...,.,.01351,',00.,.,),',0,0310.3100.,$"!!"$,,,0000.,,,,000.0.,.00,,,,)%%%')*,---+-..-+)----+-.-+)-++.02- +-.0.-+)()+)'&$) 1110.,*')*)',.01010.01010.01 )-01500.,$$'***,*),**)'*) )'%)' '''%$'% 10.1110.*00000.11./.., ')*,.,,%311.,.111311 .111.*'**,.,.%**..,*1 1311+++/$ ++++*+*&&(!((&(+$((.11.3.1,)')*0,.%%%1,)')*,,01310*,...,**'%%'**,%',,**))'')*,)' 10.,+) ..0110..,,00.,,+) ..acdefghi31/,##%)/366343311/./1/,**//11/./1100.., .,.,8=AFD%')*)'<?BFD .,.,#%),1/,-11%'#'*4 The Road Again!Stand By Your Man!Stop And Smell The Roses!Dixie!Red River Valley! Amazing Grace!I'm Leaving It All Up To You! Good Ol' Boys!Gentle On My Mind!Rhinestone Cowboy!(What A Difference You've Made In My Life!I Honestly Love You!END %)%)'%"  %))',),,)% * %)  111111.0.* 010.,,,,.,,1,./.131*.1311*--*-,***('%"%%,,,,,,,!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!PEGj!DAVE!russellnEN!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(jHIGHSCORE6 q^2jHIGHSCORE7 r^2jHIGHSCORE8 s^2jHIGHSCORE9 t^2j(NOTEFILE ~ ^h jTUNEFILE |^h j^2jHIGHSCORE15 z^2jHIGHSCORE16 {^2jHIGHSCORE2 m^2jHIGHSCORE3 n^2jHIGHSCORE4 o^2jHIGHSCORE5 p^2jkCHILDRENv^' 'HIGHSCORE1 l^2^jHIGHSCORE10 u^2jHIGHSCORE11 v^2jHIGHSCORE12 w^2jHIGHSCORE13 x^2jHIGHSCORE14 y'(((*,*'%%% ***'**  ))))*, ))))*,)))))*,,,*)"$''''%$* '*,,,,*(/ /133334'***',*%'***,',,,,,.,)'%'****'**  ))))*, ))))*,)))))*,,,!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(531351 5568865685 11,11111355555 88:851355331}033530,.,,.,10,,.,31,,8510.665131,111155)))')*))'''%')%%)))')*..,,.033530,.00.,.,.e Jacques! London Bridge!Here We Go Looby Loo!I'm A Little Teapot!Froggie Went A Courtin'! Billy Boy!Go In And Out The Window!On Top Of Old Smokey!I'm An Old Cowhand!The Muppet Show Theme!The Erie Canal! Jack Sprat!Hush Little Baby!END,!For He's A Jolly Good Fellow! Oh! Susanna!Happy Birthday!The Eensie Weensie Spider!Farmer In The Dell!The Old Gray Mare!Jack & Jill Went Up The Hill! Old King Cole!Blow The Man Down!Mary Had A Little Lamb!Hickory Dickory Dock! Humpty Dumpty! Frer!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(, %%%'))()(%''&'&$))()(% %1,.,1,.,5310.,**3*))1)'.,11333555666555331 11113335,,.,)HIGHSCORE6 ^2HIGHSCORE7 ^2HIGHSCORE8 ^ 2HIGHSCORE9 ^ 2(NOTEFILE ^"h TUNEFILE ^!h ^!2HIGHSCORE15 ^!2HIGHSCORE16 ^!2HIGHSCORE2 ^2HIGHSCORE3 ^2HIGHSCORE4 ^2HIGHSCORE5 ^2TVv^' 'HIGHSCORE1 ^2HIGHSCORE10 ^ 2HIGHSCORE11 ^ 2HIGHSCORE12 ^ 2HIGHSCORE13 ^!2HIGHSCORE14 35311,55653 1%'))).''***,,....')*')'..''***1,*)'%%)')+,,,%..0)1.,.)',55565333,333311.0.,)),*)*1%'))).''***,,....')*')'..''*')*)'%%%),,)%'''*)%,,)%'''*),),...11.0.0,1,156533,035315,156533886%%),1 ..*,.,%%),, .,1,15888888:851)*,,,,1)*,,.,)*,,,,1)))'' 31/.,* %')*,1.1,**))''%10.10,..,111111151,*)*,')*)*,,.,*)*,',)%,***.*1***.*,***.*11*,*)...,,,*,*%')%%')%)*,)*,,.,*)%,.,*),.'')')*,*)'))),*')))),,**.,.,*%%))')'%)),,%),.,),.*)*'**,*'$'*)'%')))'''),,)'%'))))!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPEN!OPEN!OPEN(!OPENOPEN!OPEN(!M*A*S*H! The Love Boat!One Day At A Time!Taxi! Nero Wolfe!Shogun!Starsky & Hutch!Soap!Laverne And Shirley!Chips! Solid Gold!Charlie's Angels!$Remembering You (All In The Family)! Hart To Hart!All In The Family!Fantasy Island! Happy Days! Star /3565).256863353%/ .,*)((%1 /.,*)(' )+,.013( '' 1.,*,785 475,++*+.,3 1015:-8896 %*.1353',1. *.*,. ,*)*)' '(*,./1 '()%'*,.***,.13..31.,*13566 38651*,.:8686161060/6/.21%')*,..-.310.,")"$)$%')'""$$%%$ "$%'010 .310103.01.,****,*)'%*,../.*,,1168 .,*.,*1.,1168 .,*''.113-,*'%1363631.*136531.+5336031/..../3%),.131.*)'+,.031/-,13/-4::886633--,,**31*,.1,'*%*#'**./1,-./01..,./01**)*,-.11.1 .010)),. ..0+.0.')+,,,+))')+++0..0*./11161/././., .,.,.,*.,*,*,*),*, .010)),. .1133 .),Trek! Mork & Mindy!Vegas!The Jeffersons!Masterpiece Theatre!The Facts Of Life! Fallen Angel!The Young And The Restless!END'***,,....')*')'..''*1.%%*.1/,%%),/..,.*)*,*)*'*,'..12:%.,.,,,%%1.'.,./'')),0.,.,),000.,,,.35/,.753.357 TABLE DESCRIPTIONS ****J **** **** I **** CONVERT%(5) CONTAINS ACTUAL TUNE NUMBER FOR THE ****I **** FIVE TUNE POSSIBILITIES ) 1œ6050. **** LOAD OCTAVE #1 VALUES **** I=1121 NOTE%(I)II ***************************************************************I **** ****I **** **** CTGNAME$(10) CONTAINS CATEGORY FILE NAMES ****I **** ****I ***************************************************************"),CATEGORY$(10),NOTE%(12),CTGNAME$(10IONS ****I **** ****I **** CATEGORY$(10) CONTAINS THE FULL CATEGORY NAMES ****I **** NOTE%(12) CONTAINS THE FIRST OCTAVE VALUES ****I "I=11500IJ *************************************************************** I **** ****I **** TABLE DESCRIPT6050DMODE%=128:VOL%=63:HBEAT%=3:".D1/BGRAF.INV",".d1/GOODBYE":RESETGRAFIXMODE(%0,%1)$GLOAD.".D1/GSAVETUNE":GRAFIXON]BLANKS$=" "IBLANK2$=" *KP *********************************************************************Z_*d **** OCTAVE #1 VALUES **** In 15564,14691,13866,13088,12353,11660,11006,10388,9805,9255,8735,8245x#2,".GRAFIX":#1,".AUDIO" œ *K2 * *K< * (C) 1982 RANDALL P. SWEARINGEN *KF * K *********************************************************************K * *K * P I C K T H A T T U N E *K( * $)0."'., .0 , :8778:'0,,),,,),,,,+)'$%), )'*, ,'0 10.3 10.,+'.+3110.310'0 10$)0."'., .0 ,+08753578::::<:8778:'0,,),,,),,,,+)'$%), )'* ****I **** ****I **** SCORE&(9) CONTAINS THE CURRENT SCORES ****J **** **** I **** BID%(9) CONTAINS THE CURRENT BIDS ****J **** **** I **** REPEATS%(50) CONTAINS A '1' IF THE TUNE HAS BEEN ****I& **** PLAYED OTHERWISE CONTAI,A%(S,6,0),A%(S,6,1),A%(S,7,0),A%(S,7,1),A%(S,8,0),A%(S,8,1),A%(S,9,0),A%(S,9,1),A%(S,10,0),A%(S,10,1)t#3;A%(S,11,0),A%(S,11,1),A%(S,12,0),A%(S,12,1),A%(S,13,0),A%(S,13,1),A%(S,14,0),A%(S,14,1),A%(S,15,0),A%(S,15,1),A%(S,16,0),A%(S,16,1),A%(S,17,0),A%(TEFILE$=".D1/"+CTGN$+"/"+"NOTEFILE" Qœ6050V#3,NOTEFILE$ [œ6050%]ERRORIND=1ERRORIND=0:#3:1105`S=0501j#3;A%(S,0,0),A%(S,0,1),A%(S,1,0),A%(S,1,1),A%(S,2,0),A%(S,2,1),A%(S,3,0),A%(S,3,1),A%(S,4,0),A%(S,4,1),A%(S,5,0),A%(S,5,1)$ œ6050%ERRORIND=1ERRORIND=0:#3:1005I=0501#3;TUNENAME$(I)TUNENAME$(I)="END"MAXS=ITUNENAME$(I)="END"I=50$I )œ6050.#3)8 **** LOAD ALL TUNE NOTES ****)B **** INTO TABLE A% ****)LNOLASTCAT$1210YBLANKS$:BLANKS$:20);"ONE MOMENT PLEASE WHILE I MEMORIZE THE ";CTGN$;" TUNES ..";( **** LOAD TUNE TITLES **** )TUNEFILE$=".D1/"+CTGN$+"/"+"TUNEFILE")TUNEFILE$=".D1/"+CTGN$+"/"+"TUNEFILE" œ6050#3,TUNEFILE4::33);"ENTER SELECTION HERE ===> ";:PRESS$CTG=PRESS$):CTG>0CTG=+4 H34);"C A T E G O R I E S""R33);"_____________________"D\=22:" ": fI=1C-1p33);I;") ";CATEGORY$(I)zI#3,".D1/CATEGORIES"  + **** LOAD CATEGORY NAMES ****  C=110 #3;CATEGORY$(C),CTGNAME$(C)CATEGORY$(C)="END"773C#3 LASTCAT$=CATEGORY$(CTG)I=02000 I *::V4"-----------------50),PLAY$(9),HIGHNAME$(19),HIGHSCORE&(19),TUNENAME$(50),A%(50,25,1),NUM$(9),HIGHFLAG(19),S$(9)ADDL$="Y":S$(0)="99 ":S$(1)="Qq ":S$(2)="Mm ":S$(3)="Pp ":S$(4)="-- ":S$(5)="Vv ":S$(6)="Uu ":S$(7)="Zz ":S$(8)="// ":S$(9)="Rr "RANDY=1:6050 œ6050 PLAYER IS CURRENT TOP TEN PLAYER **** I **** ****J *************************************************************** CONVERT%(5),SCORE&(9),BID%(9),REPEATS%( ****J **** **** I **** HIGHFLAG(19) CONTAINS A '1' IF THE PLAYER IS A ****I **** CURRENT PLAYER AND A '0' IF THE ****J **** **** I **** A%(50,25,1) CONTAINS CURRENT CATEGORY NOTE VALUES ****I **** ****I **** NUM$(9) CONTAINS PLAYER CODES ****Jv **** HIGHSCORE&(19) CONTAINS SCORES FOR HIGHNAME PLAYERS **** I **** ****I **** TUNENAME$(50) CONTAINS CURRENT CATEGORY TUNE NAMES ****J **** HIGHNAME$(19) CONTAINS THE TOP TEN PLAYERS NAMES **** IX **** IN 0 THRU 9 AND THE CURRENT PLAYERS ****Ib **** NAMES IN 10 THRU 19 ****Il **** NS A '0' ****J0 **** **** I: **** PLAY$(9) CONTAINS THE PLAYERS NAMES ****ID **** ****JN **** S,17,1)~#3;A%(S,18,0),A%(S,18,1),A%(S,19,0),A%(S,19,1),A%(S,20,0),A%(S,20,1),A%(S,21,0),A%(S,21,1),A%(S,22,0),A%(S,22,1),A%(S,23,0),A%(S,23,1),A%(S,24,0),A%(S,24,1),A%(S,25,0),A%(S,25,1)A%(S,25,1)=9S=50&S=0S=5S=10S=15S=20".";S œ6050#3- **** DEFINE GAME WORK TABLES ****NUM$(0)=" FIRST "NUM$(1)="SECOND "NUM$(2)=" THIRD "NUM$(3)="FOURTH "NUM$(4)=" FIFTH "NUM$(5)=" SIXTH "NUM$(6)="SEVENTH"NUM$(7)="EIGHTH " NUM$(8)=" NINTHVARIATION #";V$EV$<>R$LASTCAT$<>CATEGORY$(CTG)34);"ONE MOMENT PLEASE ...",V$<>R$LASTCAT$<>CATEGORY$(CTG)4030,V$<>R$LASTCAT$<>CATEGORY$(CTG)=-1=24);"( Press any key except 'B' to continue )":PRESS$I PRESS$="B"PO%=3REPEAT$="NO"NOTA$="YES"V$="14".O%=4REPEAT$="YES"NOTA$="YES"V$="15"-O%=4REPEAT$="NO"NOTA$="YES"V$="16" P%=V$)J16);" "6:25);"YOU WILL BE PLAYING GAME "NO"NOTA$="NO"V$="8"-lO%=1REPEAT$="YES"NOTA$="YES"V$="9"-vO%=1REPEAT$="NO"NOTA$="YES"V$="10".O%=2REPEAT$="YES"NOTA$="YES"V$="11"-O%=2REPEAT$="NO"NOTA$="YES"V$="12".O%=3REPEAT$="YES"NOTA$="YES"V$="13"-NOTA$="NO"V$="2",0O%=2REPEAT$="YES"NOTA$="NO"V$="3"+:O%=2REPEAT$="NO"NOTA$="NO"V$="4",DO%=3REPEAT$="YES"NOTA$="NO"V$="5"+NO%=3REPEAT$="NO"NOTA$="NO"V$="6",XO%=4REPEAT$="YES"NOTA$="NO"V$="7"+bO%=4REPEAT$=-1:=77:" ";::"N"::PRESS$="Y"PRESS$="y"PRESS$="N"PRESS$="n"1810 =16:X" PLEASE ENTER 'Y' OR 'N' "::7):=-4:1720 R$=V$,O%=1REPEAT$="YES"NOTA$="NO"V$="1"+&O%=1REPEAT$="NO"WANT 'NONE OF THE ABOVE' TO BE A TUNE CHOICE (Y OR N) ";:=-2 PRESS$IPRESS$="B"PRESS$="b"=-2:BLANKS$:BLANKS$:BLANKS$:=-5:1620BPRESS$="Y"PRESS$="y"NOTA$="YES":=-1:=77:" ";::"Y":APRESS$="N"PRESS$="n"NOTA$="NO":=PRESS$="y"PRESS$="N"PRESS$="n"1710 =16:V" PLEASE ENTER 'Y' OR 'N' "::7):=-3:1620I16);" "::" QUESTION #3 ";:S16);"DO YOU (Y OR N) ";:=-2 hPRESS$JrPRESS$="B"PRESS$="b"=-2:BLANKS$:BLANKS$:BLANKS$:=-11:1390D|PRESS$="Y"PRESS$="y"REPEAT$="YES":=-1:=74:" ";::"Y":CPRESS$="N"PRESS$="n"REPEAT$="NO":=-1:=74:" ";::"N"::PRESS$="Y" DEDUCT ALL OF TUNE POINT VALUE FOR WRONG ANSWER"::=+2 @=-1:=62:" ";::PRESS$:NJ16);" ":T:" QUESTION #2 ";:P^16);"DO YOU WANT GUESSED TUNES TO BE USED AGAIN LATER "::=+5d"O%=2PENALTY=.25:=-5::=16:"2) DEDUCT 1/4 OF TUNE POINT VALUE FOR WRONG ANSWER"::=+4c,O%=3PENALTY=.5:=-4::=16:"3) DEDUCT 1/2 OF TUNE POINT VALUE FOR WRONG ANSWER"::=+3b6O%=4PENALTY=1:=-3::=16:"4)SS$)9PRESS$="B"PRESS$="b"LASTCAT$=CATEGORY$(CTG):810O%>0O%<51560?=16::"PLEASE ENTER A NUMBER BETWEEN 1 AND 4, INCLUSIVE";7):=-2::1480O%=1bO%=1PENALTY=0:=-6::=16:"1) NO PENALTY FOR WRONG ANSWERS point value for wrong answer":" ";:B16);"4) Deduct all of tune point value for wrong answer":" ":" ";:L16);"WHICH PENALTY OPTION DO YOU WISH TO USE? ===> ";:=-2:PRESS$O%=PRE:" ":" ";:Bx16);"1) No penalty for wrong answers ":" ";:B16);"2) Deduct 1/4 of tune point value for wrong answer":" QUESTION #1 ";:B16);"3) Deduct 1/2 of tune "NUM$(9)=" TENTH "- **** SELECT DIFFICULTY LEVEL ****(2V<"------------------------------ GAME VARIATION SELECTION -----------------------"FP1,380,24:Z::" ";:'d16);"PENALTY SELECTION OPTIONS:"*nRESS$="b"=-3:BLANKS$:BLANKS$:BLANKS$:=-7:17200 **** COLLECT PLAYER INFORMATION **** *W4"---------------------------------- PLAYER INFORMATION --------------------------">H20,380,24:=R" ENTER THE NUMBER OF PLAYERS HERE ===> ";P$:P%=P$)\fP%>0P%<112180;p:"PLEASE ENTER A NUMBER BETWEEN 1 AND 10, INCLUSIVE";z:7):=0:213020,580,24::P=P% P=P-1 stm=0$P=0" WHAT IS YOUR NAME ";9P<>0" WHAT IS THE ";NUM$(0);" PLOR N)";:PRESS$" PRESS$="N"PRESS$="n"3120. PRESS$="Y"PRESS$="y"BID%(I)=BID%(I-1)" PRESS$="Y"PRESS$="y"3180  =19:N& " PLEASE ENTER 'Y' OR 'N' "::7):=-3:3060A0 28);" CHOICE$="NO" BID%(I)=BID%(I)-1 I=0stm=13120 BID%(I)=BID%(I-1)3120  CHOICE$="YES"? 19);"DO YOU WANT TO GUESS NOW WITHOUT HEARING ANY NOTES" SAVEBID%=BID%(I)Q 26);"FOR A ";260-((BID%(I-1)+1)*10);" POINT POWER PLAY? (Y  c=0P1: stm<>1i=c stm=1i=co) h=(80-16-play$(i))-bid%(i))))/2, stm=131);"YOU HAVE 25 NOTES":2980; BID%(I)=1h);PLAY$(I);" YOU HAVE ";BID%(I);" NOTE"= BID%(I)<>1h);PLAY$(I);" YOU HAVE ";BID%(I);" NOTES" I=0P-11 J=(I+1)P1" BID%(J)"B"PRESS$<>"b"2820+ =-2:BLANKS$:BLANKS$:=-4:Z=P:26601 **** DETERMINE LOWEST BIDDER ****  P=02890  i=0p-1 j=(i+1)p score&(j)252750 BID%(I)=P%:2780 =15:P "**** PLEASE ENTER A NUMBER BETWEEN 1 AND 25, INCLUSIVE ****";:=-2:7) :=-1:2690 Ig BLANKS$:22);"( Press any key except '27);"_____________";49);"_______"F P 1,780,24:Z Z=0 d I=ZP*n 51);" " x =-1% 28);PLAY$(I);51);" ";:=-2 P$:BLANKS$! (P$="B"P$="b")I=02750X (P$="B"P$="b")I<>0=-3:BLANKS12575+ d=09:z$=s$(d),1,2)+"0":s$(d)=z$:d co=0 2820 :- **** COLLECT BID INFORMATION ****V "--------------------------------- BID INFORMATION -----------------------------"( :&2 28);"P L A Y E R";50);"B I D"*< STM=17000 S=1)*MAXS) S=1)*MAXS) REPEAT$="YES"2530 REPEATS%(S)=12480 REPEATS%(S)=1 TUNECNT%=TUNECNT%+1 STARTPT=1)*5) STARTPT=S-STARTPT STARTPT<0STARTPT=0' STARTPT>(MAXS-5)STARTPT=(MAXS-5) stm<> "\ " ( Press any key except 'B' to continue )":PRESS$:PRESS$<>"B"PRESS$<>"b"2475- stm=0:=-2:blank2$:blank2$:=-4:2441" =-1:BLANKS$:=-4:Z=P:2340, **** TUNE SELECTION ROUTINE ****SIC' (Y OR N) ? ";ANS$:ANS$=""ANS$="I"C "bB",ans$)=-2:blank2$:blank2$:blank2$:=-5:z=p:2340 "yYnN",ans$)2445M :" PLEASE ENTER 'Y' OR 'N' "::=-3:7);:2441 "Yy",ans$)stm=1; " ,L ANS$)<>0ANS$<>"B"ANS$<>"b"2420%V (ANS$="B"ANS$="b")I=020801` =5::" PLEASE ENTER A NAME ";7)j :=-2:2350t PLAY$(I)=ANS$9~ " " IF :" Play 'STOP THE MU P=02441 Z=1$ I=ZP1. P=0" WHAT IS YOUR NAME ";:=23:" WHAT IS THE ";NUM$(I);" PLAYER'S NAME ";:=-22 8 ANS$JB (ANS$="B"ANS$="b")I<>0=-1:BLANK2$:BLANK2$:=-4:I=I-1:2350AYER'S NAME ";$ANS$:ANS$="B"ANS$="b"20808ANS$)>0ANS$)<21PLAY$(0)=ANS$:BLANK2$:2320=53ANS$)=0" PLEASE ENTER A NAME ";4ANS$)>20"NAME MUST BE 20 LETTERS OR LESS"; 7) =-2  2200 "{: CHOICE$="YES"20);"( Press any key except 'B' to hear your notes )":24);"( Press any key to hear your notes )" D PRESS$HN (PRESS$="B"PRESS$="b")CHOICE$="YES"=-1:BLANKS$:=-3:3060 X 4710^ stm<>1j<>03170&_ q=0p:s$(q),3,1)="0"i=q:q=p` qb CHOICE$="NO"g j=0Al 28);" "v H=(79-(PLAY$(I))+26))/2J H);PLAY$(I);" PICK THAT TUNE FOR ";260-((BID%(I)+1)*10);" POINTS": J "FLAG(T+X+1)=1HIGHSCORE&(T+X+1)=SCORE&(X)X T=T+P+1I=0(T-1)1J=(I+1)T1'HIGHSCORE&(I)>HIGHSCORE&(J)4420GHIGHSCORE&(I)=HIGHSCORE&(J)HIGHFLAG(I))<=HIGHFLAG(J))4420HOLDSCORE&=HIGHSCORE&(J)HIGHSCORE&(J)=HIG, *********************** RETURN *********************6@IJ *************** SORT CURRENT SCORES WITH TOP TEN SCORES *********T ^I=019hHIGHFLAG(I)=0rI |T=HOLDTX=0P1HIGHNAME$(T+X+1)=PLAY$(X)HIGH#34090*FILENAME$=".D1/"+CTGN$+"/HIGHSCORE"+V$ œ6050#3,FILENAME$ œ6050%ERRORIND=1ERRORIND=0:#3:4045X=091"#3;HIGHNAME$(X),HIGHSCORE&(X)XHIGHSCORE9&=HIGHSCORE&(9) œ6050#3 T=X-1 HOLDT=T"I6*COUNT%/256));COUNT%/256));2x#1;TIME%-256*TIME%/256));TIME%/256));I *********************** RETURN *********************I ******************** LOAD TOP TEN SCORES ROUTINE **************** žHE TUNE WAS ";::TUNENAME$(S): I=0:rep=1 BID%(I)=24 4710REPEATS%(S)=0(TUNECNT%=TUNECNT%-12: <3360FIP *********************** PLAY A NOTE ROUTINE *********************Zd#1;MODE%);VOL%);5n#1;COUNT%-25CONTINUE )"P<>cPRESS$c2 **** TUNE STUMPED PLAYERS ROUTINE ****:P=022);"YOU WERE NOT ABLE TO PICK THAT TUNE !!!"9P<>023);"NOBODY WAS ABLE TO PICK THAT TUNE !!!" H=(79-(TUNENAME$(S))+9))/2=H'"TH=(79-TUNENAME$(CONVERT%(TUNENO)))-20)/2tTUNENO=5NOTA$="YES"20);"I'M SORRY, 'NONE OF THE ABOVE' IS INCORRECT":H);"I'M SORRY, '";TUNENAME$(CONVERT%(TUNENO));"' IS INCORRECT"~SCORE&(I)<0SCORE&(I)=01P<>c28);"( PRESS ANY KEY TO PRESS$="c"3640 =20:3$" PLEASE PRESS 'C' OR 'E' ".:7):=-2:3580(8TUNECNT%>=MAXSREPEAT$="NO"4960 B2480LV9`SCORE&(I)=SCORE&(I)-(260-((BID%(I)+1)*10))*PENALTY)"estm=1s$(i)=s$(i),1,2)+"1".j______";49);"__________"  1,880,24: J=0P12 28);PLAY$(J);47);:"3#&3#&3#";SCORE&(J) J :F 20);"( Press 'C' to continue or 'E' to end game ) " PRESS$"PRESS$="E"PRESS$="e"4960"PRESS$="C"3:3420Wz " PLEASE PRES S 'S' OR 'C' "::7):=-3:3420 :U "---------------------------------- CURRENT SCORES ----------------------------" ::* 28);"P L A Y E R";50);"S C O R E"- 27);"_______)4850> JH IHR 13);"( Press 'S' to see scores or 'C' to continue to next tune )"*\ PRESS$:PRESS$="C"PRESS$="c"3640"f PRESS$="S"PRESS$="s"3460_p :=13::" PLEASE PRESS 'S' OR 'C' "::7):=-CORE&(I)=SCORE&(I)+260-((BID%(I)+1)*10)) :  ::0 H=(79-(TUNENAME$(CONVERT%(TUNENO)))+10))/2] 32);"THAT IS CORRECT !!!"::H);"THAT TUNE WAS ";::TUNENAME$(CONVERT%(TUNENO)):: I=0P-11* J=(I+1)P14 SCORE&(J)>SCORE&(IP$,Z,1)="3"P%=3:3230 P$,Z,1)="4"P%=4:3230 P$,Z,1)="5"P%=5:3230 Z P%<1P%>53260 TUNENO=P% 3300 =21:1 "CHOICE MUST BE BETWEEN 1 AND 5, INCLUSIVE"; 7): =-2:3210 CONVERT%(TUNENO)<>S3660/ S ENTER YOUR CHOICE HERE ===> ";P$:P%=P$)l (P$="B"P$="b")CHOICE$="YES"=-3:BLANKS$:BLANKS$:BLANKS$:BLANKS$:=-6:BID%(I)=SAVEBID%:3060 Z=1P$) P$,Z,1)="1"P%=1:3230 P$,Z,1)="2"P%=2:3230 HSCORE&(I)HIGHSCORE&(I)=HOLDSCORE&HOLDNAME$=HIGHNAME$(J)HIGHNAME$(J)=HIGHNAME$(I)HIGHNAME$(I)=HOLDNAME$&HOLDFLAG=HIGHFLAG(J)0HIGHFLAG(J)=HIGHFLAG(I):HIGHFLAG(I)=HOLDFLAGDJNI"XSCORE&(0)<=HIGHSCORE9&4520 bBLANKS$2l35);"ONE MOMENT PLEASE ... " qœ6050v#3,FILENAME$ {œ6050%}ERRORIND=1ERRORIND=0:#3:4465I=091"#3;HIGHNAME$(I),HIGHSCORE&(I)I œ6050#3I *********************** RETURN **27);"_____________";49);"___________"I=091HIGHFLAG(I)=05640cHIGHSCORE&(I)>99999928);::HIGHNAME$(I);::48);::"3#&3#&3#";HIGHSCORE&(I)::5650]HIGHSCORE&(I)>99928);::HIGHNAME$(I);::52);::"3#&3#";HI"5820 ^:=23:1h" PLEASE TYPE 'Y' OR 'N' "r |7) =-3=-1:5440:V"----------------------------------- TOP TEN SCORES ----------------------------":*28);"P L A Y E R";50);"S C O R E". PLEASE ENTER 'Y' OR 'N' "; 7) "=-1,=-1:BLANKS$:=-1:53406`@" DO YOU WANT TO PLAY ANOTHER GAME? (Y OR N) ";:=-8:PRESS$"JPRESS$="Y"PRESS$="y"5670"TPRESS$="N"PRESS$="nOR FIRST PLACE ......." 32);"I SUGGEST A REMATCH"_" DO YOU WANT TO SEE THE TOP TEN SCORES FOR GAME ";V$;"? (Y OR N) ";:PRESS$"PRESS$="Y"PRESS$="y"5530"PRESS$="N"PRESS$="n"5430 =16:A" THE WINNER WITH ";:"3#&3#&3#";SCORE&(0);:" POINTS":5330\SCORE&(0)>999H);"YOU ARE THE WINNER WITH ";:"3#&3#";SCORE&(0);:" POINTS":5330CH);"YOU ARE THE WINNER WITH ";:"3#";SCORE&(0);:" POINTS" 5330323);"THERE IS A TIE FNT%>=MAXS28);"I DON'T KNOW ANY MORE TUNES"PZP=05330dSCORE&(0)=SCORE&(1)5310nH=(79-(PLAY$(0))+16))/2.xH);"CONGRATULATIONS ";PLAY$(0);" !!!!!"H1=SCORE&(0))H=(79-(H1))+27))/2bSCORE&(0)>999999H);"YOU ARE ___";49);"__________"1,780,24  I=0THIGHFLAG(I)=05170(I<1028);HIGHNAME$(I);47);:"3#&3#&3#";HIGHSCORE&(I);:58);" IN THE TOP TEN !!!":28);HIGHNAME$(I);47);:"3#&3#&3#";HIGHSCORE&(I)2I<9FTUNEC tI=0P-11~J=(I+1)P1SCORE&(J)>SCORE&(I)4850JI 4190R"----------------------------------- FINAL SCORES --------------------------"*28);"P L A Y E R";50);"S C O R E"-27);"__________Y$(J)=HOLDNAME$BSCORE&(J)=HOLDSCORE&#Gds$=s$(j):s$(j)=s$(i):s$(i)=ds$LIV *********************** RETURN ***************************)` **** HIGH SCORE ROUTINE *****Cj **** DISPLAY FINAL SCORES AND DETERMINE WINNER *********************I ********** SWITCH PLAYER DATA DURING SORT ROUTINE ***************HOLDBID%=BID%(I)HOLDNAME$=PLAY$(I)HOLDSCORE&=SCORE&(I)BID%(I)=BID%(J)PLAY$(I)=PLAY$(J)$SCORE&(I)=SCORE&(J).BID%(J)=HOLDBID%8PLAAT%J=1A=A-1:4785 3940j=1bid%(i)=a:a=25A REP=0  ******Nq=0p:(s$(q),1,1)=ŝ)s$(q),2,1)=ŝ))s$(q),3,1)="0"i=q:j=1q J=1 4801I *********************** RETURN **********1stm=04719,hstm=1i=09:bid%(i)=24::co=co+1:i=0 n4801oa=0bid%(i)pA%(S,A,0)=04795zOCT=A%(S,A,0)/12)#(OCT*12)<>A%(S,A,0)OCT=OCT+1NOTE=A%(S,A,0)-((OCT-1)*12)"COUNT%=NOTE%(NOTE)/(2^(OCT-1))TIME%=A%(S,A,1)*HBEUNENAME$(M)> NOTA$="YES"N=530);N;") ";34);"NONE OF THE ABOVE"*M4I> *********************** RETURN ***************************HIR ********************* PLAY NOTES ROUTINE ************************\fj=0grep=*******************I ******** DISPLAY THE 5 TUNE POSIBILITIES ROUTINE *****************28);"HERE ARE THE 5 POSSIBILITIES:"N=0M=STARTPT(STARTPT+4)1 N=N+1 CONVERT%(N)=M7NOTA$="NO"N<>530);N;") ";34);TGHSCORE&(I)::5650F28);::HIGHNAME$(I);::56);::"3#";HIGHSCORE&(I)::5650@28);HIGHNAME$(I);48);:"3#&3#&3#";HIGHSCORE&(I):5650I :5440&I=05010REPEATS%(I)=0:IDI=091NSCORE&(I)=0XPLAY$(I)=" " bBID%(I)=0lI vI=1019HIGHNAME$(I)=" "HIGHSCORE&(I)=0IHIGHSCORE9&=HIGHSCORE&(9)TUNECNT%=0LASTCAT$="":CTG=0:762MOVETO(%20,%115)-#2;"THANKS FOR PLAYING 'PICK THAT TUNE'"MOVETO(%20,%100)+#2;" GA3/1.07GRAP RESET :20);"(They will not change during this game)"(27);"(Press any key to continue)" press$----"l:&v28);"K E Y";50);"P L A Y E R"&28);"-----";50);"-----------" O=0P&29);S$(O),1,1);50);PLAY$(O)O:,25);"... Memorize your key now ...":kp=020);" (It will not change during this game)">jMOVETO(%27,%100):#2;" "1RESP$4`MOVETO(%55,%20):#2;" "150ADDL$="Y"(=30=31=32RANDY=1)MOVETO(%27,%100):#2;"INSERT TUNE VOLUME INTO DRIVE #1":MOVETO(%41,%85):#2;"OTHERWISE USE CURRENT VOLUME ":6150MOVETO(%90,%100):#2;"SYSTEM ERROR ";:#2"3#";:MOVETO(%75,%85):#2;" LINE ";#2;"PLEASE CLOSE DOOR OF DRIVE #1":6150H=27MOVETO(%34,%100):#2;"PLEASE REMOVE WRITE PROTECT TAB":6150ADDL$=""(=30=31=32)MOVETO(%41,%100):#2;"INSERT PICK THAT TUNE DISKETTE":MOVETO(%48,%85):#2;"INTO DRIVE #1 AND CLOSE DOOR":6E WAS NO SCORE THIS GAME" 5910MOVETO(%35,%20)(#2;" "MOVETO(%45,%100)%#2;" "MOVETO(%55,%20)##2;"PRESS ANY KEY TO CONTINUE"RANDY=16135F=25MOVETO(%48,%100):3#";SCORE&(0);:#2;" POINTS ":5910hpSCORE&(0)>999MOVETO(%41,%85):#2;" YOU SCORED ";:#2"3#&3#";SCORE&(0);:#2;" POINTS ":5910MzMOVETO(%55,%85):#2;" YOU SCORED ";:#2"3#";SCORE&(0);:#2;" POINTS " 59107MOVETO(%41,%85):#2;"THERMOVETO(%35,%20)( #2;" LET'S PLAY AGAIN SOON !!! " *GRAFIXON41,180,24:>".D1/MENU.MAKER"#HH=20+(245-(PLAY$(0))*7))/2)RMOVETO(%H,%100)\#2;PLAY$(0)nfSCORE&(0)>999999MOVETO(%20,%85):#2;" YOU SCORED ";:#2"3#&3#& "SCORE&(0)=06030P=05960HSCORE&(0)=SCORE&(1)MOVETO(%62,%85):#2;" THERE IS A TIE GAME "(H=20+(245-((PLAY$(0))+18)*7))/2)O SCORE&(0)<>SCORE&(1)MOVETO(%H,%85):#2;" ";PLAY$(0);" IS THE WINNER !!"I`ž#2390 ^1000c: h#2;a$ma$rY=1150:Y0wB=B+1: Count the number of lines printed xB=15B=30355yB=60#3;12)zB=60B=1 {#3;a$|360B<=20#3;13)::410#3;12):Z=11000:ZI I=3d: PRINTER V. 1.0 ::=2::"PRINT.ALL v. 1.0":3=4:"Directory Name(s) or return to quit: ";n$N$)=0::"MENU.MAKER"430 X>0260I=11000:I:200: ,I=1X 14000 6#2,F$(I)@#3,".PRINTER" Jam NOISES :More noises! MIDI2 (subdirectory): - CHORD.BASIC :Basic Chord Progression Generator for MIDI interface. - CHORD.PROG :Text version of above. - MIDI.DATA.BASIC :MIDIPRINT - MIDI Data Display Basic program. - PRINT.MIDI.DATssport MIDI Invokable module. On Side Two: PICK.THAT.TUNE : Can you Pick That Tune? Try it! POP; TV; CHILDREN; COUNTRY :Categories for Pick.That.Tune. MUSIC :Basic Music program LORD.AUDIO1 :Basic Music program LORD.AUDIO2 :Basic Music progr articles written about music on the A3. VARIABLE.NOISES: Play it and that's what you'll get. MIDI (subdirectory) (See side two for more on MIDI) - MIDI.DRIVER : Information about the Passport MIDI Driver. MIDISTUFF.INV : Information about the Pal % Driven by 6-bit D/A converter or fixed frequency "beep" generator On Side One: PIANO.PLINKER : A one octive music program for the Apple ///. MEDLY : A medly of tunes you can play using PIANO.PLINKER MUSIC.ARTICLES : A text file listing DISK ID#: 3BSB-16 BOOTABLE?: Bootable A disk full of music, all with a decidedly Apple /// bent. By the Way: Here's what Apple says about the Audio Specs on the 3: Audio Output ------------ % Built-in two-inch speaker, miniature phono jack on back pane /// SIG, Washington Apple Pi 12022 Parklawn Drive Rockville, MD. 20852 (301)-984-0300 WAP /// SIG PUBLIC DOMAIN LIBRARY PDS NAME: Music, Music, MusicRESET RESET  I>X200300S=1:D=1:B=1570D$=""500 Y=X:S=ED$(D)=D$:640 X=Y440D=D+1:S=E:440D=D-1:X=0F$(X):X=0 J=1D D$=D$(J)790&J0 :œ6303DE=S+1:N$,S,1)=" "N$,S,1)=","S=S+1:580%N;:"Press Return: ";R$:"MENU.MAKER":: DEL THIS LINE 5 : TO PLAY MUSIC, THIS SECTION OPENS YOUR PROGRAM#1,".AUDIO"/#2,"NOTES": CHANGE TO YOUR NOTES FILENAMEV(C$(8),CSH$(8),D$(8),DSH$(8),E$(7),F$(7),FSH$(7),G$(7),GSH$(7),A$(7)TA 128,50,1946,60 5091 REM 5092 REM 1ST #:MODE% (128) 2ND #:VOL% (0 TO 63) 5094 REM 3RD #:COUNT% (SEE CHART) 4TH #:TIME% (0 TO 300) 5096 REM REM 3RD #:COUNT% (SEE CHART) 4TH #:TIME% (0 TO 300) 5096 REM NNING LINE 5100 5082 REM 5084 REM ENTER DATA AS FOLLOWS: USE CHART ON PG. 133 DEVICE DRIVERS MANUAL 5086 REM ENTER ONE NOTE PER LINE 5088 REM FOUR VALUES ARE REQUIRED PER NOTE (PG.131) 5089 REM 5090 REM SAMPLE LINE (MIDDLE C): 5100 DAMUSIC, MUSIC, MUSIC PD DISK A :Text version of above. 2010C$="N"C$="n"200;:=23:=0::"79C";"PRESS ANY KEY TO HALT LISTING": 20002,280,21 DF$(I)=D$+"/DISKNAME.DAT"F$(I)=D$+"/FLASHNAME.DAT"410:ۺ310 PRINTER v 1.0 p$ 900A$="PRINTING"+F$(I):$=01:=0::"80C";A$;::12)F=23:=0::"79C";"PRESS ANY KEY TO HALT PRINTING"::2,280,21 2000*:=23:=0::"79C";"CONTINUE...?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"#1,D$::"Processing directory ";34);D$;34);", please wait."; ž#1880*#1;A$:A$)<48104A$,3,4)<>"TEXT"810>X=X+1:".";HE=15:F$=A$,16,15)RF$,E,1)=" "E=E-1:850\F$(X)=D$+"/"+F$,E)f810p:  Pausež#1740#1;A$:A$)<4710A$,3,4)="TEXT"X=X+1710 :X>YN=P::7);"There are no text files in the ";34);D$;34);" directory." ::I=P::7);"Unable to locate and open ";34);D$;34);" directory." ::IT$=N$,E,1):T$=" "T$=","610XE=E+1:E>N$)610:590bD$=N$,S,E-S)l:v:E>S+1600:D$="": œ770P=3:"Looking for ";34);D$;34);" directory." #1,D$=P3:"Reading from ";34);D$;34);" directory." ,ASH$(7),B$(7) <X%=17eF#2;C$(X%),CSH$(X%),D$(X%),DSH$(X%),E$(X%),F$(X%),FSH$(X%),G$(X%),GSH$(X%),A$(X%),ASH$(X%),B$(X%)P#Z#2;C$(8),CSH$(8),D$(8),DSH$(8)7d You must enter quarter-note tempo in this section;nTEMPO=XXX: MINIMUM TEMPO IS 1MIDI2v_'  '+CHORD.BASIC  _ ^:*CHORD.PROG _^6/MIDI.DATA.BASIC (_^8/PRINT.MIDI.DATA_^30 ******************************************0 * Bob's Noises - MODIFIED BY DGO *= * -------------- 12/9/90 * 2 * As modified, this program will now * 1 * print the count and time values. * PRINT#1; CSH$(4) + BEAT$(8)H 180 READS 'print audio;CSHRP(octave4)+(eight 16th beats)'a 1/2noteF So line 180 would play C sharp in the 4th octave as a half-note.< To save room in your program, DEL 1-10 and DEL 170-2102 QUARTERNOTES PER MINUTExBEAT$(16)*DUR%=900/TEMPO): DUR%=A 1/16TH NOTE X%=116=BEAT$(X%)=X%*DUR%-256*X%*DUR%/256))+X%*DUR%/256))"REST$=128)+0)+255)+63)7 Your commands for music should follow this format1 256));"#1;time%-256*time%/256));#1;time%/256)); 1000a%=11000count%=1)*c.val%)200500$=27#1:::".D1/MENU.MAKER" 1000OGRAM, PLEASE HIT THE KEY."F"HIT ANY KEY TO START."PG$!d14);: Turn off the screen3ncount%=0:time%=1:c.val%=16383:mode%=128:vol%=63x#1,".audio":499#1;mode%);vol%);$#1;count%-256*count%/256));#1;count%//. This program shows you some *0 * of the different sounds the Apple /// *0 * can make. Just type it in and enter *0 * the command 'RUN'. *0 ******************************************2><"TO END DURING THE PR0 ******************************************0 * Bob's Noises?? *0 * -------------- *0 * Up to now we have used this column to *0 * show off the graphics capabilities of *0 * the // for the Apple /// by Erik Olbrys 130 : 140 REM setup variables 150 byte%=1:type%=1:ch%=1 160 OPEN#2,".MIDI" 170 DIM st$(23) 180 FOR i%=1 TO 23:READ st$(i%):NEXT 190 ON KBD GOTO 340 200 : 210 HOME:PRINT"MIDI-PRINT ///" 220 REM Title: Print MIDI data Created by: SYSOP on: 01/24/1989 13:59:37 100 REM MIDIPRINT - MIDI Data Display 105 REM Electronic Musician Magazine, Sept 1986 pp. 46-49 110 REM 4/10/86 by Jim Johnson for the Commodore 64 120 REM 4/14/88, modified 1 * It also now gives you a variable * 1 * time% * 2 * * 0 * *0 ******************************************2><"d"n MUSIC.SEED DOCUMENTATIONx$31)"MUSIC.SEED DOCUMENTATION"$31)"________________________" ::910>" Here is a sample song done with the MUSIC.SEED program"910:5000::L" To add music to your programs, load: CAMPTOWN RACES #1,".AUDIO"(#1 2X=142<N,TF128);60);#PN-256*N/256));N/256));#ZT-256*T/256));T/256));dXn#1("ANY KEY RETURNS TO MENU.MAKER":G$".D1/MENU.MAKER">  2597,10,2597,733,40h 128,50,1157,20r 128,50,1298,40| 128,50,1457,20 128,50,1544,40 128,40,1733,10 128,40,1946,20 128,50,1733,901228,40,1733,10 128,40,1946,20 128,50,1733,90121157,80 128,0,1157,45 128,50,867,20  128,60,867,40 128,50,867,20 128,50,973,40" 128,50,1157,20, 128,50,1157,456 128,40,1298,10@ 128,40,1457,10J 128,50,1544,20T 128,50,1946,45Y 128,0,1946,20^ 128,50,17,10  128,30,1157,20 128,40,1544,30( 128,30,1457,102 128,25,1544,20 < 128,30,1733,90F 128,50,1157,40P 128,40,973,20Z 128,50,867,50d 128,40,973,20n 128,40,1157,30x 128,50,1031,10 128,40,1298,20 128,50,#1;MODE%);VOL%);5#1;COUNT%-256*COUNT%/256));COUNT%/256));2#1;TIME%-256*TIME%/256));TIME%/256)); 5010 SCARBOROUGH FAIR 128,30,1733,40 128,30,1733,20 128,40,1157,40  128,30,115and Mode to make your changes.]"\:-f" 5012 COUNT%=COUNT%*4: TIME%=TIME%/2"p" 5050 END"z" RUN 5000"G$:".D1/MENU.MAKER"WAIT=1900:WAITWAIT=13000:WAIT#1,".AUDIO"MODE%,VOL%,COUNT%,TIME% œ5050 cursor over the next two lines. Follow each "*" pass with RETURN.] "4K>" After you have heard this version, try some of your own by varying "JH" the values given in 5012. (EXAMPLE: COUNT%=COUNT%/4:TIME%=TIME%/4)":R:" [Use Cursor CommM" Then press the up arrow until cursor is next to 5012. Press escape"Q " again, then press right arrow so that cursor passes over line. "E" At end of line, press RETURN. Then using the right arrow, "L " continue to pass theersion of the sample tune, validate the program "K" lines given at the bottom of the screen by passing the cursor over ";" each line. At the end of each line, press RETURN. "D" [To validate, enter Cursor Command Mode by pressing ESCAPE."tine, line 5050 in MUSIC.SEED must be changed"" to read: RETURN ": :930322)". . . .PRESS ANY KEY TO CONTINUE. . . ."IN$H" COUNT% (pitch) and TIME% (speed) of a tune can easily be varied."M" To hear a different v and list MUSIC.SEED, then follow"3" the directions given in the REM statements." ::930L" Line numbers of MUSIC.SEED begin at 5000. This allows space for the"+" program to be used as a subroutine." ::930J" When used as a subrou10,3088,10,2597,10,2314,10,2597,10,3088,20 = 3088,10,3467,30,3088,10,3467,30,2597,10,2597,10,3088,10=  2597,10,2314,10,2597,10,3088,25,3467,20,3088,10,3467,10>* 3891,35,3891,10,3891,20,3088,10,2597,10,1946,30,2314,20 =4 1946,10,2314,10,2597,30"C ":note$(1)="C#":note$(2)="D ":note$(3)="D#":note$(4)="E "Inote$(5)="F ":note$(6)="F#":note$(7)="G ":note$(8)="G#":note$(9)="A "!note$(10)="A#":note$(11)="B ": * Main Program Loop *370: do screen6"420:600:800: get scale, make pmidistuff.inv"5scal(8),chord(100,4),prog(100),type(7),note$(11)8I=1:II=2:III=3:IV=4:V=5:VI=6:VII=7:Ton=1:Dig=2:App=37Type(I)=Ton:Type(II)=Dig:Type(III)=Dig:Type(IV)=Dig*Type(V)=App:Type(VI)=Dig:Type(VII)=App set up note namesInote$(0)=!d Chord Progression Generator8n Electronic Musician Magazine April 1988 pp. 22-30-x 8/17/87 by Jim Johnson for the Atari ST= re-written for the Apple /// by Erik Olbrys April 1988: * Initialize *#9,".midi"""upshift.inv","t" 430 DATA "UNDEFINED","UNDEFINED","Tune","Sys-Ex End","Clock" 440 DATA "UNDEFINED","Start","Continue","Stop","UNDEFINED" 450 DATA "Active Sense","Reset" RETURN 370 : 380 REM data for status messages 390 DATA "Note Off","Note On","Poly Pressure","Control Change" 400 DATA "Program Change","Channel Pressure","Pitch Bend" 410 : 420 DATA "Sys-Ex Start","UNDEFINED","Song Pointer","Song Selec232);:GOTO 240:REM system messages 290 : 300 REM *** channel messages *** 310 type%=INT(byte%/16):ch%=byte%-16*type%+1 320 PRINT st$(type%-7);", ch.";ch%;:GOTO 240 330 : 340 IF KBD=27 OR KBD=3 THEN keypress%=1 350 ON KBD GOTO 340 360 main program loop 230 keypress%=0 240 GET#2;b$:byte%=ASC(b$) 250 IF keypress% THEN END:GOTO 210 260 IF byte%<128 THEN PRINT" ";RIGHT$(HEX$(byte%),2);:GOTO 240 270 PRINT:REM new line for new messages 280 IF byte%>239 THEN PRINT st$(byte%-,2597,10,2597,10,3088,10,2597,10=> 2314,10,2597,10,3088,25,3467,25,3088,10,3467,10,3891,45rog, make chords,920: play chords6330,@1020:a$="Y"1110: ask save, save itJ1060:a$="N": ask moreT280^:h set up screenr: |=22:=1&"Chord Progression generator"::: get scale from keyboard+n=midisize:n>0a=1n:#9;a$::420?"Play a one octave ascending scale on your MIDI keyboard."lstat=0:j=18midisize=04500#9;m$:stat=m$):stat<128lstat<>05003stat>143stat<160lstat=stat:490: note on?lstat=0:4605#9<>0 THEN GOTO 500 470 IF stat>143 AND stat<160 THEN lstat=stat:GOTO 490:REM note on? 480 lstat=0:GOTO 460 490 GET#9;m$:note=ASC(m$):GET#9;m$:vel=ASC(m$):GOTO 510:GET note&vel 500 note=stat:GET#9;m$:vel=ASC(m$):REM have note, get velocity 510 IF vd 420 n= EXFN%.midisize:IF n>0 THEN FOR a=1 TO n:GET#9;a$:NEXT:GOTO 420 430 PRINT"Play a one octave ascending scale on your MIDI keyboard." 440 lstat=0:FOR j=1 TO 8 450 IF EXFN%.midisize=0 THEN 450 460 GET#9;m$:stat=ASC(m$):IF stat<128 THEN IF lstatTHEN GOSUB 1110:REM ask save, save it 330 GOSUB 1060:IF a$="N" THEN END:REM ask more 340 GOTO 280 350 : 360 REM set up screen 370 TEXT:HOME 380 HPOS=22:VPOS=1 390 PRINT"Chord Progression generator":PRINT:RETURN 400 : 410 REM get scale from keyboar$(9)="A " 250 note$(10)="A#":note$(11)="B " 260 : 270 REM * Main Program Loop * 280 GOSUB 370:REM do screen 290 GOSUB 420:GOSUB 600:GOSUB 800:REM get scale, make prog, make chords 300 GOSUB 920:REM play chords 310 GOTO 330 320 GOSUB 1020:IF a$="Y" =Ton:Type(II)=Dig:Type(III)=Dig:Type(IV)=Dig 210 Type(V)=App:Type(VI)=Dig:Type(VII)=App 220 REM set up note names 230 note$(0)="C ":note$(1)="C#":note$(2)="D ":note$(3)="D#":note$(4)="E " 240 note$(5)="F ":note$(6)="F#":note$(7)="G ":note$(8)="G#":note Apple /// by Erik Olbrys April 1988 140 : 150 REM * Initialize * 160 OPEN#9,".midi" 170 INVOKE"upshift.inv","midistuff.inv" 180 DIM scal(8),chord(100,4),prog(100),type(7),note$(11) 190 I=1:II=2:III=3:IV=4:V=5:VI=6:VII=7:Ton=1:Dig=2:App=3 200 Type(I) Title: Chord Progression Generator Created by: SYSOP on: 01/24/1989 13:49:55 100 REM Chord Progression Generator 110 REM Electronic Musician Magazine April 1988 pp. 22-30 120 REM 8/17/87 by Jim Johnson for the Atari ST 130 REM re-written for the not chord names%#9;143+chan);: running statusj=1length3note=chord(j,2):note$(note-note/12)*12);" ";+j1%=14:#9;chord(j,j1%));vel);:j2=11600:: delay)j1%=14:#9;chord(j,j1%));0);::(=21:=5oot+44Third>8Third=Third-7>Fifth>8Fifth=Fifth-7#HChord(j,1)=Scal(Root)-12: bassRChord(j,2)=Scal(Root)\Chord(j,3)=Scal(Third)fChord(j,4)=Scal(Fifth)pz: * Play Chords *A=10:"playing....": prints the chord roots,j=100j: * Set the Chord Type *Prog(j)=I:Prog(j)=II:Prog(j)=III:Prog(j)=IV:Prog(j)=V:Prog(j)=VI:Prog(j)=VII: :% Make Chords from Progression * j=1length**Root=Prog(j):Third=Root+2:Fifth=R:"N * Create Chord Progression * XProg(1)=I bj=2100lRn=1)^1.3=5type(prog(j-1))=Applength=j:;m$:note=m$):#9;m$:vel=m$):510:note&vel8note=stat:#9;m$:vel=m$): have note, get velocity4vel=0450: check if it's actually a note-offscal(j)=note#note$(note-note/12)*12);" ";&chan=lstat-143030);"Got it!":Del=0 THEN GOTO 450:REM check if it's actually a note-off 520 scal(j)=note 530 PRINT note$(note-INT(note/12)*12);" "; 540 NEXT 550 chan=lstat-143 560 PRINT CHR$(30);"Got it!" 570 RETURN 580 : 590 REM * Create Chord Progression * 600 Prog(1)=I 610 FOR j=2 TO 100 620 Rn=RND(1)^1.3 630 IF type(prog(j-1))=Ton THEN ON INT(rn*6)+1 GOSUB 730,740,760,750,720,770 640 IF type(prog(j-1))=Dig THEN ON INT(rn*3)+1 GOSUB 750,770,710 650 IF type(prog(j-1))=App THEN GOSUB 710 660 IF j>=5 AND type(prog((byte%-232);:240: system messages":, *** channel messages ****6type%=byte%/16):ch%=byte%-16*type%+1#@st$(type%-7);", ch.";ch%;:240J:T=27=3keypress%=1 ^340hr:| data for status messages< "Note Off","Note On", ".MIDI" st$(23)i%=123:st$(i%): 340::"MIDI-PRINT ///" main program loopkeypress%=0#2;b$:byte%=b$)keypress%:210(byte%<128" ";byte%),2);:240!: new line for new messages7byte%>239st$#d MIDIPRINT - MIDI Data Display8i Electronic Musician Magazine, Sept 1986 pp. 46-491n 4/10/86 by Jim Johnson for the Commodore 648x 4/14/88, modified for the Apple /// by Erik Olbrys: setup variablesbyte%=1:type%=1:ch%=1#2,REM event time 1200 IF j1<>1 OR j=1 THEN PRINT#1;CHR$(0);CHR$(0); 1210 PRINT#1;CHR$(lstat);CHR$(chord(j,j1));CHR$(vel);CHR$(94); 1220 NEXT 1230 NEXT 1240 PRINT#1;CHR$(0);CHR$(96);CHR$(0);CHR$(0);CHR$(0);CHR$(0); 1250 CLOSE#1:RETURN 1140 PRINT#1;CHR$(0);CHR$(0);:REM version 1150 PRINT#1;CHR$(0);CHR$(0);CHR$(0);CHR$(4+length+1);:REM length 1160 PRINT#1;"RndChord";:REM Sequence name 1170 FOR j=1 TO length 1180 FOR j1=1 TO 4 1190 IF j1=1 AND j<>1 THEN PRINT#1;CHR$(0);CHR$(96);:pshift(@a$):IF a$<>"Y" AND a$<>"N" THEN PRINT CHR$(7);:GOTO 1070 1080 PRINT a$:RETURN 1090 : 1100 REM * Save Chords as Dr. T Sequence * 1110 HPOS=27:VPOS=9:INPUT"Filename: ";f$ 1120 IF f$="" THEN RETURN 1130 f$=LEFT$(f$,11)+".SEQ":OPEN#1 AS OUTPUT,f$ : 1020 HPOS=21:VPOS=5:PRINT"Save this progression? "; 1030 GET a$:PERFORM upshift(@a$):IF a$<>"Y" AND a$<>"N" THEN PRINT CHR$(7);:GOTO 1030 1040 PRINT a$:RETURN 1050 : 1060 HPOS=19:VPOS=7:PRINT"Generate another progression? "; 1070 GET a$:PERFORM uth 950 note=chord(j,2):PRINT note$(note-INT(note/12)*12);" "; 960 FOR j1%=1 TO 4:PRINT#9;CHR$(chord(j,j1%));CHR$(vel);:NEXT 970 FOR j2=1 TO 1600:NEXT:REM delay 980 FOR j1%=1 TO 4:PRINT#9;CHR$(chord(j,j1%));CHR$(0);:NEXT 990 NEXT 1000 RETURN 101060 Chord(j,3)=Scal(Third) 870 Chord(j,4)=Scal(Fifth) 880 NEXT 890 RETURN 900 : 910 REM * Play Chords * 920 VPOS=10:PRINT"playing....":REM prints the chord roots, not chord names 930 PRINT#9;CHR$(143+chan);:REM running status 940 FOR j=1 TO leng80 : 790 REM Make Chords from Progression * 800 FOR j=1 TO length 810 Root=Prog(j):Third=Root+2:Fifth=Root+4 820 IF Third>8 THEN Third=Third-7 830 IF Fifth>8 THEN Fifth=Fifth-7 840 Chord(j,1)=Scal(Root)-12:REM bass 850 Chord(j,2)=Scal(Root) 8j-1))=App THEN length=j:j=100 670 NEXT j 680 RETURN 690 : 700 REM * Set the Chord Type * 710 Prog(j)=I:RETURN 720 Prog(j)=II:RETURN 730 Prog(j)=III:RETURN 740 Prog(j)=IV:RETURN 750 Prog(j)=V:RETURN 760 Prog(j)=VI:RETURN 770 Prog(j)=VII:RETURN 7"Poly Pressure","Control Change" 6 "Program Change","Channel Pressure","Pitch Bend":= "Sys-Ex Start","UNDEFINED","Song Pointer","Song Select"9 "UNDEFINED","UNDEFINED","Tune","Sys-Ex End","Clock"7 "UNDEFINED","Start","Continue","Stop","UNDEFINED" "Active Sense","Reset:"Save this progression? ";5a$:upshift(@a$):a$<>"Y"a$<>"N"7);:1030 a$::/$=19:=7:"Generate another progression? ";5.a$:upshift(@a$):a$<>"Y"a$<>"N"7);:1070 8a$:B:'L * Save Chords as Dr. T Sequence *V=2746,30,1636,30,1226,45,1946,15,2184,30,1636,30= 1298,45,1636,15,1733,15,1946,15,1733,15,1636,15,1457,15=  1457,15,1226,15,1226,15,1298,60,1636,45,2184,15,1946,30=* 1636,30,1226,45,1946,15,2184,15,2184,15,1636,15,1636,15?4 1298,45,1636,15,1733,4: ALOHA OE  #1,".AUDIO"(#1 2X=136<N,TF128);60);#PN-256*N/256));N/256));#ZT-256*T/256));T/256));dXn#1("ANY KEY RETURNS TO MENU.MAKER":G$:".D1/MENU.MAKER"=  2184,15,19CHR$(INT(TIME%/256)); 5045 GOTO 5010 5050 RESTORE:END:REM---CHANGE 'END' TO 'RETURN' IF USED AS SUBROUTINE 5055 REM 5060 REM-----------------MUSIC SEED PROGRAM-------------------------- 5070 REM 5080 REM TO COMPOSE MUSIC, ENTER DATA BEGI 5000 OPEN#1 AS OUTPUT,".AUDIO" 5010 READ MODE%,VOL%,COUNT%,TIME% 5015 ON ERR GOTO 5050 5020 PRINT#1;CHR$(MODE%);CHR$(VOL%); 5030 PRINT#1;CHR$(COUNT%-256*INT(COUNT%/256));CHR$(INT(COUNT%/256)); 5040 PRINT#1;CHR$(TIME%-256*INT(TIME%/256));5,1636,15,1298,15,1457,30,1733,15 => 1636,75 >1j=1#1;0);0);-#1;lstat);chord(j,j1));vel);94);'#1;0);96);0);0);0);0); #1::=9:"Filename: ";f$ `f$="" jf$=f$,11)+".SEQ":#1,f$t#1;0);0);: version.~#1;0);0);0);4+length+1);: length##1;"RndChord";: Sequence namej=1length j1=14-j1=1j<>1#1;0);96);: event timej1<:"Save this progression? ";5a$:upshift(@a$):a$<>"Y"a$<>"N"7);:1030 a$::/$=19:=7:"Generate another progression? ";5.a$:upshift(@a$):a$<>"Y"a$<>"N"7);:1070 8a$:B:'L * Save Chords as Dr. T Sequence *V=27:=9:"Filename: ";f$ `f$="" jf$=f$,11)+".SEQ":#1,f$t#1;0);0);: version.~#1;0);0);0);4+length+1);: length##1;"RndChord";: Sequence namej=1length j1=14-j1=1j<>1#1;0);96);: event timej1<