From c85ba78b778a0e35c2fe7f97ed4e8fee1b3c7036 Mon Sep 17 00:00:00 2001 From: Rangi Date: Mon, 26 Oct 2020 22:24:38 -0400 Subject: Use more assertions to ensure correct code and data --- macros/scripts/audio.asm | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'macros/scripts/audio.asm') 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 -- cgit v1.2.3