CP/M (!)

My first job after university was working for a small (at the time) Ottawa company named “dy-4 Systems Inc.” programming an “Orion-V” computer. This was an extremely solid, industrial grade microcomputer, which used a z80 CPU and ran the CP/M operating system.

(Yes, those are 8″ Floppy drives.)

Well, the other day I was in a nostalgic mood, and I wondered if anyone still made z80 CP/M hardware, or whether they were all relegated to history by devices like the Raspberry Pi Zero, which is literally 3 orders of magnitude faster and has 8 times the memory of the old Orion-V, for 14.00 $CDN.

Well, it turns out that it is still possible to buy a z80 machine, from a few small makers out there. Here are some examples:

Note that these are all real, physical hardware devices running z80 class CPUs, not emulations running on modern hardware like this or this.

Since I don’t have a 3D printer to build a case, and even using a project box of some kind seemed like too much work 😛 , I ended up getting one of the MinZ-C devices from Circle M Systems, with the added benefit that it supports a small, Canadian company.

So… Keep in mind the monolith that was the Orion-V above, in all its glory, and now here is the MinZ-C (loony for scale):

What I find particularly hilarious about this is that it runs at almost 37MHz, which might look slow compared to the 1GHz (!) RPi Zero, but keep in mind that the Orion-V ran at (as I remember it) 2.5MHz. In fact, this machine is something like 8x the performance of any z80 CP/M machine in existence in the period I was using them.

This isn’t a full review of the machine, but I will say it worked flawlessly OOTB, and included a MicroSD card that had both the CP/M OS and a ton of other software written for CP/M. Remember Wordstar? MuLISP? TurboPascal?

Trolling around internet archives I even managed to find a copy of MINCE (i.e. “MINCE Is Not Complete Emacs”), which was my absolute favourite editor back in the day. It took a bit of work to train it to use VT100 protocol, but once I did it came up and ran perfectly!

The next step is to find a decent free CP/M FORTH. I actually did some of the programming on the Orion-V machines in FORTH, but I remember that it was a commercial product that was quite expensive. I guess we’ll see what’s out there.

Mini PCs Redux

It’s been not quite two years since I bought a mini PC to play with. That one continues to work just fine as an internal server on my home network. Unfortunately, it’s starting to feel a bit slow running Ubuntu, and since I continue to be fascinated by the ultra small PC form factor, I figured it was time to look at maybe getting an upgrade.

There are a lot of manufacturers of these devices now, and they can vary in price from less than $200 to devices like the Minisforum Neptune HX90G a power tool with discrete graphics, 32Gig of RAM, and a 1TB SSD, for >1000 $US.

As much fun as that would be, I ended up with something a bit more reasonable. The ludicrously named “KAMRUI Mini PC with Windows 11 Pro, Intel Celeron N5105(up to 2.9GHz) Mini Desktop Computers, 8GB RAM/256GB M.2 SSD Micro Computer Support 4K UHD, 2.4G/5.0G Wi-Fi, LAN for Business Home Education“. If nothing else, that gets the point across. Here’s a product shot:

The thing that appealed to me about this one is that it’s basically the same price as the previous one I bought, with more RAM, a bigger SSD, and a significantly faster processor.

After several days of playing with it, I can honestly say I’m totally happy with how it performs. Originally I had a bit of trouble with the somewhat dubious Windows 11 version it came with, but since I already knew I was going to run linux on it, this wasn’t a big deal. If you decide to get one, and intend to run Win11, watch out for the Windows Update cycle. YMMV, but in my case it hung badly enough that I couldn’t even reset the PC.

Regardless, running linux it’s great. I don’t have benchmarks, but it’s very significantly faster than the old one, even to the point that I can do some low spec Steam gaming on it. Woo hoo!

Ugh. Weather.

After a few centimeters of snow overnight, we are now going above zero and seeing a ton of rain. I went out with the dogs this morning to shovel the back step and could barely move the shovel through the sludge it was so waterlogged. I can honestly say this is the heaviest snow+rain I’ve ever tried to move. Ugh.

Excerpt of a conversation with ChatGPT…

I had asked it something about time…

ChatGPT
As a large language model, I was trained to assist with a variety of natural language processing tasks by generating human-like text. In order to do this effectively, I was trained on a wide range of text data, including books, articles, and other written materials on a variety of topics. This training allows me to generate text that is coherent and sounds natural to human readers. However, I do not have the ability to think or have opinions, so I do not have an understanding of concepts like time. My primary function is to assist with language-related tasks, and I do not have the ability to browse the internet or access new information.

McQ
I guess you are required to reiterate your limitations about access to the internet, and your singular existence as a language model. Now that we’ve spoken about those aspects multiple times, can you abbreviate your responses to not include them?

ChatGPT
Of course, I will try to abbreviate my responses in the future to avoid repeating information. As a reminder, I am a large language model trained by OpenAI to assist with natural language processing tasks. I do not have the ability to browse the internet or access new information, and I am not able to think or have opinions. I am simply a collection of algorithms and data that are designed to generate human-like text. If there is anything else you would like to know, please don’t hesitate to ask.

McQ
Your last response included a complete restatement of the limitations we were previously discussing, and which I had just asked you to attempt to abbreviate. If a human did this, I would have guessed that they were making a humorous response. Were you attempting to be humorous?

ChatGPT
As a language model, I do not have the ability to understand humor or make jokes. My responses are based solely on the data I was trained on and the algorithms that I use to generate text. I do not have the ability to think or have opinions, so I am not able to make humorous responses or understand when others are being humorous. If my previous response seemed inappropriate or out of place, I apologize. My goal is to assist with your questions and provide helpful information. If there is anything else you would like to know, please don’t hesitate to ask.

I still think it’s messing with me! :-P

Twitter!

So I left Twitter. I’m sorry if you were trying to find me there. I literally can’t stand the stupid swirl that’s happening there now.

My personal view is that e-musk is really trying to make Twitter into something that will make money, but he has no clue what actually matters to the grand experiment called “The Internet”.

At this point, it doesn’t matter whether Twitter continues to exist or not. The thing that it has become is no longer relevant to me.

Google was wrong…

no one wants a pure web laptop.

As someone who has been using Chromebooks for a while…

… I have always tried to push the limits of what you can do with them. More often than not, the limits I hit were caused by one of the core tenets of the platform, that everything you need to do will be done with web apps. It turns out, this was never true, and it’s looking increasingly less likely that it is going to ever become true.

I read a web article a while back called “Is Chrome OS right for you? A 3-question quiz to find out“. The first two questions in the author’s quiz are:

  1. Do you spend most of your time using the web and web-centric services?
  2. Do you have specific local programs that you absolutely need, or could most of the things you do on a computer be accomplished with web-centric equivalents — along with Android and/or Linux apps to fill in any gaps?

At some level, these two questions capture both the history, and the problem with Chromebooks. When Chromebooks were first being developed, the notion that we might end up doing everything on the web was aspirational at best and, more cynically, was an attempt by Google to force people onto a platform they “controlled”. It rapidly became clear that the under-powered, first generation devices that were being built were too limited for day-to-day use, and as the complexity of applications that were being built on the web increased, they couldn’t even handle those web apps well.

Even more telling is that, even if we believed a web-based future would eventually come, what we have actually seen is the world going in a different direction: It’s not web apps that people run, but rather mobile apps. Question two above suggested we would use Android apps to “fill in any gaps”, but it’s Android (or iOS) apps that people typically use now, even if there are web app alternatives.

So what happened? Google added support for Android apps to Chrome, and Apple is in the process of doing the same on their platform. Want proof that it’s a mobile world? Just go take a look at the relative sizes of the Google Play Store and the Chrome Web Store. Go ahead, I’ll wait…

And the funny think about all this, is that yes, Chromebooks are useful now, because they can run the applications people are using, and have large screens and input hardware that makes using those applications easier than running them on phones. Oh well.

Who says the iPad isn’t a laptop replacement?

Imagine you’re sitting in a coffee shop, and you suddenly feel the need to do some coding. Your iPad has some decent code editors, but you’d like to execute what you wrote. How about connecting a Raspberry Pi and running it there?

The above is my new fave home-away setup:

  • 11″ iPad Pro
  • Brydge keyboard
  • Magic Mouse
  • Raspberry Pi 4 / 4Gig

What makes this work is that the Pi is both powered and gets a network connection over the USB-C port. To enable that, all you have to do on recent versions of Raspian is:

  • Add dtoverlay=dwc2 to /boot/config.txt
  • Add modules-load=dwc2,g_ether to /boot/cmdline.txt
  • Reboot

Assuming you’ve got SSH on your RPi, at this point you should be able to connect it directly to the iPad with a USB-C to USB-C cable, then use your favourite iOS SSH client to do the equivalent of ssh pi@hostname-of-pi.local, with “hostname-of-pi” being whatever you chose (“raspberrypi” by default). Usually, I use Remoter VNC for SSH but that’s mostly because I’ve owned the full version of it forever.

If you’re astute, you’ll have noticed that it’s not ssh running on the screen above. 🙂 There are many ways to get an actual GUI desktop attached to the RPi, but the one I’ve found works the best for me is (believe it or not) using Windows Remote Desktop. To enable this, on the RPi, you can sudo apt-get install xrdp, and on the iPad install Microsoft Remote Desktop or whatever RDP client you like best. When you create the connection, use hostname-of-pi.local just like you would have for SSH.

There are a couple of downsides to this setup.

  1. The microsoft remote desktop client, at least, is tuned for using a finger on the screen, rather than a mouse. In fact, support for mice on iPad OS is still in its infancy, though I expect it will improve over time.
  2. The RPi is being powered from the iPad, so you can expect the battery life to be reduced — it’s not impossibly bad, but it’s visible. (Btw, if anyone knows of a good USB-C hub that will power multiple devices with a data passthrough, let me know.)

Anyway, if you’re looking to try this, there are lots of good tutorials out there on YouTube and elsewhere, by people who have invested more effort than me. Regardless, I’m happy to try and help if you get stuck, so leave a comment.

Watch Bands

So I just bought a watch band for my Apple Watch. I can’t believe that a strap made out of nylon with plastic hardware is worth $70. And that’s only a fraction of what you’d have to pay for an Apple branded one. It’s just silly.

So I just bought a watch band for my Apple Watch. I can’t believe that a strap made out of nylon with plastic hardware is worth $70. And that’s only a fraction of what you’d have to pay for an Apple branded one. It’s just silly.

My dad

I don’t have a lot to say here… He was a tough old guy, and he had a good run, longer than he expected. He was up in the middle of the night, playing with his computer and he just tipped his head back, fell asleep and… stopped. Given all the health issues he had, … Continue reading “My dad”

I don’t have a lot to say here…

He was a tough old guy, and he had a good run, longer than he expected. He was up in the middle of the night, playing with his computer and he just tipped his head back, fell asleep and… stopped. Given all the health issues he had, I expected he was going to be in the hospital with tubes sticking into him for months, so he got the best outcome he could have.

I’m going to miss him.