I edited (deleated) an old thread with no answers since i was able to answer myself and i don´t want to open too many new threads…
Midibox sid has a great fascination on me.
After toying with the cs for some time i have come to realize that i want to implement some changes.
Already re-arranged some menues and was able to find out how to edit the CS_MENU_ENC_TABLE.inc so that the controllers will point to the right (new) menu entries. This was useful especially for renaming entries but also re-arranging the envelope to my taste. AD2SR with D1min and DLev max. Classic ADSR
Then i found out that i can implement new encoders by adding lines to CS_MENU_ENC_TABLE.inc and the SETUP_6581.asm
All trial and error, i never learned programming. I was very surprised that it sort of works. Really got me excited:-)
I can now define a encoder to dial (up and down) through
OSC select
OSC Wave
LFO select
LFO wave
Filter source (osc)
Filter Type (lp,bp,etc)
Like the feel better than using the buttons from the original cs (maybe also couse the cheap buttons from pollin are trash).
Also i included two more encoders:
Edit menue item #6
Edit AOut ch 7 (overdrive in my sid)
LFO select and wave always work, the others only work if env ctrl is set to env.
When set to assign layer my new additions don´t work as expected, they seem to controll all sorts of stuff then. release, menu item 2, menu item 1, resonance…
If it was the other way around i could live with it, always working in ENV-Ctrl set to assign, since my env menue represents the 5 encoders anyhow…
So somehow my entries are affected by the env ctrl button.
I know my code is not as it should be, i was getting allerts while compiling.
column 1 pointing to makro, something like that.
Also the CS_MENU_ENC_TABLE.inc says in the beginning that CS_MENU_ENC.inc has to be configured as well.
No idea how.
Here is my code added to CS_MENU_ENC_TABLE.inc
;; LFO section
;; menu offset cursor pos
CSENC_ENTRY CS_MENU_L_LFO, 0x02, 0x02 ; Rate
CSENC_ENTRY CS_MENU_L_LFO, 0x02, 0x04 ; Depth
;;;;;;;___New Lines:
CSENC_ENTRY CS_MENU_L_LFO, 0x00, 0x00 ; lfo select
CSENC_ENTRY CS_MENU_L_LFO, 0x00, 0x01 ; wave
CSENC_ENTRY CS_MENU_L_OSC, 0x00, 0x01 ; osc wave
CSENC_ENTRY CS_MENU_L_OSC, 0x00, 0x00 ; osc select
CSENC_ENTRY CS_MENU_L_FIL, 0x00, 0x01 ; osc-filter select
CSENC_ENTRY CS_MENU_L_FIL, 0x00, 0x04 ; filter type
CSENC_ENTRY 0xff, 0x05, 0x00 ; Menu item #6
CSENC_ENTRY CS_MENU_L_EXT, 0x00, 0x06 ; aout7
My entries in the setup.asm:
ENC_ENTRY 6, 6, MIOS_ENC_MODE_DETENTED3 ; LFO rate 2,6
ENC_ENTRY 6, 4, MIOS_ENC_MODE_DETENTED3 ; LFO depth 1,4
ENC_ENTRY 5, 6, MIOS_ENC_MODE_DETENTED3 ; LFO select
ENC_ENTRY 5, 4, MIOS_ENC_MODE_DETENTED3 ; LFO wave
ENC_ENTRY 2, 6, MIOS_ENC_MODE_DETENTED3 ; osc wave
ENC_ENTRY 1, 4, MIOS_ENC_MODE_DETENTED3 ; osc select
ENC_ENTRY 3, 6, MIOS_ENC_MODE_DETENTED3 ; osd-filter select
ENC_ENTRY 3, 4, MIOS_ENC_MODE_DETENTED3 ; filter type
ENC_ENTRY 5, 2, MIOS_ENC_MODE_DETENTED3 ; menu 6
ENC_ENTRY 5, 0, MIOS_ENC_MODE_DETENTED3 ; analog out 7
ENC_ENTRY 0, 6, MIOS_ENC_MODE_DETENTED3 ; Filter CutOff