Jump to content

[blog] SID*1 + Step A + filter (9 Sept. New feature !)


Ixox
 Share

Recommended Posts

Hello,

First thanks a million TK and others for this great forum and these fantastic DIY projects.

I introduce myself now even if i already posted my first stupid question and one or 2 other posts.

My name is Xavier I live in Paris.

I'm a software engineer and make some music, not very often currently.

Some stuff i made (music and VST plugins) can be found here :

http://ixox.net

I gather some pieces from all over the world (Australia for the SID, USA for the PCBS (SmashTV), nederland, france) to build a Midibox SID.

I got my first sound tonight so i thought it's time to post some pictures.

I have in mind to build a mono SID synth with a "custom" Control surface, that would be like step A + the filter part of step 3.

I love when others do it...

So here are my pictures (even if most of the pictures i saw are much more impressive than mine).

The 2,5 Euros (8V 600mA) Wall adapter i found.

Here it is outside its plastic box...

I may change it for a clean transformer.

IxoxSid01.JPG

The parts...

IxoxSid02.JPG

One side of the nice SamshTV core PCB.

IxoxSid03.JPG

The other...

IxoxSid04.JPG

The 6$ LCD from SmashTV... With its cable.

IxoxSid05.JPG

MIOS uploaded...

IxoxSid06.JPG

I didn't take pictures during the soldering of the SID.

But here it finished. It is powered by its own transformer.

IxoxSid07.JPG

My first sound... Emotion....  ;D

http://xhosxe.free.fr/pic/SID/Ixox_SID.mp3

I think now the quickest part is done.

I have to plug a bank stick, build the control surface and a nice box for this...

Thanks again for these projects,

I'll try to update this thread when i have more things to show.

Xavier

Link to comment
Share on other sites

Thanks...  ;D

Puddingbrumsel, i'm trying to switch to Sonar  (after more than 3 years of use)  because Tracktion does not work properly with my AMD X2 3800. But for simple stuff such as trying my MIDIBox SID, Tracktion is perfect...

Wilba, yest it works...

Link to comment
Share on other sites

Still a lot of work to do, but here is some new pictures...

A home-made proto board which contains 2xDin + 1xOut + 1 bankstick... (I'll add an an other bankstick)

IxoxSid08.JPG

The power supply... The big one for the core 9V 560mA and the little one for the SID 12V 170mA.

IxoxSid09.JPG

Every thing fit well in the little box.

Controle surface step A ready.... and working 

Bankstick recognized, formated and ready to be filled...

IxoxSid10.JPG

Thanks again for this great project....LOTS OF FUN.....  ;D

Link to comment
Share on other sites

  • 4 weeks later...

Thanks again TK and the others who worked to make this possible.  :)

My box is finished and contains what i wanted.

- one SID

- 2 banks

- Control surface step A + filter

- PSU included and a on/off switch.

I made all the possible mistakes while making the control surface...

The worst one was i understand after having drilling all the big holes why it was so hard and so long : my machine turned in the wrong direction.....

An other one can be seen, the filter in inverted !!!! that was not a choice....  ::)

It's far from being the nicest one arround here but i did it, it's mine and i love it !!!!

Here are the final pictures :

IxoxSid11.JPG

IxoxSid12.JPG

IxoxSid13.JPG

IxoxSid14.JPG

Now i have to work on the FM box...

Thanks again !!!

Xavier

Link to comment
Share on other sites

  • 2 weeks later...

Thanks a lot  ;D

But no it's not very well done !!!  ;)

This is my first DIY project and i made all the possible mistakes...

Adding the filter section is very easy, just modify the pin assignent...

(I modify some code but it's not required as far as i understood... The modifications are the end of that : http://www.midibox.org/forum/index.php?topic=7451.0 )

For my control surface i have 2 DIN and 1 DOUT. (+ 1 J5 pin in the last version).

I added a little nice feature last night to my Midibox, a button to switch all the filter controlers to LFO ones (I realized they both have 2 knobs and 2 buttons).

Just press the little button  under the ugly LFO text and the cutoff controls the LFO rate, the resonnance the LFO depth, the oscillator button controls the LFO nuber and the filter type the LFO wave (The leds still show the filter state... ).. press again and you're back to normal filter mode... very usefull.

That's possible thanks to  Thorsten code which is very very very well documented.

Thanks Thorsten for that !!!!  :-*

I was lazy the other day and i had 2 CD pens near me :

IxoxSid15.JPG

My midibox FM which already sounds will be nicer, i promise !

Xavier

Link to comment
Share on other sites

OK based on 1.7303b source code...

First adding the LFO/Filter state into the programm...

app_define.h line 169... Thorsten left some value specialy for that kind of customization....  :)

CS_MENU_SELECTED_FILTERLFO EQU	0x069
Then cs_menu_led.inc line 177 (after the TMP5[4..0] part).
	;; TMP5[6..7]: selected Filter or LFO
	movf	CS_MENU_SELECTED_FILTERLFO, W
	call	MIOS_HLP_GetBitORMask
	swapf	WREG, F
	rlf	WREG, F
	rlf	WREG, W
	andlw	0xc0
	iorwf	TMP5, F
I choose bit 6 and 7 to copy and past the code from "TMP2[6..7]: selected ENV Ctrl. " So i had nothing to code... This part is a little obscure for me. Don't know exaclty what it is for.. The 2 only encoders i have declared in mios_table.inc :
	;; additional CS encoders
	;;        SR  Pin  Mode
	ENC_ENTRY  2,  4,  MIOS_ENC_MODE_DETENTED2	; Filter CutOff / LFO RATE
	ENC_ENTRY  2,  6,  MIOS_ENC_MODE_DETENTED2	; Filter Resonance / LFO DEPTH
	ENC_EOT
Now the din entry in menu_io_table.inc after CS_MENU_BUTTON_Env_Ctrl :
DIN_ENTRY	CS_MENU_BUTTON_LfoFilter_Ctrl, 2, 2
SR 2 pin 2 was one of the 2 DIN i had left. The dout in still in menu_io_table.inc
	;;		Register and bit			SR#	Pin#	  Description
	DOUT_ENTRY	TMP3, 0,				1,	0	; Filter O1 LED
	DOUT_ENTRY	TMP3, 1,				1,	1	; Filter O2 LED
	DOUT_ENTRY	TMP3, 2,				1,	2	; Filter O3 LED
	DOUT_ENTRY	TMP3, 3,				1,	3	; Filter Ext LED

	DOUT_ENTRY	TMP3, 4,				1,	4	; Filter LP LED
	DOUT_ENTRY	TMP3, 5,				1,	5	; Filter BP LED
	DOUT_ENTRY	TMP3, 6,				1,	6	; Filter HP LED
	DOUT_ENTRY	TMP3, 7,				1,	7	; Filter 3O LED

	DOUT_ENTRY	TMP5, 6,				0,	1	; LFO MODE
I remove all SR0 pin0 to avoid side effect with the J5 driver enabled. in cs_menu_enc_in replace the current CS_MENU_ENC_CS_Handler function by (That part won't work if you have other control than the filter... It considers you only have the filter !!).
CS_MENU_ENC_CS_Handler
	;; move incrementer to MIOS_PARAMETER3
	movff	MIOS_PARAMETER2, MIOS_PARAMETER3
	movf	MIOS_PARAMETER1, W
	addlw	0x0f
	IFSET	CS_MENU_SELECTED_FILTERLFO, 0, goto CS_MENU_ENC_CS_Cont
	addlw	0x02
in cs_menu_butttons.inc add after the CS_MENU_BUTTON_Env_Ctrl function the new following one heavily inspired by CS_MENU_BUTTON_Env_Ctrl :
CS_MENU_BUTTON_LfoFilter_Ctrl
	;; do nothing if button has been depressed
	IFSET	MIOS_PARAMETER2, 0, return
	;; else increment FILTERLFO Ctrl parameter 
	incf	CS_MENU_SELECTED_FILTERLFO, F
	movlw	0x01+1
	IFGEQ	CS_MENU_SELECTED_FILTERLFO, ACCESS, clrf CS_MENU_SELECTED_FILTERLFO

	IFSET	CS_MENU_SELECTED_FILTERLFO, 0, goto CS_MENU_BUTTON_LfoFilter_Ctrl_LFO

	movlw	CS_MENU_FIL	; menu structure
	goto	CS_MENU_EXEC_Hlp_ChangeMenu	; deselect parameter

CS_MENU_BUTTON_LfoFilter_Ctrl_LFO
	movlw	CS_MENU_LFO	; menu structure
	goto	CS_MENU_EXEC_Hlp_ChangeMenu	; deselect parameter

I think that's all i've changed in the code.

Was fun to dig into this assembly  :)

I plan to have a other cleaner version of my box with the LFO and Filter leds like this :

proto.jpg

the code will be exaclyt the same, i just have to add a DOUT.

Thanks for the nice words !

Xavier

Link to comment
Share on other sites

  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...