VERA Channels
VERA Channels are setup as a structure of arrays. The offset of each array is the channel number ($00-$10, 00-15). This holds the intended state of the channel. Both the row playback and synth tick updates will read and manipulate the channel.
Volume and Wave Envelope Flags:
Pitch Envelope Flags:
.scope vera
; Channel registers
; Doesn't seem like I can figure out structs
; here either
channel_instrument: .byte $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
.byte $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
; bit 7: active, rest are NOPs ATM
channel_flags: .byte $00,$00,$00,$00,$00,$00,$00,$00
.byte $00,$00,$00,$00,$00,$00,$00,$00
channel_note: .res $10
channel_pitch_low: .res $10
channel_pitch_high: .res $10
channel_vol: .res $10
channel_wave: .res $10
channel_vol_envelope_num: .res $10
channel_vol_envelope_flags: .res $10
channel_vol_envelope_length: .res $10
channel_vol_envelope_loop_start: .res $10
channel_vol_envelope_loop_end: .res $10
channel_vol_envelope_position: .res $10
channel_wave_envelope_num: .res $10
channel_wave_envelope_flags: .res $10
channel_wave_envelope_length: .res $10
channel_wave_envelope_loop_start: .res $10
channel_wave_envelope_loop_end: .res $10
channel_wave_envelope_position: .res $10
channel_pitch_envelope_num: .res $10
channel_pitch_envelope_flags: .res $10
channel_pitch_envelope_length: .res $10
channel_pitch_envelope_loop_start: .res $10
channel_pitch_envelope_loop_end: .res $10
channel_pitch_envelope_position: .res $10
.endscope