diff --git a/readme.md b/readme.md index f72d7bd..4825b2e 100644 --- a/readme.md +++ b/readme.md @@ -9,7 +9,7 @@ Included Software ----------------- The repository includes an emulator implementation of Thingamajig with a -control program for the emulated punched tape reader and punch, and an +control program for the emulated paper tape reader and punch, and an assembler and a disassembler, all written in FreePascal. It also includes couple of simple example programs for Thingamajig written in assembly. @@ -99,29 +99,30 @@ Usage: * emulator (-v) program (2> verbose_output) * tapectl (-r reader_file) (-p punch_file) -By default the emulator runs at roughly 500 KIPS, has 2 KiB of RAM, and -interacts with memory mapped devices at roughly 1 kB/s. The arguments --dRAM4, -dRAM8, -dRAM16, -dRAM32, and -dRAM64 can be used to compile -the emulator with 4, 8, 16, 32, or 64 KiB (minus the reserved addresses) -of RAM respectively instead and the speed limitations can be removed -with the argument -dfast. When run with the argument -v the current -state of the registers is output to stderr before each instruction. +By default the emulator runs at roughly 500 KIPS and has 2 KiB of RAM. +The arguments -dRAM4, -dRAM8, -dRAM16, -dRAM32, and -dRAM64 can be used +to compile the emulator with 4, 8, 16, 32, or 64 KiB (minus the reserved +addresses) of RAM respectively instead and the speed limitations can be +removed with the argument -dfast. When run with the argument -v the +current state of the registers is output to stderr before each +instruction. -Input and output are handled by an emulated glass teletype terminal with -local echo on by default. Of the control characters bell (^G), -backspace (^H), line feed (^J), carriage return (^M), and device control -characters two (^R) and four (^T) are used by the terminal: the device -control characters are used to turn the local echo on and off -respectively while the rest have their standard uses. The backspace and -delete keys input their respective characters and non-character keys -null. +Input and output are handled by an emulated roughly 1000 CPS +ASCII-compatible glass teletype terminal with local echo on by default. +Of the control characters bell (^G), backspace (^H), line feed (^J), +carriage return (^M), and device control characters two (^R) and four +(^T) are used by the terminal: the device control characters are used to +turn the local echo on and off respectively while the rest have their +standard uses. The backspace and delete keys input their respective +characters and non-character keys null. In Linux the emulator can be compiled with support for a character -printer and an emulated punched tape reader and punch with the arguments --dprinter and -dtape respectively. The printer is mapped to address FFFE -and the tape reader and punch to FFFD. The printer prints into -/dev/usb/lp0 and the tape files read from and punched to are (re)set -using the program tapectl with the arguments -r and -p respectively. +printer and an emulated high speed paper tape reader and punch with the +arguments -dprinter and -dtape respectively. The printer is mapped to +address FFFE and the tape reader and punch to FFFD. The printer prints +into /dev/usb/lp0 and the tape files read from and punched to are +(re)set using the program tapectl with the arguments -r and -p +respectively. The IPL loads the program specified as an argument when running the emulator.