EPROM Coffee Table

Either in need of a coffee table or suffering a severe lack of upscaled electronics, [Darren] just finished up a great build for his living room. It’s a huge, scaled up version of a UV erasable EPROM with an infinity mirror in place of the fused quartz window.

[Darren]’s coffee table was inspired by an earlier build by the geniuses at Evil Mad Scientist. A few years ago, they built a 555 footstool that was scaled up about 30 times its normal size. Even at footstool scale, the 555 is still relatively tiny.

[Darren] is using a similar construction technique by forming the legs of the EPROM out of laminated plywood. Since this build is significantly larger, building the entire device out of solid, laminated plywood would result in an unwieldy and expensive piece of furniture. Instead, [Darren] constructed the legs and sides out of plywood laminations, covering the ends, top, and bottom with plywood panels. The result is a hollow EPROM/coffee table that’s still structurally sound.

If you’re a bit confused after counting the number of pins on the coffee table, you’re in good company. This is technically a scaled-up version of a 16-pin 0.600″ PDIP, something that a quick googling suggest isn’t historically accurate. Maybe there was an EPROM with a 4-bit wide data bus somewhere in the annals of electronics history, but we’re happy with saying that a completely accurate scaled-up ROM would be far too big for [Darren]’s living room.

Continue reading “EPROM Coffee Table”

Improving A Modern Instant Camera

Instant film never went away – Fujifilm has been producing instant film for decades before Polaroid ceased production. Yes, cries of a lost photographic heritage were all for naught, and you can still buy an instant camera. [Dan] picked up a Fujifilm Instax Wide camera – an instant camera that produces not-square images – and figured some electronic tinkering could vastly expand the capabilities of this camera. He took it apart and made some modifications, giving it a bulb mode for long exposures and multi-exposure capability.

[Dan] began his tinkering by figuring out how to put multiple exposures on one frame of film. The Instax Wide camera has an eject sensor, a wire for the shutter button, and a few wires leading to the motor. By adding a switch to turn off the motor and a pushbutton to bypass the ejection sensor, [Dan] can stack multiple exposures on a single frame of film.

Multiple exposures are one thing, but how about longer exposures for light painting and all those other cool things you can do with microcontrolled LEDs? Modding the camera for that is pretty easy. All you need are a few mini toggle switches. It’s just a simple matter of opening the shutter for as long as you need, painting a scene with light, and flipping a few more switches to eject the film. [Dan] is getting some pretty respectable exposures with this – somewhat impressive considering the camera’s fixed aperture.

Downloading Data Through The Display

HIPAA – the US standard for electronic health care documentation – spends a lot of verbiage and bureaucratese on the security of electronic records, making a clear distinction between the use of records by health care worker and the disclosure of records by health care workers. Likewise, the Federal Information Security Management Act of 2002 makes the same distinction; records that should never be disclosed or transmitted should be used on systems that are disconnected from networks.

This distinction between use and disclosure or transmission is of course a farce; if you can display something on a screen, it can be transmitted. [Ian Latter] just gave a talk at Kiwicon that provides the tools to do just that. He calls it ThruGlassXfer (TGXf), and it does exactly what it says on the tin: anything that can be displayed on a screen can be transmitted. All you need are the right tools.

Continue reading “Downloading Data Through The Display”

Logic Simulator Atanua Goes Free, Possibly Open Source

The history of software is littered with developers that built a great product, gave people a reasonable option to license the software, and ended up making a pittance. There’s a reason you don’t see shareware these days – nobody pays. It looks like [Gates] had a point with his Open Letter to Hobbyists.

Such is the case with Atanua. [Jari] built a nice little graphical logic simulator that has tens of thousands of downloads, and is being used in dozens of universities. [Jari] has sold only about 60 licenses for Atanua, netting him only a few thousand Euro. You can’t develop software with a pittance, so now [Jari] is giving Atanua away. This neat little logic simulator has reached the end of its life, the license is free, and [Jari] is out of the business.

This isn’t an ideal situation, but [Jari] is strongly considering open-sourcing Atanua. The code is a little bit of a mess at the moment, and cleaning it up will require a bit of work. [Jari] is leaving the option to buy a license for Atanua open, and anyone who wants to see this bit of software open sourced could buy a license or hundred.

While this isn’t great news for [Jari], if you’re looking for a neat tool to learn digital logic, you now have a very nice free option. Atanua simulates individual logic gates, 74-series chips, and even an 8051 microcontroller in real-time (up to about 1 kHz), with enough buttons, LEDs, and displays to do some very cool stuff. It’s more than enough to learn digital logic on, and good enough for a test bed for some odd and bizarre projects you might have floating around your head.

USB On The Teensy 3 From The Ground Up

When implementing USB on a microcontroller, most people are going to reach for V-USB if they’re using an AVR, one of Microchip’s USB libraries if a PIC is involved, or any number of the USB libraries for various ARM processors. [Kevin] had a different idea. As a challenge to himself, he wrote a USB device driver for the Teensy 3.1 microcontroller board, getting as close to the bare metal as he could get.

Writing a USB device driver first required a literature review. There are a few peculiarities in the Freescale K20 family of microcontrollers – the one found in the Teensy 3.1 – that dictate the need for a specific memory layout, using several clocks, and handling all the USB descriptors. [Kevin] started with the clocks, every last one of which must be enabled. The clock is generated by the Multipurpose Clock Generator from a 16MHz crystal, PLL’ed to the frequencies the USB module needs, and sent out over the System Integration Module.

Following the flowcharts and sequences found in the Freescale reference guide told [Kevin] exactly what needed to be done with the startup sequence, and offered a few suggestions on what needed to be done to set up all the interrupts. [Kevin] spent an incredible amount of time documenting, programming, and smashing his head against the keyboard for this tutorial, but he does give everyone a great opportunity to learn from his struggles.

While [Kevin] has a mostly complete USB device driver, his work is far from done. That’s alright, because this project wasn’t meant to be a full-featured driver; it’s still missing real error handling, strings in the configuration, and a real VID/PID. That’s alright, it’s still a great exercise in building something from scratch, especially something that very few people have built successfully.

Oh, blatant Hackaday Store plug for the Teensy 3.1.

Reverse Engineering Capcom’s Crypto CPU

There are a few old Capcom arcade titles – Pang, Cadillacs and Dinosaurs, and Block Block – that are unlike anything else ever seen in the world of coin-ops. They’re old, yes, but what makes these titles exceptional is the CPU they run on. The brains in the hardware of these games is a Kabuki, a Z80 CPU that had a few extra security features. why would Capcom produce such a thing? To combat bootleggers that would copy and reproduce arcade games without royalties going to the original publisher. It’s an interesting part of arcade history, but also a problem for curators: this security has killed a number of arcade machines, leading [Eduardo] to reverse engineering and document the Kabuki in full detail.

While the normal Z80 CPU had a pin specifically dedicated to refreshing DRAM, the Kabuki repurposed this pin for the security functions on the chip. With this pin low, the Kabuki was a standard Z80. When the pin was pulled high, it served as a power supply input for the security features. The security – just a few bits saved in memory – was battery backed, and once this battery was disconnected, the chip would fail, killing the game.

Plugging Kabuki into an old Amstrad CPC 6128 without the security pin pulled high allowed [Eduardo] to test all the Z80 instructions, and with that no surprises were found; the Kabuki is fully compatible with every other Z80 on the planet. Determining how Kabuki works with that special security pin pulled high is a more difficult task, but the Mame team has it nailed down.

The security system inside Kabuki works through a series of bitswaps, circular shifts, XORs, each translation different if the byte is an opcode or data. The process of encoding and decoding the security in Kabuki is well understood, but [Eduardo] had a few unanswered questions. What happens after Kabuki lost power and the memory contents – especially the bitswap, address, and XOR keys – vanished? How was the Kabuki programmed in the factory? Is it possible to reprogram these security keys, allowing one Kabuki to play games it wasn’t manufactured for?

[Eduardo] figured being able to encrypt new, valid code was the first step to running code encrypted with different keys. To test this theory, he wrote a simple ‘Hello World’ for the Capcom hardware that worked perfectly under Mame. While the demo worked perfectly under Mame, it didn’t work when burned onto a EPROM and put into real Capcom hardware.

That’s where this story ends, at least for the time being. The new, encrypted code is valid, Mame runs the encrypted code, but until [Eduardo] or someone else can figure out any additional configuration settings inside the Kabuki, this project is dead in the track. [Eduardo] will be back some time next week tearing the Kabuki apart again, trying to unravel the mysteries of what makes this processor work.

Making MicroView Wordy

Despite the MicroView shipping a ton of units, we haven’t seen many projects using this tiny Arduino and OLED display in a project. Never fear, because embedded systems engineer, podcaster, and Hackaday Prize judge [Elecia White] is here with a wearable build for this very small, very cool device.

The size and shape of the MicroView just cried out to be made into a ring, and for that, [Elicia] is using air-drying bendy polymer clay. To attach the clay to the MicroView, [Elecia] put some female headers in a breadboard, and molded the clay over them into a ring shape. It works, and although [Elecia] didn’t do anything too tricky with the headers and clay, there are some interesting things you could do running wires through the clay.

What does this ring do? It’s a Magic 8 Ball, a game of Pong controlled by an accelerometer, a word-of-the-day thing (with definitions), all stuffed into a brass silicon, OLED, and clay knuckle. Video below.

If you’re wondering, Turbillion (n). A whirl; a vortex.

Continue reading “Making MicroView Wordy”