DIYstompboxes.com

DIY Stompboxes => Digital & DSP => Topic started by: Digital Larry on July 10, 2014, 09:44:04 AM

Title: SpinCAD Designer beta release #15 now available.
Post by: Digital Larry on July 10, 2014, 09:44:04 AM
This tool runs on Windows, Mac, and Linux, and allows the creation of DSP programs for the Spin FV-1 chip using a building block approach.  This is a hobby project for me, so it's probably not at the level of quality you might expect from a commercial software package.  Still, some people have told me it's useful and for certain things it speeds up your ability to create FV-1 patches at least ten fold over writing them by hand.  It also lets you simulate your patch without using any FV-1 hardware at all, although the pitch shift algorithms notoriously don't work properly for simulation.

If you have not already done so, come register at http://holycityaudio.com/forum/ to download the latest beta version.  I am really serious about cleaning this program up and making it more useful.  It's a lot of work and slow going, but I do want to release improved versions every so often even if there's more to be done.  Several recent features and enhancements are the direct result of user input.  I do listen and try to accommodate requests when possible.

This one has a variety of new features, cleanup of things which didn't work, usability enhancements, and bug fixes.

Bug fixes:
Feedback loops, broken in build 710, work again  :D
Fixed tremolo block.
Fixed crossfade block.
Fixed phaser block. Note - phaser block is the phaser preset from Spin. Control input #1 is LFO speed, Control input #2 is LFO depth/effect depth. Later I'll try to come up with a more general purpose block for phase shifting.

Usability enhancements:
Added single level undo (Edit...Undo from menu bar). Doesn't undo control panel changes or connection deletions, only block deletions.
Expanded connection completion radius, so that as soon as the pin name is displayed, you can left click to complete a connection.

UI Changes:
Pots are now in the "Control" menu, to help unclutter the menu bar.
Renamed "Straight Delay" to "Servo Delay" (unfortunately, it isn't Spin's "Servo Delay" implementation. It just uses RMPA directly but is still surprisingly useful).

New blocks:
- Created a 3-tap delay with individual outputs and control pots for time. Use a control smoother on the input to get pitch bending effects when you change the delay time. This also has fixed taps at the middle and end of the buffer.
- Created a "control smoother" block for use with delay blocks. Note that "Servo Delay" has a built-in control smoother.
- Added 10-tap delay block with adjustable delay time and gain per tap, stereo outputs. Taps 1 - 5 go to output 1, taps 6-10 go to output 2.
- Added Aliaser block under Wave Shaper menu - One of the forum members kindly supplied some code for use as an aliaser.

Updated blocks
Sin/Cos LFO Block
- Added width control input
- Made both width and speed control input use the control panel setting as the maximum value for the control input. This makes the control input behavior consistent with everything else.

MN3011 multitap delay - has a mono tap mix output as well as delay end output for feedback.
- Added time control input to existing 8-tap delay and MN3011 blocks (note, I removed the built-in feedback parameter on these blocks, but you can add feedback now with a Feedback Loop block pair).

Removed blocks
I took out a bunch of non functioning filter blocks and an infinite reverb patch that was questionable. Next beta release I am going to focus on filters.

Here's a picture of the UI showing a sample patch, along with the code this generates:

(http://imagizer.imageshack.us/v2/xq90/473/568c33.png) (https://imageshack.com/i/d5568c33p)


Code: [Select]
;  Program: Render Block exported from SpinCAD Designer
;------ Pot 0
;------ Pot 1
;------ LFO 0
SKP RUN ,1
WLDS 0,162,32767
RDAX POT0,0.3170254403
WRAX SIN0_RATE,0.0000000000
RDAX POT1,1.0000000000
WRAX SIN0_RANGE,0.0000000000
CHO RDAL,0
WRAX REG0,0.0000000000
CHO RDAL,8
WRAX REG1,0.0000000000
;------ Scale/Offset
RDAX REG0,1.0000000000
SOF 0.5000000000,0.5000000000
WRAX REG2,0.0000000000
;------ Input
;------ Smoother
RDAX REG2,1.0000000000
RDFX REG4,0.0002151443
WRAX REG4,0.0000000000
;------ Scale/Offset
RDAX REG0,1.0000000000
SOF 0.2900000000,0.5100000000
WRAX REG5,0.0000000000
;------ Invert
RDAX REG5,1.0000000000
SOF -0.9990000000,0.9990000000
WRAX REG6,0.0000000000
;------ Smoother
RDAX REG6,1.0000000000
RDFX REG8,0.0001421445
WRAX REG8,0.0000000000
;------ Smoother
RDAX REG5,1.0000000000
RDFX REG10,0.0001789493
WRAX REG10,0.0000000000
;------ ThreeTap
RDAX ADCL,0.4500000000
WRA 0,0.0
CLR
OR $007FFF00
MULX REG4
SOF 0.0299936813,0.0016091324
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX REG11,0.0000000000
CLR
OR $007FFF00
MULX REG10
SOF 0.0238078094,0.0012835602
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX REG12,0.0000000000
CLR
OR $007FFF00
MULX REG8
SOF 0.0170501343,0.0009278931
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX REG13,0.0000000000
RDA 896,1.0
WRAX REG14,0.0000000000
RDA 1793,1.0
WRAX REG15,0.0000000000
;------ Mixer 4-1
RDAX REG11,0.2500000000
WRAX REG16,0.0000000000
RDAX REG12,0.2500000000
RDAX REG16,1.0000000000
WRAX REG16,0.0000000000
RDAX REG13,0.2500000000
RDAX REG16,1.0000000000
WRAX REG16,0.0000000000
RDAX REG14,0.2500000000
RDAX REG16,1.0000000000
WRAX REG16,0.0000000000
;------ ThreeTap
RDAX ADCL,0.4500000000
WRA 1794,0.0
CLR
OR $007FFF00
MULX REG4
SOF 0.0052776199,0.0550263046
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX REG17,0.0000000000
CLR
OR $007FFF00
MULX REG10
SOF 0.0116915695,0.0553638809
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX REG18,0.0000000000
CLR
OR $007FFF00
MULX REG8
SOF 0.0183327850,0.0557134186
WRAX ADDR_PTR,0.0000000000
RMPA 1.0
WRAX 51,0.0000000000
RDA 2229,1.0
WRAX 52,0.0000000000
RDA 2665,1.0
WRAX 53,0.0000000000
;------ Mixer 4-1
RDAX REG17,0.2500000000
WRAX 54,0.0000000000
RDAX REG18,0.2500000000
RDAX 54,1.0000000000
WRAX 54,0.0000000000
RDAX 51,0.2500000000
RDAX 54,1.0000000000
WRAX 54,0.0000000000
RDAX 52,0.2500000000
RDAX 54,1.0000000000
WRAX 54,0.0000000000
;------ Output
RDAX REG16,1.0000000000
WRAX DACL,0.0000000000
RDAX 54,1.0000000000
WRAX DACR,0.0000000000

Title: Re: SpinCAD Designer beta release #15 now available.
Post by: Ice-9 on July 10, 2014, 06:16:52 PM
Looks great Larry, I will have a look and download it tomorrow. Great work.
Title: Re: SpinCAD Designer beta release #15 now available.
Post by: Digital Larry on July 10, 2014, 10:31:43 PM
Thanks Mick.  Let me know if you have any questions or need some tips... the documentation currently is pretty sparse and some of the blocks even I don't know what they do!