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

⟦9f616680f⟧ TextFile

    Length: 3230 (0xc9e)
    Types: TextFile
    Names: »CONST_TYPE_VAR.I«

Derivation

└─⟦8c095a7f3⟧ Bits:30005798 CR80 Disc Pack ( Vol ILS systemdisk XAMOS TOS 10:01 hard boot #43c 19-7-87/JFJ )
    └─ ⟦this⟧ »PREFIXES.D!XAMOS.D!KA.D!V0401.D!PASCAL.D!CHECK.D!CONST_TYPE_VAR.I« 
    └─ ⟦this⟧ »PREFIXES.D!XAMOS.D!KA.D!V04CT.D!PASCAL.D!CHECK.D!CONST_TYPE_VAR.I« 
└─⟦c2e810e96⟧ Bits:30005799 CR80 Disc Pack ( XAMOS 841129 ILS TOS 10-01 System Disk Tilhører ILS/MSG hard boot boot entry #43c )
    └─ ⟦this⟧ »PREFIXES.D!XAMOS.D!KA.D!V0401.D!PASCAL.D!CHECK.D!CONST_TYPE_VAR.I« 
    └─ ⟦this⟧ »PREFIXES.D!XAMOS.D!KA.D!V04CT.D!PASCAL.D!CHECK.D!CONST_TYPE_VAR.I« 

TextFile

CONST
      ENTRY_BV_LENGTH           = #1000; "MAX_ENTRIES DIV 16L  +  1L"
      ENTRY_BV_LENGTH_M_1       =     ENTRY_BV_LENGTH - 1;
      MAX_SLOTS                 =  1000;
      MAX_CHAIN                 =    20;
      MAX_HOPS                  =     MAX_CHAIN;
      LINE_SIZE                 =   120;

      HEX_TP = 0;        DEC_TP = 1;        ASC_TP = 2;
      PRIMARY = 'P';  SECONDARY = 'S';  IN_CHAIN = ' ';  INVALID = 'I';


      MINI_BUFFER_SIZE_W        = MAX_USER_DATA_SIZE_W + CTL_SIZE_W;
      MINI_BUFFER_SIZE_W_M1     = MINI_BUFFER_SIZE_W - 1;

      INPUT_BUFFER_SIZE_W       = MIN_AREA_SIZE*SECTOR_SIZE_W;
      INPUT_BUFFER_SIZE_B       = INPUT_BUFFER_SIZE_W*2;
      INPUT_BUFFER_SIZE_W_M1    = INPUT_BUFFER_SIZE_W - 1;



TYPE
      PRINT_CONTROL =
      RECORD
        KEY_TYPE,
        LIST_LENGTH,        "length of userdata to be printed"
        SPACES,             "spaces in front of userdata in one print line"
        UD_WORDS  : INTEGER "userdata-words in one print line"
      END;

      BIT_VECTOR = ARRAY [ 0 .. ENTRY_BV_LENGTH_M_1 ] OF INTEGER;
      "16 entries are put into one integer (16 bits), as only one bit
       per entry is used. "

      DISTR_T          = ARRAY [ 0 .. MAX_CHAIN ] OF INTEGER;


      MINI_BUFFER_T    = ARRAY [ 0 .. MINI_BUFFER_SIZE_W_M1 ] OF INTEGER;
      INPUT_BUFFER_T   = ARRAY [ 0 .. INPUT_BUFFER_SIZE_W_M1 ] OF INTEGER;
%PAGE
VAR
      I, J, K, L,
      LEAST, MOST                      : INTEGER;
      LI                               : LONG_INTEGER;
      CH                               : CHAR;
      SI, SP                           : STREAM;
      CC                               : COMPLETION_CODE;

      P_CB                             : PARAM_CB;
      FOUND                            : BOOLEAN;
      NAME                             : PACKED_NAME;
      PRINT_FILE                       : FILE;
      LIST                             : BOOLEAN;
      BAR_WIDTH                        : INTEGER;
      PR_CTL                           : PRINT_CONTROL;

      FCB                              : KA_FCB_T;
      FILE_OPEN                        : BOOLEAN;
      ENTRY_TYPE                       : CHAR;
      REC                              : KEYED_ENTRY;
      REC_NO                           : LONG_INTEGER;

      UNPR_ENTRY,        PR_ENTRY      : BIT_VECTOR;
      KEY_DISTR                        : ARRAY [ 0 .. MAX_SLOTS ] OF INTEGER;
      CHAIN_DISTR,       HOP_DISTR     : DISTR_T;

      FOUND_ENTRIES,
      PRIMARY_ENTRIES,
      SECONDARY_ENTRIES,
      COLLISION_ENTRIES,
      INV_POINTER,       DUP_CHAIN,
      WRONG_CHAIN,       OUTSIDE_CHAIN : LONG_INTEGER;
      MAX_HOP_L                        : INTEGER;
      CHAIN_L,           MAX_CHAIN_L,
      ACC_CHAIN_L                      : LONG_INTEGER;



      MINI_BUFFER                      : MINI_BUFFER_T;
      INPUT_BUFFER                     : INPUT_BUFFER_T;

      MINI_P, INPUT_P,
      ENTRY_SIZE_W,
      BUF_NO                           : INTEGER;
      BYTES_LEFT                       : LONG_INTEGER;

      BL                               : BLEPTR;
      BUFHEAD                          : BLE;
      FA                               : FILE_ADDRESS; «a5»