Names used for tilemaps by original documentation?

Discussion of development of software for any "obsolete" computer or video game system.
Post Reply
lidnariq
Posts: 9706
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Names used for tilemaps by original documentation?

Post by lidnariq » Mon Mar 02, 2020 1:55 am

We've established that the TMS9918, SMS, Genesis, and Game Gear VDPs refer to their tilemaps as Name Tables; "Name" being jargon either from or propagated by TI meaning a mapping of number to image:
Each byte entry in the Name Table is either the name of or the pointer to a pattern definition in the Pattern Generator Table. The upper 5 bits of the 8-bit name identify the color group of the pattern. [in Graphics 1]
Other ones:
VirtualBoy uses "Background Segments"
MDA and CGA used "Display Buffers"
Intellivision used a "Background Table" (BACKTAB) specifying "cards" (not "characters" or "patterns")

I'm only curious about what original contemporary documentation called them, not any names that have since been used.

Pokun
Posts: 1512
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Names used for tilemaps by original documentation?

Post by Pokun » Mon Mar 02, 2020 6:58 am

Nintendo generally just uses the term "screen" I think. On SNES it's abbreviated as SC, and in Family BASIC V3 the two commands "SCREEN 0" and "SCREEN 1" are used for switching the two nametables. On the other hand they also use terms like SPRITE for sprites in Family BASIC which they never do in other official documents (it's always object or OBJ), so the terminology is probably partly due to compatibility or similarity with other BASIC variants (SCREEN 0 on MSX BASIC sets the TMS9918 screen mode "TEXT" for example).

Nintendo aren't always consistent even within the same document though. But as I've only seen English documents, it's hard to tell if it's because of translations or if the original Japanese documents are like that as well.

On Game Boy the term is usually "BG Display". "Window" is used for a second non-scrollable BG layer with more strict display limitations (funny since "window" means something else on SNES and Virtual Boy).

MSX uses mostly TMS9918 terms I think, but there are a LOT of documentation and not everyone may always use the same terms. Official documents for the Yamaha 9938 (MSX2 video chip) do use TMS9918 terms though (Name Table, Pattern Generator Table etc).

PC Engine uses the term Background Attribute Table or BAT. It's a tilemap with Pattern Codes (tile index) and Color Codes (palette index) for each BG character. No tile flipping or any other attributes. On a related note, the sprite table is called Sprite Attribute Table or SAT and contains Pattern Codes, Color Codes, flipping and size flags.

Neo Geo (MVS, AES and Neo Geo CD but not Neo Geo Pocket) has a single non-scrollable tiled layer called the FIX area. Since it's displayed on top of everything else (which are all sprites) it can hardly be called a background layer, but it works the same way (the term "background" is actually used for the single-colored backdrop on Neo Geo). It is normally used as a HUD or anything that needs to display simple text, like menus. Also the sprite system is called 3D-Line Sprite and sprites (which are huge) actually have their own tilemaps. This tilemap doesn't seem like it has any specific name though, it's just "3D-Line Sprite characters".


In my personal notes I like to call it Background Screen (or BG Screen), Nametable (or Name Table) or Tilemap depending on context.

User avatar
Bregalad
Posts: 7952
Joined: Fri Nov 12, 2004 2:49 pm
Location: Chexbres, VD, Switzerland

Re: Names used for tilemaps by original documentation?

Post by Bregalad » Mon Mar 02, 2020 9:04 am

Maybe you should point that this thread is a split of the conversation from that thread, and maybe mods should move the original messages derailing into this subject (names) in that thread, too.

As for the name, I agree mirroring is the most confusing Nesdev-related name, especially 4-screen mirroring which means actually no screen is being mirrored at all. WTF.

I don't have any issue with the "name table", even though tilemap might be more accurage. I am used to call this "nametable" when it comes to NES and "tilemap" when it comes to other systems - those names for so long that it doesn't bother me. Also the NES also has the properties of having unique name and attribute tables combined in one VRAM area so this is quite unique as far as I can tell. Most other systems would have either a LSB/MSB system where some bits are tile index and other colours etc, or have two completely separate maps.

Sprites is also a confusing term in that it is often used as a generic word for "graphics asset", including metasprites and perhaps even bosses drawn with BG and sometimes assets the BG itself (metatiles). At least on the NeoGeo this has the merit to be always accurate :) And that system doesn't need a name for it's tile maps since there's none :)

User avatar
TmEE
Posts: 761
Joined: Wed Feb 13, 2008 9:10 am
Location: Estonia, Rapla city (50 and 60Hz compatible :P)
Contact:

Re: Names used for tilemaps by original documentation?

Post by TmEE » Mon Mar 02, 2020 11:11 am

MD documentation uses "Pattern name table" in particular not just "name table". in my early stuff I called the tilemaps "pattern tables", the "name" part never stuck to me. I'm not sure when I began to call things tilemaps rather than whatever else the official documentation uses, I certainly find tilemap making much more sense. Similarly sprite/object tables etc. refer to as sprite list, partially because it just rolls off the tongue faster.

Pokun
Posts: 1512
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Names used for tilemaps by original documentation?

Post by Pokun » Mon Mar 02, 2020 2:54 pm

But if you leave out "name" it sounds like it's the same as the "pattern generator table" which it's not. It's a table of pattern names after all, it doesn't hold the pattern definition data.

Bregalad wrote:
Mon Mar 02, 2020 9:04 am
the NES also has the properties of having unique name and attribute tables combined in one VRAM area so this is quite unique as far as I can tell. Most other systems would have either a LSB/MSB system where some bits are tile index and other colours etc, or have two completely separate maps.
I was going to say that TMS9918 also has a separate name table which is why it's using that term, but now I'm checking the documentation and it indeed has color attributes mixed into the name table. Lidnariq was right in that other thread.

Bregalad wrote:
Mon Mar 02, 2020 9:04 am
Sprites is also a confusing term in that it is often used as a generic word for "graphics asset", including metasprites and perhaps even bosses drawn with BG and sometimes assets the BG itself (metatiles).
Yeah but that's basically because sprite has become such a commonplace term that it's used in non-technical talk for any 2D object that is either mobile or at least a distinguishably separate object in a game (like an icon in a status bar).

Bregalad wrote:
Mon Mar 02, 2020 9:04 am
At least on the NeoGeo this has the merit to be always accurate :) And that system doesn't need a name for it's tile maps since there's none :)
As I said above, Neo Geo has both the FIX area tilemap and a kind of 1-dimensional tilemap for each and every sprite. In that sense I guess you could think of the Neo Geo as having 381 scrollable mini tilemaps of up to 32 16x16 tiles each. Nah they are sprites.

User avatar
TmEE
Posts: 761
Joined: Wed Feb 13, 2008 9:10 am
Location: Estonia, Rapla city (50 and 60Hz compatible :P)
Contact:

Re: Names used for tilemaps by original documentation?

Post by TmEE » Mon Mar 02, 2020 4:04 pm

The "generator" part never made sense to me, it just refers to graphics/tiles or perhaps VRAM as whole... only generator is the video pipeline itself of which you have no direct control over... tiles -> tilemap -> video output generator.

Pokun
Posts: 1512
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Names used for tilemaps by original documentation?

Post by Pokun » Mon Mar 02, 2020 4:28 pm

Well it's the generation definition data, in that sense it's generated. The palette is also called Color Generator (CG on SNES) for the same reason, although it's defined with just one byte. PC Engine has different formats for BG and sprite patterns, so the pattern generator tables are called Character Generator (CG) and Sprite Generator (SG) respectively. Confusing when Nintendo and SNK uses the term "character" for all patterns, sprite or BG.

Speaking of palette, that is another thing that is all over the place. There's "the palette" for the whole color generator and subpalettes, and sometimes it's just divided as several palettes. Then there's the "master palette" which is hardly a palette at all (and not a memory area), but rather the pool of all the colors the video chip can generate. It should be "paint bucket shelf". :)

93143
Posts: 1231
Joined: Fri Jul 04, 2014 9:31 pm

Re: Names used for tilemaps by original documentation?

Post by 93143 » Mon Mar 02, 2020 4:43 pm

It "generates" the data in the sense that it serves as a data source for the graphics processor. The video chip doesn't generate anything; it only processes data to produce a final product. The source of the data must be elsewhere, and in a flowchart of the rendering process it makes some sense to refer to the data as being "generated" at the point where the relevant video RAM is read.

That's how I see it, anyway.

User avatar
TmEE
Posts: 761
Joined: Wed Feb 13, 2008 9:10 am
Location: Estonia, Rapla city (50 and 60Hz compatible :P)
Contact:

Re: Names used for tilemaps by original documentation?

Post by TmEE » Mon Mar 02, 2020 6:17 pm

As a hardware orientated person, seeing data as the "generator" makes no sense, it is the hardware that generates the output using data supplied. "generation table" would make a whole lot more sense, hardware generates output using the input that guides generation of that output.

93143
Posts: 1231
Joined: Fri Jul 04, 2014 9:31 pm

Re: Names used for tilemaps by original documentation?

Post by 93143 » Mon Mar 02, 2020 6:48 pm

It's a little weird, I admit, but I'm trying to get my head around why someone would use the term that way. The fact that it doesn't make sense to you is beside the point. It must have made sense to somebody or it wouldn't be called that. And it is probably impossible to blame a bad translation, or the imperfect English of a Japanese designer, when the term originated with Texas Instruments - it seems pretty certain that at least one native English speaker thought "Pattern Generator Table" was a good descriptive name.

I maintain that it is possible to see it from this perspective: the contents of the video signal are implicit in the contents of video memory, given the known functionality and state of the video chip. Therefore the video chip doesn't really "generate" the picture from an information-theory standpoint; it only decompresses it from the provided data. And from the chip's perspective, the data is essentially "generated" on demand; it doesn't matter exactly how the data source turns an address into tile or colour data, only that it does.

...

I suppose CGRAM could simply mean the RAM used by a part of the S-PPU called the "Colour Generator". But I'm not sure this fits "Pattern Generator Table" quite as neatly...

User avatar
TmEE
Posts: 761
Joined: Wed Feb 13, 2008 9:10 am
Location: Estonia, Rapla city (50 and 60Hz compatible :P)
Contact:

Re: Names used for tilemaps by original documentation?

Post by TmEE » Mon Mar 02, 2020 7:07 pm

It now dawned to me that it could be "table for the pattern generator" or "table of the pattern generator", data for the hardware that generates patterns (or at least that's how it could work in my language anyway). This makes it make sense for me, while the data way of thinking makes me think how all the files on my computer are generators of all sorts which is even more weird lol.
This would work with the GCRAM too, RAM for the color generator hardware (DAC and related bits).

Pokun
Posts: 1512
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Names used for tilemaps by original documentation?

Post by Pokun » Tue Mar 03, 2020 4:48 am

I agree with you both. I also thought generator was a strange word at first since it's basically just a memory area with data and not some kind of machine that produces patterns.

It would be interesting to know if these terms are older than the TMS9918 though. Everyone says that Texas Instrument coined the term "sprite" for it, but what about "name", "character", "pattern", "generator" etc? I read somewhere that the first video processor that used sprites was Signetics 2636 Programmable Video Interface (PVI), and they used the term "object" for sprites. I guess it was a common term for sprites which Nintendo adopted and officially stuck with it even when everyone else started calling them sprites. Sprites is of course older than the PVI but it was supposedly generally made using discrete components before that.

Back to topic, Nintendo seldom uses the term "Name Table" (they use BG Screen or SC), but they do use "Name" in the SNES documents. Registers $210B and $210C are used to set "Name Base Address" for the 4 background layers, which by they mean the addresses of the pattern generator tables.

Post Reply