{"id":2784,"date":"2010-08-25T22:53:33","date_gmt":"2010-08-26T05:53:33","guid":{"rendered":"http:\/\/multimedia.cx\/eggs\/?p=2784"},"modified":"2010-08-26T10:42:50","modified_gmt":"2010-08-26T17:42:50","slug":"revisiting-the-alpha-400","status":"publish","type":"post","link":"https:\/\/multimedia.cx\/eggs\/revisiting-the-alpha-400\/","title":{"rendered":"Revisiting the Belco Alpha-400"},"content":{"rendered":"<p><a href=\"http:\/\/multimedia.cx\/eggs\/usurper-of-fate\/\">Relieved of the primary FATE<\/a> maintenance duties, I decided to dust off my <a href=\"http:\/\/multimedia.cx\/eggs\/got-a-cheap-mips-subnotebook\/\">MIPS-based Belco Alpha-400<\/a> and try to get it doing FATE cycles. And just as I was about to get FATE running, I saw that Mans already got his <a href=\"http:\/\/multimedia.cx\/eggs\/ansi-fate\/\">MIPS-based Popcorn Hour device to run FATE<\/a>. But here are my notes anyway.<\/p>\n<p><center><br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/multimedia.cx\/eggs\/wp-content\/uploads\/2010\/08\/belco-alpha-400.jpg\" alt=\"\" title=\"Belco Alpha-400 netbook\" width=\"350\" height=\"387\" class=\"aligncenter size-full wp-image-2788\" srcset=\"https:\/\/multimedia.cx\/eggs\/wp-content\/uploads\/2010\/08\/belco-alpha-400.jpg 350w, https:\/\/multimedia.cx\/eggs\/wp-content\/uploads\/2010\/08\/belco-alpha-400-271x300.jpg 271w\" sizes=\"auto, (max-width: 350px) 100vw, 350px\" \/><br \/>\n<\/center><\/p>\n<p><strong>Getting A Prompt<\/strong><br \/>\nFor my own benefit, I made a PDF to remind me precisely how to get a root prompt on the Alpha-400. The &#8216;jailbreak&#8217; expression seems a little juvenile to me, but it seems to be in vogue right now.<\/p>\n<p><strong><a href='http:\/\/multimedia.cx\/eggs\/wp-content\/uploads\/2010\/08\/alpha-400-jailbreak.pdf'>alpha-400-jailbreak.pdf<\/a><\/strong><\/p>\n<p><strong>Toolchain<\/strong><br \/>\nWhen I last tinkered with the Alpha-400, I was trying to build a toolchain that could build binaries to run on the unit&#8217;s MIPS chip, to no avail. Sometime last year, MichaelK put together x86_32-hosted toolchains that are able to build mipsel 32-bit binaries for Linux 2.4 and 2.6. The Alpha-400 uses a 2.4 kernel and the corresponding toolchain works famously for building current FFmpeg (<code>--disable-devices<\/code> is necessary for building).<\/p>\n<p><strong>FATE Samples<\/strong><br \/>\nNext problem: Making the FATE suite available to the Alpha-400. I copied all of the FATE suite samples onto a VFAT-formatted SD card. The filename case is not preserved for all files which confounds me since it is preserved in other cases. I tried formatting the card for ext3 but the Alpha-400 would not mount it, even though \/proc\/filesystems lists ext3 (supporting an older version of ext3?).<\/p>\n<p>Alternative: Copy all of the FATE samples to the device&#8217;s rootfs. Space will be a little tight, though. Then again, there is over 600 MB of space free; I misread earlier and thought there were only 300 MB free.<\/p>\n<p><strong>Remote Execution<\/strong><br \/>\nTo perform FATE cycles on a remote device, it helps to be able to SSH into that remote device. I don&#8217;t even want to know how complicated it would be to build OpenSSH for the device. However, the <a href=\"http:\/\/multimedia.cx\/eggs\/lightweight-fate-testing\/\">last time I brought up this topic<\/a>, I learned about a lighter weight SSH replacement called <a href=\"http:\/\/matt.ucc.asn.au\/dropbear\/dropbear.html\">Dropbear<\/a>. It turns out that Dropbear runs great on this MIPS computer.<\/p>\n<p><strong>Running FATE Remotely<\/strong><br \/>\nI thought all the pieces would be in place to run FATE at this point. However, there is one more issue: Running FATE on a remote system requires that the host and the target are sharing a filesystem somehow. My personal favorite remote filesystem method is sshfs which is supposed to work wherever there is an SSH server. That&#8217;s not entirely true, though&#8211; sshfs also requires sftp-server to be installed on the server side, a program that Dropbear does not currently provide.<\/p>\n<p>I&#8217;m not even going to think about getting Samba or NFS server software installed on the Alpha-400. According to the unit&#8217;s \/proc\/filesystems file, nfs is a supported filesystem. I hate setting up NFS but may see if I can get that working anyway.<\/p>\n<p><strong>Residual Weirdness<\/strong><br \/>\nThe unit comes with <a href=\"http:\/\/www.busybox.net\/\">the venerable Busybox program<\/a> (<code>BusyBox v1.4.1 (2007-06-01 20:37:18 CST) multi-call binary<\/code>) for most of its standard command line utilities. I noticed a quirk where BusyBox&#8217;s md5sum gives weird hex characters. This might be <a href=\"http:\/\/lists.busybox.net\/pipermail\/busybox-cvs\/2007-June\/025214.html\">a known\/fixed issue<\/a>.<\/p>\n<p>Another item is that the Alpha-400&#8217;s \/dev\/null file only has rwxr-xr-x per default. This caused trouble when I first tried to scp using Dropbear using a newly-created, unprivileged user.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Relieved of the primary FATE maintenance duties, I decided to dust off my MIPS-based Belco Alpha-400 and try to get it doing FATE cycles. And just as I was about to get FATE running, I saw that Mans already got his MIPS-based Popcorn Hour device to run FATE. But here are my notes anyway. Getting [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2784","post","type-post","status-publish","format-standard","hentry","category-general"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/2784","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/comments?post=2784"}],"version-history":[{"count":9,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/2784\/revisions"}],"predecessor-version":[{"id":2796,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/2784\/revisions\/2796"}],"wp:attachment":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/media?parent=2784"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/categories?post=2784"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/tags?post=2784"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}