Sega Genesis & Motorola 68000 emulator for the Xbox 360Development Stopped
Unfortunately I've had to leave Sega360 for now to work on other things. A Sega Megadrive emulator is too big a project to complete on my own, and there haven't been any offers of help...
There's also the problem in XNA of not being able to load game images from a DVD. Sega are currently selling lots of old Megadrive games on Xbox Live. If Microsoft allowed an emulator like mine to load the game images from a DVD then it would kill off Sega's sales, so I don't think they are going to make the change any time soon. I think that's the main reason holding emulators back on XNA. If anybody does know how to access the DVD drive please let me know!
I'd be willing to devote more time to this project, but only if I had some help, and only if Microsoft allows access to game image files on a DVD.Some Important Notes:
This project is in very early days, and currently DOES NOT PLAY GAMES. The 68000 instruction set is mostly done, but needs thorough testing and performance tuning - there are certainly some bugs that need ironing out. I've started emulating the VDP (video display processor), and have implemented horizontal scrolling. Sprites probably won't be in there for a few months yet. I haven't even looked at emulating the sound chips yet, that can wait until the very end.
The reason I'm publishing this project now is to drum up some early interest. It would be excellent if anybody with any experience in emulators, especially the Sega Genesis, could get in touch, and if you want to lend a hand then that would be great. I looked at porting an existing C++ Genesis emulator, but all the source code I could find was horrendously complicated, and much of it used assembler language which I'm assuming wouldn't work on the Xbox 360 anyway.
My long term goal is to create a Sega Genesis/Master System/Game Gear/Sega CD/32X emulator for the Xbox 360 that runs at full speed and with full sound support, entirely in C#. I'd like to keep the 68000 core as general purpose as possible so that people can use it in other future emulator projects.