Hello all,
I'm trying to understand what the correct address bus mapping is for ExLoROM and ExHiROM.
From what I've pieced together from other posts and websites (e.g. here) this seems to be the ExHiROM memory mapping:
1) Is the above bus mapping correct and will it work for Tales of Phantasia, Dai Kaiju Monogatari 2, Super Demo World, and the Bad Apple demo? Those are the only 4 ROMs that I know about that actually use ExHiRom.
2) What mapping does Star Ocean use? I know it's not ExHiRom...I'm guessing its ExLoRom?
3) What is the bus mapping for ExLoRom? It's even harder to find information on ExLoRom. Does ExLoROM actually connect CPU_A15 or is it still left unconnected like normal LoRom?
4) Fullsnes.txt refers to a "BigLoROM" format. Is that synonymous with ExLoROM?
5) Fullsnes.txt states, "Some LoROM games are bigger than 2Mbytes (eg. Super Metroid, Gunple, Wizardry 6, Derby Stallion 3), these have bank 0-3Fh mapped in the 32K LoROM banks as usually, and bank 40h and up each mapped twice in the 64K hirom banks." Is that referring to ExLoRom or is that describing yet another different mapping? The largest a standard LoRom game can be is 2MB (right?) so I'm assuming that it must be describing ExLoRom, however, I can't find the term ExLoRom anywhere in fullsnes.txt.
6) Are there any games at all that actually use CPU_A22?
7) Are there any games that use all 24 bits of the CPU address bus? I'm assuming not since I haven't seen any ROMs bigger than 8MB (aside from the Star Ocean No-SDD-1 hack).
I hope that's not too many questions for one post but I think they are all inter-related.
Thanks so much.
Jonathon
I'm trying to understand what the correct address bus mapping is for ExLoROM and ExHiROM.
From what I've pieced together from other posts and websites (e.g. here) this seems to be the ExHiROM memory mapping:
Code:
Bank Address Usage
00-3F 8000-FFFF ROM P1 (MIRROR)
40-7F 0000-FFFF ROM P1
80-BF 8000-FFFF ROM P0 (MIRROR)
80-BF 6000-7FFF RAM
C0-FF 0000-FFFF ROM P0
So I'm thinking that the respective address bus mapping would be the following (where "==>" means "connects to"):00-3F 8000-FFFF ROM P1 (MIRROR)
40-7F 0000-FFFF ROM P1
80-BF 8000-FFFF ROM P0 (MIRROR)
80-BF 6000-7FFF RAM
C0-FF 0000-FFFF ROM P0
Code:
CPU_A0-CPU_A21 ==> CART_A0-CART_A21
CPU_A22 ==> No Connect
CPU_A23 ==> Cart ROM0/ROM1 Chip-Select (specifically A23==1 ? ROM0_Enable : ROM1_Enable)
My questions:CPU_A22 ==> No Connect
CPU_A23 ==> Cart ROM0/ROM1 Chip-Select (specifically A23==1 ? ROM0_Enable : ROM1_Enable)
1) Is the above bus mapping correct and will it work for Tales of Phantasia, Dai Kaiju Monogatari 2, Super Demo World, and the Bad Apple demo? Those are the only 4 ROMs that I know about that actually use ExHiRom.
2) What mapping does Star Ocean use? I know it's not ExHiRom...I'm guessing its ExLoRom?
3) What is the bus mapping for ExLoRom? It's even harder to find information on ExLoRom. Does ExLoROM actually connect CPU_A15 or is it still left unconnected like normal LoRom?
4) Fullsnes.txt refers to a "BigLoROM" format. Is that synonymous with ExLoROM?
5) Fullsnes.txt states, "Some LoROM games are bigger than 2Mbytes (eg. Super Metroid, Gunple, Wizardry 6, Derby Stallion 3), these have bank 0-3Fh mapped in the 32K LoROM banks as usually, and bank 40h and up each mapped twice in the 64K hirom banks." Is that referring to ExLoRom or is that describing yet another different mapping? The largest a standard LoRom game can be is 2MB (right?) so I'm assuming that it must be describing ExLoRom, however, I can't find the term ExLoRom anywhere in fullsnes.txt.
6) Are there any games at all that actually use CPU_A22?
7) Are there any games that use all 24 bits of the CPU address bus? I'm assuming not since I haven't seen any ROMs bigger than 8MB (aside from the Star Ocean No-SDD-1 hack).
I hope that's not too many questions for one post but I think they are all inter-related.
Thanks so much.
Jonathon