4

The GBA has the "AGB CPU". Inside there Is an ARM7TDMI and to the memory interface there is a flash storage connected. All on one chip. The flash storage contains software similar to a PC's BIOS. It's called ROM but I think it must be updatable like any flash storage. The ROM is mapped to address 0. I could buy an empty cartridge and run a software which simply writes to address 0. But I don't know if this will work or if the processor will raise an exception. There is a second cpu on board (for classic games). Maybe this CPU let's me write to address 0 without raising an exception.

Any ideas? Also Nintendo must have had a way to write to the ROM.

3
  • 6
    I wouldn't be surprised if the ROM is built into the CPU as mask ROM, not flash. Nintendo did not need to write to it; they could have the chip manufactured with the code already there. Nothing Nintendo made had firmware updates (other than by replacing the whole system) before the Wii or DSi.
    – Hearth
    Commented Sep 4, 2022 at 16:45
  • @Hearth The DS had rewritable firmware, sort of. Not sure how it works exactly but it's how it saves the profile information (name, birthday, favourite color) and you can flash custom firmware by bridging two contacts on the PCB. wiki.gbatemp.net/wiki/FlashMe
    – Meatwad
    Commented Sep 18, 2022 at 7:53

1 Answer 1

9

Writing to ROMs of shipping hardware (as opposed to dev boards/and cartridges) is not possible. Mask ROMs are ROM chips that are one-time (factory) programmable and that are not Flash storage.

If any game was able to write to the system ROM, then you’d easily end up with bricked consoles, because a buggy game could errorneously write something to that memory (eg. when trying to write to a null pointer, or address 0).

The AGB Programming Manual doesn’t have details about how the System ROM is made, but it mentions cartridges consist of Mask ROMs, so it’s reasonable to assume the system ROM is also produced this way.

10
  • I’ve never heard of a Mask ROM. Back in the day, a plain old ROM was just that: read-only memory. (One-time) Programable ROMs were called PROMs, Erasable PROMs were EPROMs, and Electrically Erasable PROMs were EEPROMs. And none of it was NAND Flash RAM.
    – RonJohn
    Commented Sep 5, 2022 at 4:05
  • 2
    And a short time after "Back in the day", when IBM PC BIOS'ses were in PROMs or EPROMs, people still said things like "The BIOS can't be changed, it's in ROM". So inventing a term for "ROM that's not PROM or EPROM" kind of makes sense, doesn't it? Commented Sep 5, 2022 at 5:04
  • 6
    @RonJohn: Mask ROM is a technology (ROM "hardcoded" in an IC). There are/were other technologies for ROM (e.g. core rope memory, diode matrices, prob many others).
    – Mat
    Commented Sep 5, 2022 at 8:36
  • 3
    A 'Mask' ROM is a ROM that was created by the chip manufacturer in a similar way to a microprocessor. Basically, the transistors were 'fused' into the positions required to make it so that whatever patterns applied to the address bus, meant that the data bus output the correct pattern. They were VERY expensive and generally required orders of tens or hundreds of thousands, to be economically viable. Later mask roms were EPROMS with a different case, without the glass panel (which was used to erase them via ultraviolet light).
    – Neil
    Commented Sep 5, 2022 at 12:21
  • @Neil So Mask ROM is made out of the same components as logical gates? Is that right?
    – zomega
    Commented Sep 5, 2022 at 13:42

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .