Identify CHANNEL_FIELD16
as CHANNEL_NOTE_DURATION_MODIFIER
(#1162)
This commit is contained in:
@@ -2205,8 +2205,8 @@ SetNoteDuration:
|
|||||||
ld e, [hl]
|
ld e, [hl]
|
||||||
inc hl
|
inc hl
|
||||||
ld d, [hl]
|
ld d, [hl]
|
||||||
; add ??? to the next result
|
; add duration modifier to the next result
|
||||||
ld hl, CHANNEL_FIELD16
|
ld hl, CHANNEL_NOTE_DURATION_MODIFIER
|
||||||
add hl, bc
|
add hl, bc
|
||||||
ld l, [hl]
|
ld l, [hl]
|
||||||
; multiply Tempo by last result (NoteLength * LOW(delay))
|
; multiply Tempo by last result (NoteLength * LOW(delay))
|
||||||
@@ -2214,11 +2214,10 @@ SetNoteDuration:
|
|||||||
; copy result to de
|
; copy result to de
|
||||||
ld e, l
|
ld e, l
|
||||||
ld d, h
|
ld d, h
|
||||||
; store result in ???
|
; store result in NoteDuration and NoteDurationModifier
|
||||||
ld hl, CHANNEL_FIELD16
|
ld hl, CHANNEL_NOTE_DURATION_MODIFIER
|
||||||
add hl, bc
|
add hl, bc
|
||||||
ld [hl], e
|
ld [hl], e
|
||||||
; store result in NoteDuration
|
|
||||||
ld hl, CHANNEL_NOTE_DURATION
|
ld hl, CHANNEL_NOTE_DURATION
|
||||||
add hl, bc
|
add hl, bc
|
||||||
ld [hl], d
|
ld [hl], d
|
||||||
@@ -2283,9 +2282,9 @@ Tempo:
|
|||||||
ld [hl], e
|
ld [hl], e
|
||||||
inc hl
|
inc hl
|
||||||
ld [hl], d
|
ld [hl], d
|
||||||
; clear ???
|
; clear duration modifier
|
||||||
xor a
|
xor a
|
||||||
ld hl, CHANNEL_FIELD16
|
ld hl, CHANNEL_NOTE_DURATION_MODIFIER
|
||||||
add hl, bc
|
add hl, bc
|
||||||
ld [hl], a
|
ld [hl], a
|
||||||
ret
|
ret
|
||||||
|
@@ -49,7 +49,7 @@ DEF CHANNEL_PITCH rb
|
|||||||
DEF CHANNEL_OCTAVE rb
|
DEF CHANNEL_OCTAVE rb
|
||||||
DEF CHANNEL_TRANSPOSITION rb
|
DEF CHANNEL_TRANSPOSITION rb
|
||||||
DEF CHANNEL_NOTE_DURATION rb
|
DEF CHANNEL_NOTE_DURATION rb
|
||||||
DEF CHANNEL_FIELD16 rb
|
DEF CHANNEL_NOTE_DURATION_MODIFIER rb
|
||||||
rb_skip
|
rb_skip
|
||||||
DEF CHANNEL_LOOP_COUNT rb
|
DEF CHANNEL_LOOP_COUNT rb
|
||||||
DEF CHANNEL_TEMPO rw
|
DEF CHANNEL_TEMPO rw
|
||||||
|
@@ -135,47 +135,47 @@ MACRO map_connection_struct
|
|||||||
ENDM
|
ENDM
|
||||||
|
|
||||||
MACRO channel_struct
|
MACRO channel_struct
|
||||||
\1MusicID:: dw
|
\1MusicID:: dw
|
||||||
\1MusicBank:: db
|
\1MusicBank:: db
|
||||||
\1Flags1:: db ; 0:on/off 1:subroutine 2:looping 3:sfx 4:noise 5:rest
|
\1Flags1:: db ; 0:on/off 1:subroutine 2:looping 3:sfx 4:noise 5:rest
|
||||||
\1Flags2:: db ; 0:vibrato on/off 1:pitch slide 2:duty cycle pattern 4:pitch offset
|
\1Flags2:: db ; 0:vibrato on/off 1:pitch slide 2:duty cycle pattern 4:pitch offset
|
||||||
\1Flags3:: db ; 0:vibrato up/down 1:pitch slide direction
|
\1Flags3:: db ; 0:vibrato up/down 1:pitch slide direction
|
||||||
\1MusicAddress:: dw
|
\1MusicAddress:: dw
|
||||||
\1LastMusicAddress:: dw
|
\1LastMusicAddress:: dw
|
||||||
dw
|
ds 2
|
||||||
\1NoteFlags:: db ; 5:rest
|
\1NoteFlags:: db ; 5:rest
|
||||||
\1Condition:: db ; conditional jumps
|
\1Condition:: db ; conditional jumps
|
||||||
\1DutyCycle:: db ; bits 6-7 (0:12.5% 1:25% 2:50% 3:75%)
|
\1DutyCycle:: db ; bits 6-7 (0:12.5% 1:25% 2:50% 3:75%)
|
||||||
\1VolumeEnvelope:: db ; hi:volume lo:fade
|
\1VolumeEnvelope:: db ; hi:volume lo:fade
|
||||||
\1Frequency:: dw ; 11 bits
|
\1Frequency:: dw ; 11 bits
|
||||||
\1Pitch:: db ; 0:rest 1-c:note
|
\1Pitch:: db ; 0:rest 1-c:note
|
||||||
\1Octave:: db ; 7-0 (0 is highest)
|
\1Octave:: db ; 7-0 (0 is highest)
|
||||||
\1Transposition:: db ; raises existing octaves (to repeat phrases)
|
\1Transposition:: db ; raises existing octaves (to repeat phrases)
|
||||||
\1NoteDuration:: db ; frames remaining for the current note
|
\1NoteDuration:: db ; frames remaining for the current note
|
||||||
\1Field16:: ds 1
|
\1NoteDurationModifier:: db
|
||||||
ds 1
|
ds 1
|
||||||
\1LoopCount:: db
|
\1LoopCount:: db
|
||||||
\1Tempo:: dw
|
\1Tempo:: dw
|
||||||
\1Tracks:: db ; hi:left lo:right
|
\1Tracks:: db ; hi:left lo:right
|
||||||
\1DutyCyclePattern:: db
|
\1DutyCyclePattern:: db
|
||||||
\1VibratoDelayCount:: db ; initialized by \1VibratoDelay
|
\1VibratoDelayCount:: db ; initialized by \1VibratoDelay
|
||||||
\1VibratoDelay:: db ; number of frames a note plays until vibrato starts
|
\1VibratoDelay:: db ; number of frames a note plays until vibrato starts
|
||||||
\1VibratoExtent:: db
|
\1VibratoExtent:: db
|
||||||
\1VibratoRate:: db ; hi:frames for each alt lo:frames to the next alt
|
\1VibratoRate:: db ; hi:frames for each alt lo:frames to the next alt
|
||||||
\1PitchSlideTarget:: dw ; frequency endpoint for pitch slide
|
\1PitchSlideTarget:: dw ; frequency endpoint for pitch slide
|
||||||
\1PitchSlideAmount:: db
|
\1PitchSlideAmount:: db
|
||||||
\1PitchSlideAmountFraction:: db
|
\1PitchSlideAmountFraction:: db
|
||||||
\1Field25:: db
|
\1Field25:: db
|
||||||
ds 1
|
ds 1
|
||||||
\1PitchOffset:: dw
|
\1PitchOffset:: dw
|
||||||
\1Field29:: ds 1
|
\1Field29:: ds 1
|
||||||
\1Field2a:: ds 2
|
\1Field2a:: ds 2
|
||||||
\1Field2c:: ds 1
|
\1Field2c:: ds 1
|
||||||
\1NoteLength:: db ; frames per 16th note
|
\1NoteLength:: db ; frames per 16th note
|
||||||
\1Field2e:: ds 1
|
\1Field2e:: ds 1
|
||||||
\1Field2f:: ds 1
|
\1Field2f:: ds 1
|
||||||
\1Field30:: ds 1
|
\1Field30:: ds 1
|
||||||
ds 1
|
ds 1
|
||||||
ENDM
|
ENDM
|
||||||
|
|
||||||
MACRO battle_tower_struct
|
MACRO battle_tower_struct
|
||||||
|
Reference in New Issue
Block a user