This thread is for an idea I had to build on the excellent work of SokkOS 2.0. I love the things he's added, but there's one great big feature request I just thought of. I just got my xoxbox yesterday and have looked around the forum but apologies if this has already been discussed (if so please show me where)

It came to me when I tried the cv/gate outs to drive the MC-202. xox slides on the 202 sound great by the way. I also managed to personally put to bed the old myth that Higher States of Consciousness was done on a 202 :lol: . Anyway, got me thinking that it would be great to have 2 separate sequences running simultaneously, one for the cv/gate out and/or midi out, one for the xoxbox. The MC-202 has 2 sequencers too, however I don't like programming it and you can't save patterns easily. This would work much better for me. I do have a hardware sequencer but this could be a simpler alternative.

it seems user B/C are unused at the moment. Maybe there's something can be done with those? but the way i'd see it, is to have a button that would switch "view" or "focus" between the 2 running patterns so you could select and edit either one on the fly. Switching between them as desired. Something like:

- select xox pattern as usual, i'll refer to this as "pattern 1," press play on the master midi device- hold a button combo to move focis to a second pattern location (not sure which buttons are free, but there has to be something)- select a pattern for the external instrument, i'll refer to this second pattern as "pattern 2"; the pattern you just selected starts at the beginning of next bar- use the same combo to switch focus between patterns 1 & 2

this should allow 2 simultaneous patterns of different lengths too. In addition, i'd envisage that "temporary" effects like looping smaller sections of the pattern, nudge or reverse, should be kept in place when switching focus between patterns. In fact, switching focus between patterns should not affect the other one at all.

Not sure how moving from Midi Sync to Edit mode could work, but see no reason in my imaginary new version of SokkOS why you couldn't drop into edit mode of the currently selected pattern, then back to midi Sync mode, switch to pattern 2, and drop into edit mode for that one too. All seamlessly without disturbing timing or playback

Sorry, i am not a programmer, if I would i'd be trying this myself. Anyone agree this would be awesome? SokkOS v3 anyone?

hithe pitch / gate signal from the sequencer go thru the circuit and basically the same Pitch that goes to the VCO also goes out (same for the Gate)thus, whatever "melody" is played - the same thing goes out to the cv/gate

what you *could* do via firmware modification is to have a different melody playing via midi, since that's virtual you can generate whatever notes you wanthowever, the sokkos firmware has probably reached the 16kB limit, thus some feature(s) would have to be removed from it to make room for such a midi-sequencer interface

although i'm sure cetain thinga could bwe removed. off top of my head, DINsync and random play could be deleted as far as i'm concerned. however I have no idea how much memory they take or this mod would require

you can't really remove the dinsync modes since it's actually the same code for both internal/midisync/dinsyncwith a slight difference - if the mode is internal sync - dinsync is used as an output if the mode is midisync - there's an additional step which converts the midisync to dinsync and the rest is the same, in other words, dinsync is the fundamental mode and the other 2 only add a few lines of code to itso you cannot really free up space like that

random mode is usually the first victim, sadly it is only a few lines of codethe second usual victim is Track mode (all of it)

if you chose the 2nd sequence to be midi like i said.. there's a compromise variant, if you like the compromise

Pattern Edit mode usuall takes the most space from the firmware

your idea can be split into 2 sepparate firmwares1) one which has the pattern editing mode (normal x0x patterns plus midi patterns)2) one which has the performance modes (playing both sequences as well as live control)

which means you'll have to flash firmware back and forward.. not really ideal

hey antto thanks for the knowledgeable reply. from what you said my plan definitely won't work: both pattern editing and performance modes are vital and really couldn't be compromised. i suppose if the number of patterns was reduced to 64 that could save space, but again I am talking from a standpoint of a novice without any idea how much memory that would free up.

is there anywhere which explains how much memory each of the major functions takes up? it would then perhaps be possible for non-programmers to have a general idea of what realistically could be removed for such suggestions

the patterns are stored on the external (4kB) EEPROMthe firmware itself is flashed on the 16kB flash, together with the bootloader (which takes 0.5kB)the standard patterns are 16bytes, thus you can actually store 256 of them on the eeprom, but this doesn't matter to the firmware size since it's on the flash memory

how much space the different parts of code takes - i can't say.. only the compiler knows

Removing all Track modes gives 3000 bytes roughly. That will be enough, definitively. Interesting idea, and not too difficult to achieve, but for me personally not interesting at all:) which means you have to do it yourself, or find someone else. I can send you sokkos2.0 with Track modes taken off as a start if you want.

Last edited by mario1089 on Sun Nov 11, 2012 6:29 pm, edited 2 times in total.

hi mario, thanks for the offer. however i have never - ever - done any programming. and i have a lot of music to make, so don't have time to learn. i'm 100% reliant on other people's talent and worl om this respect, so if anyone does want to try it i'd be well up for beta testing :D

there must be loads of people with 2nd synths out there who would like to be able to use the xox sequencer this way, if anyone else likes the idea then feel free to say so here. perhaps if enough people like the idea it would encourage someone to make it happen

great to hear i'm not the only one excited by this idea. anyone else interested? also, if anyone has ideas for what functionality could be removed to maske way for this.

just a thought, but is it already possible (in theory) to play 2 simulataneous sequences? obviously this wouldn't be useful for just the xoxbox, but if it is already there, all that would be needed is to programme in a few button presses to route one to internal sounds and one to external midi only. plus one button press to switch "focus" between the 2 sequencers

to a simpleton non-programmer like me it sounds like it should, in theory, be pretty simple.

with the normal x0x cpu, it is possible to make the x0xb0x play one thing, while at the same time it outputs completely different midi notessince MIDI is sort of virtual thing, you can generate notes however you like, that's no problemthe problem is you need an interface to deal with those midi notes (a midi sequencer) and THAT would eat a lot of space on the cpu

now, i can think of one more thingyou can compromise the complexity of the midi sequencer and reuse the normal x0x patternshere's the idea:make a mechanism which plays the x0x synth, and at the same time plays midi notes but from different pattern location

so it'd basically as if you play the x0x with bank-2 pattern-3, and at the same time the midi notes come from another pattern - bank-4 pattern-1this way, it'll be a monophonic midi sequencer (the same as it is now)but you'll save code space because you will not need to have a sepparate pattern editor, you will simply use the same patterns for both x0x synth and midi-outyou just add an additional pattern selection mechanismmost of the code would be added around the do_tempo() function

also, you can double the patterns to 256 (since there's enough EEPROM) and make the x0x patterns 128 as they are now, and the midi patterns also 128 but sepparate from the x0x ones

antto wrote:so it'd basically as if you play the x0x with bank-2 pattern-3, and at the same time the midi notes come from another pattern - bank-4 pattern-1this way, it'll be a monophonic midi sequencer (the same as it is now)

yes, that's exactly what i meant! so that's possible?what do you reckon about having a try?all that's needed in terms of controls is a way to switch between xox patterns and the external midi patterns. as you said, could just use the patterns from another location. if you can double them that would be great but i don't think it's massively necessary

i can't really say whether it would fitalso, there are a few details that you might take for granted but require codenot only would the x0x be reading basically 2 separate patterns (in do_tempo()) but there would have to be some more code in PatternEdit and PatternPlay modes for the dedicated selectionhow about transpose and chain for the midi patterns? ..that's additional code too

only when you start coding and hit the limit can you tell that it doesn't fitbut it must, if you are okay with sacrificing enough of the other features (random and track mode..)

note that there IS a bit of free space in the stock firmware v1.05there is _none_ in sokkos

ok, thanks for the info. at the moment i've only ever used Pattern "midi syn" mode and Pattern "edit" mode. Random is useless for me, I also don't need 5 levels of swing, but I have started using DIN SYNC output, although not DIN SYNC mode as this isn't necessary to sync the 707 (I found the DIN SYNC is more reliable than midi sync, which came from another master machine previously)