DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Hard and Floppy Disks

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Hard and Floppy Disks

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦3cbf567c5⟧ TextFile

    Length: 4270 (0x10ae)
    Types: TextFile
    Names: »DCB_DEFN.S«

Derivation

└─⟦8c095a7f3⟧ Bits:30005798 CR80 Disc Pack ( Vol ILS systemdisk XAMOS TOS 10:01 hard boot #43c 19-7-87/JFJ )
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!ALTFMS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!FILSYS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!MY_SYSTEM.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!QUATTRO_MUX.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!SINGLE.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!ALTFMS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!FILSYS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!MY_SYSTEM.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!QUATTRO_MUX.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!SINGLE.D!GENS.D!DCB_DEFN.S« 
└─⟦c2e810e96⟧ Bits:30005799 CR80 Disc Pack ( XAMOS 841129 ILS TOS 10-01 System Disk Tilhører ILS/MSG hard boot boot entry #43c )
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!ALTFMS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!FILSYS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!MY_SYSTEM.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!QUATTRO_MUX.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FILE.D!FMS.D!SINGLE.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!ALTFMS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!FILSYS.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!MY_SYSTEM.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!QUATTRO_MUX.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »SYSTEMS.D!XAMOS.D!GEN850501.D!FMS.D!SINGLE.D!GENS.D!DCB_DEFN.S« 
└─⟦e0c43619c⟧ Bits:30005797 CR80 Disc pack ( Vol:FNJ1 861029/EC CR80 S/W Package II+III+IV+V+VII )
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!ERP_SINGLE.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MX.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MX_CRAM.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MX_DMA.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!MY_SYSTEM.D!GENS.D!DCB_DEFN.S« 
    └─ ⟦this⟧ »CSP005_V0501.D!CSS920.D!LINK.D!SINGLE.D!GENS.D!DCB_DEFN.S« 

TextFile


  const

    enter_count_format = #7FFF;   "TEMP!!!!!

  type

    dual_disk_nbr = 0..1;
    dual_status = array[dual_disk_nbr] of dual_disk_state;
"   vol_format = (dummy0, without_ASF_format, ASF_16_format, ASF_100_format,   TEMP!!!!!!!
"                 enter_count_format);

    sect_list =
      record
        nbr   : sector_nbr;
        state : sector_state;
        cmd   : sector_cmd;
        first : sect_desc_ptr;
        last  : sect_desc_ptr
      end "sect list";

    last_access_desc =
      record
        last_nbr   : sector_nbr;  "nbr of last sector of last access
        first_desc : sect_desc_ptr;  "desc of first sector of last access
        last_desc  : sect_desc_ptr  "predecessor of 1st sector of
                                    "next disk access
      end "last access desc";

    logical_device=
      record

        devname         : device_name;   "name of device"
        kind            : device_kind;
        cdc             : cdc_type;      "type of cdc drive"
        dual            : boolean;       "dual disk ?
        status          : dual_status;   "status of dual disks
        unit            : unit_nbr;
        unit_d          : unit_nbr;
        subunit         : subunit_nbr;
        sectorcount     : long;          "number of sectors on device"
        sects_per_cyl   : integer;       "number of sectors per cylinder"
        driver          : ddcb_ptr;      "ref to disk driver, for disk nbr 0
        driver_d        : ddcb_ptr;      "ref to disk driver, for disk nbr 1
        next_to_dualize : long;          "next sector to start dualize_sectors
        log_info_ptr    : reference;     "used by the module, that logs disk accesses
        log_turn        : integer;       "counter to which field to be used

       "DCM information
        first_access    : sect_desc_ptr; "desc of 1st sect of 1st unanswered request
        last_access     : last_access_desc;
        nbr_errors      : integer;       "number of non-reported errors
                                         "have occurred on this device
        sectors         : sect_list;     "list of sectors present in cache
        answers_awaited : 0..2;          "nbr of unanswered messages that
                                         "have been sent to the driver
        turn            : dual_disk_nbr; "the disk on which to perform next read

        access_requd    : integer;       "how many accesses are queued for
                                         "sector accesses on the device
      end "logical device";


    volume=
      record
        volname          : volume_name;   "name of volume"
        bfd, bm          : integer;           "pointers to systen file FCBs
        bm_dirty         : boolean;       "has curnt page been modified?
        bm_page_nbr      : integer;       "page nbr of curnt bit map page
        bm_page          : reference;     "rel addr of curnt bit map page
        bm_sect_desc     : integer;       "pointer to current bit map sector descriptor
        free_entries     : long;          "number of free entries in bfd"
        first_free       : long;          "first free entry in bfd"
        first_file       : integer;       "pointer to first file on volume"
        bst_size         : integer;       "a value of 0 signifies no ASF
        asf_addr         : long;          "body address of the ASF
        bst              : bad_sector_table;
        bfd_lock         : semaphore;     "lock for the free list and
                                          "write claiming a BFD entry
        bm_lock          : semaphore;     "lock for the BM
        files_lock       : semaphore;     "lock for exclusive access to
        format           : integer;       "Identification of format of volume
                                          "list of files on this device
      end "volume";

    dcb_ptr = pointer;  "pointer to a dcb

    dcb=
      record
        next     : dcb_ptr;        "pointer to next dcb
        state    : dev_state;
        reserver : integer;        "user id
        ld       : logical_device;
        vol      : volume;
        dirty    : boolean;        "for update at sector substitute
        cmd_opr  : cmd_operation;  "for update at sector substitute
      end "dcb";