While it will be a bit before my next full update in the”Using the Dockstar as a full Home Theater Replacement” series (conveniently shortened to Dockstar Stereo), I’m always tweaking and installing things. While these may not warrant a full update, they’re usually fun little additions or tweaks that come in handy. While I mentioned in the last Dockstar Stereo article that you could run a video or Window Maker session over VNC, I never went into any details on the fun things you can do with VNC sessions. Read on for a couple of fun VNC tricks and tips that you may not have heard before. I assume you to be using a Linux installation. I’m running all examples on the ‘Dockstar Stereo’, an integrated arm board with limited memory.
As someone who hacks up every console he’s ever gotten, my PS3 has been rocking a Linux enabled CFW for some time now (remember that tutorial I did way back on turning your Linux PS3 into a cross-compilation powerhouse?). As such, I’ve gotten the banhammer from Sony PSN networks, and if I want to play some multiplayer games with my PS3, I’m out of luck except for LAN play. This is fine, as there’s always tunneling applications such as Xlink Kai, or so I thought. It’s been quite a while since I last looked into XLink Kai. This article was originally going to be titled “Xlink Kai Arm Port”, however the XLink Kai developers have decided to close source their project. That’s their prerogative and if they feel it contributes to the quality of their project it’s within their purveyance to do so. That said, it just doesn’t jive with me. One can argue the effectiveness of closed source solutions but at the end of the day Xlink Kai would have had a fully working ARM port working on all the billions of Arm devices today if they had left their source open, because I would have ported it this weekend.
Anyway, things being what they are I decided to get their main competitor (XBSLink) running on the ARM platform. Some of the ps3 hacker blogs have been talking about XBSLink lately, and I thought it’d be an optimal application for a little ARM box (a pogoplog perhaps). This will allow you to run the XBSLink daemon on your ARM based Linux box (hopefully pulling 4 watts or less like mine is) and save you the hassle of running a full 400 watt multi core many gigahertz PC for a frikkin port forwarding application. Read on for the setup tutorial. I had gone into this article prepared to walk you through a full compilation and porting tutorial, but it turns out it’s not necessary. Read on for the full guide!
Here’s a fun thing I came up with for those Steam users out there. Ever wanted to use an SSH client in the middle of a Steam game? I’ve got an arm based server running constantly at my house (4 watts average power usage) doing menial chores like downloading and file serving and queuing up print jobs, playing music, etc. I prefer to SSH into a screen or byobu session, start a long task, then disconnect and check back later. If you’re relaxing at home playing a game in Steam however, you may not want to alt-tab out of your game session. Besides, if you’re running in Wine there’s a fairly good chance this will crash your game in some fashion. Short of booting up another computer or opening ports on your router to allow web-based ssh services to work, what is one to do? Read on for my solution to the problem.

Continue reading »
Following up on my previous post, NeonLicht suggested I try out the Ion window manager. Being a big fan of alternative window managers etc, I decided to give it a whirl. Turns out that the most current version of Ion, Ion3 has been branched and reborn as the Notion window manager. After some general use I’ve come to the conclusion that while it’s not for everyone, it’s a terrifically interesting and forward-facing implementation of a window manager. Also, providing you’re willing to compile the source from git (instructions after the jump), the setup for an ideal programmer’s desktop becomes rather simplified from my last post. Read on for all the detailed info.

Continue reading »
A very cool and strange thing (for me at least) has happened. Having spent a great deal of time digging through my Google analytic reports, I can say with certainty that my personal site traffic is on the rise. What’s most interesting to me is that a good portion of that new readership linked into my site from my corporate blog. Even more interesting, our corporate blog over at www.discursivelabs.com has far eclipsed the readership of my personal blog here at www.hunterdavis.com. As such, I thought I’d share the link to my newest article.
In the fifth article in our ongoing series on low power compilation clusters, things are really starting to get interesting. I run you through a distributed Java, Fortran, and ARM->X86-64 compilation using an updated set of scripts we created in our previous articles, as well as post an update on the real-world Pogoplug compilation cluster (hint: twice as fast).
As the title implies in our latest article over at Discursive Labs we walk you through the creation of a fully distributed compilation system (i.e. a fully federated system not based on DistCC, Sun’s DMAKE, or other existing distributed compilation tools). The scripts are available in the article and can be dropped into an existing compilation node or as a base for future development. While I have posted a few articles over at Discursive Labs since I last posted here, I thought this one in particular may be of interest to anyone wishing to make their own cluster for compilation or scientific computing. If you’re interested in cross-compiling, low power ARM clusters, virtual clusters or distributed computing and you’re not reading our continuing series then you should really catch up.
*UPDATE — These articles have been collected into the volume ‘Build Your Own Distributed Compilation Cluster’, read more at it’s information page here.

Are you looking for something new and interesting to run on your Pogoplug after reading that last article on emulators? Ever considered using it to compile software that runs natively on your X86-64 machine? Did you even know this was a possibility?
On our corporate blog over at Discursive Labs, I’ve posted up the first in a new article series about creating an ARM based X86-64 cross-compiling cluster. For the first in the article series, we run you through the basic configuration, compilation, and toolchain creation for ARM to X86-64 compilation. In future articles we’ll discuss issues involved in library cross-compilation, sorting through “dependency hell”, adding new compilation nodes, and the benefits of using a low-power compilation cluster in your build and CIS processes. We’ll walk you through a full cross-compile of one of our beta software products, and all of its prerequisite libraries in detail.
As always, if you’re interested in beta testing any of our upcoming software, send an email to beta@discursivelabs.com.
As most regular readers will probably know, I’ve got a thing for low powered devices. In my daily work life, I build clusters with them and write/run scientific computing and visualization software on them. At home though, I’ve got a thing for game consoles, emulation, and USB. I’ve especially got a thing for getting people playing games or running consoles on unusual systems that they would have never thought to use. I think the Zipit and IM-ME communities are fairly well aware of this already. What amazed me though, is how few people I found seriously discussing the idea of using a pogoplug device as a game or emulation console. Allow me to get the conversation started with a bang.
For those with web ADHD:
tl;dr – Using a Dockstar and a DisplayLink adapter in tandem for gaming works incredibly well not just as an emulation console, but as a general purpose desktop as well, watch the video below for a multitude of console and PC gaming goodness. I show it running
- Scummvm (Monkey Island 3)
- NES (Contra)
- Doxbox (Warcraft)
- Mednafen–
- Lynx (Lemmings)
- GBA (Aria of Sorrow)
- GBC (Lufia)
- GB (Links Awakening)
- TurboGrafx (Bonk 3)
- NeoGeo Pocket (Last Blade)
- Wonderswan (Guilty Gear Petite 2)
- stella 2600 (Adventure)
- VisualBoyAdvance (Mario World)
- SuperTux
- Abuse – Actually this was cut for time in the youtube clip but it plays perfectly.
- Wesnoth
- yabuase Sega Saturn (Sonic Extreme)
- Quake 3 (OpenArena)
Most with the exception of Saturn and OpenArena run at full playable speed with sound and full or near fullscreen graphics. I have no reason to believe SNES or even Mame and Playstation are out of the picture, with some cleverness. There is so much more below.
For everyone else, read on for photos, configuration files, tips, tricks, explanations, and a thorough walkthrough of the process.
As many of you know, in my personal life I’m historically quite fond of low power and embedded processor systems. It’s somewhat ironic then, that in my professional life I spend most of my time programming for supercomputing clusters, or for the development of programs for supercomputing clusters. As most of you probably also know, I started a somewhat successful consulting and software development company earlier this year. This gives me a terrific amount of freedom when outfitting (and hiring) our developer and IT personnel. “Why then”, postulated I, “should I not apply my beloved low power processors to the development process of extremely large and complex systems?” Sounds crazy? Maybe not so much. Maybe not at all.
Read on at our corporate blog over at Discursive Labs
Wondering what I’ve been up too? Didn’t know we had a corporate blog over at Discursive Labs? Interested in working for or with a successful start-up? Head on over to DiscursiveLabs.com and get updated. Product videos, beta tests and teasers, customer testimonials and more coming soon
As most of you readers probably know, I have been terribly remiss in my postings of late. That isn’t to say that I haven’t been hacking. Oh no. Bootstrapping a startup requires hacking all over the place. During the past week alone I’ve
- Gotten to know my franchise tax agent on a first name basis
- Authored contracts, which in my opinion should be written in python
- Authored a research paper on novel methods for efficient bulk virtual machine storage and retrieval (stay tuned for that one!)
- Reminded myself daily why I use git, while writing features integrating svn, cvs, etc
- Created what, I am fairly sure, is the world’s largest openWRT/BCM5354 firmware image/executable set
- Created at least 10 new project virtual machines
Which actually brings me out of my /startup header and back into :/publish . One of the terrific things about founding a startup (ducks!) is the flexibility you get while setting up your workflow. Long a proponent of integrating virtual machines into business processes, I have been enjoying the real freedom a robust virtualized system can provide. I’ll get into the detailed workflow later in the post. For those ‘first page only’ readers I’ll get to the golden ticket, I recently picked up a REX 6000 credit card PDA for 6$ at the local thrift.

Read on for (much) more and download links!

