Jump to content
IGNORED

NES games on 7800?


jamesb69

Recommended Posts

I always hear how the 7800 was more powerful than the NES. I was wondering if it would be possible to take like Super Mario Brothers (the one that came with duck hunt) or zelda or somethign and port it to the 7800 somehow?

 

Then again maybe im just dreaming.

Link to comment
Share on other sites

The ONLY significant hardware the NES and 7800 have in common is the 6502 CPU. Everything else -- graphics, sound, controllers -- is different.

 

So porting an NES game to the 7800 would require exactly as much effort as porting any other 6502-based game (XL/XE, C64, Apple II, etc).

Link to comment
Share on other sites

Sure, some reprogramming would be involved, but I'd think that games could be ported over with little or no changes. Maybe even look better, SMB would look cool with some 'depth' to it's graphics, like the rocks in Asteroids.

 

But then again, I don't want to play SMB on anything but an NES. Even the C=64 version felt weird.

Link to comment
Share on other sites

Well, the NES has a screwball native resolution of 256x200. Most other systems have horizontal resolutions that are even multiples of the number of color clocks in an NTSC scan line: 160, 320, or 640. So directly porting the bitmaps from an NES game would cause them to look horizontally stretched or squashed. Most likey stretched, since the 7800's 160x200 mode is (apparently) the only one that directly supports multicolor sprites. Look at 7800 Donkey Kong or Donkey Kong Jr for examples of this stretching.

Link to comment
Share on other sites

Yes I can, and chances are it would use similar notes to the ones scrapyard dog deals with. Not NES grade, to be sure, but passable. The games couldn't be direct ports, due ot the fact the 7800 is structured differently, but they could be done, barring Nintendo legal action.

Link to comment
Share on other sites

What about something (supposedly) simpler...

 

Is there a possibility of taking the Scrapyard Dog ROM image and hacking it to match (sort of) SMB graphics and levels??

 

(Haven't played Scrapyard dog, so I'm not sure it's close enough..)

 

But kind of like the Amiga Great Gianna Sisters - SMB hack....

(Of course, Great G S was intentionally much close to SMB than Scrapyard Dog would be...)

 

Just a thought.. Now that there's a 7800 cuttle on the horizon, this might be interesting...

 

desiv

Link to comment
Share on other sites

What about something (supposedly) simpler...

 

Is there a possibility of taking the Scrapyard Dog ROM image and hacking it to match (sort of) SMB graphics and levels??

 

desiv

 

Ugh! Why not just expand "Scrapyard Dog" on the 7800 to make it truly resemble the superior Lynx version? The Lynx version of SD is simply excellent, and is the equal of any mid- or late- 80s Nintendo platformer.

Link to comment
Share on other sites

Put Scrapyard Dog into Hack-O-Matic, not a quick load :D . so much code jammed in there, I don't have the patience to scroll through it all. Maybe tomorrow when I'm more awake.

 

What do you want, the guy to look more like Mario? I could try that, as well as turn the big rats into Koopa Troopas or Goombas or something. Why, this could be Super Mario 7800!

Link to comment
Share on other sites

since the 7800's 160x200 mode is (apparently) the only one that directly supports multicolor sprites.

 

Not so! The 7800 has four 320 modes:

320A is an 8 pixel 2 color mode (on/off), though each sprite may have a different palette (1 of 8 )

320B is a 4 pixel 4 color mode (just like the normal 160A 4 color mode) from 1 of 8 palettes

320C is a 4 pixel 2 color mode, but each sprite may use 2 palettes

320D is an 8 pixel 4 color mode, but some of the color bits are shared and only 2 palettes are available

 

It is possible to flip between A&C and B&D modes for each sprite. The 320 modes also have some quirks like positioning is still done at 160 resolution and transparency only works if both 160 half pixels are off, otherwise off gives the background color.

 

I also just realized that you couldn't do a fully tiled background with either 320B or 320C; there isn't enough time each line for the GPU to draw more than the background.

Link to comment
Share on other sites

Hi-res mode wasn't used because it sucks. :)

 

The main issue with hi-res sprites is the lack of palletes. You're limited to 2 in this mode. So, that's a total of 7 colors possible (background, plus 2x3-color).

 

However, in this mode when objects overlap, there is no transparency (so any overlapping objects will display the background color to show around the sprites, causing crappy-looking results). If you turn transparency on to circumvent this issue, you lose your resolution (back to 160), and in addition, you lose some colors in your palette (now limited to 5 colors, IIRC).

 

So, these sprites are pretty useless for any functional game-play sort of thing. So, that limits you to picture drawing. But, who wan't to draw a high-res picture with only 7 colors?

 

Thanks,

-John

Link to comment
Share on other sites

Well, the NES has a screwball native resolution of 256x200. Most other systems have horizontal resolutions that are even multiples of the number of color clocks in an NTSC scan line: 160, 320, or 640. So directly porting the bitmaps from an NES game would cause them to look horizontally stretched or squashed. Most likey stretched, since the 7800's 160x200 mode is (apparently) the only one that directly supports multicolor sprites. Look at 7800 Donkey Kong or Donkey Kong Jr for examples of this stretching.

 

Actually, the 256 mode is common in arcade hardware where 40 columns isn't important (it's 32x8), because it yields character cells that are basically square. The 320 mode is common in computer hardware because it's 40x8, but the cells are taller than wide. I'm writing something on the 8-bit that uses square characters, so mine are 5x7 (in a 160 mode) and they're a pain to manage, but the result looks very arcade-ish.

 

Only Atari tied the pixel clock to the color clock. Most systems use a different clock so that the artifact colors that happen on NTSC Atari 8-bits will not occur.

 

But, yes, the graphics should be re-sized to get the proportions right.

 

-Bry

Link to comment
Share on other sites

The main issue with hi-res sprites is the lack of palletes.  You're limited to 2 in this mode.  So, that's a total of 7 colors possible (background, plus 2x3-color).

This is true only of 320D mode. 320B mode has the same color capabilites as 160A (although the bit order is different).

 

However, in this mode when objects overlap, there is no transparency (so any overlapping objects will display the background color to show around the sprites, causing crappy-looking results).  If you turn transparency on to circumvent this issue, you lose your resolution (back to 160), and in addition, you lose some colors in your palette (now limited to 5 colors, IIRC).

 

Just to clarify - positioning and transparency still use 160 resolution boundaries even in 320 modes. So 00 is transparent, while 01 is background/color 1. It means that sprite edges need to use 160 resolution, while the interior can use the background color as well.

Link to comment
Share on other sites

Only Atari tied the pixel clock to the color clock. Most systems use a different clock so that the artifact colors that happen on NTSC Atari 8-bits will not occur.

Well... no. The Apple II's entire color system is built around artifacting. And why do you think 320 and 160 are such popular horizontal resolutions on old computers and game systems? The pixel/color-clock connection was exceptionally common.

Link to comment
Share on other sites

Well, the NES has a screwball native resolution of 256x200.

 

Actually, the 256 mode is common in arcade hardware where 40 columns isn't important (it's 32x8), because it yields character cells that are basically square.  The 320 mode is common in computer hardware because it's 40x8, but the cells are taller than wide.  

 

Only Atari tied the pixel clock to the color clock. Most systems use a different clock so that the artifact colors that happen on NTSC Atari 8-bits will not occur.

 

256x200 makes sense when you have a frame buffer since it makes x,y to address calculations easier. Since the Atari 8bits all used a GPU of one kind or another without a frame buffer, it made more sense to link everything (including the CPU clock) to a single colorburst clock crystal.

Link to comment
Share on other sites

Huh? The Atari computers most certainly did have frame buffers. They existed in main RAM. You could have as many as there was room for.

 

Calling ANTIC a GPU is a stretch. It is, at best, a somewhat configurable DMA chip.

 

And I don't see what any of that has to do with color burst frequencies.

Link to comment
Share on other sites

Only Atari tied the pixel clock to the color clock. Most systems use a different clock so that the artifact colors that happen on NTSC Atari 8-bits will not occur.

Well... no. The Apple II's entire color system is built around artifacting. And why do you think 320 and 160 are such popular horizontal resolutions on old computers and game systems? The pixel/color-clock connection was exceptionally common.

 

You're right about the Apple in low rez, I forgot about that one. The Colecovision uses it too. The 64 uses a different clock (8.18 MHz) and looks up the phase difference from a color ROM. The Atari pixel clock is 7.16 MHz, twice the NTSC clock. Anyway, I looked into it and I spoke too soon. Several systems did use a unified clock, but in the mid 80's hardware started moving away from the NTSC clock.

 

There are 227.5 color clocks in an NTSC line, so 160 (and double rez 320)has to do with how wide you set the borders. You'll notice that the higher clock rate means larger side borders on the 64.

 

The reason for the NES pixel clock (about 5.4MHz) is still to create square characters. Anyway, sorry for the error.

 

-Bry

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

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