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

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Psyklax

Pages: [1]
Gaming Discussion / UDP netplay not working
« on: September 04, 2017, 11:44:04 am »
So I wanted to do some netplay with my brother and he doesn't like Retroarch. I knew ZSNES 1.41 does netplay despite its age, so we tried it. We both forwarded a particular port, I put in his IP, and it said it found me, but wouldn't start. This was with UDP, which I know is quicker because of a lack of error correction (sort of). We switched to TCP and it worked, but inevitably there were pauses, which made Mario Kart a little tricky.

I'd like to use Retroarch instead obviously but I guess that uses UDP only. So basically I can't figure out why UDP doesn't work. Googling tells me it's possible that my ISP is blocking UDP but I find that unlikely. Anyone else had problems with UDP who got it working?

Personal Projects / Translating every Master System game
« on: August 15, 2017, 09:34:37 am »
Some of you may have noticed my other thread regarding the translation of early Famicom games, and there are so many games with Japanese that I'm amazed at the progress I've made, knowing that there are far too many remaining. But I thought I'd take on another challenge: making EVERY Sega Master System game available in English. There are two things that make this far easier to accomplish than the Famicom task: there are far fewer games on the SMS, and the system was far more successful in Europe and Brazil than Japan, so the majority of games are already in English.

I've made a list based on a list from Wikipedia, which includes 341 games, total. I worked through the list and removed any games which were released in the US or Europe. I then examined any that weren't released in either of those - mostly Japan and Brazil - for any non-English text. This reduced the already small list dramatically.

There are some games which were only released in Brazil, but they're just ports of Game Gear games, so the underlying code is identical. So here's my list of what remains:

Code: [Select]
Name (GoodSMS) Translated?
20-em-1 No
Argos no Juujiken Yes - Psyklax
Castelo Ra Tin Bum No
Ferias Frustradas do Picapau No
High School! Kimengumi Yes - Nick and Aya
Hoshi wo Sagasite... Yes - Filler, SSTranslations
Loletta no Syouzou No
Mahjong Sengoku Jidai No
Megumi Rescue No
Nekyuu Kousien No
Phantasy Star Yes - SMS Power & Localised
Sangokushi 3 No
Sitio do Picapau Amarelo No
Solomon no Kagi - Oujo Rihita no Namida No
Sukeban Deka 2 Yes - Enigmaopoeia, SSTranslations
Super Racing No
Tensai Bakabon No

A good few of them are Brazilian games with Portuguese text. I had Street Fighter 2 on the list, but it's just the copyright info at the beginning so I didn't see any reason to translate that. I didn't want to start this thread until I'd done something myself, though, so I have: Argos no Juujiken. It's a port of the arcade game Rygar, so I replaced the title screen with the one used in the arcade. I think it made the transition down to the SMS's palette rather well! :)

If you're interested in how I managed it, I'll write it in a spoiler box (for anybody who's like "tl;dr").

So I knew nothing about the Z80, but my work on the NES gave me some experience with assembly, and since the Z80 is also 8-bit, the basic idea is very similar. I read a couple of good docs hosted on smspower, and quickly figured out how things work. I examined a couple of different games before starting on Argos no Juujiken.

It didn't take me long to figure out how the game takes graphics from the ROM and inserts them into VRAM. The NES and SMS do graphics quite differently, since the NES CPU can't write directly into the pattern table: natively the NES needs the 512 tiles of the pattern table to be fixed, and it took MMCs in many different varieties to swap out the graphics. The SMS CPU just writes directly into VRAM, so the graphics in VRAM are constantly changing. I noticed Sonic the Hedgehog keeps the same tile numbers for Sonic all the time, choosing to swap out different animation frames when needed.

Anyway, I could see that the ROM being loaded into RAM changed several times during the title, and I guess correctly that it was bank switching with a mapper. What I was happy to discover (through smspower again) was that Sega made a mapper that most games used, so it's very easy to use. Givem that there's no division between program and graphics data (like the NES), I wondered if I could just add 16KB on the end of the ROM and bank switch to it for my new title. Amazingly, it worked. So expansion is significantly easier than the NES!

I was excited at the possibilities of the SMS palette after my NES experiences, so I thought I could paste in the original arcade title and it would still look pretty good. I first created the SMS's 64 colour palette in GIMP, then made a screenshot of Rygar in MAME. I indexed it to adapt it to the SMS palette, and it looked pretty good (I tried doing it by hand, but GIMP did a better job). I then replicated this palette in Tile Molester, and it pasted in with no problems.

So after putting my new tiles in the right place, the new title screen looks great. There is one problem, though: loading graphics into VRAM takes CPU time, and since I load more tiles than the original game, the music pauses for six frames, which is quite noticeable. I do think that it's a minor thing, however. I must say that I was surprised that adding 16KB worked, though - I figured I'd need a more round number. Perhaps someone could try this on a real SMS with an Everdrive to see how it looks.

I haven't released it yet, but I will do soon.

So, I've made a start, anybody want to make suggestions regarding my list? Or anything else? :)

Script Help and Language Discussion / Time Stranger dialogue
« on: July 27, 2017, 03:07:02 pm »
Hey guys, I'm in the process of translating Time Stranger for the Famicom. It's a text-heavy game, and I don't want to paste too much on here, but some of the language has got me puzzled. Being a Famicom game, it IS kana only which makes life that much harder, but hopefully together we can figure it out. :)

I'm gonna provide my entire dump, made using Table21, which I used on a previous translation and although there may be better ones out there, this one was super simple to use, completely adaptable to any game, and just gets the job done.

Anyway, enough blah blah, here's the two scripts to peruse or ignore at your will:
(10 and 14 refers to the bank offset, as it takes up two banks)

For now I'm just gonna paste a couple of lines that bother me and we'll see if anyone can help. I'll post more as I go along. Context: you're a time travelling timecop who goes to various time periods relevant to Japanese history. The first encounter is with Nobunaga, known in the west for games like Nobunaga's Ambition. His castle is being attacked by Mitsuhide's forces, and you beam in with your time machine.

This line is causing me problems, though obviously I get the gist (you die):

[0211]「おまえは へんじをしらないようだな。」%[0513]なかぬなら ころしてしまえ ほととぎす%[0515]のぶながに きりころされました。%[9517]THE END%

(FYI the first number is where the pointer is, the numbers in brackets say where on the screen the line starts)

My rough guess is "'You don't have an answer, eh?' _____ You're killed by Nobunaga".
It's the middle line that confuses me. Again, doesn't matter that much cause, you know, you die. But still. :)

I'll upload my work in progress translation soon, and anyone who wants to help can browse my translation and see if I'm a bit off somewhere. Despite translating several games, my Japanese is still far from good, and I have to use WWWJDIC and a grammar guide for almost every line. :-[ I studied years ago but I'm out of practice...

Gaming Discussion / How do Famiclones work?
« on: June 11, 2017, 06:34:56 am »
I have to say that I like Famiclones: I have one in the shape of a Mega Drive 2, labelled as Dendy (how the NES was known in Russia and other former Soviet countries) and it's a cheap and fun option for playing NES games through a CRT, without using a real NES (and the fact that you don't need to knock out the 10NES chip to play these wonderful multicarts is even better :D )

My question is: how do they work? I can read Wikipedia about NOAC stuff but it doesn't really explain it to me. I like emulation but I know it just can't beat the real thing. These Famiclones aren't emulation... but they're not exactly the real thing... what are they? How do they replicate what an original NES CPU and PPU do? And are there any flaws that would affect the playing accuracy? Other than little graphic and sound things that aren't really that big of a deal. I've noticed sometimes the audio on mine isn't quite perfect, like with Ninja Gaiden III (music sounds a little quiet). But what really matters is the playing, and I'm curious what's going on inside.

And you don't need to mention MMC4 and MMC5, Castlevania III, Disk System etc, I know it ain't gonna play them, but that's not a big deal, I can live without a few things (there's always emulation). So anyway, how exactly do these things replicate a real NES?

ps I'll take a Famiclone over a Retron 5 any day of the week. If I want emulation I can do it on an Android TV box, at least systems like the AVS have a point to them.

Personal Projects / 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:

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! :)

Hello all, long time no write.

I was brought back to activity thanks to forum member cabbage, who found my awful old Knight Rider Special translation and noticed a couple of NOPs in the code would change the text to 8x16 instead of 16x16. That simple change encouraged me to use KingMike's old DTE help doc to work out if I could use DTE in this game, and sure enough, I managed it. To cut a long story short, several days' work has resulted in a complete retranslation of the game.

Nothing remains from my old translation, it's totally new. The voice samples are untranslated - I don't know if anyone knows anything at all about replacing voice samples (can't think of a single translation that has ever done that).

I've already submitted it to the database, but if anyone cares to try it now, here's the link from my personal site:

Both headered and non-headered ROMs will work as I've included BPS patches for both. :)

Take a look and let me know what you think!

Personal Projects / Battle Robot Retsuden: English translation
« on: May 01, 2016, 05:57:38 pm »
Hey guys, I'm back! :)

I've been out of action for a while for various reasons: I drifted off my translation of the second Detective Conan game for the GBC as I needed some simple programs for text insertion and never got round to having them done. I've received a couple of messages about Hyper Iria, but anyone who wants to know why I abandoned that need only look at the thread.

Anyway, I became interested in Battle Robot Retsuden for the SNES, and even translated the intro and the first scene, along with all the menus, just for fun. A while later I looked again at it and thought "hmm, wonder if I can translate this properly?" I'd never managed to get a SNES translation right, with Hyper Iria being the closest I came to success. This time, however, everything seemed to be in my favour, as I'll explain later.

First, check out my "proof of concept" (ie getting it to a workable state, and proving that I can do a full translation given more time).

(does the forum support embedding YouTube vids? Couldn't find any info)

I'll try to be brief in explaining everything about the project, but feel free to ignore all of this and just give me feedback. :D

First, before you ask, I know the menu looks bad. "Bridge", plus three two-letter abbreviations. It's ugly, but this is the one area that I'm struggling with, because I don't fully understand what's going on. I'll explain later.

So I checked the ROM and it's HiROM, 24Mbit, so tons of room in there. The main font is 16x16, but the last four horizontal pixels are ignored, resulting in 12x16 for each character. This would be a good moment to introduce variable width font (VWF) but I can't code, and I've not found much luck in the RHDN forum on implementing a typical routine for VWF. However, the video shows a very thin font, giving me lots of screen space to play with.

That's because each 12x16 character tile is now two alphabet characters.

Yes, it sounds crazy, but there's a good reason for this: the ROM includes lots of kanji. There are four "banks" (not quite corresponding to true SNES banks) with 255 characters in each (plus the control code 00). This means 1020 characters used purely for text - and they use every single space. I did the maths and worked out I could do every single combination I could possibly need (a to z in both positions, punctuation, capital letters when required), and still have plenty of room left over. Perhaps a weird way of getting a nice thin font onscreen, but as you can see, it works like a charm.

At every turn during research for this hack, everything went right. I found the pointers and routed some dialogue text to a different bank, meaning I'll never run out of ROM space (as there's a ton of empty space on the cart, plus using digraphs means I use half as many bytes anyway). Almost everything is now pretty clear to me, and I'm confident that the only thing stopping me from a complete translation is my free time, which is quite limited at the moment I'm afraid.

Now to the one problem: the menus. Most of the menus are just a problem because there's no screen space: I can only use two tiles (ie 24x16) and that's that, so my choice of words is limited as you see. Not much I can do about it without going deeper. The bigger problem is the main menu, and I'll need to explain why.

They're a special case in that they have two characters, but after the first character there's a bunch of code before the second character (which seems to introduce a space) and if I ignore it the space disappears - but the selection highlight introduces an ugly block in the space to the right of the second character. If I just use three characters instead, it doesn't quite fit in the space, and graphically affects the menu. I'll post screenshots if anyone's interested.

A similar problem occurs on the start menu at the beginning. I used "kill" (two tiles) because I couldn't use "delete" (three). The reason is the selection: the game is clearly expecting two tiles and glitches elsewhere on the screen when you throw in three. This wouldn't be a problem if the text just displayed passively, but my guess is the code for highlighting it is done differently than the code for displaying the text unhighlighted. If anyone has experience of this, please get in touch, as it's the one issue I need to crack before I can deliver a full translation.

So, I could talk all day about it, but I'll let my work thus far speak for itself. Being an 'action' game, my plan is to make the game totally playable first: menus, weapons, unit names and so on. The actual story will be the last thing to do, since most people will probably skip through it anyway.

Looking forward to your comments! :D

Detective Conan
The Mechanical Temple Murder Case

Here you are, guys. 100% complete. Everything's done at last.

I wasn't sure about making a new thread, but I figured it's worth it for the finished article - and I couldn't wait another 7 days to avoid the double-post rule. :) I'd like to add it to the RHDN database, but not sure how. I imagine it's not that difficult.

Thanks to all the guys on here who've encouraged me. It's been a lot of work, but worth it in the end, I think. Hope there are some Conan fans who will be happy to try this out at last.

The question is: what do I do now?

Oh yeah...

That... 8)

Hello all! In the breaks between doing Detective Conan and Hyper Iria, I've translated a PC Engine game! :D

Knight Rider Special is a cross between Chase HQ and RoadBlasters, with a famous American licence. I was amazed that such an American game never got either an American release nor a translation, so I took it upon myself to do it. :)

Have a go, and let me know what you think. Read the text in the zip for more info. ;)

EDIT: Damn it, I just remembered: this MUST be applied on a headerless ROM! I had to remove the header on mine. Think I may have to change the zip text file to make that clear. It's easy to delete the header: just stick it in a hex editor and remove the first 200 hex bytes (from $000 to $1FF). Do you guys think I should just change the patch to work on a headered ROM? It's not so difficult to do.

Personal Projects / Hyper Iria
« on: July 04, 2013, 07:18:37 am »
Hyper Iria, an as-yet untranslated action platform adventure thingy for the SNES.

I confess, I don't have a lot to show here, but I do know that if I can get a little help on this, then translating this game will be relatively straightforward. I don't know why nobody has tried this already.

I started a thread in ROM Hacking Discussion about displaying the 8x16 font in Tile Molester. Once I stopped being an idiot and figured it out, I replaced it with the VWF font used in Final Fantasy on the GBA (it was one of the only fonts I could find in the RHDN database, and since I used the Final Fantasy 1 font for my Detective Conan hack, I figured another Final Fantasy would be nice).

As soon as I started playing around, though, I realised one thing:

Yes, yes it does.

Actually, the in-game text itself (your computer pal BOB gives you information on where to go etc) is so rudimentary ("Go left", "Go up those stairs" etc) that a VWF, while nice, is really not essential. What IS essential, however, is getting the full use of that 12x2 character box in which to put the messages.

The problem is that age-old one of a Japanese message only needing, say, seven characters, and thus cutting off at seven, rather than the full 24 that I'd like to use (no new line control codes used, either). So rather than VWF, I think there are two more important options:

1) figure out how the pointers work, and stick all the new text somewhere else (eg in an expanded part of the ROM), or
2) DTE.

I have a very important question regarding DTE. I followed KingMike's lovely DTE tutorial for the NES (although I have to say, there are a few little errors here and there which made following the code more difficult, but I figured out the true values eventually). Now, would that code at the bottom of the tutorial work, with perhaps minor alterations, in ANY NES game? And if so, is there a DTE routine I could use from someone's SNES game to use in this? I ask because I know almost nothing about ASM (in fact, all I know is what I read in KingMike's tutorial :D ) but it seems to me that an ASM hack like DTE would, in theory, work on any game. Anyone care to tell me about this? Unless I can hack the pointers in this game, I will need DTE.

So about the pointers. I have experience with GBC pointers on my Conan project, and they make perfect sense to me:  that's a text-heavy game, so several entire banks are reserved for just text, while the pointers to that text appear to be at the beginning of the ROM in the main code. There are some small bits of text for menus and such which are also lumped in with the pointers, but they use 2-byte pointers which are also very simple, and I'm able to edit those too. But this? I can't figure it out.

I read AnusP's document on NES and SNES pointer hacking, and sadly it didn't seem to help me here. This is NOT a text-heavy game (RPGs are text-heavy, whereas I could translate all the text in this game in a day or two). Therefore, it seems to me that the text is lumped in with the main code, instead of stuck in a nice big bank ready to mess with. So I can't quite figure out how the pointers work, or even if it uses pointers at all (I imagine it does, but still). I've examined quite a few lines of text and noticed patterns, and already figured out which byte before the text is used to say which face goes next to the text. Other than that, I'm a bit stuck. Any experts on SNES pointers out there want to give me a clue what to look for?

Finally (sorry for such a long first post) there's another font used for the menu screen describing each mission. The font in the ROM is a bit messed up: it uses 8x7 tiles I think, so it's all just stuck together, and somehow the shading at the bottom of each letter gets added on-screen. Here's the font in question:

As you can see, it's not as neat and tidy as I'd like. On the other hand, it DOES include a capital Latin alphabet, so I could just use that and be done with it. Alas, the problems continue.

The encoding on the menu screen is a nightmare. The control code '20' (which is the same as capital M) seems to produce a space BEFORE the preceding character, and can't be changed, moved or removed without the whole line disappearing. Plus, the codes for new lines are pretty hard to fathom, and also don't seem to like being messed with.

Here are before and after shots of the screen in question.

Notice the spaces in the same place on both. I can't move or change those spaces, or the whole thing goes wrong. As for the dakuten symbols above, that's no problem: I've figured out how to turn them off. But as you can see, I have more problems than dakuten.

So, thank you for reading, and I hope someone can help me out with my problems. :)

ROM Hacking Discussion / SNES fonts
« on: July 01, 2013, 08:32:36 am »
Okay guys, this is probably a n00b question, but since I can't find much info anywhere, here goes.

While working on my rather easy (though time-consuming) Detective Conan GBC game, I've been wondering about hacking a SNES game, since the SNES is my favourite system and it'd be nice to do something for it, to learn a thing or two. Alas, all of my efforts have thus far been in vain, as it seems that SNES games are far more difficult to hack than NES or GB games. Maybe I'm wrong, but that's the way it seems: often I can't even find any text through relative searching.

But I stumbled across a game called Hyper Iria, which judging by a forum search, some of you have heard of. Cut a long story short, I did a relative search, actually found some text for once, now I've got my table sorted. So the next task is to replace the font. This is where I'm struggling.

The main in-game text is 8x12 (though most of the characters are only 10 pixels high). Since I have no experience with SNES games, and I couldn't find any documentation on this, I have no idea if the way this game stores the font is typical or not. Basically, the top half is at the bottom, and the bottom half is at the top, with different colours. I prepared a pic to demonstrate.

Yes, I know it says 8x10, because I thought that's what it was. Now I realise one or two kanji are slightly taller, but whatever.

Now, I'd be quite happy to just take a font, chop it in two and reverse it, but the problem is when the top and bottom collide, as they invariably do (I used the 'ka' here because it's a rare example of when it DOESN'T collide). In that case, the colours change. Basically, I have no idea how this should be done, and I wanted to know if anyone had any idea of how to just make a new font in this way.

I also have problems finding the pointers for the text, but that's another problem for another day... ;)

Personal Projects / Detective Conan: GBC games translation project
« on: May 22, 2013, 04:18:08 pm »
Greetings all, this is my first post, but it's been a long time coming, so I may take a while.

I got interested in rom hacking a while ago, mainly for the purposes of translation, and I even had a stab at translating Captain Tsubasa for the NES... until I realised that it was released (in bastardised form) as Tecmo Cup Soccer Game in the USA. My interest waned a little after that...

Years later, however, I thought about it again, and couldn't think of what to translate. Until I came across the Detective Conan games for the Game Boy Color. The three games by Banpresto were ideal for several reasons:

1) they hadn't been fully translated before;
2) they were for the GBC (simpler system to hack, but with the bonus of enormous carts);
3) I'm a fan of the Conan anime, which helps;
4) I imagine there are plenty of other Conan fans who would actually like to see this.

So, for my first translation project, I decided to tackle Detective Conan on the GBC.

All three of them.

The basic architecture is the same in all three games. The first one seems a little simpler but sets up all the graphics and ideas, and uses more or less the same stuff as the other two. The second is very similar but presumably a bit more complex (I haven't played much of any of them, I confess). And the third is double the cart size (16Mbit rather than 8Mbit), which allows for a bigger game, but also gives me much more empty space to fit my text in.

Which is another point: this game was my first test of hacking pointers. A big shout out to Coolboyman for his Gameboy pointer hacking doc (, it really helped me to get this working. Basically I've been picking things up pretty quickly in terms of hacking, and although I know almost nothing about ASM, some compression would be handy on this. I had a play with another tutorial for the NES, but unless someone can tell me how a NES ASM routine could be adapted for the GBC, I'm stuck. I think there's enough free space to exploit in these ROMs, though.

As for the language, that's the hard part. I used to learn Japanese years ago, and although I have a reasonable grasp of grammar, I suck at vocab, so every sentence takes a while, using WWWJDIC on virtually everything. It's a slow process, but hopefully my translation is reasonable. And hey, it's better than nothing.

I suppose hacking AND translating all three games, alone, is a big task, but I don't want anyone to think this'll be done overnight. I wanted to get to a stage that I call 'Proof of Concept': as in, you can play all three games with my patches up to the point that you start moving around and talking to people, and everything is in English. I didn't just fix a menu and upload it (I saw that someone else already did that), I wanted to show (me as well as you guys) that I was capable of doing this.

The hard part is done: the technical side of the game is more or less completely clear to me, most of the graphics are done, and the first chunk of text is done. All that remains is a hell of a lot of dialogue - and this is one text heavy game (or games). Now I've got all three games to version 0.1, if you like, I think I'll take a little break, then get to work on the first game.

I feel like writing a much more in-depth report on my work on my blog at some point, for any newbies who'd like to follow in my footsteps. But for now, enjoy the fruits of my labour, and any comments are welcome!

Detective Conan: The Mechanical Temple Murder Case
名探偵コナン からくり寺院殺人事件

Detective Conan: The Legend of the Strange Rock Island Treasure
名探偵コナン 奇岩島秘宝伝説

Detective Conan: The Cursed Sea Route
名探偵コナン 呪われた航路

NOTE: In the second game, the description of where the boat lands is still in Japanese, because I couldn't find it in the game, strangely. There is no text in the ROM that matches it, so any help would be appreciated.

Pages: [1]