AuthorTopic: SNES Mode-0 unused but cool graphic mode (WIP)  (Read 7972 times)

Offline dragonboy

  • 0001
  • *
  • Posts: 28
  • Karma: +0/-0
    • View Profile

SNES Mode-0 unused but cool graphic mode (WIP)

on: August 17, 2008, 12:36:55 am
Hi, as you might already know, Snes had a lot of different graphic modes, most of them never used.

Today I'm talking about SNES's mode-0.  What is different from the rest is that this mode, uses only 4 colors per 8x8 tile, instead of 16, but makes it up by having 4 different backgrounds, instead of the usual 2.



Why should've this mode been used?  I have many reasons why I think they should have used this mode-0 more often.

- much more computer aesthetic than using 16 colors per tile
- 4 layers of scroling
- less memory


My drawing isn't finished yet.  You can post your oppinion, or you can draw your own Mode-0 pixel drawing.

Specifications:

- 4 layers

- 8x8 tiles

- 3 colors and one transparency per tile

- 8 pallettes per layer

Offline Conzeit

  • 0100
  • ***
  • Posts: 1448
  • Karma: +3/-0
  • Camus
    • conzeit
    • View Profile
    • CONZEIT

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #1 on: August 17, 2008, 12:40:31 am
I can see why people instantly reacted against it, if you think of it in terms of individual tiles it's like a NES in SNES.

should be fun tho

Offline smiker

  • 0010
  • *
  • Posts: 158
  • Karma: +0/-1
  • http://youtube.com/watch?v=cbaRMjlLWng
    • View Profile
    • Smiker's Portal (WIP)

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #2 on: August 17, 2008, 01:35:13 am
i have a question: how's the transparent determined by and how many layers can use that color on his tiles?
this activity could be fun!

Offline dragonboy

  • 0001
  • *
  • Posts: 28
  • Karma: +0/-0
    • View Profile

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #3 on: August 17, 2008, 02:20:42 am
i have a question: how's the transparent determined by and how many layers can use that color on his tiles?
this activity could be fun!

I don't really understand the question, but I could explain.

The Snes has a part of the graphic memory that is 512 bytes long that is devoted to colors.  Each individual 16 bits represent a color.  It stores up to 256 16-bit colors to be onscreen at one time.  The colors are actually 15-bit (5 for red, 5 for green, 5 for blue), the last bit is just ignored.  The graphic mode determines how many background layers and also how the 256 colors are divided.

In mode-0, the first 128 colors are used for background, the last 128 colors are used for sprites.  The 128 background colors are divided into four parts.  Each of the 4 background layers has it's own 32 colors.  BG1 has colors 0-31, BG2 has colors 32-63, BG3 has colors 64-95, BG4 has colors 96-127.

Each of the layers 32 color palettes are divided into even smaller palettes.  Each layer has it's own 8 4-color palettes.  Palette-1 is colors 0-3, Palette-2 is colors 4-7, Palette-3 colors 8-11, ect ect.

The first color of each 4-color palette is never shown, because that color indicates a transparent pixel.  Transparent pixels are pixels that mean "go display the pixel from background layer behind it."  If there is a transparent pixel in the farthest background layer, it is replaced by the background color, which is always going to be color-0 on the big 256 color palette.

Offline Zombiechao

  • 0001
  • *
  • Posts: 15
  • Karma: +0/-0
    • View Profile

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #4 on: August 17, 2008, 03:07:56 am
Why would this go under used? Can't people just layer things?

Offline PypeBros

  • 0100
  • ***
  • Posts: 1220
  • Karma: +2/-0
  • Pixel Padawan
    • PypeBros
    • View Profile
    • Bilou Homebrew's Blog.

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #5 on: August 17, 2008, 08:44:47 pm
i guess being given the option of 15-colors vs. 3-colors tiles, most artists would have preferred to go 15-color rather than sticking to that NES look. Okay, they could have layered things, but i guess they got fed up of layering sprites on the NES earlier.

Another question that pops to my mind is "does that enhance the number of tiles you're allowed to have". There is little incentive to reduce further the amount of memory needed to hold tiles if that do not allow you to use more tiles in your scene. That's typically what happens if you switch to 16-color mode (rather than 256-color) for DS tiles. You can't have more than 1024 tiles per layer anyway, and using 5% of the available video memory per layer rather than 10% is hardly meaningful.

People did layer things. Just having a look at Zelda III should prove that. Also, i doubt that "mode 0" is the only one to allow 4 layers, as (afaik) games like Donkey Kong had at least 2 layers for the "main ground" in order to be able to do e.g. doors with the proper perspective (and there was other independent layers for parallax scrolling).

So i guess that mode was there just for "backward compatibility" reasons, in an attempt to ease back-porting of the 8-bit games, but that no crew found it a good idea not to overuse the graphical capabilities of that new engine.

Offline dragonboy

  • 0001
  • *
  • Posts: 28
  • Karma: +0/-0
    • View Profile

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #6 on: August 18, 2008, 03:29:55 am
"i guess being given the option of 15-colors vs. 3-colors tiles, most artists would have preferred to go 15-color rather than sticking to that NES look. Okay, they could have layered things, but i guess they got fed up of layering sprites on the NES earlier."

Thankfully it only applies to backgrounds not to sprites

"Another question that pops to my mind is "does that enhance the number of tiles you're allowed to have". There is little incentive to reduce further the amount of memory needed to hold tiles if that do not allow you to use more tiles in your scene. That's typically what happens if you switch to 16-color mode (rather than 256-color) for DS tiles. You can't have more than 1024 tiles per layer anyway, and using 5% of the available video memory per layer rather than 10% is hardly meaningful."

The Snes is a little goofy on the way the V-RAM is set out.  I beleive it does allow you to do that but I'll have to read another technical manual to find out.  There isn't any exact spot in the v-ram that stores background tiles, it uses some kind of V-RAM offset, where the programmer pretty much desides where the bg tiles should go.  It's really confusing and I didn't figure it all out yet.

I was refering more to ROM space as it was a big bottleneck backthen.

"People did layer things. Just having a look at Zelda III should prove that. Also, i doubt that "mode 0" is the only one to allow 4 layers, as (afaik) games like Donkey Kong had at least 2 layers for the "main ground" in order to be able to do e.g. doors with the proper perspective (and there was other independent layers for parallax scrolling)."

I made a goof, Mode-1 gives you 3 backgrounds, two 16-color tile layer, one 4-color tile layer.  Everyother layer is faked out with line scrolling.  Snes's graphics chip renders pictures one scanline at a time.  You can fake extra layers by changing background x-coordinates between the rendering of two scanlines to give the illusion of extra backgrounds.

Just so you know, I allow line-scrolling in this activity, and I highly recomend it to be used.


I don't know exactly how you're going to show the parallax in a drawing, but just try to explain how it would scroll if it were in "your" game.

"So i guess that mode was there just for "backward compatibility" reasons, in an attempt to ease back-porting of the 8-bit games, but that no crew found it a good idea not to overuse the graphical capabilities of that new engine."

It's not really that bad looking if done right.



Okay, it seems like you guys are confused.  I mean layers as in parallax layers, not layering the palettes over each other.  I've pulled the tiles apart in my drawing.  Notice every individual tile has only 3 colors.
« Last Edit: August 18, 2008, 03:54:33 am by dragonboy »

Offline PypeBros

  • 0100
  • ***
  • Posts: 1220
  • Karma: +2/-0
  • Pixel Padawan
    • PypeBros
    • View Profile
    • Bilou Homebrew's Blog.

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #7 on: August 18, 2008, 03:09:19 pm
so that would make us benefit of one additional layer, but we'd have to stack two layers together to have enough flexibility. Basically, it would mean that we have "only" 6 colors per tile rather than 15. Probably more "palettes" of 6 colors would be allowed (combinations of those 3-colour palettes), but it will restrict you in the combinations you can pick. not really a problem when it comes to grass-on-cliff, but if you want to do e.g. colorful flowers ... well ... i guess you'll be allowed at most one flower color per tile. Analyzing your tiles, you seem to have need for 7 palettes for "just" 13 colors.

Quote
The Snes is a little goofy on the way the V-RAM is set out.  I beleive it does allow you to do that but I'll have to read another technical manual to find out.  There isn't any exact spot in the v-ram that stores background tiles, it uses some kind of V-RAM offset, where the programmer pretty much desides where the bg tiles should go.  It's really confusing and I didn't figure it all out yet.

I was refering more to ROM space as it was a big bottleneck backthen.
Yet we have seen games such as Donkey Kong Country fit a 32Mb cartridge (that's just 4 megabytes. Even some flash games nowaday grow larger than this!) The fact the SNES has actually some V-RAM did allow for compressing video data (which wasn't possible with NES and GB) that would be decompressed during "prepare yourself" intermission screen
Quote from: Wikipedia : http://en.wikipedia.org/wiki/The_Legend_of_Zelda:_A_Link_to_the_Past
At the time, most SNES game cartridges had 4 Mbit (512 KB) of memory. This game broke the trend by using 8 Mbit (1 MB), allowing the Nintendo development team to create a remarkably expansive world for Link to inhabit.[3] Like Super Mario World, this game used a simple graphic compression method on the SNES by limiting the color depth of many tiles to eight colors instead of the SNES's native 16-color tiles. The tiles were decompressed at runtime by adding a leading bit to each pixel's color index. Memory was also saved by eliminating duplication: The Light World and the Dark World are almost identical, and reverse engineering of the game's ROM contents has revealed that only the differences were saved; otherwise, they would have needed to wait for a 16 Mbit ROM.[3]

Offline dragonboy

  • 0001
  • *
  • Posts: 28
  • Karma: +0/-0
    • View Profile

Re: SNES Mode-0 unused but cool graphic mode (WIP)

Reply #8 on: August 18, 2008, 04:43:37 pm
Nintendo was a smart developer.  Megabit size was only a big problem to dumber companies like Takara, who didn't know the least about compression.  Ever wonder why Samurai Shodown has such tiny sprites, is extremely choppy, but is 32 megabits big?  That is because, Takara's programmers are really stupid.