MMC3 with CHR ROM and CHR RAM: Difference between revisions
m (pretty certain the word "and" wasn't supposed to be there) |
Rainwarrior (talk | contribs) m (Super Bat Puncher moved to userspace) |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
'''MMC3 with CHR ROM and CHR RAM''' is an uncommon combination. | '''MMC3 with CHR ROM and CHR RAM''' is an uncommon combination. | ||
Apart from ''Pinbot'' and ''High Speed'', which use the [[TQROM]] board, this combination is used for games in the Chinese language, which need to mix [[wikipedia:Chinese characters|logographic characters]] arbitrarily. | Apart from ''Pinbot'' and ''High Speed'', which use the [[TQROM]] board, this combination is used for games in the Chinese language using an [[MMC3]]-clone mapper, which need to mix [[wikipedia:Chinese characters|logographic characters]] arbitrarily. | ||
They are thought to follow a similar strategy to ''Faxanadu'' and ''[[Super Bat Puncher]]'', reserving some CHR RAM for software-rendered text boxes. | They are thought to follow a similar strategy to ''Faxanadu'' and ''[[User:Miau/Super Bat Puncher|Super Bat Puncher]]'', reserving some CHR RAM for software-rendered text boxes. | ||
No mapper other than [[MMC5]] has CHR ROM banks fine-grained enough to allow showing dialogue using Chinese characters with only CHR ROM without prerendering each sentence, and unlike Japanese, Chinese cannot use the common shortcut of using only [[wikipedia:kana|phonetic characters]]. | No mapper other than [[MMC5]] has CHR ROM banks fine-grained enough to allow showing dialogue using Chinese characters with only CHR ROM without prerendering each sentence, and unlike Japanese, Chinese cannot use the common shortcut of using only [[wikipedia:kana|phonetic characters]]. | ||
Some of these mappers differ only in the amount of CHR RAM that replaces CHR ROM. | Some of these mappers differ only in the amount of CHR RAM that replaces CHR ROM. | ||
Line 8: | Line 8: | ||
All MMC3-like iNES mappers known to be used with CHR RAM are listed below: | All MMC3-like iNES mappers known to be used with CHR RAM are listed below: | ||
{| class="tabular" | {| class="tabular" | ||
! Mapper || First RAM bank || Size of RAM || RAM mirrored? | ! Mapper || First RAM bank || Size of RAM<br>(1024-byte banks) || RAM mirrored? | ||
|- | |- | ||
| [[iNES Mapper 004|004]] || 0 || 0 or 8* || Yes | | [[iNES Mapper 004|004]] || 0 || 0 or 8* || Yes | ||
Line 15: | Line 15: | ||
|- | |- | ||
| [[iNES Mapper 119|119]] || 64, 192 || 8 || Yes | | [[iNES Mapper 119|119]] || 64, 192 || 8 || Yes | ||
|- | |||
| [[iNES Mapper 176|176]] || 0 || 8 || No | |||
|- | |- | ||
| [[iNES Mapper 191|191]] || 128 || 2 || Yes | | [[iNES Mapper 191|191]] || 128 || 2 || Yes | ||
Line 30: | Line 32: | ||
; 074, 192: CHR RAM starts at bank 8 and is not mirrored | ; 074, 192: CHR RAM starts at bank 8 and is not mirrored | ||
; 119: CHR A16 switches between CHR ROM and CHR RAM | ; 119: CHR A16 switches between CHR ROM and CHR RAM | ||
; 176: $A001 bit 2 switches between CHR ROM and CHR RAM in the first 8 KiB | |||
; 191: CHR A17 switches between CHR ROM and CHR RAM | ; 191: CHR A17 switches between CHR ROM and CHR RAM | ||
[[Category:MMC3 with CHR ROM and CHR RAM|*]] | [[Category:MMC3 with CHR ROM and CHR RAM|*]] |
Latest revision as of 00:48, 18 March 2023
MMC3 with CHR ROM and CHR RAM is an uncommon combination.
Apart from Pinbot and High Speed, which use the TQROM board, this combination is used for games in the Chinese language using an MMC3-clone mapper, which need to mix logographic characters arbitrarily. They are thought to follow a similar strategy to Faxanadu and Super Bat Puncher, reserving some CHR RAM for software-rendered text boxes. No mapper other than MMC5 has CHR ROM banks fine-grained enough to allow showing dialogue using Chinese characters with only CHR ROM without prerendering each sentence, and unlike Japanese, Chinese cannot use the common shortcut of using only phonetic characters. Some of these mappers differ only in the amount of CHR RAM that replaces CHR ROM.
All MMC3-like iNES mappers known to be used with CHR RAM are listed below:
Mapper | First RAM bank | Size of RAM (1024-byte banks) |
RAM mirrored? |
---|---|---|---|
004 | 0 | 0 or 8* | Yes |
074 | 8 | 2 | No |
119 | 64, 192 | 8 | Yes |
176 | 0 | 8 | No |
191 | 128 | 2 | Yes |
192 | 8 | 4 | No |
194 | 0 | 2 | No |
195 | 0 | 4 | No |
* In iNES format, mapper 4 has CHR RAM only if CHR ROM is not present.
ROMs with the NES 2.0 header specify the size of CHR RAM separately. Because the default size is ignored, the seven mappers collapse into four distinct behaviors:
- 004, 194, 195
- CHR RAM starts at bank 0 and is mirrored only if there is no CHR ROM
- 074, 192
- CHR RAM starts at bank 8 and is not mirrored
- 119
- CHR A16 switches between CHR ROM and CHR RAM
- 176
- $A001 bit 2 switches between CHR ROM and CHR RAM in the first 8 KiB
- 191
- CHR A17 switches between CHR ROM and CHR RAM