Contact Disclaimer Donations Forum Guestbook News News 2006 Latest News 11 November, 2006 17 September, 2006 29 July, 2006 04 July, 2006 20 June, 2006 08 June, 2006 24 May, 2006 10 May, 2006 25 April, 2006 31 March, 2006 25 March, 2006 01 March, 2006 28 February, 2006 26 February, 2006 16 February, 2006 7 February, 2006 1 February, 2006 23 January, 2006 11 January, 2006 9 January, 2006 3 January, 2006 News 2005 News 2004 News 2003 News 2002 News 2001 In the press
Updated: News roundup
Tuesday, 25 April, 2006 12:00
You see I've added a google search option and a PayPal button on the top of each page. I think it's useful to be able to search for a specific thing in the hundreds of pages of this website.
The PayPal button has been added because I'd like to get more attention to this. People get everything for free on the web, but what I'm doing for SEGA Saturn and SEGA VMU is not for free for me, if you understand what I mean. Donations are an importand thing to keep motivation, especially when working for dead videogame systems, which only a few people remember and even fewer care about the homebrew stuff. All in all, donations help answering the question "What am I doing this for?", which comes to mind from time to time in todays world.
SNES emulator progress
sh assembler cpu core ported from Dreamcast to Saturn (faster, smaller binary, takes less high work RAM)
switched from sgl to SGL replacement (faster, takes less high work RAM)
switched from 16 bit to palette rendering (faster, takes less RAM, no in-frame palette change)
removed unused code with compile flags (smaller binary, takes less high work RAM)
optimized compiler flags (faster and smaller binary)
increased system clock from 26.8 MHz to 28.6 MHz (faster)
fixed frameskipping and controler reading
reduced binary size even more with various other methods
memory usage optimized: use VDP1 VRAM completely, VDP2 VRAM, sound RAM, low work RAM and high work RAM almost completely. The frame and z buffers have been moved to high work RAM, as well as all structures accessed by the sh asm cpu core (faster, can load bigger ROMs to cart: up to 3.5 MByte)
Unfortunately, the compatibility of the sh asm cpu core is not yet as good as with the original C core. Seems like a Dreamcast specific optimization hasn't been found and adapted to Saturn. But it works with a bunch of commercial ROMs like Desert Strike, Contra 3, Castlevania, Bomberman and Final Fantasy 2, to name just a few. The speed is better than I expected it to be. Most homebrew demos are playable with frameskip, a few are slower. Commercial ROMs are slower of course, but some have a surprisingly high in-game speed, like Desert Strike and Contra 3.
Compatibility when using the C cpu core should be similar to that of snes9x for windows (with same settings: palette), even some ROMs work on Saturn while they don't work on latest snes9x for Windows. This must be due to some setting in snes9x 1.43, which lowered compatibility compared to snes9x 1.41-1.
Unlike chui reported for snes4all on Dreamcast, on Saturn the gfx rendering is the bottleneck of the emu. You can easily see this when examining how the frameskip effects the framerate. The speedup is very noticeable. In fact I'm sure when the GFX rendering could be done by the Saturn video hardware (VDP1 and VDP2) or the slave cpu, then even some commercial games could get playable.
So the SNES emulator on Saturn got the potential to become really useful for gamers. The things left to do are increasing compatibility of the sh asm cpu core and implementing gfx rendering by using Saturns video chips. Two people have received the SNES emulator on SEGA Saturn for testing.
SGL replacement progress
I've added support for system clock change, so it now allows the use of 28.6 MHz system clock, which is 10 percent higher than the default 26.8 MHz. The controler status reading has been fixed and optimized. I added a compile flag NO_VDP1 which allows the use of the entire VDP1 VRAM, pretty useful for emulators, especially my SNES emu for SEGA Saturn. A couple of window related functions have been added. I'll add them to the function list on the SGL replacement website, later.
Most importandly, slave cpu support has been added. A lot of useful compile flags modify the behaviour of slSlaveFunc() to your needs. To my knowledge, this is the first time that non-SGL homebrew uses the slave cpu of the SEGA Saturn. It has been successfully tested with my Game Boy emu for SEGA Saturn.
A Saturn fan decided to support one of my Saturn projects and he donated 100$ to motivate me to continue that project. Thanks a lot for your support, I'll keep up the work!