# 2023/10/04 ## On Retrocomputing I've been spending a bunch of time working on some Z80 systems, mostly CP/M systems. I need to spend some more time learning about the differences between CP/M 2.2 ZSystem. One of these systems, an SC131 [1] is connected via Tailscale to the internet over SSH. This works something like this: [SC131] <= FTDI => [Pi consrv] <= [Tailscale] It's kind of useful being able to hack on CP/M stuff remotely; however, there some issues downloading new files to it. I think it's related to latency between the SSH host and the serial link because even pasting in data seems to get hung up pretty quick. If I plug it in directly, I'm able to use XMODEM just fine. I wrote a Pascal version of DUMP.COM and a reverse version (UNDUMP) [2] that should work on the RC2014s and the SC131. I learned some new things about CP/M in writing these tools. In particular, CP/M doesn't support the FileSize, FilePos, Seek, and Flush procedures don't work on CP/M (c.f. page 267 of the Turbo Pascal 3.0 manual). Speaking of the Turbo Pascal 3.0 manual, I found a copy on eBay that I've ordered. There's a lot of things I want to learn, such as how to write CP/M programs specifically, as well as writing my own Z80 monitor. ## BBSes I've been trying to set up a BBS. I found mystic BBS [3], currently running on a Raspberry Pi. However, I haven't gotten the message board or file uploads working, which is 95% of what I want a BBS for. I think what I want are four core functions: + a message board + mailboxes + file uploads + chat functionality Mailboxes seem like a subset of message boards: you could post a message where the board is an individual user. There's a part of me that wants to run this on a retrocomputer. File uploads should probably support XMODEM or ZMODEM, and there needs to be some basic association on the files so the owner can delete or upload. Maybe directory-based permissions? The answer is that I probably need to write my own. ## Modem I would like to be able to connect to BBSes from my CP/M systems. I have the RC2014 WiFi module [4], but it works the wrong way: it allows you to connect remotely over telnet to your RC2014. I tried getting Zimodem [5] working, but it wouldn't build. I think the answer is obviously to write my own. ## kge A while ago, I wrote my own text editor; I'd like to build a GUI version using Dear ImGui. It needs to run on Windows and Linux, and it would be nice if it could build on MacOS too. So far, I haven't gotten it running yet. I've been trying with Conan [6], but I can't find all the dependencies. I'm currently trying to build it with support for GLEW/GLFW. The other option is trying to set up some sort of conditional build. Anyways, that's a brain dump for now. [1] https://smallcomputercentral.com/sc131-z180-pocket-computer/ [2] https://git.wntrmute.dev/kyle/kcpmtk [3] https://www.mysticbbs.com/ [4] https://rc2014.co.uk/modules/esp8266-wifi-module/ [5] https://github.com/bozimmerman/Zimodem [6] https://conan.io/