will C# be perfomant enough for the next problem (HW programming)???

  • Thread starter Thread starter drgonzo120
  • Start date Start date
D

drgonzo120

hello,


A buddy of me made a modification on a TB-303 synthesizer (made in
1982) so it is possible to program the synth via a parallel port
connector. He made a program in qbasic and he wants a "modern" GUI. I
am doing a course in C# and want to program translate the thing to C#.
Here is his website: http://switch.to/bassline Pleace check the section
"Now available: TB-303 computer interface:"

So, will I be able to do it without delays ??? Don't I need C++ ???

I've read you can use "unsafe" blocks in C#, in case of delays, will
this help in any way ???


This are the specifications of the synthesizer itself:


Ram chips: Nec's µPD-444C CMOS RAM, 1024 x 4 Bit Static.
CPU type: Nec's µPD-650C-133, 4-bit microcomputer. (133=Roland's ID
internal firmware Rom code).


Dimensions: 300 mm (width)x148 mm (Depth)x55 mm (Height).
Weight: 1 Kg
Sound range: 3 Octaves (4 octaves in a TRACK).
Tone control: Cutoff Frequency, Resonance, Envelope Modulation, Decay,
Accent, Waveform (Saw/Square).
Tuning control: +- 500 overcents.
Tempo control: 40 to 300 BPM.
Memory: 64 measures x 7 TRACKS (256 measures maximum). Memory backup.
Output: Main (Regular Jack, Impedance 10Kohm) - Headphones (Stereo
Jack, Impedance 8ohm-30ohm).
CV/GATE Out: Mini-Jacks (CV: [= +1V | - +5V], 1 volt/octave / GATE:
[OFF 0V | ON +12V]).
Sync24: Din connector. Synchronizable with TR-606, CR-8000, NOVATION
DRUMSTATION, ...
Mix in: Regular Jack, Impedance 100Kohm. Output level 1:1.
Power supply: Battery - 6V (1.5V x 4). AC adaptator 9V. Current drain :
min 80mA, max 120mA.
Accessories: Soft Case.


thanks
 
"The interface is basically a signal router that can redirect the signals
between the memory chips and 303's internal cpu and the signals between the
cpu and the analog section of the 303 to and from an external connector.
This is all done in a pure hardware fashion (no programmable devices like
gals/microcontrollers/cpu's whatsoever) in a way that there is zero extra
delay on these signals so that the behaviour of your 303 is not affected in
any way. You may ask yourself the question why no programmable devices? This
was the first design prerequisite I made when I started this project for the
following reasons:
1: They generate delays and thus affect the behaviour of the 303
2: programmable devices don't last: the cells that store the program decay
over time and that is unacceptable because I want my interfaces to outlast
the 303's in which they were built in."

From what I can see here delay accross the parallel port would not seem to
be too much of an issue (correct me if I am wrong but it would seem that its
just dumping data down). You should be able to use C# for this but dealing
with parallel ports is no walk in the park.
http://www.codeproject.com/csharp/csppleds.asp includes a full tutorial on
toying iwth the parallel port.

p.s. I have a devilfish and two qm boxes here .. I may be willing to help
with this :D
..
Cheers,

Greg Young
MVP - C#
http://codebetter.com/blogs/gregyoung

hello,


A buddy of me made a modification on a TB-303 synthesizer (made in
1982) so it is possible to program the synth via a parallel port
connector. He made a program in qbasic and he wants a "modern" GUI. I
am doing a course in C# and want to program translate the thing to C#.
Here is his website: http://switch.to/bassline Pleace check the section
"Now available: TB-303 computer interface:"

So, will I be able to do it without delays ??? Don't I need C++ ???

I've read you can use "unsafe" blocks in C#, in case of delays, will
this help in any way ???


This are the specifications of the synthesizer itself:


Ram chips: Nec's µPD-444C CMOS RAM, 1024 x 4 Bit Static.
CPU type: Nec's µPD-650C-133, 4-bit microcomputer. (133=Roland's ID
internal firmware Rom code).


Dimensions: 300 mm (width)x148 mm (Depth)x55 mm (Height).
Weight: 1 Kg
Sound range: 3 Octaves (4 octaves in a TRACK).
Tone control: Cutoff Frequency, Resonance, Envelope Modulation, Decay,
Accent, Waveform (Saw/Square).
Tuning control: +- 500 overcents.
Tempo control: 40 to 300 BPM.
Memory: 64 measures x 7 TRACKS (256 measures maximum). Memory backup.
Output: Main (Regular Jack, Impedance 10Kohm) - Headphones (Stereo
Jack, Impedance 8ohm-30ohm).
CV/GATE Out: Mini-Jacks (CV: [= +1V | - +5V], 1 volt/octave / GATE:
[OFF 0V | ON +12V]).
Sync24: Din connector. Synchronizable with TR-606, CR-8000, NOVATION
DRUMSTATION, ...
Mix in: Regular Jack, Impedance 100Kohm. Output level 1:1.
Power supply: Battery - 6V (1.5V x 4). AC adaptator 9V. Current drain :
min 80mA, max 120mA.
Accessories: Soft Case.


thanks
 
drgonzo120 said:
hello,


A buddy of me made a modification on a TB-303 synthesizer (made in
1982) so it is possible to program the synth via a parallel port
connector. He made a program in qbasic and he wants a "modern" GUI. I
am doing a course in C# and want to program translate the thing to C#.
Here is his website: http://switch.to/bassline Pleace check the section
"Now available: TB-303 computer interface:"

So, will I be able to do it without delays ??? Don't I need C++ ???

I've read you can use "unsafe" blocks in C#, in case of delays, will
this help in any way ???
<snipeddy-doo-dah>

Hi drgonzo120,

I'm using C# to control a USB -> DMX converter. DMX is a lighting control
protocol, that runs on RS-485. The device I have comes from Enttec, and
relies on the computer to constantly generate the DMX frames, i.e. I have a
thread that's continually pushing a DMX frame out. I also have algorithms
that flash lights, and make them spin, not to mention a lot of
preprocessing of the DMX values before they're sent out.

My point here is that, it performs very well. I've used my program in a
production environment, and I haven't seen any lag whatsoever. "C#" is
fast enough.

Note: I quoted C# above, because in the end, it's not C# that's doing the
stuff, it's the CLI.
 
hello,


A buddy of me made a modification on a TB-303 synthesizer (made in
1982) so it is possible to program the synth via a parallel port
connector. He made a program in qbasic and he wants a "modern" GUI. I
am doing a course in C# and want to program translate the thing to C#.
Here is his website: http://switch.to/bassline Pleace check the section
"Now available: TB-303 computer interface:"
**** that site!! It has bullshitter Javascript he tells me I have
errors of the Windows registry, but I am running Linux. I click the
cancel button and it runs a bullshit check.
 
Back
Top