Home » Recent acquisitions » Acorn tapes » tape059b_acorn_ziggy_electron.wav » ZIGGY
ZIGGY
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
| Tape/disk: | Home » Recent acquisitions » Acorn tapes » tape059b_acorn_ziggy_electron.wav |
| Filename: | ZIGGY |
| Read OK: | ✔ |
| File size: | 2500 bytes |
| Load address: | 0E00 |
| Exec address: | 0E00 |
Duplicates
There are 7 duplicate copies of this file in the archive:
- Recent acquisitions » Acorn tapes » tape059a_acorn_ziggy_bbc.wav » ZIGGY
- Recent acquisitions » Acorn tapes » tape059b_acorn_ziggy_electron.wav » ZIGGY
- STH website » Audiogenic » Audiogenic_Ziggy_Ziggy.ssd » B.ZIGGY
- STH website » Audiogenic » Audiogenic_Ziggy_Ziggy.ssd » M.ZIGGY
- STH website » Audiogenic » Audiogenic_Ziggy_B_Ziggy_B.uef » ZIGGY
- AEW website » audiogenic » audiogenic_3_5_discs_Ziggy_HA-ZIGG.adf » ZIGGY
- AEW website » audiogenic » audiogenic_5_25_discs_Ziggy_HD-ZIGG.ssd » ZIGGY
- AEW website » audiogenic » audiogenic_tapes_Ziggy_Ziggy_E.uef » ziggy
File contents
10REM ZIGGY 20REM By D.Lester 30REM Copyright (C) Audiogenic 1987 40: 50: 60MODE4:ENVELOPE1,130,24,-24,24,1,1,1,126,0,0,-126,126,126 70REM ONERRORPROCoff:RUN 80PROCfont:PROCchars:PROCsh 90*FX11,0 100PROCoff:PRINTTAB(4,9)CHR$224;" ";CHR$226 110VDU5:MOVE176,696:PRINTCHR$228:VDU4 120PRINTTAB(4,12)CHR$225;" ";CHR$227 130MOVE190,800:PLOT1,130,-130 140PLOT1,-130,-130 150PLOT1,-130,130 160PLOT1,130,130 170PLOT1,-130,-130 180PLOT1,0,-4 190PLOT1,130,-130 200PLOT1,130,130 210VDU28,0,4,39,0:COLOUR129:CLS:COLOUR0:VDU26 220PROCon:PRINTTAB(10,2)"ZIGGY KEYBOARD OPTION":RESTORE 230COLOUR7:COLOUR128 240PRINTTAB(12,6);"<RETURN> increases bounce" 250PRINTTAB(12,8);"<SPACE> decreases bounce" 260PRINTTAB(17,12);"Select key for:" 270FORk%=0TO3 280PROCoff:PRINTTAB(21,14+k%*3);CHR$(224+k%);:PROCon:PRINT" ... ?"; 290*FX15 300j%=GET:x%=-10:REPEAT:x%=x%-1:c%=INKEY(x%):UNTILc%<>0 OR x%=-128:IFx%=-128GOTO300:ELSEPROCon:VDU127,j% 310k%?&5C=x%:*FX15 320VDU7:NEXT 330PRINTTAB(20,27)"OK? (Y/N)";:*FX15 340G$=GET$:PRINT:IFG$<>"Y"CLS:GOTO100:ELSEPROCoff:MODE5:VDU23,1,0;0;0;0;19,1,4;0;19,2,6;0;:CALLexpand:VDU28,0,31,19,27:*/ZIGcode 350DEFPROCfont 360w=!&20E 370FORpass%=0TO2STEP2 380P%=&981 390[OPT0 400STA&90:PHA:TYA:PHA:TXA:PHA 410LDA#&DA:LDX#0:LDY#255:JSR&FFF4:CPX#0:BNEd 420LDA&90:CMP#127:BEQd:CMP#32:BCSo 430.d PLA:TAX:PLA:TAY:PLA:JMPw 440.o LDA#10:LDX#&90:LDY#0:JSR&FFF1 450LDA#23:JSRw:JSRc:LDA&91:ROL A:ORA&91:JSRw:LDA&92:ROL A:ORA&92:JSRw:LDA&93:ROL A:ORA&93:JSRw:LDA&94:ROL A:ORA&94:JSRw 460LDA&95:ROL A:ORA&95:JSRw:LDA&96:ROL A:ORA&96:JSRw:LDA&97:ROL A:ORA&97:JSRw:LDA&98:ROL A:ORA&98:JSRw:JSRc 470PLA:TAX:PLA:TAY:PLA:RTS 480.c LDA#249:JSRw:RTS 490] 500NEXT:ENDPROC 510DEFPROCchars 520VDU23,224,254,132,136,132,162,209,138,4,23,226,127,33,17,33,69,139,81,32,23,227,32,81,139,69,33,17,33,127,23,225,4,138,209,162,132,136,132,254,23,228,60,126,126,60,66,60,66,60:ENDPROC 530DEFPROCon:?&20E=&81:?&20F=9:ENDPROC 540DEFPROCoff:!&20E=w:ENDPROC 550get=&60:put=&62:temp=&64 560getoff=&65:putoff=&66:value=&67:count=&68 570DEFPROCsh 580ss=(PAGE+&D00) DIV256 590get=&60:put=&62:temp=&64 600getoff=&65:putoff=&66:value=&67:count=&68 610FORp=0TO2STEP2 620P%=&4500 630[OPTp 640.incboth JSRincput:JSRincget:RTS 650.incget INCgetoff:LDAgetoff:BNErts1:INCget+1:.rts1 RTS 660.incput INCputoff:LDAputoff:BNErts2:INCput+1:.rts2 RTS 670.expand 680LDA#0:STAget:STAput:STAputoff:STAgetoff:STAvalue:STAcount:LDA#ss:STAget+1:LDA#&58:STAput+1 690.loop2 700LDYgetoff:LDA(get),Y 710CMP#111:BNEtoscreen:JSRexp:JMPbypass 720.toscreen LDYputoff:STA(put),Y:JSRshim 730.bypass JSRincboth:LDAput+1:CMP#&80:BCCloop2:RTS 740.exp JSRincget:LDYgetoff:LDA(get),Y:CLC:ADC#1:STAcount:JSRincget:LDYgetoff:LDA(get),Y:STAvalue 750.loop3 LDYputoff:LDAvalue:STA(put),Y:JSRshim:DECcount:LDAcount:BEQendloop3:JSRincput:JMPloop3:.endloop3 RTS 760.shim STA&93:STY&91:LDAput+1:STA&92 770.sloop LDA&91:CLC:ADC#120MOD256:STA&91:BCCnocs:INC&92 780.nocs LDA&92:CLC:ADC#120DIV256:STA&92:LDA&93:LDY#0:STA(&91),Y:LDA&92:CMP#&80:BCCsloop:RTS 790] 800NEXT 810ENDPROC
� ZIGGY � By D.Lester #� Copyright (C) Audiogenic 1987 (: 2: <2�4:�1,130,24,-24,24,1,1,1,126,0,0,-126,126,126 F� ONERRORPROCoff:RUN P�font:�chars:�sh Z*FX11,0 d�off:�4,9)�224;" ";�226 n�5:�176,696:�228:�4 x�4,12)�225;" ";�227 ��190,800:�1,130,-130 ��1,-130,-130 ��1,-130,130 ��1,130,130 ��1,-130,-130 ��1,0,-4 ��1,130,-130 ��1,130,130 ��28,0,4,39,0:�129:�:�0:�26 �(�on:�10,2)"ZIGGY KEYBOARD OPTION":� ��7:�128 �'�12,6);"<RETURN> increases bounce" �'�12,8);"<SPACE> decreases bounce" �17,12);"Select key for:" �k%=0�3 0�off:�21,14+k%*3);�(224+k%);:�on:�" ... ?"; " *FX15 ,Nj%=�:x%=-10:�:x%=x%-1:c%=�(x%):�c%<>0 � x%=-128:�x%=-128�TlA:��on:�127,j% 6k%?&5C=x%:*FX15 @�7:� J�20,27)"OK? (Y/N)";:*FX15 TeG$=�:�:�G$<>"Y"�:�Dd@:��off:�5:�23,1,0;0;0;0;19,1,4;0;19,2,6;0;:�expand:�28,0,31,19,27:*/ZIGcode ^ ��font hw=!&20E r�pass%=0�2�2 |P%=&981 � [OPT0 �STA&90:PHA:TYA:PHA:TXA:PHA �-LDA#&DA:LDX#0:LDY#255:JSR&FFF4:CPX#0:BNEd �#LDA&90:CMP#127:BEQd:CMP#32:BCSo �.d PLA:TAX:PLA:TAY:PLA:JMPw �$.o LDA#10:LDX#&90:LDY#0:JSR&FFF1 �tLDA#23:JSRw:JSRc:LDA&91:ROL A:�A&91:JSRw:LDA&92:ROL A:�A&92:JSRw:LDA&93:ROL A:�A&93:JSRw:LDA&94:ROL A:�A&94:JSRw �hLDA&95:ROL A:�A&95:JSRw:LDA&96:ROL A:�A&96:JSRw:LDA&97:ROL A:�A&97:JSRw:LDA&98:ROL A:�A&98:JSRw:JSRc �PLA:TAX:PLA:TAY:PLA:RTS �.c LDA#249:JSRw:RTS �] ��:� ���chars ��23,224,254,132,136,132,162,209,138,4,23,226,127,33,17,33,69,139,81,32,23,227,32,81,139,69,33,17,33,127,23,225,4,138,209,162,132,136,132,254,23,228,60,126,126,60,66,60,66,60:� ��on:?&20E=&81:?&20F=9:� ��off:!&20E=w:� &get=&60:put=&62:temp=&64 0-getoff=&65:putoff=&66:value=&67:count=&68 :��sh Dss=(�+&D00) �256 Nget=&60:put=&62:temp=&64 X-getoff=&65:putoff=&66:value=&67:count=&68 b�p=0�2�2 lP%=&4500 v [OPTp �$.incboth JSRincput:JSRincget:RTS �:.incget INCgetoff:LDAgetoff:BNErts1:INCget+1:.rts1 RTS �:.incput INCputoff:LDAputoff:BNErts2:INCput+1:.rts2 RTS �.expand �^LDA#0:STAget:STAput:STAputoff:STAgetoff:STAvalue:STAcount:LDA#ss:STAget+1:LDA#&58:STAput+1 � .loop2 �LDYgetoff:LDA(get),Y �(CMP#111:BNEtoscreen:JSRexp:JMPbypass �*.toscreen LDYputoff:STA(put),Y:JSRshim �4.bypass JSRincboth:LDAput+1:CMP#&80:BCCloop2:RTS �c.exp JSRincget:LDYgetoff:LDA(get),Y:CLC:ADC#1:STAcount:JSRincget:LDYgetoff:LDA(get),Y:STAvalue �o.loop3 LDYputoff:LDAvalue:STA(put),Y:JSRshim:DECcount:LDAcount:BEQendloop3:JSRincput:JMPloop3:.endloop3 RTS �'.shim STA&93:STY&91:LDAput+1:STA&92 7.sloop LDA&91:CLC:ADC#120�256:STA&91:BCCnocs:INC&92 [.nocs LDA&92:CLC:ADC#120�256:STA&92:LDA&93:LDY#0:STA(&91),Y:LDA&92:CMP#&80:BCCsloop:RTS ] � *� � ( 2 F P Z d n x � � � � � � � � � � � � �",6@JT^hr|�������������&0:DNXblv������������� *4 alue �N ount �P L � @ncboth � Xncget � ets1 � ncput � ts2 � 0 �xpand � 2 �oop2 � ^ 0 oscreen � z ypass � � �xp � � � oop3 � � ndloop3 � � �him � � loop � � ocs � �off mo on P % � % / f % ����n % ���� $ #Y o % ����� % ����� $ ?Y�����o�oo o w��o ��o oKo oo oo oo <o�oG#�o�x<oo����o�xo����o�����o����x<o�����x<�����o�����x<o��o�Joo���o������oo� o� oo �o�o �o:o �o�o 3o2o �oo wtoeo ��Jo�o ���o�o �o�o ��o �o:2�o ��o wtoeo �� �o �o���o �o�o�o ��-oeo ݕoo ��o �o �o� o2otG�o�o:+o:o;o:+��o�o�2�o:+oo�o �o oeG�o ��o�oۏ�oo��o���:+o �:+�-o!��toeutG�o ��o۟o�oeGoo o�o2��ooS 3oo ����o ����o �oo �x<o o���o ��o ���o �oo wot2o ����o ����o �o�o 3o#o ��x<o o���o ����o ����o �<o ����o �oo ����o �oo �x<o ����o ��o ���o wot�o ����o �oΌo oo ����o �oo ��x<o ����o �oo �owo3o �o�����o����x<o�����x<�����o��o��o2oo�x<����o���o����o#o2oo���o���x<o�o�����x<���o�������x<o��o�o;3o2G������������o���o�x<o�����x<o��o�o��o����o�x<��o�o�<o ��o2owo��o�o�o���o�o����x-o�oo, �Go �o �o 3w�oG��o����x<o���o o o���ot�x<o��o�i-o�������o�oo�o o o oGeot��x<������o�Joo o o o2o# �����x ���u����o�x<����o�io��� ��o� �o���� oo<