So I have this 2006 Mac Pro 1,1 that I’ve had laying around and I wanted to put my old Nvidia 1030 into it, along with Windows 10 for a newer (stronger?) home machine.
So I burnt the downloadable ISO from Microsoft onto a DVD, tried to boot it up and got this:
I got stuck at this “Select CD-ROM Boot Type : ” prompt, which you can’t type anything into. Apparently it’s a common and known issue with 64bit boot code, as the older Intel Apple Mac’s are of course 32bit only. So there is a fix, you have to use something called “oscdimg” to rebuild the ISO with a 32bit friendly loader.
So first I just used 7zip to extract the downloaded ISO, and then create the new 32bit ISO with the following:
I just got another PowerBook, and the disk had been wiped by the prior user, and all it did was boot up to the blinking mac face. So not very useful. I did luckily buy some CD’s from a user on reddit a few months ago, so I had 10.4 install DVD, and an install of 9.2.2 for the emac.
Now the OS 9, is an install disc, not one of the recovery discs, and naturally the aluminum powerbooks don’t boot OS 9, so I’m kind of out of luck for getting Classic working, or so I had thought. I copied the System Folder from the CD onto the hard disk, and told the classic applette to boot it, and it updated some system files, and then gave me this fine message:
So this got me thinking, back in the Sheepshaver days when trying to boot from an ISO as a disk file, it fails the same way because the image is read/write. If it’s read-only it does boot up however. So I used disk util, and made a new read-only disk image from a directory, and pointed it to a directory that I’d moved the CD’s system folder, desktop to. After mounting the read only image, it booted!
Now for the best part, I then kicked off the installer from the CD, and had it install a copy of OS 9, onto the OS X disk.
It’s worth noting that just about every optional install fails. It’ll come back with an error, and you can skip the component. It’s probably just easier to install the minimal OS image.
But rest assured it really does install.
After the install you can eject the CD, unmount the read-only copy and tell the classic to stop and then boot from the new installed copy of OS 9 on the OS X disk. It didn’t interfere with my OS X from booting, although the ‘sane person’ would probably have disk image make a small (1gb) read/write virtual disk, and have the installer install to that.
So to recap, copy the system folder from the CD onto read-write media, and let classic update it. get it to the point that it’s not happy about being mounted read-write. Move it to a read-only disk image and have classic boot from that, and then run the OS 9 installer to install itself to whatever target disk you need or want.
I’ve run Netscape 4, IE 3 & 4, QuickTime 4, and the SIMS version 1 (the OS 8/9 carbon version). using 10.4.0 on an aluminum powerbook.
I don’t know if anyone else has done this, I couldn’t find any real concrete guides for installing OS 9 from OS X. So here we go.
; LOGO Language Interpreter for the Apple-II-Plus Personal Microcomputer
; Written and developed by Stephen L. Hain, Patrick G. Sobalvarro,
; and the M.I.T. LOGO Group, at the Massachusetts Institute of
So yeah, I wanted to get a ‘real’ SAN for a while, but they always cost too much. So I just decided to look for something older, like a MSA-1000, which are surprisingly still expensive. Failing that I thought about how I could get that MacPro 2010 for ~$300 so I said what the heck and picked up a super cheap 7TB fully loaded out Xserve RAID.
I got a PCI-133 LSI Logic “LSI7202XP” Fiber Channel card for my G5, as I figured that this stuff was of the same era, may as well configure it with a PowerPC.
After setting the LSI to 2GB and in point to point mode, the system needed a reboot, and it would report a link on the FC adapter. Great.
To actually configure the array, you need the Xserve RAID admin tool, along with a working copy of Java on your machine. I downloaded version 1.5.1 which is thankfully still on Apple’s site. It runs fine from OS X 10.5, although the readme does make mention of 10.2, so perhaps it’d run there, although I didn’t feel like booting into 10.2 to find out. By default the password for read only access is ‘public’ and for admin control it’s ‘private’. Yes just like SNMP community strings.
You need to connect the Xserve RAID to an Ethernet network. I’ve only used the MSA’s and they let you configure them over the FC, but no so with Apple, it’s a Bonjour enabled service, so you don’t have to setup the Ethernet, just plug it in, and that’ll be good enough.
Creating the array is straight forward, however the SAN with it’s two controllers aren’t redundant, rather it’s really 2 SAN’s in one chassis with a left & right hand side.
So the solution is to use 2 connectors to the dual card, I have 2 DAC cables so I’m set.
But for now it’s just more so messing with the unit. I’ll probably just set it in JBOD mode, and pass it up to something like Solaris 10 with ZFS exports.
It’s no secret that I always was fascinated with the 1988 game Captain Blood. Last time I played it through was when I’d modified it to run with a virtual floppy drive on an Amiga 600. While the game had been ported to numerous 8 bit and 16 bit platforms, it basically vanished into the haze that was French 80’s SciFi body horror.
And sure enough I grabbed a copy of the IIGS emulator KEGS32, the ROM, an OS disk, and booted up System 6.0.1 after putting the OS disk into slot S7D1. I then mounted up the source code diskette found at brutaldeluxe.fr
Well it’s a bunch of assembler files. Ok, so when I try to open one from System 6.0.1 I get this:
So not giving up just yet, I loaded up a program called CiderPress that can read the IIGS disk image files, and using that I was able to extract the source.
And then I saw this gen scattered in the ASM files that were.. well honestly pretty bare of any comments. Or sane labels.
TFBD generated externals
Which of course is the output from The Flaming Bird Disassembler, a product of Brutal Deluxe, aka where this ‘source’ came from. Although apparently it can be re-assembled into a working executable, as Antoine had fixed it so the mouse used toolbox calls for the mouse for ROM 03.
I put the source code online in CVS. Although I don’t think many people would care, as it’s reversed and VERY terse.
There is no games, nothing fun to do, I didn’t even build a compiler. It’s just enough to show that it’ll boot up. If you manually conifgure the loop back you can ping yourself, launch inetd you can even try to telnet in, but control break is .. broken, and there is no NetInfo running so no passwords.
Of course for anyone finding this site today there are more newer, and capable images on my sourceforge page:
I only have to wait 24,153,992 minutes to unlock my iPod! That is just under 46 years.
So I haven’t used this in a few months, and the battery went flat, but with iOS 9 or whatever this is running it reset to 1970, and now won’t let me even try to unlock it. Good thing the MacBook Air I sync’d it with is dead too. I guess that’s 2012 for me.
I just don’t want to hard reset it, so I guess I’ll have to see if there is a root kit/hack to set the clock.
I found this out trying to install XCode 4.2 on OS X 10.6
Failed install preflight: Error Domain=PKInstallErrorDomain Code=102 UserInfo=0x1d9a30 “The package “iPhoneSDKTools.pkg” is untrusted.” Underlying Error=(Error Domain=NSOSStatusErrorDomain Code=-21 47409654 UserInfo=0x1dbe90 “The operation couldn’t be completed. CSSMERR_TP_CERT_EXPIRED”)
Yep turns out XCode 4.2 (and probably many others) will actually expire. So turn off the automatic clock sync, and set your time back to before the package was issued (Xcode 4.3, released on February 16, 2012..) and you’ll be good to go.
Good news, as mentioned here, the Shoebill emulator was recently given some much needed SDL love, and ported to Linux.
Well that’s great and all, but the vast majority of people who run anything these days do it with Windows. So I decided to try to get it to compile with MinGW to see how far I could get.
And the short version is that I got it working!
The long version is that in the first pass there is some SIGUSR2 stuff that is undefined. And for a good reason, since it won’t work. So I just commented them out. The next minor problem was the lack of bzero. Honestly I don’t know why bzero is missing from MinGW, but who knows why.
Shoebill also processes some internal macros with a perl script that for some reason was dropping in binary values into the source, making GCC mad. I just commented out a line that was adding in more comments into the header. This let me compile with a simple pass.
There was some issues reading the ROM file, since the 68000 is a BIG ENDIAN processor, and the 8086 is LITTLE ENDIAN, Shoebill makes extensive use of hotns and hotnl, ntohl, and ntohll. These can be found in the winsock library, and even better they dont need any winsock initialization, they work right away. I just have to make sure I include winsock2.h, and link against the winsock library.
However when trying to boot, the checksum was 0x00000000, not the expected value! Luckily there was an assert to catch that and crash. This led me to notice that in Linux files are opened in binary mode by default, while on Windows, they are opened in ASCII mode. A quick change of all the fopen calls, and I was reading the ROM, but now crashing on the disk.
As it turns out newer versions of GCC go all crazy when it comes to structs, and try to automatically align to boundaries for quick access. Which sound nice, until you try to read in some binary data, and expect things to be in certain locations and find out that your structure is larger than expected, and data is read in the wrong place.
The solution is to force the compiler to leave it alone with
HOWEVER as luck would have it, Microsoft apparently packs structures a different way, and you have to either make a macro to do a bunch of work to force it to make the structure 1:1 of what you expect, or use the CFLAG option of
And now MinGW’s GCC will build something along the lines of what it’d build on Linux.