Linux: Coming Soon To M1 Macbooks

Regardless of the chipset or original intended use of any computer system, someone somewhere is going to want to try and run Linux on it. And why not? Linux is versatile and free to use as well as open-source, so it’s quite capable of running on almost anything. Of course, it takes a little while for the Linux folk to port the software to brand new hardware, but it’s virtually guaranteed that it’s only a matter of time before Linux is running on even the most locked-down of hardware, like the M1 MacBooks.

[Hector Martin] aka [marcan] has been hard at work getting Linux up and running on the latest Apple offerings with their ARM-based M1 processors. Since these are completely divorced from their x86 product line the process had to be worked from the ground up which included both booting Linux and modifying the kernel to include support for the hardware. [marcan] has a lot of hardware working such as the USB ports and the SD card slot, and notes that his setup is even compatible with the webcam notch included in the latest batch of MacBooks.

There are a few things still missing. He’s running Arch and doesn’t have the GPU configured yet, so all of the graphics are rendered in software. But he has put the computer through the wringer including running some computationally-intense software for nearly a full day before realizing that the machine wasn’t charging, which did not make much difference in performance. These machines are indeed quite capable with their new ARM chipsets and hopefully his work going forward will bring Linux to the rest of us who still use Macs even if they don’t want to run macOS.

FIR Filters For Xilinx

Digital filters are always an interesting topic, and they are especially attractive with FPGAs. [Pabolo] has been working with them in a series of blog posts. The latest covers an 8th order FIR filter in Verilog.  He covers some math, which you can find in many places, but he also shows how an implementation maps to DSP slices in a device. Then to reduce the number of slices, he illustrates folding which trades delay time for slice usage.

Folding takes a multi-stage parallel multiplication and breaks it into fewer multiplications done over a longer period of time. This reuses slices to reduce the number required for high-order filters.

Continue reading “FIR Filters For Xilinx”

Apple Gets CP/M

In case you wanted to run WordStar on your Mac, [Tom Harte] offers CP/M for OS/X, and it looks like it would be a lot of fun. Of course you might be happier running Zork or Turbo Pascal, and you can do that, too.

There are plenty of Z80 emulators that can run CP/M, but what we found most interesting about this one is that it is written in Objective C, a language with a deep history in the Mac and NeXT worlds.

Continue reading “Apple Gets CP/M”

Hardware Keymapper Routes Through Raspberry Pi

There are a lot of keyboards to choose from, and a quick trip through some of the forums will quickly show you how fanatical some people can be about very specific styles or switches. [Crdotson] doesn’t seem to be too far down the rabbit hole in that regard, but he does have a keyboard that he really likes despite one small quirk: it’s built for Mac, and some of the modifier keys aren’t laid out correctly for Windows. Since Windows has limited (and poor) options for software keymapping, he took an alternative route and built a keymapper in hardware instead.

The build uses a Raspberry Pi as a go-between from the keyboard to his computer. The Pi watches the USB bus using usbmon, which allows inspection of the packets and can see which keys have been pressed. It then passes those keypresses through to the computer. His only modification to the keyboard mapping is to swap the Alt and Super (Windows) keys for his keyboard of choice, although using this software would allow any other changes to be made as well. Latency is only on the order of a few microseconds, which is not noticeable for normal use cases.

While we have seen plenty of other builds around that can map keyboards in plenty of custom ways, if you don’t have the required hardware for a bespoke solution it’s much more likely that there’s a Raspberry Pi laying around that can do the job instead. There are a few issues with the build that [crdotson] is planning to tackle, though, such as unplugging the device while a key is being pressed, which perpetually sends that keystroke to the computer without stopping. But for now it’s a workable solution for his problem.

Should You Build For Windows, Mac, IOS, Android, Or Linux? Yes!

The holy grail of computer languages is to write code once and have it deploy effortlessly everywhere. Java likes to take credit for the idea, but UCSD P-Code was way before that and you could argue that mainframes had I/O abstraction like Fortran unit numbers even earlier. More modern efforts include Qt, GTK, and other things. Naturally, all of these fall short in some way. Now Google enters the fray with Flutter.

Flutter isn’t new, but in the past, it only handled Android and iOS. Now it can target desktop platforms and can even produce JavaScript. We haven’t played with the system enough to say how successful it is, but you can try it in your browser if you want some first-hand experience.

Continue reading “Should You Build For Windows, Mac, IOS, Android, Or Linux? Yes!”

Tiny Raspberry Pi Mac Nails The Apple Aesthetic

We know that some in the audience will take issue with calling a Raspberry Pi in a 3D-printed case the “World’s Smallest iMac”, but you’ve got to admit, [Michael Pick] has certainly done a good job recreating the sleek look of the real hardware. While there might not be any Cupertino wizardry under all that PLA, it does have a properly themed user interface and the general aversion to external ports and wires that you’d expect to see on an Apple desktop machine.

The clean lines of this build are made possible in large part by the LCD itself. Designed specifically for the Raspberry Pi, it offers mounting stand-offs on the rear, integrated speakers, a dedicated 5 V power connection, and a FFC in place of the traditional HDMI cable. All that allows the Pi to sit neatly on the back of the panel without the normal assortment of awkward cables and adapters going in every direction. Even if you’re not in the market for a miniature Macintosh, you may want to keep this display in mind for your future Pi hacking needs.

Well, that’s one way to do it.

Despite this clean installation, the diminutive Raspberry Pi was still a bit too thick to fit inside the 3D-printed shell [Michael] designed. So he slimmed it down in a somewhat unconventional, but admittedly expedient, way. With a rotary tool and a steady hand, he simply cut the double stacked USB ports in half. With no need for Ethernet in this build, he bisected the RJ-45 connector as well. We expect some groans in the comments about this one, but it’s hard to argue that this isn’t a hack in both the literal and figurative sense.

We really appreciate the small details on this build, from the relocated USB connectors to the vent holes that double as access to the LCDs controls. [Michael] went all out, even going so far as to print a little insert for the iconic Macintosh logo on the front of the machine. Though given the impressive work he put into his miniature “gaming PC” a couple months back, it should come as no surprise; clearly this is a man who takes his tiny computers very seriously.

Continue reading “Tiny Raspberry Pi Mac Nails The Apple Aesthetic”

Pi Saves Vintage Mac Case From A Watery Grave

Like many before it, this Mac 512K case was originally slated to get turned into a kitschy desktop aquarium. But its owner never found the time to take on the project, and instead gave it to [Tony Landi]. Luckily, he decided to forgo the fish and instead outfit the case with a new LCD display and Raspberry Pi to emulate Mac OS 7.5.

Mounting the LCD and associated electronics.

In the video after the break, [Tony] walks viewers through the process of mounting the new components into the nearly 30+ year old enclosure. Things are naturally made a lot easier by the fact that the modern electronics take up a small fraction of the Mac’s internal volume. Essentially the only things inside the case are the 10 inch 4:3 LCD panel, the Raspberry Pi, and a small adapter that turns the Mac’s pre-ADB keyboard into standard USB HID.

[Tony] had to design a 3D printed adapter to mount the modern LCD panel to the Mac’s frame, and while he was at it, he also came up with printable dummy parts to fill in the various openings on the case that are no longer necessary. The mock power switch on the back and the static brightness adjustment knob up front are nice touches, and the STLs for those parts will certainly be helpful for others working on similar Mac conversions.

With the hardware out of the way, [Tony] switches gears and explains how he got the emulated Mac OS environment up and running on the Raspberry Pi. Again, even if you don’t exactly follow his lead on this project, his thorough walk-through on the subject is worth a watch for anyone who wants to mess around with Apple software from this era.

Continue reading “Pi Saves Vintage Mac Case From A Watery Grave”