diff --git a/include/sointu/sinks_header.inc b/include/sointu/sinks_header.inc index c0c0b01..2303962 100644 --- a/include/sointu/sinks_header.inc +++ b/include/sointu/sinks_header.inc @@ -99,23 +99,33 @@ endstruc %endif %endmacro -%macro SU_SEND 3 +%macro SU_SEND 5 ; local send (params: STEREO, AMOUNT, UNIT, PORT, FLAGS) db %2 - dw %3 + dw ((%3+1)*su_unit.size + su_unit.ports)/4 + %4 + %5 USE_SEND %xdefine CMDS CMDS SEND_ID + %1, %if %1 == STEREO %define INCLUDE_STEREO_SEND %endif - %if (%3) & SEND_GLOBAL == SEND_GLOBAL - %define INCLUDE_GLOBAL_SEND - %endif %endmacro +%macro SU_SEND 6 ; global send (params: STEREO, AMOUNT, VOICE, UNIT, PORT, FLAGS) + db %2 + dw SEND_GLOBAL + (su_synthworkspace.voices+%3*su_voice.size+su_voice.workspace+%4*su_unit.size + su_unit.ports)/4 + %5 + %6 + USE_SEND + %xdefine CMDS CMDS SEND_ID + %1, + %if %1 == STEREO + %define INCLUDE_STEREO_SEND + %endif + %define INCLUDE_GLOBAL_SEND +%endmacro + +%define VOICE(val) val +%define UNIT(val) val +%define PORT(val) val %define AMOUNT(val) val -%define LOCALPORT(unit,port) ((unit+1)*su_unit.size + su_unit.ports)/4 + port -%define GLOBALPORT(voice,unit,port) SEND_GLOBAL + (su_synthworkspace.voices+voice*su_voice.size+su_voice.workspace+unit*su_unit.size + su_unit.ports)/4 + port %define OUTPORT 0 +%define NONE 0 %define SEND_POP 0x8000 %define SEND_GLOBAL 0x4000 diff --git a/tests/test_compressor.asm b/tests/test_compressor.asm index fe2b801..5114ae3 100644 --- a/tests/test_compressor.asm +++ b/tests/test_compressor.asm @@ -19,8 +19,8 @@ BEGIN_PATCH SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(TRISAW) SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(TRISAW) SU_MULP STEREO - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,0) + SEND_POP - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,1) + SEND_POP + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(0),FLAGS(SEND_POP) + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(1),FLAGS(SEND_POP) END_INSTRUMENT BEGIN_INSTRUMENT VOICES(1) ; Instrument0 SU_ENVELOPE MONO,ATTAC(64),DECAY(64),SUSTAIN(64),RELEASE(64),GAIN(128) @@ -28,8 +28,8 @@ BEGIN_PATCH SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE) SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE) SU_MULP STEREO - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,0) + SEND_POP - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,1) + SEND_POP + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(0),FLAGS(SEND_POP) + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(1),FLAGS(SEND_POP) END_INSTRUMENT BEGIN_INSTRUMENT VOICES(1) ; Global compressor effect SU_RECEIVE STEREO diff --git a/tests/test_compressor_stereo.asm b/tests/test_compressor_stereo.asm index 19b7ccf..e53080b 100644 --- a/tests/test_compressor_stereo.asm +++ b/tests/test_compressor_stereo.asm @@ -19,8 +19,8 @@ BEGIN_PATCH SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(TRISAW) SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(TRISAW) SU_MULP STEREO - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,0) + SEND_POP - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,1) + SEND_POP + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(0),FLAGS(SEND_POP) + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(1),FLAGS(SEND_POP) END_INSTRUMENT BEGIN_INSTRUMENT VOICES(1) ; Instrument0 SU_ENVELOPE MONO,ATTAC(64),DECAY(64),SUSTAIN(64),RELEASE(64),GAIN(128) @@ -28,8 +28,8 @@ BEGIN_PATCH SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE) SU_OSCILLAT MONO,TRANSPOSE(88),DETUNE(64),PHASE(0),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE) SU_MULP STEREO - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,0) + SEND_POP - SU_SEND MONO,AMOUNT(128),GLOBALPORT(2,0,1) + SEND_POP + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(0),FLAGS(SEND_POP) + SU_SEND MONO,AMOUNT(128),VOICE(2),UNIT(0),PORT(1),FLAGS(SEND_POP) END_INSTRUMENT BEGIN_INSTRUMENT VOICES(1) ; Global compressor effect SU_RECEIVE STEREO diff --git a/tests/test_delay_dampmod.asm b/tests/test_delay_dampmod.asm index 9a291ef..b3211c4 100644 --- a/tests/test_delay_dampmod.asm +++ b/tests/test_delay_dampmod.asm @@ -19,7 +19,7 @@ BEGIN_PATCH SU_PAN MONO,PANNING(64) SU_OUT STEREO,GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(32),LOCALPORT(3,3) + SEND_POP + SU_SEND MONO,AMOUNT(32),UNIT(3),PORT(3),FLAGS(SEND_POP) END_INSTRUMENT END_PATCH diff --git a/tests/test_delay_drymod.asm b/tests/test_delay_drymod.asm index 2091739..8fe043e 100644 --- a/tests/test_delay_drymod.asm +++ b/tests/test_delay_drymod.asm @@ -19,7 +19,7 @@ BEGIN_PATCH SU_PAN MONO,PANNING(64) SU_OUT STEREO,GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(32),LOCALPORT(3,1) + SEND_POP + SU_SEND MONO,AMOUNT(32),UNIT(3),PORT(1),FLAGS(SEND_POP) END_INSTRUMENT END_PATCH diff --git a/tests/test_delay_feedbackmod.asm b/tests/test_delay_feedbackmod.asm index 889bccd..4836844 100644 --- a/tests/test_delay_feedbackmod.asm +++ b/tests/test_delay_feedbackmod.asm @@ -19,7 +19,7 @@ BEGIN_PATCH SU_PAN MONO,PANNING(64) SU_OUT STEREO,GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(32),LOCALPORT(3,2) + SEND_POP + SU_SEND MONO,AMOUNT(32),UNIT(3),PORT(2),FLAGS(SEND_POP) END_INSTRUMENT END_PATCH diff --git a/tests/test_delay_flanger.asm b/tests/test_delay_flanger.asm index b2cb124..a282e44 100644 --- a/tests/test_delay_flanger.asm +++ b/tests/test_delay_flanger.asm @@ -20,7 +20,7 @@ BEGIN_PATCH SU_PAN MONO,PANNING(64) SU_OUT STEREO,GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(50),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(65),LOCALPORT(3,5) + SEND_POP + SU_SEND MONO,AMOUNT(65),UNIT(3),PORT(5),FLAGS(SEND_POP) END_INSTRUMENT END_PATCH diff --git a/tests/test_delay_pregainmod.asm b/tests/test_delay_pregainmod.asm index fb46db6..e94e138 100644 --- a/tests/test_delay_pregainmod.asm +++ b/tests/test_delay_pregainmod.asm @@ -19,7 +19,7 @@ BEGIN_PATCH SU_PAN MONO,PANNING(64) SU_OUT STEREO,GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(32),LOCALPORT(3,0) + SEND_POP + SU_SEND MONO,AMOUNT(32),UNIT(3),PORT(0),FLAGS(SEND_POP) END_INSTRUMENT END_PATCH diff --git a/tests/test_distort_mod.asm b/tests/test_distort_mod.asm index d052f8c..660c4ed 100644 --- a/tests/test_distort_mod.asm +++ b/tests/test_distort_mod.asm @@ -17,8 +17,8 @@ BEGIN_PATCH SU_ENVELOPE MONO, ATTAC(64),DECAY(64),SUSTAIN(64),RELEASE(80),GAIN(128) SU_DISTORT MONO, DRIVE(96) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(68),LOCALPORT(1,0) - SU_SEND MONO,AMOUNT(68),LOCALPORT(3,0) + SEND_POP + SU_SEND MONO,AMOUNT(68),UNIT(1),PORT(0),FLAGS(NONE) + SU_SEND MONO,AMOUNT(68),UNIT(3),PORT(0),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_envelope_mod.asm b/tests/test_envelope_mod.asm index d9ae8af..859f784 100644 --- a/tests/test_envelope_mod.asm +++ b/tests/test_envelope_mod.asm @@ -15,11 +15,11 @@ BEGIN_PATCH SU_ENVELOPE MONO,ATTAC(80),DECAY(80),SUSTAIN(64),RELEASE(80),GAIN(128) SU_ENVELOPE MONO,ATTAC(80),DECAY(80),SUSTAIN(64),RELEASE(80),GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(120),DETUNE(64),PHASE(0),COLOR(128),SHAPE(96),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(68),LOCALPORT(0,0) - SU_SEND MONO,AMOUNT(68),LOCALPORT(0,1) + SU_SEND MONO,AMOUNT(68),UNIT(0),PORT(0),FLAGS(NONE) + SU_SEND MONO,AMOUNT(68),UNIT(0),PORT(1),FLAGS(NONE) ; Sustain modulation seems not to be implemented - SU_SEND MONO,AMOUNT(68),LOCALPORT(0,3) - SU_SEND MONO,AMOUNT(68),LOCALPORT(1,4) + SEND_POP + SU_SEND MONO,AMOUNT(68),UNIT(0),PORT(3),FLAGS(NONE) + SU_SEND MONO,AMOUNT(68),UNIT(1),PORT(4),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(110) END_INSTRUMENT END_PATCH diff --git a/tests/test_filter_freqmod.asm b/tests/test_filter_freqmod.asm index d423973..986fb42 100644 --- a/tests/test_filter_freqmod.asm +++ b/tests/test_filter_freqmod.asm @@ -19,7 +19,7 @@ BEGIN_PATCH SU_PAN MONO,PANNING(64) SU_OUT STEREO,GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE + LFO) - SU_SEND MONO,AMOUNT(32),LOCALPORT(3,0) + SEND_POP + SU_SEND MONO,AMOUNT(32),UNIT(3),PORT(0),FLAGS(SEND_POP) END_INSTRUMENT END_PATCH diff --git a/tests/test_filter_resmod.asm b/tests/test_filter_resmod.asm index 8d95f50..28388cc 100644 --- a/tests/test_filter_resmod.asm +++ b/tests/test_filter_resmod.asm @@ -19,7 +19,7 @@ BEGIN_PATCH SU_PAN MONO,PANNING(64) SU_OUT STEREO,GAIN(128) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE + LFO) - SU_SEND MONO,AMOUNT(32),LOCALPORT(3,1) + SEND_POP + SU_SEND MONO,AMOUNT(32),UNIT(3),PORT(1),FLAGS(SEND_POP) END_INSTRUMENT END_PATCH diff --git a/tests/test_hold_mod.asm b/tests/test_hold_mod.asm index 1bcb02d..41c011e 100644 --- a/tests/test_hold_mod.asm +++ b/tests/test_hold_mod.asm @@ -17,8 +17,8 @@ BEGIN_PATCH SU_ENVELOPE MONO,ATTAC(64),DECAY(64),SUSTAIN(64),RELEASE(80),GAIN(128) SU_HOLD MONO,HOLDFREQ(3) SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(68),LOCALPORT(1,0) - SU_SEND MONO,AMOUNT(68),LOCALPORT(3,0) + SEND_POP + SU_SEND MONO,AMOUNT(68),UNIT(1),PORT(0),FLAGS(NONE) + SU_SEND MONO,AMOUNT(68),UNIT(3),PORT(0),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_oscillat_colormod.asm b/tests/test_oscillat_colormod.asm index 0145710..cca5c26 100644 --- a/tests/test_oscillat_colormod.asm +++ b/tests/test_oscillat_colormod.asm @@ -17,7 +17,7 @@ BEGIN_PATCH SU_MULP MONO SU_PUSH MONO SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE + LFO) - SU_SEND MONO,AMOUNT(68),LOCALPORT(1,3) + SEND_POP + SU_SEND MONO,AMOUNT(68),UNIT(1),PORT(3),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_oscillat_detunemod.asm b/tests/test_oscillat_detunemod.asm index 1f75208..d6dc8d4 100644 --- a/tests/test_oscillat_detunemod.asm +++ b/tests/test_oscillat_detunemod.asm @@ -17,7 +17,7 @@ BEGIN_PATCH SU_MULP MONO SU_PUSH MONO SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE+LFO) - SU_SEND MONO,AMOUNT(96),LOCALPORT(1,1) + SEND_POP + SU_SEND MONO,AMOUNT(96),UNIT(1),PORT(1),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_oscillat_gainmod.asm b/tests/test_oscillat_gainmod.asm index e7101fd..72c3462 100644 --- a/tests/test_oscillat_gainmod.asm +++ b/tests/test_oscillat_gainmod.asm @@ -17,7 +17,7 @@ BEGIN_PATCH SU_MULP MONO SU_PUSH MONO SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE + LFO) - SU_SEND MONO,AMOUNT(68),LOCALPORT(1,5) + SEND_POP + SU_SEND MONO,AMOUNT(68),UNIT(1),PORT(5),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_oscillat_phasemod.asm b/tests/test_oscillat_phasemod.asm index 81e3ef4..230ae52 100644 --- a/tests/test_oscillat_phasemod.asm +++ b/tests/test_oscillat_phasemod.asm @@ -17,7 +17,7 @@ BEGIN_PATCH SU_MULP MONO SU_PUSH MONO SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE + LFO) - SU_SEND MONO,AMOUNT(128),LOCALPORT(1,2) + SEND_POP + SU_SEND MONO,AMOUNT(128),UNIT(1),PORT(2),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_oscillat_shapemod.asm b/tests/test_oscillat_shapemod.asm index 218163d..ec99845 100644 --- a/tests/test_oscillat_shapemod.asm +++ b/tests/test_oscillat_shapemod.asm @@ -17,7 +17,7 @@ BEGIN_PATCH SU_MULP MONO SU_PUSH MONO SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE + LFO) - SU_SEND MONO,AMOUNT(68),LOCALPORT(1,4) + SEND_POP + SU_SEND MONO,AMOUNT(68),UNIT(1),PORT(4),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_oscillat_transposemod.asm b/tests/test_oscillat_transposemod.asm index f7e8b14..ac4eb2b 100644 --- a/tests/test_oscillat_transposemod.asm +++ b/tests/test_oscillat_transposemod.asm @@ -17,7 +17,7 @@ BEGIN_PATCH SU_MULP MONO SU_PUSH MONO SU_OSCILLAT MONO,TRANSPOSE(70),DETUNE(64),PHASE(64),COLOR(128),SHAPE(64),GAIN(128),FLAGS(SINE + LFO) - SU_SEND MONO,AMOUNT(68),LOCALPORT(1,0) + SEND_POP + SU_SEND MONO,AMOUNT(68),UNIT(1),PORT(0),FLAGS(SEND_POP) SU_OUT STEREO,GAIN(128) END_INSTRUMENT END_PATCH diff --git a/tests/test_receive.asm b/tests/test_receive.asm index 9798388..fff4c4c 100644 --- a/tests/test_receive.asm +++ b/tests/test_receive.asm @@ -13,10 +13,10 @@ END_TRACKS BEGIN_PATCH BEGIN_INSTRUMENT VOICES(1) ; Instrument0 SU_LOADVAL MONO,VALUE(32) ; should receive -0.5 - SU_SEND MONO,AMOUNT(128),LOCALPORT(5,0) ; should send -0.25 - SU_SEND MONO,AMOUNT(128),LOCALPORT(6,0) + SEND_POP ; should send -0.25 + SU_SEND MONO,AMOUNT(128),UNIT(5),PORT(0),FLAGS(NONE) ; should send -0.25 + SU_SEND MONO,AMOUNT(128),UNIT(6),PORT(0),FLAGS(SEND_POP) ; should send -0.25 SU_LOADVAL MONO,VALUE(128) ; should receive 1 - SU_SEND MONO,AMOUNT(128),LOCALPORT(6,0) + SEND_POP ; should send 0.5 + SU_SEND MONO,AMOUNT(128),UNIT(6),PORT(0),FLAGS(SEND_POP) ; should send 0.5 SU_RECEIVE MONO ; should receive -0.5 SU_RECEIVE MONO ; should receive 0.5 SU_OUT STEREO,GAIN(128) diff --git a/tests/test_receive_stereo.asm b/tests/test_receive_stereo.asm index 9329020..44226b2 100644 --- a/tests/test_receive_stereo.asm +++ b/tests/test_receive_stereo.asm @@ -13,10 +13,10 @@ END_TRACKS BEGIN_PATCH BEGIN_INSTRUMENT VOICES(1) ; Instrument0 SU_LOADVAL MONO,VALUE(32) ; should receive -0.5 - SU_SEND MONO,AMOUNT(128),LOCALPORT(5,1) ; should send -0.25 - SU_SEND MONO,AMOUNT(128),LOCALPORT(5,0) + SEND_POP ; should send -0.25 + SU_SEND MONO,AMOUNT(128),UNIT(5),PORT(1),FLAGS(NONE) ; should send -0.25 + SU_SEND MONO,AMOUNT(128),UNIT(5),PORT(0),FLAGS(SEND_POP) ; should send -0.25 SU_LOADVAL MONO,VALUE(128) ; should receive 1 - SU_SEND MONO,AMOUNT(128),LOCALPORT(5,0) + SEND_POP ; should send 0.5 + SU_SEND MONO,AMOUNT(128),UNIT(5),PORT(0),FLAGS(SEND_POP) ; should send 0.5 SU_RECEIVE STEREO; should receive 0.5 -0.5 SU_OUT STEREO,GAIN(128) END_INSTRUMENT diff --git a/tests/test_send.asm b/tests/test_send.asm index 49378a9..94b8996 100644 --- a/tests/test_send.asm +++ b/tests/test_send.asm @@ -13,10 +13,10 @@ END_TRACKS BEGIN_PATCH BEGIN_INSTRUMENT VOICES(1) ; Instrument0 SU_LOADVAL MONO,VALUE(32) ; should receive -0.5 - SU_SEND MONO,AMOUNT(96),LOCALPORT(5,0) ; should send -0.25 - SU_SEND MONO,AMOUNT(96),LOCALPORT(6,0) + SEND_POP ; should send -0.25 + SU_SEND MONO,AMOUNT(96),UNIT(5),PORT(0),FLAGS(NONE) ; should send -0.25 + SU_SEND MONO,AMOUNT(96),UNIT(6),PORT(0),FLAGS(SEND_POP) ; should send -0.25 SU_LOADVAL MONO,VALUE(128) ; should receive 1 - SU_SEND MONO,AMOUNT(96),LOCALPORT(6,0) + SEND_POP ; should send 0.5 + SU_SEND MONO,AMOUNT(96),UNIT(6),PORT(0),FLAGS(SEND_POP) ; should send 0.5 SU_LOADVAL MONO,VALUE(64) ; should receive -0.5 SU_LOADVAL MONO,VALUE(64) ; should receive 0.5 SU_OUT STEREO,GAIN(128) diff --git a/tests/test_send_global.asm b/tests/test_send_global.asm index e04fdde..b83dc94 100644 --- a/tests/test_send_global.asm +++ b/tests/test_send_global.asm @@ -13,14 +13,14 @@ END_TRACKS BEGIN_PATCH BEGIN_INSTRUMENT VOICES(1) ; Instrument0 SU_LOADVAL MONO,VALUE(96) - SU_SEND MONO,AMOUNT(96),GLOBALPORT(1,3,0) + SEND_POP + SU_SEND MONO,AMOUNT(96),VOICE(1),UNIT(3),PORT(0),FLAGS(SEND_POP) SU_LOADVAL MONO,VALUE(64) SU_LOADVAL MONO,VALUE(64) SU_OUT STEREO,GAIN(128) END_INSTRUMENT BEGIN_INSTRUMENT VOICES(1) ; Instrument1 SU_LOADVAL MONO,VALUE(32) - SU_SEND MONO,AMOUNT(96),GLOBALPORT(0,2,0) + SEND_POP + SU_SEND MONO,AMOUNT(96),VOICE(0),UNIT(2),PORT(0),FLAGS(SEND_POP) SU_LOADVAL MONO,VALUE(64) SU_LOADVAL MONO,VALUE(64) SU_OUT STEREO,GAIN(128) diff --git a/tests/test_send_stereo.asm b/tests/test_send_stereo.asm index 1ae0495..15b5b35 100644 --- a/tests/test_send_stereo.asm +++ b/tests/test_send_stereo.asm @@ -14,10 +14,10 @@ BEGIN_PATCH BEGIN_INSTRUMENT VOICES(1) ; Instrument0 SU_LOADVAL MONO,VALUE(0) SU_LOADVAL MONO,VALUE(0) - SU_SEND STEREO,AMOUNT(96),LOCALPORT(6,0) + SEND_POP + SU_SEND STEREO,AMOUNT(96),UNIT(6),PORT(0),FLAGS(SEND_POP) SU_LOADVAL MONO,VALUE(64) SU_LOADVAL MONO,VALUE(128) - SU_SEND STEREO,AMOUNT(128),LOCALPORT(6,0) + SEND_POP + SU_SEND STEREO,AMOUNT(128),UNIT(6),PORT(0),FLAGS(SEND_POP) SU_RECEIVE STEREO; should receive 0.5 -0.5 SU_OUT STEREO,GAIN(128) END_INSTRUMENT