== Common ROM Bank Numbers ==
00h BASIC (or AMSDOS, depending on LK1 on the DDI-1 board. On CPC, if AMSDOS sees itself mapped to bank 0, then it does automatically load & start the boot sector from drive A after power-up. On Plus, there is [[LK Links|a bug in the System cartridge]] that will cause the machine to crash instead.)
07h AMSDOS (or BASIC, depending on LK1 on the DDI-1 board)
00h..07h Bootable ROMs on CPC 464/664/6128 (KL_ROM_WALK)
== Other Bank Numbers ==
* [[Utopia]] should always be in an upper slot than [[UniDOS]]. Utopia in lower slot than UniDOS will disable some UniDOS [[RSX]]. [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/m4-unidos-and-cpcatx4/msg249541/#msg249541 Source]
* [[ROM List]] listing of known ROM-based software
* You may want to add a list of devices with ROM here, please also include their fixed bank number(s), or selectable range of bank number(s))
== ASIC ROM numbering system ==
On CPC, this port is really simple. It simply accepts a any logical ROM number from 0-255.
On Plus, this port behaves in 2 modes, indicated by bit7:
*ROM 7: Burnin' Rubber ROM 3
By default, just like on Amstrad CPC, if there are no peripherals issuing ROMDIS=HIGH, then BASIC (or more precisely: Physical ROM 1 ) is mapped to all logical ROM 0 and physical ROM 3 is mapped to logical ROM 7banks (in range of 00h..7Fh).
Logical ROMs And on 6128+ only, physical ROM 3 is mapped to logical ROM 7. The ASIC is configured not to map it on 464+ and GX4000, even if a 6128+ cartridge is inserted. <br> === Summary === On Amstrad CPC, there is only 1 lower rom (the firmware), and up to 256 upper roms. On Amstrad Plus:* Each cartridge contains up to 32 physical roms.* The first 8 physical roms can be replaced by using accessed as lower roms. And all the 32 physical roms can be accessed as upper roms. A physical rom can even be mounted both as lower rom and upper rom at the same time.* ROM boards are seen as logical roms. They can be accessed only as upper roms and there can be up to 128 logical roms. <br> == Warning for ROM boards == On CPC 6128 and DDI-1, the internal ROM 7 can't be cleanly disabled (it works on some machines, but it means the internal ROM and the flash chip both use the memory bus at the same time, and it happens that the flash chip is stronger in this fight. But it could eventually damage the hardware). [https://pulkomandy.github.io/shinra.github.io/gordon.html Source] On Plus and machines without disk drives, the internal ROM 7 can safely be disabled. ROM 0 can always be overloaded, but remember that you will not boot to the BASIC in that case ([[Hackit|the Hacker ROM]] is a popular replacement ROM box while physical ROMs cannot 0, for example). In-depth hardware details for creating your own ROM expansion can be replacedfound there: https://pulkomandy.github.io/shinra.github.io/gordon.html <br>
[[Category:Programming]][[Category:Memory expansions]][[Category:Peripherals]][[Category:CPC Internal Components]]