Fixing The Damage Of A Botched SNES SuperCIC Mod

Not what you want to see when testing that 'repaired' SNES. (Credit: Skawo, YouTube)
Not what you want to see when testing that ‘repaired’ SNES. (Credit: Skawo, YouTube)

The good part about older game consoles like the Super Nintendo is that they have rather rudimentary region locks, but unfortunately this also gives some people the idea that installing something like the SuperCIC mod chip to make a SNES region-free is easy. The patient that arrived on [Skawo]’s surgery table was one such victim, with the patient requiring immediate surgery to remove the botched installation before assessing the damage.

Here the good news was that the patient features the revision B CPU, making it a good console to rescue. The bad news was that the pads of the old CIC chip had been ripped up, there was a solder bridge on S-PPU1 between two pins and both the installed wiring and soldering were atrocious, requiring plenty of touch-ups.

With the CIC pads already a loss, finishing the SuperCIC mod seemed like a good plan, also since this would make for a nice region-free console. This mod involves a PIC16F630 with special firmware that works with the corresponding CIC IC in each cartridge, while also switching between 50/60 Hz mode to fit the cartridge’s region. After an initial test with PAL and NTSC cartridges everything seemed all right. Then [Skawo] ran the SuperNES Burn-In test from its cartridge, which gave dire news.

Continue reading “Fixing The Damage Of A Botched SNES SuperCIC Mod”

Taser Chess Teaches Valuable Lessons The Hard Way

Over the last few centuries, behavioral psychologists have documented all kinds of ways of modifying our actions and the actions of various animals. From the famous Skinner boxes to many modern video game mechanics, animals and humans alike can learn through the addition or subtraction of various rewards and punishments. And it doesn’t only impact simple actions either; [Everything is Hacked] took this idea to the extreme, using painful electric shocks to teach himself to avoid making blunders while playing chess.

This positive punishment system uses a medical device called transcutaneous electrical nerve stimulation (TENS) to deliver an electric shock to the skin. The electrical jolt is routed through a custom-built, conductive chess board where each square is isolated from the others and controlled by its own relay. The pieces are conductive as well, so if one is placed on a square where it shouldn’t go a relay will switch on to quickly provide the behavioral modification. The control logic is provided by a Raspberry Pi running the Stockfish chess engine, and it keeps track of the locations of the positions of all the pieces by using MX switches in the base of each square on the board.

This project took [Everything is Hacked] over a year to get into a working condition, including having to rebuild the entire project twice after mishaps with baggage handling at an airline. But he was able to demo the board to the Open Sauce tech festival and even took it to his local park to play chess with the local hustlers. Unfortunately, he reports that he spent more time reworking and rewiring his board over that year than he did improving his chess game, so unfortunately he still hasn’t been able to win any of his money back yet. Perhaps combining this project with a chess-playing robot would help.

Continue reading “Taser Chess Teaches Valuable Lessons The Hard Way”

Porting Super Mario 64 To The Original Nintendo DS

Considering that the Nintendo DS already has its own remake of Super Mario 64, one might be tempted to think that porting the original Nintendo 64 version would be a snap. Why you’d want to do this is left as an exercise to the reader, but whether due to nostalgia or out of sheer spite, the question of how easy this would be remains. Correspondingly, [Tobi] figured that he’d give it a shake, with interesting results.

Of note is that someone else already ported SM64 to the DSi, which is a later version of the DS with more processing power, more RAM and other changes. The reason why the 16 MB of RAM of the DSi is required, is because it needs to load the entire game into RAM, rather than do on-demand reads from the cartridge. This is why the N64 made do with just 4 MB of RAM, which is as much RAM as the NDS has. Ergo it can be made to work.

The key here is NitroFS, which allows you to implement a similar kind of segmented loading as the N64 uses. Using this the [Hydr8gon] DSi port could be taken as the basis and crammed into NitroFS, enabling the game to mostly run smoothly on the original DS.

There are still some ongoing issues before the project will be released, mostly related to sound support and general stability. If you have a flash cartridge for the DS this means that soon you too should be able to play the original SM64 on real hardware as though it’s a quaint portable N64.

Continue reading “Porting Super Mario 64 To The Original Nintendo DS”

The Joy Of Making Handheld Tetris From Scratch

As anyone who’s made a thing knows, a lot of work goes into bringing something from idea to completion. But there’s also considerable satisfaction in the process. [Willian] recently did exactly that, and shares the joyful experience of creating a homebrew handheld game gadget from scratch. It runs a homebrewed Tetris clone (as well as Snake), and we love the results.

The game gadget uses an ATmega328P programmed via the Arduino IDE, and a 1.8″ TFT color LCD screen. It’s self-contained in a box with a few buttons as controls and runs off three AAA cells. [Willian] made the smart design choice to run the microcontroller at 8 MHz instead of the more common 16 MHz, because doing so meant the board can run at 3.3 V instead of 5 V. Why does this matter? The LCD display runs off 3.3 V as well, and if all components can run off the same supply and logic levels, it simplifies things considerably.

Also, creating a 3.3 V supply is a simple matter of three alkaline cells in series with an LDO (low drop-out) regulator, which is great for a handheld device. We do note that AA cells have a considerably higher energy density and capacity than AAA cells and are usually the better choice, but one works with what one has, and sometimes the space and weight saved by AAA is just too good to pass up.

The software has some notable approaches to keep things responsive and optimal. Instead of defining each of the Tetris pieces as a 2D shape, [Willian] instead pre-defines each piece (and their rotations) so that rotating a piece is just an index change in an array, instead of a transform implementing a rotation. Also, full-screen redraws are comparatively slow over SPI and caused flickering, so only cells that have changed are redrawn to the screen to keep things responsive. The code is all on GitHub, and it’s a great peek at how things get implemented under the hood.

The enclosure is just cardboard, and it does the job in [Willian]’s case. But we’ll point out that cardboard is actually a highly adaptable material from which to prototype. With just a few tips and a little care, paper products can be your new best friend when it comes to one-offs and prototypes.

An Open Source Client For World Of Warcraft

When World of Warcraft was launched in 2004, it became somewhat of a juggernaut in the MMORPG space. Millions of players continue to login every month. [Kelsi Davis] is one such player, but she doesn’t always log in with the regular client anymore. That’s because she put together WoWee—an open-source alternative of her very own.

WoWee is an acronym—World of Warcraft Engine Experiment. Coded in native C++, it’s a homebrewed client that uses a custom OpenGL renderer to display the game world. [Kelsi] notes that it’s strictly an “educational/research” project, built without using any official Blizzard assets, data or code. Instead, it grabs some client data from a legally-obtained install to operate and loads certain assets this way.

It’s currently compatible with the vanilla game as well as The Burning Crusade and Wrath of the Lich King expansions. It should be highlighted how much work this project has already involved—with [Kelsi] needing to recreate various functional minutae in the game, from character creation screens to weather systems and skyboxes. There’s still a lot to do, as well, like adding 3D audio support and making it more interoperable with the quest system.

It’s rare that any MMO gets an open-source client, even less so while the original game is still being actively supported by the developers. Still, we do see some creative hacks in this space.

Continue reading “An Open Source Client For World Of Warcraft

Software Development On The Nintendo Famicom In Family BASIC

Back in the 1980s, your options for writing your own code and games were rather more limited than today. This also mostly depended on what home computer you could get your hands on, which was a market that — at least in Japan — Nintendo was very happy to slide into with their ‘Nintendo Family Computer’, or ‘Famicom’ for short. With the available peripherals, including a tape deck and keyboard, you could actually create a fairly decent home computer, as demonstrated by [Throaty Mumbo] in a recent video.

Continue reading “Software Development On The Nintendo Famicom In Family BASIC”

Inside Raiders Of The Lost Ark (Atari Style)

It’s a bit ironic that an Atari 2600 game based on Raiders of the Lost Ark — a movie about archaeology — is now the subject of its own archaeological expedition as [Dennis Debro] and [Halkun] spent time reverse-engineering the game. Luckily, they shared their findings, so you can enjoy it the same way you can visit a king’s tomb without having to discover it and dig for it. If you don’t remember the game, you might enjoy the demo from [Speedy Walkthroughs] in the video below.

If you are only used to modern software, you might think this is little more than someone dumping the program code and commenting it. However, on these old, limited systems, you have to really understand the actual architecture because there are so many things you have to manage that are specific to the hardware.

For example, the game has two 4K ROM banks that use a strange switching mechanism. The entire game is built around the NTSC television signal. Everything is oriented toward generating the 60 Hz frame rate. Game logic runs during the vertical blanking and over-scan sections to prevent strange visible artifacts due to software running.

This is a fascinating look inside game coding as it existed around 1982. Of course, you can also run everything using emulation. Usually, our reverse engineering is more hardware-related. But we do love these old games, too.

Continue reading “Inside Raiders Of The Lost Ark (Atari Style)”