Home
| 32KOmnibus
| 4sale
| 8L
| 8a
| 8e
| 8i
| 8s
| C
| FPGA8i
| blog
| cables
| cad
| computerlab
| decmateI
| decmateII
| decmateIII
| df32emul
| documents
| dsd410
| flipchip
| frontpanel
| kc8a
| la36
| lab
| omnibus
| papertape
| pc04
| repair
| rk05
| rl02
| rx02
| rx08
| sbc6120
| software
| tc01
| tools
| tty33
| tty38
| tty43
| ttycards
| tu10
| tu55
| tu56
| typeset
| vt78
|
PDP-8 Tools
At the suggestion of Bill Cattey, I have made available a suite of tools I use for a variety of forensic work with PDP-8 files. I started out working with paper tapes, but these days most of my work is with RK05, DECtape, and floppy (RX01 and RX02) images. Most of these are OS/8 images, but I also have some with P?S8, TSS/8, COS, and other file-systems on them. (The floppies also come with various interleave and bit packing schemes.)
To make use of these tools, you will want to install Subversion and Perl. The tools are written in an ancient dialect of Perl because that's the rapid prototyping language I'm most used to, and because it's available for almost any reasonable machine you'd want to use for this work.
The tools themselves are here with a documentation sub-directory here. Best way to get a local copy is with Subversion's "co" command.
The tools fall into a few rough categories:
The paper tape tools deal with paper tape images which are basically byte streams, with each byte representing a frame or character of the paper tape. The main things to do with them have to do with inspecting them, stripping mark parity, and using utilities that understand BIN format, etc. to compare them.
One thing to be aware of is that I generally want the paper tape image to be useful, rather than purely an historical record. This means my paper tape images generally have the large "buffer" regions of extra nulls and cruft removed from each end. That way they are ready to be used with SIMH or whatever, without worrying about "positioning the tape".
One main workflow is to use "dood" to create a ".od" file for a given paper tape image, then edit the octal in the ".od" file, then use "mktapes" to convert the edited octal back into the edited image.
The files I use most often here are the OS/8 image tools (some support exists for P?S8, TSS/8, COS, and other volumes). The tool "os8xplode" converts an image in ".dsk" format (similar to the SIMH format for RK05) into a directory (or two, in the case of an RK05) containing a file for each file in the OS/8 image. It also writes an XML file, with a description of the volume sufficient for "mkdsk" to re-create it. There is also an "os8implode", which will (re)enumerate the sub-directory (or directories) and create a new XML file. This makes it pretty easy to work in SIMH to test things, while using Makefiles and other "modern" stuff to maintain the files.
There is an extensively tested cross assembler included, which can assemble nearly every extant PAL assembler files. (Two exceptions are currently known.)
A number of tools are provided to convert from one file format to another, and to work with common file formats.
There are a couple of common ways to represent or convert data between 12 bit words and 8 bit bytes. One common format, used in ".dsk" files and quite often inside SIMH, is to represent the 12 bit binary value in 2 bytes as a "short", usually in x86 byte order. Another is the OS/8 "3 for 2" format, in which 3 bytes are used to represent the 24 bits of a pair of 12 bit words. The os8 image tools generally create output files in "3 for 2" format, which is natural for byte oriented data, and is also more compact. The tools "3to4" and "4to3" are useful to convert back and forth, if you need to visualize the data as octal words, rather than bytes..
Last updated on 02/25/23 02:21 |
||||||||||||||||