mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:43:15 -06:00
vgmplay updates
Still not in a terrific state but better
This commit is contained in:
145
Source/Apps/TEST/sound/Scales.asm
Normal file
145
Source/Apps/TEST/sound/Scales.asm
Normal file
@@ -0,0 +1,145 @@
|
||||
;
|
||||
|
||||
.ORG $0100
|
||||
|
||||
; SCALES ON ALL THREE CHANNELS
|
||||
|
||||
; JR SKIP
|
||||
|
||||
LD B,3
|
||||
NEXTCH0 LD A,B
|
||||
DEC A
|
||||
LD (CHANNEL),A
|
||||
PUSH BC ; ACROSS
|
||||
CALL SCALE ; ALL
|
||||
POP BC ; CHANNELS
|
||||
DJNZ NEXTCH0
|
||||
|
||||
; CONSTANT TONE ON ALL THREE CHANNELS, SCALE VOLUME
|
||||
SKIP:
|
||||
LD HL,332+48 ; TONE
|
||||
LD (NOTE),HL
|
||||
;
|
||||
LD B,3
|
||||
NEXTCH1 LD A,B
|
||||
DEC A
|
||||
LD (CHANNEL),A
|
||||
PUSH BC ; ACROSS
|
||||
CALL TONE ; ALL
|
||||
POP BC ; CHANNELS
|
||||
DJNZ NEXTCH1
|
||||
|
||||
RET
|
||||
|
||||
TONE: LD B,50H ; RESET
|
||||
LD C,0
|
||||
RST 08
|
||||
;
|
||||
NEXT1: LD B,51H ; VOLUME
|
||||
LD C,0
|
||||
LD A,(VOLUME)
|
||||
LD L,A
|
||||
RST 08
|
||||
;
|
||||
LD B,53H ; NOTE
|
||||
LD C,0
|
||||
LD HL,(NOTE)
|
||||
RST 08
|
||||
;
|
||||
LD B,54H ; PLAY
|
||||
LD C,0
|
||||
LD A,(CHANNEL)
|
||||
LD D,A
|
||||
RST 08
|
||||
;
|
||||
CALL DELAY
|
||||
;
|
||||
LD A,(VOLUME)
|
||||
DEC A
|
||||
LD (VOLUME),A
|
||||
JR NZ,NEXT1
|
||||
;
|
||||
LD B,51H ; VOLUME
|
||||
LD C,0
|
||||
LD L,00H
|
||||
RST 08
|
||||
;
|
||||
LD B,54H ; PLAY
|
||||
LD C,0
|
||||
LD A,(CHANNEL)
|
||||
LD D,A
|
||||
RST 08
|
||||
;
|
||||
RET
|
||||
;
|
||||
;
|
||||
;
|
||||
SCALE: LD B,50H ; RESET
|
||||
LD C,0
|
||||
RST 08
|
||||
;
|
||||
LD B,51H ; VOLUME
|
||||
LD C,0
|
||||
LD L,80H
|
||||
RST 08
|
||||
;
|
||||
LD HL,380
|
||||
LD (NOTE),HL
|
||||
;
|
||||
NEXT0: LD B,53H ; NOTE
|
||||
LD C,0
|
||||
LD HL,(NOTE)
|
||||
RST 08
|
||||
;
|
||||
LD B,54H ; PLAY
|
||||
LD C,0
|
||||
LD A,(CHANNEL)
|
||||
LD D,A
|
||||
RST 08
|
||||
;
|
||||
OR A
|
||||
JR Z,NEXT2
|
||||
LD C,9
|
||||
LD DE,BADFLAG
|
||||
CALL 5
|
||||
JR NEXT3
|
||||
;
|
||||
NEXT2: CALL DELAY
|
||||
;
|
||||
NEXT3: LD HL,(NOTE)
|
||||
DEC HL
|
||||
LD A,L
|
||||
LD (NOTE),A
|
||||
LD A,H
|
||||
LD (NOTE+1),A
|
||||
OR L
|
||||
;
|
||||
JR NZ,NEXT0
|
||||
;
|
||||
LD B,51H ; VOLUME
|
||||
LD C,0
|
||||
LD L,00H
|
||||
RST 08
|
||||
;
|
||||
LD B,54H ; PLAY
|
||||
LD C,0
|
||||
LD A,(CHANNEL)
|
||||
LD D,A
|
||||
RST 08
|
||||
;
|
||||
RET
|
||||
;
|
||||
DELAY: LD HL,-1
|
||||
DELAY1: DEC HL
|
||||
LD A,H
|
||||
OR L
|
||||
JR NZ,DELAY1
|
||||
RET
|
||||
;
|
||||
BADFLAG .DB '*', $0D, $0A, '$'
|
||||
NOTE .DW 128
|
||||
VOLUME .DB 0
|
||||
CHANNEL .DB 0
|
||||
;
|
||||
.END
|
||||
|
||||
Reference in New Issue
Block a user