Page 1 of 2

What's coming in Exodus version 1.1?

Posted: Tue May 21, 2013 3:16 am
by Nemesis
Here are the new features I currently have planned for the next release of Exodus:

Version 1.1 (No current target release date):
-New M68000 core with microcode-level accuracy for external bus timing
-Capturing/viewing register snapshots with trace logging
-Streaming trace logs directly to file
-Manual control of audio mixing and attenuation
-Full plane viewer for VDP (completed)
-USB joystick/joypad support (completed)
-Random timing for soft resets (completed)

I'll add to this list and update with time estimates as development progresses. Any feedback, suggestions, and requests are welcome.

Posted: Tue May 21, 2013 5:49 am
by mickagame
You have enough informations for microcode emulation?
Very good new features, exodus will become perfect with that !

Posted: Tue May 21, 2013 9:18 am
by Nemesis
You have enough informations for microcode emulation?
As of a few hours ago, yes, I have something that's close enough :). I'm about to post about it in the Mega Drive section of the forum.

Edit: Posted here: viewtopic.php?p=19775

Posted: Tue May 21, 2013 8:16 pm
by mickagame
Very interesting documentation!
Thanks Nemesis for sharing all this infos !

Posted: Tue May 28, 2013 6:07 pm
by thedoug
Hi Nemesis, before the 1.1 release could you release a version that "fix" the Sram/Bank switch problem?

This way we can load games like PS4, Beyond Oasis. I'm debugging some of these games, and I want to use Exodus.
And there is a lot of translations and hacks that expands the rom size, so Exodus right now is very limited because it's not loading these games.

We don't need the Sram working, but we need to load these games to use the debugging features.

Thanks......

Posted: Thu May 30, 2013 6:04 am
by Nemesis
Sure, I can do that. I'll do a branch for a 1.0.1 patch build. There are a few bugs I've fixed since the 1.0 release that I can bundle into the patch. I'm very very short on time right now, so it probably won't be until next week, but I'll do the release soon.

Posted: Mon Sep 23, 2013 4:58 pm
by tryphon
Unless it's already possible but I failed finding how, it'd be nice if, when logging VDP operations, it is possible to know which line of the code caused the operation.

Posted: Sat Oct 26, 2013 7:50 pm
by panzeroceania
looking forward to the next release/bugfixes :)

Posted: Tue Oct 29, 2013 2:59 am
by Nemesis
I've been horribly neglecting making public updates on the progress of this project, so I want to apologize to anyone who's following it waiting for the next release. Things have been busy at work and at home, but truth be told, I've been working at this thing solo and in private for so long, I'm just not used to keeping other people updated on it. I really should get the website setup with a blog where I can post updates from time to time so you can all see I'm still alive.

Anyway, I've radically shifted my focus for the next release. It's obvious there's just no way I can ever do this project solo, nor has that been the plan. I want to get things to a point where other people can start making contributions. To that end, my main focus right now is on getting Exodus ready for its source code release, which will occur along with the next version. Right now, I'm not working on improving emulation accuracy for the Mega Drive or adding new features. Instead, I've been focusing on making a large set of remaining internal changes I want to make to prepare the platform for third party plugins. This involves a combination of internal refactoring, build system improvements, new platform features, and SDK documentation. As of the next release, I want to have Exodus at a point where building Exodus is easy, and the SDK is complete, stable, and well enough documented, so that other programmers can start contributing their own emulation cores and debugging features as plugins for Exodus. Things are moving along VERY well on this front, and I hope to have this release ready early next year.

That's not all I've been doing though. I've done some aggressive performance optimizations in the most critical areas of the platform, with some more still planned before the next release. As of right now, the changes I've already made have improved performance by around 20%-25% on average on my computer, and reduced the memory requirements by almost half. I'm hoping these optimizations will make Exodus more accessible to potential users out there, whose computers weren't powerful enough to run the first release at a reasonable speed.

Posted: Fri Nov 01, 2013 11:25 pm
by Bloke
Thanks for the status update, Nemesis!

Even if my computer can't run it, I look forward to new releases of Exodus that further improves emulation of the Mega Drive, because... besides Exodus, the activity is kind of... dead.

I hope you stick with the development of Exodus for as long as possible, because it shows that you're talented at making an accurate emulator, though trying to get other talented coders to contribute is a good idea.

Besides that, I'll forward to someone who's talented at making an accurate N64 emulator that can run full speed. I know Marathon Man's (via byuu's forums) work is promising, but it seems like it'll still be a long way off before it's finished (if he finishes) and playable at full speed.

Posted: Sat Nov 02, 2013 10:29 am
by Eke
Nemesis wrote:I've been horribly neglecting making public updates on the progress of this project, so I want to apologize to anyone who's following it waiting for the next release. Things have been busy at work and at home, but truth be told, I've been working at this thing solo and in private for so long, I'm just not used to keeping other people updated on it. I really should get the website setup with a blog where I can post updates from time to time so you can all see I'm still alive.
Updates are always interesting to read but most reasonable people know that personal projects like this take time and that personal life should always come first. As for the impatient ones who fear projects are "dead" as soon as there isn't any public annoucement or "new things" to discuss, i wouldn't bother with that if I were you, you don't owe anything to anyone :wink:
Nemesis wrote:Anyway, I've radically shifted my focus for the next release. It's obvious there's just no way I can ever do this project solo, nor has that been the plan. I want to get things to a point where other people can start making contributions. To that end, my main focus right now is on getting Exodus ready for its source code release, which will occur along with the next version. Right now, I'm not working on improving emulation accuracy for the Mega Drive or adding new features. Instead, I've been focusing on making a large set of remaining internal changes I want to make to prepare the platform for third party plugins. This involves a combination of internal refactoring, build system improvements, new platform features, and SDK documentation. As of the next release, I want to have Exodus at a point where building Exodus is easy, and the SDK is complete, stable, and well enough documented, so that other programmers can start contributing their own emulation cores and debugging features as plugins for Exodus. Things are moving along VERY well on this front, and I hope to have this release ready early next year.
This looks very ambitious but also seems like a sane decision. I'm not sure if this will catch a lot of core developers as people tends to prefer working on their own hobby projects, but a professional framework for emulation is very interesting, I'm eager to see what you will come with.
Bloke wrote:Even if my computer can't run it, I look forward to new releases of Exodus that further improves emulation of the Mega Drive, because... besides Exodus, the activity is kind of... dead.
Dead ? You've got 4 emulators currently in active development for Mega Drive (Picodrive, Genesis Plus GX, BlastEm and Exodus), all benefiting from recent hardware discovering/studies, I'd say it's pretty much "alive" actually :roll:

Posted: Sun Nov 03, 2013 10:26 pm
by Nemesis
Eke wrote:
Nemesis wrote:Anyway, I've radically shifted my focus for the next release. It's obvious there's just no way I can ever do this project solo, nor has that been the plan. I want to get things to a point where other people can start making contributions. To that end, my main focus right now is on getting Exodus ready for its source code release, which will occur along with the next version. Right now, I'm not working on improving emulation accuracy for the Mega Drive or adding new features. Instead, I've been focusing on making a large set of remaining internal changes I want to make to prepare the platform for third party plugins. This involves a combination of internal refactoring, build system improvements, new platform features, and SDK documentation. As of the next release, I want to have Exodus at a point where building Exodus is easy, and the SDK is complete, stable, and well enough documented, so that other programmers can start contributing their own emulation cores and debugging features as plugins for Exodus. Things are moving along VERY well on this front, and I hope to have this release ready early next year.
This looks very ambitious but also seems like a sane decision. I'm not sure if this will catch a lot of core developers as people tends to prefer working on their own hobby projects, but a professional framework for emulation is very interesting, I'm eager to see what you will come with.
I think where there might be a fair bit of interest is with extensions. The core of Exodus is highly modular, and I'm in the process right now of refactoring basically everything out into extension plugins. Extensions can add pretty much anything. On a simple level, you can define new debug windows for other emulation cores. On a more complex level, you can inject new methods of communication between devices that can be used in the emulation process. You could also inject new tools into the environment, IE, like an embedded code editor and compiler chain, to do development directly within Exodus. Even the main GUI itself is thin and highly abstracted, so you should be able to easily bundle up Exodus itself into an Eclipse plugin for example.

I'm hoping some developers might be interested in creating and releasing some debug features they've always wanted as extensions for others to use, with the option then of folding those extensions into the main code base. People could also experiment with "porting" cores from another emulator for example, and knock up a module XML file for another system, to experiment with adding support for a whole new system. It really should be very easy to add support for new systems within Exodus, so I'm hoping it catches the interest of even just a couple of people to try their hand at adding new stuff. Whether it takes off or not though, the platform is solid, and I think it'll continue to remain a very viable option for any emulation project well into the future, so perhaps it'll capture the interest of people interested in writing new emulators, without having to worry about all the "boring bits" that go along with it.

Posted: Mon Nov 04, 2013 1:03 am
by Bloke
Eke wrote:
Bloke wrote:Even if my computer can't run it, I look forward to new releases of Exodus that further improves emulation of the Mega Drive, because... besides Exodus, the activity is kind of... dead.
Dead ? You've got 4 emulators currently in active development for Mega Drive (Picodrive, Genesis Plus GX, BlastEm and Exodus), all benefiting from recent hardware discovering/studies, I'd say it's pretty much "alive" actually :roll:
Forgive my ignorance, then. I forgot about Genesis Plus GX (though I never looked into this one yet) when I posted and never even heard of Picodrive and BlastEm, but that's great that there's multiple Mega Drive emulators in development. Which begs the question: which to choose? I know they would all differentiate in areas and it would depend on personal preferences. I'll try all them at some point.

Posted: Sat Nov 09, 2013 7:38 pm
by Ozelot305SDL
Coming a Version for x86 :?:

Posted: Sat Nov 09, 2013 8:12 pm
by Alegend45
Ozelot305SDL wrote:Coming a Version for x86 :?:
Is a 32-bit version coming?
Fixed. Also, Exodus would not run well on 32-bit machines. Hell, even on some 64-bit machines like my own. So probably not.