Cycle accurate Mega Drive emulation

Discussion in 'General Sega Discussion' started by Nemesis, Apr 9, 2013.

  1. Covarr

    Covarr

    Sentient Cash Register Member
    4,233
    3
    18
    Trapped in my own thoughts.
    Two stageplays, a screenplay, and an album
    I have a similar spec'd machine (double the ram, but I think if you have 8GB that's already enough that it won't matter), and my minimum fps was greater than 60 in both Sonic 2, which at the very least seems to be the most common benchmark. Certainly nothing as demanding as Yoshi's Island (although that game had a Super FX chip that significantly raised requirements). Someone on Exodus' own forum is saying Super Skidmarks is the slowest game he's played so far, though I haven't had opportunity to try that one myself yet.

    I'd imagine the most demanding Genesis/MD game to be Virtua Racing, which has a special chip of its own, but I doubt it's emulated yet (correct me if I'm wrong?).
     
  2. The SVP (Virtua Racing) isn't emulated currently.
     
  3. DustArma

    DustArma

    Member
    1,306
    1
    18
    Santiago, Chile
    Learning Python.
    If the SVP isn't emulated I can't imagine any commercial games that would be much more demanding than Sonic 2.
     
  4. Lilly

    Lilly

    Muffin Taste Tester Member
    2,270
    95
    28
    United States
    Shang Mu Architect
    Has anyone else tried this out on WINE yet? It seems to want to start okay on my end, (WINE v1.4.1) but my system stalled for a good five seconds while the program was configuring the XML file for the Genesis, so I canceled it as soon as I regained control of the mouse; didn't want to chance a system freeze with an unsaved project file in GIMP. Otherwise, I'm glad it did something other than disappear and crash, and it probably would behave if I gave it the chance; will try this out on Windows when I can be bothered to crawl out of my GTK2-based comfort zone. =P

    My specs are decent enough to handle BSNES, so I'm excited to test drive a virtually nigh-perfect nostalgia trip with my favorite Genesis games. I swear, I could almost hear a difference in the sound with that video posted by BlobVanDam! The chance of an emulation platform focused on fidelity rising out of the foundation of Exodus is simply amazing; I'm glad projects like BSNES are not alone, and this will open the door to running more than just the Genesis accurately. It's good to see all your hard work finally reaching a stable version number, Nemesis, this is amazing!

    Also, can't wait to see a cycle-accurate N64 emulator built for this. >:D *bricked* The Saturn should definitely be a bigger priority there, though, there's never enough attention given to that system.
     
  5. Covarr

    Covarr

    Sentient Cash Register Member
    4,233
    3
    18
    Trapped in my own thoughts.
    Two stageplays, a screenplay, and an album
  6. 2.2 GHz Intel Pentium Dual Core, get around 15 FPS
     
  7. Aerosol

    Aerosol

    FML and FU2 Moderator
    10,642
    98
    28
    Not where I want to be.
    Sonic (?): Coming summer of 2055...?
    What's interesting is that the author has just decided to approach multi-threading in almost exactly the same way Nemesis did!
     
  8. Andlabs

    Andlabs

    「いっきまーす」 Wiki Sysop
    2,175
    0
    0
    Writing my own MD/Genesis sound driver :D
  9. Aesculapius Piranha

    Aesculapius Piranha

    つづく Oldbie
    4,344
    35
    28
    Unknown
    Diva
    Is there an ETA on the source code release? My inner novice programmer is eager to see if I can wrap my mind around the inner workings of this.
     
  10. Nemesis

    Nemesis

    Tech Member
    There are three things I need to do before the sourcecode release can be done:
    1. Decide on the license terms
    2. Figure out how best to handle third party libraries. There are a half dozen or so libraries, and I've had to modify the build scripts for a number of them in order to get the outputs I need. I have to check the license terms for each one to see if I can distribute these modified versions, and also to see if I'm allowed to distribute pre-compiled versions for ease of use.
    3. Do some final sourcecode cleanup. There are a couple of breaking changes I want to make to the device API before other people start using it. I also want to make some formatting changes to comments.

    Right now I'm focusing on bugfixes and minor improvements for the next release. I'll probably focus on getting the sourcecode release out just after the next release. No hard and fast ETA at this point, but it won't be too far away.
     
  11. Dracula

    Dracula

    Oldbie
    604
    0
    16
    I'm watching you!
    Converting NES Mappers to MMC5
    Thamk you very much for this! This might help me track down music as well!
     
  12. Sintendo

    Sintendo

    Member
    249
    0
    16
    Will you be putting the source on a service like GitHub, or is it just going to be a downloadable archive with all the code on your website? The former seems like it would allow for better cooperation with contributors.
     
  13. I'll look forward to trying Exodus out once I manage to get a massively upgraded computer to run it on.
     
  14. Shadow Hog

    Shadow Hog

    "I'm a superdog!" Member
    I actually went and overclocked my CPU a modest amount, got it to go from ~45FPS to a smooth 60. Yay.

    Not sure if Magic School Bus: Space Exploration Game is the most intensive game to test it on (as opposed to, say, Gunstar Heroes or Contra Hard Corps or something), but hey, whatever works.
     
  15. Nemesis

    Nemesis

    Tech Member
    The current codebase uses Mercurial (which I prefer), so it won't be hosted on github, but another service like bitbucket.org is a possibility. Bitbucket is only free for up to 5 users though.

    Honestly, I might just stick a Mercurial webserver up myself. My current setup is to use Mercurial for the code base, with JIRA for issue tracking, and Fisheye to integrate JIRA with Mercurial. I host these services privately on my computer currently. I might just host a public Mercurial server on my own hardware, with public read access. I'll have to decide if I want to allow public read access to the JIRA system, or protect it behind some kind of authentication.
     
  16. FraGag

    FraGag

    Tech Member
    That's 5 users on your own repository. Any number of users can fork a repository, make changes and send you a pull request for you to merge into your repository. (Anyway, that's how it works on Github; I think it works like that on Bitbucket too.) Unless you want to allow others to push changes directly to your repository, you don't need to add users to your repo.

    Since Mercurial is distributed, there's nothing stopping you from having a mirror of your repository on Bitbucket while you self-host your "main" repository. When someone forks a repo on Bitbucket, there is a persistent relationship between the repositories and you can easily browse all forks of a repo. If you don't put your repo on Bitbucket, others will be able to create new repos to publish their fork, but they will all be unrelated and it won't be as easy to find them.
     
  17. Epsilonsama

    Epsilonsama

    THE FASTEST TAPE ALIVE! Member
    Git and mercurial are similar in many ways. Switching between them shouldnt be much of an issue. Also if you wish to continue using hg could use Google Code for your hg repo, I think it doesnt have the limitations of bitbucket.
     
  18. Dracula

    Dracula

    Oldbie
    604
    0
    16
    I'm watching you!
    Converting NES Mappers to MMC5
    Is it possible to add a feature while the code is being traced and the hex ROM editor will be in colors of the traced code?
     
  19. Raqib

    Raqib

    Member
    8
    0
    0
    This is exciting! Any plans on making a core for Retroarch?
     
  20. TomoAlien

    TomoAlien

    Member
    48
    0
    0
    Poland
    I was so happy to find out that there's a Sega Genesis emulator with a debugger which doesn't suck.

    ....But of course, there's always something wrong. The emulator needs a 64-bit processor and OS. I was kinda sad about that, since I only wanted to use it for debugging purposes, where I won't need any smooth gameplay, knowing that I won't be able to use it as a emulator to play games on. Any hopes for some kind of 32-bit version or maybe a different emulator but with a debugger which is not clunky (I find Regen's debuggers clunky - why can't I directly choose a location in memory)?