Hello,
I have a Nova3 with dual 8" floppy, but unfortunately no diskette with OS.
To try to recreate a set of disks, I had the idea to try to create a
tool similar to VTSERVER for PDP11,
This piece of software runs on a PC, connected to the DG Nova on
terminal port.
At boot the software emulate a punch tape reader and can be used to copy
a small program in the memory
of the Nova and to execute it. This software should allow access to IO
peripherals and memory via the terminal port,
using a command / acknowledge operation, thus allowing the PC to read /
write disks, tapes, and so on.
This is a sort of bridge between Nova hardware and PC.
Of course this piece of software had to be developed and complied on PC,
and the controlling software for the PC as well.
With the help of Bruce Ray and some patience in reading many DG manuals
kindly provided,
I started the development of a tool using Python, that allows to perform
many tasks, using python IDLE console:
- load / save memory images with PL/APL/raw binary format
- load / save ASM listings
- assemble from loaded ASM listing to binary data
- disassemble from binary data to ASM listing
The development is almost done (only some stuff regarding labels
handling still has to be done).
Basically the tool handles one or more memory areas, and allows the user
to do listed tasks in a wanted sequence,
for example load a file containing an APL dump, disassembling it to
create a ASM listing, save it to text file.
I'm using this tool to assemble the bridge software, of course I had to
write the listing before...
The bridge will allow the PC to perform "remotely" any kind of IO
operation, executing single IO opcodes one-by-one.
All the parameters can be controlled from the PC, so access to any kind
of peripheral is virtually possible.
The bridge also allow to read / write on the Nova memory using variable
size data blocks; this allows handling operations
on peripherals that use DMA.
This tool has been developed to 99%, but it hasn't been debugged yet.
I would try to use SIMH with telnet on the terminal port, to emulate the
Nova, and to use Python to develop the controlling
software, scriptable so different peripheral support can be added at any
time easily.
I'm encountering problems with this task on SIMH3.9:
- emulation of program load operation (starting CPU from peripheral
defined via switch/levers position) is described in the manual,
but effectively it doesn't works
- the terminal emulation (TTI/TTO) seems to work only at 7bit, while we
need 8bit
I need to patch SIMH, anybody is in willing to help?
After bridge debug , the next step is to write down the controlling
software, and scripts to handle wanted peripherals.
Andrea