A wunderBAR story

In fact, the broken bar barely even exists anymore. In the days of DOS, the character used for the pipe symbol (on the DOS command line) or for logical OR (in C/C++, for example) used ASCII code 7Ch (124 decimal), which was rendered as a broken vertical bar by the fonts used at least by the IBM MDA, CGA, EGA, and VGA cards. But nowadays that is no longer the case. The same ASCII codepoint is rendered as a solid vertical bar in Windows 10 or Linux, and also shown as a solid vertical bar on contemporary keyboards. What happened?

Who doesn’t love some great character and ASCII archeology?

Microsoft just laid off one of its responsible AI teams

Microsoft laid off its entire ethics and society team within the artificial intelligence organization as part of recent layoffs that affected 10,000 employees across the company, Platformer has learned. 

The move leaves Microsoft without a dedicated team to ensure its AI principles are closely tied to product design at a time when the company is leading the charge to make AI tools available to the mainstream, current and former employees said.

Oh so that’s totally not worrying at all or anything.

OpenAI announces GPT-4

We’ve created GPT-4, the latest milestone in OpenAI’s effort in scaling up deep learning. GPT-4 is a large multimodal model (accepting image and text inputs, emitting text outputs) that, while less capable than humans in many real-world scenarios, exhibits human-level performance on various professional and academic benchmarks. For example, it passes a simulated bar exam with a score around the top 10% of test takers; in contrast, GPT-3.5’s score was around the bottom 10%. We’ve spent 6 months iteratively aligning GPT-4 using lessons from our adversarial testing program as well as ChatGPT, resulting in our best-ever results (though far from perfect) on factuality, steerability, and refusing to go outside of guardrails.

“Artificial intelligence” companies are iterating quickly now. I’m definitely looking forward to the new memes based on GPT-4.

Docker is deleting open source organisations – what you need to know

Coming up with a title that explains the full story here was difficult, so I’m going to try to explain quickly.

Yesterday, Docker sent an email to all Docker Hub users explaining that anyone who has created an “organisation” will have their account deleted including all images, if they do not upgrade to a paid team plan. The email contained a link to a tersely written PDF (since, silently edited) which was missing many important details which caused significant anxiety and additional work for open source maintainers.

What a shitshow. We really have to start worrying about the future of Github, too, since I find it highly unlikely Microsoft isn’t planning similar moves in the future. If you’re hosting code at Github, I’d suggest looking at alternatives sooner rather than later, so you don’t end up like the people affected by something like this.

Apple, Foxconn convince Indian state to loosen labor laws

Apple and its manufacturing partner Foxconn were among the companies behind a landmark liberalization of labor laws in the Indian state of Karnataka last month, according to three people familiar with the matter.

Their successful lobbying for new legislation means two-shift production can take place in India, akin to the two companies’ practices in China, their primary manufacturing base. The law gives the southern state one of the most flexible working regimes in India as the country aims to become an alternative manufacturing base to China.

We do the right thing, even when it’s not easy.”

Customizing the startup chime on a 1999 G3 iMac

If you’ve been reading my blog for a while, you might remember back in 2012 when I changed the startup sound on my Power Mac G3 (Blue and White). That was a fun introduction to the Forth programming language. I had to reverse-engineer just enough of Apple’s firmware update script to understand what was going on.

Recently, Aidan Halpin, a reader of this site, asked me if I could do the same kind of startup sound customization on his iMac. This particular iMac is officially known as the “iMac (Slot Loading)” and has a model identifier of PowerMac2,1. As you can guess from the name, it has a slot-loading CD-ROM drive unlike the original iMac that had a laptop-style tray-loading drive. By the way, Aidan’s iMac is special because it has a PowerPC G4 processor soldered onto the logic board instead of the original G3.

He sent me Apple’s last firmware update for this model: iMac Firmware Update 4.1.9. I went to work looking at the update contents to see if I could figure out how to modify the chime the same way I did with my Power Mac G3. I thought it would be fun to take everyone along for a ride and show exactly what was involved in changing the sound. And of course, this post wouldn’t be complete without also sharing the code for the utility I created to inject the new chime into the firmware update file.

This is an insane amount of work for something that doesn’t really matter in the end. I love it.

Qualcomm wants to replace eSIMs with iSIMs, has the first certified SoC

Here’s an interesting bit of news out of Mobile World Congress: Qualcomm says the Snapdragon 8 Gen 2 has been certified as the “world’s first commercially deployable iSIM (Integrated SIM)”. What the heck is an iSIM? Didn’t we just go through a SIM card transition with eSIM? We did, but iSIM is better than eSIM. We’ll explain, but the short answer is that iSIM is the next step in the continual march to reduce the size of SIM cards.


eSIMs are still a chip taking up space on your motherboard, and that’s not ideal if you want to squeeze every square millimeter of space out of a phone. The next shrinking step is iSIM—an Integrated Subscriber Identity Module. Rather than a chip on the motherboard, iSIMs are integrated directly onto the SoC. SoC (system on a chip) integration is the technology that makes smartphones possible. Instead of a thousand little chips for things like the CPU, GPU, RAM, modem, and a bunch of other things, everything gets packed into one single do-everything piece of silicon. Individual chips require more space and power thanks to having to make motherboard traces to connect everything and having to deal with chip packages.

I’m still using an old-fashioned traditional SIM card, and while I’m sure going with eSIM and now iSIM is great from a simplification and power usage point of view, I feel like they’re both also about taking control away from the user and shifting it towards the carrier. It was a long fight to get rid of locked phones (mostly), but with eSIM/iSIM it seems locking devices down in more fine-grained ways only becomes easier.

I might be overreacting, but little red flags go up when I read about eSIM and now iSIM.

Update 2 of AmigaOS 3.2 released

Hyperion Entertainment has released another update for AmigaOS 3.2 for classic Amigas, coming with a number of improvements and bug fixes. I’m not entirely sure what to make of all this, though, since the drama around the ownership of the Amiga operating system, the trademarks, and more, as well as continuous accusations of Hyperion not paying any of its developers, have reached a fever pitch, as documented in this elaborate piece. As much as I would want to dive into all this and properly vet every single source in that article, for the sake of my sanity, I am just not going to.

The soap opera around the Amiga has been going on for so long, and has jumped the shark so many times, I just don’t know where to start. I’ll leave you all with the detailed piece and its sources, and let you decide for yourself what to make of it all.

I ain’t got the patience for this.

Refurbishing a Cobalt RaQ 2

Cobalt Networks were one of the early pioneers in network appliance hardware and produced some of the first turn-key webserver boxes you could buy, founded in 1996 as Cobalt Microserver. Cobalt boxes are immediately identifiable from their distinctive deep blue plastic bezels starting with the 1998 Cobalt Qube 2700. The Qube used a 150MHz QED RM5230; these CPUs are part of QED’s R5000 family and we’ll talk about their architecture a bit later. They came with 2.1GB hard disks with later larger options, 10Mbit Ethernet, 16MB of RAM standard with up to 256MB supported, and a “console” consisting of a backlit rear-mounted 2-line LCD and control buttons (on later machines, but not the original 2700, a serial port provided an actual console if you held down a button during startup). A fair number of typical configuration tasks such as setting its IP address could be done directly from the panel and the rest were intended to be done through its Perl-based web console. They were designed to run Linux from the ground up and shipped with Red Hat using a 2.0.x kernel.

Cobalt’s network appliances were so exotic back in the day, and once they started hitting the used market, I almost pulled the trigger quite a few times. These days, they’re harder to come by, and their use is, of course, inherently limited now, but that doesn’t make them any less eye-catching.

Hacking the Nintendo DSi browser

The DSi browser uses Opera 9.50. There are no security mitigations whatsoever. Jumping to shellcode is back on the menu! Stack buffer overflows are viable. Exploiting use-after-frees, which are often common in browsers, is easier than ever. In fact, the DSi doesn’t even have an operating system, so there’s no kernel to exploit. Various system privileges are handled by the SCFG register. The browser has enough privileges to run most homebrew, but not enough to gain persistence across boots without another exploit.

Browsing on the DS was a nightmare – and Nintendo charged for it. Crazy how times have changed.

ChatGPT is nothing like a human

Tech-makers assuming their reality accurately represents the world create many different kinds of problems. The training data for ChatGPT is believed to include most or all of Wikipedia, pages linked from Reddit, a billion words grabbed off the internet. (It can’t include, say, e-book copies of everything in the Stanford library, as books are protected by copyright law.) The humans who wrote all those words online overrepresent white people. They overrepresent men. They overrepresent wealth. What’s more, we all know what’s out there on the internet: vast swamps of racism, sexism, homophobia, Islamophobia, neo-Nazism.

Tech companies do put some effort into cleaning up their models, often by filtering out chunks of speech that include any of the 400 or so words on “Our List of Dirty, Naughty, Obscene, and Otherwise Bad Words,” a list that was originally compiled by Shutterstock developers and uploaded to GitHub to automate the concern, “What wouldn’t we want to suggest that people look at?” OpenAI also contracted out what’s known as ghost labor: gig workers, including some in Kenya (a former British Empire state, where people speak Empire English) who make $2 an hour to read and tag the worst stuff imaginable — pedophilia, bestiality, you name it — so it can be weeded out. The filtering leads to its own issues. If you remove content with words about sex, you lose content of in-groups talking with one another about those things.

These things are not AI. Repeat after me: these things are not AI. All they do is statistically predict the best next sequence of words based on a corpus of texts. That’s it. I’m not worried about these things leading to SkyNet – I’m much more worried about smart people falling for the hype.

RISC-V Business: testing StarFive’s VisionFive 2 SBC

The JH7110 isn’t amazing. But it’s not bad, either.

I still wouldn’t recommend most people buy this board, unless you already know a lot about Linux and SBCs in general. That may change a year from now, but right now, this board isn’t targeted at the same market as a Raspberry Pi.

At around $100, and not being quite production-ready, I’m only recommending this board to people interested in exploring RISC-V for now.

This seems like an expected experience for a relatively new architecture that still has rather limited hardware and software support. When the first Raspberry Pi came out, the situation wasn’t much better either, so give it a few years and RISC-V will be in a better place in the market for sub-€100 single-board computers.

COBOL: You’re thinking about it wrong

And while headlines might indicate the language had fallen into disfavor, the amount of COBOL in use continues to grow, with 800 billion lines running in production systems daily, according to a global survey conducted last year by enterprise software firm Micro Focus. COBOL is considered strategic by 92% of survey respondents, and over half said they expect their organizations to keep running their COBOL applications for at least another 10 years. 

I feel like COBOL is one of those things that can guarantee you a career. If you know COBOL, you will most likely find a job and have a good career future, but it’s probably not going to be anything sexy or anything that has the (albeit tiny) opportunity of making you filthy rich – but you won’t ever be without a job for long either.

Cubic lets you easily create customised Ubuntu and Debian ISOs

Cubic (Custom Ubuntu ISO Creator) is a GUI wizard to create a customized Live ISO image for Ubuntu and Debian-based distributions.

Cubic permits effortless navigation through the ISO customization steps and features an integrated virtual command line environment to customize the Linux file system. You can create new customization projects or modify existing projects. Important parameters are dynamically populated with intelligent defaults to simplify the customization process.

This is an incredibly neat tool, and it’s given me the urge to see if I can create my own custom ISO with my personal defaults all set out of the box.

iPhone 15 USB-C cables without MFi badge may have data transfer and charging speed limits

Apple’s iPhone 15 series will officially only support USB-C accessories that have been certified by Apple’s own Made for iPhone (MFi) program, potentially limiting the functionality of accessories not approved by Apple, an established leaker has now claimed.

So you’re getting USB-C, but not really. Leave it to Apple to milk even something as mundane as this.

Microsoft adds “AI” to taskbar search field

In the last three weeks, we also launched the new AI-powered Bing into preview for more than 1 million people in 169 countries, and expanded the new Bing to the Bing and Edge mobile apps as well as introduced it into Skype. It is a new era in Search, Chat and Creation and with the new Bing and Edge you now have your own copilot for the web.

Today, we take the next major step forward adding to the incredible breadth and ease of use of the Windows PC by implementing a typable Windows search box and the amazing capability of the new AI-powered Bing directly into the taskbar. Putting all your search needs for Windows in one easy to find location.

I feel like adding a glorified autocomplete that tricks people into thinking it’s a real artificial intelligence to the Windows taskbar is not exactly what Windows users are looking for, but I guess that services revenue cash register has to keep dinging. I’m getting major cryptocurrency, NFT, and web3 vibes from all this, and I can’t wait for the whole thing to come crashing down once again.

Reverse-engineering the ModR/M addressing microcode in the Intel 8086 processor

One interesting aspect of a computer’s instruction set is its addressing modes, how the computer determines the address for a memory access. The Intel 8086 (1978) used the ModR/M byte, a special byte following the opcode, to select the addressing mode. The ModR/M byte has persisted into the modern x86 architecture, so it’s interesting to look at its roots and original implementation.

In this post, I look at the hardware and microcode in the 8086 that implements ModR/M and how the 8086 designers fit multiple addressing modes into the 8086’s limited microcode ROM. One technique was a hybrid approach that combined generic microcode with hardware logic that filled in the details for a particular instruction. A second technique was modular microcode, with subroutines for various parts of the task.

This is way above my pay grade, but I know quite a few of you love this kind of writing. Very in-depth.

MINIX from scratch

I believe that learning MINIX is probably the best way to learn about operating systems. Until now, I have not been able to find a MINIX 3 project that allows you to compile the code that is referenced in the book Operating Systems: Design and Implementation (3e) (v3.1.0). It was tricky to get a reasonable development setup to make it possible for newbies like myself to learn from the book. This is an attempt to fix that and make it easy to browse, edit, recompile, and execute the code.

An easy way to get started with MINIX, the famous microkernel teaching operating system from the university I got my two degrees at – although I’m not entirely sure if that’s a ringing endorsement.