Unboxing and Exploring

After much tracking number checking and eagerly waiting, my new to me iBook G4 arrived.
I know an iBook G4 was not the most reliable or easy to work on machine I could have gone with. It did seem like a fun project though. It also reminded me of college. I had an iBook G4 very briefly and an iBook G3 for a couple of semesters. The iBook I received is an 800MHZ model. It came with an Apple branded 512MB RAM stick, otherwise it appears to be stock. The seller I got this iBook from bought all of the stock of a repair shop that had gone out of business. The machine was powered on and in MacOS in the eBay listing. I did find a new old stock 1GB stick of RAM on eBay as well.
Upon installing the RAM upgrade, I began to see evidence that I was not the first person to dive into the machine. The RAM cover is missing two screws and the AirPort Extreme retention clip.
The routing of this cable may also be off. I do not recall if my other iBooks were like this.
Here was the OEM RAM upgrade before it came out.
After buttoning the iBook back up, I started an install of MacOS Leopard. Since this machine is 67MHZ shy of Leopard's CPU speed requirement, I had to perform an open firmware trick. This trick causes the CPU to temporarily present it's clock speed higher than what it actually is. A quick Google search turns up several pages detailing how to do this. This was the link that I used. https://tinyapps.org/docs/install_and_optimize_leopard_on_unsupported_macs.html.
After the install completed, I was able to get all of the software updates installed.
This is a good place to stop for this entry. So far so good. I have not experienced any kernel panics, screen issues or graphics issues.

Starting Over

I look back at everything I have written here over the years. I see lots of unfinished and half done projects. Cooling mods for PowerMacs and ancient IDEs on PowerBooks, all of which have been lost to downsizing, moves and storage unit thefts. It is wild how much things have changed over the years.

At any rate, I will leave this here.

Stay tuned!

Gratitude

I am sure most of you have heard about the news regarding TenFourFox and Classilla. If you have not here is a link to what I am talking about,
https://tenfourfox.blogspot.com/2020/04/the-end-of-tenfourfox-and-what-ive.html.

Reading this has made me look back over my PowerPC Mac experience. I am left feeling extremely grateful. Prior to my experiences with post Leopard PowerPC Masc I had only dabbled with Ubuntu on x86 and amd64 machines here and there. Running Debian Jessie and Wheezy on PowerPC Macs is what really gave my GNU/Linux skills a solid foundation. Having the ability to hop over to Tiger and/or Leopard and run TenFourFox at any given moment throughout all these years has been nothing short of amazing. One of, if not my most favorite periods of time in my technical journey has been the time spent on PowerPC Macs. TenFourFox was an absolutely integral part of this time.

Feel free to join me in the comments as I close by thanking Cameron Kaiser. We really appreciate the tireless, amazing work you have done for our community. Thank you for everything!

Still A Place For OS9

For years I've used my Macs to produce and write music - generally favouring Propellerhead Reason for purely electronic pieces, Garageband where real instruments need to be recorded and often using both in combination.


The final step to a recording after mixing down is mastering to give it that extra zing and dynamics - for this I use SonicWORX which is an OS9 application.




Initially this would mean copying files to a thumbdrive, moving to an OS9 machine, processing then copying back but now I complete the process with VNC over Ethernet.

My OS9 machine for this task is my 800Mhz G4 iMac which sits in my desk corner keyboardless and mouseless.




I activate sharing between it and my Mac Pro, copy the files to be processed across, then use Chicken of the VNC to open up a remote session on the iMac.

The audio files are processed and copied back in the same manner they were sent.
So, there's still a place for OS9 and it's easy to include it in an OSX workflow.




Updating VLC To Play Youtube

When VLC was last updated for PowerPC it was possible to play Youtube links copied into it - alas that ability has long since expired but you can bring it back with a few updated components.

This only applies to the last PPC iteration of VLC, version 2.0.10 and also requires the ever wonderful PPCMC (for latest security certificates and curl.)

The following code copied into Terminal will do the following:

Make a directory in VLC preferences for the latest security certificates

Delete the old Youtube lua script from VLC

Create a symlink in VLC preferences of the security certificates in PPCMC (this will update when PPCMC is updated)

Finally, using curl, copy the latest Youtube lua script into VLC


mkdir -p ~/Library/Preferences/org.videolan.vlc/ssl/certs
rm -f /Applications/VLC.app/Contents/MacOS/share/lua/playlist/youtube.luac
ln -s /Applications/PPCMC.app/certs/cacert.pem ~/Library/Preferences/org.videolan.vlc/ssl/certs/ca-certificates.crt
/Applications/PPCMC.app/bin/curl --insecure https://raw.githubusercontent.com/videolan/vlc/master/share/lua/playlist/youtube.lua -o /Applications/VLC.app/Contents/MacOS/share/lua/playlist/youtube.lua


From the download here extract the compact Youtube browser, Choob and the VLC scripts, VLSEE and VLLISTEN into Applications and create shortcuts in the dock (right hand side for VLSEE/VLLISTEN as they are scripts.) Open VLC and in Preferences - /Input/Codecs change the Preferred video resolution to Standard and close.






Opening Choob, browse to your chosen video, right click to copy the link then click the VLSEE dock shortcut - VLC will open and quickly stream the video - quit VLC when finished.If you want to stream audio only then do the same but with VLLISTEN.




Virtual PC and Ancient IDEs: Part 1 - Setting up Virtual PC

As mentioned in my previous post I have set up a 17 inch PowerBook G4 for Python, Objective-C and C++ development. One of my newfound time-sinks-that-brings-me-joy is setting up old Windows environments and installing very old IDEs. Examples include Visual C++ 6, Borland Delphi 7 and most recently PalmOS IDEs. I thought to myself, why not set up VirtualPC on my PowerBook and see how viable it would be? That is what I will cover here in this post. My ultimate goal is to set up a Windows 98 virtual PC and a Windows 2000 virtual PC then set up the IDEs on both virtual PCs. This will be a good way to compare performance between the two OSs under Microsoft Virtual PC.

Setting up Microsoft Virtual PC was fairly straight forward. I grabbed the Virtual PC 7.02 installer, 7.03 updater and the modified networking kext from the Macintosh Garden. Installing Virtual PC 7.02 and then updating it to version 7.03 was a simple software install. Now onto the Now onto the quirk. As pointed out at the Macintosh Garden, if Virtual PC is left as is on Mac OS Leopard, a kext icon will appear on your dock and bounce up and down while Virtual PC is running. I copied over the modified kext to /Library/Extensions as instructed. When I opened Virtual PC after doing this, Virtual PC said "The software necessary to run Virtual PC for Mac is either missing or is installed incorrectly" and then repaired itself, reverting the kext at /Library/Extensions back to its original state. I opened the original and the modified kexts to see if I could see any differences between the two. I found that the modified kext's info.plist had two extra lines.

Here is the original info.plist...

<plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>English</string> <key>CFBundleExecutable</key> <string>VirtualPCNetworking1040</string> <key>CFBundleGetInfoString</key> <string>7.0.3 (070613), &#169; 2005 Microsoft Corporation. All rights reserved.</string> <key>CFBundleIdentifier</key> <string>com.microsoft.VirtualPC.Networking.1040</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> <string>Virtual PC Networking</string> <key>CFBundlePackageType</key> <string>KEXT</string> <key>CFBundleShortVersionString</key> <string>7.0.3</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>7.0.3</string> <key>OSBundleLibraries</key> <dict> <key>com.apple.kpi.bsd</key> <string>8.0.0b2</string> <key>com.apple.kpi.libkern</key> <string>8.0.0b2</string> <key>com.apple.kpi.mach</key> <string>8.0.0b2</string> </dict> </dict> </plist>

Here is the modified info.plist...

<plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>English</string> <key>CFBundleExecutable</key> <string>VirtualPCNetworking1040</string> <key>CFBundleGetInfoString</key> <string>7.0.3 (070613), &#169; 2005 Microsoft Corporation. All rights reserved.</string> <key>CFBundleIdentifier</key> <string>com.microsoft.VirtualPC.Networking.1040</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> <string>Virtual PC Networking</string> <key>CFBundlePackageType</key> <string>KEXT</string> <key>CFBundleShortVersionString</key> <string>7.0.3</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>7.0.3</string> <key>OSBundleLibraries</key> <dict> <key>com.apple.kpi.bsd</key> <string>8.0.0b2</string> <key>com.apple.kpi.libkern</key> <string>8.0.0b2</string> <key>com.apple.kpi.mach</key> <string>8.0.0b2</string> </dict> <key>LSUIElement</key> <string>1</string> </dict> </plist>

I opened the original kext in Text Wrangler, navigated to info.plist and added the two additional lines after the nested/inner dict block. Text Wrangler notified me that I did not have the privilege to modify this file. It asked for my password and saved the file after I authenticated. I was then able to open Virtual PC without being asked to repair my install or watch the white Lego jump up and down on the dock.

At this point I was able to make virtual PCs and install OSs on them. I made one for Windows 98 and Windows 2000. After the Windows installs completed, I installed the virtual PC additions for both virtual machines. This is done by clicking the PC menu then clicking the Install or Update Additions option.

This is a good stopping point. I wanted to share my experience with the kext quirk and what I had to do to fix it. As I set up the IDEs on these two virtual PCs I will share my findings and takes here.

As always, thank you for reading. Have fun!