How to hack a pal game to a ntsc game!

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
How to hack a pal game to a ntsc game!
by on (#103161)
Anyone tell me:
How to hack a pal game to a ntsc game (or ntsc to pal)!
Re: How to hack a pal game to a ntsc game!
by on (#103162)
Depends on the game and what it does. Also depends whether you want it to play at 6/5 speed or not. If it takes advantage of the extended PAL vblank, you'll probably have a hard time.

Anyhow, start by learning the difference between NTSC and PAL. If you already know how to program an NES and hack a ROM, it should be fairly clear what you need to do from the differences. If you don't, then you will need to learn that first.

I doubt there's a generic way to describe how to hack PAL to NTSC that you could just take and apply if you aren't already a ROM hacker, and if you are, the wiki page I linked above should be pretty much all you need. The actual steps you need to take will be different for every game. (Some games will even run "ok" if you just put them in the other mode.)

If there is a specific game you are trying to port, let us know your progress, what you have tried, where you are stuck, etc.
Re: How to hack a pal game to a ntsc game!
by on (#103163)
It depends on why the game isn't compatible.
Some games rely on the PAL NES having a much longer vblank period, so there's more time to draw stuff. Games like Asterix would need their VRAM update code rewritten.
Some games are using timed code starting from the vblank, or starting from scanline -1, or starting from a sprite 0 hit. You can simply change the timing.
Some games need the music pitch adjusted back to NTSC notes.
Re: How to hack a pal game to a ntsc game!
by on (#103181)
I did hack a few games, and it innolved mainly 2 thins :
- I had to find the pitch table, and multiply all values by 15/16 (NTSC->PAL), for PAL->NTSC you'd have to multiply them by 16/15
- Find where the game have timed code for special video effects, and adjust the clock cycles for PAL (usually you'd do this with trial and error).
Re: How to hack a pal game to a ntsc game!
by on (#103215)
At one time, I did a hack that is still doable, I put Hebereke's Sound Engine in place of Ufouria's Sound engine...

This was essentially the only way to make a real NTSC version of Ufouria, and besides, other change is not needed to put it in, at least for this game, because the Game speed is the same in both PAL and NTSC!

IPS Patch: http://acmlm.kafuka.org/uploader/get.php?id=4339
Re: How to hack a pal game to a ntsc game!
by on (#103349)
Hamtaro126 wrote:
At one time, I did a hack that is still doable, I put Hebereke's Sound Engine in place of Ufouria's Sound engine...

This was essentially the only way to make a real NTSC version of Ufouria, and besides, other change is not needed to put it in, at least for this game, because the Game speed is the same in both PAL and NTSC!

IPS Patch: http://acmlm.kafuka.org/uploader/get.php?id=4339



Thanks!
And do you have a Gimmick IPS can hack Gimmick(E) to NTSC!
Re: How to hack a pal game to a ntsc game!
by on (#103359)
There shouldn't be a need to hack it; there is an NTSC gimmick prototype kicking around somewhere (I don't have it, personally, but I know one exists).
Re: How to hack a pal game to a ntsc game!
by on (#137846)
I wish someone did this for Super Turrican! Its just beyond my scope of programming, but I do understand what goes into it.

I read somewhere that this game can auto detect whether its being played on a PAL or NTSC system and change accordingly. Where did this rumor start?! (as its not true)
Re: How to hack a pal game to a ntsc game!
by on (#137848)
I don't know about Turrican, but Thwaite and RHDE both autodetect NTSC or PAL by measuring the time between two vblank NMIs. This triggers one of three speed settings, which have these effects in both games:
  • Famicom, NTSC NES, and NTSC famiclone mode (0): Normal
  • PAL famiclone (Dendy) mode (2): Increase movement speeds by 20%, increase music tempo by 20%, and repeat tasks that run every tenth of a second after 5 frames instead of 6
  • PAL NES mode (1): Same as Dendy mode, plus transpose the pitch up a semitone, and in RHDE, redraw up to half the playfield (15x24) every vblank instead of one-fifth of the playfield (6x24)
Codemasters games tend to do the same, just without any difference between Dendy and PAL NES because they weren't aware of Dendy.
Re: How to hack a pal game to a ntsc game!
by on (#137850)
I read somewhere that it auto detects. But when I tried it myself it doesnt, plus there is the PAL version, and then the NTSC prototype thats not being dumped. So A) if it DOES autodetect theres prob not a reason for the NTSC version and B) just turn off pal emulation on your emulator and there ya go, no difference. At least I think that might be it.

(BTW thats cool that it CAN be done)