; ; File: AN320103.ASM ; Description: Wide Stereo Chorus Example ; Authors: Jeff Rothermel ; Copyright 2001 Alesis Semiconductor ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; LFO0 SIN AMP=10000 FREQ=2 ; f = FREQ * 0.029Hz for Fs=48kHz LFO1 SIN AMP=10000 FREQ=3 ; MEM chorusmeml 8192 ; 8192 big enough for full AMP LFO MEM chorusmemr 8192 ; right chorus memory ; ;NOTE: memory locations are referenced by: ; name Start of memory block ; name' End of memory block ; name" Middle of memory block ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; RZP ADCL K=.5 ; Read left/2 into accumulator WZP chorusmeml ; Write acc to start left chorus mem RZPB chorusmeml+400 ; Read delayed left to B reg ; CHR0 RZP chorusmeml" COMPK LATCH ; Read middle of chorus memory CHR0 RAP chorusmeml"+1 ; Read middle+1 chorus memory ; WBP OUTL K=.999 ; Write dry (B) + chorus (acc) to OUTL ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; RZP ADCR K=.5 ; Read right/2 into accumulator WZP chorusmemr ; Write acc to start right chorus mem RZPB chorusmemr+400 ; Read delayed right to B reg ; CHR1 RZP chorusmemr" COMPK LATCH ; Read middle of chorus memory CHR1 RAP chorusmemr"+1 ; Read middle+1 chorus memory ; WBP OUTR K=.999 ; Write dry (B) + chorus (acc) to OUTR ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;Add 16 extra reads for refresh RZP 0x00 RZP 0x40 RZP 0x80 RZP 0xc0 RZP 0x100 RZP 0x140 RZP 0x180 RZP 0x1c0 RZP 0x200 RZP 0x240 RZP 0x280 RZP 0x2c0 RZP 0x300 RZP 0x340 RZP 0x380 RZP 0x3c0