I’ve kept a lot of memoires from my childhood, though not as many as I’d have liked. But the one subject matter I tried very hard to hold on to was anything relating to the NES/Famicom or SNES/Super Famicom.
Given my previous blog post, I decided I’d make a short itemised list — with photos, if available — of just some (hardly all!) of the things I’ve done or kept over the years:
I’ve kept all of my Nintendo Power magazines, and most of them are in decent condition (the first 10 or so a bit scuffed up due to repeated reading as a kid). Not pictured are two Nintendo Fun Club magazines, which still have my handwriting in them all over the place, as I did the actual puzzles/games they had in the back. Every time I got one, I’d take it to school and read it during lunch, on the bus to/from school, or sometimes even during class (if I could get away with it). I also distinctly remember reading Volume , which contained the release/announcement of the SNES and actual screen shots of Actraiser and Gradius III. I must have read that Volume a hundred times, literally. I also kept most of the “hint books” that being a Nintendo Power subscriber got you, and of course what I call the BBB (“Big Black Book”) which came with my NES (my family couldn’t afford the standard NES console set, so the version I got didn’t include Super Mario Bros but instead that book). You’ll also see a couple issues of EGM, some other random game magazines, and a few issues of NEXT Generation.
But being a long-time Nintendo Power subscriber also came with certain pins (who knows how much those are worth now, haha!). And likewise I invested in other knick-knacks (the Yoshi, obviously, is from the early 90s SNES era).
Howard Phillip’s signature
From 1989 to 1990, I repeatedly wrote (e.g. pressured) Nintendo of America, asking for Howard Phillip’s signature. What they included with their first letter was nothing more than a pre-printed leaflet with a stamped signature on it (which sadly I threw out due to anger) — I wanted the real thing. And a subsequent follow-up a few months later got me exactly what I wanted (though not mentioned in their letter, because I also included a high score for some particular game (I can’t remember what — and no it never made it into Nintendo Power)). I still wonder if either of those CSRs, or even Howard Phillips himself, remembers reading letters from a very persistent 12/13 year old demanding Howard’s signature. I always imagined the conversation at Nintendo of America being something like “God, what a persistent little shit! Howard doesn’t have time for this crap, does he? I mean seriously?!” And no — I never plan on putting any of this up for sale on eBay or anywhere else (although I sure would like to get all 3 of those memorabilia framed).
8th grade Language Arts paper on Howard Phillips
The NES was pretty influential to me in general, if that’s not apparent from this blog post as a whole. But the what Howard Phillips did for a living was equally as influential — enough that for my 8th grade Language Arts class, I wrote a paper on him. This was in 1990.
I got a passing grade on that (I think either a B- or a C+), but I remember having to repeatedly argue with my teacher, Mrs. O’Neil, regarding the subject matter. Everyone else wrote poetry, discussed immigration (or wrote fictional stories about immigrating), racism, friendships, and even a small article about suicide/depression, yet I chose to write about one of Nintendo of America’s executives. Go figure.
Capcom and sheet music
In the early 1990s, I wrote (or more specifically, faxed) Capcom’s US headquarters asking if sheet music was available for Duck Tales. After a couple weeks they responded (also via fax), stating little more than “no there isn’t” while simultaneously implying there never would be. I remember being terribly heartbroken, as I was trying to learn to play keyboard at the time; and while I have the ability to play-by-ear, I just really wanted something physical (e.g. on paper) from the company. It’s a funny story to think back on mainly because of childhood innocence (ignorance) — it’s as if I expected Capcom USA to reach out to Capcom Co., Ltd. in Osaka, just to bother TONOMURA Hiroshige. As a kid, I imagined it going down like this: “Hiroshige-san, could you give us copies of your hand-written compositions for Duck Tales? This random American kid wants it.” “Sure, why not!” What the hell was I thinking?
Nintendo World Championships
In November 1990, a friend of mine invited me to come with him and his family for Thanksgiving to Washington state. I can’t remember which city, but it might have been Vancouver. At the time, Nintendo had one of their huge convention-like things going on there, to show off new games and let people compete in the Nintendo World Championships. Of course, we went. I thought it was great. But being quite shy as a kid and an introvert, I had no desire to compete (I still to this day don’t like competitive games), but my friend pressured me into it (to the point where I probably started having a minor panic attack, thinking back on it). So I competed.
I’ve never been able to find (online) a description of how the competition actually felt. People describe the competition layout and the environment, but the descriptions lack detail (I get the impression those describing it were onlookers, not in the actual competition). So I’ll describe it:
Upon entering the competition (first phase — as in you were a nobody coming in off the street), you were placed in a roped-off queue (identical to bank teller lines) and had to write down your name and some general information about yourself (including age). There were a couple adults who would herd 15-20 kids at a time and stand them in front of a series of 15-20 television screens, handing them a NES controller. You were to play Super Mario Brothers, then Rad Racer, then Tetris — and the game itself was a custom-modified cart where each game was timed and kept score, which is what you were judged on (you can read the details yourself). The part that people don’t tell you is that the other kids in queue were standing directly behind you, so everything was in close-proximity and there was a lot of noise combined with everyone watching you. I cannot even begin to describe the stress of it all (none of it positive, IMO). Just writing this description brings back that stress. Just try to imagine the environment, not to mention the constant desire to look at other kids’ screens to see how good/bad they were doing.
As mentioned above, I never had Super Mario Brothers because my family couldn’t afford the standard NES control set, only the inexpensive one that came with no games; the only exposure to SMB I had was playing it at my friends’ houses. I had beaten it a few times, but it had been literally 1.5 to 2 years since I’d played it. So the very first thing I did when the competition started was ran at full speed… straight into the first Goomba. My friend (somewhere off to the side/outside of the queue) made some noise that amounted to “you gotta be fucking kidding me” and I remember turning to look at him like “Dude it’s been like 2 years!” After that, instinct kicked in, and I got as far as I could without dying before Rad Racer kicked in — a game I had played maybe twice in my entire life. I managed to do okay at that, but given how the game plays, I didn’t see how you could really rack up points during that phase.
Then came Tetris. Tetris is something I’ve always loved and played the Gameboy version regularly, so I had no real difficulty here. I just played it how I normally did: make as many 4-row tetrises as possible, since they got the most points. (Many years later, Howard Phillips disclosed during a “game tip” video or interview that the Tetris phase was actually the most important part of the game — and how focusing on getting tetrises wasn’t the proper strategy. I forget what his approach was, but I think it was basically to just make as many 2 or 3-row lines as possible as rapidly as possible and not waste time waiting for the “straight” pieces). But one of the things that pissed me off: the version of Tetris they were using was (obviously!) the official one from Nintendo, not the one from Tengen. I hated the Nintendo version (the controls felt weird, I think had to do with “how” the pieces rotated); I always preferred the Tengen version. But I managed.
When it was over, I was actually sweating (and I didn’t sweat much as a kid. I remember thinking “well that sucked, way to make yourself look like an idiot in front of tons of people”, kept my head down, and was shuffled off with the other 15-20 kids. I remember a a few of them had wet eyes or had been crying, and a few others were really pissed off — like I said, the pressure and environment was awful if you were a shy or introverted kid. Anyway, I figured that was over/done with, and started to go back into the main convention area.
My memory is a little hazy at this point, so I don’t remember what exactly happened, but I was told (or it was announced over loudspeakers) that I had passed the first phase — and now needed to compete in the 2nd phase. Winning the 2nd phase made you an official semi-finalist. My friend was ecstatic, while I was literally filled with fear. Why?
The 2nd phase competition was done on a raised stage, with an audience below you (usually about 100-150 people; families, kids, etc.). Four (4) kids would be put on the stage at once to compete. The one who had the highest score from the previous phase got to sit (or maybe stand?) far in the back in somewhat of a secluded little podium-like area, with a TV screen right in front of him. The other 3 kids (who had lower/worse scores) had to stand practically at the edge of the stage, looking downward at the floor where there were TV screens set deep in the floor (so probably 8-9 feet away from your eyes, and I think they were 16″ or 17″ screens); you were expected to stand there, holding a NES controller with some long cord going off into the floor. There was an announcer (think of an auctioneer) who was announcing what was going on / what player was doing what, and at the same time, behind all 4 kids there was a humongous screen (for the audience’s benefit) showing one of the players’ screens (I think the announcer would rotate through each of the players and give a “status update”). There were so many problems with this setup that I won’t bore you with the details, but let’s just say it was all designed in such a way that the already-leading kid was probably the most likely to do the best, simply because he/she was in the back and partitioned off from everyone else, able to focus a lot more. It looked a lot like this scene from The Wizard but with all the players facing the audience, no wall-height screens for the 3 lesser players, and a 4th player getting his own podium/separate area further in the back to play.
I was one of the 3 front-line kids. Given that I have stage fright, and I’m near-sighted, this whole scenario/situation scared me to death. I think it’s probably the earliest time in my life I remember having a panic attack. I tried to get out of the competition (basically just avoiding it), but my friend wouldn’t have it. So I ended up competing. I was literally sweating everywhere, and I kept making mistakes and had to force myself not to curse while in front of a huge crowd. I had problems seeing the screen, and I kept thinking “would it be awkward if I just sat down?” (years later, with the help of the Internet, I read stores/tales where kids did choose to sit down solely because the screens were so far away). I also remember the announcer being a dick — the only things he had to say about my game play were negative (solely when I made mistakes). I had no positive support the entire time.
When it was all over, I was absolutely certain I had failed. I can’t remember how the scoring worked, but I think they took either the top 2 or top 3 players from that phase and those were the semi-finalists. I remember trying to figure out how to get off the stage ASAP before I ended up either passing out or involuntarily pissing my pants — I just wanted down from there, get my friend, and leave (or at least go off to some place quieter). Again my memory is hazy, but I think I rushed off the stage and the announcer (or someone near him) said “Whoa whoa whoa kid! You made it! You’re a Semi-Finalist! You can’t leave yet, we gotta get you some things first!”
I was given a little bit of paperwork, but more importantly three (3) semi-finalist badges (highly adhesive stickers), and was told to come back the following day at a specific time to compete in the semi-finals. Semi-finalists were allowed 2 guests to come with them (e.g. parents), but no more. The purple badge was for me, obviously.
I didn’t compete. The main reason was that Thanksgiving was over and I had to return to Oregon. Despite all the stress (and it was pretty major — I even remember going to bed early that night from how exhausted I was), there was a small part of me that wished I had.
I remember reading the final results of the Championships in Nintendo Power (I’ve never forgotten Thor Aackerlund’s name), but in the back of my mind I always wondered if that could have been me. But from what I remember reading of Thor, the fame only lasted a few years and then people just stopped caring altogether. (He stepped back into the limelight in 2011 during the official world Tetris competition — gee, I wonder where he got the skill of playing Tetris from… ;-) ).
From 1989 to 1990, I was the co-owner of a small business in my town called Rentendo (I was 12 or 13 at the time). A friend of mine — the same one who I went to Washington with — came up with the idea of renting out NES games from our houses (or in his case, an actual clubhouse with stocked shelves and inventory — he lived in town, while I lived several miles away in a rural area outside the main city, so I never saw a single customer other than a couple kids who went to our school).
We had business cards, help/walk-through videos (“the finishing of?” Apparently “completion” wasn’t part of my vocabulary at the time), and monthly newsletters (I’m still trying to find a hard copy) that we distributed amongst people in the Corvallis community and friends, who then distributed copies of their own. We also put a crossword puzzle in them. Rentendo is how I learned word-of-mouth is the best form of advertising there is (screw all this billboard, television ad, in-your-face marketing garbage of today, instead focus on making something actually good and people will talk about it endlessly). We had a large selection of NES games in stock, which we owned and, obviously, played ourselves.
My friend was (and still is) the entrepreneurial type, and focused on running the actual business to make money, while I was (and still am) more interested in just having fun talking about and playing NES games. We didn’t make a lot of money, but it was something we did for a little over 1 full year, and it was driven by interest and passion for the NES.
Public-domain SNES/Super Famicom documentation
During 1993 and 1994, with the availability of so many SNES console copiers, and my existing experience coding on the Apple IIGS (the SNES used the same CPU: a 65816), I really got into doing SNES “stuff”. I took a very active part in the (long defunct) snesdev mailing list, and even worked with a fellow called “Gau” on Super Kid Icarus (a home-brew sequel/remake of Kid Icarus for the NES/Famicom, which we never completed).
The SNES documentation at the time wasn’t very good, while a very select/elite group of people had illegal copies of the official SNES developers manual (absolutely intellectual property) and wouldn’t share them due to the legal consequences. The stuff that was publicly available were docs like this written by several people — but the two I remember the most were Corsair and Dax. It was better than nothing, but surely we could do better…
In the end I chose to try and rectify the situation by releasing my public-domain Super Nintendo documentation, which at the time helped out a lot of people. There is significantly better stuff available today, but back in the mid-to-late 90s, what I wrote was all we had. I guess you just had to be there. (Corsair/Dax, if you guys ever come across this blog post: you deserve huge kudos because you’re the two who got me started in the first place. So much respect for what you guys did — thank you!)
There is one an aspect to my documentation that I did want to disclose/mention… The driving force was not purely because the existing docs from Corsair/Dax weren’t very good. A portion had to do with folks I was hanging out with in @AppleIIGS on IRC (later #AppleIIGS — the IRC protocol was changed at some point to use the hash symbol prefix for channels, rather than the historic at symbol, the latter resulting in confusion between channel operator status and channels) back in the early 90s.
There were quite a few people in that channel who were nasty/rude to me, often insinuating that I was just a “fanboi”, couldn’t code, couldn’t do jack shit, and just hung out around people who did the actual heavy lifting. I distinctly remember one individual telling me privately something to the effect of “you aren’t worth anything, can’t do anything, and won’t ever amount to anything”. I think this was in ’91 or ’92. It impacted me because the person who told me this was someone who I actually had a lot of respect for and looked up to; that changed in the course of a single sentence.
My SNES docs were therefore partially driven to prove these people wrong — kind of my way of saying “I may not be perfect, I may not make stuff as glamorous and amazing as you, but I’m still giving this stuff a shot, so fuck you“. I actually had the chance to meet a few of these guys in person at Apple Expo West in 1993, and while that didn’t change their opinion/view of me, I at least hope it made them realise that I was a real human being and not just some “fanboi”.
There was one fellow who had faith in my abilities, was nice and respectful, and took the time to explain things about general 65816 coding and graphics programming (though graphics on the IIGS are very different than on the SNES): David Huang (a.k.a. Calamity). Dave, if you ever read this (even though we’ve been in contact semi-recently!) — thank you for always being kind and taking the time to explain things to me. You’re still the best.
Applying for work at Konami
In early 1997, for a job I was doing vinyl application and graphic design for my mother’s engraving company. I had and my efforts on SNES documentation that I figured why not apply for a job at Konami? Yeah, that didn’t pan out so well. With a background in System Administration, I wasn’t too surprised. But I still kept everything as a memoir.
For what it’s worth: every job I’ve applied for (except for 2, Konami being one of them) I’ve gotten. The other reason why not getting a job at Konami was a little rough on me was because during the mid-90s, literally 6 or 7 people from the Apple IIGS IRC scene — and I’ll name names just because I think it’s worth noting how great these guys are: Ian Schmidt, Richard Wifall, James Brookes, Toshi Morita, Jason Andersen, Steven Chiang, Tim Meekins — ended up getting hired at Tiburon Entertainment (now Electronic Arts), Taito, Sega, and Interplay. Some of those guys are the ones I met at Apple Expo West 1993. I felt like I was intentionally excluded from the list because of my age and my personality, and that never sat well with me. I’ve let bygones by bygones, but I think I would have lead a really different life (and career) had I gotten into game development… but at the same time I’m glad I didn’t, choosing to always keep it as a hobby.
Public-domain NES/Famicom documentation
Also known as “nestech.txt”, this is what I’m probably more well-known for present-day, since it was documentation I wrote and maintained from late 1998 until late 1999 (possibly 2000?). In version 2.00 of the documentation, I clearly explain what drove me to write it:
At the time this document was created, there was only one piece of literature covering the internals to the NES: Marat Fayzullin’s documentation, otherwise known as “NES.DOC”.
While Fayzullin’s documentation was lacking in many areas, it provided a strong base for the basics, and in itself truly stated how complex the little grey box was.
I took the opportunity to expand on “NES.DOC,” basing other people’s findings, as well as my own, on experience; experience which has helped make this document what it has become today. The beginning stages of this document looked almost like a replica of Fayzullin’s documentation, with both minor and severe changes. Marat Fayzullin himself later picked up a copy of my documentation, and later began referring people to it.
Keep in mind, without Marat’s “NES.DOC” document, I would have never had any incentive to write this one.
I added that section partially because Marat (on some nesdev mailing list — I forget where) publicly accused me of not actually doing any work (reverse-engineering) of my own and that basically I was “stealing other people’s work”. That was never my intention — and that’s the truth. (Also, I’ll take a moment to state publicly — I have absolutely no issue or beef with Marat. On IRC and socially the guy gets a lot of crap for being very brash/rude and direct, but so what. I’m somewhat similar in that regard. But I just want folks to know I have no actual problem with him, and never have)
My documentation was more or less a compilation of tons of random tidbits and pieces floating around the web (and especially on IRC from #nesdev) at the time. Random people (see the Credits section) kept finding new behaviour and information about the console that was revolutionary, and in some cases (such as Loopy’s “skinny on NES scrolling”) revolutionised understanding how the PPU worked (we had so many things wrong).
I stopped maintaining the documentation (making it officially public-domain) because there was just too many changes going on simultaneously within the NES development community, and we had gotten to a point where understanding how the actual hardware behaved was required (I don’t do EE things — I can solder/wire things up, but I need very clear/concise instructions).
Final Fantasy 2 intro (Neo Demiforce English translation)
Steve Demeter, a.k.a. Demi of Neo Demiforce, has been a friend of mine for many years. So in 1998 when he was doing lots of romhacking/translation work and he asked me to come up with a replacement intro for FF2j, I was happy to oblige.
The intro came out wonderfully. In the romhacking community it left a pretty big impression, because it was (to my knowledge) the first time someone had actually injected a full-fledged intro (i.e. written brand new code) solely for a romhack. To be honest, other than the work I did in Digital Exodus during my Apple IIGS days, it’s one of the few things I’ve been proud of.
At that time nobody (except for extreme EE-oriented guys like Kevin Horton) had ways of running code on actual NES/Famicom hardware, so emulators were used to develop/test the intro. It worked great, until years later when the aforementioned PPU discoveries were made and newer emulators emulating things correctly… and the intro glitched — badly. Around the same time more people were able to get actual code running on real hardware, and it glitched there too. I had some guesses as to why, but I’ve never liked throwing in little “fix-it hacks” unless I fully understood what they did — and nobody (at the time) was able to explain to me the “whys”.
The bugs turned out to be pretty major, and they were all because we didn’t have full knowledge of how the PPU behaved at the time I wrote the code. Thanks to Parasyte (and Bregalad on the nesdev forums) for fixing the mistakes and actually explaining what the bugs were.
I still have a couple in-progress versions (version 1.04 and 1.05) which I was working on to fix some bugs (not just in the intro, but some bytes I ended up using which I assumed were unused by the game itself) lingering around on my drive. I really wanted to get one of them out there/released because it contained an easter egg. ;-)
Directory of E:\Work\ff2j\Ver104 08/23/1998 15:43 245,776 103-MOD.NES 09/09/1998 19:35 426,157 C000.ASM 09/09/1998 21:58 16,384 C000.BIN 09/09/1998 21:58 1,176,134 C000.LST 08/23/1998 15:16 16,384 C000.ROM 12/13/1998 01:16 1,232 clear.asm 12/13/1998 01:16 44 CLEAR.BIN 08/23/1998 15:58 157 comment 09/10/1998 14:31 10,820 INTRO.ASM 08/23/1998 16:41 102 make.bat 09/09/1998 21:58 262,160 TEST.NES 12/03/2000 13:04 8,192 TEST.SAV Directory of E:\Work\ff2j\Ver105 11/27/2009 11:47 1,221 intro.asm 11/28/2009 07:29 32,784 intro.bin 11/28/2009 07:29 2,981 intro.lst 11/28/2009 07:36 91 make.bat
Otogirisou is a ChunSoft horror/thriller game that has never had an English translation done because the game is extremely complex (i.e. highly convoluted and very detailed programming), not to mention it’s primarily a text game (the Japanese text dump is around 1.3MBytes).
In 2011 I wanted to take a stab at seeing if I could at least get English text up in the game using the existing text/font routines. Gideon Zhi pointed me to g8z/z80gaiden’s previous work (which included writing custom programs just to deal with the modified Huffman compression used. LOTS of effort!) and I spent weeks trying to make heads/tails of it all, especially how the font was encoded.
It took me about a month, and a bunch of graph paper (and more for the on-screen results) I still do things this way when working with compressed pixel fonts, especially ones that are 1bpp but are turned into 2bpp with shadowing effects in real-time — but I was finally able to get somewhere. (The text won’t make any sense to anyone — it’s just me joking around talking about guys I used to work with at an old job; they thought it was amusing).
E:\Work\Otogirisou directory is ~33MBytes and at this point I have no idea where I left off in the project, but I felt accomplished that I was able to get working English text in there. The font is ugly, yeah, but that’s because it’s using all the existing English font that comes with the game (only used for names and certain other things — that’s why the sizes/heights are all weird and some odd kerning).