I Dream of Pi

Rapsberry Pi is a tiny computer on a board that uses fairly modern technology, and costs about $35 (or less!) It has nearly infinite use, many of which I’ve been interested to play with — but just haven’t had the time.
I found the time recently, though, when I came across a project to use the Pi as a bridge between an old game console and a modern network. Its not just limited to game consoles though. In the early days of these interwebs, we used to have to dial-in a service provider using a phone line, and this crude device that turned computer messages into screeching sounds — and then back again. We called this thing a “mo-dem” (modulator-demodulator), and it opened up the world to us… very, very slowly.
If I had a hobby (and really who has time for hobbies) it would be computer history. I’m fascinated by old computers, and the innovation, engineering and passion that they represent. On every printed circuit board, burnt ROM chip, and floppy disc full of bytes, is the mark of some team somewhere that helped change our culture, inspired new ideas, and created a platform for my generation to invent and create upon. Sometimes in a very literal way — inside every old Macintosh you can find the signature of the team members who flew a pirate flag and turned a computer into something that anyone could use.
Anyway, the Pi is 30 years of innovation, shrunk down into a board that fits in your hand, and runs any software you can dream up. A guy in England took an old hack for getting the Sega Dreamcast online, and jammed it onto the Pi. And thanks to this whole Internet thing, I got to work with him and help make it into something that anyone can use. Its not the first time I’ve gotten involved in a project that existed only in cyberspace — I did US testing and QA for the eSID, another clever hack from an ex-Saab engineer in Sweden. But on this occasion, I was able to help with debugging code a little, which I rarely get to do anymore.
s-l1600
Dubbed the DreamPi (Dreamcast + Raspberry Pi), you plug in a USB modem, and hack a 9v battery onto a phone line. The Dreamcast (or any old device) thinks its dialing a ISP from yesteryear, while the Pi pretends to answer a call, negotiate the connection, and accept imaginary account credentials. Then it serves your modern home network up to the Dreamcast as fast as the old modem will drink it up. After a little troubleshooting and a bit more Internet fakery to shield the Dreamcast from long-dead servers and web technology it can’t possibly understand, a sizable catalog of formerly deceased online games — from the first console to really take the Internet seriously — is now back online.
Ben and I have been getting pretty good at soldering, and we bundle up all the pieces and sell them on eBay. All the instructions and software are freely available online, but for people not comfortable with Python and a soldering iron, a ready-to-use kit can be had for a fairly reasonable price. We don’t really make any money on them — after I give Ben and eBay their cut, I basically break-even. But there’s satisfaction in extending the life of technology beyond what it was expected to do.

Yahoo Screen on FireTV

Its pretty rough, but if you’re craving some Community, it is possible to install Yahoo! Screen on your FireTV. This quick run through is for reference, and assumes you’ve got standard Android Developer SDK on your PC or Mac, and have enabled the Developer capabilities on your FireTV.
You’ll also need the Google Play Services (but not the store) which you’ll sideload, to get rid of some (but not all) annoying dialogs while using Screen. This YouTube video, which shows a similar process for Fire Phone (but over-complicates it significantly!) has a link to the necessary Google APKs.
Finally, you’ll need to get the Yahoo! Screen APK off the Google Play store on another device, then extract it for sideloading. There are lots of tutorials for this, so I won’t repeat them.
Once you’ve got all the necessary bits, here are the adb commands (the order is important):

adb connect <IPAddressOfFireTV>
adb install <GoogleAccountManager>.apk
adb install <GooglePlayServices>.apk
adb install <GoogleServicesFramework>.apk
adb install <YahooScreen>.apk

On your FireTV, go to Settings > Applications > Manage Installed Applications.
Scroll until you find Screen, and launch it (it won’t show up in the normal FireTV App launcher — use Llama to fix that.)
Now that its launched, you have an input method problem. Yahoo Screen (as of this writing) was not made for TVs (or, apparently for Accessibility) so you have to connect a USB mouse to your FireTV (yes, it works just fine!) Alternatively, you can use adb to fake screen taps from the command line on your computer.
The mouse is easiest, but if you prefer the command line approach, this website has some good input instructions, but a quick example:
adb shell input touchscreen tap "200" "200"
This will tap the top left tile in the Yahoo Screen grid and start the video. Change the second number to “400” to get the next tile down, change the first number to “800” to get the next tile over, etc…
When you start a video, tou’ll get a warning about Google Play services not being supported, but you can use your FireTV remote to hit OK and the video will start. The back button on your FireTV remote will work, as will Home, but the video control buttons will not.
Hopefully Yahoo will update their app for other form factors and control mechanisms soon — when they do update the app, of course, you’ll have to re-install it.

How-to:Change your iPhone IMEI

Disclaimer: Modifying the IMEI on a wireless handset for the purpose of using a previously stolen handset is unlawful. The following information is listed for legitimate purposes only. Any use of the following information is at your own risk and subject to the local laws of your jusidiction. CodePoetry assumes no liability for any damage that may occur to your equipment. Use of the following information will likely void your warranty.

There are a few legitimate reasons as to why you would want to change the IMEI on your phone. The most likely is that your phone was bricked by apple and the IMEI was changed to a generic IMEI so that they can tell you bricked it and void your warranty. Or, if you are using an iPhone on a pre-paid AT&T plan and want to be able to use SwirlyMMS to send/recieve MMS messages, you will have to change your IMEI to be that of a non-iPhone so that AT&T’s periodic scans of the network will not disable MMS for your phone number.
In adition to a mac, you will need the following items:

To get started, open up PwnageTool, choose the options for original iPhones, select Expert at the top, and hit next.
Select your original firmware v2.1 file. If you don’t have PwnageTool in the same folder as your bootloader files you will now have to tell it where to find those. If it offers to search the web for you, hit no, and choose the ones you already downloaded. We are going to be making two custom 2.1 restore images. The first one will be the “neutered” restore file, and the second one will be the “clean” restore file. For the first one, select General and hit next. Ensure Activate Phone, Upgrade Baseband, and Disable Partition Wipe-out are all selected. I left my root partition size at the default of 500 MB. On the next screen, you need to have Neuter Bootloader selected, Update Bootload, and choose Downgrade to 3.9. This is very important! Also, choose unlock baseband and Auto delete BootNeuter. Next you can add any Cydia packages that you want installed by default, I left this blank and moved on.