Satoru Iwata is perhaps best remembered for leading Nintendo through the development of the DS and Wii, two wildly successful systems which undeniably helped bring gaming to a wider and more mainstream audience. But decades before becoming the company’s President in 2002, he got his start in the industry as a developer working on many early console and computer games. [Robin Harbron] recently decided to dig into one of the Iwata’s earliest projects, Star Battle for the VIC-20.
It’s been known for some time that Iwata, then just 22 years old, had hidden his name and a message in the game’s source code. But [Robin] wondered if there was more to the story. Looking at the text in memory, he noticed the lines were actually null-terminated. Realizing the message was likely intended to get printed on the screen at one point during the game’s development, he started hunting for a way to trigger the nearly 40 year old Easter Egg.
As it turns out, it’s hidden behind a single flag in the code. Just change it from 0 to 1, and the game will display Iwata’s long-hidden credit screen. That proved the message was originally intended to be visible to players, but it still didn’t explain how they were supposed to trigger it during normal game play.
That’s where things really get interesting. As [Robin] gives us a guided tour through Star Battle’s inner workings, he explains that Iwata originally intended the player to hit a special combination of keys to tick over the Easter Egg’s enable flag. All of the code is still there in the commercial release of the game, but it’s been disabled. As Iwata’s life was tragically cut short in 2015 due to complications from cancer, we’ll perhaps never know the reason he commented out the code in question before the game was released. But at least we can now finally see this hidden message from one of gaming’s true luminaries.
Retro gaming is huge right now, and like probably millions of other people, [wrongbaud] found himself taking possession of a couple faux-classic gaming gadgets over the holidays. But unlike most people, who are now using said devices to replay games from their youth, he decided to tear into his new toys to see how they work.
The first to get pulled apart is a handheld The Oregon Trail game, which Hackaday readers may recall from a teardown we did back when it was first released. His work continues right where our teardown left off, by pulling the game’s two EEPROM chips out and dumping their contents. As expected, [wrongbaud] found that the I2C connected chip contained the game save information, and the SPI flash chip stored the actual game files.
Next up was an HDMI “stick” from Bandai Namco that allows the user to play a selection of NES games. Here again [wrongbaud] liberates the flash chip and dumps it for examination, this time using an ESP32 tool of his own creation. Inside the firmware image he’s able to identify several elements with the help of binwalk, such as splash screen graphics and text strings.
But perhaps most interestingly, he found that binwalk was able to automatically extract the NES ROMs themselves. After verifying they were standard ROMs with an NES emulator, he theorizes that repacking the firmware with different ROMs should be possible should anyone feel so inclined.
Both of these hacks are fantastic examples of how you can reverse engineer a device’s firmware with low cost hardware, open source tools, and a healthy dose of patience. Even if you aren’t interested in fiddling with The Oregon Trail or swapping out the Mappy ROM for Contra, this write-up is an invaluable resource for anyone looking to do their own firmware analysis.
The fact that the front ports are functional and work with the original controllers really helps sell the stock look. [Andreas] found a USB to PlayStation controller adapter, liberated the PCB, and soldered it to the back of the system’s ports. Even the memory card slots got in on the action, thanks to female USB connectors installed where the original connector went. It was a tight fit, but the final result was well worth it.
We also love the GPIO-controlled cooling fan complete with a duct designed to blow across the notoriously toasty Pi, and check out that carefully designed holder for the power and reset buttons. This entire project is really a fantastic example of how 3D printed parts can give your projects a far cleaner and more professional look than the hacker’s old standby of hot glue; though of course it demands a considerable time investment.
We’re not allowed to have TV here in the Hackaday Wonder Bunker, but occasionally we’ll pool together the bandwidth credits they pay us in and gather ’round the old 3.5 inch TFT LCD to watch whatever Netflix assures us is 93% to our liking. That’s how we found out they’ve made a show based on, of all things, one of the Castlevania games for the NES. We wanted to play the game to understand the backstory, but since it hails from the era of gaming where primitive graphics had to be supplemented with soul-crushing difficulty, we didn’t get very far.
But thanks to a very impressive project developed by [Michael Birken] maybe we’ll have it all figured out by the time we’ve saved enough credits to watch Season 2 (no spoilers, please). The software, which he’s quick to point out is not an example of machine learning, is an attempt to condense his personal knowledge of how to play Castlevania into a plugin for the Nintaco NES emulator. The end result is CastlevaniaBot, which is capable of playing through the original Castlevania from start to finish without human intervention. You can even stop and start it at will, so it can play through the parts you don’t want to do yourself.
[Michael] started this project with a simple premise: if he could make a bot successfully navigate the many levels of Dracula’s castle, then getting it to kill a few monsters along the way should be easy enough. Accordingly, he spent a lot of time perfecting the path-finding for CastlevaniaBot, which included manually playing through the entire game in order to get an accurate map of the background images. These images were then analyzed to identify things like walls and stairs, so the bot would know where it could and couldn’t move protagonist Simon Belmont. No matter what the bot is doing during the game it always considers where it is and where it needs to be going, as there’s a time limit for each stage to contend with. Continue reading “AI Bot Plays Castlevania So You Don’t Have To”→
Kids these days, they have it so easy. Back in the old days, we learned our elements the hard way, by listening to “The Elements” by Tom Lehrer over and over until the vinyl wore out on the LP. Now, thanks to [Karyn], kids can learn the elements by playing “Battleship” – no tongue-twisting lyrics required.
For anyone familiar with the classic “Battleship” game, you’ll wonder why no one thought of this before. [Karyn]’s version of the game is decidedly low-tech, but gets the job done. She printed out four copies of the periodic table, added letters to label the rows, and laminated them. A pair of tables goes into a manila file folder, the tops get clipped together, and dry-erase markers are used to mark out blocks of two to five elements to represent the ships of the Elemental Navy on the lower table. Guesses at the location of the enemy ships can be made by row and series labels for the elementally challenged, or better yet by element name. Hits and misses are marked with Xs and Os on the upper table, and play proceeds until that carrier hiding in the Actinide Archipelago is finally destroyed.
This is pure genius in its simplicity and practicality, but of course there’s room for improvement. The action-packed video after the break reveals some structural problems with the file folders, so that’s an obvious version 2.0 upgrade. And you can easily see how this could be used for other tabular material – Multiplication Table Battleship? Sounds good to us. And if your nippers catch the chemistry bug from this, be sure to take a deeper dive into the structure of the periodic table with them.
Now, if you’ll excuse me: “There’s antimony, arsenic, aluminum, selenium, and hydrogen and oxygen and nitrogen and rhenium….”
The PC Engine was pretty popular in Japan, but only the coolest kids in America had the US edition, the TurboGrafx16. These two systems weren’t exactly the same; the TurboGrafx-16’s data bus was flipped so the games were made to be incompatible, and the US games have a region lockout. [Kaz] looked at the existing hacks for running Japanese games on US systems, and every single one of them required modding a console. Thinking he could do better, he came up with the PC-Henshin, an adapter and CPLD that allows Japanese game to run on US consoles.
To take care of the mixed up lines on the PC card connector between the US and Japanese variants, a few adapter cards are available. That’s great, but they only solve one part of the compatibility problem. The region lockout routine found on nearly every American title mean PC Engine consoles can’t run TurboGrafx-16 games. [Kaz] used a small, cheap CPLD to read the data bus, patch everything as it is read out, and turns a Japanese console into something that can play American games.