[HN Gopher] Recreating the Canon Cat document interface
       ___________________________________________________________________
        
       Recreating the Canon Cat document interface
        
       Author : tonyg
       Score  : 77 points
       Date   : 2025-10-15 14:42 UTC (8 hours ago)
        
 (HTM) web link (lab.alexanderobenauer.com)
 (TXT) w3m dump (lab.alexanderobenauer.com)
        
       | drivers99 wrote:
       | > The hard part is that the Canon Cat had bespoke hardware with
       | dedicated keys for its actions
       | 
       | I actually designed a PCB / custom keyboard (well, it's just a
       | copy of the Canon Cat layout) with the Leap, Use Front, etc keys
       | (using an ARM dev board called Black Pill, which is probably
       | overkill, to scan the rows/columns for key up/down events) for
       | this reason. Right now I have it sending key codes over a serial
       | connection to another microcontroller with a display module so
       | you can now type on it, but I really need to get started on the
       | actual Canon Cat style software. I'm not really planning to make
       | it USB compatible or use any existing OS though.
       | 
       | > Maybe predictably, early on I found myself wanting more than
       | one text stream. I fought that inclination to discover what's in
       | store down the pure Canon Cat path.
       | 
       | I think the Cat would let you do that if you used multiple disks?
       | I haven't used a Canon Cat, but only read the documentation. It
       | used a single DISK button for loading and saving, based on
       | context. The following quote is copied from the manual for
       | reference. I think the "beep" option is for if you've made an
       | edit in memory but don't have the correct disk in for saving that
       | same text stream.
       | 
       | [quote]
       | 
       | The Cat has two storage places for your text: memory and disk.
       | Memory is the area inside the Cat where the text is stored while
       | you are working on it. The on-screen text is a portion of the
       | text stored in memory. The memory is kept alive by the electric
       | current coming from the wall. If the power were cut, the text in
       | the memory would be lost, so you need to record the text more or
       | less permanently on a disk with the help of the disk drive.
       | 
       | One command, [DISK], handles all operations involving disk and
       | memory. When you use [DISK], the Cat does one of three things:
       | 
       | - _Plays back_ the disk in the drive. This means copying the
       | information from the disk into the memory, and putting a portion
       | of it up on the screen where you can see it and work on it.
       | 
       | - _Records_ the text in memory. This means transferring the
       | information in memory to the disk for safe storage.
       | 
       | - _Beeps_. This means the Cat makes a warning sound and does
       | nothing, because recording or playing back might lose
       | information.
       | 
       | A DISK sign appears on the ruler while the Cat is recording or
       | playing back.
       | 
       | [unquote]
        
       | kragen wrote:
       | This does mention Archy, but not in any depth. It doesn't mention
       | _The Humane Interface_
       | (https://en.wikipedia.org/wiki/The_Humane_Interface), THE, or
       | RCHI. I wonder what the reason is for these omissions? You'd
       | think they'd be central to any discussion of recreating the Canon
       | Cat document interface!
       | 
       |  _Bootstrapping Computing_ looks interesting.
        
         | drivers99 wrote:
         | I wasn't familiar with (or had forgotten) those acronyms nor
         | Archy. Looks like RCHI stands for Raskin Center for Humane
         | Interfaces. THE stands for The Humane Environment which is what
         | Archy used to be called.
         | https://en.wikipedia.org/wiki/Archy_(software)
         | 
         | Sounds like it had the problem of not using a custom keyboard.
        
           | kragen wrote:
           | Yup.
        
       | anthk wrote:
       | >keys
       | 
       | Under Emacs or X11 you can nearly map every key/keybinding to
       | anything.
       | 
       | Also, on The Humane Interface, and the "Undo for everything"...
       | Emacs has desktop-mode and for sure it could be set to
       | save/restore nearly everything.
       | https://en.wikipedia.org/wiki/The_Humane_Interface
        
       | GavinAnderegg wrote:
       | I just learned about the Canon Cat a couple of days ago! I wrote
       | up a blog post with some resources and tidbits:
       | https://anderegg.ca/2025/10/13/the-canon-cat
       | 
       | I had a lot of fun with this emulator on Archive.org, and
       | included some quick notes about using it with macOS:
       | https://archive.org/details/canoncat
        
       ___________________________________________________________________
       (page generated 2025-10-15 23:00 UTC)