Squeezing Every Bit From An ATMega

While the ATMega328 is “mega” for a microcontroller, it’s still a fairly limited platform. It has plenty of I/O and working memory for most tasks, but this Battleship game that [thorlancaster328] has put together really stretches the capabilities of this tiny chip. Normally a Battleship game wouldn’t be that complicated, but this one has audio, an LED display, and can also play a fine rendition of Nyan Cat to boot, which really puts the Atmel chip through its paces.

The audio is played through a 512-byte buffer and an interrupt triggers the microcontroller when to fill the buffer while it works on the other processes. The 12×12 LED display is also fed through a shift register triggered by the same interrupt as the audio, and since the build uses so many shift registers the microcontroller can actually output four separate displays (two players, each with a dispaly for shots and one for ships). It will also eventually support a player-vs-computer mode for the battleship game, and also has a mode where it plays Nyan cat just to demonstrate its own capabilities.

We’re pretty impressed with the amount of work this small microcontroller is doing, largely thanks to code optimization from its creator [thorlancaster328]. If there’s enough interest he also says he will provide the source code too. Until then, be sure to check out this other way of pushing a small microcontroller to its limits.

Thanks to [Thinkerer] for the tip!

Visualizing Magnetic Memory With Core 64

For the vast majority of us, computer memory is a somewhat abstract idea. Whether you’re declaring a variable in Python or setting a register in Verilog, the data goes — somewhere — and the rest really isn’t your problem. You may have deliberately chosen the exact address to write to, but its not like you can glance at a stick of RAM and see the data. And you almost certainly can’t rewrite it by hand. (If you can do either of those things, let us know.)

These limitations must have bothered [Andy Geppert], because he set out to bring computer memory into the tangible (or at least, visible) world with his interactive memory badge Core 64. [Andy] has gone through a few different iterations, but essentially Core 64 is an 8×8 grid of woven core memory, which stores each bit via magnetic polarization, with a field of LEDs behind it that allow you to visualize what’s stored. The real beauty of this setup is that it it can be used to display 64 pixel graphics. Better yet — a bit can be rewritten by introducing a magnetic field at the wire junction. In other words, throw a magnet on a stick into the mix and you have yourself a tiny drawing tablet!

This isn’t the first time we’ve seen cool experiments with core memory, and not even the first time we’ve seen [Andy] use it to make something awesome, but it really illuminates how the technology works. Being able to not only see memory being written but to manually write to it makes it all so much realer, somehow.

Continue reading “Visualizing Magnetic Memory With Core 64”

“Brain In A Vat” 6502

The 6502 was a revolutionary processor for its time. Offered at a small fraction of the cost of other processors available when it was released, it became adopted in such iconic computers at the Atari 2600, the Apple II, the NES, and the Commodore 64. For that reason it’s still extremely popular among retrocomputing enthusiasts who will often go to great lengths to restore these computers or build them from scratch. [jamesbowman] had an idea to build a 6502-based computer with the processor only, leaving the rest of the computer up to an FPGA.

He describes the system as a “brain in a vat” since a real 6502 is used as the “brain” and all other functions are passed off to the FPGA. In his build he uses an FPGA board with built-in graphics abilities, but the truly interesting part of this build is how the FPGA handles memory. If a particular value is placed on the data bus of the 6502, it loops forever through the entire memory and executes all of the instructions it finds. This saved a lot of time getting this system up and running, and he is able to demonstrate it by showing a waveform on the video output of the device.

Of course you can take an FPGA and emulate an entire computer based on a 6502, but using the actual silicon in a build like this really ensures that the user can learn and understand the hardware involved without some of the other tedium of doing things such as converting old video signals to HDMI for example. It’s a great take on retrocomputing that we expect to see more of in the future.

Correlated Electron Memory… Coming Soon?

We often see press releases and announcements about the next big technology in batteries, memory, displays, capacitors, or any of a number of other things. Usually we are suspicious since we typically don’t see any of this new technology in the marketplace over any reasonable timescale. So when we read about correlated-electron memory Cerfe Labs, we had to wonder if it would be more of the same. IOur suspicions may be justified of course, but it is telling that the company is a spin-off from ARM, so that gives them some real-world credibility.

Correlated-electron RAM or CeRAM is the usual press release material. Nonvolatile, smaller than SRAM, and fast. It sounds as though it could replace the SRAM in PC caches, for example, and take up less die space on the CPU chip. The principle is a bit odd. When electrons are forced together in certain materials, the properties of the material can change. This Mott transition (named after the inventor [Neville Mott]) can take carbon-doped nickel oxide and switch it from its natural electrical insulating state to a conducting state and back again.

Continue reading “Correlated Electron Memory… Coming Soon?”

Arduino Plays NES Games

Watching the advancement of technology is interesting enough by looking at improved specifications for various components as the years go by. But clock speeds, memory size, and power consumption are all fairly intangible compared to actual implementation of modern technology when compared to days of yore. For example, this $40 microcontroller can do what a video game console was able to do in the 80s for a tenth of the (inflation adjusted) price.

The NESDUE is an emulator for NES games which runs completely on an Arduino Due. The Arduino does have some limitations that have to be worked around to get the Nintendo to work, though. For one, it needs to be overclocked to be playable and it also needs a workaround to get past the memory limit of 96 kB of RAM. From there, a small screen is wired up along with a controller (from a Super Nintendo) and the gaming can begin.

This is an impressive feat for an Arduino platform to accomplish, especially with the amount of memory tweaking that has to happen. This might be the most advanced gaming system available that runs everything on an Arduino, right up there with the Arduinocade which can provide an arcade-like experience straight from the Arduino as well.

Continue reading “Arduino Plays NES Games”

Stealing RAM For A Microcontroller From A TFT Display

PC users with long memories will recall the days when the one-megabyte barrier was  a significant problem, and the various tricks of extended and expanded memory used to mitigate it. One of them was to install a driver that mapped surplus graphics card memory as system memory when the display was in DOS text mode, and it was this that was brought to mind when we read about [Frank D]’s microcontroller implementation of Conway’s Game Of Life.

The components were those he had to hand; an STM32F030F4P6 and an RM68130 176 × 220 TFT board. The STM is not the most powerful of chips, with only 16 kB of Flash and 4 kB of RAM. The display has enough on-board memory to support 18 bits of colour information, but when it is running in eight-colour mode it only uses three of them. The 15 bits that remain are thus available to be used for other purposes, and though the arcane format in which they are read required some understanding they could be used to provide a very useful extra 38720 bytes of RAM for the microcontroller just as once happened with those DOS PC graphics cards of old. Interestingly, the same technique should work with other similar displays.

Though this isn’t a new technique by any means we can’t recall seeing it used in a microcontroller project such as this one before. We’ve brought you many Games of Life though, as well as marking John Conway’s passing earlier this year.

Continue reading “Stealing RAM For A Microcontroller From A TFT Display”

DIY Neuralyzer From Scrap Parts

Cosplay and prop making are near and dear to our hearts here at Hackaday. That’s why whenever we see sci-fi tech brought to life, we can’t help but pay close attention. Enter [How to make’s] DIY Neuralyzer, from the Men-in-Black franchise. Unfortunately, this won’t wipe your memories as the real-life Neuralyzer would, but it will make for a cool prop at your next cosplay event.

What makes this project worth sharing is its use of very simple home tools and a bit of scrap metal, some PVC, a single LED, a switch, and maybe a few more miscellaneous bits. The base of the design is composed of two pieces of hollow, rod-shaped scrap metal and a single spring that mechanizes the entire setup.

The video is a few months old at this point. It took a recent post on Reddit to send this across our feed, but we’re glad we came across it.

Great project [How to make]! May we suggest a few more LEDs?

Continue reading “DIY Neuralyzer From Scrap Parts”