Tools for translating famicom games?

godreborn

Welcome to the Machine
Member
Joined
Oct 10, 2009
Messages
38,471
Trophies
3
XP
29,138
Country
United States
probably. you'd need some way to access the text and another to fix text boxes, since Japanese generally takes up less space. I've seen some translations mess that up by allowing text to go outside of a text box or something. I've not translated a famicom game, but I have accessed text of an English game before and changed some of the text. however, that was 15+ years ago. I think it was final fantasy 1 I changed. it might've been through hex, which won't work unless the text was the same length. it worked in game, no crash.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
Same way you go about translating other games, just with a NES emulator (FCEUX is probably what most would suggest, and it has one of the best), NES hardware docs and knowledge that being 8 bit and space at a massive premium (the way the devs worked around this was to use so called mappers, https://wiki.nesdev.com/w/index.php/List_of_mappers so be aware of that one, technically you can change mapper but it is not an easy task) then you might not have as easy a time as say the GBA where you have a lot more options and more space than you are likely to ever need. At the same time the simplicity of at least some aspects of the NES also attracts a lot of people bored of fiddly stuff elsewhere.

Just like other games on other systems you will get to learn about table files, formatting codes and pointers to edit text, tiles and palettes for graphics (and fonts), music hardware for music and general approaches to code and data representation for editing levels and adjusting the game flow. There are usually a million different ways to approach problems in coding so every game is unique, save perhaps some sequels and often between regions, so there is not and will never be a universal tool short of some kind of super AI.
 

Zhongtiao1

Well-Known Member
OP
Member
Joined
Feb 24, 2015
Messages
831
Trophies
0
Age
26
XP
2,765
Country
United States
Same way you go about translating other games, just with a NES emulator (FCEUX is probably what most would suggest, and it has one of the best), NES hardware docs and knowledge that being 8 bit and space at a massive premium (the way the devs worked around this was to use so called mappers, https://wiki.nesdev.com/w/index.php/List_of_mappers so be aware of that one, technically you can change mapper but it is not an easy task) then you might not have as easy a time as say the GBA where you have a lot more options and more space than you are likely to ever need. At the same time the simplicity of at least some aspects of the NES also attracts a lot of people bored of fiddly stuff elsewhere.

Just like other games on other systems you will get to learn about table files, formatting codes and pointers to edit text, tiles and palettes for graphics (and fonts), music hardware for music and general approaches to code and data representation for editing levels and adjusting the game flow. There are usually a million different ways to approach problems in coding so every game is unique, save perhaps some sequels and often between regions, so there is not and will never be a universal tool short of some kind of super AI.

Ah, okay. Thanks for the explanation! I'm mainly interested in translating the bootleg Chinese games fron nanjing and waixing. They somehow managed to get 16 bit characters into their games
 

godreborn

Welcome to the Machine
Member
Joined
Oct 10, 2009
Messages
38,471
Trophies
3
XP
29,138
Country
United States
Ah, okay. Thanks for the explanation! I'm mainly interested in translating the bootleg Chinese games fron nanjing and waixing. They somehow managed to get 16 bit characters into their games

should've known it was Chinese based on zhong - guo in your name.
 

Zhongtiao1

Well-Known Member
OP
Member
Joined
Feb 24, 2015
Messages
831
Trophies
0
Age
26
XP
2,765
Country
United States
Best way is to go to this:

http://www.romhacking.net

They are the best for you and they can help answer your questions better than here.

Yeah, I'm waiting on a reply from there, but I thought I'd ask here as well. The main issue I'm having is that nothing can put the ROMs into readable text. No hex editor supports the weird configuration of these Chinese ROMs
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
Ah, okay. Thanks for the explanation! I'm mainly interested in translating the bootleg Chinese games fron nanjing and waixing. They somehow managed to get 16 bit characters into their games
That gets slightly more fun as many lists will have HK mappers, that being short for Hong Kong mappers. This being mappers used by various China based fans and pirates that do their own thing somewhat and might have some interesting abilities. Fundamentals of encoding, pointers and fonts still apply though.

8 bit CPU does not mean 16 bit text is not possible, quite easy in fact. Not as common when they can get away with it as space was at a premium and when they did they are more likely to have a very odd scheme between screens (though one I could still imagine seeing on a Switch game tomorrow -- I was still getting DS games have it routinely). What ostensibly modern fan games will have done is a different matter entirely.
Afraid I have not seen much discussion of the encoding schemes but there are a few people that did various things with these games as far as translating them already (saw the various Sonic in whatever efforts and Final Fantasy 7 NES edition discussed at points).
 

Zhongtiao1

Well-Known Member
OP
Member
Joined
Feb 24, 2015
Messages
831
Trophies
0
Age
26
XP
2,765
Country
United States
That gets slightly more fun as many lists will have HK mappers, that being short for Hong Kong mappers. This being mappers used by various China based fans and pirates that do their own thing somewhat and might have some interesting abilities. Fundamentals of encoding, pointers and fonts still apply though.

8 bit CPU does not mean 16 bit text is not possible, quite easy in fact. Not as common when they can get away with it as space was at a premium and when they did they are more likely to have a very odd scheme between screens (though one I could still imagine seeing on a Switch game tomorrow -- I was still getting DS games have it routinely). What ostensibly modern fan games will have done is a different matter entirely.
Afraid I have not seen much discussion of the encoding schemes but there are a few people that did various things with these games as far as translating them already (saw the various Sonic in whatever efforts and Final Fantasy 7 NES edition discussed at points).

The main issue I'm having is that I can't find a hex editor that can read them. FCEUX doesn't help either as it just keeps jumping around
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
The main issue I'm having is that I can't find a hex editor that can read them. FCEUX doesn't help either as it just keeps jumping around

Getting a hex editor that out of the box reads a game is a rarity, a pleasant surprise if it happens (and even if it appears that way you probably still have more work to do). Normally you get to spend a lot of time fiddling before you get to anything like being able to maybe read the text strings in a game with a hex editor, and even then won't want to do much editing in it bar correcting a typo.

To that end find where the text is in the game (corruption, tracing, elimination, pointer inference, relative search... it matters not) and then you get to figure out how it is encoded.
Chinese, much like Japanese, does not have a character ordering like we see in Roman alphabet languages so you miss out on a few things there. However as there are also potentially thousands of characters (though likely less than that -- most will only pick what they need on older systems as even storing that many characters with no space left over for the game itself is a big ask for a NES) then you have things like most common character first, order they appear in the script in addition to just borrowing the same order as Guobiao or Big5 (even if not using them). The game might also use unique encodings for every screen/scene in the game, and you might even see the return of half width encodings.

Once you found the text location and made a listing of all what each hex might correspond to as a character (the big list of all of them being known as a table file) you get to load it up in a specialist hex editor that supports table files (not many normal hex editors will do this, Crystaltile2 has some options here but romhacking.net will house a bunch more).

FCEUX jumping around is what it does. You need to constrain it to do what you want.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: @OctoAori20, Cool. Same here.