Mapper 472 / NROM-383 and NROM-368
Moderators: B00daW, Moderators
Mapper 472 / NROM-383 and NROM-368
** Update Mapper number changed to 474. Also sample ROMs with hello world. (Previous suggested mapper number was 472).
I've created a mapper that maps 0x4020 to 0xFFFF to PRG ROM.
I called it Akerasoft Mapper 474.
It maps more than NROM-368. But an NROM-368 is also planned. So the original one is NROM-383 (rounding down).
My prototype uses FLASH memory but is designed to be programmed before soldering and is not reflashable.
https://www.nesdev.org/wiki/NROM-368
My design however is this 64KB of ROM space:
Bank 0:
Memory 0x0000 - 0x3FFF (empty or ignored, all zeros?)
Bank 1:
Memory 0x4000 - 0x401F (empty or ignored, all zeros?)
Memory 0x4020 - 0x7FFF (PRG)
Bank 2:
Memory 0x8000 - 0xBFFF (PRG)
Bank 3:
Memory 0xC000 - 0xFFFF (PRG)
Mapper 472 submapper 0 - 0x4020 - 0xFFFF (NROM-383)
Mapper 472 submapper 1 - 0x4800 - 0xFFFF (NROM-368)
For .NES File my design is this 48KB of ROM space:
Bank 0:
Memory 0x4000 - 0x401F (empty or ignored, all zeros?)
Memory 0x4020 - 0x7FFF (PRG)
Bank 1:
Memory 0x8000 - 0xBFFF (PRG)
Bank 2:
Memory 0xC000 - 0xFFFF (PRG)
Repos for the above built ROMs:
https://github.com/Akerasoft/hello_world_nrom_383
https://github.com/Akerasoft/hello_world_nrom_368
I've created a mapper that maps 0x4020 to 0xFFFF to PRG ROM.
I called it Akerasoft Mapper 474.
It maps more than NROM-368. But an NROM-368 is also planned. So the original one is NROM-383 (rounding down).
My prototype uses FLASH memory but is designed to be programmed before soldering and is not reflashable.
https://www.nesdev.org/wiki/NROM-368
My design however is this 64KB of ROM space:
Bank 0:
Memory 0x0000 - 0x3FFF (empty or ignored, all zeros?)
Bank 1:
Memory 0x4000 - 0x401F (empty or ignored, all zeros?)
Memory 0x4020 - 0x7FFF (PRG)
Bank 2:
Memory 0x8000 - 0xBFFF (PRG)
Bank 3:
Memory 0xC000 - 0xFFFF (PRG)
Mapper 472 submapper 0 - 0x4020 - 0xFFFF (NROM-383)
Mapper 472 submapper 1 - 0x4800 - 0xFFFF (NROM-368)
For .NES File my design is this 48KB of ROM space:
Bank 0:
Memory 0x4000 - 0x401F (empty or ignored, all zeros?)
Memory 0x4020 - 0x7FFF (PRG)
Bank 1:
Memory 0x8000 - 0xBFFF (PRG)
Bank 2:
Memory 0xC000 - 0xFFFF (PRG)
Repos for the above built ROMs:
https://github.com/Akerasoft/hello_world_nrom_383
https://github.com/Akerasoft/hello_world_nrom_368
Last edited by akerasoft on Thu Jun 01, 2023 2:56 pm, edited 5 times in total.
Re: Mapper 472 / NROM-383 and NROM-368
Most coders are detached from reality because they only have software thinking rather than hardware thinking.
For you, $4020- $FFFF appears to have a wider addressing range than $4800- $FFFF. However, in actual design, the former requires a 16 bit numerical comparator, while the latter only requires A [11.. 15] as inputs to a chip of quad-NAND gates.
Therefore, you would understand why only NROM-368 is meaningful to implement NROM rather than over 368Kbits
For you, $4020- $FFFF appears to have a wider addressing range than $4800- $FFFF. However, in actual design, the former requires a 16 bit numerical comparator, while the latter only requires A [11.. 15] as inputs to a chip of quad-NAND gates.
Therefore, you would understand why only NROM-368 is meaningful to implement NROM rather than over 368Kbits
Re: Mapper 472 / NROM-383 and NROM-368
Actually. Both designs use an OR gate.
NROM-383 (uses 8 input OR gate, plus an extra 2 input Or gate).
NROM-368 (uses 4 input OR gate)
I tried to think about the comparator. I was not sure if that would actually work.
NROM-383 (uses 8 input OR gate, plus an extra 2 input Or gate).
NROM-368 (uses 4 input OR gate)
I tried to think about the comparator. I was not sure if that would actually work.
-
- Posts: 1494
- Joined: Thu May 19, 2005 11:30 am
Re: Mapper 472 / NROM-383 and NROM-368
Can you make it mapper 474, please? I have assigned mapper 472 and 473 for some multicart mappers already, but failed to update the wiki in time. 

Re: Mapper 472 / NROM-383 and NROM-368
Sure, it can be Mapper 474. Can the wiki be updated so that I don't have to change the number again?
-
- Posts: 1494
- Joined: Thu May 19, 2005 11:30 am
Re: Mapper 472 / NROM-383 and NROM-368
8 input OR gate is 5 times the price of quad 2-input NAND
Comparator has better versatility, but is rarer and more expensive in the market
Re: Mapper 472 / NROM-383 and NROM-368
.NES File Format - Mapper 474.
8 KB CHR
48KB PRG (3 banks)
Bank 0 - 0x4020 or 0x4800 to 0x7FFF (prepadded with zero's)
Bank 1 - 0x8000 to 0xBFFF
Bank 2 - 0xC000 to 0xFFFF
To make ROM bin files from NES file or make NES file from ROM bin files.
https://github.com/Akerasoft/Mapper474ROMTool
To resize an NROM to Mapper474
https://github.com/Akerasoft/NROMToMapper474
After having a Mapper474 .NES file you can HEX edit.
8 KB CHR
48KB PRG (3 banks)
Bank 0 - 0x4020 or 0x4800 to 0x7FFF (prepadded with zero's)
Bank 1 - 0x8000 to 0xBFFF
Bank 2 - 0xC000 to 0xFFFF
To make ROM bin files from NES file or make NES file from ROM bin files.
https://github.com/Akerasoft/Mapper474ROMTool
To resize an NROM to Mapper474
https://github.com/Akerasoft/NROMToMapper474
After having a Mapper474 .NES file you can HEX edit.
Re: Mapper 472 / NROM-383 and NROM-368
Re: Mapper 472 / NROM-383 and NROM-368
9 diodes can gate $4020-$403F, but I'm not sure if they can gate >=$4020
Re: Mapper 472 / NROM-383 and NROM-368
Update: ROMs and Repos for the sample ROMS was added.