segfault at 0 ip (null) sp bfdb1cbc error 4 in busybox[8048000+e8000]
or something along the lines of that. I used the newest Buildroot, 2013.11, to create a new toolchain and cross compile uClibc 0.9.33 for SnackLinux. I have yet to recompile Busybox yet, but I'm working on getting gcc natively working on SnackLinux. Once that is completed, I should be able to compile SnackLinux from within SnackLinux.
I recently bought another IBM Model M (1395660) on eBay the other day, not thinking that it is actually a terminal keyboard. I thought it has a detachable SDL cable like my current Model M (1391401). I was wrong. Turns out it has a non-removable RJ-45 plug instead, thus being a terminal keyboard. Well, aftering some researching, some were able to get it to work by using an ATMega. I was able to find a pinout of the RJ45 plug on the keyboard, and simply just wire it up to a PS/2 cable. Though apparently, the colour of wire for PS/2 is not standardized, which led to testing each pin to see what it does. I cannibalized an old Microsoft keyboard for the cable and was able to hook the wires up straight to each other.
I've spent the last week or two working on SnackLinux, a small Linux distro. I managed to get uClibc in there, as well as tcc, which makes it somewhat useful. The source of it all is there, so you can compile the distro yourself (sans the packages). There are also ISOs which you can download here and fire them up in a virtual machine.
The processor on the Raspberry Pi isn't all that fast, so why not offload it? I have a HP ML350 that is mostly idling, except when I need to use PostgreSQL, so I thought to set it up as a desktop server for my Pi.
I set up a RDP server since it works well with Linux and also Windows. First thing's first, install xrdp and all other dependencies:
apt-get install build-essential libpam0g-dev libssl-dev x11vnc vncviewer fakeroot checkinstall x11vnc xrdp rdesktop
Then, install your desktop of choice. I chose XFCE since it's pretty lightweight
apt-get install xfce4
Because I wanted the full experience, I wanted to hook up my NES controller to my Raspberry Pi and play NES games. I looked around and didn't find anything that fit my needs.
I wrote a script, that's up on Github now, that converts button presses on the NES controller to keyboard presses. So for example, by pressing the A button it registers as pressing the Z key on a keyboard. How to set it up is all right here.
I spliced the wires on the NES controller (thanks to this diagram) and used a breadboard to connect the appropriate wires to ground, +5V, the data, latch, and clock pin. Now I can play Mario in retroarch with a NES controller!
I won a Raspberry Pi for getting 3rd place in the Open 7400 Logic Competition, of which HubCityLabs donated the Raspberry Pi. My initial project idea for it was to set up a wall mounted weather station. For the time being I thought I'd mess around with it and get somehwhat familiar on what I'm dealing with.
I downloaded the Rasbian image and wrote it to an SD card. It's recommended that the SD card is a minimum of class 4.
Everything is supported 'out of the box' with Rasbian so there's no fiddling around. After purchasing a HDMI cable and connecting it to the Pi, it still output video via the RCA jack instead. I opened up
/boot/config.txt and set hdmi_safe=1 and voila, HDMI worked!
pfSense 2.x runs on FreeBSD 8, instead of the previous 7. I wanted to get istatd working on my router, so I fetch'd libxml2 from here and the istatd binary (version 0.5.7) compiled against FreeBSD 7 from my previous blog post, here. For this to work, you'll also need the iOS app. When running istatd, it complained about some libraries. I simply created symlinks from the old library to the new one and everything worked fine, see below.
ln -s /lib/libz.so.5 /lib/libz.so.4 ln -s /lib/libkvm.so.5 /lib/libkvm.so.4
You can get a template for the configuration file here and put it in a nice place, like /etc/istat.conf
Create your user, group and socket file and you're good to go:
pw user add -n istat pw useradd istat -G istat touch /tmp/istatd.sock
Then, you can run the istatd daemon with just
istatd -d -c /etc/istat.conf
Now, you'll be able to monitor your pfSense box with iStat!
Linux, one way or another, really brings out your inner hacker. I've been tinkering quite a bit with DeLicate Linux. It's a lightweight distro made for old computers that uses the 2.4 kernel. Right now, I have DeLicate running on a Pentium 166 with 64MB of RAM. Surprisingly, Fluxbox and Xchat run without any huge problems. Replacing Bash with Dash helped free up some RAM as well. DeLicate uses pacman as the package manager, so building new packages is as easy as creating a PKGBUILD file.