don't click here

Genecyst 0.20 YM2612 FM generation through OPL3?

Discussion in 'Technical Discussion' started by SanicDerpy, Jul 16, 2020.

  1. SanicDerpy

    SanicDerpy

    Member
    33
    5
    8
    ???
    SMPS2MID & MID2SMPS Conversions and learning to draw.
    I've been using emulators such as Genecyst and MAME in DOS lately on my old Windows 98 rig (I know they're pretty inaccurate by today's standards and they're pretty impressive on how they're able to run on such a basic OS anyway.) One question I had in mind is a particular version of "Genecyst" (version 0.20 specifically) on how it does it's sound emulation (most of the time it sounds very ugly).

    There's been music recordings from the Sonic 3 1993 prototype from this emulator and in the description, the uploader states that the OPN2's sound is converted striaght to OPL3 commands (which I assume that the uploader used as their sound hardware) without any sort of digital sound involved (only for the DAC channel).

    Original video for proof:


    I know from a technical standpoint that the OPN series are similar to the OPM and both are more "advanced" than the OPL series, also their instrument patch programming are completely different between the two. From experience on how the chips programming works (I'm no expert so this may be inaccurate) . The two series have extra parameters and features that are absent from the OPL series. This includes having higher values for the ASDR envolope (AR, DR 1 and 2 up to 31 as opposed to 15 with only one Decay rate while Sustain and Release go up to 15 still), the use of "SSG-EG" on the OPN series and extra algorithms. (2-4 with the OPL3 depending on the operator mode as opposed to 8 with the OPN2, OPM, etc. and bizzarely having a "AM-FM" switcher for selecting the algorithms)

    With that out of the way, it raises the question that the OPL3 is also a 4 operator chip like the OPN/M series of chips, however their instrument programming and feature set is different from one another. I'll still like to know on how this particular version of Genecyst acctually does this conversion because it's pretty interesting how the developer attempted at it, despite mixed results with the instruments.

    Edit: I made a mistake regarding about the OPL3, It's a 2OP chip like it's predecessors with the abilty to switch between 2 to 4OP, also having more waveforms than the Sine-wave only OPN2. Thanks for OzaFM for pointing this out.

    Here's some good websites that goes through Yamaha's FM Chips (OPL/M/N) in greater detail to make my explanation easier to understand:
    Chips specifications:
    https://gist.github.com/bryc/e85315f758ff3eced19d2d4fdeef01c5
    Algorithims:
    https://gist.github.com/bryc/e997954473940ad97a825da4e7a496fa
     
    Last edited: Aug 24, 2020
    • Informative Informative x 2
    • List
  2. Metal64

    Metal64

    Member
    30
    25
    18
    Oh yeah, good and old Genecyst! I remember when I got my first computer my barber gave me a CD-ROM that contained this emulator and several ROMs. Of course not every game works properly, but was my first exposure to emulations.
     
  3. SanicDerpy

    SanicDerpy

    Member
    33
    5
    8
    ???
    SMPS2MID & MID2SMPS Conversions and learning to draw.
    That's quite interesting to know! A lot of games actually run on this emulator surprisingly, even some more recent roms and hacks such as Sonic 3 Complete and the '93 beta shown on my inital post run fine. It's sound emulation is not very accruate, even by today's standards. At first it would've been impressive at the time. One of my first emulators is Kega Fusion (which is far better than Genecyst) the same development team also made Nesticle correct me if I'm wrong.
     
  4. llun

    llun

    Member
    25
    52
    13
    OPL3 isn't 4OP, it's 2OP, but there's a "4OP" mode which pairs two 2OP channels together.

    What OPL3 has in "advantage" is being able to use up to 8 different waveforms, while OPN2 can only use sine waves.
     
    Last edited: Aug 23, 2020
  5. Metal64

    Metal64

    Member
    30
    25
    18
    Yeah, Kega Fusion is much better than Genecyst, but after I read your post, it made me want to mess around with Genecyst.
     
  6. Lostgame

    Lostgame

    producer/turnablist. homebrew dev. cosplayer. Oldbie
    4,134
    58
    28
    Toronto, ON
    The O.I.C.
    You evoked memories of ancient times with blood-soaked DOS-based interfaces that created my very first ROM hack and emulated my first Sonic games.

    My first ROM I ever tried, in Genecyst, age 10, year 2000, would be Sonic Crackers, which I eventually gained noteriety for hacking. :)

    I used it to emulate Sonic 1, before I could find a copy, and of course tried the Sonic 2 Beta, and everything changed.
     
  7. SanicDerpy

    SanicDerpy

    Member
    33
    5
    8
    ???
    SMPS2MID & MID2SMPS Conversions and learning to draw.
    Never knew you started ROM hacks on Genecyst! Genecyst has a lot of great features for it's time and can even log music which is a precursor to the VGM format. This emulator was out a few years before I was even born (way before my time obviously). So Kega Fusion is what I used as Genecyst was (and still is) way obsolete. I'm trying to find answers on how Genecyst 0.20 does it's sound programming through a OPL3 from a Sound Blaster. You shared a good story! Thanks!
     
  8. Vangar

    Vangar

    Member
    3,654
    62
    28
    Does anyone remember kgen98? I think i used to prefer that emulator for my dos megadrive needs. I think between the two most popular games could be played fine
     
  9. Overlord

    Overlord

    Now playable in Smash Bros Ultimate Moderator
    19,237
    969
    93
    Long-term happiness
    I remember it being more demanding on the hardware than Genecyst was - my PC at the time couldn't run games on KGen98 unless you set the frameskip to 4, whereas Genecyst had a much better time of it. Plus it had dripping blood menus, who doesn't like dripping blood menus?
     
  10. bookman the stinky

    bookman the stinky

    literal trash Member
    197
    15
    18
    the dong
    find motivation
    Ah god Genecyst. I never used any of the OPL compatible versions (or if I did I had no idea the feature existed). Whatever version I had played back all the music at a half step up from what it should've been.
    I'd love to see how close you could recreate 2612 sounds with nothing but translated instructions if that feature was updated heavily.

    Speaking of bloodlust software, I remember the icon for NESticle.

    It
    was
    a
    fucking ballsack lmao.
     
  11. SanicDerpy

    SanicDerpy

    Member
    33
    5
    8
    ???
    SMPS2MID & MID2SMPS Conversions and learning to draw.
    I'm not sure that is possible for every sound, given the fact that the OPL series are completely different to the OPN2. I know that Wohlstand and Sneakernets have made their own OPL3 patch bank which is included in his PGE Musplay program. It allows you to import and select your own custom OPL3 and OPN2/OPM banks to play back midis with. You'll need the OPL3 Bank editor or OPN2 Bank editor to make custom banks for certain chips.

    The patch banks in question has faithful recreations of the famous Yamaha DX Bell patch as well as the many Electric Bass patches included in many Arcade, Japanese PC such as the X68K and Genesis games.

    Check them out here:
    This one has the Bell Patch
    https://github.com/sneakernets/DMXOPL
    And this one has the bass patches (You'll need to download this if you want to get it, this also allows to play midis with OPL2/3 patches):
    https://github.com/Wohlstand/libADLMIDI
    This is the player that I was talking about is is included in this pack (It's called PGE_Musplay):
    https://github.com/WohlSoft/PGE-Project

    Also you can use the Foo_midi plugin with Foobar2000 if you want an easy way to listen them, however you can't use custom banks.

    Edit:
    I forgot to state that on the DMXOPL website Sneakernets stated that he also used various Yamaha DX7 patches and Mega Drive sounds in his custom OPL3 Bank. He also has demos of the patches on SoundCloud if you look up DMXOPL
     
    Last edited: Oct 13, 2020