Jump to content
IGNORED

Atari 2600 emulator for Sega Genesis or Sega CD


Yurkie

Recommended Posts

I was curious if a Atari 2600 emulator would run on the Sega Genesis or Sega CD? If possible would anyone be interested in porting Stella?

 

If it is possible I figure the emulator could be loaded on the Everdrive for the Genesis, or burned on a CD-R to run on the Sega CD for ease of running the emulator.

 

I personally think this would be super cool as I connect my Sega Genesis model 1/Sega CD model 1 combo to my LCD via the Framemeister.

Link to comment
Share on other sites

There was a port to the Sega Dreamcast, but it was based on an older version of the Stella codebase, and is not compatible with the latest ROMs. And even then, it was not running at full speed. Using the latest versions of Stella, and/or the latest bankswitch schemes is likely impossible. The hardware just can't handle the emulation.

  • Like 1
Link to comment
Share on other sites

As an aside, I assume 2600 Pitfall, the secret within Pitfall: The Mayan Adventure, was recreated as opposed to emulated? I always wondered if this was the case, but assumed it was built from the ground up much like other similar conversions to the Genesis (i.e., the Williams Arcade Greatest Hits cart).

Link to comment
Share on other sites

I recall a work in progress 2600 emulator for the GBA that ran like a frozen turd. The Genesis is several times weaker than a GBA. The trouble comes from the unique way the 2600 handles graphics. Also, the Genesis has a tile buffer for displaying stuff. So, you'd have to translate the line-by-line drawing of the VCS to tiles and copy them on the screen while trying to emulate the rest of the Atari.

Link to comment
Share on other sites

Yep, what a lot of people don't realize is how weird the 2600 really is. Most people see the blocky, rudimentary graphics of the 2600 compared to later consoles, and think "if my console/computer can look so much better, surely it can easily emulate a 2600". Reality is, it's not as easy as that.

 

Again, what many people don't understand is that a 2600 is really different from everything else. There is no framebuffer, there are no sprites (in the sense that they exist on other systems), you can't access a 'y' (vertical) location at random (since the buffer is drawn as it's being emulated), etc.

 

For a modern PC, or really any computer from the past 10 years or so, it's easy to just brute-force the entire thing. But for a resource-constrained console, what you're emulating would have to match (at least a little) the hardware it is being emulated on, and as I said the 2600 isn't like anything else. So we get into this weird situation where the 2600 is one of the oldest and most rudimentary looking consoles, yet it has taken the longest to emulate correctly, and needs fairly good hardware to do it.

  • Like 4
Link to comment
Share on other sites

There's got to be a pretty wide technological gap between consoles for one to be powerful enough to emulate the other. Either that or the systems need to have very similar hardware, making hardware emulation possible. One of the more bizarre examples that comes to mind is the 15-in-1 Collection that was released for the TurboGrafx/PC Engine. All of the games in this collection were originally written for the VIC-20! Here, take a look.

 

 

The TurboGrafx and VIC-20 both use a 6502 processor, which is why a collection like this was possible. (My suspicion is that the Turbo had to use software emulation for the VIC's graphics processor, but it was so old and so primitive that it probably wasn't too much of a strain on the system.) A Sega Genesis has 68000 and Z80 processors, so it wouldn't be possible for the system to do hardware emulation of the Atari 2600... the machines are just too different. However, hardware emulation of the ColecoVision or the ZX Spectrum might be possible. I just don't think anyone has attempted it.

  • Like 1
Link to comment
Share on other sites

The Activision Classics for the PSX is very frame-skippy and bad, and the Playstation is a generation ahead of the Genesis/MD with a 33MHz MIPS R3000 CPU.

 

Not saying it's impossible, but someone would have to be a very talented 68000 and 6502 assembly programmer and do it bare metal.

Edited by R.Cade
Link to comment
Share on other sites

There's got to be a pretty wide technological gap between consoles for one to be powerful enough to emulate the other. Either that or the systems need to have very similar hardware, making hardware emulation possible. One of the more bizarre examples that comes to mind is the 15-in-1 Collection that was released for the TurboGrafx/PC Engine. All of the games in this collection were originally written for the VIC-20! Here, take a look.

 

 

The TurboGrafx and VIC-20 both use a 6502 processor, which is why a collection like this was possible. (My suspicion is that the Turbo had to use software emulation for the VIC's graphics processor, but it was so old and so primitive that it probably wasn't too much of a strain on the system.) A Sega Genesis has 68000 and Z80 processors, so it wouldn't be possible for the system to do hardware emulation of the Atari 2600... the machines are just too different. However, hardware emulation of the ColecoVision or the ZX Spectrum might be possible. I just don't think anyone has attempted it.

That is pretty neat. There is also a version that plays NES games (SMB!) and it seems like there was one like this for the SNES that plays some early C64 games and SID music.

Link to comment
Share on other sites

... the systems need to have very similar hardware, making hardware emulation possible.

 

I've often wondered why someone hasn't found a way to load Genesis ROMs off the SEGA CD... The Pack-In Arcade Classics titles seemed to do it okay (however the fact Golden Axe has no 2 player mode makes me think that maybe these games WERE re-written as 'Sega-CD' games)

And hell, IF that is possible, the SEGA CD should be able to load SMS ROMs too. (granted you'll have no Pause function unfortunately... but not all games need that)

Link to comment
Share on other sites

 

I've often wondered why someone hasn't found a way to load Genesis ROMs off the SEGA CD...

 

Simply because it is not possible. From what I recall (I've seen that question popping up so many times on old Sega emulation forums, with always the same answers from technical gurus):

 

1) loading a Genesis ROM implies to load it in internal RAM within the Sega CD then execute it from RAM with one of the two MC68000 CPU available

2) Sega CD MC68000 CPU does not have access to Genesis hardware (video/sound/etc) so you would need to load it in RAM accessible by the Genesis CPU then runs it from there

3) the maximal RAM window size available to Genesis CPU is 256KB so you are limited to quite old or basic games

4) the memory mapping of Genesis CPU when Sega CD is connected is different from when a game cartridge is connected (the space normally mapped to the game cartridge ROM starts with Sega CD Boot ROM, etc) so games have to be reprogrammed/patched to handle the needed address conversion

 

And hell, IF that is possible, the SEGA CD should be able to load SMS ROMs too. (granted you'll have no Pause function unfortunately... but not all games need that)

 

 

Not possible either because SMS games require the Genesis to be switched in SMS mode, which is done on hardware reset if some pin is asserted on the cartridge interface

Edited by philyso
  • Like 1
Link to comment
Share on other sites

 

Simply because it is not possible.

 

I believe you when you say that, no reason not to... but it doesn't answer how the Sega Arcade Classics releases were handled.

SO does that mean the Sega CD versions of RoS and Golden Axe and whatnot WERE re-written as Sega CD games and AREN'T updated ROMs of the originals (updated as in they reference the new CD audio tracks/SFX)?

 

EDIT

Or perhaps a mingling of both... a ROM file that has been updated to be a 'Sega CD' game (Ported I guess would be the proper wording) and not just a Sega Genesis game ROM file that references a few new additions.

In which case I'm still surprised people/homebrewers haven't "ported" other Genesis games like say, Altered Beast to have Arcade quality Music/SFX.

Not that the world is clamoring for a better Altered Beast, it's just, when it comes to the work of Homebrewers, it's often done just to say you could do it, not because it was necessary or requested.

I don't mean that in a negative tone, but I know it may that sound that way! I understand people want to strectch out and get practice/experience/have some fun :)

But no, there have been NO Sega CD updates of Genesis carts by Homebrewers.

That I know of anyway...

And why not? anytime someone does a "Hack" of game... why not port it to Sega CD, and then Hack it? You have so many more options open to you then it seems.

Maybe Porting to the Sega CD is a pain in the ass? Hence why Sega themselves only did it once?

Edited by Torr
Link to comment
Share on other sites

  • 2 weeks later...

 

4) the memory mapping of Genesis CPU when Sega CD is connected is different from when a game cartridge is connected (the space normally mapped to the game cartridge ROM starts with Sega CD Boot ROM, etc) so games have to be reprogrammed/patched to handle the needed address conversion

 

Not possible either because SMS games require the Genesis to be switched in SMS mode, which is done on hardware reset if some pin is asserted on the cartridge interface

 

The biggest restriction would be the 256K window. The code relocation would be a lot of work, but far from impossible.

 

It's been so long since I've looked at that stuff, but I think SMS mode does two things, it makes the cartridge slot work differently, and there is a different memory map from the Z80 slave mode for I/O. The games would have to be patched, but the big thing is that you aren't going to run any bank-switched games. I think it's possible for 32K or smaller games.

 

One thing I've always wanted to do is port some Colecovision games to run on Genesis. The biggest problem is that the Genesis VDP doesn't support TMS9918 mode (one of the SMS card games won't work on the PBC because of this). It would also have a significantly different memory map and different VDP interrupts, so it would be at least as hard as porting a SG-1000 game to Coleco. And then there are the keypads that some games would need. I don't know if the Genesis can use a Coleco controller properly. If I did it, I'd probably try a cross-assembly port to 68000, sort of like how the 8086 could run 8085 code.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...