A few years ago, [Mike]’s friend gave him an old Sega Genesis with the very cool and somewhat rare SegaCD drive attached. The SegaCD gave him an idea – while it’s not easy to burn a cartridge and play homebrew games on a real Genesis console, everyone has a CD burner somewhere. [Mike] began writing his demo and then realized adding Java would be easy on the 68000. The result is Java on three billion devices and a Sega Genesis.
This project is built around Java Grinder a Java byte code compiler that will compile classes, factories, and all the horrible Java design.design.pattern.pattern.patterns() into assembly language. Already, there are a lot of platforms supported by Java Grinder, including the Commodore 64, the TI99, and thanks to some work from [Joe Davisson], the Apple IIgs
With a byte code compiler, an assembler, and an API for the Sega-specific hardware, [Mike] set about building his demo. Since this was a Sega, it needed the ‘SEGA’ sound at the start. [Mike] ended up recording his voice saying ‘JAVA!’ This plays through the Z80 on the Genesis.
The complete demo – viewable in its emulated format below – has everything you would expect from a proper demo. Starfields, dancing sprites, and even a Mandelbrot pattern make it into the three-minute long demo.
Continue reading “3 Billion Devices And A Sega Genesis Run Java”
From time to time, we at Hackaday like to publish a few engineering war stories – the tales of bravery and intrigue in getting a product to market, getting a product cancelled, and why one technology won out over another. Today’s war story is from the most brutal and savage conflicts of our time, the console wars.
The thing most people don’t realize about the console wars is that it was never really about the consoles at all. While the war was divided along the Genesis / Mega Drive and the Super Nintendo fronts, the battles were between games. Mortal Kombat was a bloody battle, but in the end, Sega won that one. The 3D graphics campaign was hard, and the Starfox offensive would be compared to the Desert Fox’s success at the Kasserine Pass. In either case, only Sega’s 32X and the British 7th Armoured Division entering Tunis would bring hostilities to an end.
In any event, these pitched battles are consigned to be interpreted and reinterpreted by historians evermore. I can only offer my war story of the console wars, and that means a deconstruction of the hardware.
Continue reading “Winning the Console Wars – An In-Depth Architectural Study”
Before the days of the RetroPie project, video game clones were all the rage. Early video game systems were relatively easy to duplicate and, as a result, many third-party consoles that could play official games were fairly common. [19RSN007] was recently handed one of these clones, and he took some pretty great strides to get this device working again.
The device in question looks like a Sega Genesis, at least until you look closely. The cartridge slot isn’t quite right and the buttons are also a little bit amiss. It turns out this is a Famicom (NES) clone that just looks like a Sega… and it’s in a terrible state. After a little bit of cleaning, the device still wasn’t producing any good video, and a closer inspection revealed that the NOAC (NES-on-a-Chip) wasn’t working.
Luckily, [19RSN007] had a spare chip and was able to swap it out. The fun didn’t stop there though, as he had to go about reverse-engineering this chip pin-by-pin until he got everything sorted out. His work has paid off though, and now he has a video game system that will thoroughly confuse anyone who happens to glance at it. He’s done a few other clone repairs as well which are worth checking out, and if you need to make your own NES cartridges as well, we’ve got you covered there, too.
If you’re a fan of video game systems of yesteryear then you are probably familiar with RetroPie. For those who aren’t, RetorPie is a collection of software and video game emulators that can run on a Raspberry Pi. The package makes it easy to get your fix of old games without having to own a bunch of consoles or loose your breath blowing on cartridges.
[brooksyx] already had a broken Game Gear, Raspberry Pi and a 4.3 inch LCD screen kicking around so he thought it would be a good idea to put them together into a handheld RetroPie. Clearly, the new screen was not going to fit in the old screen’s place. The Game Gear’s case was cut and the bezel from the new LCD screen was epoxied in place, gaps filled and finally sanded.
The screen is not the only modifications done to the case. Down on the bottom right of the case front [brooksyx] added 4 buttons for the N64 C-buttons. Out back the battery compartments and cartridge slot were filled in.
This project isn’t done yet and we are excited to see how it comes out. If you’re digging this RetroPie portable, you may like this Game Gear with an unmodified case or this large-screened Game Boy.
Though the names have changed over the years, the console wars wage on. [moop] must have been feeling nostalgic for the NES vs. SEGA days when he started his current project, Foobot, which is a tabletop football (soccer) game played by robots that are controlled with classic NES and SEGA controllers.
Each team has two robots that tool around on laser-cut perspex wheels attached directly to 16,000RPM motors. An SN754410 controls the motors, and each robot has an ATtiny2313 brain. They all communicate with a single transmitter over their 433MHz 1402 radio receiver modules. To avoid collisions, [moop] used a packet system, wherein each robot has an ID. The messages all contain a robot ID, message payload, and checksum. The robots ignore messages addressed to others, and any message with an invalid checksum.
[moop] has made everything available on his github, including the PCB layouts and CAD files for the robot chassis and transmitter case. Watch them battle it out after the break. If the Foobots have riled you up about vintage gaming, check out these sweet arcade hacks.
Continue reading “In Which Robots Fight the Console Wars”
Running vintage console emulators on a Raspberry Pi seems to be the thing all the cool kids are doing. The coolest RetroPie builds take a vintage console – usually of the Nintendo genus – stuff a Raspi in there somehow, and Bob’s your uncle. [Phil Herlihy] over at Adafruit is throwing his hat into the ring with a similar build. For this one, though, he’s using Sega’s oft-maligned Game Gear. He might actually get more than a few hours out of the battery with this one, and the battery is rechargeable, too. You can’t beat that.
The build begins with tearing down an old Game Gear, chopping up the PCB to save the button contact, and starting to fit all the components in there. The display is completely replaced with a 3.5″ composite display, a bit larger than the 3.2″ display found in a stock Game Gear. That’s not a problem, there’s a surprising amount of space behind the bezel, and if you’re good enough with an xacto blade and a file, it will look stock.
The rest of the components include an amplifier board, battery charge regulator, a 2500mAh LiPo, and a Teensy to read the buttons. There are a few modifications required for the Pi, but the finished device presents a USB port to the outside world; keep a keyboard by your side, and this is a portable Pi in every respect.
For one reason or another, [Dragao] has an old Sonic The Hedgehog cartridge that throws an illegal instruction somewhere in the Marble Zone stage. While the cause of this illegal instruction is probably cosmic rays, how to repair this cartridge isn’t quite as clear. It can be done, though, using BIOS chips from an old computer.
[Dragao] got the idea of repairing this cartridge from Game Boy flash carts. These cartridges use chips that are a simple parallel interface to the address and data lines of the Game Boy’s CPU, and Sega Genesis / Mega Drive flash cart would work the same way. The problem was finding old DIP flash chips that would work. He eventually found some 8-bit wide chips on the motherboard of an old computer, and by stacking the chips, he had a 16-bit wide Flash chip.
To program the chips, [Dragao] wired everything up to an Arduino Mega, put a ROM on the chip, and wired it up to the old Sega cartridge. Surprisingly or unsurprisingly, everything worked, and now [Dragao] has a fully functioning copy of Sonic The Hedgehog.