Amend 3.2 Released

posted on feb 3rd, 2022 with tags amend, mac, release, and retrocomputing

Amend 3.2 has been released:

  • amend-3.2.sit (StuffIt 3 archive, includes source code and THINK C 5 project file)

Changes in this version:

  • When filtering out already-added files, also filter out the open repo file itself
  • Fix a possible crash after committing
  • Stop occasionally displaying a cursor on read-only text boxes such as diffs

Video: C Programming on System 6 - A New On-Disk Database Format

posted on jan 8th, 2022 with tags mac, retrocomputing, and video
part of C Programming on System 6 series

It’s a new year and my old computer is still old.

A bug in Amend caused it to crash during a commit, which corrupted the repo beyond repair. I quickly came to realize that using resource files as a database for Amend and my new BBS was a bad idea. I NIH’d the problem and created my own file format that will be a bit more resilient to crashes and partial writes.

Continue reading 279 words...

Video: C Programming on System 6 - Adding a GUI to diff(1)

posted on nov 4th, 2020 with tags mac, openbsd, retrocomputing, and video
part of C Programming on System 6 series

In the previous episode I quickly ported OpenBSD’s diff(1) but there wasn’t any interface to select files or scroll through the output. I’ve since added a proper GUI with the ability to select files or folders, and in this episode I walk through the GUI and filesystem code and then add a proper Edit menu. I also make a formal release of the code and binary available for download.

Continue reading 199 words...

Video: C Programming on System 6 - Porting OpenBSD's diff(1)

posted on oct 28th, 2020 with tags mac, openbsd, retrocomputing, and video
part of C Programming on System 6 series

I’ve wanted a simple revision control system on my Mac since starting development of my IMAP client. Porting a large system like Git or even CVS would be overkill (and very slow), but maybe something small like OpenBSD’s RCS implementation would suffice. For now, just having a diff utility would be helpful so in this video I port the guts of OpenBSD’s diff(1) and show it generating a unified diff between revisions of a C file.

Continue reading 246 words...