Sega saturn emulator cd
These games include dozens, vectorMan, street of rage, altered beast, Gunstar heroes, and sonic the hedgehog. Please consult with the people involved first, but a donation towards either decapping the Smpc, which hasn't been done yet, or a second attempt at the Cd Controller could yield great results.Note SEGA has several games that can be launched on Google Play. Belmont says about that decapping: "Doesn't work, reads all FFs. The cd controller was previously decapped however, Smpc is listed as HD404920FS / Saturn 315-5744 on the guru page There is a project dedicated to this sort of work: Any fixes to that makefile would be great! Cocoa/Qt/Gnome/WxWidgets/Etc ports might be a good idea as well.Įlectrical Engineers / People who want to donate: The Cd Block Controller and Smpc both contain internal roms that, if read out, would improve emulation accuracy for all saturn emulators. Mac/Linux/Bsd/Mingw/Cmake/Etc people: There's an sdl port and a cmake makefile but I haven't tested it on many platforms.
#Sega saturn emulator cd code#
Refactoring/Optimization: The code is a total mess and very slow. There are many test examples in the hardware_tests directory See the SaturnOrbit devkit if you're on windows. Bare-metal tests are preferable to those using Sega's libraries. Stripped down hardware tests are the best tool for improving emulation and allow for faster increases in accuracy. You can use the gcc Sh2 toolchain to compile C and C++ code that will run on Saturn. The sdl port should already work on many platforms but the makefile probably needs work. I have provided a simple callback-based C interface to the core in saturnki.h, and it should be easy to port to other platforms. Once SaturnKi is able to boot the real bios that will be an option as well. Thanks to them for their hard work.īios: To make debugging faster I'm using Yabause's hle bios. Until that happens I am using Yabause's hle cores. Smpc, Cd Block: These chips contain internal roms and cannot be properly emulated until they are decapped. Most major features are supported but there are various bugs. The Vdp2's ability to change the priority of, or alpha blend individual pixels makes it slower to emulate. A good test would be to somehow check how many cycles it takes to draw an untextured line, then a textured one, then a gouraud shaded one, etc. There's not really much information on how long the drawing of shapes takes. Vdp1 : The core uses arbitrary lines to draw the quads.The interpolation algorithm for line drawing needs to be fixed, there is pixel drop-out at the moment. Ought to be embedded into some other emulator (example: Genesis) and tested thoroughly. Is not as robust as it would need to be to run any sort of arbitrary code, but is enough to run the standard Sega sound engine that numerous Saturn titles use. M68k : Instruction level timing, messy and needs refactoring.
I don't know how the fm works, so it is unemulated. The timing is emulated near the cycle-level, although this is not necessary.
Scsp : Needs all floating point math removed. We need more test programs for the actual hardware to make sure the instruction set is correctly emulated. Lots of 7604 on-chip functionality is buggy or unimplemented. Sh2 : Instruction level timing, instruction set should be fairly accurate. Commercial games do not work yet as far as I know. gui_sdl insert_your_cd_filename_here.bin to run the sdl versionĪble to run some homebrew demos. Go to platform\build\cmake and type cmake CMakeLists.txt SaturnKi is an open source Sega Saturn emulator.