Programming Tetris by first building a logic gate, then a computer, then…

Hone your fundamental understanding of computer systems by completing this online course called NAND to Tetris. The idea is to develop each fundamental unit that goes into making computer programs a reality. This starts with logic gates, which are put together into modules that eventually become a functioning computer. From there you need an operating system,  a compiler, and eventually you’ll be playing a game of Tetris which you programmed yourself.

It’s certainly not an easy journey, but if you have a computer at your disposal you should be able to make it all the way through the course. There’s a software suite which includes a hardware simulator so that the computer you’re building can be assembled using HDL instead physical components.

The concept is discussed in this TED talk given by [Shimon Schocken]. It is also embedded after the break and in addition to the NAND to Tetris project he shows off some self learning software on the iPad. To us it seems very much like the learning software [Neal Stephenson] envisions in the Young Lady’s Illustrated Primer from his Diamond Age novel.

[Read more...]

Turning a MIDI sequencer display into a Tetris clone

led-midi-display-tetris

Tetris is unquestionably a game for the ages. Despite its simplicity, someone, somewhere will always find a way to port the game (Translation) to just about any electronic device that can handle it.

Earlier this year we showed you a slick MIDI sequencer project that was constructed using an Arduino Mega, which also happened to drive an incredibly detailed touch screen display. [Christian] must have gotten bored with his awesome creation one day, because he pulled the drum level display out of his Arduino Sequencer 808, and turned the LED array into a mini Tetris game.

As you can see in the video below, the game runs pretty well, though from what we can see it lacks any sort of score keeping. We dig it because we never really tire of Tetris clones, and we think it’s great that he kept his 808 sequencer design modular enough that he can pluck different components out for reuse in other projects.

[Read more...]

MIT Students take Tetris to a grand scale

Careful, this hack might foster doubts about the level of fun you’re having at you own Computer Science department. Last weekend a group of students at MIT pulled off a hack of great scale by turning a building into a Tetris game board.

The structure in question is the Green Building on the Massachusetts Institute of Technology Campus. It houses the Earth, Atmospheric, and Planetary Sciences Departments, but was chose based on the size and regularity of the grid formed by the windows on one side. The group hasn’t provided much in the way of details yet, but the video after the break shows the game play and start-up screen. The middle portion of the building is used as a scrolling marquee to display the word “Tetris” before the game pieces start falling. We’re only guessing (and we hope you will add your conjecture in the comments section) but we’d bet they assembled a set of wireless RGB LED lamps and set one on the sill of each window. There does seem to be a number of ‘dead’ pixels, but it doesn’t diminish the fun of the overall effect.

If you don’t have your own building to play on, you should go small-scale and implement Tetris on a character display.

[Read more...]

Building the second tiniest Tetris

A few years ago, [Richard] pulled a crushed camcorder out of a junk box at a hamfest. After pulling the half-inch CRT out of the viewfinder, he needed to find a project. [Richard] ended up building the second tiniest game of Tetris we’ve ever seen.

After futzing around with the CRT, [Richard] discovered that one of the pins would accept an NTSC input. He also found a similar project that used a dime-sized CRT to play Tetris. With ready to go code, [Richard] started assembling his project into a handsome wooden box.

There are two PCBs for the build – a CRT driver circuit, and a small custom board that handles the game and controller code. The circuit for the game board was found on this site, but the featured boards there were too large for the project. A stripped-down board was fabricated by BatchPCB and put into the box.

There aren’t any controls on the console itself, for that a standard DB-9 connector was installed so a vintage Atari joystick could be used. For a more ergonomic Tetris experience, a Sega Genesis controller could be used. For something that looks like it comes out a steampunk laboratory, playing Tetris is a bit unexpected. Check out the demo video of the screen at 20x magnification after the break.

[Read more...]

Tetris on a building

Around a year ago, a bunch of blinkenlights were installed in the HCI-Building of ETH Zürich. These LED spots weren’t interactive and only showed hardcoded patterns. Of course a bunch of LEDs demand interactivity, so for the first-semester party this year a giant game of Tetris was built on the side of a building.

There’s no official build log, but from what we’ve learned, the LEDs are connected to a DMX controller that is in turn plugged into a computer and the University’s ethernet. For the command and control of the Tetris game, a USB joystick was connected to an old Dell that was pulled out of the junk pile.

The software for the project, LED side of the project was written in Visual C++ reusing old Tetris routines and example code from the DMX controller. For the controller portion, everything was written in C. The controller simply dumps chars into a TCP port on the second computer. While the Tetris board was only 3 pixels wide, there was a fairly massive queue of people wanting to play.

Large scale Tetris game controlled with DDR pads

led_tetris_using_ddr_pads

Even though Tetris came to the US 25 long years ago, it never fails to entertain. Whatever it is that gives the game such lasting power is a mystery to us, but we’re always interested in seeing fresh takes on the classic game.

MIT students [Leah Alpert] and [Russell Cohen] tweaked Tetris a bit to get players off the couch and literally thinking on their feet. The game boards were constructed using RGB LEDs installed in laser-cut acrylic tubes, arranged in a pair of large 6 foot tall floor standing matrices.

Game play progresses as you would expect, with two players battling head to head to achieve the high score, while simultaneously sabotaging their opponent. Instead of controllers however, each player stands on a Dance Dance Revolution mat, manipulating their game pieces with their feet.

While the DDR pads aren’t exactly a Kinect controller, we have no doubt that playing Tetris this way is incredibly fun – we would certainly install a pair of these boards in our game room without a second thought.

Thanks to everyone who sent this in!

[Read more...]

Alarm clock forces you to play Tetris to prove you are awake

tetris_alarm_clock

Oversleeping sucks, but we’ve all been there. Whether its a matter of hitting the snooze button a dozen times too many, or turning off the alarm and drifting back to sleep – sooner or later, you are going to wake up late.

Instructables user [nolte919] has overslept a time or two in his life, and he set out to design a clock that would make it nearly impossible to wake up late. His clock is Arduino-based and shares many features with off the shelf models including multiple alarms, a backup battery, and snooze features. His alarm however goes one step further and ensures you are fully awake each morning.

If you hit the user-defined snooze limit, the alarm sounds and will not turn off until you have cleared 4 lines in Tetris. That’s right, you have to prove to the clock that you are awake and coherent before it will shut off. Technically you can silence the alarm for a 30 second period so you can focus on Tetris, but that’s all the break you get.

It really is a novel way of ensuring you are awake in the morning, and heck, how bad can the day be when you start off by playing video games for a few minutes?

Stick around to see a quick video of his Tetris alarm clock in action.

[Read more...]