Write Hardware Register (WHR)/OP=65

Format

OP AF BF A Syllable

OP = 65

AF is the processor number and may be specified as an indirect field length. A value of 00 means that the instruction is for the current processor or for the whole system, a value of 01 to 16 defines Processor 1 through Processor 16. For any other value, the Overflow Flag will be set and no further action will be performed. A literal flag will cause an Invalid Instruction (IEX = 21) fault.
BF is the instruction variant and may be indirect.

BF Function
00 Reinstate List Address
01 Snap Pictures Address
Set Processor Snap Enable
02 Memory Error Report Address
03 Memory Area Status Table Address
04 Snap Pictures Address
Reset Processor Snap Enable
05 System IOCB Memory Area Base

All other BF values are reserved and will cause an Invalid Instruction (IEX = 26) fault if used.

The A Syllable is the address of the data field in memory. The address may be indexed, indirect or extended. If the final address controller data type is not UN, cause an Invalid Instruction (IEX = 03) fault.

If any of the address values contained in the A data field are invalid (undigits), cause an Address Error (AEX = 34) fault.

Function

The Write Hardware Registers instruction is used to initialize system pointers (hardware registers) that are needed by the operating system. Note that certain task states are loaded by the processor when executing this instruction. See Processor State for more details.

This instruction may only be executed with Privileged Enable set or an Invalid Instruction (IEX = 02) fault is reported.

BF = 00 Reinstate List Address

Use the A operand to locate the nine digit absolute memory base address of the Reinstate List array. See Compatibility Notes A.38. AF must equal 00 or an Invalid Instruction (IEX = 25) fault is reported. Recaculate any references based on the Reinstate List base address. See Compatibility Notes A.43.

BF = 01 Snap Picture Address/Snap Enable

Use the A operand to locate the nine digit absolute memory address of the Snap Picture for the specified processor. Processor Snap Enable for the specified processor will be set to one.

The software has to make sure tha the Snap Picture Address of a processor in the STOPPED mode has been initialized before the processor is allowed to go into INTERRUPTING mode.

BF = 02 Memory Error Report Address

Use the A operand and the AF field to locate the nine digit absolute memory address of the memory error report for the specified processor. Memory Error Report Enable for the specified processor will be set to one. Different processors have different requirements for the memory error report. See Compatibility Notes A.31.

BF = 03 Memory Area Status Table Address

Use the A operand to locate the nine digit absolute memory address of the Memory Area Status Table. AF must be 00 or an Invalid Instruction (IEX = 25) fault is reported. The Memory Area Status Table Address must be congruent to zero modulo 2 or an Invalid Instruction (IEX = 07) fault is reported. Recalculate any references based on this pointer.

It is up to the software to ensure that all but one processor are in the STOPPED mode when this instruction is executed. The hardware does not guarantee it.

BF = 04 Snap Picture Address/Snap Disabled

Use the A operand and the AF field to locate the nine digit absolute memory address of the Snap Picture for the designated processor. Processor Snap Enable for the designated processor is set to zero.

The software must ensure that the Snap Picture Address of a processor in STOPPED mode has been innitialized before the processor is allowed to go into INTERRUPTING mode.

BF = 05 System IOCB Memory Area Base

Use the A operand to locate the nine digit absolute memory address of the Base of the System IOCB memory Area. AF must equal 00 or Invalid Instruction (IEX = 25) fault is reported. The base must be congruent to zero modulo 10,000 or an Invalid Instruction (IEX = 07) fault is reported.

It is up to the software to ensure that all but one processor are in STOPPED mode when this instruction is executed. The hardware does not guarantee it.

Overflow and Comparison Flags

The Overflow Flag is set if the processor number specified by AF is greater than 16, otherwise it is reset.

The Comparison Flags are not affected by this instruction.

instructions/whr.txt · Last modified: 2013/11/08 07:43 by scott
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki