A Whole New Different

Commodore 128 Assembly #33: My Programming Environment

A couple people have asked me what tools I use during these programming videos, so I thought I’d go through the list. The list is below the video here too. FreeBSD i3 (x11-wm/i3 x11/i3status) Emacs (editors/emacs) org-mode for planning (.org) asm-mode for assembly files (.a) magit git (devel/git) tmux (sysutils/tmux) ACME cross assembler rlwrap (devel/rlwrap) Vice (emulators/vice) OBS (multimedia/obs-studio) DroidCam (Google Play on phone) ffmpeg (multimedia/ffmpeg)

Commodore 128 Assembly #32: SHA-256 Part 4

Didn’t get a lot of code written in this one. I got started on the trickiest part of the algorithm, where we need to process a sliding window of pointers through a block of data, and spent a lot of time trying to figure out how best to do it. I think I have it worked out now, so it should be easier from here on out.

Big Guy

I was sorting through some old images and ran across this one. Looks like it’s from a little over two years ago, so I’d guess he’s about two and a half now. Doesn’t he look harmless? He’s not a puppy anymore, though he’s still just as ornery. Today he was digging up mole runs. The moles must have been busy under the snow, because there are a bunch of hills and runs around.

First Gardening of 2019: Moving Marshmallow Plants

Made this a couple days ago. It’s too muddy to get in the garden for real yet, but I thought I’d move these marshmallow herb plants now that the ground was thawed. We planted them in this little flower bed a couple years ago, not realizing how big they’d get, and they kind of crowd everything out. The digging was harder than I expected, because they grew down into a pretty thick layer of rock, so I couldn’t bring them up with a nice dirtball.

Commodore 128 Assembly #30: SHA-256 Part 3

Continuing on with the SHA-256 calculator, we write more routines for copying blocks of memory in different ways, and the remaining low-level functions required by the algorithm. Next time we’ll be moving up a step or two to higher-level parts of the program. The hat is a Lewis Round Barn hat from the Old Tyme Association. If you’ve been to the Adams County Fair outside Mendon, you know what that’s about.

Springtime Chickens

The chickens are definitely ready for spring. They’ve been coming outside for a few weeks now, even a little in the snow, but they couldn’t have been finding much to eat in the frozen ground. Now they’re on the roam all day. They especially like the spot where firewood was stacked last year, so they couldn’t get to it until now. I don’t know why the picture quality in this video is so bad.

Computer Artistry

A friend linked to a thing today that’s pretty cool: the Deep Dream Generator. It’s a computer program that will take two photos and try to redraw one in the style of the other one. I gave it a picture of my mug and had it use a line drawing of a face as the style, and got the result below. They call it AI. I don’t know about that. To me, AI would be a program that is self-aware and goes beyond its programming in unpredictable ways.

Commodore 128 Assembly #28: Programming the 80-Column Display

Here’s a whiteboard tutorial on programming the 80-column screen on the Commodore 128. It’s very different from the 40-column VIC display, since you have no direct access to 80-column screen memory and have to program it indirectly by reading and writing to the VDC’s registers, which requires a handshaking process through a pair of registers at $D600 and $D601 in the C128’s I/O block. There will be another video soon demonstrating how to use the little routines here to do actual work.