

the entire area from 0xf00000 to 0xffffff is scanned for ROMTags.exec, normally mapped at 0xf80000, will very early in the process see if there's another ROM at 0xf00000, and jump to it if it appears to be valid.In particular, it confirms points 1 and 2 in pndc's answer: The commented disassembly of Exec by Markus Wandel provides some very useful information.

Firstly it seems that CDTV and CD32 do things slightly differently so I'll examine them separately. With the information in pndc's answer to this question I've been able to examine the various ROMs and I think I have the definitive answer.

Where do these ROMs appear in the memory map?.My questions are about how these extended ROMs work.

The Amiga CD32 also had an extended ROM, although I have heard (unconfirmed) that in practice it may have been two logically distinct ROMs put onto the same physical ROM IC. The CDTV-specific code wedges into the Kickstart 1.3 ROMs and executes on startup. The CDTV uses a standard 16-bit Kickstart 1.3 ROM in socket U13, exactly the same as the ROM in a 2000 or 500, with an additional pair of 8-bit EPROMs in sockets U34 and U35 containing the CDTV-specific code such as the audio player and the CD-ROM filesystem. The Commodore CDTV contained a normal Kickstart 1.3 ROM, plus an "extended ROM". Continuing my series of questions about Amiga ROMs :-)
