Offline
ad-hell-aide
Aly James wrote:

Beer accepted smile
I am going to post something really interesting regarding the so called  CSM Mode ! Speech Synthesis on the Genesis...

When activated We are in SPECIAL MODE plus Auto KEY ON/KEY OFF is pulsing @ the TIMER A RATE.
Defining some different frequencies in the vocal range on the operators and toying with the timer A gives me a really nice output and a basic proof of concept that it should be usable...at least on the FMDRIVE!  Seb if you got the time to  test it out on the hardware if would be cool smile
It seems that timer A ranges from +/-19ms down to 18.77µs... my emulation cannot go down this low for note on/off but we can reach 8000BPM easily without CPU killing, very usable range!...

CSM speech audio recording are very rare so...I will drop a vid with a sound recording from the FMDRIVE IN CSM MODE ASAP! ...I mean 2day smile


very interesting. i will try this out on hardware once i get the chance!

Offline
Austria

still waiting for a reply to my two emails and private messages sad

Offline
FRANCE

Hi, This is going to be a long post regarding the tfi format conversion and the detune parameter DT..
There is an error in the tfi format conversion that should be corrected..

If you implement a software with a tfi import function,you cannot simply read the tfi DT bytes because it is a conversion from the original YM2612 DT register.

First YM2612 Register DT ranges from:

DATA  0 - 1 - 2 - 3 - 4 - 5 - 6 - 7
----------------------------------------------------
PITCH 0  -1  -2  -3   0   1   2   3

small decrease on the pitch (from 1 to 3)where 3 is max.
small increase on the pitch (from 5 to 7)where 7 is max.

So the maximum detune between two operator is:
3 from max decrease and 7 for max increase.

In the tfi 42 bytes long format, DT parameter was converted
following a table and adding +3 to the register value.
Like so:
DETUNE TABLE(8)
0  1  2  3  0 -1 -2 -3

Conversion happens like so:
--------------------------------------------------
-Converters read the DT register
-DT register is converted to the table value
-Add +3
Result will always give values ranges from 0 to 6.

So DT register will be written in .tfi format like so:

DT REGISTER    0 - 1 - 2 - 3 - 4 - 5 - 6 - 7
-------------------------------------------------------------
DT TFI FORMAT  3   4   5   6   3   2   1   0

The tfi DT byte is read like so in softwares:
DT TFI FORMAT                                0 - 1 - 2 - 3 - 4 - 5 - 6
------------------------------------------------------------------------------------------
DT VGMM,TFMM,DEFLMASK etc     -3  -2  -1   0   1    2   3 

If you followed so far you can see that the parameters are inverted were 3 is -3 and so on.

More, If you extract a tfi patch with the very useful GenKmod the DT bytes will be saved with the original register value witch is plain correct but will produce incorrect values in every trackers that followed the tfi DT table...

So for compatibility with my FMDRIVE 2612 Vsti and LittleScale Genmdm Midi Interface I have rewritten a vgm2tfi 2.0 converter that output direct DT register values (0 to 7) with no changes.
and a classic one for compatibility sake with a reverted Dt table.

smile AJ.

Offline
FRANCE
little-scale wrote:
Aly James wrote:

Beer accepted smile
I am going to post something really interesting regarding the so called  CSM Mode ! Speech Synthesis on the Genesis...

When activated We are in SPECIAL MODE plus Auto KEY ON/KEY OFF is pulsing @ the TIMER A RATE.
Defining some different frequencies in the vocal range on the operators and toying with the timer A gives me a really nice output and a basic proof of concept that it should be usable...at least on the FMDRIVE!  Seb if you got the time to  test it out on the hardware if would be cool smile
It seems that timer A ranges from +/-19ms down to 18.77µs... my emulation cannot go down this low for note on/off but we can reach 8000BPM easily without CPU killing, very usable range!...

CSM speech audio recording are very rare so...I will drop a vid with a sound recording from the FMDRIVE IN CSM MODE ASAP! ...I mean 2day smile


very interesting. i will try this out on hardware once i get the chance!

Great! Some basic info:
-On CH3 Use a slot with for example Algo 0.
-CSM will key on/off automatically as long as you not manually key on. Timer A is on LOAD
-Slowly increase a modulator TL to something like 27 or so.
-Use The CH3 feature to change the frequencies between the carrier and the modulator to some formant vocal range.
-Use the Timer A speed to control if the voice is low or high... like a throat .
Complex combination of FRQ/TIMER A and TL parameters can make the sega kind of talk...yeah smile

EDIT:
To be more precise I will add this:
If it works, you could swap:

1)Test register 0x27 Lowest 6 Bits CC 92 (timers function not very useful?...Timer A is automatically loaded when the CSM Bit is set?)
or if need to be set,
2)Test register 0x20 ,CC 94,95. (still do not know what it does...)

for the 10Bits Timer A registers:

Register 0x24 Timer A MSB Highest 8 Bits
Register 0x25 Timer A LSB  Lowest 2 Bits (might not need this one...)

With the highest MIDI CC 127  we could set the Timer A to his lowest period and so on:
18 x (1024 -TIMER A 10bits) microseconds (NTSC).

Remember that CSM mode will be active only when the channel 3 mode status bits D7,D6 are set to 10, not when they are set to 11. However The "special" Multi frequency control is always activated in CSM mode like in "special" mode D7,D6  01...
anyway, happy testing! ;p

Last edited by Aly James (Feb 25, 2013 2:50 pm)

Offline
FRANCE

Hi guys, this is gonna be my last message here regarding the FMDRIVE 2612 Vsti before I open a proper thread smile
Might be of interest , basic audio compare between sega megadrive hardware and the software...

Offline
San Francisco

Aly James i cant wait to try out FMDRIVE.

Offline

Great work Monsieur James
Both sounds and looks amazing
Definitely worth paying money for
We look forward to the release

Offline

Little-scale, I'm a bit confused on the parameter "Preset Instrument Setting." What is it? And How is it different from setting the FM Algorithm?

Offline
ad-hell-aide
RyuX wrote:

still waiting for a reply to my two emails and private messages sad

If you have ordered a GenMDM unit and would like for the express shipping option, please: send AUD$12 via PayPal to [email protected] with your current address.

Note that this is *only* for people that have ordered a GenMDM unit already.

Offline
ad-hell-aide
8BitPowerHour wrote:

Little-scale, I'm a bit confused on the parameter "Preset Instrument Setting." What is it? And How is it different from setting the FM Algorithm?

The GenMDM interface holds 16 instrument settings (of about 40 parameters per setting) within RAM.

These are "hardcoded" into the source code, so that when GenMDM powers up, it always has these same settings in RAM.

However, from GenMDM 102 onwards, there is the option of storing the current settings into the RAM and reloading it later, making it easy to load instruments (instead of dumping lots of CC data).

Hope that makes things clear.

tl;dr: instrument presets are in RAM and cover parameters for many sound chip elements for a given voice, whereas FM algo is just that.

Offline
ad-hell-aide

Amazing work Aly James. heart it!

I gotta try some of the voice synth stuff on GenMDM hardware!!!!

Offline
Austria
little-scale wrote:
RyuX wrote:

still waiting for a reply to my two emails and private messages sad

If you have ordered a GenMDM unit and would like for the express shipping option, please: send AUD$12 via PayPal to [email protected] with your current address.

Note that this is *only* for people that have ordered a GenMDM unit already.


Ok i just made the payment smile Thanks

Offline

I just made a payment also, cheers

Offline
ad-hell-aide

Good news everyone!

The GenMDM PCBs have arrived for batch 2 and the last 5 from batch 1. I'll post a picture of it tonight when I get home from work.

The exciting thing is that the batch 2 PCB includes a 5-PIN DIN input connector - something that I added once I realised it would be possible to have BOTH USB and MIDI with the same firmware.

Offline

Great news. Out of interest what have you done about power supply with the din connection, are you getting 5v from the sega? As someone else pointed out earlier, ditching the usb supply has really reduced noise for me

Offline
ad-hell-aide

There's a jumper that, when added, means that 5V is drawn from the 9-pin connector of the SEGA for 5 PIN DIN mode.