little-scale wrote:

0x20 this has been mentioned as a test / experimental / undocumented register for sound functions, no idea how it works.





0x27 contains the set, reset, load flags for timers A and B, which apparently function alongside the YM2612 sound functions, but I'm not sure how these can be used. I believe that this will let you unlock a formant synthesis mode that could in theory be used for speech or complex wave synthesis.





0x2A is the value set for the DAC output for channel 6.
Set the DAC to ON, but don't play samples or waveforms. Instead, send a DC value directly to 0x2A. This will have different effects depending on the hardware you are using, and seems to be most pronounced with model 2 units.

More info here: http://little-scale.blogspot.com.au/200 … ional.html





0x2C seems to put the DAC into a "super loud mode", play around with the upper nibble to hear the effect.

More info here: http://forums.sonicretro.org/index.php?showtopic=28589
More info here: http://md.squee.co/wiki/YM2612#Register_.242C

Thanks for the infos!
0x27 seems to be the so called CSM mode smile
look at this video http://www.tudou.com/programs/view/IsH_CP_vNnM/ it seems to showcase the use of CSM for formant synthesis...
look at the last channels with only  sine waves that seems to play together the form the vocals...
It is coming from this place http://www.geocities.jp/submarine600/ht … voice.html there is some CSM programming info for the OPN/OPNA on the PC-8801...there is a zip file http://www.geocities.jp/submarine600/fi … 090729.zip that I do not understand well (you probably would better) but there seems to be PCM datas involved to (voice.dat) also the file csm88.z88 have some registers setting that could help you.

there is probably a good reason for the lack of use (if any?) of this mode on megadrive music smile

smile EDIT:
Google translate is my friend smile
reg 0x27 on CSM MODE seems to work like that:

Similar to CH3 Special Mode (adjustable F-NUMBERS) work for CH3 only.
The only difference seems to be the AUTOMATIC KEY ON/OFF of the 4 OP's ...in fact it is a kind of mimic of a DAC that plays back a PCM smile  CSM play the sound at regular intervals rewriting the 4 TL's and F-Numbers of the operators as well.
The interrupt seems to process at intervals of Timer-A.

Regarding Nemesis test on the YM2612:
Special mode is always active when CSM mode is active. CSM mode is only active when the mode bits are set to 10, NOT when they are set to 11. so we have to test the corresponding midi CC values that are working for the GENMDM

In order for CSM mode to have any effect, Timer A must be loaded. In other words, bit 0 of reg 0x27 must be set to 1. None of the other timer-related flags, including the reset and enable bits, nor the state of Timer B, have any impact on CSM mode whatsoever, and the act of changing the state of these settings at any time have no impact on the operation of the CSM mode, as long as the channel 3 mode, and Timer A load flag remain unchanged.

The effects of CSM mode:
When CSM mode is correctly enabled, each time Timer A expires, the following two steps occur, in the specified order:
1. Key-on is sent to all operators in channel 3
2. Key-off is sent to all operators in channel 3

In other words, key on occurs, immediately followed by key-off, at the instant Timer A expires.
The Attack Rate must be set to 31 otherwise you got no sound, because of the instant key off. TL and RR are the two only parameters which control the envelope under CSM mode.

Regarding manual key on:
CSM mode only affects operators which are currently keyed off. If you were to manually key-on all operators in channel 3, then enable CSM mode, the CSM mode would have no effect until you sent a manual key-off event. If you never send a manual key-off, CSM mode will never take effect.

It seems to be a pain in the ass to program for speech synthesis but nice to try! and knowing formant frequencies is a +

I also have a couple of questions:
1- regarding the CH3 special mode F NUMBERS...could you provide me the lowest and the highest frequencies in HZ and(FNUMBER) that you can reach ? just to be sure I made it right in my FMDRIVE and for GENMDM compatibility smile 

2-regarding SSG EG... I see in the CC Chart101.txt that you have one CC enable function and one CC setting for the SSG shapes.
Isn't it normally available as a per operator basis ? so on one channel we should have 4 CC's for SSG on/off and 4 CC's for SSG shapes?
maybe you did not implement it yet... so i assume it's a global enable for all operators of the channel ?
anyway great job! thx again for the update smile

thx++

little-scale wrote:
Aly James wrote:

Hi Seb, Before I search for the answer myself let me ask you this question if you come around here :
How many CC could I send to the teensy at once? the obvious reason is to recall GENMDM patches on the fly with program change events on the same channel. The instruments patches will be stored in my FMDRIVE 2612 VST. (link for those who did not know: http://youtu.be/nxAKR9f437w ).
Happy Nu Year by the way!

You can send at least one instrument's worth "instantaneously" easily.

I mean, if you hit it with all 100 MIDI CCs or whatever, you will come up against a slight drop or unexpected glitch in audio at times, but nothing fatal and nothing to worry about.

I have updated the GenMDM Tools for Max for Live to include an instrument / settings dumping feature, and it works well. smile

Not sure if that answers your question as such, but yeah...

Yeah It should work well smile
any details on test registers 0x20, 0x27, 0x2A and 0x2C ?
what are the effects and what differences did you find between megadrive models ?
thx

Hi Seb, Before I search for the answer myself let me ask you this question if you come around here :
How many CC could I send to the teensy at once? the obvious reason is to recall GENMDM patches on the fly with program change events on the same channel. The instruments patches will be stored in my FMDRIVE 2612 VST. (link for those who did not know: http://youtu.be/nxAKR9f437w ).
Happy Nu Year by the way!

244

(7 replies, posted in Sega)

Hi TSC, I am actually working on a YM2612 FM VST 32BIT WIN (with many additions..) with a nice GUI and it will also be useful to control a GENMDM via MIDI and...store patches. http://youtu.be/nxAKR9f437w
That way you could have many instruments per track/channel and change at will with simple program change events...
I have not yet a GENMDM (wait for second round delivery ^^) and I think I will have to wait many months before I could fully integrate it.
The only thing I need to ask Seb is how many CC parameters I could send at once to the teensy the obvious reason is patch recall.
++ AJ

For those who might be interested in the FMDRIVE2612 Emulation Part...Here is an audio comparison I have made with a real sega megadrive PAL model 1 Headphone out. The MD1 is on the Right channel, FMDRIVE2612 VST on the Left. Scope visualization for the record...

An interesting feature, as certain have suggested, would be the compatibility of presets with the GenMDM hardware GUI side...
most of the parameters should work...more on that as soon as will receive the unit and make some tests...:-)

For the geeky side, here is the YM2612 parameters used on the 3 video examples tests.

INST 01
ALGO 0
OP4 / C2: TL 0 AR 31 D1R 0 SL 0 D2R 0 RR 4 MUL 1
OP2/ M2: TL 0 AR 31 D1R 0 SL 0 D2R 0 RR 4 MUL 1
OP3 & 1 =  OFF

INST 02
ALGO 0
OP4/ C2: TL 0 AR 31 D1R 10 SL 6 D2R 23 RR 15 MUL 1
OP2/ M2: TL 0 AR 16 D1R 18 SL 1 D2R 15 RR 15 MUL 0
OP3 & 1 = OFF

INST 03
ALGO 5
OP4 & 3 = OFF
OP2/M2: TL 0 AR 16 D1R 0 SL 0 D2R 0 RR 4 MUL 1
OP1/M1: TL 12 AR 31 D1R 0 SL 0 D2R 0 RR 4 MUL 1  FB 5


little-scale wrote:

Amazing work.

Very inspirational!

So as Your blog Mr Scale!

yogi wrote:

>Downerczx I think FMDrive is a VST front end for the MD/Gen interface, but I could be wrong. What ever it is, SynthMaker standalone or VST, it sure look fantanstic! Aly James has a very good eye.

Thanks ;-) Actually FMDrive 2612 is a VST SYNTH I have done prior to know the existence of GenMDM.
I am a MD lover and I needed something to play with with full live control in a DAW. I needed Anything but a tracker. I first used VOPM , YM2151 based, so it was close enough but  lacks of easy automation and GUI.

So I decided to make mine for personal use. Started from scratch with the help of some devs FMDrive2612 is YM2612 based with full MIDI automation and custom made controls (some parameters from the 2151 where included, (DT2 coarse detune,Multiple LFO waveforms...) and some nice tweaking (controls over the DAC, Noise floor, Megadrive 1 Headphone output...HD mode..) and nice controls on the EG (global envelope generator rate ratio, original parametric or custom graphic envelopes up to 8 stages...control over the SSG shapes...).

It is not a straight binary emulation so it is not based on any existing core. It has been Almost fine tuned by ear with a real MD1 hardware.
C code based and later assembled inside the synthedit framework so it is win VST 32Bit Only ^^

It is close enough to let you use dumped instruments parameters or create and experiment your own.
It can output classic MD sound or pure clean to very dirty sounds if you mess with the DAC & BITS control...
There is also the DAC part that let you import 4 wav samples and the CH3 Special mode.

Later I decided that the Synth migh be released around JAN or FEB 2013 and will probably cost 12$ :-)

With a GenMDM freshly ordered I decided to turn the FMDrive2612 GUI into a VST MIDI controller, besides it will need some customization to feat the GenMDM latest firmware. When I will receive the GenMDM, probably in 3 or 4 months from now, I will do the final tests and offer the controller version for free.

little-scale wrote:

GenMDM Firmware 100 Quick Reference MIDI Mapping: http://little-scale.com/genmdm_100.txt

Thx, crystal clear.
with the addition of this:
"The frequency for the CH3 Special will be set by pitch values received on MIDI channels 11, 12 and 13 in conjunction with MIDI channel 3 - for operators 1 - 4 like so:

op 1 = MIDI ch 3
op 2 (ch 3 special mode) = MIDI ch 11
op 3 (ch 3 special mode) = MIDI ch 12
op 4 (ch 3 special mode) = MIDI ch 13

SSG EG is controlled via 2 MIDI CCs BTW. One for On / Off and one for Value."

I suppose round2 future shipping units will come with the new firmware.

little-scale wrote:

Thanks for the pre-orders everyone! Approx. 1/3 preordered already...

Great!
Seb, Is there a way for you to mail me the current Full list of CC ?, so I could start mapping my custom GUI to control the GENMDM, just a raw cc text list will do the job, by the way here is a first look at the GUI ;p

thanks for the infos! I'll wait 4 your manual ;p
Damn, I have been dreaming about MD live control for a while!!  I even made a VST emulation of the YM2612 for my personal use...kind of a VOPM on steroid with full automation and GUI....As I was mad about full live control and going out of the tracker world was a +. VGMM etc...are great! but live control is a plus for music players. I have made a nice GUI for it that I could turn into CC controller with your device!
Nothing can beat those Toe Jam & Earl Funky Slap basses ^^

little-scale wrote:

Hi Aly James,

1) SSG EG and CH3 Special will be implemented very soon. I've written the code, but I haven't fully tested it yet. The new firmware should be available mid to late next week.

2) I am in the process of writing a full documentation file, which will be available hopefully mid next week.

3) The frequency for the CH3 Special will be set by pitch values received on MIDI channels 11, 12 and 13 in conjunction with MIDI channel 3 - for operators 1 - 4 like so:

op 1 = MIDI ch 3
op 2 (ch 3 special mode) = MIDI ch 11
op 3 (ch 3 special mode) = MIDI ch 12
op 4 (ch 3 special mode) = MIDI ch 13

Great news ! for the SSG EG ;p  you can definitively count me in for the round 2

"is there a kind of scaling limitation?" I am  talking about the special mode ^^

What about SSG EG and the CH3 Special mode implementation ? is it fully supported now ? and does the unit comes with a full CC List for users who do not use Live? (I saw the basic CC list PDF) and by the way, how do you set the frequencies or Fnumber internally is there a kind of scaling limitation?
ThanKs ;p

little-scale wrote:

Is there interest in another round???

In terms of loading your own samples - this could still be done on the USB version, and as such I would like to create a sample loading app that allows users to load their own samples via USB

Yes! another round, My MD1 needs some YM2612 live stimulations.