News: 11 March 2016 - Forum Rules, Mobile Version
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia

Author Topic: Translations of early Famicom games  (Read 14564 times)

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Translations of early Famicom games
« on: June 02, 2017, 04:55:57 am »
I thought I'd start a new thread in the Personal Projects section, as I've started a little project: going through the earliest Famicom games in order and trying to get everything translated.

Before MMC chips gave Famicom/NES games access to lots of memory, there wasn't much space for anything, especially graphics. So most of the early games are either already in English, or have very little text at all. So, I just wanted to try to get as many games translated as possible. I'm going by the list of Famicom releases on Famicom World:
http://famicomworld.com/game-list/?fc=1&o=1&order=release&q=

Some early games have already been translated: Popeye no Eigo Asobi, 4 Nin Uchi Mahjong, Kekkyoku Nankyoku Daibouken, Ninja Jajamaru-kun, Penguin-kun Wars, and Portopia Renzoku Satsujin Jiken (a particularly cool translation, as it's the first Famicom game with a text focus). This goes up to the end of 1985, and there are a few games left over. Mostly it's just title screen hacks, but there are one or two exceptions.

I've already done Ikki, a simple title hack. I've submitted it to the database but this is what it looks like anyway:


Now I'm working on two other games: Choujikuu Yousai - Macross (a title hack) and Gomoku Narabe Renju (a full translation, but there's not a lot of text there).

Macross has an interesting (to me) title because it uses a mixture of BG and OBJ tiles.

Here's the title:

and here it is without the BG tiles:


Obviously it uses the horizontal/vertical flipping abilities of OBJ tiles to save ROM space. I've been learning about sprites and I think I'll be able to do it. Just need to draw a nice picture, now.

As for Gomoku, it's a bit more involved, but the main thing I've found is how the game determines if it uses 8x16 or 8x8 sprites. In the main game screen it uses 8x16:

So when I turn that flag off it looks like this:

The question is whether it's worth switching to 8x8, given the amount of extra crap I'll then have to deal with (adding more sprites to compensate etc). There's room for more sprites, but the ROM will be the problem.

That's all I can show for now, I'll be interested to see any comments you may have! :)
« Last Edit: June 02, 2017, 05:06:46 am by Psyklax »

rainponcho

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
Re: Translations of early Famicom games
« Reply #1 on: June 02, 2017, 07:54:48 am »
I like what you're doing so far! Even if it's just title screen translations. :)
(especially since you know what to do, and maybe need just small random help once in a while)

Old obscure games could use more love. Even if it's some shougi game. :haha:


For Gomoku, 8x16 would save you "oam" space. I'd just draw two lines of 8x8 text and shrink the digits down to 8x10 or comparable size; fonts won't stand out too much from each other. Add a few more 8x16 oam tiles to expand text and da da dum! You'll be competing for hacker of the month. :mrgreen:

Pennywise

  • Hero Member
  • *****
  • Posts: 2136
  • I'm curious
    • View Profile
    • Yojimbo's Translations
Re: Translations of early Famicom games
« Reply #2 on: June 02, 2017, 09:57:33 am »
There's already a title screen hack for Macross, but it's in the hacks section.

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Re: Translations of early Famicom games
« Reply #3 on: June 02, 2017, 10:06:42 am »
Thanks for your interest. :)

I'm a little confused by your suggestions, however. I've never heard the term "oam" before, and I don't entirely follow your text ideas.

The problem with 8x16 sprites is I'll have to put text in entirely new graphic tiles (wasting ROM space) whereas with 8x8 I can just use the regular alphabet. 8x16 means it'll take the tile below it in ROM, and I can't use odd numbered tiles.

The problem with 8x8 sprites is I'll need more ROM space to detail all the new sprites I'll need to create. Without jumping to empty ROM space (and I doubt there's much of that), adding more sprites would be more trouble than it's worth.

I think I'll just have to leave it at 8x16. The extra tiles necessary are offset by the amount of unnecessary kanji in the CHR-ROM. Anything that's not a sprite can be done letter by letter.

Of course I may have simply misunderstood you and you already know all this. :) Nevertheless I'll keep working. I'm now wondering how to make a nice title screen (the original is quite space-saving, so I may have to be creative).

Re Macross: damn, I didn't think to check the hacks! That title looks awesome. Guess I can shelve Macross then, although that title hack really ought to be in translations, since it adds "Macross" in Latin letters below it.

rainponcho

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
Re: Translations of early Famicom games
« Reply #4 on: June 02, 2017, 10:39:39 am »
Oh! That's crazy messier than I thought. Good thing I'm not doing translations really at all - they'd get retranslated+ anyway later. :angel:

You're more capable at this than I am, so good luck to you! ;)


{OAM ~~ (s)nes sprite memory storage on the ppu chip. It's where you upload the x,y,tile,attr data to get drawn.}

goldenband

  • Full Member
  • ***
  • Posts: 245
    • View Profile
Re: Translations of early Famicom games
« Reply #5 on: June 02, 2017, 12:08:50 pm »
I thought I'd start a new thread in the Personal Projects section, as I've started a little project: going through the earliest Famicom games in order and trying to get everything translated.

You are (as the kids say these days) my new favorite person! I've been hoping someone would do something exactly like this. :) Among other things, it makes entire chronological windows of the Famicom library -- in this case, up to 1985 -- fully accessible to English-speakers, which in turn can totally change our perspective on the system's historical progression.

Re Macross: damn, I didn't think to check the hacks! That title looks awesome. Guess I can shelve Macross then, although that title hack really ought to be in translations, since it adds "Macross" in Latin letters below it.

It also doesn't translate the game's subtitle "Super Dimension Fortress", which sort of defeats the purpose since that's the part whose meaning is harder to grasp (a lot more people can sound out マクロス than parse 超時空要塞).

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Re: Translations of early Famicom games
« Reply #6 on: June 04, 2017, 09:16:35 am »
Just an update to say that progress on Gomoku is continuing. Well, I say progress: there's precious little actual text in the game, I just need to figure out the technical details of how to do it. The main sticking point I have right now is sprites. The title screen is trivial, and the in game messages to explain how someone won or lost are simple enough, but there are sprites in game on the right hand side which say the difficulty level, time limit, score, and some odd things which seem to connect to the Japanese lunar calendar or something (this is my only translation problem).

I don't really understand how, in the ROM, to change what sprites are used etc. For example, I can see in the ROM where a particular sprite is, but how it gets to RAM and thus the PPU, and how xy position is affected, is still a bit of a mystery. Once the technical details are understood, the actual translation will take no time at all.

Anyone with experience of hacking NES sprites want to point me in the right direction? I was thinking about debug breakpoints and all that, but haven't got very far with it yet.

marioxb

  • Full Member
  • ***
  • Posts: 101
    • View Profile
Re: Translations of early Famicom games
« Reply #7 on: June 04, 2017, 11:31:59 am »
It also doesn't translate the game's subtitle "Super Dimension Fortress", which sort of defeats the purpose since that's the part whose meaning is harder to grasp (a lot more people can sound out マクロス than parse 超時空要塞).

http://www.romhacking.net/hacks/2617/

Maybe just put Super Dimension Force in regular text above Macross? Maybe it would be fun to make a Robotech version too?

Also, you gotta change that "To start push" to "Push Start".

KingMike

  • Forum Moderator
  • Hero Member
  • *****
  • Posts: 6175
  • *sigh* A changed avatar. Big deal.
    • View Profile
Re: Translations of early Famicom games
« Reply #8 on: June 04, 2017, 12:05:17 pm »
I don't really understand how, in the ROM, to change what sprites are used etc. For example, I can see in the ROM where a particular sprite is, but how it gets to RAM and thus the PPU, and how xy position is affected, is still a bit of a mystery. Once the technical details are understood, the actual translation will take no time at all.
Do you know ASM?
It's usually pretty easy to find sprite data.
Most if not all NES games will store sprite data in $100 byte page of RAM. Open the debugger in FCEUX and set a write breakpoint for $4014 (which copies that $100 byte page to SPR-RAM), and it will probably instantly break, usually a STA to $4014, with the A value thus being the page (ie. 02 = RAM $200-2FF is the sprite table). Each sprite is 4 bytes, I believe they are Y, tile ID, tile attributes, X in order. IIRC didn't 8x16 mean it took the tile from the regular tileset (either the "left" or the "right" tileset) and then the second from the opposite tileset?
Quote
Sir Howard Stringer, chief executive of Sony, on Christmas sales of the PS3:
"It's a little fortuitous that the Wii is running out of hardware."

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Re: Translations of early Famicom games
« Reply #9 on: June 04, 2017, 01:56:39 pm »
I'm learning ASM as I do these projects. :D

I don't think I explained my position clearly enough. I know where the sprite data is stored (it is at $200 in this case) but I didn't understand how it got there. After spending a couple of hours going through the instructions, I've worked out how it does it (in this game, anyway). When you start a game, it saves which skill level you chose, then looks at that in a subroutine that stores the appropriate tile numbers in the sprite data. That's for the first kanji (which tells you your level). For the second kanji (that just says "level"), the 4-byte sprite data is just sitting amongst the regular instructions in the ROM, and the game eventually pastes that into the sprite data, too.

The problem I have is that the second kanji is used for all three levels, whereas it'd be nice to have the flexibility of using different tiles for different levels (so I can use 2x4 tiles instead of 2x2 plus another 2x2 which is always the same). The easy option is just to print "1L" "2L" and "3L" or whatever, but that's a bit lame. Writing "easy game", "hard game" for example, would look better. But I feel that changing the code to give me a different choice for all three levels would be more trouble than it's worth. I could just make a subroutine in the empty space at the end of the PRG-ROM and jump to it, but I'd have to figure out where to do it. Plus that routine for the second kanji is used in plenty of other situations. I'll keep exploring for a bit, but eventually I may just have to leave it and take the easy route.

IIRC didn't 8x16 mean it took the tile from the regular tileset (either the "left" or the "right" tileset) and then the second from the opposite tileset?

Not quite: it takes two bytes instead of one, and it knows which tileset to use by whether you used an odd or even number. So using 9C will take 9C and 9D from the left tileset, and 9D will take 9C and 9D from the right tileset.

(Christ, never thought I'd be explaining a bit of NES information to KingMike, I feel awkward :laugh: )

FlashPV

  • Full Member
  • ***
  • Posts: 140
    • View Profile
    • Terminus Traductions
Re: Translations of early Famicom games
« Reply #10 on: June 04, 2017, 03:39:04 pm »
I've already done a title screen translation for Temple Labyrinth Dababa.
If there are some other games that just need to have their title screens translated feel free to ask me I'll be glad to help.

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Re: Translations of early Famicom games
« Reply #11 on: June 04, 2017, 07:32:08 pm »
I've already done a title screen translation for Temple Labyrinth Dababa.
If there are some other games that just need to have their title screens translated feel free to ask me I'll be glad to help.

I haven't got into FDS at all yet, but maybe I will some day. I think I'll be fine with hacking title screens - that's the easy part. Digging into the ASM is the hard part. :D

Speaking of ASM, I've solved my problem from before by simply writing LVL1 etc. I had to write a new ASM subroutine to replace the existing one in order to get things right in-game. Given that I knew nothing about ASM until two weeks ago, I'm quite proud of that. :D

Take a look at the title screen:

Obviously the title itself will come last once I can think of a nice way to do it: the existing logo is done with several simple shapes to save ROM space, but given I don't need a whole bunch of kanji I think I can just use all that space for a new logo.

If my progress continues at this pace it should be done pretty soon.

Spinner 8

  • RHDN Patreon Supporter!
  • Sr. Member
  • *****
  • Posts: 447
  • Pink Pretty Princess
    • View Profile
Re: Translations of early Famicom games
« Reply #12 on: June 04, 2017, 09:35:07 pm »
http://www.romhacking.net/hacks/2617/

Maybe just put Super Dimension Force in regular text above Macross? Maybe it would be fun to make a Robotech version too?

Also, you gotta change that "To start push" to "Push Start".

"Press Start" would probably be more correct.

goldenband

  • Full Member
  • ***
  • Posts: 245
    • View Profile
Re: Translations of early Famicom games
« Reply #13 on: June 04, 2017, 11:03:00 pm »
http://www.romhacking.net/hacks/2617/

Maybe just put Super Dimension Force in regular text above Macross?

That's the title screen hack we've been discussing, yeah. Any way the translated subtitle gets worked in would be OK with me, but something aesthetically pleasing would obviously be nice.

Take a look at the title screen:

That's coming along very nicely!

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Re: Translations of early Famicom games
« Reply #14 on: June 05, 2017, 04:28:08 am »
"Press Start" would probably be more correct.

When I started looking at the Macross title, the first thing I did was to change that message. It's easy as hell, it's in ASCII format. Although the space is a @.

marioxb

  • Full Member
  • ***
  • Posts: 101
    • View Profile
Re: Translations of early Famicom games
« Reply #15 on: June 06, 2017, 08:57:41 am »
Push, Press- what's the difference? Don't they mean basically the same thing?

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Re: Translations of early Famicom games
« Reply #16 on: June 06, 2017, 09:22:18 am »
Push, Press- what's the difference? Don't they mean basically the same thing?
Push and press is fine. "To start push" on the other hand... :)

Spinner 8

  • RHDN Patreon Supporter!
  • Sr. Member
  • *****
  • Posts: 447
  • Pink Pretty Princess
    • View Profile
Re: Translations of early Famicom games
« Reply #17 on: June 06, 2017, 06:22:15 pm »
Push, Press- what's the difference? Don't they mean basically the same thing?

Well, "Press Start" is more common on English-language title screens. You only tend to see "Push Start" on Famicom games, though there are many exceptions, like Legend of Zelda.

Satoshi_Matrix

  • Full Member
  • ***
  • Posts: 228
  • Retro & Contemporary Gamer
    • View Profile
    • Retro & Contemporary Gaming Archives
Re: Translations of early Famicom games
« Reply #18 on: June 07, 2017, 09:40:42 am »
I applaud this effort. A lot of the pre-1986 Famicom games are either simple arcade conversions or simple computer-style ports, but the operative word in either case is simple.

It would be great if you could translate the shoji games. Mahjong isn't exactly my thing, but there's also a ton of those.

Psyklax

  • Sr. Member
  • ****
  • Posts: 412
    • View Profile
    • Psyklax Translations
Re: Translations of early Famicom games
« Reply #19 on: June 07, 2017, 05:52:33 pm »
Okay, UPDATE! I'm almost finished with Gomoku, there are just two things left that are bothering me: the title itself (still thinking of how to make it work okay) and the opening moves.

For those who don't know (and I didn't until some research) there are 26 opening moves in Gomoku Narabe Renju (the board game) and over the years they've all acquired nicknames. Clearly they're important as there's a Wikipedia article on the topic:
https://en.wikipedia.org/wiki/Renju_opening_pattern
Anyway, if you recall the in-game shot from my first post, it shows the opening move as two kanji in the top right. The game doesn't include all 26 openings (I guess the game chooses what the opening move is, and doesn't do some of them) but there is a routine in the game to put the right one. Sadly, it's not the routine that I'd prefer.

You'll notice all the move names have either 星 (star) or 月 (moon) as the 2nd kanji, so the game has organised the 1st kanji based on putting all the star ones first and the moon ones second, rather than all the indirect first and direct second - which is logical for a game, of course. But not for me. :D I just want to display like on the Wikipedia article: 1D, 6I, 12D etc. But my final challenge will be no doubt to pick through the ASM and figure out how precisely the routine works so I can rewrite it. Literally everything else is translated, and I think it'd be a shame to just leave these kanji here, even if most people don't care what the opening move is.

Anyway, that's what I'm up to now, but it'll be done when it's done. I might need to learn how tracers work to figure this out... :)

In the meantime, I went through EVERY Famicom release from the first game to the end of 1986, and wrote down which games had ANY Japanese, and whether they've already seen a translation of some sort. I only included localisation info when it was substantially different (meaning a translation wouldn't actually be so bad an idea). There may be localisations I've missed, so let me know if there are any other games that have a very different Japanese version.

Here's the list! :D
(I put it in code form just to keep it fixed width, sorry if it looks ugly)
Code: [Select]
Name (GoodNES) Translated?
-------------------------------------------------------------------
 1983
Gomoku Narabe Renju No
Mahjong No
Popeye no Eigo Asobi Yes - KingMike
 1984
4 Nin Uchi Mahjong Yes - GAFF Translations
 1985
Choujikuu Yousai - Macross Partial - Makimura Manufacturing
Hon Shougi - Naitou 9 Dan Shougi Hiden No
Ikki Yes - Psyklax
Kekkyoku Nankyoku Daibouken Yes - Quest Games
Ninja Jajamaru-kun Yes - Stardust Crusaders, Aishsha
Obake no Q Tarou - Wanwan Panic Localised - Chubby Cherub
Onyanko Town Yes - pacnsacdave
Penguin-kun Wars Yes - Penguin Translations
Portopia Renzoku Satsujin Jiken Yes - DvD Translations
 1986
Aigiina no Yogen - From The Legend of Balubalouk No
Atlantis no Nazo Yes - pacnsacdave
Banana Yes - KingMike
B-Wings Yes - Stardust Crusaders
Daiva - Imperial of Nirsartia No
Doraemon Yes - Sky Yoshi
Dragon Ball - Shen Long no Nazo Yes - TransBRC & Localised - Dragon Power
Ganbare Goemon! - Karakuri Douchuu Yes - Spinner8
Ganso Saiyuuki - Super Monkey Daibouken No
Ge Ge Ge no Kitarou - Youkai Dai Makyou Yes - Aishsha
Hokuto no Ken Yes - Stardust Crusaders
Hottaaman no Chitei Tanken Yes - SixFeetUnder
Kanshakudama Nage Kantarou no Toukaidou Gojuusan Tsugi Yes - KingMike
King Kong 2 - Ikari no Megaton Punch Yes - DvD Translations
Mississippi Satsujin Jiken No
Musashi no Ken - Tadaima Shugyou Chuu Yes - GAFF Translations
Nagagutsu wo Haita Neko - Sekai Isshuu 80 Nichi Daibouken No
Sansuu 1 Nen - Keisan Game Yes - Pikachumanson
Sansuu 2 Nen - Keisan Game Yes - Pikachumanson
Sansuu 3 Nen - Keisan Game Yes - Pikachumanson
Sansuu 4 Nen - Keisan Game Yes - Pikachumanson
Sansuu 5 & 6 Nen - Keisan Game Yes - Pikachumanson
Seikima II - Akuma no Gyakushuu No
Sherlock Holmes - Hakushaku Reijou Yuukai Jiken No
Space Hunter No
Super Star Force Yes - GAFF Translations
Super Xevious - Gump no Nazo No
Takeshi no Chousenjou Yes - KingMike
Tatakae! Chou Robotto Seimeitai Transformers - Convoy no Nazo Yes - Stardust Crusaders
Toki no Tabibito - Time Stranger No
Urusei Yatsura - Lum no Wedding Bell Yes - Stardust Crusaders
Valkyrie no Bouken - Toki no Kagi Densetsu Yes - DvD Translations
Wing of Madoola, The Yes - Psyklax

You may have noticed that I added Wing of Madoola at the bottom, because there's a little message on Level 8 that I decided to translate, and it's now in the database. :) Though someone's going to have to get to Level 8 to check that it worked! :D

I also did a title change for Super Xevious, but personally I think the font I used is a bit meh:

Thoughts? It has to be pretty thin, you see.