[deater] readily admits they’re a little behind on what’s new in gaming – only having just gotten around to Valve’s 2007 release of Portal. It’s a popular game, but [deater] didn’t want anyone to miss out on the fun – so set about porting Portal to the Apple II.
The port uses the “hires” mode of the Apple II for the flashy graphics that were state of the art around 1980 or so. It’s not a copy of the full game – only the first and last levels, combined with Jonathan Coulton’s now-classic ending theme, Still Alive. As is to be expected, it’s not a wild, fast paced gaming experience, but a cool use of BASIC to put together a fun tribute to a popular franchise.
It’s a little different to the original – portals can be placed anywhere, for example – but it rings true to the original. Source code and a disk image is provided, so you can try it for yourself – even in this online emulator.
We’re looking forward to the sequel so we can use the post title “Portal 2 Ported To The Apple II, Too”, but until then, check out [deater]’s Apple II web server, also in Applesoft BASIC. Video after the break.
Continue reading “Portal Ported To the Apple II”
[Piotr] was working on a recent Arduino project when he ran into a problem. He was having trouble getting his Arduino Pro Mini to communicate with an ESP8266 module. He needed a way to snoop on the back and forth serial communications. Since he didn’t have a specialized tool for this task, [Piotr] ended up building his own.
The setup is pretty simple. You start with a standard serial cable containing the TX, RX, DTR, and GND wires. This cable connects the Arduino to the ESP8266 WiFi module. The TX and RX lines are then tapped into. Each wire is routed to the RX pin of two different serial to USB adapters. This way, the data being sent from the Arduino shows up on one COM port and the data being transmitted from the module shows up on the other.
The next piece of the puzzle was coming up with a way to see the data more clearly. [Piotr] could have opened two serial terminals simultaneously, but this wasn’t ideal because it would be difficult to compare the timing of the data. Instead, [Piotr] spent less than an hour writing his own simple serial terminal. This one connects to two COM ports at the same time and prints the data on the same screen. The data from each COM port is displayed in a separate color to make it easy to differentiate. The schematic and source code to this project can be found on [Piotr’s] website.
This hack turns the Sony SmartWatch into a wristwatch. Functionally it’s not all that impressive. But the journey to get to this point represents quite a bit more. This example features an animated tea pot using a 3D rendering engine ported over to the device.
[Federico] started work on the project soon after hearing that Sony had released details about developing for the hardware. He dug into the documentation but soon found it lacked the depth he needed to get a handle on bare metal work. He shelved the project for a while until coming across the Astrosmash project we featured in June. That used a wrapper that allows Arduino sketches to run on the watch. After studying how that’s done he had enough background to port this code.
We’re still waiting to see a really innovative hack for the watch. But we’re glad to see progress with each new proof of concept like this one!
Continue reading “Sony SmartWatch hack lets it tell time with a teapot animation”
This lovely set of wires lets [Florian] connect stock Super Nintendo controllers to his Raspberry Pi. The IDC connector in the upper left plugs into the GPIO header on the RPi rather than going the route of using an intermediary USB converter.
The setup lets you connect two controllers at once, so you’ll have no trouble going head-to-head on Mario Kart as seen in the clip after the break. The ports themselves were pulled from a pair of SNES extension cables. Since button signals are pushed to the console via a shift register there’s just five wires needed for each (voltage, ground, data, clock, and latch). As far was we know the Raspberry Pi pins are not 5V tolerant so you probably want to add some level conversion to this circuit if you build it yourself.
[Florian] wrote a C program which shifts in data from the controllers and converts it to HID keyboard inputs. This should make it extremely flexible when it comes to emulator setup, and using the technique for different styles of controllers should also be pretty easy.
Continue reading “Interfacing SNES controllers with your Raspberry Pi”
[Nathan Long] sent in two fairly simple mods he’s been working on. The first is the control of Woot-off Lights via LPT port. A computer checks Woot for the Woot-off logo, and if the logo is spotted, on go the lights. It’s really just a twist on the LED/Arduino email message system, but the creativity is nice.
His other modification is the stuffing of a Microsoft Intellimouse inside of a Logitech Wingman. With the goal of giving the old PS/2 mouse USB capabilities and removing the terrible ball. For those that are asking themselves “why bother? Terrible ergonomics, no scroll wheel, etc.” [Nathan] claims it’s for Quake 2 nostalgia, to each their own we suppose.
I took a little time to look into porting code written for AVR in order to run it on the MSP430 architecture. It’s easier than you think, being mostly small differences like an extra step to enable pull-up resistors. But there is a lot to be learned in order to transition away from using EEPROM.
Since the TI chips don’t have EEPROM you need to use the Info Flash, a topic which I detail in the article linked at the top. This flash memory must be erased before writing because a write operation can only change high bits to low, not the other way around. And an erase operation clears an entire 64 kB segment, not just the bytes you want to write to. It’s different but manageable.
Oh, and if you were wondering, I ported the code I wrote for the garage door coded entry project.
It’s inevitable. You knew it, we knew it, and while this is being posted on April 1st; its no joke. [johndavid400’s] Core3Duino. As we mentioned before, with the additional Arduinos you have now 3 separate processors, allowing 24digital IO, 18 PWM, 18 analog inputs, and more.
Now to keep flamers at bay (calm down), we’ve combined this post with the introduction of xDuino. Yet another attempt at porting Arduino to separate hardware platforms. For the price of a Duemilanove you can have 5 serial, 48 IO, 18 analog, 68Kbytes of Ram and more!