squere_wave00: mov w0,w13 ;save w0 mov #62500,w2 ;fs lsr w10,#3,w10 sl w11,#13,w11 ior w10,w11,w4 mov fosc0,w3 lsr w3,#3,w3 ;fosc nach dpw-synthes fs/16 add w4,w3,w3 ;----------------- btss knob7_2,#7 ;if fmmod with lfo0,add lfo +flfo/16 bra $+28 mov samplelfo1,w5 btst.z w5,#15 bra z,$+4 bra nz,$+10 bclr w5,#15 lsr w5,#3,w5 add w5,w3,w3 bra $+12 bclr w5,#15 lsr w5,#3,w5 sub w3,w5,w3 bra nn,$+4 clr w3 ;---------------- bset w3,#0 ;no operation by zero! repeat #17 div.u w2,w3 ;c=fs/(4f) mul.uu w13,w13,w4 ;the count from Osc's are present in w13 mov puffer00_0,w2 ;Speicher s(n-1),s(n) mov puffer00_1,w3 ;32bit 2fach eimerkette mov w4,puffer00_0 mov w5,puffer00_1 sub w4,w2,w2 ;32bit Subtraction subb w5,w3,w1 mov knob3_0,w1 mul.uu w1,w1,w2 add w2,w13,w13 mul.uu w13,w13,w4 ;the count from Osc's are present in w13 mov puffer11_0,w2 ;Speicher s(n-1),s(n) mov puffer11_1,w3 ;32bit 2fach eimerkette mov w4,puffer11_0 mov w5,puffer11_1 sub w4,w2,w2 ;32bit Subtraction subb w5,w3,w2 sub w2,w1,w1 mul.uu w1,w0,w12 ;s=S(k)-S(k-1)*c goto w14