Zophar's Message Domain

Go Back   Zophar's Message Domain > Emulation Talk > Rom Hack

Reply
 
Thread Tools Display Modes
Old 10-22-2004, 05:05 PM   #1
TFG
Junior Member
 
Join Date: May 2003
Posts: 11
Default NES rom expansion (tutorials)

In these two documents I attempt to explain the basics of NES rom expansion. It's a tabu topic for NES hacking newbies. What most people don't realize it's that it is very easy to implement and it's a great aid for romhacks/translations.

<a href=http://tfg.panicus.org/files/docs/nesromexp.TXT> NES rom expansion 101</a>

<a href=http://tfg.panicus.org/files/docs/nes_rom_exp102.zip> NES rom expansion 102</a>

EDIT:
- Fixed both documents to 80ish columns.
- Fixed a mistake in one of the code examples. (Thanks to Disch for pointing it out)

TFG.

<P ID="signature"></P><P ID="edit"><FONT class="small">Edited by TFG on 10/22/04 02:30 PM.</FONT></P>
TFG is offline   Reply With Quote
Old 10-23-2004, 08:27 AM   #2
Gavin_86
Senior Member
 
Join Date: Aug 2002
Posts: 1,082
Default Re: NES rom expansion (tutorials)

great work TFG, these tutorials really are great. And as you say, they do a very nice job demonstrating that there is far too much stigma attatched to NES Rom expansion. well played bro <img src=smilies/thumb.gif>

<P ID="signature"><center>I'm just a Paranoid Android watching through my superb crystal viewing glass

.::http://gavin.panicus.orgGavin.Panicus.org</a> ::.
</center></P>
Gavin_86 is offline   Reply With Quote
Old 10-23-2004, 09:46 PM   #3
Gil-Galad
Senior Member
 
Gil-Galad's Avatar
 
Join Date: Aug 2000
Posts: 658
Default Re: NES rom expansion (tutorials)

I agree those documents are pretty good. Now all you gotta do is make 103 and maybe do mapper 1 or mapper 4 which is a hell of a lot harder.

<P ID="signature"></P>
Gil-Galad is offline   Reply With Quote
Old 10-23-2004, 10:32 PM   #4
Gavin_86
Senior Member
 
Join Date: Aug 2002
Posts: 1,082
Default Re: NES rom expansion (tutorials)

> I agree those documents are pretty good. Now all you gotta
> do is make 103 and maybe do mapper 1 or mapper 4 which is a
> hell of a lot harder.

yah seriously, addressing 512k with MMC1 is both weird and annoying <img src=smilies/banghead.gif>

<P ID="signature"><center>I'm just a Paranoid Android watching through my superb crystal viewing glass

.::http://gavin.panicus.orgGavin.Panicus.org</a> ::.
</center></P>
Gavin_86 is offline   Reply With Quote
Old 10-23-2004, 11:35 PM   #5
TFG
Junior Member
 
Join Date: May 2003
Posts: 11
Default Re: NES rom expansion (tutorials)

> I agree those documents are pretty good. Now all you gotta
> do is make 103 and maybe do mapper 1 or mapper 4 which is a
> hell of a lot harder.
>

Indeed, I'm looking forward to add/convert a game to Mapper 4. However, I'm trying to figure out a different approach. Other than slap-a-zillion-of-asm-hacks-and-you're-off.

Any suggestions?

<P ID="signature"></P>
TFG is offline   Reply With Quote
Old 10-23-2004, 11:55 PM   #6
Disch
Senior Member
 
Join Date: Apr 2001
Posts: 4,387
Default Re: NES rom expansion (tutorials)

> Indeed, I'm looking forward to add/convert a game to Mapper
> 4. However, I'm trying to figure out a different approach.
> Other than slap-a-zillion-of-asm-hacks-and-you're-off.
>
> Any suggestions?

Most games probably only have 1 routine they call for bankswapping. Find that routine, and replace it with a new routine which does the same thing but interacts with the new mapper. There's also the mapper prep stuff which is typically done in (or near) the Reset routine.

It's not really that hard if you know what you're doing (of course, it really all depends on the game). But you're not going to be able to write a dummy's guide for it. It's ultimately going to come down to the person having to have a good understanding of how all that stuff works. And those kinds of people generally don't need to read tutorials on the subject.

<P ID="signature"></P>
Disch is offline   Reply With Quote
Old 10-24-2004, 01:35 AM   #7
Gavin_86
Senior Member
 
Join Date: Aug 2002
Posts: 1,082
Default Re: NES rom expansion (tutorials)

but things could get tricky with mapper setup and bankswitching routines when it comes to the number of bytes required to achieve the desired results. Like how Mapper 1 has the tedious and byte consuming style of writing 1 bit at a time into it's registers because of the number of ports available. Or if you're changing a mapper and the game splits of mapper functions that normally can be taken care of in 1 register to 2-3 separate registers requiring more code <img src=smilies/retard.gif>

<P ID="signature"><center>I'm just a Paranoid Android watching through my superb crystal viewing glass

.::http://gavin.panicus.orgGavin.Panicus.org</a> ::.
</center></P>
Gavin_86 is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 12:17 PM.

Contact Us - Zophar's Domain - Archive - Top

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.