Hack/Repro Question: Sunsoft's Hebereke

Are you new to 6502, NES, or even programming in general? Post any of your questions here. Remember - the only dumb question is the question that remains unasked.

Moderator: Moderators

teoma
Posts: 22
Joined: Sat Jun 16, 2007 6:46 am

Hack/Repro Question: Sunsoft's Hebereke

Post by teoma »

I'm trying to make an English localized version of Sunsoft's Hebereke. The famicom version uses mapper #69 so (as I am told) it is unable to be reproduced on a cart that can run on a ntsc system. Sunsoft made a PAL version of the game with altered (crappified) graphics, sound and script and renamed it Ufouria. I am currently doing a hack on the PAL version to restore the japanese title screen/sprites/music/script (it will be in english, but more accurate to the japanese version).

My question is, can a hacked PAL rom (more specifically, this hacked pal rom) work on ntsc system? I'm assuming it somehow uses a different mapper then the japan-only #69. I know very little (nothing in fact) about mappers, what they do and why they only work with specific systems. If it's not ntsc compatible, is there any way to hack the rom to replace the mapper? (if you can't tell yet, I really want a hard copy of this game ;) ) Thanks for the help, and sorry about the n00bish questions.
User avatar
Disch
Posts: 1848
Joined: Wed Nov 10, 2004 6:47 pm

Post by Disch »

Mapper #69 is not Famicom-only. Some US released games also used this mapper -- or at least a totally compatible mapper (Batman: Return of the Joker comes to mind).

However -- mapper 4 is definately much more common. So if you're looking to put this on a cart you might want to switch anyway. Mapper switching is definately very possible (I've done it several times with some hacks I've made in the past).

As far as NTSC/PAL compatibility go -- from a software standpoint.. the only things you have to worry about are:

- NTSC runs at ~60 FPS instead of ~50
- NTSC only has 20 scanlines of VBlank instead of 70
- NTSC's CPU runs at a slightly higher clock speed, so LUTs used for the music engine will need to be adjusted if you're converting. A tone played on NTSC will sound higher pitched than the same tone played on PAL.


Since Hebereke was designed for NTSC first, then moved to PAL, you don't really have much to worry about. You -could- just do a straight translation of Hebereke. That would probably be much easier than modifying Ufouria to work on NTSC.
dvdmth
Posts: 354
Joined: Wed Mar 22, 2006 8:00 am

Post by dvdmth »

The Japanese version uses mapper 69 (Sunsoft5 / FME-7), as you know, but it does not appear to use the mapper's extra sound channels, so the game is playable on an NTSC NES. There is one game (Batman: Return of the Joker, if I remember right) that uses mapper 69 in the US release, so US cartridges do exist with this mapper.

The PAL version uses mapper 4 (MMC3). A large number of games use this mapper, so finding a donor cart will almost certainly be easier. However, a PAL NES has different timing from the NTSC NES, so you will likely need to work on the code to adjust for the different timing (particularly the IRQ engine, which can cause graphical glitches if not adjusted to the correct timing).
"Last version was better," says Floyd. "More bugs. Bugs make game fun."
teoma
Posts: 22
Joined: Sat Jun 16, 2007 6:46 am

Post by teoma »

Thanks for the help. From what you guys said it seems easier to translate the japanese rom then japanify the european rom. It should be easy to translate since to some degree I can use the pal version for reference, but a few parts are both different from the pal version and difficult (for me) to translate.

"fupiyootsutsutsu
hapiyooootsutsutsu"

That sounds like he's crying to me (yotsutsutsu=boohoohoo?) but I can't figure out what he's saying before then. Is there any kind japanese soul that can help me with the more difficult parts? I'm just starting on this - so far I've only been working on graphics changes on the pal version - I still need to do a text dump of the famicom version.

Lastly - am I the only one that likes this game? For such a good game it seems odd that no one has translated it yet - its like a cross between SMB2 and metroid.
User avatar
Disch
Posts: 1848
Joined: Wed Nov 10, 2004 6:47 pm

Post by Disch »

You may want to check the forums at romhacking.net for script help. They have a messageboard dedicated to script questions and have lots of old translating pros to help out.

Also: I've played, beaten, and absolutely love Ufouria. ^^
User avatar
Hamtaro126
Posts: 783
Joined: Thu Jan 19, 2006 5:08 pm

Post by Hamtaro126 »

I Did some attempts on extracting Hebereke's japanese script, But I could not have it due to difficulties, Including making a Japanese Font table

Suggestion: Ask Kingmike for some help, And at least try ''Djinn Tile Mapper'' and download at Romhacking.net.

Good luck with the translation!

P.S. I posted a help thing on Romhacking.net about a year ago.

No, You are not the only one who loves Hebereke, I am a Hebereke fan
too. I know no Sunsoft music skills, but I know where it starts in the ram
and the music format is simular to Journey to Silius(RAF World in japan).

-Hamtaro126
teoma
Posts: 22
Joined: Sat Jun 16, 2007 6:46 am

Post by teoma »

I have finished ripping the text. You can download it here:

http://www.savefile.com/files/826391

I included both the Ufouria text and the Japanese Hebereke text so it should be pretty easy (if you know japanese at least). I put this on the romhacking.net forum too.
CaH4e3
Posts: 72
Joined: Thu Oct 13, 2005 10:39 am

Post by CaH4e3 »

http://cah4e3.shedevr.org.ru/misc/u4ia-res.rar

Text scripts here both for eng and jpn versions, script inserter (tscript) haven't support for multibyte chars, so you need to translate it to english first. ;)

This res files I'm was used to translate ufouria to russian language, but I'm too lazy to do dejap work. ;)
teoma
Posts: 22
Joined: Sat Jun 16, 2007 6:46 am

Post by teoma »

CaH4e3 wrote:http://cah4e3.shedevr.org.ru/misc/u4ia-res.rar

Text scripts here both for eng and jpn versions, script inserter (tscript) haven't support for multibyte chars, so you need to translate it to english first. ;)

This res files I'm was used to translate ufouria to russian language, but I'm too lazy to do dejap work. ;)
404. Документ не найден.

Bad link
CaH4e3
Posts: 72
Joined: Thu Oct 13, 2005 10:39 am

Post by CaH4e3 »

Oooops, sorry... My fault... Forgot to upload. Anyway there is rom inside. ;) I'll fix it as soon as possible. ;)
teoma
Posts: 22
Joined: Sat Jun 16, 2007 6:46 am

Post by teoma »

A few more questions:

Translation:
Is it bad form to dump the text as a gif file? (see my text dump link). I don't know what standard format is for japanese text so I just made a program that dumps all the text as it is displayed in game. I hope that doesn't make it more difficult to translate somehow.

Hacks:

1) B Button Run
Someone made a final fantasy hack like this. The problem is most of the characters in Hebereke move very slow. It would probably be easier just to edit their speeds but I think that would change the gameplay too much. A B Button Run would be nicer but I don't know how to insert code, I only know how to change the code that's already there. I found a cpu address that stores their x address but it's per 16pixel tile - the game seems to 'tween' its location as it moves between tiles. Just wanted to know how difficult this would be.

2) Mapper Swap
Hebereke(J) uses mapper 69 and Ufouria(E) uses mapper 4 which is much more common (i only know this because you people told me). I would like to switch the famicom rom's mapper to mapper 4 to make it easier to reproduce - but how do I do that? I don't know how to tell what type of mapper a rom uses or even what a mapper looks like in code (as opposed to graphics, level data, ect..) One would assume that Ufouria and Hebereke keep their mappers in the same place so swapping them would be easy - but as I said before I know very little about mappers.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

In code, a mapper looks like writes to non-RAM locations, usually as writes to $4020-$5FFF or as writes to $8000-$FFFF. To tell which mapper a game uses, check bytes 6 and 7 of the ROM per the iNES spec.

Luckily, MMC3 is a lot like FME-7, though it has fewer switchable banks. For a game that uses a lot of DPCM, such as any Sunsoft game, this could be difficult.
teoma
Posts: 22
Joined: Sat Jun 16, 2007 6:46 am

Post by teoma »

tepples wrote: Luckily, MMC3 is a lot like FME-7, though it has fewer switchable banks. For a game that uses a lot of DPCM, such as any Sunsoft game, this could be difficult.
Thanks - but since I have a pal rom with mmc3 code wouldn't it be easy to use that to change the famicom rom mapper? One would think that both roms have exactly the same code and that only the content (graphics, string tables, ect) would be different. The only code difference I can think of is the frame rate - pal is 50fps and famicom is 60fps.

ps - I found the xspeed byte - $0504 in ram. It's a single byte signed integer - 7f is a high positive number, 80 is a high negative number. All I need to do is find the 'max speed' byte - and add in code that increases this value if the b button is pressed.
User avatar
Bregalad
Posts: 8036
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Post by Bregalad »

I guess there is a LOT of differences between PAL and NTSC versions, including :
- Music code pitch table
- Music tempo
- Speed for each objects
- Mapper writes
- ROM and RAM banks layout
- ROM and RAM atributions : Some piece of code can be smilar, but mapped differently in memory (as well with variables).
teoma
Posts: 22
Joined: Sat Jun 16, 2007 6:46 am

Post by teoma »

I suppose you're right - I just hate ripping apart a good return of the joker cart. :(
Post Reply