SUDDEN DESU

disassemblies・digital archaeology・data preservation

Entries

Every now and then I strike gold: not another tile viewer or a meaningless data viewer, but something that is really interesting and unique. Riot City was such a gold mine: an English localization for a game that supposedly was onlty released in Japan, and an alternate, spicy ending! Oh, and I guess there’s some data viewers in there too…

┇Disassembly / Analysis
🖉 by Ryou

The end of 2025 is upon us! Let’s see if we can squeak in one last quickie article before the end of the year. Let’s take a brief look at the disabled debug tools inside Rockman 2: The Power Fighters (or Megaman 2, I suppose, if you’re the kind of person who pronounces NES as “ness”).

┇Disassembly / Analysis
🖉 by Ryou

We have something a bit special today: a prototype of a Mega CD game! (crowd cheers) Unfortunately, it’s one of, if not the worst game for the system: Heavy Nova. (crowd boos) But it does have something pretty interesting within it’s data which redeems its value a bit. (crowd cheers cautiously)

Let’s take a look.

┇Disassembly / Analysis
🖉 by Ryou

We’re back on our CPS2 jam, and we’re looking at Alien vs Predator this time. Buried in its code are a bunch of debugging tools and an alternate staff roll. Compared to the mess that was Progear no Arashi, things were pretty straightforward this time, but there’s still a fair bit of technical complexity we need to cover, so let’s get into it.

┇Disassembly / Analysis
🖉 by Ryou

Tōki Denshō may not be the most refined or serious fighting game in the world, but it’s quirky and has a unique place in Tecmo history. It’s also a miracle that the game even made it to release, suffering during development from an understaffed team, threats and bad ideas from upper management, bad location test results, and the spectre of Dead or Alive that was stealing away the few resources they had.

The details of Tōki Denshō’s development were compiled by the game’s main planner, Jun, as part of the Tōki Gentei dōjinshi. Now, more than six years after I initially promised it, here is a translation and commentary on that development diary.

┇Translation
🖉 by Ryou

Good grief, has it really been almost two years since a proper article was posted? Let’s finally correct that by taking a look at Progear no Arashi and the mess of debug tools and code oddities tucked away in its data.

┇Disassembly / Analysis
🖉 by Ryou

Let’s take a look at a fighting game with a troubled development history, questionable aesthetic choices, cut characters and hidden debug tools. No, we’re not talking about Tōki Denshō this time. It’s Psikyo’s 1998 fighting game, Daraku Tenshi: The Fallen Angels! In part 1, we’ll look at the game’s hidden development tools and other code mysteries, then in Part 2 we’ll discuss the game’s decimated storyline.

┇Disassembly / Analysis
🖉 by Ryou

A Tecmo game featuring boobs? Simply unheard of!

WARNING: This article is slightly NSFW. Turn back now if you’re in a sensitive area or are offended by low resolution pixel breasts.

┇Disassembly / Analysis
🖉 by Ryou

The CPS 2 has a storied history in the emulation scene and hardly needs an introduction. You may think there is nothing left to discover with this hardware, but there are remaining secrets indeed. 24 of them, in fact, in the form of little blue switches…

┇Disassembly / Analysis
🖉 by Ryou

Sometimes you begin disassembling some code thinking, “well, there’s not much here, this won’t take long to research and write about,” and then it spirals out of control and takes up all your free time for multiple weeks.

Anyway, here’s more than you ever wanted to know about what’s hidden away inside Magical Crystals!

┇Disassembly / Analysis
🖉 by Ryou

It’s Sexy Parodious! Flying pigs, a horny octopus, and a really janky debug tool hidden away in there.

🖉 by Ryou

It’s a mahjong game! It’s a falling-block puzzle game! No, it’s Oh! Paipii, a mix of both that isn’t nearly as fun as either of those genres are on their own!

🖉 by Ryou

Today we’ll look at the sequel to Numan Athletics: Mach Breaker! If you have a particular interest in debugging tools, then strap in because you’re going to have a ball playing with what Namco left in the game. Let’s dive in!

🖉 by Ryou

The game responsible for bringing Mighty and Ray into the world also has a bunch of debugging tools, a ton of cut content, and an interesting development history tucked away.

┇Disassembly / Analysis
🖉 by Ryou

A solid shooter from Taito with impressive scene transitions and even better music from Zuntata. And a handful of debug tools that took some wrangling to get working. But wrangled they have been!

┇Disassembly / Analysis
🖉 by Ryou

A competent but relatively uninteresting shooter from Face, the people who are way more famous for Money Idol Exchanger. At least there’s a stage select!

┇Disassembly / Analysis
🖉 by Ryou

Aurail is a half top-down, half quasi-3D mech based shooting game developed by Westone and published by Sega. It’s fun but a bit difficult to play (or more likely I just suck at it), and there’s a debug/cheat lurking just beneath the surface of the code…

┇Disassembly / Analysis
🖉 by Ryou

Aside from disassembling games, I also occasionally enjoy assembling them. While I don’t have a lick of talent when it comes to the creative side of game creation, I love to work on the code and technical minutiae. In particular, I enjoy the Sega 16-bit era hardware, and while we have a great library for easy Megadrive development in the form of SGDK, the Mega CD is still a bit difficult to approach. I’d like to change that eventually…

┇Development
🖉 by Ryou

I hope your holidays were happy! Now let’s talk about the upcoming year.

┇Site News
🖉 by Ryou

Getting back to our roots of hacking on obscure Japanese quiz/mahjong games that no one else cares about, we’re taking apart Athena no Hatena today!

┇Disassembly/Analysis
🖉 by Ryou

Lucky & Wild is a crossover between arcade racing and lightgun shooting genres with a buddy-cop twist. As always, Hardcore Gaming 101 has a great description of it. Unfortunately, I’ve never seen it in an arcade, but it seems like a lot of fun. The game code has a few disabled test menus as well as a round select that has what appear to be test levels! There are also a small truckload of debug tools that were more than a little bit difficult to get working…

🖉 by Ryou

In the beginning, there was Virtua Fighter 2. And Suzuki Yu looked upon the game and saw that it was good. Thus were Fighting Vipers and Sonic the Fighters developed upon its game engine. And, lo, there dwelt within the code of each a bounty of debug tools!

┇Disassembly / Analysis
🖉 by Ryou

Tōki Denshō - Angel Eyes is an enigmatic fighting game  from Tecmo and the second (and last) game on their proprietary Tecmo Motherboard System hardware. It was quickly overshadowed by Dead or Alive and sunk into relative obscurity. It would be a stretch to call the game good, but some of its aspects, like the jarring mix of 2D and pre-rendered 3D sprites, make it oddly fascinating. While I don’t normally stray too far from the code, I branched out quite a bit to research this article and it’s been an interesting journey…

┇Disassembly / Analysis
🖉 by Ryou

This is a great little collection of classic Namco games - Pac-Man, Rally X, Dig Dug, Mappy, Galaga and Xevious. Not only are the original games faithfully recreated, there’s an ‘arranged’ mode for each with new graphics, music and gameplay. Oh, and there are bunches of debug tools leftover…

┇Disassembly / Analysis
🖉 by Ryou

Platformer arcade games are a bit rare, so it’s a shame that Recalhorn (that’s ree-cal-horn, according to the katakana) never got past the location test stage. The graphics are quite nice, even beautiful in some backgrounds, and while the gameplay isn’t ground-breaking, it’s classic and solid. But other people have written better reviews than I ever could, so let’s just jump into what I found…

┇Disassembly / Analysis
🖉 by Ryou

Ah, Rod Land, the colorful and popular Jaleco platformer known mostly for its home computer ports, especially on the Amiga. The arcade version is the original, though, and has the most content and best graphics.

It’s been more than two years since I first started taking the game apart. I was new to disassembling code at that point and was making pretty slow progress on understanding what I was finding. Every few months I would pick it back up and chip away at it some more, but never formalized anything into an article.

Well, I decided to finally power through it about a month ago, and here we are. This is the most thorough disassembly I’ve done to date, and this article covers all the interesting bits.

┇Disassembly / Analysis
🖉 by Ryou

I cut my teeth on game hacking and research in the Sonic communities of the early 2000’s - Area 51, SSRG, CulT - and the Sonic arcade games were always something of an enigma to us. It’s been especially exciting to see that these rarities have been finally dumped, including Cosmo Fighter.

I opened the data not expecting to find much and, unfortunately, I was correct. But there are a couple interesting tidbits worth looking at…

🖉 by Ryou

Just a small article this time. I came across an intriguing line of text as I was taking apart Detana! Twin Bee (arcade version) recently. Though part of the message shows up normally at the end of the game, it turns out there’s more to the story…

┇Disassembly / Analysis
🖉 by Ryou

I’ve had this article half-researched and half-written for more than a year now, just sort of laying around. I’ve lacked the interest in finishing it because, frankly, the game is pretty awful. Well, after months of Donpachi and Dodonpachi, it’s time to take a short break with something easy.

Enjoy, I guess?

┇Disassembly / Analysis
🖉 by Ryou

And now for the article many people have been waiting for: Dodonpachi! Unfortunately, I didn’t make it in time for the 20th anniversary of the game on February 5th, but oh well; better late than never right? This game seems to have a larger following than it’s predecessor, so I’m sure shmup fans will enjoy the re-enabled debugging tools available to play around with. There’s not much else to say, so here we go!

┇Disassembly / Analysis
🖉 by Ryou

Happy New Year! As promised, here is the writeup on the classic Cave shooter, Donpachi. I’ve decided to do something a little bit different here. Instead of spending so much time writing out the technical details of my findings, I’m instead just providing an overview and MAME cheats to access them. I’ll do the same with the Dodonpachi which will follow later. Later this year I’ll finish up with a detailed technical article about both games. I’m doing it this way in part because the two games share a lot of code (as DDP was clearly built off of DP), and in part because I’ll never get this article out the door in time otherwise. I think there’s a bunch of interesting things here that fans of the game will want to play with, so I’d like to get it published sooner than later.

With all that said, here we go…

┇Disassembly / Analysis
🖉 by Ryou

2016 turned out to be an amazing year for me personally. It was because things were so great that the site didn’t get much love the past few months…

┇Site News
🖉 by Ryou

It’s been a while, hasn’t it? Some major events have happened in my life, namely planning a trip to Japan later this year and finally returning to college, which have stolen much of my attention. But I still enjoy disassembling and researching old software, and there’s still a backlog of content to finish writing and post, so the site is definitely not dead!

And speaking of backlogs, a few months back my friend AJ on twitter asked that I take a look at Neo Bomberman for the NeoGeo after spotting some suspicious text strings. I started the initial disassembly right away, but didn’t give it a serious examination until recently…

┇Disassembly / Analysis
🖉 by Ryou

Originally written November 2013

Eight years ago (!), we were starting to really dig into the Chrono Trigger Pre-release Demo ROM. I was making it a project to dump all of the dialogue from this Demo version for comparison to the final. I wanted to do a full translation and hoped to find exciting differences in the story. I never finished the translation or comparison, but thankfully the Chrono Compendium completed that project fantastically. While identifying the text blocks and dumping them, we found early on that there was leftover dialogue data from previous versions of the game. Unfortunately, the text was broken: the hiragana and katakana were readable but the kanji was wildly incorrect. That broken text has never been given a thorough examination, until recently when, on a whim, I picked up the project again and documented what I found…

┇Disassembly / Analysis
🖉 by Ryou

Another game with too much stuff to cram into one post! Burning Force is a shooter similar to Space Harrier, only a bit prettier (and newer, to be fair). In part 1 I’ll show a few of the most interesting finds, and then in part 2 we’ll look at some leftover debugging tools, bugs and other miscellany.

┇Disassembly / Analysis
🖉 by Ryou

Whoa! The website (in its current form) just passed its one year anniversary! I figured after a year it was FINALLY time to give the design a little refresher with better support for mobile devices, so I spent some time redoing the layout with Bootstrap as well as fixing up some of the design. I think it came out pretty well. Aside from that, I’ve also been hacking on a new game…

┇Disassembly / Analysis
🖉 by Ryou

Still alive, just been busy with life and other hobbies in the meantime. Data hacking has been on my mind though, and it’s about time to get back to that. For now, I still have a handful of things in my queue to post about, including Shadow Over Mystara for the CPS-2 system!

┇Disassembly / Analysis
🖉 by Ryou

I took a look at Tinkle Pit a few months back, and recently I’ve tried tackling it again to see if I can’t get that wonky Level Select working. While I’ve made some progress with that (maybe?), I also stumbled across some interesting name substitutions in the High Score Entry screen.

┇Disassembly / Analysis
🖉 by Ryou

Normally I’d save this to post on a rainy day, but I was so amused when I saw it that I really wanted to share it right away: it looks like those wacky 3DO firmware devs left some messages for us to find!

┇Disassembly / Analysis
🖉 by Ryou

I seem to be running into this a lot lately, where standard test mode options are disabled or missing from test menus. Honestly, while it’s always gratifying to dig out unused code and make it dance, these finds are kind of boring. But at least this game has some hidden developer credits. Those are always interesting!

┇Disassembly / Analysis
🖉 by Ryou

Oh man, I am EXCITED! Pocket Fighter was one of the first games I tried picking at when I started hacking old arcade games around the end of last year. I could clearly see from the raw dump alone that there was something hidden away here (it doesn’t get more blatant than a string reading “SECRET TEST”). I tweeted when I found the the entry routine early on, but I could never quite coax the game into loading it properly. Until now…*suspenseful music*

┇Disassembly / Analysis
🖉 by Ryou

I’m still alive! It’s the busy season at work, so between that and working on other projects, I haven’t been doing much digital archaeology research. Tonight I spent some time doing just that.

So! Dark Seal 2 (known as Wizard Fire in the west) is a fantasy themed beat-em-up. And apparently it has a variety of debug functions remaining…

┇Disassembly / Analysis
🖉 by Ryou

Life is finally returning to normalcy (whatever that is) after moving into my new house. And that means back to hacking old games in my spare time! Today we’ll look at Akamaru Q Joushou, a game you probably haven’t bothered with unless your Japanese is pretty good. At its heart, it’s a quiz game, but it also has a variety of simple action and word games as well to make things interesting. It has one hell of a collection of debugging tools… and a very interesting developer easter egg!

┇Disassembly / Analysis
🖉 by Ryou

Kyukyoku Sentai Dadandarn, meaning Ultimate Battle Squad Dadandarn and called Monster Maulers in the West, is Konami’s homage to/parody of the sentai genre of TV shows, movies and comics. It’s a solid game and pretty fun; Hardcore Gaming 101 has a good review. And I got way more than I bargained for when I started taking the game apart: so much more that I’ll be making splitting this into two posts. Here we go…

┇Disassembly / Analysis
🖉 by Ryou

Yet another adult arcade quiz game, this time with some pretty well-drawn and amusing artwork by eromanga artist Miyasu Nonki! A while back I found the text for an alternate test menu, with object and background checks. I could never really track it down properly with the standard MAME disassembly. Maybe I just wasn’t trying hard enough, because when I gave it another go yesterday, this time in IDA, I was finally able to find the routine as well as the non-hacked method for activating it.

┇Disassembly / Analysis
🖉 by Ryou

I’m pretty burnt out on tackling Super Gem Fighter / Pocket Fighter right now. I took a little break and did some more research on something quite interesting I had found a while back: English text in Koutetsu Yousai Strahl, a horizontal shooter and a favorite among shmup fans.

EDIT 2018-11-28: As of MAME 0.203, there is a world region dump of Strahl. It contains the English text that was found in the Japanese version, making this article relatively useless. Oh well.

┇Disassembly / Analysis
🖉 by Ryou

The Atari File Management Subsystem (FMS) is the filesystem on an Atari 810 floppy disk.

The 720 sectors of the disk were numbered from 1 to 720, but (perhaps due to poor communication between the different development teams at Atari) the FMS filesystem was designed to support sector addresses in the range from 0 to 719, which meant that sector 720 was not addressable but a nonexistent sector 0 was. This resulted in the filesystem only using the 719 sectors in the overlap between what is addressable and what actually exists, so sector 720 is unused (a waste of a perfectly good 128 bytes).

(Source)

┇Article
🖉 by Ryou

I noticed this menu a while back in Magical Error wo Sagase, a puzzle game where you search for differences between two images. In the past I was able to load the routine, but I guess the stack wasn’t set up properly, and it would reset the game immediately after the text appeared. I took a second look at the disassembly tonight and had much better success.

┇Disassembly / Analysis
🖉 by Ryou

I was pretty unhappy that Land Maker, one of my favorite arcade puzzle games, was one of the few Taito F3 games that did not have the Taito code implemented. Despite that, I still had a hunch there may be some leftovers worth investigating. And I was right! I wouldn’t be making a post otherwise…

┇Disassembly / Analysis
🖉 by Ryou

Around 1988, Taito began implementing a standard level select code into many of their arcade games. The code was not available to normal players, as it requires the use of the Service button, inside the cabinet. Considering the timing required to press Start and Service in quick succession, it may not have been for cabinet owners either, but instead for the developers who had direct access to the hardware and who may have had those special buttons mapped to something more accessible for testing.

Indeed, some games have more than just level selects, including basic map or object editors and viewers. Some menus allow you to select level numbers well beyond what actually exist in the game, loading non-existant game data when selected. Some menus are very plain, while others obviously had some work put into them. Besides the obvious bonus of easily exploring the game levels without so much work, the menus themselves are sometimes a fascinating look at the developer’s side of the game.

┇Disassembly / Analysis
🖉 by Ryou

Well, that’s enough mahjong for now… Let’s try something a little more exciting! Like the title screen implies, Riding Fight is a FRONT VIEW SPEED ACTION GAME featuring a couple of hoverboard-mounted radical dudes from the future who punch everything in their path. And it turns out it has a level select screen!

┇Disassembly / Analysis
🖉 by Ryou

More Mahjong Menus! Next up we have Nyanpai and Musōbana, two games that run on the same Nichibutsu hardware and share most of the same artwork as well as a hidden test menu.

┇Disassembly / Analysis
🖉 by Ryou

Still hacking around with MAME games, and I’m having a blast! This time I opened up Ojanko Yakata (roughly translated as Mahjong Girl Mansion), one of the many, many adult mahjong games to grace game centers of the past. I spotted some ASCII in the memory dump that looked like a hidden developer credits screen and investigated…

┇Disassembly / Analysis
🖉 by Ryou

There’s a request on mamecheat for Pocket Gal Deluxe, and I figured I’d give it a go. I played around for a bit, then discovered a nice, juicy string table with some intriguing bits of text. After a few hours of working backwards through the disassembly, I discovered a number of interesting tidbits in the data!

┇Disassembly / Analysis
🖉 by Ryou

The MAME hacking continues! Momoko 120% is a platform shooter with an interesting history. I’ve always enjoyed it and have begun a full disassembly of the code, partially to learn Z80 assembly and also, as always, to look for any bits of leftover or unused data. And find something I did!

┇Disassembly / Analysis
🖉 by Ryou

I’ve been playing around with the MAME debugger recently. I loaded up Tinkle Pit, a cute, simple (at first…) maze game and started playing around with altering memory values. I found what appeared to be the value for the current game mode, and after poking it for a bit, I came across an odd screen…

🖉 by Ryou

This is a fascinating older post made by the NYC Resistor group detailing the technical data behind the images left behind in the Apple Mac SE ROM<. As the ROM only used 89kB of the available 256kB, the original development digitized pictures of themselves and hid them away in the remaining space. The article goes into some interesting details about the image format and CPU opcodes.

Damian Ward has also posted some nice shots of the images on hardware: here, here, here and here.

┇Article
🖉 by Ryou

2014 is beginning to come to a close.

I’ve wanted to redo this website for a while now, and what better time to get it done than before the new year. The first iteration of the site was simply a front-end for a tumblr blog, which was focused on retro gaming and computer, digital archaeology, interesting hardware, etc., but also contained a fair amount of unrelated interests. It was also one of my first attempts at cobbling together a Javascript SPA; the original code is pretty nightmarish.

I dabbled in rewriting it with AngularJS which was… a learning experience. I got pretty far into it too, but in the end ot was more trouble than it was worth. Besides, while using the tumblr API was a neat exercise, I’d rather keep my posts on my own server, where I can back up and export the database as necessary. Nerd paranoia and desire for control, I guess.

So, here we are with a new blog/CMS system called Chyrp. It seems to be a nice balance of small and functional. I’m sure I’ve missed some nooks and crannies when making the custom theme, but they should be fixed sooner than later.

The content will focus on old video games and computer software, game hacking, digital archaeology, software easter eggs and secrets and retro hardware… I hope you find all of that as interesting as I do! For now I’ll be re-posting some of the more relevant content from tumblr, but I hope to keep it regularly update with new stuff after that.

┇Site News
🖉 by Ryou