Reid's For Fun


My personal blog for what interests this computer guy. Web development, LEGO ray tracing, ZX81 retro computing, writing and photography.

Creating Charts on Your ZX81 Couldn’t Be More Simple

Charts, ZX81 Screenshot of iPhone Data by Steven Reid, 2020

As usual, I procrastinated a bit in finishing my ZX81 program for November. Between holidays, work, and NaNoWriMo, I didn’t get around to it until this last weekend. I decided to try something a little different for this month’s program. The program itself, Charts, is a simple line graph plotter—spelling and bugs galore. As interesting as that program is, the real story is how I entered it.

A different workflow, sort of.

Coming out of my failure last month, I decided to shortcut the whole ordeal this month. After digging through my programs, I decided on a program with limited graphics. This was on purpose. I wanted a program I could type quickly into a text editor. Well, in this case a text box in JSZeddy. This time, I skipped the whole entering the program in a ZX81 emulator and, well, entered it into an editor.

The advantage was I could type the program using real and responsive keyboard. The ZX81 was never a typing powerhouse, lacking horsepower and that whole slow mode. But my Mac, even 7 years old, is great for that. The hardest part, of all things, was entering in some the few graphic characters that were in the listing. Funny enough, I had to go search for the character set. Sadly, I don’t have the hex codes memorized.

Funny enough, it worked very well. In no time, I had a program that ran. I did some quick testing and a few tweaks. But otherwise, it was the same as my listing. I panicked for a bit when I noticed the hex wasn’t filled out. Running the autosave fixed that issue. Once I had the hex code, I did what I did last time! I copied it into a file, ran my hex2bin.pl program and voilà!

Charts, ZX81 Starting Screenshot by Steven Reid, 2020Charts, ZX81 Starting Screenshot by Steven Reid, 2020

Making pictures.

As much as I want not to, I still had to run EightyOne. To my tastes, the screenshots from it look better than my other options. Unfortunately, my VirtualBox stopped working. Ugh. Apparently my upgrade to Big Sur required some new extensions. After updating to the latest version of VirtualBox, and crashing a few times, I figured out what I missed. I approved the extensions and rebooted. With Windows working, I could get back to work.

First, I ran Charts a few more times. Mostly this was so I could enter in data for the print out. For my example, I used some iPhones sales data I found online. Entering data in Charts is a bit of a pain The verbiage I used doesn’t match what I use today. Using say X or Y axis would have made more sense.

Charts, ZX81 Screenshot of iPhone Data by Steven Reid, 2020Charts, ZX81 Screenshot of iPhone Data by Steven Reid, 2020

The other program I had was that Charts doesn’t normalize the data. The first time I entered in the data, I got an out of bounds error. The PLOT I used was off the screen. I ran the program again, this time dividing by ten to keep the data on the screen. Although that worked, it would be an easy change in the program.

The display is also a bit of a pain. I only print four characters of the entry. Also, that entry is right against the left axis title. Although the effect is cool, printing the text horizontal, it really needed to be spaced out. To compensate, I added a space, which further reduced what would display. Given he size constraint, I used the last two digits of the year, creating a nice display.

Which brings me the unit’s title. It is printed at the bottom of the screen instead of closer to the data. Again, not sure why I didn’t adjust this based on location. Granted, I was a teenager and had little knowledge of data visualization and presentation. But still? I mean, it looks weird. But, hey, it was on a computer. Everything was cool to me back then.

I should note that there is a bug in the code. The projections code doesn’t seem to work. To be honest, I didn’t perform extensive testing. It could be that I did something wrong, but the display didn’t match the data I entered. Moving on to other things, like writing this article, I decided to leave the debugging for another day.

Finishing things up.

After grabbing a few screenshots, it was time to finish up a few things. First, I saved the program as a TZX file, which some other emulators used. I converted the screenshots into PNG files. After minifying them, I then uploaded them into my site. I create a little description file and then archived everything. The P and ZIP files then get uploaded, I update the database, and a ZX81 program from 30 years ago is now on my website.

I’ve already talked about Charts, so let me share a bit about how I write my articles. Funny enough, it isn’t as straightforward as you might believe. My first step was is to write the article. I use Scrivener as my editor, which is a great writing tool. I organize all my articles and can snapshot the different versions I write.

Once done, I typically load it into Hemingway Editor. I find it does a great job of telling me how hackneyed my writing is and correcting it. I tend to use a lot of passive tense and adverbs. Something Hemeingway tells me not to do. With that done, I dump the text into my website and add in the metadata, images, and other things needed. Yet, I’m not quite done.

The last step, or in this case the first one, is to write the title. A long time ago, I ran across an article about how to write better headlines. This led me to CoSchedule's Headline Analyzer. I find it useful for improving from the generic headlines I used to write to something interesting. They aren’t perfect, and don’t always score well, but they are better. Afterwards, I capitalize them correctly using an online tool. You can search to find a couple of good ones. I tend to bounce between them.

With that done, I publish my article. It seems like a lot, but it actually isn’t any different from the normal process most editors go through. From draft to final, these are the tools I use to get there. You could use others, there are plenty. This is what I do and I find it works well. That said, I’m always looking for new ways to do things. My workflow is never complete.

Until next tomorrow, enjoy this month’s ZX81 program.


Entering a Program Shouldn't Be This Frustrating

Star Probe Redo, ZX81 Screenshot by Steven Reid, 2020

Back in July, I made a mistake and entered in Star Probe again. I had forgotten that Iíd already shared it. But, unlike my first attempt, I had taken a different approach which made it a much different game. Jumping ahead, I decided to finish what I started. Here is Star Probe Redo, an updated version as Octoberís program.


Here Is a Silly Test Program for the ZX81

Test, ZX81 Screenshot by Steven Reid, 2020

September proved to be a rather busy month, at work and home. It isnít unusual for me, and I usually find time to throw a render or program together. As this month closed, I found myself in need of a program to share and not a lot of time. While cleaning up a few things on my laptop, I found this little test program I wrote last month that fit the need.


Here Is My Crazy Idea to Make a ZX81 Game with a Printer

Printer Car, circa 1983, ZX81 Screenshot by Steven Reid

Back in the day I learned to program on school PDP-11 with a 6 teletypes and a CRT attached. I was still in computer club at the time, thinking the 8" floppies were pretty cool. To my despair, the poor thing died that Summer and, when I took my programming class, it was on an Atari 800. But the programs I wrote the previous year stuck with me. Printer Car harkens back to those days.


Now Is a Good Time to Build My Mini ZX81

Mini ZX81 by Steven Reid, on Flickr

A retro blast from the past! The four chip Sinclair ZX81 was the first computer I owned and I thought it would be fun to build a LEGO version of it. The 2K of memory (in my US version) was pretty limited. An essential accessory was the 16K RAM which allowed you to fully use the screen and enjoy some fun, if blocky, games.


Adding a New Topic Category: LEGO Building

LEGO Building

I haven’t added a new topic in awhile, but I ran into a bit of a problem lately. As an AFOL (Adult Fan of LEGO), I recently got back into building with real LEGO bricks. In doing so, I decided to start taking pictures of some of the sets of been building. Not content with building official sets, I started to build MOCs (My Own Creations) from both myself and others. I needed a place to share.