Page 2 of 3

Posted: Sun May 19, 2013 11:12 am
by Aly James
Something interesting I forgot to tell (but might not be new for you ^^) is when I set the output of a channel to "mute", B4H LEFT&RIGHT bit==0;
Playing some notes here do not play silence but the same line as normal except (center) already distorted from the start and at a lower volume.
The very last ms ends with quantize effect on top of that.
TL as almost no effect on the slot until near max attenuation.

So when I said that the sine shape (assuming we have a pure sine in this example) is slowly changing into an almost square wave is not exactly what is happening.
I think that the distorted line and the clean line simply adds together from the start.
The fact that we only ear the last portion is obviously because, as the clean line reaches low volume, the frequency richer distorted part underneath become prominent and that is also why some sounds seems to have a longer tail on the hardware then on clean emulation.
The positive portion of the sine also seems to be slightly shifted to the right the more the attenuation goes.
So there might be something in here just before MOL and MOR...
--------------------------------------------------------------------------
Here is a wave recording of the effect.
1// B4 D7 and D6 are set (center)
2// (mute)

LADER ALONE
--------------------------------------------------------------------------

Nothing related @TIIDO: do you have some links with interesting musical examples of the use of PCM custom waveforms, drums samples etc..as custom operator wf with the YMF292 aka SCSP, I have a hard time finding some.. ?
Cheers

Posted: Sun May 19, 2013 1:09 pm
by TmEE co.(TM)
I had so much fun working around that problem in my MD sound engine that Pier Solar eventually used, in the end I did not get a perfect workaround. This is fixed in YM3438 and MD2 implementation.
I never really thought it may be an analog problem, it can explain why it is so immune to workarounds. I basically ended up using dummy instruments with really short (but in theory inaudible sound) to get internals to silence state on the channel. It was effective but fairly ugly to implement.

As for SCSP, no... I don't know anyone doing interesting stuff on Saturn with it and I won't be doing any for a while either. But you can get a taste by looking at SY-77 and SY-99 keyboards which use essentially same system.

Posted: Mon May 20, 2013 11:35 am
by Aly James
On a personal point of view, I prefer the sound with the "bug" it gives a very personal sound to the YM2612 and it can be use creatively :)

I have just checked the F1SR..the formant thing kind of remind me the CSM mode, without the need to program formants... ^^

Today I have made a tribute to Yuzo koshiro in my spare time
Here it is:
---------------------------------------------------------------
NINJA STEP from Revenge of Shinobi soundtrack
PAL version

---------------------------------------------------------------
FMDrive in HD mode. and a little mixed and arranged.

http://soundcloud.com/alyjameslab/ninja ... mdrive-vst

Posted: Tue May 21, 2013 5:31 am
by Aly James
Eke wrote: and how did you implemented the characteristic DAC "distorsion" ?
Some more infos :)
This basically what gives me the best results, thinking about what could happen between MOL and MOR and the sign bit thing..and the same behavior his observed on the hardware. Here is a digital emulation.
The pulse line is masked by the clean signal when there is no attenuation (as the clean line is noticeably higher) and is almost unaffected by TL or EG attenuation. see post above.
hope that helps :)
EDIT: I Forgot to mention that I also offset the negative pulse as the attenuation increase...resulting in a change of the pulse wave duty cycle from 50/50 to almost 90/10. This reflect in the tone in the end.

Image

Posted: Wed May 22, 2013 4:08 pm
by Aly James
YM2612 HARDWARE (non standard creative usage)
Setup in these videos is:
FMDrive VST sends MIDI data to the GENMDM MIDI interface that sends register writes to the YM2612 chip in REALTIME.

REAL HARDWARE USE: Using SSG as a "fake" CSM vocal type effect.
(fast SSG envelope can sort of emulate the auto key on / off behavior of CSM mode)

http://youtu.be/MDVZqjSTsp0

REAL HARDWARE USE: Using FMDrive random bytes generator (LFSR) to write a custom 14bytes waveform on the DAC.
(changing the LFSR clock speed will increase the randomness)

http://youtu.be/cXBY5uVfVZY

Posted: Fri May 31, 2013 8:08 pm
by Aly James
Regarding the ladder effect, I will post my latest implementation on the YM2612 sticky doc :)
I finally find a way to implement this at no cpu cost..
viewtopic.php?t=386&postdays=0&postorder=asc&start=684

Posted: Tue Oct 01, 2013 9:05 am
by Aly James
Just to let you know that FMDrive vst got updated to 1.23!
-added extra features and corrections.
-accuracy improved again.
-GenMDM midi mapping already done on startup for those who have one.

Free for all registered user :)

UPDATE >> http://youtu.be/Hdlj8Vjof6c


what I usually do is making the song with FMDrive (and lately Super PSG beta), clean up the live recorded poly notes, if there is some, to be sure everything sent to GenMDM channel is mono, record automation etc...If I want the hardware output, I then hook up GenMDM and route the MIDI content to it and voila!

for now on it is damn close :)

DIRECT AUDIO COMPARISON >> http://youtu.be/8Mk26qRBwjQ

Posted: Sat Oct 12, 2013 12:51 am
by Aly James
Wireless YM2612 hand control test!...using leapmotion controller >> FMdrive VSTi and GenMDM
http://youtu.be/Xuui8f5Oafk

Posted: Tue Dec 17, 2013 9:38 pm
by Aly James
Super PSG VST (SN76489 SMS version with extended features...) is now available :)
http://www.alyjameslab.com/alyjameslabsuperpsg.html

Posted: Wed Mar 19, 2014 5:41 am
by Aly James
I forgot to drop some news in here...

So here we go!

SOUNDCLOUD CHANNEL:
https://soundcloud.com/alyjameslab/sets/fmdrive-vsti

FMDrive VST (YM2612) and SPSG (SN76489) VST ...VGM conversion with registers automation support! available very soon :) I am currently debugging the tool with Valley Bell and so far it works fine.
VGM can then be turned into ROM files to play on the console via available VGM players.
Here is some previews :
>> (.VGM links in tracks description)
https://soundcloud.com/alyjameslab/wand ... drive-spsg
https://soundcloud.com/alyjameslab/big- ... sg-vst-now

X68000, PC88, PC98 etc FM voices Dump --FMDrive VST support added--
As FMDrive VST can also import registers data line directly...
I have recently made a mod with FMDrive support for the Naruto's Hoot Voice Ripper which now let you dump the current track FM presets from Japanese computer FM music, X68000, PC88, PC98 etc..
Naruto has just included my mod into the official HVR release btw.
Image

This will output an .FMD file with a DATA LINE that you can directly copy/paste into FMDrive
Image

available at the download page >> http://www.alyjameslab.com/download.html
Hoot Player (translated page): Hoot Player
Hoot Music Archive: http://snesmusic.org/hoot/v2/

Doing the other way around; FMDrive made track(MIDI) >> X68000 (MDX format) is not easy as one click but is POSSIBLE :)

short version : http://www.youtube.com/watch?v=0hMk6F-Z ... r_embedded
long version detailed process: http://www.youtube.com/watch?feature=pl ... MhtBxuwlxE

SPSG VST (SN76489 PSG-- SID voice effect) >> MIDI >> VGM proof of concept...!
The SID effect is a way of modulating the pulse width of the PSG square wave, which is impossible as the chip do not provide this function.
The trick is to write on the volume "another square wave" at a slightly detuned frequency and of course, at audio rate.
The SID name comes from the similar C64 type of sound this produce, this is a common trick on Atari ST but has never been use AFAIK on the Master System or Genesis.

This has been tested on the Genesis PSG and also on a discrete PSG chip.
It was kind of hard to log the modulation because the MIDI PPQN needed to be very high, not the standard 480...
So far, the greatest accuracy for exporting a midi file with the SPSG modulation as been made through Reaper at 22050 PPQN.
This is a quick test with the PSG clocked here at 1Mhz, only one channel and SID modulation..
http://www.alyjameslab.com/tempdata/midi_export2.vgz
you never got an SN76489 vgm with that effect :)

Posted: Mon Mar 31, 2014 11:14 am
by foobat
How are you running the hardware SN76489 through SuperPSG? Is it just the little-scale sn76489 + teensy code you use or do you have custom firmware?

Posted: Mon Mar 31, 2014 1:20 pm
by Aly James
The hardware is running on a modified Littlescale Open Source Teensy code for the SN76489. (which is not the GenMDM nor the SMS device one)
I have modified how the voices are handled to avoid the cutting of the notes when you press a new key without releasing the previous and some other tweaks here and there.
I have not touched it since the SPSG dev state as the VST is more handy , sounds identical and got the correct Sega Noise bit configuration which the stock SN76489 hadn't.
The hardware is clocked @ 2Mhz in my build.
The problem is for the Timer modulation trick and emulated AY envelope, the baud rate is really too slow to handle MIDI messages from SPSG VST to the hardware so I had to implement this directly in the teensy code :)

The timer trick is still in a debug test, working, but needs to be rewritten correctly using the teensy interrupt mode (for now I use a for loop and the delay() function to calculate and generate the square wave written on the volume register which also freeze any parallel processing resulting in a lag on the hardware side when the timer modulation "SID sound" is on...
http://youtu.be/pm8b83xhCoE

I find it easier to log the SPSG MIDI output and convert the VGM >> Hardware for real playback.
Anyway it is working for any other features and will receive pitch and volume modulation :)
If you want the hardware code just tell me, it is definitely open to enhancement !

Posted: Tue Apr 01, 2014 6:49 am
by foobat
Yeah, I'm interested! I've been fiddling with a Teensy-operated ym2612 for a couple years off and on and I've been meaning to get a PSG working to go with it. Controlling it via SPSG would be a massive timesaver.

I might be able to come up with a good way to do the SID sound without lag via hardware. I have some ideas I'm kicking around. I ran into a similar problem with the ym2612 and PCM audio samples, where the vast number of samples overwhelms the Teensy's ability to play audio and also receive control messages via USB simultaneously. The easy way might be to just migrate to the Teensy 3.0 (which has a whopping 96mhz top speed), the hard way might be a PIC coprocessor dedicated to PCM playback and some shared SRAM.

Either way, the solution for the YM2612 would be a solution for the PSG too.

Posted: Mon Apr 07, 2014 10:55 pm
by Aly James
For sure :) I have replied on your Hardware thread check it out. :arrow:

Posted: Fri Apr 18, 2014 7:48 am
by Aly James
Quick info!
while I am busy finishing my VLinn Drum VST with some Roger Linn (himself :) ) informations I can spoil that we are working on FMDrive + Open Hardware compatibility, the interface has been designed by Ralnix (Foobat)
viewtopic.php?t=1470

We will try to implement all the features of the YM2612 supported by FMDrive VST (including, Special Mode and CSM) and improve the hardware on the go :D