Prev: 25892 Up: Map Next: 26088
25960: Play Music
Used by the routines at StartGame, 25832 and 26820.
Input
DE Music Data
PlayMusic 25960 LD A,(DE) Fetch the music data byte.
25961 CP 255 Return if the terminator character has been reached.
25963 RET Z
25964 AND %00011111 Keep only bits 0-3.
25966 DEC A Decrease A by one.
25967 SLA A A=A * 2.
25969 LD C,A Create an offset in BC.
25970 LD B,0
25972 LD HL,26004 HL=26004 + offset.
25975 ADD HL,BC
25976 PUSH DE Stash DE on the stack.
25977 LD A,(HL)
25978 INC HL
25979 LD E,(HL)
25980 LD D,0
25982 LD L,A
25983 LD H,0
25985 SLA L
25987 RL H
25989 SLA L
25991 RL H
25993 PUSH IX Stash IX on the stack.
25995 CALL 949 Call BEEPER
25998 POP IX Restore IX and DE from the stack.
26000 POP DE
26001 INC DE Increment DE by one.
26002 JR PlayMusic Loop back round to the beginning (we only end when the terminator is reached).
26004 DEFW 33447
26006 DEFW 35486
26008 DEFW 37525
26010 DEFW 39565
26012 DEFW 42117
26014 DEFW 44669
26016 DEFW 47222
26018 DEFW 50288
26020 DEFW 53353
26022 DEFW 56420
26024 DEFW 59998
26026 DEFW 63065
26028 DEFW 65364
26030 DEFW 16807
26032 DEFW 17822
26034 DEFW 18837
26036 DEFW 19853
26038 DEFW 21125
26040 DEFW 22397
26042 DEFW 23670
26044 DEFW 25200
26046 DEFW 26729
26048 DEFW 28260
26050 DEFW 30046
26052 DEFW 31577
26054 DEFW 33620
MusicData 26056 DEFB 14,1,14,3,4,5,5,1 Music Data
26064 DEFB 255,14,1,14,3,5,6,1
26072 DEFB 6,255,13,5,6,7,8,6
26080 DEFB 5,3,1,5,8,5,1,255
Prev: 25892 Up: Map Next: 26088