SimH Disk Drives

Using Disk Drives on SimH NOVA.exe

Disk drives on SimH are represented by host files. For example, the file iris0.d31 is nothing more than a binary representation of an actual IRIS Logical Unit zero. The first 512 bytes in the file are exactly what you would find in Block zero of a Diablo LU0. The next 512 bytes are from Block one, and so on. The file itself contains no sector, track or cylinder markers. Those are all logically defined inside the SimH itself.

The nova.exe simulator understands the cylinder/track/sector configuration of about a dozen different nova era disk drives. They all meet the standards that DG laid out for their O.S. which was RDOS. You can read about that here. In order for nova.exe to correctly access the file you attach to it, you must first tell it what type of disk you will be using. This is done with the SET command. For example:

SET DKP0 D31
SET DKP1 C114
Set DKP2 6103
SET DKP3 D31

The above commands define drive 0 as a Diablo 31, drive 1 as a Century 114, drive 2 as a DG 6103, and drive 4 as another Diablo 31.  (DKP0-DKP3 are the only 4 disk packs that can be defined, but there are several other hardware drives that can be defined).

Once SimH knows the drive configuration, you can connect the drive to an external file, which is the equivalent of mounting a drive in other systems.

ATTACH DKP0  dir/diablo31file1
ATTACH DKP1  dir/century114file
ATTACH DKP2  dir/dg6103file
ATTACH DKP3  dir/diablo31file2

Of course in order to use these drives from the running IRIS system, they have to be properly defined in the CONFIG file as described in the MANAGER reference manual. The D31 LU0 that we distribute currently has 2 drivers embedded inside, the Diablo 31 and the DG 6103. See our page on CONFIG for how to define drives to IRIS.

Assuming that you have created the two above diablo31 files and defined them in CONFIG as partitions 0.0 and 0.1, and also defined a 6103 file as partition 1.0, you could then Install them in IRIS  (of course LU0 is already up and running). For example:

# INSTALL 0.1 (followed by LU#, etc)
# INSTALL 1.0 (followed by LU#, etc)

 

Leave a Reply