The Boston Diaries

The ongoing saga of a programmer who doesn't live in Boston, nor does he even like Boston, but yet named his weblog/journal “The Boston Diaries.”

Go figure.

Tuesday, Debtember 06, 2011

It didn't take me quite as long this time

I decided to give Basilisk II another try, given the proper files for Mac System 8 were available. The problem I had last time appeared to be a simple compiler problem, and forcing the Makefile to use g++ got past that issue.

I then had to make a bazillion casts in one of the files, since g++ didn't like the code:

../uae_cpu/gencpu.c:2422: error: invalid conversion from `unsigned int' to `amodes'
../uae_cpu/gencpu.c:2422: error:   initializing argument 1 of `void genamode(amodes, char*, wordsizes, char*, int, int)'
../uae_cpu/gencpu.c:2422: error: invalid conversion from `unsigned int' to `wordsizes'
../uae_cpu/gencpu.c:2422: error:   initializing argument 3 of `void genamode(amodes, char*, wordsizes, char*, int, int)'

It seems one cannot cast an unsigned bitfield to an enum in g++ without a cast. There were only a bazillion locations to change in that one file, but once done, I had Basilisk II running on my Linux system.

[A HyperCard calculator and the System 7 calculator on System 8]

A nice feature of Basilisk II is that it can mount a Unix directory as a Mac “drive” so transferring files in and out of the virtual Macintosh is very easy and I no longer need to use hfsutils on disk images.

Software archaeology is apparently a real thing

My job now was to smuggle these documents back into the company. I would be happy to just hand them over. But that doesn't make any sense to the company. The company officially has these documents (digitally managed!), and officially I don't. In reality, the situation is the reverse, but who wants to hear that? God knows what official process would let me fix that.

Oh, and as an external consultant, I'm not allowed to know some of the trade secrets in the documents. The internal side of the team needs to handle the sensitive process information, and be careful about how that information crosses boundaries when talking to the external consultants. Unfortunately, the internal team doesn't know what the secrets are, while I do. I even invented a few of them, and have my name on some related patents. Nonetheless, I need to smuggle these trade secrets back into the company, so that the internal side can handle them. They just have to make sure they don't accidentally repeat them back to me.

Via Flutterby, Institutional memory and reverse smuggling

This sounds like a cautionary tale of what happened to Stonehenge or the Pyramids of Giza—they were built, but now years later the project documentation got misfiled somewhere and we're stuck with trying to reconstruct how it happened.

Actually, now that I think about it, it also sounds like a lot of software projects.

Hmmm … oh my … no … just no

“My unit test had moved Greenland into Argentina.”

… but on October 7th this year, Argentina announced that it wasn't going to use daylight saving time any more … 11 days before its next transition. The reason? Their dams are 90% full. I only heard about this due to one of my unit tests failing. For various complicated reasons, a unit test which expected to recognise the time zone for Godthab actually thought it was Buenos Aires. So due to rainfall thousands of miles away, my unit test had moved Greenland into Argentina. Fail.

Via Hacker News, OMG Ponies!!! (Aka Humanity: Epic Fail) - Jon Skeet: Coding Blog

I have no words for this, other than “be afraid. Be very afraid.”

Obligatory Picture

[It's the most wonderful time of the year!]

Obligatory Contact Info

Obligatory Feeds

Obligatory Links

Obligatory Miscellaneous

You have my permission to link freely to any entry here. Go ahead, I won't bite. I promise.

The dates are the permanent links to that day's entries (or entry, if there is only one entry). The titles are the permanent links to that entry only. The format for the links are simple: Start with the base link for this site:, then add the date you are interested in, say 2000/08/01, so that would make the final URL:

You can also specify the entire month by leaving off the day portion. You can even select an arbitrary portion of time.

You may also note subtle shading of the links and that's intentional: the “closer” the link is (relative to the page) the “brighter” it appears. It's an experiment in using color shading to denote the distance a link is from here. If you don't notice it, don't worry; it's not all that important.

It is assumed that every brand name, slogan, corporate name, symbol, design element, et cetera mentioned in these pages is a protected and/or trademarked entity, the sole property of its owner(s), and acknowledgement of this status is implied.

Copyright © 1999-2022 by Sean Conner. All Rights Reserved.