INES Mapper 017: Difference between revisions
m (re-add cat:bad ines mappers but with caveat) |
NewRisingSun (talk | contribs) (ROM nametables category) |
||
(16 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:INES Mappers | {{DEFAULTSORT:017}}[[Category:INES Mappers]][[Category:Mappers with cycle IRQs]][[Category:Mappers with scanline IRQs]][[Category:Mappers with ROM nametables]] | ||
'''iNES Mapper 017''' denotes ROM images that have been extracted from disk images for the ''Front Fareast Super Magic Card'' [[RAM cartridge]]. They represent games whose [[Game_Doctor/Magic_Card_FDS_Format#Front_Fareast_Super_Magic_Card_disks|Doctor Header file]] denotes a Super Magic Card disk (byte $0 bit 7 set, byte $7=$AA). Refer to the [[Super Magic Card]] article for details on bankswitching. The Super Magic Card's registers are initialized to: | |||
; Play mode, WRAM bank 0, 1 KiB CHR mode enabled | |||
[[Super_Magic_Card#Super_Magic_Card_mode_.28.244500.2C_write-only.29|$4500]] = $47 | |||
; PRG memory write-protected, two-screen mirroring | |||
[[Super_Magic_Card#1M_banking_mode_.28.2442FC-.2442FF.2C_write-only.29|$42FF]] = $20 | (verticalMirroring? 0x00: 0x10) | |||
; 4M banking mode enabled | |||
[[Super_Magic_Card#2M.2F4M_PRG_banking_mode_.28.2443FC-.2443FF.2C_write-only.29|$43FC]] = $00 | |||
; Initial PRG register content | |||
$4504 = Number of 8 KiB PRG banks -4 | |||
$4505 = Number of 8 KiB PRG banks -3 | |||
$4506 = Number of 8 KiB PRG banks -2 | |||
$4507 = Number of 8 KiB PRG banks -1 (originally [[Game_Doctor/Magic_Card_FDS_Format#Front_Fareast_Super_Magic_Card_disks|Doctor Header file]] byte $5) | |||
The [[iNES]] header may specify a [[INES#Trainer|512-byte trainer]] (corresponding to [[Game_Doctor/Magic_Card_FDS_Format#Front_Fareast_Super_Magic_Card_disks|Doctor Header file]]'s byte $0 bit 6 being set). The trainer must be loaded to an address originally denoted by the [[Game_Doctor/Magic_Card_FDS_Format#Front_Fareast_Super_Magic_Card_disks|Doctor Header file]]'s byte $2, and is here denoted by the NES 2.0 submapper. In its presence, instead of jumping to the game's reset vector on a hard reset, trainer offset +$000 must be JMPed to. | |||
Submapper Trainer load address | |||
0 $7000 | |||
1 $5D00 | |||
2 $5E00 | |||
3 $5F00 | |||
Battery-saving of WRAM content is not supported by any Magic Card model. Hard-resetting a game while restoring previously-saved WRAM content in emulators interferes with the correct operation of the trainer's program. | |||
Latest revision as of 00:15, 8 December 2021
iNES Mapper 017 denotes ROM images that have been extracted from disk images for the Front Fareast Super Magic Card RAM cartridge. They represent games whose Doctor Header file denotes a Super Magic Card disk (byte $0 bit 7 set, byte $7=$AA). Refer to the Super Magic Card article for details on bankswitching. The Super Magic Card's registers are initialized to:
; Play mode, WRAM bank 0, 1 KiB CHR mode enabled $4500 = $47 ; PRG memory write-protected, two-screen mirroring $42FF = $20 | (verticalMirroring? 0x00: 0x10) ; 4M banking mode enabled $43FC = $00 ; Initial PRG register content $4504 = Number of 8 KiB PRG banks -4 $4505 = Number of 8 KiB PRG banks -3 $4506 = Number of 8 KiB PRG banks -2 $4507 = Number of 8 KiB PRG banks -1 (originally Doctor Header file byte $5)
The iNES header may specify a 512-byte trainer (corresponding to Doctor Header file's byte $0 bit 6 being set). The trainer must be loaded to an address originally denoted by the Doctor Header file's byte $2, and is here denoted by the NES 2.0 submapper. In its presence, instead of jumping to the game's reset vector on a hard reset, trainer offset +$000 must be JMPed to.
Submapper Trainer load address 0 $7000 1 $5D00 2 $5E00 3 $5F00
Battery-saving of WRAM content is not supported by any Magic Card model. Hard-resetting a game while restoring previously-saved WRAM content in emulators interferes with the correct operation of the trainer's program.