Ripping My Music

During the pandemic I realized I am never going to subscribe to a streaming music service. At 38 I am spending less time discovering new music, and more time listening to the music I already own.

I listen to albums, and own physical copies of most of my music. The COVID19 lockdown gave me the opportunity I needed to replace the digital albums I previously purchased with physical CDs, and re-rip my entire music collection in a lossless format.

With the help of my Kabylake powered PC, MacBook Pro, and four 32× optical drives, I was ready to rip my 500 album CD collection. I choose to rip my CDs using iTunes because I wanted my collection in Apple's Lossless Audio Codec. For most people the popular FLAC format is more compatible and easier to error-check, but I still listen to music on older iPods and operating systems that require a format compatible with retro Apple hardware.

iTunes can't import CDs from multiple optical drives simultaneously, but it will automatically import the next new audio CD it finds; ejecting the previously imported disc in the process. As long as I kept all four of my optical drives feed, iTunes would rip a new album every two to three minutes; automatically including track metadata and album art with no user intervention required.[^error]

[^error]: Just remember to check "Use error correction when reading Audio CDs" for the best possible rip.

After about twenty hours, or two weeks of off and on importing, I had my music collection ripped to Apple lossless. I consolidated the effort from both computers to a single master collection I keep on a cloud accessible server; checking out the albums I want to listen to at any time from my myriad of devices.

My First iPod

I got my first iPod in 2003. It was the second generation model; the first iPod to include a capacitive touch wheel. I bought the 10 GB model with the included inline remote control, not only because it was cheaper at $399, but because it was thinner at 0.72 inches[^inches].

[^inches]: Back in those days the smaller capacity iPods were also the thinnest.

All through out high school I listened to my music collection via mini discs I mixed myself, using my CD collection and the family DVD player. Each mini disc could only hold an albums worth of music, and mastering them was a tedious process of swapping CDs and waiting for each track to playback in real time.[^toslink]

[^toslink]: Thanks TOSLINK

It took me months to save up for my first iPod, but the reward was worth it. With over 2,000 songs in my pocket, my iPod was the first time I could listen to all of my music without changing discs. Thanks to FireWire I could transfer my whole music collection to my iPod in a matter of minutes instead of wasting hours swapping discs. Most importantly though, my iPod allowed me to make the most of the music I already owned. Transferring the handcrafted playlists I made on my Mac using iTunes, while simultaneously reintroducing me to my seldom played songs via shuffle. Thanks to my first iPod my music playing experience would never be the same.

Mac Source Ports

Video games were a big part of my adolescence. And although my memories of playing these games as a child will never die, far too often the chance to replay these games is tied to obsolete hardware that is both hard to come by and difficult to preserve.

Not true for source ports!

Source ports are projects derived from a original game's source code, designed to extend the game's capabilities while providing compatibility with modern hardware like Apple Silicon.

For example, id Software released Quake III: Arena in 1999. In 2005, after the game and engine’s commercial life was over, they released the source code freely under an open source license. Shortly thereafter the ioquake3 project was born and has been maintained ever since.

In this case, Quake III: Arena is the game, and ioquake3 is the source port. Although the original executables for Quake III: Arena have long since stopped working on modern Macs, source ports like ioquake3 have seen constant maintenance so they allow you to continue to play on modern Macs.

Mac Source Ports is a new website by Tom Kidd, designed to make playing popular source ports on modern Macs easier. He does this by curating a growing list of popular source ports, optimizing them for Intel and Apple Silicon Macs, and signing/notarizing the code when necessary to provide a near seamless Macintosh gaming experience.

In some cases source port projects make their own builds and we link to those here as well, but oftentimes the projects don’t have the resources to do it themselves. Code signing is relatively new and sort of tedious, notarization requires a paid account which not everyone is interested in obtaining, and not everyone even has a Mac in the first place. Windows machines are everywhere and Linux can be installed on anything but you have to buy a Mac to have macOS. And every so often Apple changes things, like the recent shift to Apple Silicon, so even people who do have a Mac have to buy new stuff.

Right now the number of source ports is small, just a single page of first person shooters based on game engines developed by id Software and 3D Realms. But Tom hopes to expand the Mac Source Ports collection soon.

I’m getting to it, provided it has source code and an actively maintained source port. If the source port is already doing the work of making the signed and notarized builds, I'll link to them here, otherwise I'll see if I can figure out how to do it myself. If a game doesn’t have an actively maintained source port it might require more work. If it doesn’t have source code available I can’t do anything with it (so, for example Quake 4 never released source code so I can't do anything with it).

Tom takes the hard work out of source ports by maintaining, compiling, signing, and notarizing the available source code. But in order to play the game, source ports need data files like character models, maps, sounds, and background music. Because these data files are copyrighted they cannot be distributed as part of the game's original source code. Players must acquire these data files elsewhere; either from a physical copy of the game or by purchasing the game from an online retailer like GOG or Steam.

It is because of copyright laws that source ports cannot be distributed in the Mac App Store.

For example, I can’t put the full game of Quake on the Mac App Store because I don’t have the rights to do so. I could conceivably try to put a port of vkQuake on there without data files but anything you put on the App Store has to go through a vetting process and it’s not clear whether the staff has the ability to go through the process of acquiring the game data and running through the process themselves. And it’s unlikely I could call it vkQuake, so I’d have to name it something else and use a different icon which would confuse people.

Thankfully Mac Source Ports makes installing the data files easy, with installation instructions for every game in the collection. Tom is even working on way to extract the data files from a Windows installer without the use of a PC.

Quake, Doom, and Return to Castle Wolfenstein are some of my favorite video games of all time. I have been playing popular source ports like ioquake3, dhewm3, and iortcw since there inception. But compiling all of my favorite source ports for Apple Silicon is beyond my abilities. I am glad to see that Tom Kidd, who has a long history of porting id Software's back catalog to iOS, turn his expertise towards Macintosh gaming. Here's hoping the future of Mac Source Ports looks bright in 2022 and includes many more popular source ports like OpenRA, DevilutionX, and Super Mario 64 PC Port just to name a few. Everyone with a Apple Silicon Mac, who likes playing video games should buy Tom Kidd a coffee!

Apple Store Pickup

I went to the Apple Store today to pick up a MacBook Air I had repaired under warranty. Apple requires a state ID or passport at time of pickup to prove identity. I am legally blind so I don't carry a driver's license, and my state ID had expired during the pandemic. I could prove my identity with my MIT employee photo ID, major credit cards, and a copy of my birth certificate I brought along just in case. Apple would not accept any of my forms of identification; including the repair ticket I was issued when I dropped off my computer.

In my pocket was an iPhone registered to the same Apple ID registered to my MacBook Air. The same Apple ID I used to sign up for my Genius appointment when I dropped off the computer. I know the username and password for this Apple ID, and could prove it with Apple two-factor authentication.

Apple wouldn't accept their own forms of identification either, and told me the only way they would return my computer to me was if came back to the store with a government issued ID, or called Apple Support and arranged for a person with a government issued ID to pickup my computer.

So that is what I did.

Why is it more secure for me to make an anonymous call to Apple Support and arrange some rando from the food court with a state ID to pick up my computer, than it is for me to prove my identity using the Apple ID and two-factor authentication the computer is registered to?

Universal Charging

Mark Gurman writing for Bloomberg:

A major change to the new computers will be how they charge. Over the past five years, Apple has relied on USB-C ports for both power and data transfer on its laptops, making them compatible with other manufacturers’ chargers. But the company is now bringing back MagSafe, the magnetic power adapter that means any accidental yanking of the power cable would simply detach it from the laptop rather than pull down the entire computer. It was a favorite feature of the company’s portable PC lineup that was first introduced in 2006 and most recently revived for its latest lineup of iPhones.

The return of MagSafe with the next MacBook Pros will also allow those laptops to charge at a faster rate, the person said. The connector will be similar to the elongated pill-shape design of the older MagSafe port.

I would be happy to see the return of MagSafe, but not as a replacement for the universal charging USB Type-C provides.

Universal charging means I am less likely to take my laptop charger with me on the go, when I know I can share the same USB Type-C charger/portable batteries as my PC laptop carrying counterparts. That I can choose my own charger from companies like Anker. And when I am at my desk the same dock or USB Type-C monitor that extends the capabilities of my MacBook can also charge it as well. If a proprietary MacSafe cable is the only way to charge my MacBook in the future, count me out.