Home » Archimedes archive » Acorn User » AU 1996-12 B.adf » Regulars_2 » StarInfo/Rawle/!Chimes/!RunImage

StarInfo/Rawle/!Chimes/!RunImage

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 » Archimedes archive » Acorn User » AU 1996-12 B.adf » Regulars_2
Filename: StarInfo/Rawle/!Chimes/!RunImage
Read OK:
File size: 03D9 bytes
Load address: 0000
Exec address: 0000
File contents
   10DIMb% 255
   20q%=FALSE:CL%=0:LST%=-1
   30SYS"Wimp_Initialise",200,&4B534154,"Chimes"
   40ONERRORPROCer
   50WHILENOTq%
   60SYS66TOa%:a%+=50
   70SYS"Wimp_PollIdle",0,b%,a% TO r%
   80CASEr%OF
   90WHEN0:PROCch
  100WHEN17,18:PROCr
  110ENDCASE
  120ENDWHILE
  130SYS"Wimp_CloseDown"
  140END
  150DEFPROCr
  160CASEb%!16OF
  170WHEN0:q%=TRUE
  180ENDCASE
  190ENDPROC
  200DEFPROCer:!b%=ERR:$(b%+4)=REPORT$+STR$(ERL)+CHR$(0):SYS "Wimp_ReportError",b%,1,"Chimes":ENDPROC
  210DEFPROCch
  220CM%=VAL(MID$(TIME$,20,2)):IFCM%=0ORCM%=15ORCM%=30ORCM%=45 THEN
  230IFLST%=-1:LST%=CM%
  240CL%+=1
  250IFCL%=1ANDLST%=CM%:CL%=0
  260ELSE
  270CL%=0
  280ENDIF
  290IFCL%>0:PROCdochime
  300IFCM%<>0ANDCM%<>15ANDCM%<>30ANDCM%<>45:LST%=CM%
  310ENDPROC
  320DEFPROCdochime
  330IFCL%=1:VOICES2:VOICE2,"BELL"
  340LST%=CM%
  350CASECL% OF
  360WHEN2,9,13,21:SOUND2,-15,100,100
  370WHEN3,8,15,20:SOUND2,-15,92,100
  380WHEN1,7,10,14,22:SOUND2,-15,84,100
  390WHEN4,16,19:SOUND2,-15,64,100
  400ENDCASE
  410IFCL%>26 THEN
  420HR%=VAL(MID$(TIME$,17,2))
  430IFHR%>12:HR%=HR%-12
  440IFHR%=0:HR%=12
  450IFCL%>((HR%*2)+26):CL%=0:ELSEPROCbb
  460ENDIF
  470IFCL%=0:ENDPROC
  480IFCM%=15ANDCL%>4:CL%=0:ENDPROC
  490IFCM%=30ANDCL%>10:CL%=0:ENDPROC
  500IFCM%=45ANDCL%>16:CL%=0:ENDPROC
  510ENDPROC
  520DEFPROCbb
  530CL=CL%/2
  540CL2%=CL
  550IFCL2%<>CL:ENDPROC
  560SOUND2,-15,60,100
  570ENDPROC

�b% 255
q%=�:CL%=0:LST%=-1
.ș"Wimp_Initialise",200,&4B534154,"Chimes"
(	��er
2	ȕ�q%
<ș66�a%:a%+=50
F"ș"Wimp_PollIdle",0,b%,a% � r%
P	Ȏr%�
Z
�0:�ch
d
�17,18:�r
n�
x�
�ș"Wimp_CloseDown"
��
���r
�Ȏb%!16�
��0:q%=�
��
��
�I��er:!b%=�:$(b%+4)=�$+�(�)+�(0):ș "Wimp_ReportError",b%,1,"Chimes":�
���ch
�2CM%=�(��$,20,2)):�CM%=0�CM%=15�CM%=30�CM%=45 �
��LST%=-1:LST%=CM%
�
CL%+=1
��CL%=1�LST%=CM%:CL%=0
�
	CL%=0
�
"�CL%>0:�dochime
,,�CM%<>0�CM%<>15�CM%<>30�CM%<>45:LST%=CM%
6�
@
��dochime
J�CL%=1:Ƞ2:ȡ2,"BELL"
TLST%=CM%
^ȎCL% �
h�2,9,13,21:�2,-15,100,100
r�3,8,15,20:�2,-15,92,100
|�1,7,10,14,22:�2,-15,84,100
��4,16,19:�2,-15,64,100
��
�
�CL%>26 �
�HR%=�(��$,17,2))
��HR%>12:HR%=HR%-12
��HR%=0:HR%=12
� �CL%>((HR%*2)+26):CL%=0:��bb
��
��CL%=0:�
��CM%=15�CL%>4:CL%=0:�
��CM%=30�CL%>10:CL%=0:�
��CM%=45�CL%>16:CL%=0:�
��
��bb
CL=CL%/2
CL2%=CL
&�CL2%<>CL:�
0�2,-15,60,100
:�
�
00000000  0d 00 0a 0b de 62 25 20  32 35 35 0d 00 14 16 71  |.....b% 255....q|
00000010  25 3d a3 3a 43 4c 25 3d  30 3a 4c 53 54 25 3d 2d  |%=.:CL%=0:LST%=-|
00000020  31 0d 00 1e 2e c8 99 22  57 69 6d 70 5f 49 6e 69  |1......"Wimp_Ini|
00000030  74 69 61 6c 69 73 65 22  2c 32 30 30 2c 26 34 42  |tialise",200,&4B|
00000040  35 33 34 31 35 34 2c 22  43 68 69 6d 65 73 22 0d  |534154,"Chimes".|
00000050  00 28 09 ee 85 f2 65 72  0d 00 32 09 c8 95 ac 71  |.(....er..2....q|
00000060  25 0d 00 3c 12 c8 99 36  36 b8 61 25 3a 61 25 2b  |%..<...66.a%:a%+|
00000070  3d 35 30 0d 00 46 22 c8  99 22 57 69 6d 70 5f 50  |=50..F".."Wimp_P|
00000080  6f 6c 6c 49 64 6c 65 22  2c 30 2c 62 25 2c 61 25  |ollIdle",0,b%,a%|
00000090  20 b8 20 72 25 0d 00 50  09 c8 8e 72 25 ca 0d 00  | . r%..P...r%...|
000000a0  5a 0a c9 30 3a f2 63 68  0d 00 64 0d c9 31 37 2c  |Z..0:.ch..d..17,|
000000b0  31 38 3a f2 72 0d 00 6e  05 cb 0d 00 78 05 ce 0d  |18:.r..n....x...|
000000c0  00 82 16 c8 99 22 57 69  6d 70 5f 43 6c 6f 73 65  |....."Wimp_Close|
000000d0  44 6f 77 6e 22 0d 00 8c  05 e0 0d 00 96 07 dd f2  |Down"...........|
000000e0  72 0d 00 a0 0c c8 8e 62  25 21 31 36 ca 0d 00 aa  |r......b%!16....|
000000f0  0b c9 30 3a 71 25 3d b9  0d 00 b4 05 cb 0d 00 be  |..0:q%=.........|
00000100  05 e1 0d 00 c8 49 dd f2  65 72 3a 21 62 25 3d 9f  |.....I..er:!b%=.|
00000110  3a 24 28 62 25 2b 34 29  3d f6 24 2b c3 28 9e 29  |:$(b%+4)=.$+.(.)|
00000120  2b bd 28 30 29 3a c8 99  20 22 57 69 6d 70 5f 52  |+.(0):.. "Wimp_R|
00000130  65 70 6f 72 74 45 72 72  6f 72 22 2c 62 25 2c 31  |eportError",b%,1|
00000140  2c 22 43 68 69 6d 65 73  22 3a e1 0d 00 d2 08 dd  |,"Chimes":......|
00000150  f2 63 68 0d 00 dc 32 43  4d 25 3d bb 28 c1 91 24  |.ch...2CM%=.(..$|
00000160  2c 32 30 2c 32 29 29 3a  e7 43 4d 25 3d 30 84 43  |,20,2)):.CM%=0.C|
00000170  4d 25 3d 31 35 84 43 4d  25 3d 33 30 84 43 4d 25  |M%=15.CM%=30.CM%|
00000180  3d 34 35 20 8c 0d 00 e6  15 e7 4c 53 54 25 3d 2d  |=45 ......LST%=-|
00000190  31 3a 4c 53 54 25 3d 43  4d 25 0d 00 f0 0a 43 4c  |1:LST%=CM%....CL|
000001a0  25 2b 3d 31 0d 00 fa 19  e7 43 4c 25 3d 31 80 4c  |%+=1.....CL%=1.L|
000001b0  53 54 25 3d 43 4d 25 3a  43 4c 25 3d 30 0d 01 04  |ST%=CM%:CL%=0...|
000001c0  05 cc 0d 01 0e 09 43 4c  25 3d 30 0d 01 18 05 cd  |......CL%=0.....|
000001d0  0d 01 22 13 e7 43 4c 25  3e 30 3a f2 64 6f 63 68  |.."..CL%>0:.doch|
000001e0  69 6d 65 0d 01 2c 2c e7  43 4d 25 3c 3e 30 80 43  |ime..,,.CM%<>0.C|
000001f0  4d 25 3c 3e 31 35 80 43  4d 25 3c 3e 33 30 80 43  |M%<>15.CM%<>30.C|
00000200  4d 25 3c 3e 34 35 3a 4c  53 54 25 3d 43 4d 25 0d  |M%<>45:LST%=CM%.|
00000210  01 36 05 e1 0d 01 40 0d  dd f2 64 6f 63 68 69 6d  |.6....@...dochim|
00000220  65 0d 01 4a 19 e7 43 4c  25 3d 31 3a c8 a0 32 3a  |e..J..CL%=1:..2:|
00000230  c8 a1 32 2c 22 42 45 4c  4c 22 0d 01 54 0c 4c 53  |..2,"BELL"..T.LS|
00000240  54 25 3d 43 4d 25 0d 01  5e 0b c8 8e 43 4c 25 20  |T%=CM%..^...CL% |
00000250  ca 0d 01 68 1d c9 32 2c  39 2c 31 33 2c 32 31 3a  |...h..2,9,13,21:|
00000260  d4 32 2c 2d 31 35 2c 31  30 30 2c 31 30 30 0d 01  |.2,-15,100,100..|
00000270  72 1c c9 33 2c 38 2c 31  35 2c 32 30 3a d4 32 2c  |r..3,8,15,20:.2,|
00000280  2d 31 35 2c 39 32 2c 31  30 30 0d 01 7c 1f c9 31  |-15,92,100..|..1|
00000290  2c 37 2c 31 30 2c 31 34  2c 32 32 3a d4 32 2c 2d  |,7,10,14,22:.2,-|
000002a0  31 35 2c 38 34 2c 31 30  30 0d 01 86 1a c9 34 2c  |15,84,100.....4,|
000002b0  31 36 2c 31 39 3a d4 32  2c 2d 31 35 2c 36 34 2c  |16,19:.2,-15,64,|
000002c0  31 30 30 0d 01 90 05 cb  0d 01 9a 0d e7 43 4c 25  |100..........CL%|
000002d0  3e 32 36 20 8c 0d 01 a4  14 48 52 25 3d bb 28 c1  |>26 .....HR%=.(.|
000002e0  91 24 2c 31 37 2c 32 29  29 0d 01 ae 16 e7 48 52  |.$,17,2)).....HR|
000002f0  25 3e 31 32 3a 48 52 25  3d 48 52 25 2d 31 32 0d  |%>12:HR%=HR%-12.|
00000300  01 b8 11 e7 48 52 25 3d  30 3a 48 52 25 3d 31 32  |....HR%=0:HR%=12|
00000310  0d 01 c2 20 e7 43 4c 25  3e 28 28 48 52 25 2a 32  |... .CL%>((HR%*2|
00000320  29 2b 32 36 29 3a 43 4c  25 3d 30 3a 8b f2 62 62  |)+26):CL%=0:..bb|
00000330  0d 01 cc 05 cd 0d 01 d6  0c e7 43 4c 25 3d 30 3a  |..........CL%=0:|
00000340  e1 0d 01 e0 19 e7 43 4d  25 3d 31 35 80 43 4c 25  |......CM%=15.CL%|
00000350  3e 34 3a 43 4c 25 3d 30  3a e1 0d 01 ea 1a e7 43  |>4:CL%=0:......C|
00000360  4d 25 3d 33 30 80 43 4c  25 3e 31 30 3a 43 4c 25  |M%=30.CL%>10:CL%|
00000370  3d 30 3a e1 0d 01 f4 1a  e7 43 4d 25 3d 34 35 80  |=0:......CM%=45.|
00000380  43 4c 25 3e 31 36 3a 43  4c 25 3d 30 3a e1 0d 01  |CL%>16:CL%=0:...|
00000390  fe 05 e1 0d 02 08 08 dd  f2 62 62 0d 02 12 0c 43  |.........bb....C|
000003a0  4c 3d 43 4c 25 2f 32 0d  02 1c 0b 43 4c 32 25 3d  |L=CL%/2....CL2%=|
000003b0  43 4c 0d 02 26 0f e7 43  4c 32 25 3c 3e 43 4c 3a  |CL..&..CL2%<>CL:|
000003c0  e1 0d 02 30 11 d4 32 2c  2d 31 35 2c 36 30 2c 31  |...0..2,-15,60,1|
000003d0  30 30 0d 02 3a 05 e1 0d  ff                       |00..:....|
000003d9