Programming Cautions - Nintendo GAME BOY Programming Manual

Hide thumbs Also See for GAME BOY:
Table of Contents

Advertisement

Game Boy Programming Manual

4.5 Programming Cautions

4.5.1 When Migrating from MBC1 to MBC5
! Use of Register 1
If an MBC1 program uses register 1 (ROM bank control register) addresses 3000h-
3FFFh, the bank intended for selection by ROMB1 in MBC5 will not be selected.
Addresses 2000h-2FFFh of register 1 should be used by programs that use MBC1.
! Use of Register 2
Note that in MBC1, programs that use 8 Mbits or more use register 2 (ROM or RAM bank
control register) for the high ROM bank. Consequently, in MBC5 the RAM bank is different
while the ROM bank is unchanged.
! ROM Banks 20h, 40h, and 60h
ROM banks 20h, 40h, and 60h cannot be used in MBC1, but they can be used in MBC5.
! MBC1 Register 3 (ROM/RAM change)
Because the addresses of ROM and RAM are independent of each other in MBC5,
ROM/RAM switching is unnecessary.
Any write instructions to register3 left in a program that uses MBC1 are ignored by MBC5
and have no effect.
4.5.2 General Notes
! Memory Image
If a memory device is used that uses less than the maximum amount of memory available
(ROM: 64 Mbits; RAM: 1 Mbit) , a memory image is generated for the empty bank area.
Therefore, please do not develop software that uses an image, because it may cause
failures.
! RAM Data Protection
To protect RAM data, it is recommended that RAM access be disabled when RAM is not
being accessed (RAMG ← 00h) .
! Specifying External Sound Input (VIN)
Always use the sound control register (NR50) with bits 7 and 3 (VIN function OFF) set to
0. Because the VIN terminal is used in development flash ROM cartridges, using the
register with VIN set to ON will produce sound abnormalities.
226

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents