Since there's been some interest in Beginning Open Firmware Debugging Techniques,
Part I, we decided to go ahead and post Beginning Open Firmware Debugging Techniques,
although in some places it is a bit rough. Better to at least get the
information out there rather than let it sit somewhere unavailable to
someone that might gain from it. If you wish to help polish either
piece, drop us a line.
We're baaaaack :-) We came to realize that we can ignore our spots but
that doesn't make them go away. What's new? OpenBSD finally caught up
us (after two years) and started supporting Old
World Macs. We've seen a noticeable increase in traffic since then
(and noted to ourselves the connections from Calgary during the 2006
We have decided to take the plunge and develop our own operating system,
based on exokernel
design. The focus will be RISC-based CPUs, with initial development on
PowerPCs (Old World Macs, of course). If this wasn't difficult enough,
we have decided to do it with end-to-end MIT/BSD/public domain licensed
source code, including the compiler. To add to the workload, we also
decided to develop a programming language that inherently optimizes
RISC-based CPUs, through a register-centric mentality instead of the
common stack-centric philosophy. We're looking for four or five
individuals that would like to participate in this project. Applicants
must have strong left-wing beliefs, be willing to accept decisions made
(with or without debate) by a central authority, and have a desire to do
something completely different in a world where homogeneity is not only
expected but imposed (by force if necessary). Programming experience is
not a prerequisite (it might even be a hindrance), but a commitment to
excellence is. If this sounds like something you are interested in,
drop tim (English) or timo (German) an email describing your beliefs and
experiences. If you are unable to locate either email address, you
probably won't fit in, due to the extensive research requirements this
project will have.
Well, what to say? We've generally packed it in and moved on. We're
preparing a closing statement, but other activities keep us too busy to
spend much time on it. In general, we have left computers and moved into
Green building practices. We'll post more information directing visitors
to that site soon. |
Otherwise, the only significant changes are moving to OS X running lighttpd
(one of the few installs in the world) for web serving and postfix for mail
with postgrey for anti-spam measures. Lighttpd mysteriously dies every
couple of days, but otherwise the package works well. The move to OS
X was precipitated by an effort to reduce our CO2 footprint as
much as possible, and the NetBSD box was redundant and underused.
We're not big fans of Apple, but NetBSD's power management is very
poor and the Mac mini was on all of the time anyways.
We did post the NetBSD-ready version of the PowerPC-optimized
bcopy/memcpy. You can find it in the PowerPC
We're quite excited about the new direction we're taking. It builds on
some of our past experiences in home repair
field coupled with some financial planning theories we've developed (your house
is your greatest asset) and the coming revolution in Green building.
We'll post more when time permits.
Perhaps it is the summer heat and we've gone crazy, but we've posted the
first installment of the never before published "Open Firmware Debugging
Techniques," which was supposed to be the intro to the unpublished "This
Operating System, That Hardware" series on porting NetBSD to a JS20. Part I deals with the command line
interface to Open Firmware. Enjoy.
Updated the bcopy/memcpy code.
Turns out there was a bug in the original code that caused errors with
copies of less than 4 bytes when the destination address was higher than
the source address (backwards copy). We've tested a kernel compiled with
the code and it works. Next up is a userland and libc build.
Even more amazing! tim found time to post the first three installments of
the "Some Assembly Required" series that did not get published by
developerWorks. They can be found in the PowerPC
area. What's next, posting the first two installments to "This Operating
System, That Hardware?" |
Gee, tim found some time to gather some links to work he's done as a
technical editor and as a writer. They can be found in the new Words
While he hasn't had time to fully finish it, tim has posted a faster bcopy/memcopy routine
to the PowerPC section. It's about 10%
faster for aligned copies and about 80% faster for unaligned copies. The
main holdup for releasing it in a bcopy/memcopy form is that these
routines are in the string libraries that are linked against extensively.
We haven't had time to do a complete rebuild, and simply replacing the
recompiled libraries led to segmentation faults (not the fault of the code
but the changed linking locations).
It's been a long time coming, but we've moved our mail and web servers
from MacOS 9.x and Webstar to NetBSD with lighttpd, cyrus and postfix.
We're using NetBSD 3.99.3 with several custom code components. Eventually
Tim will find time to write them up. Lots of news regarding the QZ!
Engine (two deployments) and his efforts to be a published technical
writer, but time is short as always. One day...
Action in the background has been fast and furious, but nothing for print
yet. We've got news approaching on the status of QZ! 1.0, our assessment
database system, and lots to report on the operating system research
we've been doing. However, until we can talk about it, we'll hope the
new Journeys section (ok, re-release of old
classics) will make the wait worthwhile.
||Updated bootloader page.
||We've moved our web and mail
servers in-house. If you have trouble emailing someone here, please use
our web form. Updates should follow shortly,
including the newest features to the modified bootloader.
available for testing) of boot25c.xcf. Further
decoupling of kernel location from bootloader location; the bootloader
has to be on an Open Firmware readable partition while the kernel can be
on either OF readable or an MBR/FFS partition.
available for testing) of boot25a.xcf. Initial
support of decoupling of kernel location from bootloader location; local
stack instead of Open Firmware provided.
||Three new areas have been
opened. The first is the release of a generic bootloader for NetBSD and OpenBSD. This XCOFF
bootloader will work on both Old and New World Macs and does not require
altering Open Firmware settings except where kernel loading issues
require it. The second area is a discussion of several issues to be
overcome when porting an operating system to Old
World Macs. As proof of concept, there is also a working OpenBSD 3.5
RAMDISK shell for Old World Macs. Third, as an outgrowth of both of the
two previous areas, there is an area for PowerPC
processor research, including code for dynamically calculating the L2
cache size on G3 and G4 CPUs.|
||The screenshot of the login
hole in OS X is here. A discussion of the hole
can be found beginning at Macintouch.