Cycle accurate Mega Drive emulation: Exodus coming in April!
Moderator: BigEvilCorporation
-
- Very interested
- Posts: 158
- Joined: Sat May 12, 2012 7:37 pm
- Location: Ukraine
Now the countdown is really running:Oerg866 wrote:Countdown is running! I'm so excited haha
http://www.exodusemulator.com
-
- Very interested
- Posts: 211
- Joined: Sat Apr 19, 2008 10:58 am
- Location: Frankfurt, Germany
- Contact:
That is classyNemesis wrote:Now the countdown is really running:Oerg866 wrote:Countdown is running! I'm so excited haha
http://www.exodusemulator.com
-
- Very interested
- Posts: 273
- Joined: Fri Feb 29, 2008 8:12 pm
- Location: United States
Nice, less than one week!
Nemesis, not sure if it's been mentioned but I'm curious about two things. What model of the Genesis/Mega Drive does Exodus aim to emulate currently? I assume the non-TMSS model 1 hardware? This could potentially open up an exciting possibility of multiple hardware revision support from the model 1 to the model 3 in the future.
My second question is, I'm assume you can set the region for the hardware from a JP-NTSC/UK-PAL Mega Drive into a US-NTSC Genesis, right?
Nemesis, not sure if it's been mentioned but I'm curious about two things. What model of the Genesis/Mega Drive does Exodus aim to emulate currently? I assume the non-TMSS model 1 hardware? This could potentially open up an exciting possibility of multiple hardware revision support from the model 1 to the model 3 in the future.
My second question is, I'm assume you can set the region for the hardware from a JP-NTSC/UK-PAL Mega Drive into a US-NTSC Genesis, right?
Primary focus is on non-TMSS model 1 hardware, however, the current system does support TMSS security hardware, with full system bios and VDP TMSS lockout support. These features are optional, you can enable and disable them easily from the menu. My recommendation is actually to run a TMSS system with the VDP lockout disabled, since that's the most compatible hardware config. Some roms don't work with the VDP lockout active, and some roms don't work without the BIOS being loaded first, since they rely on it doing some default initialization of the hardware. Homebrew code is most affected, but some commercial games suffer similar problems.King Of Chaos wrote:Nemesis, not sure if it's been mentioned but I'm curious about two things. What model of the Genesis/Mega Drive does Exodus aim to emulate currently? I assume the non-TMSS model 1 hardware? This could potentially open up an exciting possibility of multiple hardware revision support from the model 1 to the model 3 in the future.
The goal is actually to have a single system, with options to select between various version compatibility settings. The meaningful differences between the various hardware platforms are actually quite low, but they do exist. I'll add features to allow optional selection of the various quirks of each revision at a later date.
Yes, the region is fully configurable, even to a PAL Japanese unit if you want to. You can change the region at any time during execution, and the clock rate will be adjusted automatically to match the target platform. The VDP is also designed to handle region changes correctly at runtime, so your border regions and timing will adjust appropriately. The ROM loader also detects compatible regions for each game when loading them, and adjusts the system region accordingly as required.My second question is, I'm assume you can set the region for the hardware from a JP-NTSC/UK-PAL Mega Drive into a US-NTSC Genesis, right?
I should also note, the region settings themselves aren't even hard-coded. They are defined in the XML file that defines the system itself, and just apply changes to the raw region lines and clock settings that the real hardware has. If you want to be able to adjust the actual physical clock rate, domestic/overseas line, and pal/ntsc line separately, you can add a couple of lines to the XML file and you'll now have menu items to do just that. Clock rates can also be controlled and overridden on a per-device basis.
-
- Very interested
- Posts: 273
- Joined: Fri Feb 29, 2008 8:12 pm
- Location: United States
That sounds pretty good and exactly as I hoped, thank you for your answers!
I honestly can't wait to test various games like Eternal Champions' random character SEGA intro and X-Men 2's random starting character upon power on/reset. That, and X-Men's 'reset the computer' soft reset behaviour. Gosh, so much to try and marvel at - I can't wait! Hopefully this week goes by fast.
I honestly can't wait to test various games like Eternal Champions' random character SEGA intro and X-Men 2's random starting character upon power on/reset. That, and X-Men's 'reset the computer' soft reset behaviour. Gosh, so much to try and marvel at - I can't wait! Hopefully this week goes by fast.
I actually did work on supporting that, and you should know, while it should work no worries on a soft reset, I was surprised to discover that my previous testing was incorrect, and the logo actually isn't random on power-on. On the real hardware, I showed the same logo each time on a cold boot. I worked on getting the right logo showing on cold boot. The exact logo displayed can vary between platforms though, depending on whether that system has a BIOS, and possibly depending on the version of particular chips used in the system.I honestly can't wait to test various games like Eternal Champions' random character SEGA intro and X-Men 2's random starting character upon power on/reset.
-
- Very interested
- Posts: 273
- Joined: Fri Feb 29, 2008 8:12 pm
- Location: United States
Interesting, I actually didn't know that. Over the weekend I'll have to get out my various Genesis models out and try that for myself.
One observation though regarding the ideas and voting. I see people voting for Saturn and Dreamcast, but I have my doubts that the current generation (and perhaps 4 or more to come) of CPUs could even get playable frame rates, assuming accuracy's the main focus of all supported future systems.
I think you did mention somewhere you'd give out system requirements before release? Any ETA on that? Just curious.
One observation though regarding the ideas and voting. I see people voting for Saturn and Dreamcast, but I have my doubts that the current generation (and perhaps 4 or more to come) of CPUs could even get playable frame rates, assuming accuracy's the main focus of all supported future systems.
I think you did mention somewhere you'd give out system requirements before release? Any ETA on that? Just curious.
Quad-core minimum. As for clock speed, the faster the better. I'll try and give a rough clock speed requirement soon, but it's a little hard for me to give performance requirements right at this minute, for several reasons:King Of Chaos wrote:I think you did mention somewhere you'd give out system requirements before release? Any ETA on that? Just curious.
1. I do my main development on what is, by today's standards, quite a slow laptop, so I only run it on a machine capable of pulling full framerate every now and then, usually when I want to test something in particular.
2. There's a complex performance optimization process I'll be putting actual release builds through, which involves gathering performance information at runtime, and feeding that performance data back into the compiler to optimize the build. That process takes awhile to run through, and I haven't done it in ages, so I don't really know how fast the release build will be until I actually try generating and optimizing one.
3. Performance scales based on how tight the timing requirements are of the current code you're running. Some games need more precise timing than others, so it can depend on the actual game you're running. Just because you pull full framerate on a given game doesn't mean you'll pull full framerate on every game.
That said, I'll try and get a number out there, but I probably won't publish it until actual release, simply because it could be pretty inaccurate. I'll probably be relying in part on you guys telling me how fast it runs on your machines to figure out what that number is.
Oh, by the way, can someone here who's got an account on Sega16 post the initial announcement I made for Exodus there on my behalf? I've created an account, but I can't create topics there until I reach 50 posts, and the admin seems unable or unwilling to waive this for my account, and I want to let those guys know about this. I'll post in the thread once it's made, I just can't make it myself. Kudos to whoever's able to do this for me.
-
- Very interested
- Posts: 273
- Joined: Fri Feb 29, 2008 8:12 pm
- Location: United States
Done.Nemesis wrote:Oh, by the way, can someone here who's got an account on Sega16 post the initial announcement I made for Exodus there on my behalf? I've created an account, but I can't create topics there until I reach 50 posts, and the admin seems unable or unwilling to waive this for my account, and I want to let those guys know about this. I'll post in the thread once it's made, I just can't make it myself. Kudos to whoever's able to do this for me.
Can't wait! After release I'll probably suggest something like a benchmark-type of feature. However I'm going to hold off on suggesting anything else besides Game Gear and Pico, since we have no clue what goodies you have to surprise us with.Nemesis wrote:Quad-core minimum. As for clock speed, the faster the better. I'll try and give a rough clock speed requirement soon, but it's a little hard for me to give performance requirements right at this minute, for several reasons:
1. I do my main development on what is, by today's standards, quite a slow laptop, so I only run it on a machine capable of pulling full framerate every now and then, usually when I want to test something in particular.
2. There's a complex performance optimization process I'll be putting actual release builds through, which involves gathering performance information at runtime, and feeding that performance data back into the compiler to optimize the build. That process takes awhile to run through, and I haven't done it in ages, so I don't really know how fast the release build will be until I actually try generating and optimizing one.
3. Performance scales based on how tight the timing requirements are of the current code you're running. Some games need more precise timing than others, so it can depend on the actual game you're running. Just because you pull full framerate on a given game doesn't mean you'll pull full framerate on every game.
That said, I'll try and get a number out there, but I probably won't publish it until actual release, simply because it could be pretty inaccurate. I'll probably be relying in part on you guys telling me how fast it runs on your machines to figure out what that number is.
Screw that, let's emulate the Picture Magic instead.King Of Chaos wrote:Can't wait! After release I'll probably suggest something like a benchmark-type of feature. However I'm going to hold off on suggesting anything else besides Game Gear and Pico, since we have no clue what goodies you have to surprise us with.
My body is ready. I don't think my laptop is though. :O (1.6GHz i7 Q720)Nemesis wrote:Quad-core minimum. As for clock speed, the faster the better.
The Firefox ebuild on Gentoo had the option for PGO. It took FOREVER to build, and I didn't really see much difference performance wise. Maybe your emulator will be different.Nemesis wrote:...which involves gathering performance information at runtime, and feeding that performance data back into the compiler to optimize the build.