ATtiny13 Powered Handheld Helicopter Game

[Owen] just finished putting together a portable helicopter game. It’s pretty impressive, especially since he used an ATtiny13 microcontroller. That chip uses an 8-pin dip package, offering only five I/O pins (six if you use the reset pin) and 1k of programming space.

The game runs on a small cellphone-type LCD screen. The helicopter remains somewhere in the center column of the screen as the maze that makes up the game board approaches one step at a time. The single button that controls the helicopter will raise it with each step of the maze when held down, or allow it to fall when released. The player’s progress is shown as a hex value in the upper left corner of the screen. When you hit a wall, your score will be shown next to the high score for the game and will be saved in EEPROM if it’s a new record. As the game progresses, the maze gets harder based on the score. Check it out in a video clip after the break.

Sometimes I think people forget what amazing things can be done with such a tiny amount of memory and prossessing power, with today’s modern world of GB and TB a few bits is almost meaningless to some people.
A big well done on this project (:

Not to crap on this guy’s project because I can tell a lot of work went into it, but am I the only one who thinks the actual game wouldn’t be fun to play at all? I think this is a good jumping off point but the game leaves a lot to be desired.

Not to be that other guy, but I’m with that1guy on this. It’s certainly a feat, and a nice throwback to another era, but that LCD should be used in full graphic mode, with higher FPS, and a vector-based cave at the minimum. A color LCD would be preferable (yes an SPI-driven old-style color mobile LCD is not that hard to score these days).

You better believe I’m fully aware of what it meant to cram the game in such a small chip, but that’s not the point – I’d have preferred to use a bigger chip but end up with something a bit more worthwhile of the whole effort.

@that1guy @Mad Max: he used stuff he had at home and did a very nice game with that.
BTW: you’re not forbidden to do a colorful and sooooooooo much entertaining game with a much more powerful microcontroller, if you can…

@that1guy – Having just one button was very limiting, and yes I was worried that a game that uses just one button wouldn’t be fun. However, I have two younger brothers who are 12 and 16, and they have been playing it often, enough that they made it to the end of the level and then asked me to add more. They really enjoy it, and I have fun with it too. Google “helicopter game” to see how fun this kind of game can be.
@Mad Max – Haha. In fact, it was the point to cram that game into that little chip. “Use a bigger chip but end up with something a bit more worthwhile of the whole effort” – how worthwhile it is to you as the maker is relative to the challenges you faced making it real. Sure I could spend 5 minutes making a vector-based high-FPS version of the helicopter game on a PC, but that wouldn’t be satisfying, and I would have felt like I hadn’t accomplished much of anything. It’s the hacker spirit, you either understand it or you don’t.

I just got the same LCD from sparkfun and was wondering what to do with it. You’ve truly inspired me. Next Up-> A Simple Racing Game. Remember the brick games which had like 9999 games? I remember they had some sort of a racing game, lets see if I can make it happen.

My point was that this game really isn’t “the helicopter game” because that game features gravity and fluid motion. I agree with you that the real helicopter game is really fun and addicting, which is why I was expecting more when I first read about this project. That’s just what I meant, I’m not trying to diminish your work.

I’d recommend putting it in a proper enclosure though, partly to protect the delicate wiring on the back but also to make it look finished. 1k of code space is super restrictive and to accomplish a complete (if modest) video game is pretty bad ass.

@Nemo; @PeterF: Oh I do very much get the point. I was exploiting the shadow RAM of my ZX Spectrum clone back when probably no one except the manufacturer was even aware that it had such a thing. But I prefer making stuff with some minimal practical raison d’être past the simple ‘because I can’. That’s what fails the mark for me in this case.

I’m obviously not trying to stop anyone from making whatever they see fit – and I readily did already admit that this took considerable skill – but I don’t feel compelled to adhere any sort of imaginary “praises only please” policy either.