Skeetendo

’Cause all games were better on the GBC

You are not logged in.

#1 2010-11-01 21:06:23

blackopient
Member
From: Houston, TX
Registered: 2010-11-01
Post 1/15

Pokemon G/S/C ROM Expansion?

I noticed Pokemon Prism, among other hacks have expanded the ROM's size to 4mb. I was curious as to how this was done, if there is a tool written to do it or how to manually do it via some form of hex editing. I've searched Google but found nothing.
I'm looking to do a serious Gold hack and it would be really nice to have all that extra space.

Thanks to anyone who knows how to do this.

:)


P.S. I love that there are still a select few keeping GB/C Hacking alive and well. Extremely helpful board you all have running here.

Last edited by blackopient (2010-11-01 21:08:47)

Offline

#2 2010-11-01 22:41:35

Sawakita
Administrator
Registered: 2010-10-16
Post 46/364

Re: Pokemon G/S/C ROM Expansion?

It's pretty simple (I've done the same thing in my hack). Generally you can use any Hex Editor to expand a file: if you use HexWorkshop just go at the end of the ROM and choose "Edit --> Insert..."
In Hexecute you have "Special --> Expand File..."

Number of bytes = 200000 [in hexadecimal], that is 2 MB added.

Make sure you insert at the END of the file.
Remember that you'll have to edit also the ROM header in the offset 0x148, that defines ROM size:

0148 ROM size:
0 - 256Kbit = 32KByte = 2 banks
1 - 512Kbit = 64KByte = 4 banks
2 - 1Mbit = 128KByte = 8 banks
3 - 2Mbit = 256KByte = 16 banks
4 - 4Mbit = 512KByte = 32 banks
5 - 8Mbit = 1MByte = 64 banks
6 - 16Mbit = 2MByte = 128 banks
$52 - 9Mbit = 1.1MByte = 72 banks
$53 - 10Mbit = 1.2MByte = 80 banks
$54 - 12Mbit = 1.5MByte = 96 banks

So in your case you'll have to put 07.

Learn more with this important doc

Last edited by Sawakita (2010-11-01 22:53:00)

Offline

#3 2010-11-02 01:53:22

51/701

Re: Pokemon G/S/C ROM Expansion?

Do note that expanding the ROM beyond 2MiB will remove the real‐time clock features. In theory, at least—I'm not sure if emulators will make the distinction.

#4 2010-11-03 03:10:34

koolboyman
Member
Registered: 2010-10-16
Post 13/203

Re: Pokemon G/S/C ROM Expansion?

IIMarckus wrote:

Do note that expanding the ROM beyond 2MiB will remove the real‐time clock features. In theory, at least—I'm not sure if emulators will make the distinction.

The clock simply stops working if you expand the ROM.  It just stays at the time you set at the beginning of the game forever. You'll have to reprogram the clock yourself if you want it to work.

Offline

#5 2010-11-03 18:09:04

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 313/3,508

Re: Pokemon G/S/C ROM Expansion?

Although, if the clock isn't important to you, you can manually set it to daytime and then disable the time-setting script.

Offline

#6 2010-11-05 14:05:21

blackopient
Member
From: Houston, TX
Registered: 2010-11-01
Post 2/15

Re: Pokemon G/S/C ROM Expansion?

Awesome, didn't expect such a detailed response so quickly. :)
I wasn't aiming to use the real-time clock feature anyway, but great to know. Leaves room for more tileset palettes.
Thanks again.

Offline

#7 2010-11-05 16:15:27

52/701

Re: Pokemon G/S/C ROM Expansion?

Sawakita wrote:

It's pretty simple (I've done the same thing in my hack). Generally you can use any Hex Editor to expand a file: if you use HexWorkshop just go at the end of the ROM and choose "Edit --> Insert..."
In Hexecute you have "Special --> Expand File..."

Number of bytes = 200000 [in hexadecimal], that is 2 MB added.

Make sure you insert at the END of the file.
Remember that you'll have to edit also the ROM header in the offset 0x148, that defines ROM size:

0148 ROM size:
0 - 256Kbit = 32KByte = 2 banks
1 - 512Kbit = 64KByte = 4 banks
2 - 1Mbit = 128KByte = 8 banks
3 - 2Mbit = 256KByte = 16 banks
4 - 4Mbit = 512KByte = 32 banks
5 - 8Mbit = 1MByte = 64 banks
6 - 16Mbit = 2MByte = 128 banks
$52 - 9Mbit = 1.1MByte = 72 banks
$53 - 10Mbit = 1.2MByte = 80 banks
$54 - 12Mbit = 1.5MByte = 96 banks

So in your case you'll have to put 07.

Learn more with this important doc

The MBC5 also supports 8MiB (512 banks), though I don’t know of any commercial games that were that large.

#8 2010-11-06 18:35:37

koolboyman
Member
Registered: 2010-10-16
Post 14/203

Re: Pokemon G/S/C ROM Expansion?

IIMarckus wrote:
Sawakita wrote:

It's pretty simple (I've done the same thing in my hack). Generally you can use any Hex Editor to expand a file: if you use HexWorkshop just go at the end of the ROM and choose "Edit --> Insert..."
In Hexecute you have "Special --> Expand File..."

Number of bytes = 200000 [in hexadecimal], that is 2 MB added.

Make sure you insert at the END of the file.
Remember that you'll have to edit also the ROM header in the offset 0x148, that defines ROM size:

0148 ROM size:
0 - 256Kbit = 32KByte = 2 banks
1 - 512Kbit = 64KByte = 4 banks
2 - 1Mbit = 128KByte = 8 banks
3 - 2Mbit = 256KByte = 16 banks
4 - 4Mbit = 512KByte = 32 banks
5 - 8Mbit = 1MByte = 64 banks
6 - 16Mbit = 2MByte = 128 banks
$52 - 9Mbit = 1.1MByte = 72 banks
$53 - 10Mbit = 1.2MByte = 80 banks
$54 - 12Mbit = 1.5MByte = 96 banks

So in your case you'll have to put 07.

Learn more with this important doc

The MBC5 also supports 8MiB (512 banks), though I don't know of any commercial games that were that large.

I remember there being some Japanese Bullet Train simulation game for the GBC that was 8 MB.

Offline

#9 2010-11-07 00:03:37

tekcoR
Member
From: Celadon City
Registered: 2010-10-16
Post 27/165

Re: Pokemon G/S/C ROM Expansion?

koolboyman wrote:

I remember there being some Japanese Bullet Train simulation game for the GBC that was 8 MB.

Densha De Go! 2
A nifty train simulation series, with nice graphics. ( 1, 2, 3)


Cya

Offline

Board footer

Powered by FluxBB