summaryrefslogtreecommitdiff
path: root/macros/scripts/audio.asm
diff options
context:
space:
mode:
authorRangi <remy.oukaour+rangi42@gmail.com>2020-10-26 22:24:38 -0400
committerRangi <remy.oukaour+rangi42@gmail.com>2020-10-26 22:24:38 -0400
commitc85ba78b778a0e35c2fe7f97ed4e8fee1b3c7036 (patch)
treef3d25ab52cbb2d1e92c89e1ad976dcb929c05768 /macros/scripts/audio.asm
parent9dcdad5e60fbc10ba81ae127743c78a6b00d3dd5 (diff)
Use more assertions to ensure correct code and data
Diffstat (limited to 'macros/scripts/audio.asm')
-rw-r--r--macros/scripts/audio.asm5
1 files changed, 5 insertions, 0 deletions
diff --git a/macros/scripts/audio.asm b/macros/scripts/audio.asm
index 2776c293f..127f2d1e3 100644
--- a/macros/scripts/audio.asm
+++ b/macros/scripts/audio.asm
@@ -1,8 +1,12 @@
channel_count: MACRO
+ assert 0 < (\1) && (\1) <= NUM_MUSIC_CHANS, \
+ "channel_count must be 1-{d:NUM_MUSIC_CHANS}"
_num_channels = \1 - 1
ENDM
channel: MACRO
+ assert 0 < (\1) && (\1) <= NUM_CHANNELS, \
+ "channel id must be 1-{d:NUM_CHANNELS}"
dn (_num_channels << 2), \1 - 1 ; channel id
dw \2 ; address
_num_channels = 0
@@ -46,6 +50,7 @@ FIRST_MUSIC_CMD EQU const_value
const octave_cmd ; $d0
octave: MACRO
+ assert 0 < (\1) && (\1) < 8, "octave must be 1-8"
db octave_cmd | 8 - (\1) ; octave
ENDM