Pat's Log
Thu, 18 Nov 2004

Some Progress
After some eMailing to the xbox-linux mailing list with no success in finding a cure for the Xbox not booting automatically from the hard drive, I discovered that the Cromwell BIOS I was running was somewhat out of date. Flashing the latest (2.32) fixed the issue, and the unit now powers up and boots itself properly. The xbox-linux guys are a friendly and supportive group, I look forward to contributing to the project.

Another good discovery was that with Cromwell, as opposed to the Microsoft firmware, any arbitrary ATAPI CD-ROM drive can be used. This is good, because the built-in optical drive was causing no end of problems reading burned media. The flipside to this is that now that the unit boots properly, the usefulness of the optical drive is much lower. But it is still good to know.

The progress report for this project is due fairly soon. Now that the system is fully running, it would be good to start transcribing ideas about how the user interface should work in time to write about it. Then, the Christmas Break can be used to start implementing these things. Also, over the exam period, it would be good to start looking for important components like the touchscreen and the GPS unit.

[/xbox] | posted @ 05:10 | link

These Are Trying Times...
20041117 The last few days of my life have been difficult, at the very least. My midterm marks suck, assignments are due constantly, and exams loom in the not-so-distant future.

The stress level multiplied by a factor of no less than ten, when yesterday the EngSoc RAID array containing everyone's data started misbehaving during a routine rebuild. At one point, it looked as though two of the four drives had failed, which would pretty much signify the end of what I've poured three years of my life into. Thankfully, we managed to recover completely from the incident with nothing but downtime, though it was really touch-and-go for a good several hours. I finally cracked a smile when in Music class, on the ninth floor of Loeb building, a mouse ran across the classroom and behind a cupboard. It was just one of those things...

Tomorrow is the last Quantum Mechanics midterm, and I'm counting on this one to do well. The last two were really poorly written. This one has significant overlap with my IC design class material, so I may do well. Certainly better than the 17/60 on the Software Engineering midterm. That class worries me.

Today, in a lame attempt at procrastination, the EngSoc folk took apart a Pentium 90 processor. It would have been good to know that the bottom plate could simply have been removed before the thing was smashed to bits. Those edges are sharp!

[] | posted @ 04:59 | link
Sun, 14 Nov 2004

Xebian Installed
xbox/20041113-1 Today was devoted to installing Xebian, a flavour of Debian tailored specifically to Xbox. After installation, it is 100% compatible with Debian's pool of software, but has a slightly different bootup process, as well as a kernel to be used specifically with this hardware. It is now running fairly well, with video output to a video camera.

The first task to install a full Linux system was to overwrite the Flash with one that can boot Linux. This ROM, called Cromwell, was put together to be able to boot Linux. The author did not release the source code publically due to concerns that it could be used to do things considered illegal. To overwrite the normal Flash, two tiny connections that were deliberately left out by Microsoft, namely the traces the write pins, had to be filled in on the motherboard. Here is one of them next to a pin head:


That was a fairly easy task, and the chip flashed flawlessly using the tiny Linux install from yesterday. Next, the hard drive was replaced with one that is expendable. Finally, a CD with Xebian was burned, and a boot attempted. This is where the troubles started. The CD drive was having troubles reading writable media, since writable optical discs tend to be of lesser quality than commercially pressed discs. After four hours of trying various discs burned at various speeds, a Google search revealed that many Xbox optical drive lasers are not set powerfully enough to read writable discs. It was suggested that the laser should be "tuned" to be more powerful. As hinted, right next to the laser diode there was a potentiometer that could be set to lower resistance. It was rotated from approximately 1250Ω to approximately 1050Ω. This setting worked, Xebian installed:


There are still issues to work out. The biggest one is that the system does not want to boot directly from the hard drive. Instead, the Xebian developers provide a CD that is simply a bootloader to the installed system. There is confusion because documentation indicates the Cromwell Flash should be able to boot directly from the hard drive. More research is required here.

While the system was installing, I looked into the complexity of creating a VGA converter to output better video. Apparently, with the signals coming out of an Xbox designed to work with Composite, S-Video, and HDTV, there are enough signals to drive most VGA monitors with a straight-through connection. If the touch-screen LCD I purchase for this unit does not work in this mode, there is a very simple circuit that can be built between the Xbox and the monitor that transforms the synchronization signals into pure VGA.

All in all, this weekend made for good progress.

[/xbox] | posted @ 05:46 | link
Sat, 13 Nov 2004

Full Steam Ahead
At this point, it seems it is high time to get the project really going. The plan is to do the bulk of the work during the Christmas holidays, so it is imperative to have all of the ground work done by then. By December, all work must be R&D.

To that effect, this evening I finally got around to trading my brand new (version 1.6) Xbox with a friend who had the original (version 1.0/1.1) equipment. This is a win-win situation, because he gets a new unit, with a new warranty, and I get a unit that is more suitable for this project. Knowing the difficulties with the 1.6 hardware also allows for another section of the project report, where I can write about Microsoft's continued attempts to prevent people from running Linux on their gaming consoles, as they get more experience with their ideas about trusted computing, of which the Xbox is a prototype platform.

I was able to get Linux loaded into the two megabyte base image fairly quickly:

[xbox/20041112-1] [xbox/20041112-2]

Next, I will attempt to strip the unit of its ability to play games, in favour of behaving as a small, cheap computer.

[/xbox] | posted @ 07:47 | link
Tue, 09 Nov 2004

Aurora Borealis
20041108 Last night the skies put on a nice lightshow in the form of auroras. They've never been particularly bright around here, so I was amazed by how they lit up the sky. Further, I was impressed that they were actually photographable. Setting my digital camera to a sensitivity equivalent to ISO 320, with an exposure time of 1 second, the CCD caught the phenomenon quite nicely. The thresholds were then raised somewhat in The Gimp, et voilà, northern lights on digital film.

In other news, I could use a break right around now. As a means of procrastination, I started moving the notes for my IC design class to TeX, which proper PostScript diagrams. I was pleasantly surprised last night when I realized Inkscape could output to PostScript. Haven't yet figured out why I'm doing this, but the first few pages sure look good.

[] | posted @ 03:54 | link
Fri, 05 Nov 2004

Midterm Time
20041104 I have not written here for many moons now. This is mostly because of the steady flow of midterm examinations I've been bombarded with recently. I just got one of them back today, and I failed miserably. It's the first midterm failed this year. It's Quantum Mechanics, and significant studying went into it. With two out of three tests in that class complete, both shoddily, I am starting to get quite worried. It seems I have all of the information I need, but there is some incompatibility between how my brain works and how the tests are written. It's very frustrating.

Another thing driving me nuts is my eBay purchase of MechAssault needed to get Linux onto Xboxes. The purchase was made exactly four weeks ago today and I still do not have it. This certainly warrants a negative rating.

My laptop's been doing stupid things with the display as of late. It seems to be a combination of software and hardware problems, neither of which I can resolve.

Today marked the first day where the daytime temperature was below freezing. It was the first day I didn't wear my sandals outside.

All in all, I feel miserable.

[] | posted @ 04:48 | link

The DashPC Project
xbox/20041104 While I'm still waiting to get the Xbox hardware to run Linux, I decided it would be a good idea to look ahead and see what front-end software I should be running.

DashPC has always seemed the logical choice. It has an intuitive interface, what appears to be decent integration, and of course, it runs on Linux using the GTK toolkit. However, building and running it today, I was somewhat disappointed:

  • The tarball is not conventionally organized, and all of the files uncompressed into the current directory.
  • The UI is incomplete and buggy.
  • The integration that was implied is non-existent. It's simply a shell with pretty graphics that does callouts to other programs.
  • It's not configurable, everything appears to be hardcoded.
  • It seems disorganized: I downloaded a tarball versioned 0.45, and I got version 0.5.9 of the program.

With these shortcomings, it would probably be easier to start a new interface from scratch. There is really very little that could make this project useful. However, that is not a bad thing, as the project's major goal is to consider user interfaces, both hardware and software.

Here are some ideas for a new project that would differentiate it from DashPC:

  • Interface elements should not be graphics. Graphics do not allow for scalability or contrast modification.
  • Interface "screens" should be user-configurable, so that a new section is easy to add.
  • The UI could be written in Glade, to allow for easier design of various panels/screens.

This software would be straightforward, with focus on two areas: user interface design and plugins/extensibility. Seeing as the back-end work is simple, the first step of the project should be to do some Glade mockups of a new user interface.

[/xbox] | posted @ 04:29 | link

copyright ©2004-2016 pat suwalski