What does "CIRAM" stand for?

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems. See the NESdev wiki for more information.

Moderator: Moderators

Post Reply
User avatar
jeffythedragonslayer
Posts: 344
Joined: Thu Dec 09, 2021 12:29 pm

What does "CIRAM" stand for?

Post by jeffythedragonslayer »

I guess that the "RAM" part stands for "random access memory," but what about "CI?" Definitely not "continuous integration." It's surprisingly hard to find an acronym expansion for this term for how many times it appears on the wiki.
User avatar
Dwedit
Posts: 4924
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: What does "CIRAM" stand for?

Post by Dwedit »

No idea, but "Console Internal" fits.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
User avatar
jeffythedragonslayer
Posts: 344
Joined: Thu Dec 09, 2021 12:29 pm

Re: What does "CIRAM" stand for?

Post by jeffythedragonslayer »

Dwedit wrote: Fri Feb 10, 2023 8:45 pm No idea, but "Console Internal" fits.
Agreed. On this page it's more obvious the need for the term:

https://www.nesdev.org/wiki/NES_2.0_Mapper_512
Fiskbit
Posts: 891
Joined: Sat Nov 18, 2017 9:15 pm

Re: What does "CIRAM" stand for?

Post by Fiskbit »

User avatar
jeffythedragonslayer
Posts: 344
Joined: Thu Dec 09, 2021 12:29 pm

Re: What does "CIRAM" stand for?

Post by jeffythedragonslayer »

Fiskbit wrote: Fri Feb 10, 2023 10:10 pm Console-internal RAM.
Ooh that is a definition that I like.
User avatar
Quietust
Posts: 1920
Joined: Sun Sep 19, 2004 10:59 pm
Contact:

Re: What does "CIRAM" stand for?

Post by Quietust »

I've also seen "Character Internal RAM", at least in one of Kevtris's old documents.
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: What does "CIRAM" stand for?

Post by Pokun »

Yeah I also always thought C meant character (but I had no idea what "I" stood for). "Console Internal RAM" sounds like a very modern term to me as "console" was seldom used for video games before around year 2000 in my experience.

I guess this is the Kevtris document mentioned above. It sounds here like he coined CIRAM himself (unless Nintendo coined it) with the meaning of "Character Internal RAM" for the 2 kB of video memory at $0000-$1FFF. But character memory is always external found in the cartridge and never internal to the console on the NES so I don't get what's meant by internal. Character memory is also 8 kB.
Fiskbit
Posts: 891
Joined: Sat Nov 18, 2017 9:15 pm

Re: What does "CIRAM" stand for?

Post by Fiskbit »

In that document, kevtris is clearly using CIRAM to refer to the console's internal 2 KiB of VRAM, which can be mapped to an arbitrary* location by the cartridge (or disabled altogether) using pin 57. His references to it being in the range $0000-1FFF seem wrong; it is almost never there, as it is usually used for nametable RAM in the region of $2000-2FFF (and mirrored up through $3FFF). 'Character' is usually, but not always, used to refer to the region $0000-1FFF, and CIRAM can be used for character RAM, or nametable RAM, or a combination, or whatever.

I don't know if kevtris or that specific document are the source of the CIRAM terminology. Personally, I am only familiar with it as standing for console-internal RAM. On the wiki, CIRAM was included with the glossary when the page was created in 2010, but it wasn't expanded to anything until 2016, when Myask added 'Console-internal RAM'. Internal is really the keyword here, and while it would've been nice for this to reference explicitly that it is video RAM (such as IVRAM for internal video RAM), I don't think CIRAM is a particularly confusing term, just maybe hard to guess.

* CIRAM is connected directly to PPU A9-0, which puts some limitations on how it can be mapped.
User avatar
jeffythedragonslayer
Posts: 344
Joined: Thu Dec 09, 2021 12:29 pm

Re: What does "CIRAM" stand for?

Post by jeffythedragonslayer »

With a date as early as '97 on that document, I'd lean more towards "Character," but they both work.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: What does "CIRAM" stand for?

Post by Pokun »

I see, thanks for explaining.
So CIRAM is basically the PPU's dedicated 2 kB of RAM, usually called VRAM. Though the term VRAM is also, kinda strangely, used (by Nintendo themselves nonetheless) for the entire PPU address space $0000~$3FFF, including the palette (which physically doesn't reside in the CIRAM chips but in the PPU chip itself) and the cartridge's pattern table (which is often ROM and not RAM).

Yeah I really doubt the C originally meant "console", but it makes more sense than "character" which normally refers to the pattern table, so I guess it's a good backronym.

On the other hand the 2 kB main WRAM is also console internal SRAM.
User avatar
aquasnake
Posts: 515
Joined: Fri Sep 13, 2019 11:22 pm

Re: What does "CIRAM" stand for?

Post by aquasnake »

ciram means the internal chr-ram which locates in the console, usually it act as ntram or vram. And on the hardware schematics, it can be controled by PPU_/A13.

Most PCBs of cart directly connect PPU_/A13 with CIRAM_CE

So CIRAM was an offical term
User avatar
aquasnake
Posts: 515
Joined: Fri Sep 13, 2019 11:22 pm

Re: What does "CIRAM" stand for?

Post by aquasnake »

the internal workram from $0-$7FF, i call it iram

and the workram at $5xxx i call it xram

so $6000-$7fff still workram, with the term of wram

and $8000-$DFFF, i call it the alternative pram
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: What does "CIRAM" stand for?

Post by Pokun »

If Nintendo coined it, the C is very likely standing for "Character", referring to "character nametable" or something like that since the character ROM/RAM is always external on the Famicom.
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Re: What does "CIRAM" stand for?

Post by NewRisingSun »

I don't see the term CIRAM in the PPU datasheet. On page 7, the entire address space is described under the heading "Video RAM (VRAM)". The $0000-$1FFF address range is labelled "Character ROM", the $2000-$3FFF address range is labelled "BG.ROM+BG.Color".

Of course, it might still be that a service manual of the console that covers the HVC-CPU-xx circuit board would describe the 2 KiB RAM chip as CIRAM.
User avatar
Quietust
Posts: 1920
Joined: Sun Sep 19, 2004 10:59 pm
Contact:

Re: What does "CIRAM" stand for?

Post by Quietust »

aquasnake wrote: Thu May 25, 2023 12:21 am ciram means the internal chr-ram which locates in the console, usually it act as ntram or vram. And on the hardware schematics, it can be controled by PPU_/A13.

Most PCBs of cart directly connect PPU_/A13 with CIRAM_CE

So CIRAM was an offical term
Where exactly did you see the label "CIRAM_CE"? Was it on a cartridge, inside a console (NES or Famicom), or in a service manual of some sort?
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.
Post Reply