PDA

View Full Version : SNES emu for Saturn released



RockinB
July 29th, 2006, 08:51
This Super Nintendo emulator is a SEGA Saturn port of snes9x. The fast assembler cpu core of DreamSNES for Dreamcast has been ported from SH4 to SH2, too, and it is the first released app to use the SGL replacement library (http://www.rockin-b.de/saturn-sglrep.html). These two things are the reason that, though snes9x pushes the SEGA Saturn to it's limits, the emu runs faster than any of my previous released Emulators (http://www.rockin-b.de/saturn-emulators.html).

The emu comes in two versions: a fast but less compatible one using ASM cpu core (recommended) and a slow but compatible one using C cpu core.

Download: snes9x-on-saturn-060729.7z (http://sega-saturn.dcemu.co.uk/snes9x-on-saturn-060729.7z) (requires 4MB RAM cart, or use Saturn emus yabause or SSF)

http://sega-saturn.dcemu.co.uk/snes9x_games.jpg

The download archive (extract with WinRAR or www.7-zip.org) contains a couple of homebrew SNES ROMs and everything needed to build custom CD images with your own ROMs on Windows. Just click on MakeFast.bat or MakeSlow.bat. To have a quick start, the ready-to-burn CD images snes9x_fast.iso and snes9x_slow.iso are included, too.

Almost forgot to say that the emu is still slow (although I could apply massive speedups), some demos run quite fast. By using the slave cpu and hardware rendering (like in VBT's SMS Plus port), I expect it could reach playable speeds for some games.

Enjoy it,
Rockin'-B

Download and Give Feedback Via Comments

wraggster
July 29th, 2006, 10:55
awesome news

Imerion
July 29th, 2006, 16:21
Impressive!

dcsteve
July 29th, 2006, 16:29
Hey RockinB, as far as you know, are there any hacks that can be performed to gain speed on the DC version of dreamsnes.

JKKDARK
July 29th, 2006, 16:34
Great news, I love my Saturn :p

RockinB
July 30th, 2006, 10:19
Hey RockinB, as far as you know, are there any hacks that can be performed to gain speed on the DC version of dreamsnes.
You can win a lot of speed, if you use 8-bit palette rendering instead of 16-bit RGB. It also helps much when disabling transparencies, which I had never enabled on Saturn. Explicitly removing these unused code parts speeds up a little bit, too. Don't know how it's handled in DreamSNES source code, because it's not available.

acn010
July 30th, 2006, 10:25
oh great!

geise69
July 31st, 2006, 00:40
Very awesome new! I never thought my Saturn would emulate the snes. I'm gonna try this out now and do a compatability list. Mainly with the ASM coded one. Thanks for the emulator!

pkmaximum
July 31st, 2006, 08:59
Hmm I find it rather interesting on how the Sega Saturn even has the ability to emulate the Super Nintendo. Well it makes me ask my self too, how many people actually own a sega saturn, let alone modded =P. Well i guess I will just have to wait and see were this goes.

RockinB
August 1st, 2006, 11:22
Very awesome new! I never thought my Saturn would emulate the snes.
Same for me :) .


I'm gonna try this out now and do a compatability list. Mainly with the ASM coded one.
A great idea! Keep us informed, please.

Xiaopang
August 5th, 2006, 21:09
great news!

I'm just wondering: if you turn transparencies off by default an awful lotta games have to be quite unplayable. on your page you say that you tested zelda. when i turn transparencies off in dreamsnes the ground link is walking on is turned off and you can't see where you're walking. how does it look on your emu?

also interesting to know: how about performance? how playable are the games speedwise?

inlovewithi
August 6th, 2006, 20:42
You have to be kidding me, a SNES emulator for the Sega Saturn? That's like mind bogglin. It's like making a regular Nintendo 8 emulator for a SNES. That would be cool, but sounds as impossible as a SNES emulator for the Saturn

steve06x
August 8th, 2006, 03:22
lmao ur right

RockinB
August 9th, 2006, 10:45
also interesting to know: how about performance? how playable are the games speedwise?
You would say the emu is slow, from my point of view I'd say some demos run quite fast. Homebrew games can be played with an appropriate frameskip setting. Commercial games are slower in general, but some run significantly faster than the average game speed. These ones could be made sort of playable, if someone is willing to put some hundreds of hours into adding hardware rendering support to the emu. It's far from being full speed.


You have to be kidding me, a SNES emulator for the Sega Saturn? That's like mind bogglin. It's like making a regular Nintendo 8 emulator for a SNES. That would be cool, but sounds as impossible as a SNES emulator for the Saturn
There are two reasons why it's possible:
1) the main cpu of the snes runs at slow speed (3-4 MHz) and
2) Saturn's main memory can be extended with a RAM cart.
A Mega Drive / Genesis emu would be a hard task. Last time I had a look on that topic, the 68k emulator core alone was way too huge to fit into RAM.

fox68k
August 11th, 2006, 11:33
A Mega Drive / Genesis emu would be a hard task. Last time I had a look on that topic, the 68k emulator core alone was way too huge to fit into RAM.

I do not think so. C68k and FAME fit perfectly in 2 MB RAM. I do not know about runtime code required to get things up, but it should not be larger than 500 KB with everything in.

Memory usage briefing (aproximately):

- Runtime code: 500 KB.
- FAME: 580 KB. (C68k gets even smaller)
- Z80: 50 KB.
- Rest of emulation code: 400 KB.

So we have 1.5 MB occupied by the whole running emulator. There is 0.5 MB left to load many Genesis games.

RockinB
August 12th, 2006, 14:37
I'd like to consider a Genesis emu port to Saturn one day.

Oh by the way, fox68k, how is faze (Z80 core written in sh asm) going?

fox68k
August 12th, 2006, 18:07
FAZE is in the debugging stage. I have fixed many bugs until now and currently it is able to run the ZX spectrum BIOS as well as some game code. No game is playable at all. Indeed, there are a lot of bugs.

Some interesting point will be its reduced size. Of course, it is optimized for speed over size. I believe we will have the core between 30-45 KB depending upon generation options.

RockinB
August 12th, 2006, 18:57
Good to know, seems to be a lot more work for you than I thought. I'm looking forward to faze. If it's compatibility is good enough, it might give a nice speed advantage in some emulators on Saturn. Especially because of it's small size.

fox68k
August 14th, 2006, 01:14
Well, there are good news about FAZE :D

Surprisingly enough, last saturday after fixing several bugs, the core was able to run many games in ZX4ALL (ZX spectrum emulator by Chui) with some minor errors (gfx and input).

There is still work to do, but this is very promising. I guess we can have something useful in the next weeks.

Cheers.

gxb
August 18th, 2006, 18:08
Maybe it is a good idea to code a NES emu for Saturn , since PSX can run some NES games smoothly with sound .

RockinB
August 19th, 2006, 13:35
Maybe it is a good idea to code a NES emu for Saturn , since PSX can run some NES games smoothly with sound .
Definitely! VBT has been trying to port a NES emu to Saturn, he tried two different ones. He even had games running, but then concentrated on SMS Plus. There should be even an SH assembler CPU core available, like the one from gleam for Dreamcast.


@fox68k: hopefully FAZE will have it's source code available, so that it can be made working on a SH2, too.

fox68k
August 20th, 2006, 14:39
@fox68k: hopefully FAZE will have it's source code available, so that it can be made working on a SH2, too.

Yes, the source code will be available to the public.

I was wondering what changes have to be done to the sources to be SH2 compliant. I guess it will be big endian assembling among them but i cannot figure out anymore at a glance. I am interested in this issue, so please let me know about.

By the way, FAZE is starting to run many ZX spectrum games nicely so keep tunned.

Cheers.

RockinB
August 21st, 2006, 09:33
Yes, the source code will be available to the public.

I was wondering what changes have to be done to the sources to be SH2 compliant. I guess it will be big endian assembling among them but i cannot figure out anymore at a glance. I am interested in this issue, so please let me know about.

By the way, FAZE is starting to run many ZX spectrum games nicely so keep tunned.

Cheers.
Differences between Saturn SH2 and Dreamcast SH4:
- no unaligned accesses (word, double word) allowed
- big endian
- subset of instruction set (examples I remember):
-- no floating point instructions
-- misses the easy shift instructions, to shift any number of bits with a single instruction, instead may need to compose it with multiple shift instructions

Gizmo356
August 21st, 2006, 09:36
this is pretty cool

picketf
August 25th, 2006, 04:10
how many people actually own a sega saturn, let alone modded

about 9 years ago you could buy softmods on streetmarkets in South America when the pirates started flooding Saturn games. They were cart based with a switch to choose US/EUR/JAP country and in one variation even had the additional 4mb ram built in

I wonder where these have gone.....