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

⟦60e3a0ba1⟧ TextFile

    Length: 18198 (0x4716)
    Types: TextFile
    Names: »PSM_INIT_REST.S«

Derivation

└─⟦ffe699cee⟧ Bits:30005101 8" CR80 Floppy CR80FD_0060 ( VOL: SCC.V NSC Directories: EVR.D OCP.D SCCINIT.D )
    └─⟦9c1658a4c⟧ 
        └─ ⟦this⟧ »SCCINIT.D!PSM_INIT_REST.S« 

TextFile

SUBMODULE PSM_INIT_REST;
%NOLIST
%LIST

%SOURCE @**GENS.D*SWELLPREFIX.D*GENERALPARAMS.S
%SOURCE @**GENS.D*SWELLPREFIX.D*MONITORNAMES.S
%SOURCE @**GENS.D*SWELLPREFIX.D*IOSPARAMS.S
%SOURCE @**GENS.D*SWELLPREFIX.D*X2GENPARAMS.S
%SOURCE @**GENS.D*SWELLPREFIX.D*KERNELPARAMS.S
%SOURCE @**USERS.D*BB.D*ITM.D*ITMPREFIX.S
«ff»"PAGE


EXPORT PROCEDURE PSM_INIT_REST              "
                 (R6);                      "LINK


CONST CRTCB_SIZE             =  248;
CONST CRCRT_SIZE             =  135;
CONST CRFNT_SIZE             =   30;
CONST CRPTT_SIZE             =  571;


VAR   TCB_RCB                : REGION_CREATION_BLOCK;

INIT  TCB_RCB.NAME           = 'XTCBCR';
INIT  TCB_RCB.PAGE           = 4;
INIT  TCB_RCB.ADDR           = #8000;
INIT  TCB_RCB.WORD_SIZE      = CRTCB_SIZE;


VAR   CRT_RCB                : REGION_CREATION_BLOCK;

INIT  CRT_RCB.NAME           = 'CRT001';
INIT  CRT_RCB.PAGE           = 4;
INIT  CRT_RCB.ADDR           = #8100;
INIT  CRT_RCB.WORD_SIZE      = CRCRT_SIZE;


VAR   FNT_RCB                : REGION_CREATION_BLOCK;

INIT  FNT_RCB.NAME           = 'FNT001';
INIT  FNT_RCB.PAGE           = 4;
INIT  FNT_RCB.ADDR           = #8200;
INIT  FNT_RCB.WORD_SIZE      = CRFNT_SIZE;


VAR   PTT_RCB                : REGION_CREATION_BLOCK;

INIT  PTT_RCB.NAME           = 'PTT001';
INIT  PTT_RCB.PAGE           = 4;
INIT  PTT_RCB.ADDR           = #8300;
INIT  PTT_RCB.WORD_SIZE      = CRPTT_SIZE;


IMPORT VAR                                  "
      SAVE00                 : REGISTERS;
      TCB_NAME               : REGION_NAME;
      CRT_NAME               : REGION_NAME;
      PTT_NAME               : REGION_NAME;
      FNT_NAME               : REGION_NAME;


VAR   TCB_ARRAY              : ARRAY[1..CRTCB_SIZE SHIFTLL 1] OF BYTE;

INIT  TCB_ARRAY[1..16]       = 0;                                     "TCB NO 00
      TCB_ARRAY[17..32]      = 'FCA',0,0,0,0,0,3,#1,0,0,0,0,0,'F';    "TCB NO 01
      TCB_ARRAY[33..48]      = 'FCB',0,0,0,0,0,0,#39,0,0,30,0,7,'F';  "TCB NO 02
      TCB_ARRAY[49..64]      = 'FCC',0,0,0,0,0,0,#11,0,0,0,0,10,'F';  "TCB NO 03
      TCB_ARRAY[65..80]      = 'FCD',0,0,0,0,0,3,#4,0,0,0,0,12,'F';   "TCB NO 04
      TCB_ARRAY[81..96]      = 'FMA',0,0,0,0,0,0,#19,0,0,0,0,18,'F';  "TCB NO 05
      TCB_ARRAY[97..112]     = 'FMB',0,0,0,0,0,0,#11,0,0,0,0,20,'F';  "TCB NO 06
      TCB_ARRAY[113..128]    = 'FMC',0,0,0,0,0,0,#11,0,0,30,0,22,'F'; "TCB NO 07
      TCB_ARRAY[129..144]    = 'FMD',0,0,0,0,0,5,#4,0,0,0,0,24,'F';   "TCB NO 08
      TCB_ARRAY[145..160]    = 'FME',0,0,0,0,0,3,#2,0,0,0,0,25,'F';   "TCB NO 09
      TCB_ARRAY[161..176]    = 'FMF',0,0,0,0,0,5,#2,0,0,0,0,27,'F';   "TCB NO 10
      TCB_ARRAY[177..192]    = 'FMG',0,0,0,0,0,5,#2,0,0,0,0,29,'F';   "TCB NO 11
      TCB_ARRAY[193..208]    = 'FMH',0,0,0,0,0,5,#2,0,0,0,0,30,'F';   "TCB NO 12
      TCB_ARRAY[209..224]    = 'FMI',0,0,0,0,0,0,#11,0,0,0,0,31,'F';  "TCB NO 13
      TCB_ARRAY[225..240]    = 'FMJ',0,0,0,0,0,0,#11,0,0,0,0,32,'F';  "TCB NO 14
      TCB_ARRAY[241..256]    = 'FMK',0,0,0,0,0,0,#19,0,0,0,0,33,'F';  "TCB NO 15
      TCB_ARRAY[257..272]    = 'FML',0,0,0,0,0,13,#4,0,0,0,0,34,'F';  "TCB NO 16
      TCB_ARRAY[273..288]    = 'FMM',0,0,0,0,0,0,#11,0,0,0,0,35,'F';  "TCB NO 17
      TCB_ARRAY[289..304]    = 'FMN',0,0,0,0,0,0,#11,0,0,0,0,36,'F';  "TCB NO 18
      TCB_ARRAY[305..320]    = 'FMO',0,0,0,0,0,0,#11,0,0,0,0,37,'F';  "TCB NO 19
      TCB_ARRAY[321..336]    = 'FAA',0,0,0,0,0,0,#11,0,0,0,0,38,'F';  "TCB NO 20
      TCB_ARRAY[337..352]    = 'FAB',0,0,0,0,0,0,#11,0,0,0,0,39,'F';  "TCB NO 21
      TCB_ARRAY[353..368]    = 'FAC',0,0,0,0,0,21,#4,0,0,0,0,40,'F';  "TCB NO 22
      TCB_ARRAY[369..384]    = 'FBA',0,0,0,0,0,0,#11,0,0,0,0,42,'F';  "TCB NO 23
      TCB_ARRAY[385..400]    = 'FBB',0,0,0,0,0,0,#11,0,0,0,0,44,'F';  "TCB NO 24
      TCB_ARRAY[401..416]    = 'FBC',0,0,0,0,0,23,#4,0,0,0,0,46,'F';  "TCB NO 25
      TCB_ARRAY[417..432]    = 0;                                     "TCB NO 26
      TCB_ARRAY[433..448]    = 0;                                     "TCB NO 27
      TCB_ARRAY[449..464]    = 0;                                     "TCB NO 28
      TCB_ARRAY[465..480]    = 0;                                     "TCB NO 29
      TCB_ARRAY[481..496]    = 0;                                     "TCB NO 30


VAR   CRT_ARRAY              : ARRAY[1..CRCRT_SIZE SHIFTLL 1] OF BYTE;

INIT  CRT_ARRAY              =

      23,0,43,0,44,0,
      'LON',1,
      'LOF',2,
      'PEL',3,
      'PRL',4,
      'PES',5,
      'PRS',6,
      'DQI',7,
      'STA',8,
      'SPH',9,
      'DRT',10,
      'LST',11,
      'PRN',12,
      'REL',13,
      'DRL',14,
      'DEL',15,
      'EDI',16,
      'COO',17,
      'DCO',18,
      'RAD',19,
      'RAE',20,
      'RTR',21,
      'RDT',22,
      'QST',23,
      'DDT',24,
      'DSM',25,
      'DAL',26,
      'DQS',27,
      'PMJ',28,
      'PML',29,
      'PST',30,
      'BLT',31,
      'UBT',32,
      'ISI',33,
      'ROQ',34,
      'REQ',35,
      'RRT',36,
      'RET',37,
      'NPD',38,
      'NPC',39,
      'DUR',40,
      'DRT',41,
      'DOI',42,
      'DOT',43,
      'ESM',44,
      0,17,
      0,18,
      1,1,2,1,3,1,4,1,
      1,2,2,2,3,2,4,2,5,2,6,2,
      1,3,2,3,
      0,4,
      0,5,
      1,6,2,6,
      2,7,1,7,
      0,8,
      0,9,
      0,19,
      1,10,2,10,
      1,11,2,11,3,11,4,11,5,11,
      1,12,2,12,3,12,4,12,5,12,6,12,7,12,
      1,13,2,13,
      1,14,2,14,3,14,4,14,
      0,15;


VAR   FNT_ARRAY              : ARRAY[1..CRFNT_SIZE SHIFTLL 1] OF BYTE;

INIT  FNT_ARRAY              =              "
      'USP001',
      'RDF',0,0,0,
      'TCT001';


VAR   PTT_ARRAY              : ARRAY[1..CRPTT_SIZE SHIFTLL 1] OF BYTE;

INIT  PTT_ARRAY              =              "
      0,0,                                  "NOT USED
      51,0,                                 "LON
      63,0,                                 "LOF
      69,0,                                 "PEL
      69,0,                                 "PRL
      69,0,                                 "PES
      69,0,                                 "PRS
      107,0,                                "DQI
      255,0,                                "STA
      109,0,                                "SPH
      255,0,                                "DRT
      111,0,                                "LST
      255,0,                                "PRN
      113,0,                                "REL
      119,0,                                "DRL
      125,0,                                "DEL
      69,0,                                 "EDI
      127,0,                                "COO
      133,0,                                "DCO
      69,0,                                 "RAD
      69,0,                                 "RAE
      139,0,                                "RTR
      151,0,                                "RDT
      255,0,                                "QST
      157,0,                                "DDT
      161,0,                                "DSM
      255,0,                                "DAL
      165,0,                                "DQS
      255,0,                                "PMJ
      255,0,                                "PML
      255,0,                                "PST
      165,0,                                "BLT
      165,0,                                "UBT
      165,0,                                "ISI
      167,0,                                "ROQ
      175,0,                                "REQ
      183,0,                                "RRT
      165,0,                                "RET
      187,0,                                "NPD
      187,0,                                "NPC
      189,0,                                "DUR
      191,0,                                "DRT
      255,0,                                "DOI
      193,0,                                "DOT
      197,0,                                "ESM
      0,0,                                  "NOT USED
      0,0,                                  "NOT USED
      0,0,                                  "NOT USED
      0,0,                                  "NOT USED
      0,0,                                  "NOT USED
      205,0,                                "MISCELLANEOUS

      98,1,3,0,                             "LON
      151,1,6,0,
      227,1,5,0,
      123,1,6,0,
      223,1,4,0,
      220,1,3,0,

      98,1,3,0,                             "LOF
      151,1,6,0,
      116,1,7,0,

      129,1,5,0,                            "PEL/PRL/PES/PRS/EDI/RAD/RAE
      134,1,5,0,
      58,1,4,0,
      72,1,9,0,
      157,1,6,0,
      163,1,7,0,
      69,1,3,0,
      18,2,3,0,
      53,2,4,0,
      106,1,4,0,
      13,1,3,0,
      16,1,5,0,
      249,1,5,0,
      245,1,4,0,
      4,2,4,0,
      13,1,3,0,
      58,1,4,0,
      110,1,6,0,
      57,2,2,0,

      174,1,6,0,                            "DQI

      151,1,6,0,                            "SPH

      134,1,5,0,                            "LST

      134,1,5,0,                            "REL
      198,1,6,0,
      39,2,8,0,

      192,1,6,0,                            "DRL
      198,1,6,0,
      204,1,6,0,

      134,1,5,0,                            "DEL

      134,1,5,0,                            "COO
      32,1,8,0,
      204,1,6,0,

      25,1,7,0,                             "DCO
      180,1,12,0,
      40,1,12,0,

      134,1,5,0,                            "RTR
      139,1,6,0,
      145,1,6,0,
      85,1,6,0,
      21,2,5,0,
      91,1,7,0,

      134,1,5,0,                            "RDT
      58,1,4,0,
      52,1,6,0,

      14,2,4,0,                             "DDT
      52,1,6,0,

      14,2,4,0,                             "DSM
      52,1,6,0,

      8,2,6,0,                              "DQS/BLT/UBT/ISI/RET

      8,2,6,0,                              "ROQ
      174,1,6,0,
      101,1,5,0,
      62,1,7,0,

      8,2,6,0,                              "REQ
      174,1,6,0,
      101,1,5,0,
      26,2,7,0,

      81,1,4,0,                             "RRT
      18,2,3,0,

      33,2,6,0,                             "NPD/NPC

      254,1,6,0,                            "DUR

      1,1,5,0,                              "DRT

      6,1,7,0,                              "DOT
      1,1,5,0,

      151,1,6,0,                            "ESM
      21,1,4,0,
      47,2,6,0,
      1,1,5,0,

      170,1,4,0,                            "MISCELLANEOUS
      232,1,13,0,
      210,1,10,0,
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      0,0,0,0,                              "NOT USED
      57,2,2,0,                             "IF NO PROMPT TEXT EXIST

      #1E,8,'ACCEPT_ ',
      #1E,11,'ANO ENTRY_ ',0,
      #1E,3,#42,#54,LF,0,                   "BT LF
      #1E,7,'CLASS_ ',0,
      #1E,6,'CMND_ ',
      #1E,12,'COORDINATOR ',
      #1E,13,'COORDINATOR_ ',0,
      #1E,21,'COORDINATOR REMARKS_ ',0,
      #1E,9,'DIST TO_ ',0,
      #1E,5,'DTG_ ',0,
      #1E,12,'FIRST/LAST_ ',
      #1E,4,'FM_ ',
      #1E,15,'FORMATTED MSG_ ',0,
      #1E,6,'FROM_ ',
      #1E,10,'FROM DTG_ ',
      #1E,11,'HARD COPY_ ',0,
      #1E,4,'ID_ ',
      #1E,7,'INDEX_ ',0,
      #1E,6,'INFO_ ',
      #1E,10,'INT_DIST_ ',
      #1E,11,'LOGGED OFF',LF,0,             "CHANGE LF TO SPACE WHEN GET_DTG IS READY
      #1E,10,'LOGGED ON ',
      #1E,7,'MSG ID ',0,
      #1E,8,'MSG ID_ ',
      #1E,9,'MSG DTG_ ',0,
      #1E,9,'MSG SIC_ ',0,
      #1E,10,'PASSWORD_ ',
      #1E,10,'PREC ACT_ ',
      #1E,11,'PREC INFO_ ',0,
      #1E,6,'PROC_ ',
      #1E,10,'QUEUE ID_ ',
      #1E,21,'READY TO COORDINATE_ ',0,
      #1E,9,'RELEASE_ ',0,
      #1E,9,'RELEASED ',0,
      #1E,9,'REMARKS_ ',0,
      #1E,17,'RESTART FINISHED',LF,0,
      #1E,3,#52,#58,LF,0,                   "RX LF
      #1E,6,'RX/TX',LF,
      #1E,7,'RX/TX_ ',0,
      #1E,23,'SECURITY INTERROGATION',LF,0,
      #1E,5,'SIC_ ',0,
      #1E,8,'SPECAT_ ',
      #1E,10,'TABLE ID_ ',
      #1E,6,'TAPE_ ',
      #1E,9,'TERM ID_ ',0,
      #1E,6,'TEXT_ ',
      #1E,4,'TO_ ',
      #1E,8,'TO DTG_ ',
      #1E,12,'TO TERM ID_ ',
      #1E,10,'TRUNK ID_ ',
      #1E,14,'TX TO REL POS ',
      #1E,9,'USER ID_ ',0,
      #1E,5,'XMT_ ',0,
      #1E,2,'_ ';




LABEL REGION_ERR;


BEGIN                                       "
  R7=>SAVE00[7];                            "
  STC(6,ADDRESS(SAVE00[7])=>R7);            "SAVE REGISTERS

  ADDRESS(TCB_RCB)=>R0;                     "REF TO CREATION BLOCK
  SWITCH MON(REGION,RCREATE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        1=>R1;
        GOTO REGION_ERR;
      END;
  END;
  ADDRESS(TCB_NAME)=>R0;                    "ADDR TO CR NAME
  SWITCH MON (REGION,RENTER,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        2=>R1;
        GOTO REGION_ERR;
      END;
  END;
  0=>R1;                                    "START INDEX
  ADDRESS(TCB_ARRAY)=>R2;                   "FROM ADDR
  CRTCB_SIZE=>R3;                           "NO OF WORDS
  SWITCH MON (REGION,RPUTN,R0,R1,R2,R3,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        3=>R1;
        GOTO REGION_ERR;
      END;
  END;
  SWITCH MON (REGION,RLEAVE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        4=>R1;
        GOTO REGION_ERR;
      END;
  END;

  ADDRESS(CRT_RCB)=>R0;                     "REF TO CREATION BLOCK
  SWITCH MON(REGION,RCREATE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        5=>R1;
        GOTO REGION_ERR;
      END;
  END;

  ADDRESS(CRT_NAME)=>R0;                    "ADDR TO CR NAME
  SWITCH MON (REGION,RENTER,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        6=>R1;
        GOTO REGION_ERR;
      END;
  END;
  0=>R1;                                    "START INDEX
  ADDRESS(CRT_ARRAY)=>R2;                   "FROM ADDR
  CRCRT_SIZE=>R3;                           "NO OF WORDS
  SWITCH MON (REGION,RPUTN,R0,R1,R2,R3,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        7=>R1;
        GOTO REGION_ERR;
      END;
  END;
  SWITCH MON (REGION,RLEAVE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        8=>R1;
        GOTO REGION_ERR;
      END;
  END;

  ADDRESS(FNT_RCB)=>R0;                     "REF TO CREATION BLOCK
  SWITCH MON(REGION,RCREATE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        9=>R1;
        GOTO REGION_ERR;
      END;
  END;

  ADDRESS(FNT_NAME)=>R0;                    "ADDR TO CR NAME
  SWITCH MON (REGION,RENTER,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        10=>R1;
        GOTO REGION_ERR;
      END;
  END;
  0=>R1;                                    "START INDEX
  ADDRESS(FNT_ARRAY)=>R2;                   "FROM ADDR
  CRFNT_SIZE=>R3;                           "NO OF WORDS
  SWITCH MON (REGION,RPUTN,R0,R1,R2,R3,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        11=>R1;
        GOTO REGION_ERR;
      END;
  END;
  SWITCH MON (REGION,RLEAVE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        12=>R1;
        GOTO REGION_ERR;
      END;
  END;

  ADDRESS(PTT_RCB)=>R0;                     "REF TO CREATION BLOCK
  SWITCH MON(REGION,RCREATE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        13=>R1;
        GOTO REGION_ERR;
      END;
  END;

  ADDRESS(PTT_NAME)=>R0;                    "ADDR TO CR NAME
  SWITCH MON (REGION,RENTER,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        14=>R1;
        GOTO REGION_ERR;
      END;
  END;
  0=>R1;                                    "START INDEX
  ADDRESS(PTT_ARRAY)=>R2;                   "FROM ADDR
  CRPTT_SIZE=>R3;                           "NO OF WORDS
  SWITCH MON (REGION,RPUTN,R0,R1,R2,R3,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        15=>R1;
        GOTO REGION_ERR;
      END;
  END;
  SWITCH MON (REGION,RLEAVE,R0,R7):X2 TO
    ERR:                                    "
      BEGIN                                 "
        16=>R1;
        GOTO REGION_ERR;
      END;
  END;
  UNS(6,ADDRESS(SAVE00[0])=>R7);            "
  SAVE00[7]=>R7;                            "
  EXIT(R6);                                 "TERMINATE


REGION_ERR:
  R7=>R0;                                   "ERROR CODE
  MON(ERROR,R0,R1,R7);                      "
  0=>R0;                                    "ERROR CODE
  MON(TERMINATE,R0,R1,R7);                  "TERMINATE PROCESS
END;                                        "END PSM_INIT_REST
ENDMODULE