Open303 - open source 303 emulation project - collaborators wanted

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS
JC-303

Post

@mztk

Read this, contains a heap of info, and explains the tripplets pretty well too:
http://machines.hyperreal.org/manufactu ... engths.txt

Remember I told you the only length is steplength? forget about ties making 32th notes into 16th or whatever you was thinking :shock: You are making it far more complicating than it is :lol:
mztk wrote: you say it's the same thing, but ONE note of 4 steps length will-surely?-have the same pitch throughout, until note end, whereas a 'slided' note will(?) follow the pitches it encounters. is this correct?
its the same thing as long as pitches are the same .. which is pretty logical if you think about it :hihi:
mztk wrote: still kinda kicking myself for not sussing out how
to get a 707 to send out midi...rtfm...
afaik the 707 only sends midi out in track mode..
you're welcome :)

mztk wrote: and i 'know' legato and portamento are supposed to be the same thing, - and
probably 'tied' notes, too... :shrug:

just forget all that... you can slide notes... its not the same as portamento, but it sure can sound like it.
legato would be a tie i guess.. forget those terms because they can get confusing.

on 303 = you can specify notelenght by using the "tie" symbol in time mode.. all it does is extend the note previously triggered by the gate on the step before that.
on most clones = no "tie", no "timemode".. you need to use slides on multiple identical notevalues to get long notes.

the link in this post will help you a lot.
8)

Post

mztk: in other words here's how it is:
in the TB-303, a beat is split into 4 "steps" (thus 4 beats = 16 steps = whole pattern)
on each step, the Gate signal is ON during the first half (0.5)
if there is a slide, the Gate is ON during the whole step (1.0) AND continues on the next step like a normal one (0.5) but it doesn't retrigger, the only thing that changes on that step might be the Note itself (pitch/accent)
so the total Gate "length" if i can call it, is 1.5 for a single slided note
if it was double slided the length would be 2.5

"Tie" is the same thing as a slide, the only difference is that the Note doesn't change (pitch/accent) so it's only a "long" note
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

Robin from www.rs-met.com wrote: ...
mmm...antto? any news on that? maybe some configuration is screwed up in your tortoise installation? or perhaps some firewall setting or something?
my setup looks like this:
OldPC <- has internet thru LAN, static IP, usualy no problems of any kind
... also has a second network device for another LAN ->
NewPC <- has LAN and is connected with the OldPC
everything i work with is on the NewPC, so i have a Proxy (ProxyPlus3.0) on the OldPC
i've setup FireFox and it works
tho i still think it's a problem with TortoiseSVN not working thru Proxies
now the error i get when i try to do something is:

Code: Select all

OPTIONS of 'https://open303.svn.sourceforge.net/svnroot/open303': Could not 
create SSL connection through proxy server: Could not read status line: An 
existing connection was forcibly closed by the remote host.
 (https://open303.svn.sourceforge.net)
the only other possible solution i could think of would be to install TSVN on my OldPC (with the direct internet connection) and put Open303 on a _shared_ folder on the NewPC (with read/write access)
the only thing that would probably fail then is TSVN probably won't work on win98 (OldPC) :smack:
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

just a shot in the dark:

as it complains about SSL stuff, maybe it could help to just change the https into http - for a non-secure connection. dunno really. maybe just try.
My website: rs-met.com, My presences on: YouTube, GitHub, Facebook

Post

still no, grrr..
EDIT: i figured it out (thanks to rv0)
i had to edit the stupid server config thing and specify the proxy port (which in my case is 4480 for www browsing)
"checkout" worked and i have all the files now

what now?
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

so first thing, i'll copy the VST sdk into the Libraries folder, right?
not sure if you have an idea what i want to do..
i need around 5.5KB of VST parameter memory for the sequencer patterns/track
and a GUI (i have the graphics, i'm a graphics guy you know..)
how do i get started with it?
EDIT: Robin: actually, i'm in a big fog, i only know what i want to do, not sure how to implement it on top of Open303 (or can i at all)
i mean, i know how to write my own sequencer classes and so on, i'll need help to "connect" them to the VST code .. like as i said i would need about 5.5KB for the sequencer memory.. how do i get it.. i saw you have just a few basic parameters in Open303 program, and the plugin has 128 programs, i also saw that these programs are actually allocated at init (128 copies of the program structure) and this is pretty bad if each program was 5.5KB big, so only 1 program is needed, but do i have the right to change that? i feel like i'm a virus that's about to ruin something.. hard to explain..
i need to talk with you about this, maybe good old IRC would be perfect
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

antto wrote:so first thing, i'll copy the VST sdk into the Libraries folder, right?
not sure if you have an idea what i want to do..
i need around 5.5KB of VST parameter memory for the sequencer patterns/track
and a GUI (i have the graphics, i'm a graphics guy you know..)
how do i get started with it?
EDIT: Robin: actually, i'm in a big fog, i only know what i want to do, not sure how to implement it on top of Open303 (or can i at all)
i mean, i know how to write my own sequencer classes and so on, i'll need help to "connect" them to the VST code .. like as i said i would need about 5.5KB for the sequencer memory.. how do i get it.. i saw you have just a few basic parameters in Open303 program, and the plugin has 128 programs, i also saw that these programs are actually allocated at init (128 copies of the program structure) and this is pretty bad if each program was 5.5KB big, so only 1 program is needed, but do i have the right to change that? i feel like i'm a virus that's about to ruin something.. hard to explain..
i need to talk with you about this, maybe good old IRC would be perfect
there actually already are sequencer classes included but they are currently dead code (classes AcidPattern, AcidSequencer). i think, to make use of them (or whatever other sequencer classes), we first need a GUI to accesss the sequencer. patch-storage formats (with sequencer data) can then be devised later - i guess there's no way around 'chunks' when we want to store sequencer data in patches. the GUI'd example by assecca looks good but i also have no sensible idea how 'connect' the sequencer-part of it with the VST plugin code without writing the GUI directly in C++ (maybe with VST-GUI?). about the 1 program vs. 128 - no problem with that. personally, i consider the concept of patch 'banks' as kinda antiquated anyway. banks had their place in hardware synths. but in softsynths - why bother?

as for IRC: i'm not really a fan of chatting - why not just stick to this forum thread for communications? that's what it is there for.
My website: rs-met.com, My presences on: YouTube, GitHub, Facebook

Post

in my SE project, the only way i could store my memory was thru 999 _hidden_ VST parameters (integers)
so i made a bunch of functions to deal with this inconvenience and everything is okay (bad thing is that SE also allocates additional variables for each of them which isn't really a good thing in this case, it increases the overal memory size requirement (not VST memory))

sequencer data is very tightly stored as binary (without wasting too much bits) so leave that to me, as i already know how the data will look like

yes, we need GUI, as you know, i'm really frustrated with getting GUIs to work
but if you can figure how to make VSTGUI work with the Open303 structure - it'll be great, once working, i might be able to start coding GUI elements myself too

btw, i am now a very happy owner of a x0xb0x (thanks to Alterex (seller) and rv0 (helped so much))

IRC is a nice place to just talk, i try to keep myself from talking too much here, you know..
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

antto wrote:in my SE project, the only way i could store my memory was thru 999 _hidden_ VST parameters (integers)
how's that? i think, VST-parameters are always 32 bit floats. however, i think, we really should use "chunks" - using a bunch of additional parameters is rather un-elegant and will probably get in the way of future developments when additional features (i.e. additional parameters) should be added - because all old presets and DAW-projects may break
yes, we need GUI, as you know, i'm really frustrated with getting GUIs to work but if you can figure how to make VSTGUI work with the Open303 structure - it'll be great, once working, i might be able to start coding GUI elements myself too
well, i used VST-GUI in the early years, but that's long ago. maybe i can get a skeleton to work but probably not anytime soon as i'm currently pretty busy with all my (juce-based) widgetery. ...although i still wonder, whether a (GPL'd) juce-based GUI would be possible while still licensing the DSP code under MIT...

perhaps meanwhile you could have a closer look on the DSP engine and see how it compares to yours and maybe make some modifications/improvements there?
My website: rs-met.com, My presences on: YouTube, GitHub, Facebook

Post

thanks for nailing the steplengths. s'pose i was being
difficult, but i just wanted to check. (almost disappointed, but
in fact relieved)

verdict on the xoxbox possible?

Post

mztk wrote:
verdict on the xoxbox possible?
i had my hands on it earlier.. it's nice.. rock solid tuning. not as dirty..
i compared it to my 303's

http://www.box.net/shared/sd1as2dhrn

sorry, its AIFF instead of WAV audio..

Left is ...
Right is ...

I actually forgot which channel is which :) that makes it more exciting right??
actually, i think its R channel, as that one starts earlier and the x0x starts twice as fast as 303

Post

hey thanks. seen some interesting youtube vids.

Post

Robin: re, i was a bit away from all of this for a moment
my x0xb0x arrived and i was messing with it (thanks to Alterex for selling it to me, and rv0 for making it easier) :hug: :hug:
it only took me 2 days to figure out how the USB works and a bunch of hours to get all the tools needed to re-compile and upload new firmware on it
6 days after that i got my x0xb0x firmware rewritten to have 303-type patterns (Time and Pitch Modes)
a few days later (now) the x0x interface (at least pattern editing) is almost like the real thing + some bonuses
i just want to say that this was so easy to do, and before that i never knew about "AVR" (i still don't know what it is supposed to mean) or how microcontrollers work..
my point is: it was _that_ easy

why is it so hard here?!
btw, i compared the x0x to Venom, supprisingly, they sound almost identical :-o and i haven't even started calibrating since before that..
i also reconsidered what i want to do with Venom's sequencer
after dealing with 303-type pattern format solely, seeing what it is capable of - i don't think there is any point in implementing the old (array-like) format (which all other clones use) any more
the 303 format would take a bit less space, and it's more powerful actually
and there is a way to do pattern manipulation on it that will result the same way as if it was array-like patterns (i mean shifting < > like in Venom)
so that's another ++ for 303 format

also, since i started programming patterns on this "303" interface of my x0xb0x - my patterns now are different once again
every time i change the pattern-editor interfece (doesn't matter if it was Venom or x0xb0x) - the way i program patterns - my patterns have a specific character
with Venom - i mostly used random functions, step reordering..
with this new 303 interface i began to actually make good sounding melodies
and it's funny how if i make a "mistake" in what i inteded to do - most of the times the result is even better than what i inteded to do ;P~ (303 surprise!)

to be honest, i don't wanna mess with array-like patterns anymore
and i don't think i need a big LCD so bad neither
i want to continue developing Venom, since there are a few areas in it's sound which finaly got to get fixed (gimmick circuit, and few touches, knob response)
now that i have this x0xb0x here under my possession, and acting like a 303, i can continue my analysis with ease and make Venom hardly distinguishable from an avarage 303
i don't mind if it sounds more like my x0xb0x than a specific 303, since the x0x is really good actually, at least mine ;P~ (thanks Alterex and rv0 once again)

currently, i can't do that
the situation is so that:
1) remember, i already "broke" venom by rewriting the sequencer (which stopped in the bare beggining)
2) i was about to reimplement Venom on top of Open303, but that seems to have an unknown path right now

so if 2. doesn't work (or takes to much time to get going) i will go with:
3) throw away the old sequencer, code a new one (SynthEdit again) with less fancy GUI stuff (like the huge LCD) and use an interface very similar to the 303
i think this is doable, i'll need around ~37 LEDs and even less buttons in total
i'll use button combos for the different features, just like on the x0x interface i did
and patterns will take less space (funny coincidence, both Venom and the x0x have 4KB pattern memory)
and while mentioning that, let me just say that the 303 pattern format in the x0x took me 21 bytes total (for one pattern) while Venom uses 33)

in overall, i need to continue the developement of Venom soon (it looks dead now, and that hurts)
be it a VST or a SE-creation, doesn't matter, it would be totaly great if it even had just a small sequencer like my x0x has right now, as long as it is capable of playing the synth-side of it..
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

just found this
http://www.pulsecodeinc.com/DB-303/

The gui is slick and 3d; "We were able to model the knobs and buttons accurately by precisely measuring it with a micrometer and entering the data in CAD software."

Regards, James

Post

here's a sample i did today
note: i haven't changed anything since before i had the x0x.. knob response is probably the biggest difference (and some small inconsistency with the sawtooth that i was too lazy to fix from before..)

sunhome: they did more work measuring the knobs and buttons instead of emulating anything if you ask me ;]
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post Reply

Return to “DSP and Plugin Development”