backend-infra-engineer: Pre-0.2.2 snapshot (2022)

This commit is contained in:
scawful
2023-01-01 17:52:09 -06:00
parent c86a241ee2
commit e7470bdfac
101 changed files with 13685 additions and 3 deletions

View File

@@ -0,0 +1,32 @@
org <HOOK>
JML AreaCheck
org <EXPANDED_SPACE>
AreaCheck:
PHB : PHK : PLB
TAX
LDA .pool, X
BEQ .noMosaic1
PLB
JML $02AAE5
.noMosaic1
LDX $8A
LDA .pool, X
BEQ .noMosaic2
PLB
JML $02AAE5
.noMosaic2
PLB
JML $02AAF4
NOP
.pool

View File

@@ -0,0 +1,160 @@
;
; Credit to Zarby89
;
lorom
!End = $00
!Rest = $C9
!Tie = $C8
macro SetChannelVolume(v)
db $ED, <v>
endmacro
macro SetMasterVolume(v)
db $E5, <v>
endmacro
macro SetTempo(v)
db $E7, <v>
endmacro
macro SetInstrument(v)
db $E0, <v>
endmacro
macro CallSubroutine(addr, repeat)
db $EF
dw <addr>
db <repeat>
endmacro
;1/4 = $48
;1/4 double = $6C
;1/4 triplet = $30
;1/8 = $24
;1/8 double = $36
;1/8 triplet = $18
;1/16 = $12
;1/16 double = $1B
;1/32 = $09
; To make a whole note you tie 4 1/4 so something like
;%SetDuration(48)
;db !C4, !Tie, !Tie, !Tie ; will play a whole note (1/1)
;db !C4, !Tie ; will play a half note (1/2)
macro SetDuration(v)
db <v>, $7F
endmacro
!C1 = $80
!C1s = $81
!D1 = $82
!D1s = $83
!E1 = $84
!F1 = $85
!F1s = $86
!G1 = $87
!G1s = $88
!A1 = $89
!A1s = $8A
!B1 = $8B
!C2 = $8C
!C2s = $8D
!D2 = $8E
!D2s = $8F
!E2 = $90
!F2 = $91
!F2s = $92
!G2 = $93
!G2s = $94
!A2 = $95
!A2s = $96
!B2 = $97
!C3 = $98
!C3s = $99
!D3 = $9A
!D3s = $9B
!E3 = $9C
!F3 = $9D
!F3s = $9E
!G3 = $9F
!G3s = $A0
!A3 = $A1
!A3s = $A2
!B3 = $A3
!C4 = $A4
!C4s = $A5
!D4 = $A6
!D4s = $A7
!E4 = $A8
!F4 = $A9
!F4s = $AA
!G4 = $AB
!G4s = $AC
!A4 = $AD
!A4s = $AE
!B4 = $AF
!C5 = $B0
!C5s = $B1
!D5 = $B2
!D5s = $B3
!E5 = $B4
!F5 = $B5
!F5s = $B6
!G5 = $B7
!G5s = $B8
!A5 = $B9
!A5s = $BA
!B5 = $BB
!C6 = $BC
!C6s = $BD
!D6 = $BE
!D6s = $BF
!E6 = $C0
!F6 = $C1
!F6s = $C2
!G6 = $C3
!G6s = $C4
!A6 = $C5
!A6s = $C6
!B6 = $C7
org $1A9FF8 ; Hyrule Castle (Song Header information)
Sections:
!ARAMAddr = $D0FF
!StartingAddr = Sections
dw !ARAMAddr+$0A
dw !ARAMAddr+$0A
dw $00FF
dw !ARAMAddr
dw $0000
Channels:
!ARAMC = !ARAMAddr-Sections
dw Channel0+!ARAMC
dw $0000
dw $0000
dw $0000
dw $0000
dw $0000
dw $0000
dw $0000
Channel0:
SetMasterVolume($80)
SetTempo($40)
SetInstrument($17)
db !Rest, !Rest, !Rest
db !End