Receiving asynchronous data bursts

[Johan’s] been working on a chunk of code for about seven years and he thinks it’s ready to help you with your next project. He calls it D1 (The One) and it lets you receive asynchronous data without the need for a hardware USART. It’s capable of working with signals from an IR or RF remote, as well as tangentially related transmissions like RFID and magstripe readers.

It uses timer and port interrupts to sample the incoming data. Once it’s captured a transmission, the code sets a flag so that you can pull what it got into your own application. If you’re expecting to receive a protocol that sends packets several times in a row a verification module is also included which runs as a precondition of setting the received flag. The package is written in PIC assembly, but with all the information that [Johan] included in his post this shouldn’t be hard to port over to other chip architecture.

DCPU-16 running Pac-Man

If you’ve been trying to think of stuff you can do with the DCPU-16 this may inspire you to write a clone of  a classic game.

This version of Pac-Man was written using a sprite system with a 16 color pallette. It runs in an HTML-based emulator, so you can even monkey around with the assembly code to help you figure out how it works. But if you’re not into writing code that is this machine-close, you can just click the ‘run’ button and use your keyboard arrows to play through a level or two. You’ll notice there’s only one game board available so far and some things are still missing like that familiar waka-waka as he gobbles up the dots. Let us know if you mange to extend the features of this version.

In case you missed it, this emulator is running the DCPU-16 spec from Notch’s new game, 0x10c (. We have no idea how that’s going to shape up, but getting in on the game early will pay off it turns out to be as popular as Minecraft.

Interesting substrate used to position LEDs of this Word Clock

[Ivan] decided to build a Word Clock as holiday gift for his parents. He pulled it off, but as you can see above, it meant a lot of point-to-point soldering. One small piece of proto-board is used to host the power supply and a few integrated circuits, with the rest of the device mounted on an interesting choice of material.

The substrate that holds the LED array for the display is a plastic mesh. You’ll find the stuff in any craft store, it’s meant for use in yarn work. It comes rated in several different sizes designated by holes-per-linear-inch. This is fantastic because it makes precision spacing a snap. The face plate itself looks great, especially when you consider that all of the letters were cut out from a piece of black foam board by hand. This bezel was then put in a picture frame, with a bit of tissue paper as a diffuser.

They tell us that the code was written in assembly for an ATtiny2313 microcontroller. It uses a DS1305 RTC chip to keep time and you might be interested to see how the communication protocol was implemented in assembly. The project is based on [Doug’s] Word Clock which we covered in this links post.