Emulating the DX7 the HARD way. Part 1.

Поделиться
HTML-код
  • Опубликовано: 4 окт 2024

Комментарии • 125

  • @mvh2275
    @mvh2275 Год назад +11

    I just purchased the Chipsynth OPS7. This software is incredible. I have the original DX7 and my initial impression is the software just blows the thing away. You guys did an outstanding job and thank you for bringing it to the market at a reasonable/affordable price.
    My thoughts - cheers

  • @oliro
    @oliro 3 года назад +13

    I don't think you talk too much. When I was coding I often found the solution I was looking for when someone on a RUclips video was diverging off the subject to explain a particular pain in the a%% he had to solve, which often time he's not the only one to have to deal with it. I think details like that makes it even more useful.

  • @Aidan_Lawrence
    @Aidan_Lawrence 3 года назад +26

    YES! What an incredible feat of reverse-engineering. Not only is your work terrific, but it’s so awesome to have a high-quality overview of the DX7’s hardware and software. It’s surprisingly difficult to even find high-quality photos of the mainboard, let alone a full dissection of the synth. In a way, it feels like this iconic synth was just properly “preserved” and I love that.
    SOOOO cool and congratulations!

    • @plgDavid
      @plgDavid  3 года назад +3

      This reads wonderfully and brings so much joy to my heart and mind.

  • @SynaMax
    @SynaMax 3 года назад +19

    Seeing the DX7 in MESS debugger reminds me of the little bit of debugging work I've done with the Fairlight CMI MESS/MAME skeleton driver; I hope that will get MIDI and audio functionality one day. Thank you so much for your hard work and research; I can't wait to buy OPS7!

    • @plgDavid
      @plgDavid  3 года назад +6

      Yes I followed that (and still do) the Fairlight is another monster to emulate. Props!

  • @owenpalmer6540
    @owenpalmer6540 3 года назад +7

    Stuck around till the end; eager for part 2

  • @beat2009
    @beat2009 3 года назад +6

    This is amazing. Can't wait for the next part.

  • @SoundAuthor
    @SoundAuthor 3 года назад +11

    I really admire your attention to detail here. I didn't understand much of it, but your razor-sharp focus on the modeling is really inspiring.

  • @IRONSILVER22
    @IRONSILVER22 3 года назад +4

    Top notch stuff, looking forward to the next installment. The extended sy-77 waveforms will be a totally sweet, especially considering that there is very little emulation for anything in the SY range. Thank you for your hard work!

    • @samplehunter
      @samplehunter 2 года назад +1

      There was an ancient vst plugin which tried to emulate the FM core of an SY77. I think its name was VX7. I remember it was quite unfinished and still very buggy and was not further developed.

  • @idiotisterecords
    @idiotisterecords 3 года назад +2

    You have no idea how much this effort means to me, I lost my TX7 and could immediately tell you nailed this!

  • @Lantertronics
    @Lantertronics 3 года назад +2

    What an amazing bit of sleuthing!

  • @jameshagerman
    @jameshagerman 2 года назад +3

    Ack!! You were just getting into the good bits! I've got an Ensoniq VFX and ESQ-1 and am working through understanding the existing MAME emulations. Knowing more about how you performed RE on the DX7 chips is super interesting! Keep up the good work!

    • @plgDavid
      @plgDavid  2 года назад +3

      I should eventually finish part2. It takes a lot of time.

  • @ircluzar
    @ircluzar 3 года назад +4

    awesome stuff, looking forwards to part 2

  • @johnsaunders6510
    @johnsaunders6510 3 года назад +2

    Thanks for the deep dive. I used to have a DX7 when they first came out and it was a wonder. Amazing it was using mostly off the shelf parts.

  • @neonvoid
    @neonvoid Год назад

    Incredible achievement, congratulations.

  • @rendragd
    @rendragd 3 года назад +2

    Ahhh...takes me back to early eighties engineering school and my AppleII synth project...

  • @fredconte
    @fredconte 3 года назад +2

    no words to describe your journey - fantastic content!

  • @nookcyan
    @nookcyan 3 года назад +2

    Awesome information, thanks a lot David!

  • @MintythecatIsABeast
    @MintythecatIsABeast 3 года назад +2

    Very good to see and you've clearly done lots of detective work on the DX7. I recently got my DX7 out having got my hands on a DT7. I was in a music shop the other week and the guy int here - helpful that he was - showed me a few current day FM Synths. None of them sounded like a DX7 - all too clean and without the right character. I know the sound of a DX7 and it's entirely non-PC :D It's great to see your work in emulating and investigating these older machines. And yes, we did indeed use 138 all the time in those days :D

  • @midierror
    @midierror 3 года назад +4

    Amazing work David, love this! My mind boggles at how deep you go into this stuff, your dedication is really inspiring and the results sound frikkin awesome!

    • @plgDavid
      @plgDavid  3 года назад +3

      Thank you so much! Part curiosity, part obsession, part challenge.

  • @BigSneakySnake
    @BigSneakySnake 3 года назад +1

    Thanks for the deep dive, I'm looking forward to future videos :)

  • @Robert_Babicz
    @Robert_Babicz 3 года назад +2

    so cool

  • @mikosoft
    @mikosoft 9 месяцев назад

    I never knew DX7 was actually a full on computer, interesting stuff. Also I'm glad I had basic course in microprocessor design at university and I can actually understand what's going on

  • @OllyWoo
    @OllyWoo 3 года назад +2

    This is amazing, David, I basically spent most of my life trying to build my own DX7 😜 I got as far as writing the firmware of the TX81Z for a 32 bit Arduino using a Chinese YM2151 and YM2414B. I was going to use my analyzer on the TX81Z to find out the undocumented codes of the latter chip but thankfully someone in Japan had already reengineered the firmware. Can't wait for part 2 😀

    • @plgDavid
      @plgDavid  3 года назад +1

      Fun right? I go both straight recycled and remarked YM2151 and YM2414B from China too (I have a video on that). We have our own reverse engineering of the DX100 and TX81Z firmware. Maybe one day we will make something with that ;)

    • @OllyWoo
      @OllyWoo 3 года назад

      @@plgDavid that would be amazing. Also, I did watch your fake chip video, and indeed some of my chips seem legit and some have the same factory date and are too smooth 😉 I always thought they were cloning the chips not recycling them. Hoped you were making a hardware rebuild tbh, I think there is a market for a small desktop module as well. For now, I got myself a TX802 earlier this year 😜

    • @plgDavid
      @plgDavid  3 года назад +2

      @@OllyWoo I have various hardware FM synth prototypes and possible partnerships. Time will tell

  • @ArtemioUrbina
    @ArtemioUrbina 3 года назад +2

    Thanks for making this, I wish you wouldn't limit yourself and made this 1 or two hour long =)

    • @plgDavid
      @plgDavid  3 года назад

      Its hard to find the right level of complexity. I know that I could go much deeper and many of you would enjoy it still. Haha

    • @ArtemioUrbina
      @ArtemioUrbina 3 года назад

      @@plgDavid indeed, but this is great as a taste for many not familiar with a lot of what's involved and a good taste for those who do. Thanks for making it

    • @TreyMotes
      @TreyMotes 3 года назад

      @@plgDavid I think going mega long is perfectly acceptable on your personal channel. The shorter stuff is fine for the main Plogue channel.

  • @moliver_xxii
    @moliver_xxii 2 года назад +1

    can't wait for part 2 amazing job!

  • @BaumInventions
    @BaumInventions 3 года назад +6

    Wow. That is really cool to see... I am reverse engineering a Alesis 90s Drumcomputer at the moment... Not to deep... just to understand the way patches and samples and the Hardware is controlled... I found hardware access to the ports in the code and was wondering how always 3 bits got frequently controlled in the same way but not the rest. i took apart everything and found out that the 3 bits control the 3 datalines going to a 74HC138 ...And that chip is controlling with 3 inputs all the chip select of each perepherial like Display etc. Basically the same you found out at 7:05 ... I guess they are all just cooking with water :D

    • @plgDavid
      @plgDavid  3 года назад +3

      Ha great stuff. yes 74*138 and 139 are the bread and butter of 80's computer/arcade design!

  • @electronash
    @electronash 3 года назад +1

    This is neat. I love stuff like this.
    Have you done much work with the LA32 / D-50 yet?
    I did a basic register map for the LA32 a while back. I think MUNT basically does HLE for the actual synthesis part.
    I hooked up an FPGA board to the LA32 on a D-20 board, and had the FPGA output a hex dump of a small RAM block via VGA. The RAM block mirrored the register writes to the LA32, so I could see in realtime when I changed the patch parameters like ADSR etc.
    The ultimate aim would be to do a full D-50 core on FPGA, but it's quite a big project.
    I'd love to work on that again if I ever get chance, but it's a bit low on the priority list atm.
    Don't worry, btw, I think most people watching do enjoy the more in-depth nerdy details. ;)

  • @juno6
    @juno6 3 года назад +1

    Very interesting data!!!

  • @iyatemu
    @iyatemu 3 года назад +6

    >Part 1
    Oh good, it gets longer.

  • @pinusniron8935
    @pinusniron8935 3 года назад +1

    Very good

  • @patto2k358
    @patto2k358 2 года назад

    Thank you for sharing!

  • @expertmax32
    @expertmax32 3 года назад +1

    Tout simplement génial !! J'ai bien hâte de visionner la 2ieme partie.

  • @SpaceDisease
    @SpaceDisease 3 года назад

    Wild stuff. Glad to see ppl doing the work to create a dx VST that actually sounds big and sharp!

  • @PJFox-lo8pi
    @PJFox-lo8pi 2 года назад

    Looking forward to the next part! Thanks.

  • @jerzilla3795
    @jerzilla3795 3 года назад

    This was awesome. Can’t wait for the next video!

  • @LenPopp
    @LenPopp 2 года назад

    I'd love to see a part 2 video! I'm trying to figure out how to make a DX7-like module for my homebrew synth, and this is good info.

  • @WARDISWARD
    @WARDISWARD 3 года назад +1

    Plogue is to chip emulation as u-he ,cytomic and softube are to analog emulation
    These are the big boys !!

  • @rm-studios
    @rm-studios 2 года назад

    You’re a damn genius, sir!

    • @plgDavid
      @plgDavid  2 года назад +1

      Thanks but not really, just very very obsessive haha

  • @francoisbasquin6974
    @francoisbasquin6974 3 года назад

    Je fais partie des 5 qui sont restés jusqu'à la fin, et j'attends avec impatience le prochain épisode! 😁 Merci David

  • @chrisliddiard725
    @chrisliddiard725 2 года назад

    Facinating ... I hadn't heard of IDA your reverse engineering tool, so that alone was worth the ticket. Maybe a dedicated video on how that works might be in order. Thanks for sharing.

  • @martingerken7094
    @martingerken7094 3 года назад +1

    Thanks for all the nerdy details. I was please to see some of my hobbies move nearer to each other: calssical video game emulation and synth! I'd be happy if you'd give some details of how DEXED works...

    • @plgDavid
      @plgDavid  3 года назад +1

      Thanks! But I havent looked at the DEXED code at all. This is 100% independent research

    • @martingerken7094
      @martingerken7094 3 года назад

      @@plgDavid ok, thanks. Can anyone else point to the technical background of Dexed?

  • @synchromesh
    @synchromesh 2 года назад

    Subscribed! Great stuff, I'd love to see you go through your Vectrex as well. :)

  • @samplehunter
    @samplehunter 2 года назад

    Now I'm excited to see the upcoming Parts. Ever wondered why they needed two chips and if these 32 algorithms were hard coded or if the OPS could do custom algorithms.

    • @plgDavid
      @plgDavid  2 года назад

      Algs are indeed hardcoded in the silicon gates

  • @pwmodulation467
    @pwmodulation467 8 месяцев назад

    David this video is incredible, do you plan to release Part 2 anytime soon where you explore the EGS and the OPS?

    • @plgDavid
      @plgDavid  8 месяцев назад

      Thanks. I learned my lesson not to ever say a part 2 is coming. It would be a month of work more or less. And I’m incredibly busy with out new products :/

  • @euglossine4ever
    @euglossine4ever 3 года назад

    This is amazing

  • @nrdesign1991
    @nrdesign1991 3 года назад +3

    I've had my fair share of playing the DX 7, both a real unit and Dexed. It's a very versatile synth if you respect its limits.

  • @HenriDeCarvalho
    @HenriDeCarvalho 3 года назад

    @ 15:00... Arturia, Novation, Ableton, Spectrasonics, Roland, IT ingenier' s

    • @HenriDeCarvalho
      @HenriDeCarvalho 3 года назад

      Just joking, not into the game but always interristing to understand how it works

  • @Lantertronics
    @Lantertronics 3 года назад

    I'm still here! :)

  • @lundsweden
    @lundsweden 5 месяцев назад +1

    The DX7 is the one we all remember, but didn't the DX9 (cut down 4 OP) the DX1 (mega expensive version with massive case, better UI and weighted keyboard) and DX5 all released in 1983, and all worked pretty much the same way?

    • @plgDavid
      @plgDavid  5 месяцев назад +1

      Yes, though the DX9 is voluntarily down powered

    • @lundsweden
      @lundsweden 5 месяцев назад +1

      @@plgDavid Do you mean it has the same chips as a DX7, but is intentionally "feature reduced" by Yamaha?

    • @plgDavid
      @plgDavid  5 месяцев назад +1

      @@lundsweden precisely. Want to make a short on that. Might do it soon

  • @RixtronixLAB
    @RixtronixLAB 3 года назад

    Nice video, thanks:)

  • @isaacanthonydj4124
    @isaacanthonydj4124 2 года назад

    you can plug your iPhone into the newer Roland synthesizers, and use them to control DEXED on it's own channel on your synthesizer. It's pretty slick...

  • @MrOuija-rr8kq
    @MrOuija-rr8kq 2 года назад

    Synthesizers get ‘Nam flashbacks when they hear NIN

  • @lifescansdarkly
    @lifescansdarkly 2 года назад

    Thank you so much for your dedication to recreating this classic with all its idiosyncrasies! Two questions for you:
    1: In some OPS7 comparisons I've heard, the hardware DX7 had a slightly sharper sound. This could be down to differences in reference hardware, but I'm wondering if it might be due to velocity mapping. I know the DX7 keybed can only output up to 100 velocity, vs. modern keybeds which output up to 127. Would you recommend remapping or limiting the velocity info we're sending to OPS7 for maximum authenticity?
    2: I'd like to use OPS7 to recreate a TX816 in the box. When you're changing master tune on each of the TX modules, you have a range of +/- 64, with each step corresponding to about 1.2 cents (technically 1.171875 cents, but who's counting). Does OPS7 allow us to change master tune in fractions of a cent? And/or can you use the TX mode of changing tune in 1.2 cent increments? This is getting into the realm of the *super* nitpicky but I have such great memories of that lush sound and would love to be able to recreate it perfectly.

    • @plgDavid
      @plgDavid  2 года назад

      hey so
      1) Its a convoluted topic for sure with many variables. OPS7's Firmware Behavior settings include Velocity mode where you can choose the velocity calcs made by the original keyboard when receiving external MIDI OR when hitting the keys - and it IS possible to get values higher than 100 if you whack it dangerously. Thats just how the sub cpu and main cpu does it that could have been better.
      2)There are about 5 million settings you can tweak for pitch/tuning in OPS7. We didnt want to limit ourselves to just the firmware precision but to the EGS/OPS precision there. SO you can not only use the same MASTER TUNING knob of a real DX7, but also retune using MTS-ESP or Scala scales or a combination of all.

    • @plgDavid
      @plgDavid  2 года назад

      If you want to emulate subtle detune between virtual TF1 units (of a TX816/TX216), better to load multiple instances and adjust to taste.

    • @lifescansdarkly
      @lifescansdarkly 2 года назад

      @@plgDavid Amazing, thank you for your response! I'll be purchasing the synth this weekend, looking forward to diving in.

    • @lifescansdarkly
      @lifescansdarkly 2 года назад

      @@plgDavid I've been playing with the VST today, and I really have to commend you on your work here. It's done what all the other DX emulations have failed to do, capturing that digital edge and fuzz that was the hallmark of the sound. I stacked up 8 instances to create a TX816 and compared it to some recordings of the hardware unit I used to own, and it's pretty much indistinguishable. Thank you!

  • @Algoritmarte
    @Algoritmarte 3 года назад

    Simply i.m.p.r.e.s.s.i.v .e. !!!

  • @corri303
    @corri303 3 года назад

    awesome stuff

  • @spectralknights2
    @spectralknights2 3 года назад +1

    Nice. Thanks for making this. I hope u also make ensoniq SQ80, even though arturia made it recently

    • @spectralknights2
      @spectralknights2 3 года назад +2

      I just love the sound of it's 8bit wavetable and not too many emulation out there.

    • @jackcimino8822
      @jackcimino8822 3 года назад

      I rather have DW8000. Sounds so crisp and can mimic many synths of its time.

    • @jackcimino8822
      @jackcimino8822 Год назад

      @@chinossynthesizer705 What do that have to do with what I said? Plogue is making a SID chip emulation, as well as a Famicom and TX81Z synth.

    • @chinossynthesizer705
      @chinossynthesizer705 Год назад

      @@jackcimino8822 korg dw8000 is overrated 😴

    • @jackcimino8822
      @jackcimino8822 Год назад

      @@chinossynthesizer705 Nope, you are! Aside from the lack of PWM, the DW8k and its successor, DSS-1 are underappreciated. You can mimic PWM on the DSS-1 using the modulation delay as a flanger

  • @mechatomb2921
    @mechatomb2921 3 года назад +1

    Gonna eat up this series and get some C/C++ Knowledge down lmao.
    DX7 was something I hated bc of the presets, but once I got into FM synthesis I had a newfound respect for the synth architecture and the lo-fi dacs.
    One thing that makes FM shine is modulating it in real time. WIth Dexed it's super easy with automations. With the Digitone (only 4op.) you get into some wild territory thanks to the ready access to live tweaking in the sequencer.
    Stuff like AdLib Tracker, RADTracker, DefleMask, M8 Tracker (Headless or the hardware version), DAFM, MEGAFM, etc. really give you more ability to push them to the max.

  • @TechM3X
    @TechM3X 3 года назад

    It would be cool if you could include the option to emulate 24 bit D/A Converters in addition to add the additional chip emulation required to power the Yamaha DX5

    • @plgDavid
      @plgDavid  3 года назад +2

      Technically the DX5 is not that far off from OPS7, like the DX5 we have two sets of EGS/OPS pairs (in A and B banks). The core maths do not have more precision than 15bits however. So DX7II got the max out of those maths.

  • @MauricioPiomboChanel
    @MauricioPiomboChanel 3 года назад

    Come on!!!

  • @fkthewhat
    @fkthewhat 3 года назад +1

    Would love to know how to use this knowledge to make a midi controller for the DX7 (with the ability to edit parameters on the fly without notes being cut off etc)

    • @plgDavid
      @plgDavid  3 года назад +1

      That only happens if you send a full patch to the DX7. Individual single param sysex do not interrupt voices.

    • @anonymous_friend
      @anonymous_friend 2 года назад

      @@plgDavid So this can be done? Have you tried to use patch base to design a touch pad midi controller for a dx7?

    • @plgDavid
      @plgDavid  2 года назад

      @@anonymous_friend afraid not

  • @alex-esc
    @alex-esc 3 года назад

    1:49 the licc

    • @plgDavid
      @plgDavid  3 года назад +2

      One of the tracks on MD's compilation ended with this, I thought it was a fun tongue in cheek thing to use for the splash. Being doing that ever since. Also fan of @Adam Neely

  • @eobet
    @eobet 10 месяцев назад

    Stumbled upon this so I’ll ask here as well… any plans for CLAP and MPE support?

    • @plgDavid
      @plgDavid  9 месяцев назад +1

      MPE has been there since day one. CLAP is in beta in our forums. Regards

  • @bhamadicharef
    @bhamadicharef 2 года назад

    Any hints where is "Emulating the DX7 the HARD way. Part 2" ?! 🙂

    • @plgDavid
      @plgDavid  2 года назад

      Making part one (and the synth itself) burned me quite a lot and needed a break. I have half of part 2 shot, but there is a whole lot of work to be done and my time is requested on the next synth a lot

    • @bhamadicharef
      @bhamadicharef 2 года назад

      @@plgDavid what are the Mame modules you contributed ? Cannot find David searching github

  • @arxaaron
    @arxaaron 2 года назад

    Has part II ever materialized?? (not finding on search)

    • @plgDavid
      @plgDavid  2 года назад

      No. Making part I kind of burnt me out. Not sure when it will be finished.

    • @arxaaron
      @arxaaron 2 года назад

      @@plgDavid Understood... and understandable. The level of reverse engineering you are doing is awe inspiring.
      (: I know just enough of the tech to hang in an ride out the whole video.. :). I have a DX21 myself and assume that most of the DX7 tech is also applied in scaled down form there. I'm (very slowly) working on developing MPE instruments that could utilize your synth engines, so I'll be following your progress.

  • @ArtFluids
    @ArtFluids 3 года назад

    Could all this FM chip research be used to make a super-accurate Adlib/OPL3 General MIDI plugin? Some way for us to play back old DOS game MIDI files with extreme accuracy?

    • @plgDavid
      @plgDavid  3 года назад +2

      chipsynth PortaFM already plays OPL3 vgms, so yeah _technically_ we have bit accurate cores that could do that.

    • @ArtFluids
      @ArtFluids 3 года назад

      @@plgDavid I guess someone would just have to dump the General MIDI programs/patches from the old Adlib board. I have no idea where to look for that. I mean, software like DOSBox must have those patches in there somewhere.

  • @acreil
    @acreil 3 года назад

    Now do the GS-1. And the ELX-1.

    • @plgDavid
      @plgDavid  3 года назад

      I'll answer the other comment in the company channel.

  • @6581punk
    @6581punk 3 года назад +1

    I thought being as techy as you are there would be Linux versions of your VSTs.

    • @tssf
      @tssf 3 года назад +4

      Why stretch the resources of a company so thin to support a platform less than a low percentage of your customer base would actually use? That's like lower priority than supporting a niche feature that no one would use in the product

    • @TreyMotes
      @TreyMotes 3 года назад +2

      @@tssf You are right, but there is one reason Linux support would be great. The potential to run the plugin on something like a Raspberry Pi and create a clean nice DX7 solution when paired with a cheap MIDI controller.

    • @tssf
      @tssf 3 года назад

      @@TreyMotes can't argue with that, that would be really cool. I know David is making a neat portable synth in a cartridge for Famicom, wonder if dx7 will be in it too?
      But yeah no doubt it'd be awesome to have a portable version of the entire chipsynth suite and maybe put it into a tiny little dx7 clone or something

    • @tssf
      @tssf 3 года назад

      But ARM Linux is even more niche than Linux ;)

    • @plgDavid
      @plgDavid  3 года назад +3

      @@TreyMotes Hey. Making a Linux version just to eventually port to ARM hardware is not necessary here. All our chipsynth cores already run fine on a STM32H7. I made all those examples on my twitter earlier this summer. The issue with Linux is the variety of distros and UI toolkits. We have our own custom UI classes and would want to do the same on Linux and its an pretty significant endeavor. I would rather do hardware tbh.

  • @eliasknaapinen
    @eliasknaapinen 2 года назад

    The content of this video is incredible, but next time please no background music. It just distracts from the content it self.

    • @plgDavid
      @plgDavid  2 года назад

      Interesting others have complained of the opposite on some of my older vids

  • @pepinillosazucarados6743
    @pepinillosazucarados6743 3 года назад

    FOR ME THE BEST EMULATION ON SOFTWARE IS THE ARTURIA DX7

  • @albionpatterns3986
    @albionpatterns3986 3 года назад

    How to waste your life away... Dude unplug your damn toys and GO OUTSIDE

    • @plgDavid
      @plgDavid  3 года назад +5

      😂

    • @anonymous_friend
      @anonymous_friend 2 года назад

      We need more people like him. A lot of people have no usable skills.