Thursday, 30 April 2015 06:36

Exodus 2.0 released, project now open source!

Written by

Exodus 2.0 has now been released! You can download the new version now on the current releases page. I'm dedicating this release to my beautiful wife Judi, and my two boisterous little boys Justin and Aiden.

As promised, Exodus is now also open source. Check out the Source Code section for instructions on how to obtain and compile the source, and information on how you can contribute code changes to the project.

Note that you won't see a massive improvement in Mega Drive game compatibility with this version, as the focus has been on other areas, like performance, user interface, and the plugin API. There are still a number of games I know of that will greet you with a black screen for example when you try and load. This is due to the fact that although Exodus aims for cycle-level accuracy, it's not actually there yet, and there's a number of games that use a kind of wait loop against flags on the VDP that technically requires at the very least sub-opcode level timing emulation to pass. No other emulators have sub-opcode level timing emulation for their CPU cores, but they use incorrect timing on the VDP as well in order to make the tests pass.

The biggest thing that needs to be done for Exodus at this stage in order to improve Mega Drive compatibility is write Z80 and M68000 cores that emulate individual bus cycles, rather than emulating at an "opcode" level. For the M68000 at least, nobody seems to have ever done this, and a lot of information needs to be gathered on the hardware in order to determine the correct timing and order for each bus access within instructions. Emulating it properly will also require a major change to the bus system, which I currently have in the works. I was originally planning to have this bus change in Exodus 2.0, but I didn't want to delay the release any further. The bus system redesign, along with cycle-exact M68000 and Z80 cores, will now be my primary focus of development for the next major release. After this is complete, Exodus will have CPU emulation which is truly cycle-exact.

Despite the lack of perfection with the CPU cores at this stage though, Exodus is already much more accurate than other emulators at Mega Drive support for graphics and sound. Exodus has the most advanced YM2612 core ever written, as it was written entirely from scratch during my detailed reverse engineering of the YM2612 back in 2008.

In terms of the VDP, Exodus is the only Mega Drive emulator that has a cycle-exact VDP core, which allows it to emulate many quirks and tricks of the real hardware that other emulators can't, like Direct Color DMA. Aside from rendering accuracy, the VDP core is also fundamentally more accurate in handling basic communication from the CPU. Try this test ROM for example, which tests VDP port access:


http://nemesis.exodusemulator.com/MegaDrive/Tests/VDPFIFOTesting/VDPFIFOTesting.zip
(Detailed discussion: http://gendev.spritesmind.net/forum/viewtopic.php?p=20975#20975)

This test ROM isn't perfect, a couple of the tests fail intermittently on the real hardware, but it's pretty stable, and it's very thorough and brutal. Even Exodus doesn't get a perfect score here yet, it gets 121 out of 122. Most other Mega Drive emulators will only score around 20 or so. I'm hoping with Exodus now open source, other Mega Drive emulators which are still being maintained can use Exodus as a reference, and improve their accuracy on these kind of tests too.

Anyway, I hope some other people can make use of this. It's been a very long road to get to this point. Exodus was around 200,000 lines of code at the last count, and most areas of the code have gone through numerous revisions to get to where they are now. I daren't even estimate the number of hours that have gone into this project. I hope you find it interesting and useful.

EDIT: I forgot to say, if you want to check out the debugging features, you'll be best off using one of the pre-made workspaces. Select "File -> Load Workspace" from the main menu and select "Mega Drive Debugger.xml". That'll give you a pretty good debug environment ready to go.

279 comments

  • Comment Link روانشناسی مهاجرت Monday, 18 March 2024 08:53 posted by روانشناسی مهاجرت

    An outstanding share! I have just forwarded this onto a friend who
    had been conducting a little research on this.
    And he in fact ordered me dinner simply because I found it for him...
    lol. So allow me to reword this.... Thanks for the meal!!
    But yeah, thanx for spending the time to discuss this
    matter here on your web page.

  • Comment Link Instantaneous water heaters Monday, 18 March 2024 08:39 posted by Instantaneous water heaters

    Our team at Las Vegas Tankless Water Heaters is the premier choice for comprehensive water heating services
    in Las Vegas. With a focus on delivering eco-friendly and reliable instantaneous
    water heaters, we ensure satisfaction for homeowners.


    Why Choose Us?

    Expertise in Tankless Water Heaters
    Our experts specializes in electric tankless heaters,
    offering continuous flow water heating without
    the limitations of traditional units. This specialization sets us apart in the
    Las Vegas plumbing industry.

    Energy Efficiency
    We prioritize reducing energy consumption, helping you reduce your carbon footprint while experiencing reliable hot water.
    Our products are designed to maximize efficiency and environmental
    friendliness.

    Customized Solutions
    Understanding that each household has different needs, and that's why we offer customized water heating solutions.
    Whether you need a small-scale heater for a single bathroom or
    a large-capacity system, we are equipped to serve your needs.


    Professional Installation and Maintenance
    Beyond just installation, we guarantee the longevity of your water
    heater with regular maintenance services. Our team is trained in the latest techniques for a variety of systems.



    Customer Satisfaction
    Your satisfaction is our number one goal. We work tirelessly to ensure satisfaction with every service
    call, offering attentive customer service and informed suggestions.


    Wrapping Up, our team is not just another plumbing service in Las Vegas
    for homeowners looking for advanced water heating solutions.
    With a focus on cost-effectiveness, tailored services,
    and superior client care, we ensure you'll have hot water experience effortlessly.


    Select us for your next plumbing project and become part of the community
    of happy homeowners enjoying our quality services in Las Vegas.

  • Comment Link https://zetcasino.one/ Monday, 18 March 2024 07:31 posted by https://zetcasino.one/

    Das Zet Bet Casino ist eines der aufstrebenden Online-Casinos auf dem Markt.
    Mit einer breiten Palette von Spielen und attraktiven Bonusangeboten zieht es immer mehr Spieler an.

    Das Casino bietet eine Vielzahl von Spielen, darunter Slots, Tischspiele, Live-Casino-Spiele und vieles mehr.
    Die Spiele stammen von renommierten Anbietern wie NetEnt, Microgaming, Play'n GO und vielen anderen. Dies garantiert den Spielern ein hochwertiges
    Spielerlebnis mit toller Grafik und reibungsloser Gameplay.


    Ein weiterer großer Vorteil des Zet Bet Casinos sind die großzügigen Bonusangebote.
    Neue Spieler erhalten in der Regel einen Willkommensbonus, der ihnen zusätzliches Geld zum
    Spielen bietet. Auch Bestandskunden werden regelmäßig mit
    verschiedenen Promotionen belohnt, die Freispiele oder zusätzliches Bonusgeld beinhalten.

    Das Zet Bet Casino legt auch großen Wert auf die Sicherheit seiner Spieler.
    Alle Transaktionen werden über sichere SSL-Verbindungen abgewickelt,
    um sicherzustellen, dass persönliche Daten geschützt sind.

    Die Spiele werden außerdem regelmäßig von unabhängigen Behörden auf Fairness und Zufälligkeit überprüft.


    Insgesamt ist das Zet Bet Casino eine großartige Wahl für Spieler, die nach einer unterhaltsamen und sicheren Online-Spielerfahrung
    suchen. Mit einer Vielzahl von Spielen, großzügigen Bonusangeboten und einem engagierten Kundenservice ist es definitiv einen Besuch
    wert. Wer weiß, vielleicht haben Sie ja das Glück, den Jackpot zu knacken!

  • Comment Link قانون جذب زنان Monday, 18 March 2024 06:08 posted by قانون جذب زنان

    Hello there! Do you know if they make any plugins to help with Search Engine Optimization? I'm trying to get my blog to rank for
    some targeted keywords but I'm not seeing very good gains.
    If you know of any please share. Appreciate it!

  • Comment Link بهترین مشاوره پیش از ازدواج در غرب تهران Monday, 18 March 2024 03:35 posted by بهترین مشاوره پیش از ازدواج در غرب تهران

    It's remarkable in support of me to have a site, which is good in favor
    of my experience. thanks admin

  • Comment Link مشاوره برای ایرانیان خارج از کشور Monday, 18 March 2024 02:15 posted by مشاوره برای ایرانیان خارج از کشور

    This piece of writing will assist the internet users for building up new website or even a weblog from start to end.

  • Comment Link افسردگی بعد از مهاجرت Monday, 18 March 2024 01:22 posted by افسردگی بعد از مهاجرت

    Good day! I know this is kinda off topic but I was wondering if you knew where I
    could locate a captcha plugin for my comment form? I'm using the same
    blog platform as yours and I'm having trouble finding one?
    Thanks a lot!

  • Comment Link تعریف روانشناسی اجتماعی Monday, 18 March 2024 01:12 posted by تعریف روانشناسی اجتماعی

    Quality articles or reviews is the important to be
    a focus for the viewers to pay a quick visit the website, that's what this web site is providing.

  • Comment Link مشاوره خانواده Sunday, 17 March 2024 23:36 posted by مشاوره خانواده

    Hey there! I could have sworn I've been to this website before
    but after checking through some of the post I
    realized it's new to me. Nonetheless, I'm definitely
    happy I found it and I'll be bookmarking and checking back frequently!

  • Comment Link حمله پانیک چیست Sunday, 17 March 2024 23:03 posted by حمله پانیک چیست

    Hey there, You've done a great job. I'll certainly digg it and
    personally suggest to my friends. I am sure they'll be
    benefited from this web site.

Leave a comment

Make sure you enter all the required information, indicated by an asterisk (*). HTML code is not allowed.

If you wish to make a donation to show your appreciation for this project, you can do so here. Your donation may go towards the hosting costs of the website, or equipment or reference hardware to assist in the development of Exodus. It may also go towards a bunch of flowers for my beautiful wife, to say thanks for your support and patience all those nights I stayed up late working on this project.