7 Sep 2025
Nick Andrew contacted me with some Python-based utilities for manipulating CMD files. You can find them here:
https://github.com/nickandrew/nick-src-trs80/blob/main/bin/cmdfile.py
https://github.com/nickandrew/nick-src-trs80/blob/main/bin/hex2cmd.py
Nick mentions this in his interview on my Stray Pointers podcast. The link below has a few source URL’s for the Podcast on a few platforms:
https://straypointers.com/e/s3e09.htm
10 Jun 2023
I had originally published this text on Sunday, November 8, 2009. It’s seen a couple of revisions. There’s some C code in this post, but the main point of the post is to provide a way to dump TRS-80 binary CMD files.
In 2009, I was tinkering with the Windows multimedia subsystem and I wrote a short program to play MP3 audio files from the command-line ( cmdmp3.exe ). I created a second program that was a GUI application ( cmdmp3win.exe ) for those who didn’t want the console window to show. Althought it’s technically a GUI application, no visible user interface is present unless an error occurs.
I have released a new version of the sources and executable programs tonight ( 26 Jan 2024 ).
My First Mac In July of 2012, I bought my first Macbook. It was a low-end model with the minimum RAM configuration and a 13-inch screen. I had come up through the ranks of 8-bit computing and I’d had a dalliance with the 16/32-bit Commodore Amiga, but I had spent most of my time with Intel-based PC’s running Microsoft operating systems. I wanted to try a few new things including writing an iOS app, at the time.
Originally published on: Wed, 07 Apr 2010 00:15:01 +0000
In my early days of computing, I used to read a lot of tech magazines. I had been reading about this “Operating System” called CP/M: Control Program for Microprocessors. The computers I had owned to date really didn’t have true operating systems, so I had a very vague idea of the significance of an OS.
I did understand that different kinds of computers seemed to be capable of running CP/M.
I used to sell a command-line email utility that I had written for 32-bit implementations of Microsoft Windows. The utility was named MailSend ( not to be confused with the three or four other command-line mailers which share the name. ) The domain name that I used to host MailSend and other utilities, mailsend-online.com has come up for renewal. After 23 or so years of having that domain, I think it’s time to retire it.
Originally published on: Fri, 7 Oct 2011.
The Y2K panic was not the first time I had encountered a date-oriented software bug. Years before Y2K problems were even a worry, I ran into a situation where an MS-DOS program written in C began to run amok on October 10th.
There had been no new releases of this particular program in months. It had behaved normally running continuously on an unattended PC in a computer room.
I saw a re-mention of a 2019 blog post tonight called I come here not to bury Delphi, but to praise it and the counterpart commentary at HackerNews/YCombinator …
I thought that I’d reminisce a bit about my experience with Pascal and Delphi.
Padawan Pascal Like many of my generation, I started out coding in 8-bit BASIC dialects and later began to code in assembly language. What I often did when writing assembly was picture the program in BASIC.
I believe that I first encountered details of the Perl programming language in the pages of The C Users Journal. I suspect that it was Sydney Weinstein’s article “A Perl of Great Price” in the April 1990 issue of The CUJ. At the time, I was developing software professionally using C almost exclusively. Perl’s use of various sigils and symbols were offputting for me. I didn’t give the language too much thought after that.
Setup I recently needed to draw a UML sequence diagram. That’s usually something I’d do in Microsoft’s Visio ™. I was aware of text-to-chart utilities such as Medusa so I assumed that similar tools would be available for generating sequence diagrams. A quick search of the web yielded an open source tool called PlantUML. PlantUML is a set of tools for converting text scripts to various kinds of UML diagrams. To use the bare-bones setup for PlantUML, you’ll need a Java Virtual Machine (JVM).
The original version of this post was published on March 16, 2014.
Back in the day, I used to write machine-language subroutines for the Commodore 64 that I would then call from a main program written in BASIC. I found it easier to use BASIC as the higher-order controller over a set of ML functions that usually did things for which CBM BASIC 2.0 was not well-suited.
In one case, I wrote an Xmodem file-transfer protocol handler.