!*** MODULE $PR8NNDEF *** CDEC$ OPTIONS /NOALIGN PARAMETER PR8NN$_NICR = '00000019'X ! Next Interval Count Register PARAMETER PR8NN$_ICR = '0000001A'X ! Interval Counter Register PARAMETER PR8NN$_TODR = '0000001B'X ! Time of Year PARAMETER PR8NN$_PME = '0000003D'X ! Performance Monitor Enable PARAMETER PR8NN$_MCSTS = '00000026'X ! Machine Check Status Register PARAMETER PR8NN$_NICTRL = '00000080'X ! NMI and Interrupt Control Register PARAMETER PR8NN$_INOP = '00000081'X ! Interrupt Other Processor PARAMETER PR8NN$_NMIFSR = '00000082'X ! NMI Fault/Status Register PARAMETER PR8NN$_NMISILO = '00000083'X ! NMI Bus Silo PARAMETER PR8NN$_NMIEAR = '00000084'X ! NMI Error Address Register PARAMETER PR8NN$_COR = '00000085'X ! Cache On Register PARAMETER PR8NN$_REVR1 = '00000086'X ! Revision Register #1 PARAMETER PR8NN$_REVR2 = '00000087'X ! Revision Register #2 PARAMETER PR8NN$M_SID_LRCPU = '00800000'X PARAMETER PR8NN$M_RXDB_LAVL = '00000001'X PARAMETER PR8NN$M_RXDB_RAVL = '00000002'X PARAMETER PR8NN$M_RXDB_SENB = '00000004'X PARAMETER PR8NN$M_RXDB_UNI = '00000008'X PARAMETER PR8NN$M_RXDB_DKEY = '00000010'X PARAMETER PR8NN$M_RXDB_VKEY = '00000020'X PARAMETER PR8NN$M_RXDB_PCPU = '00000040'X PARAMETER PR8NN$M_RXDB_SLOW = '00000080'X PARAMETER PR8NN$M_RXDB_BOUN = '00000001'X PARAMETER PR8NN$M_RXDB_SP1 = '00000002'X PARAMETER PR8NN$M_RXDB_SP2 = '00000004'X STRUCTURE /PR8NNDEF/ UNION MAP PARAMETER PR8NN$S_SID_SERIAL = 16 PARAMETER PR8NN$V_SID_SERIAL = 0 ! Processor Serial Number PARAMETER PR8NN$S_SID_CPUREV = 7 PARAMETER PR8NN$V_SID_CPUREV = 16 ! CPU Revision Level PARAMETER PR8NN$S_SID_LRCPU = 1 PARAMETER PR8NN$V_SID_LRCPU = 23 ! Left/Right CPU bit PARAMETER PR8NN$S_SID_TYPE = 8 PARAMETER PR8NN$V_SID_TYPE = 24 BYTE %FILL (4) ! CPU Type Code END MAP MAP PARAMETER PR8NN$S_REVR2_CNSRV = 8 PARAMETER PR8NN$V_REVR2_CNSRV = 8 ! Console Revision Level PARAMETER PR8NN$S_REVR2_UWCS = 8 PARAMETER PR8NN$V_REVR2_UWCS = 16 ! WCS Revision Level PARAMETER PR8NN$S_REVR2_UCODE = 8 PARAMETER PR8NN$V_REVR2_UCODE = 24 BYTE %FILL (3) ! Microcode Revision Level END MAP ! ! Bit definitions for data returned by the GET_CPU_INFO console command ! through the RXDB IPR. ! ! The first group of names include bits that are similarly defined for ! both uniprocessor and dual processor configurations. The second group ! of names defines those bits that are specific to uniprocessor configurations. ! MAP PARAMETER PR8NN$S_RXDB_LAVL = 1 PARAMETER PR8NN$V_RXDB_LAVL = 0 ! Left CPU Available PARAMETER PR8NN$S_RXDB_RAVL = 1 PARAMETER PR8NN$V_RXDB_RAVL = 1 ! Right CPU Available PARAMETER PR8NN$S_RXDB_SENB = 1 PARAMETER PR8NN$V_RXDB_SENB = 2 ! Secondary CPU Enabled PARAMETER PR8NN$S_RXDB_UNI = 1 PARAMETER PR8NN$V_RXDB_UNI = 3 ! Uni-processor Configuration PARAMETER PR8NN$S_RXDB_DKEY = 1 PARAMETER PR8NN$V_RXDB_DKEY = 4 ! Diag Key Matched SID PARAMETER PR8NN$S_RXDB_VKEY = 1 PARAMETER PR8NN$V_RXDB_VKEY = 5 ! VMS Key Matched SID PARAMETER PR8NN$S_RXDB_PCPU = 1 PARAMETER PR8NN$V_RXDB_PCPU = 6 ! 'Primary' CPU designator PARAMETER PR8NN$S_RXDB_SLOW = 1 PARAMETER PR8NN$V_RXDB_SLOW = 7 BYTE %FILL (1) ! Slow/Fast designation END MAP MAP PARAMETER PR8NN$S_RXDB_BOUN = 1 PARAMETER PR8NN$V_RXDB_BOUN = 0 ! Bounded System Configuration PARAMETER PR8NN$S_RXDB_SP1 = 1 PARAMETER PR8NN$V_RXDB_SP1 = 1 ! Unused PARAMETER PR8NN$S_RXDB_SP2 = 1 PARAMETER PR8NN$V_RXDB_SP2 = 2 ! Unused BYTE %FILL (1) END MAP END UNION END STRUCTURE ! PR8NNDEF ! ! Field definitions for console interface thru RXCS/TXCS/RXDB/TXDB ! ! ! RXCS - Console to CPU status register ! ! 31 24 23 16 15 08 07 06 00 ! +--------------+--------------+---------------+----+----+--------+ ! | MBZ | MBZ | MBZ |DONE| IE | MBZ | ! +--------------+--------------+---------------+----+----+--------+ ! PARAMETER rxcs$m_int_enable = '00000040'X PARAMETER rxcs$m_n_done = '00000080'X STRUCTURE /n_rxcs_register/ UNION MAP INTEGER*4 rxcs$l_rxcs END MAP MAP PARAMETER rxcs$S_int_enable = 1 PARAMETER rxcs$V_int_enable = 6 ! Interrupts enabled PARAMETER rxcs$S_n_done = 1 PARAMETER rxcs$V_n_done = 7 ! Operation done BYTE %FILL (1) END MAP END UNION END STRUCTURE ! n_rxcs_register ! ! RXDB - Console to CPU communication ! ! 31 24 23 16 15 14 12 11 08 07 00 ! +--------------+--------------+--+-------+--------+-------------+ ! | MBZ | MBZ |ER| MBZ | ID | DATA FIELD | ! +--------------+--------------+--+-------+--------+-------------+ ! PARAMETER rxdb$m_error = '00008000'X PARAMETER rxdb$k_opa0_data = '00000000'X ! 0 Local terminal read ascii data PARAMETER rxdb$k_csa1_data = '00000001'X ! 1 Drive 1 data binary data PARAMETER rxdb$k_csa3_data = '00000002'X ! 2 Drive 3 data binary data PARAMETER rxdb$k_opa4_data = '00000003'X ! 3 Local term (nolog) read ascii data PARAMETER rxdb$k_csa2_data = '00000004'X ! 4 Drive 2 data binary data PARAMETER rxdb$k_csm_cksum = '00000005'X ! 5 PARAMETER rxdb$k_opa5_data = '00000006'X ! 6 Remote terminal read ascii data PARAMETER rxdb$k_csax_status = '00000007'X ! 7 CSAx status byte binary data PARAMETER rxdb$k_cons_vax = '00000008'X ! 8 Misc message see data below PARAMETER rxdb$k_get_cpu_data = '00000009'X ! 9 Get-CPU-Data response binary data PARAMETER rxdb$k_csm_cmd = '0000000A'X ! A Cons support ucode cmd function code PARAMETER rxdb$k_csm_data = '0000000B'X ! B Console support data binary data PARAMETER rxdb$k_spare_c = '0000000C'X ! C spare PARAMETER rxdb$k_toy_data = '0000000D'X ! D TOY clock data binary data PARAMETER rxdb$k_spare_e = '0000000E'X ! E spare PARAMETER rxdb$k_decnet_data = '0000000F'X ! F DECnet data binary data ! PARAMETER rxdb$k_env_alert = '00000000'X ! Environmental Alert PARAMETER rxdb$k_csa1_status = '00000001'X ! CSA1 Status PARAMETER rxdb$k_csa2_status = '00000002'X ! CSA2 Status PARAMETER rxdb$k_rem_port_status = '00000003'X ! Remote Port Status PARAMETER rxdb$k_console_status = '00000004'X ! Console Status PARAMETER rxdb$k_csa3_status = '00000005'X ! CSA3 Status PARAMETER rxdb$k_spare_6 = '00000006'X ! spare PARAMETER rxdb$k_toy_pe = '00000007'X ! TOY clock protocol error PARAMETER rxdb$k_emm_status = '00000008'X ! EMM status inquiry response ! Insert new console-to-vax message types above this line PARAMETER rxdb$k_max_type = '00000009'X ! Highest defined console-to-VAX message type ! PARAMETER rxdb$k_emm_blower = '00000000'X ! Blower out PARAMETER rxdb$k_emm_yellow = '00000001'X ! Yellow zone warning PARAMETER rxdb$k_emm_red = '00000002'X ! Red zone warning ! PARAMETER rxdb$k_success = '00000000'X ! Success, note low bit clear PARAMETER rxdb$k_io_error = '00000001'X ! POS IO Error, RMS Code follows PARAMETER rxdb$k_open_error = '00000002'X ! Failure to OPEN PARAMETER rxdb$k_io_blk_error = '00000003'X ! QIO completion code follows PARAMETER rxdb$k_qio_error = '00000004'X ! QIO completion code follows PARAMETER rxdb$k_write_error = '00000005'X ! Can't write to hard disk ! PARAMETER rxdb$k_carrier_present = '00000000'X ! PARAMETER rxdb$k_carrier_absent = '0000000F'X ! hex F PARAMETER rxdb$k_console_present = '00000000'X ! PARAMETER rxdb$k_console_absent = '0000000F'X ! hex F - about to be absent STRUCTURE /n_rxdb_register/ UNION MAP INTEGER*4 rxdb$l_rxdb END MAP MAP UNION MAP BYTE rxdb$b_data ! Data byte END MAP MAP PARAMETER rxdb$S_msg = 4 PARAMETER rxdb$V_msg = 0 PARAMETER rxdb$S_msg_type = 4 PARAMETER rxdb$V_msg_type = 4 BYTE %FILL (1) END MAP END UNION PARAMETER rxdb$S_id = 4 PARAMETER rxdb$V_id = 8 PARAMETER rxdb$S_error = 1 PARAMETER rxdb$V_error = 15 BYTE %FILL (1) INTEGER*2 %FILL END MAP END UNION ! ! Constant definitions for id field ! ! Valu Function Name Data Field ! Constant values for data byte message type field ! ! Definitions for MESSAGE data byte field for environmental alert. ! ! Definitions for MESSAGE data byte for CSA1/CSA2/CSA3 Status ! ! Constant definitions for Remote Port and Console status. ! END STRUCTURE ! n_rxdb_register ! ! TXCS - Console to CPU status register ! ! 31 24 23 16 15 08 07 06 00 ! +--------------+--------------+---------------+----+----+--------+ ! | MBZ | MBZ | MBZ |DONE| IE | MBZ | ! +--------------+--------------+---------------+----+----+--------+ ! PARAMETER txcs$m_int_enable = '00000040'X PARAMETER txcs$m_ready = '00000080'X STRUCTURE /n_txcs_register/ UNION MAP INTEGER*4 txcs$l_txcs END MAP MAP PARAMETER txcs$S_int_enable = 1 PARAMETER txcs$V_int_enable = 6 ! Interrupts enabled PARAMETER txcs$S_ready = 1 PARAMETER txcs$V_ready = 7 ! Data register ready BYTE %FILL (1) END MAP END UNION END STRUCTURE ! n_txcs_register ! ! TXDB - CPU to Console communication ! ! 31 24 23 16 15 14 12 11 08 07 00 ! +--------------+--------------+--+-------+--------+-------------+ ! | MBZ | MBZ |ER| MBZ | ID | DATA FIELD | ! +--------------+--------------+--+-------+--------+-------------+ ! PARAMETER txdb$m_error = '00008000'X PARAMETER txdb$k_opa0_data = '00000000'X ! 0 Local terminal write ascii data PARAMETER txdb$k_csa1_data = '00000001'X ! 1 Drive 1 data binary data PARAMETER txdb$k_csa3_data = '00000002'X ! 2 Drive 3 data binary data PARAMETER txdb$k_opa4_data = '00000003'X ! 3 Nolog term/diag writ ascii/binary data PARAMETER txdb$k_csa2_data = '00000004'X ! 4 Drive 2 data binary data PARAMETER txdb$k_uns_csm_data = '00000005'X ! 5 Unsolicited CSM data csm status PARAMETER txdb$k_opa5_data = '00000006'X ! 6 Remote terminal write ascii data PARAMETER txdb$k_diagnostic = '00000007'X ! 7 PARAMETER txdb$k_decnet_data = '00000008'X ! 8 DECnet data binary data PARAMETER txdb$k_drive_cmd = '00000009'X ! 9 Drive (CSA1/2/3) command function code PARAMETER txdb$k_csm_cmd = '0000000A'X ! A Cons support ucode cmd function code PARAMETER txdb$k_csm_data = '0000000B'X ! B Console support data binary data PARAMETER txdb$k_csm_cksum = '0000000C'X ! C CSM checksum binary data PARAMETER txdb$k_toy_data = '0000000D'X ! D TOY clock data binary data PARAMETER txdb$k_spare_e = '0000000E'X ! E (unused) PARAMETER txdb$k_misc_comm = '0000000F'X ! F Miscellaneous command command code ! PARAMETER txdb$k_csa1_cmd = '00000000'X ! csa1 command PARAMETER txdb$k_csa2_cmd = '00000001'X ! csa2 command PARAMETER txdb$k_csa3_cmd = '00000002'X ! csa3 command ! PARAMETER txdb$k_read_sector = '00000000'X ! PARAMETER txdb$k_write_sector = '00000001'X ! PARAMETER txdb$k_read_status = '00000002'X ! ! PARAMETER txdb$k_software_done = '00000001'X ! 1 - Software is done PARAMETER txdb$k_boot_this_cpu = '00000002'X ! 2 - Boot this cpu PARAMETER txdb$k_clear_warm_start = '00000003'X ! 3 - Clear warm start flag PARAMETER txdb$k_clear_cold_start = '00000004'X ! 4 - Clear cold start flag PARAMETER txdb$k_boot_other_cpu = '00000005'X ! 5 - Boot (restart) other cpu PARAMETER txdb$k_unjam = '00000006'X ! 6 - UNJAM command PARAMETER txdb$k_loadnboot = '00000007'X ! 7 - @LOADNBOOT PARAMETER txdb$k_toy_read = '00000008'X ! 8 - Read TOY register PARAMETER txdb$k_toy_write = '00000009'X ! 9 - Write TOY register PARAMETER txdb$k_disable_sec = '0000000A'X ! A - Disable secondary PARAMETER txdb$k_emm_status_inq = '0000000B'X ! B - EMM Status Inquiry PARAMETER txdb$k_force_next_prim = '0000000C'X ! C - Force next primary to opposite PARAMETER txdb$k_get_cpu_info = '0000000D'X ! D - Get CPU Information request STRUCTURE /n_txdb_register/ UNION MAP INTEGER*4 txdb$l_txdb END MAP MAP UNION MAP BYTE txdb$b_data ! Data byte END MAP MAP PARAMETER txdb$S_msg = 4 PARAMETER txdb$V_msg = 0 PARAMETER txdb$S_msg_type = 4 PARAMETER txdb$V_msg_type = 4 BYTE %FILL (1) END MAP END UNION PARAMETER txdb$S_id = 4 PARAMETER txdb$V_id = 8 ! ID field PARAMETER txdb$S_error = 1 PARAMETER txdb$V_error = 15 BYTE %FILL (1) ! Error flag INTEGER*2 %FILL ! unused, must be zero END MAP END UNION ! ! Constant definitions for id field ! ! Valu Function Name Data Field ! Definitions for data byte fields for CSAx command message type ! ! Definitions for data byte field for csax_cmd message ! ! Definitions for data byte field for miscellaneous communications. ! END STRUCTURE ! n_txdb_register ! ! Definitions for data byte field for unsolicited CSM data. ! PARAMETER txdb$m_csm_trap_flag = '00000080'X STRUCTURE /csm_unsolicited_data/ UNION MAP BYTE %FILL END MAP MAP PARAMETER txdb$S_halt_code = 7 PARAMETER txdb$V_halt_code = 0 ! Halt code if flag=1 PARAMETER txdb$S_csm_trap_flag = 1 PARAMETER txdb$V_csm_trap_flag = 7 BYTE %FILL (1) ! 0=TOMM, 1=HALT END MAP END UNION END STRUCTURE ! csm_unsolicited_data CDEC$ END OPTIONS