Initial commit (a clone of the jsmachines project as of v1.15.3)

This commit is contained in:
jeffpar 2014-09-27 14:52:57 -07:00
commit a5e3e6a59d
714 changed files with 130602 additions and 0 deletions

View file

@ -0,0 +1,32 @@
Intel 80286 CPU Documentation
---
### 80286 Errata
* [ARPL Behavior](arpl/)
* [Coprocessor Operand Beyond Segment Limit](b2_b3_information/#coprocessor-operand-partially-beyond-limit-of-erc-segment)
* [Instructions Longer than 10 Bytes](long_instructions/)
* [Loading Null Selector Values Into DS or ES Registers](b2_b3_information/#loading-null-selector-values-into-ds-or-es-registers)
* [Non-Restartable Protection Violations](b2_b3_information/#non-restartable-protection-violations)
* [POPF Behavior](b2_b3_information/#popf-behavior)
* [REP MOVS and REP INS Restartability](rep_restartability/)
* [Early 80286 Errata of Interest](exceptions_and_early_errata/#early-80286-errata-of-interest)
### 80286 Undocumented Opcodes
* [LOADALL](loadall/)
### 80286 Real-Mode Emulation Notes
* [Executing Real Mode Programs in Protected Mode](executing_real_mode_programs_in_protected_mode/)
* [Discrepancies from an iAPX 86/88 Using Emulation](executing_real_mode_programs_in_protected_mode/#discrepancies-from-an-iapx-86-88-using-emulation)
* [Extending the Address Space of Current iAPX 86 Software](executing_real_mode_programs_in_protected_mode/#extending-the-address-space-of-current-iapx-86-software)
* [Mixing Real Mode and Protected Mode](executing_real_mode_programs_in_protected_mode/#mixing-real-mode-and-protected-mode)
* [Exceptions from Undefined Opcodes and String Instructions](exceptions_and_early_errata/)
### Assorted Publications
![iAPX 286 Hardware Reference (1983)](../static/iAPX_286_Hardware_Reference--1983/thumbs/iAPX_286_Hardware_Reference--1983.jpg "link:http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/1983_iAPX_286_Hardware_Reference.pdf:200:260")
![iAPX 286 OS Writer's Guide (1983)](../static/iAPX_286_Operating_System_Writers_Guide--1983/thumbs/iAPX_286_Operating_System_Writers_Guide--1983.jpg "link:http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/1983_iAPX_286_Operating_System_Writers_Guide.pdf:200:260")
![iAPX 286 Programmer Reference (1985)](../static/iAPX_286_Programmers_Reference_Manual--1985/thumbs/iAPX_286_Programmers_Reference_Manual--1985.jpg "link:http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/1985_iAPX_286_Programmers_Reference_Manual.pdf:200:260")
![80286/80287 Programmer Reference (1987)](../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 1.jpeg "link:progref/:200:260")

View file

@ -0,0 +1,11 @@
ARPL (63H)
---
When the second operand of the ARPL instruction (as described in the iAPX286 Programmer's Reference Manual) is a null
selector, the ARPL instruction generates exception 13. This behavior of the ARPL instruction has not been previously described,
but will be described in future revisions of the "iAPX286 Programmer's Reference Manual."
This functionality of the ARPL is not believed not to be a problem, and there are no plans to change this functionality
of the ARPL instruction.
[This information is from an Intel document titled "80286 ARPL and Overlength Instructions, 15 October 1984"]

View file

@ -0,0 +1,193 @@
80286 (B-2/B-3) Information
---
This applies to S-spec #40093 and to S-spec #54012 of the 80286, since they contain a (B-2/B-3) stepping of the 80286.
Their complete parametric specifications are given by the datasheet in the 1984 Intel Microsystem Components Handbook,
order number 230843.
### Errata Items
Below are full descriptions of any problem the 80286(8-2/B-3) is known to have, for your information when using this
powerful processor. These items will be corrected in subsequent versions of the 80286:
#### Pullup Busy and Error Inputs
> The BUSY and ERROR inputs do not have internal pullup resistors. If these inputs are left unconnected,
the 80286 may stop execution or perform interrupt 16 when an ESC or WAIT instruction is executed. This problem
is avoided by connecting 20K pullup resistors from Vee to these inputs. These pullup resistors will assure that
WAIT and ESC instructions are handled properly when an 80287 is not present. This change is compatible with
later versions of the 80286 which will include internal pullups on those two pins.
#### Coprocessor Operand Partially Beyond Limit of ERC Segment
> This is a possible minor limit violation involving the 80287 coprocessor that goes undetected by the 80286.
If a coprocessor operand is read from an "executable and readable and conforming" (abbreviated ERC) code segment,
and the coprocessor operand is sufficiently near the segment's limit that the second or subsequent byte lies outside
the limit, no protection exception #9 will be generated. Note that this occurs only when at least the first byte of
the coprocessor's operand lies within a valid ERC code segment. If any other type of segment is involved then
exception #9 is properly generated. If the operand is entirely outside its segment limit, an exception #13 is
properly generated.
#### CLK Input Requirements
> CLK rise and fall times are specified as 7ns maximum, and V(ilc) is specified as 0.4V maximum. Note that 82284's
produced while this stepping of 80286 was in production were tested to meet these temporary requirements of the 286
CLK input.
#### POPF Behavior
> This errata has no effect when interrupts are enabled in either Real Mode or Protected Mode. This errata has no
effect in Protected Mode when CPL > IOPL.
> If the 80286 executes a POPF instruction while interrupts are disabled in either Real Address Mode, or Protected
Mode with CPL < IOPL, then a pending maskable interrupt (INTR pin active) may be improperly recognized after executing
the POPF instruction even if maskable interrupts were disabled before the POPF instruction and the value popped had
IF=0. If the interrupt is improperly recognized, the interrupt is still correctly processed.
> The occurrence of this errata may be slightly affected by the number of wait states during the data-read bus cycle
of the POPF, and by even- or odd-address alignment of stack words. Two additional wait states (after memory-read-data
is valid) added to memory-data-read bus cycles will eliminate the errata, but will incur a performance penalty.
#### Don't Remove Interrupt Signal Early
> When the INTR is activated and external interrupts are enabled, INTR must be held active until the CPU performs the
first INTA bus cycle to process the external interrupt, or else unpredictable CPU behavior could occur. See additional
information [below](./#background-on-early-intr-signal-removal).
#### Nested Interrupts
> When the 80286 is in protected mode, and processes an external interrupt or INT instruction which references an
Interrupt Gate in the IDT, an external interrupt activating the INTR input will be processed if the INTR pin remains
active or goes active anytime between the fifth and tenth bus cycles after the second INTA bus cycle for the first
interrupt. Normally, if an external interrupt references an Interrupt Gate in the IDT, then no further interrupts are
processed, until interrupts are re-enabled within the service routine or by the IRET instruction at the end of the
service routine. Because of this errata, an interrupt routine in protected mode may be interrupted before its first
instruction if the INTR input is active again during the "window" described above.
#### Non-Maskable Interrupt
> When INTR goes active, and then NMI goes active slightly later, exactly during the last internal clock period of the
instruction prior to the INTR being processed, the NMI is not recognized. The probability of this occurring from
asynchronous INTR and NMI events is very unlikely. However, if the same event can activate INTR and NMI, ensure the
NMI pin is activated 10ns before the INTR.
#### Non-Restartable Protection Violations
> The details of this are primarily of interest to an operating system writer.
> The protection violations involved usually indicate a probable software bug and restart is not desired if one of these
violations occurs. In a Protected Mode 80286 system with wait states during any bus cycles, when certain protection
violations are detected by the 80286 component, and the component transfers control to the exception handling routine,
the contents of the CX register may be unreliable. (Whether CX contents are changed is a function of bus activity at the
time internal microcode detects the protection violation.)
> Note that any "not present" exception when a CS, SS, DS or ES segment is "not present" is entirely restartable, for
virtual memory implementation. The protection violations which could lead to unreliable CX contents are below and note
again these violations usually indicate a software bug. Therefore restart is not usually desired after these protection
violations:
> 1. exception #GP(O) from attempted access to data segment or extra segment when the corresponding segment register holds a null selector;
> 2. exception #GP(O) from attempted data read from code segment when code segment has the "execute-only" attribute;
> 3. exception #GP(O) from attempted write to code segment (code segments are not writable), or to data segment or extra segment if the data or extra segment has the "read-only" attribute;
> 4. exception #NP(selector) from attempted load of a selector referencing the local descriptor table into CS, DS, or ES, when the LDT is not present (or exception #SS(selector) if SS);
> 5. exception #GP(O) from attempted input or output instruction when CPL [?] IOPL;
> 6. exception #GP(selector) from attempted access to a descriptor in GDT, LDT, or IDT, beyond the defined limit of the descriptor table;
> 7. exception #GP(O) from attempted read or write (except for "PUSH" onto stack) beyond the defined limit of segment.
> The following protection violation below may also lead to unreliable CX register contents. The following protection violation
is designed to be restartable for dynamically growable stacks, but due to the errata, is not restartable on this stepping in a
system which has wait states in any bus cycles (for example, refresh cycles in system with dynamic memory):
> 8. exception #SS(O) from attempted "PUSH" below the defined limit of the stack segment (restart allows dynamically growable stack segments).
> Notations used above (the value in parentheses indicates the type of error code pushed on exception handler's stack):
> * exception #NP() = exception #11 = Not-Present Fault
> * exception #SS() = exception #12 = Stack Fault
> * exception #GP() = exception #13 = General Protection Fault
#### Loading Null Selector Values Into DS or ES Registers
> This isn't usually a problem, since any of the 4 null selector values are equivalent in purpose. Just be aware of it:
in Protected Mode, when any of the 4 null selector values (the 4 possible null selectors are 0000H, 0001H, 0002H and 0003H)
are loaded into DS or ES registers via a MOV or POP instruction or a task switch, note the 80286 always loads the null
selector 0000H into the corresponding registers. The 80286 will be improved to load all 4 null selector values literally.
In Real Mode all values loaded into DS or ES are of course loaded unaltered.
> ##### Background
> In Protected Mode, the null selector is any selector whose Index bits and Table Indicator bit are all zero. Since the
2-bit RPL field may be 00, 01, 10 or 11, there are 4 possible null selectors. In hex format, the 4 possible null selectors
are 0000H, 0001H, 0002H and 0003H. They all serve as "null" values, and a general protection violation correctly occurs
if software attempts to access the data segment or extra segment when a null selector is in the corresponding segment register.
### Documentation Corrections
> These items are documentation errors to be corrected as soon as possible. Accurate descriptions below are for your information.
#### Single-Stepping The "INT n" Instruction
> To prevent application software from invoking privileged system interrupt routines with the trap flag (single-step flag)
set, the "INT n" instruction disables the Trap Flag if it was previously set. This applies to Real Address mode as well as
Protected Mode, from the B-2 stepping onward. This prevents applications programs from invoking privileged interrupt routines
with the TF set, causing single-stepping of operating system interrupt routines which may be time-critical, for example.
The "INT n" instruction pushes the original flag word (before disabling TF), pushes the CS and IP pointing to the next
instruction, then disables the Trap Flag before executing the interrupt routine. However, debuggers which single-step through
code can still single-step within an interrupt routine called by the "INT n" instruction by recognizing the "INT n" opcode and
emulating the "INT n" function (e.g. push Flags, CS, IP, and set CS:IP per the value found in the nth interrupt vector or
IDT descriptor). Debuggers which emulate the "INT n" are backward compatible to earlier 80286 steppings, to the 80186, and 8086.
#### LOCK Signal During INTA Cycles
> This does not affect the 8259A interrupt controller. From the (B-2) stepping onward, the 286 LOCK signal is active during
both INTA cycles of the Interrupt Acknowledge sequence (on earlier steppings, the LOCK signal was active only on the first
INTA cycle). Internal circuit design necessitated this correction. LOCK asserted means "lock this cycle TO THE NEXT bus cycle."
Therefore the (B-2) and later steppings lock the two INTA cycles to the first stack push of the interrupt processing sequence.
Doing so is no problem. However, custom interrupt controllers may be affected if they use the state of LOCK to distinguish
the first and second INTA cycles. Custom hardware designers note you can deactivate the INTR signal to the 80286 anytime
during either INTA cycle, and the vector may be placed on the data bus during both cycles although the 80286 only reads
the vector during the second INTA cycle.
#### Instructions Longer Than 10 Bytes
> Instructions longer than 10 bytes occur only by using the assembler to intentionally place multiple redundant prefixes
(e.g. multiple lock prefixes and/or segment override prefixes) before valid opcode bytes. On all 80286 components,
in Real Address Mode or Protected Mode, when the 80286 detects an instruction that is illegal solely due to being greater
than 10 bytes in length, it generates an exception #13 (General Protection Exception) rather than exception #6 (Invalid Opcode)
as previously described. Note that undefined opcodes do generate exception #6 (Invalid Opcode) as described.
#### ARPL Instruction
> On any 80286 component, when the second operand of the ARPL instruction is a null selector, the instruction generates
an exception #13. This is not a problem since the RW operand contains the RPL bits used only as a "standard" for comparison,
and the EW operand is the actual selector whose RPL bits are subject to adjustment. Ensure the RW operand does not have all
its bits 15-2 equal to "0", since that makes it a null selector value. This is easy to avoid since only RW bits 0 and 1 are
used for comparison; bits 15-2 can be anything but all zeroes.
### Background on Early INTR Signal Removal
> When the INTR is activated and external interrupts are enabled, INTR must be held active until the CPU performs the first
INTA bus cycle to process the external interrupt. Failure to keep the INTR active until the first INTA cycle occurs could
cause unpredictable CPU behavior. When this errata is corrected, failure to keep the INTR input active will only possibly
prevent the external interrupt from being recognized.
> Some I/O devices may allow their interrupt output output to go inactive after previously signalling an interrupt.
For example, the 8253 or 8254 timer used for real-time clocks can remove the interrupt request if not serviced early enough
(even if the 8259A interrupt controller is in edge-triggered mode).
> When using the 8259A Priority Interrupt controller, below are several cases in which an active 8259A INT output will go
inactive, possibly before the 80286 CPU generates its first INTA cycle to process the interrupt. Both cases below can be
handled if the 80286 interrupts are always disabled before programming the interrupt controller.
> 1. The interrupt request seen by the CPU can also be removed by the 8259A interrupt controller even though the interrupt
> from the I/O device remains active. For example, system software may mask an 8259A interrupt input just after the I/O device
> asserts it. The net effect is an INTR signal at the 80286 that goes active then inactive. (even if the 8259A is in edge-triggered mode);
> 2. The 8259A INT output will go inactive for about the duration of the write pulse when the CPU writes an OCW3
> (operation control word 3) which selects the IRR (interrupt request register),
> The default interrupt function of the 8259A will guarantee a proper vector for IR7, the default interrupt, if at the time INTA
is performed no unmasked interrupt is active. The interrupt handler for IR7 can read ISR7 of the 8259A to tell if this was a real
interrupt on IR7. The ISR7 bit will be 0 if at the time the interrupt was acknowledged, no unmasked IR inputs of the 8259A were
active ("phantom" interrupt).
[This information is from a 7-page Intel document titled "80286(B-2/B-3) Information Sheet, 21 November 1984"]

View file

@ -0,0 +1,97 @@
Exceptions from Undefined Opcodes and String Instructions
---
The exception 13 handler will probably use a lookup table for the opcode byte of the instruction causing exception
13 to determine the correct action for this instruction. In general, any undefined opcode causes exception 6 and
would therefore not invoke exception 13. However, some implementations may emulate some instructions. The following
explains the empty entries in the opcode map to aid in determining an emulation strategy.
The following is a list of exclusions from the general rule of undefined 80286 opcodes causing exception 6.
* The [LOADALL](../loadall/) instruction (opcode 0F04H) will cause exception 13 in protected mode if executed when
CPL is not 0. [LOADALL](../loadall/) may be executed at any time in real address mode.
* The 0F05H opcode will cause exception 13 in protected mode if executed when CPL is not 0. If 0F05H is executed
in real address mode, or in protected mode when CPL=O, the 80286 stops normal execution. RESET must be used to
restart the CPU in this case. The 0F05H opcode may be executed at any time in real address mode.
* The opcode 82H is an alias for opcode 80H.
* The 0D0H/0D1H opcode with a REG field = 6 is an alias for the SHL instruction (REG = 7).
* The opcode 0D6H is a proprietary single byte instruction. No restrictions apply to its execution.
It can be emulated as a NOP.
* The 0F1H opcode is a prefix which performs no function. It counts like any other prefix towards the maximum
instruction length. No restrictions apply to its execution.
* The 0F6H/0F7H opcode with a REG field = 1 is an alias for the TEST instruction (REG=0).
Restarting string instructions which caused exception 12 (if SS override was used) or exception 13 requires updating
SI, DI, and CX (if repeat was used). Which registers are updated depends on the instruction and when the exception was
detected. The following rules apply:
* For STOS, the DI register must always be updated by the exception handler to restart tne instruction.
The state of the DF bit in the flag word and the operand size determines whether to use +2, +1, -1, or -2 to
update DI. If a repeated STOS was used, add 2 to CX to restart the instruction.
* For INS, the DI register must always be updated by the exception handler to restart the instruction. The state
of the DF bit in the flag word and the operand size determines whether to use +2, +1, -1, or -2 to update DI.
If a repeated INS was used, increment CX to restart the instruction. If exception 13 was not caused by an invalid
IOPL during the first I/O read, then increment CX again if INS was repeated.
* For SCAS, the SI register must always be updated by the exception handler to restart the instruction.
The state of the DF bit in the flag word and the operand size determines whether to use +2, +1, -1, or -2 to
update SI. If SCAS was repeated, add 2 to CX to restart it.
* For OUTS, the SI register must always be updated by the exception handler to restart the instruction. The state
of the DF bit in the flag word and the operand size determines whether to use +2, +1, -1, or -2 to update SI.
If OUTS was repeated, add 2 to CX to restart it. Note that exception 13 may have been caused by an insufficient IOPL.
* For MOVS, the SI register must always be updated by the exception handler to restart the instruction. The state
of the DF bit in the flag word and the operand size determines whether to use +2, +1, -1, or -2 to update SI.
The DI register must also be updated if the source operand (i.e. DS:SI or seg:SI if a segment override prefix was
used) did not cause the exception. After updating SI, look at the source operand address to see if exception 13
would occur. If not, then DI must also be updated the same as SI. Always increment CX to restart MOVS if it was
repeated. IF DI was updated and a repeat prefix was used, then CX must be incremented again for correct instruction
restart.
* For CMPS, the DI register must always be updated by the exception handler to restart the instruction. The state
of the DF bit in the flag word and the operand size determines whether to use +2, +1, -1, or -2 to update DI.
The SI register must also be updated if the ES:DI operand did not cause the exception. After updating DI, look at
ES:DI to see if exception 13 would occur. If not, then SI must also be updated the same as DI. Increment CX if
CMPS was repeated to restart it. IF SI was updated and a repeat prefix was used, then CX must be incremented for
correct instruction restart.
Early 80286 Errata of Interest
---
Early versions of the 80286 have several errata items which may effect the implementation of software to emulate an
8086/8088 on a protected mode 80286 or expansion of the address space in real mode. These errata are in the A1 and B1
steppings of the 80286 and are fixed in later steppings of the 80286.
* If the ES register has a null selector or ES:DI exceeds the segment limit when executing either the non-repeated
MOVS or INS instructions, the saved CS:IP value seen by the exception 13 handler will point after the MOVS or
INS instruction. The saved CS:IP value in later steppings will point at the failed instruction (including prefixes).
* If the segment register used for the destination operand in either the POP to memory, FSTSW/FNSTSW, or
FSTCW/FNSTCW instructions has a null selector in it or the segment limit is violated, the saved CS:IP value
seen by the exception 13 (or 12 if SS override was used) handler will point after the POP/FSTSW/FNSTSW/FSTCW/FNSTCW
instruction. The saved CS:IP value in later steppings will point at the failed instruction (including prefixes).
* If the stack limit is violated by a PUSH from memory instruction, the saved CS:IP value seen by the exception 12
handler will point after the PUSH instruction. The saved CS:IP value in later steppings will point at the failed
PUSH instruction (including prefixes).
* If a segment limit violation or IOPL violation occurs in the repeated MOVS, INS, OUTS, CMPS, SCAS, or STOS
instructions, the value of CX seen by the exception 12 or 13 handler will be the value used at the start of the
instruction. The SI and DI register values will reflect the iterations used by the instruction. Later steppings
of the 80286 will assure the saved value of the CX register reflects the number of iterations performed.
* The [LOADALL](../loadall/) instruction may incorrectly enter protected mode. This only affects systems that use [LOADALL](../loadall/) while
in real mode and want to remain in real mode. Two possible workarounds are possible: execute [LOADALL](../loadall/) using
0-wait memory for the data values or be sure bit 0 of memory location 804H is zero. HOLD requests and processor
extension data transfers should be inhibited while [LOADALL](../loadall/) is running. Later steppings of the 80286 will correctly
load the MSW during [LOADALL](../loadall/) with HOLD and processor extension transfers.
[This information is from an undated 15-page Intel document titled "Undocumented iAPX 286 Test Instruction"]

View file

@ -0,0 +1,296 @@
Executing Real Mode Programs in Protected Mode
---
An iAPX 86/88 program using real mode addressing can be executed in protected mode with full protection between
it and other programs. All segment register semantics of iAPX 86 real mode can be emulated. The address space
of the real mode program can also be limited to less than 1 megabyte and be relocated anywhere in the 16 Megabyte
physical address space. The following sections describe several aspects of this emulation.
### Address space relocation and control ###
iAPX 86 real mode emulation requires any segment register load instruction cause a protection exception.
An error code with bits 1-0 being zero and bits 15-2 being non-zero identify a segment register load exception.
Such exceptions are restartable. All instructions that do not load a segment register run at full iAPX 286
speed and with full access checks.
The exception handler must interpret the segment register load instruction to place the iAPX 86 paragraph ID
and the associated protected descriptor into the [LOADALL](../loadall/) memory area. [LOADALL](../loadall/) then
loads the segment register with the value used by the interrupted instruction, points the descriptor cache entry
at the protected physical memory region, and restores the other segment registers.
Most segment load instructions will cause exception 13 if all LDT and GDT entries are marked with a privilege
level less than the CPL of the emulated program. The CPL of the emulated program is defined by the DPL fields
of the CS and SS descriptor caches.
Segment register loads using a selector value of 0000H to 0003H do not cause an exception on loading the
segment register. Instead, any memory reference using the segment register will cause exception 13 with an
error code of 0. No memory reference will occur. This case can be identified by checking whether DS or ES
contain a value of 0-3. These exceptions are also restartable.
Limits can be enforced on the size of the emulated iAPX 86 address space. An iAPX 86 paragraph ID that is outside
the defined memory area can be loaded, but the segment register can be marked invalid for memory addressing. [LOADALL](../loadall/)
can be used to load the iAPX 86 paragraph ID into the segment register, but the descriptor cache entry is marked
invalid. The paragraph ID can still be read without causing a protection exception.
If a selector value is loaded whose segment overruns the end of the defined physical memory area, the limit field
can be set less than 65535 to prevent accesses outside the defined memory area with that segment register.
The emulated iAPX 86/88 address space can be relocated anywhere in the 16 Mbyte iAPX 286 physical address space by
adding a 24-bit relocation factor to the 20-bit iAPX 86/88 physical address value associated with the iAPX 86
paragraph ID.
### iAPX 86/88 Interrupt Table Simulation ###
The [LOADALL](../loadall/) instruction allows a protected mode 80286 to provide a simulated iAPX 86/88 interrupt
table to iAPX 86/88 programs. The protected mode iAPX 286 interrupt table is different from iAPX 86/88 since it must
contain more information and be protected from improper use. The protected mode interrupt table cannot be
addressed by the same selector-offset pairs used in iAPX 86 real address mode.
The iAPX 86/88 interrupt table is simulated by having all INT instructions cause a protection exception.
Setting the DPL of all IDT gate entries to less than the CPL of the emulated program will cause exception 13
for all INT instructions. The error code will indicate an IDT vector with the EXT bit cleared. External
interrupts and program exceptions will continue to use the protected IDT.
The iAPX 86/88 INT instruction can be simulated by the exception 13 handler. For INT instructions, it looks
into the iAPX 86 interrupt vector table for the vector associated with the interrupt vector in the error code.
After simulating the machine state save, the iAPX 86/88 program is restarted at the interrupt vector address.
Interrupt handlers for external interrupts can pass control to an iAPX 86 real mode program. Each external
interrupt handler for an iAPX 86 interrupt must determine if the interrupt is for a real mode program; if so,
then it emulates a real mode interrupt the same way as for the INT instruction.
### Allowing writes into a code segment ###
Code segment writes are possible by using writable data segment descriptors for the CS cache entry.
Normally the code segment is write protected. If the code segment descriptor is always marked writable,
then writes using the CS prefix will work correctly.
### Allowing temporaries to be placed into segment registers ###
A temporary value which does not correspond to a valid segment causes exception 13. It is possible to place
that value into the program visible segment register, but mark the descriptor cache entry invalid. The invalid
descriptor lets the program reference the numeric value stored in the segment register value, (i.e. MOV AX,ES)
but prevents any memory reference instruction from using the segment register to address memory (i.e. MOV AX,ES:[BX]).
This feature requires an error handler to know that exception 13 with an error code which is an invalid segment
selector value indicates a potential temporary value problem. The exception handler must simulate the segment load
instruction to place the error code into the appropriate segment register and use [LOADALL](../loadall/) to mark the descriptor
cache entry invalid. The program may then be resumed after the segment load instruction.
### Simulating I/O ###
All I/O instructions of the iAPX 86 program can be simulated. When the IOPL (I/O privilege level) is less than
the CPL of the simulated iAPX 86 program, exception 13 will occur, with an error code of 0, on IN, OUT, STI, CLI,
and LOCK instructions. The exception handler can identify these instructions and emulate their actions. The
iAPX 86 program can then be restarted.
The LOCK instruction prefix causes exception 13 when CPL is greater than IOPL. For most systems, the LOCK prefix
could be ignored. Restarting the program after the LOCK prefix would be acceptable. In special cases, the LOCKED
instruction may need to be run with a lower CPL.
### Mixing emulated real mode software with native protected mode software ###
A system which emulates a real mode program may also run protected mode software. If the GDT and IDT has all
entries marked level 2 or less, the emulated program cannot use them if it runs at level 3. The emulated program
can have a task state segment associated with it. An LDT may be present if all entries are marked level 2 or less.
Normal protected mode tasks may use an LOT with entries at privilege level 3.
Interrupt handlers may use either task or interrupt/trap gates. All interrupt handlers using trap/interrupt
gates must execute at privilege level 2 or less. Interrupts that use task gates may run at any privilege level.
The register save operation of the task switch or interrupt handler will work without exceptions. The iAPX 86
paragraph IDs in the segment registers can be read without a protection exception. The segment registers can be
reloaded with protected selectors without a protection exception. Interrupting from a emulated iAPX 86 program
does not affect interrupt latency.
Returning from an interrupt requires some checks. The return from the interrupt handler must check whether an
iAPX 86 real mode program had been executing. If so, the return sequence must use the [LOADALL](../loadall/) instruction to reload
all the registers rather than the normal IRET instruction.
Depending on the iAPX 86 paragraph IDs used, the IRET instruction might not cause a protection exception on
returning to an emulated iAPX 86 program. The CS value of an interrupted iAPX 86 program saved on the stack or
in the TSS does not correctly identify the privilege level, normally 3, of the emulated iAPX 86 real mode program.
The privilege level of the interrupted program is determined by the RPL fields of the saved CS and SS selectors.
If these values are the same and refer to a visible code segment, the CPU could attempt to execute the protected
code segment at an incorrect address.
The interrupt handler should test whether an emulated iAPX 86 program was executing. An interrupted protected mode
program can be restarted in the normal manner while an emulated program requires [LOADALL](../loadall/).
### Emulating an 8087 with the 80287 ###
The instruction and data addresses saved in the protected mode 80287 environment area are in a different format
than from the 8087. In real mode, the 80287 environment is in the same format as the 8087. In protected mode,
the 80287 environment is changed to store 32-bit virtual pointers rather than 20-bit iAPX 86/88 physical addresses.
The 80287 can be used by both normal protected mode programs and emulated iAPX 86/88 real mode programs. The 80287
operates in either real mode or protected mode. The FSETPM instruction must be executed before starting a normal
protected mode program if the 80287 was in real mode. The 80287 must be reset, via the RESET pin, to reenter real
mode for an emulated iAPX 86/88 program after being used by a normal protected mode program. External hardware could
reset the part to reenter real-mode. The TS bit of the MSW can be used to monitor for the first ESCAPE instruction
executed in a program. The exception 7 handler can then determine what mode of operation is required in the 80287.
The 20-bit physical addresses kept by the 80287 for the instruction and data pointers will reflect the paragraph ID
in the program visible segment register and offset used by the ESC instruction to address memory. The descriptor
cache base and limit loaded by [LOADALL](../loadall/) is used to generate physical memory addresses for data transfers.
The WAIT instructions required by the 8087 before ESC instructions can be safely executed by the 80287.
Discrepancies from an iAPX 86/88 Using Emulation
---
An 80286 cannot exactly emulate an 8086/88 in all possible cases. Most differences are due to the extra protection
checks made in the 80286 which are not made in the 8086/88. The discrepancies listed here are minor enough that very
few programs will be affected.
1. The PUSH SP instruction pushes a different value on the iAPX 286 than on the iAPX 86,88,186. The value pushed
onto the stack by the 80286 is the value of SP before the push instruction executes. The value pushed onto the
stack by the 8086/88/186 is the SP value after the push instruction executes.
2. Shifts and rotates on the iAPX 286 mask the count to 5 bits. The iAPX 86/88 allows all 8 bits to be used.
The iAPX 186/188 also masks the shift count to 5 bits.
3. Segment wrap-around is not allowed on the 80286. Segment limit violations are not restartable in general on the
80286. Programs that rely on reading some special value when referencing non-existent memory may not be correctly
run.
Exceptions 9, 12, or 13 occur during attempts to wrap-around a segment depending on the location and type of
operand involved. All exception 12 cases can be emulated and the program restarted. Exception 13 or 12 that
occurs for an ESC instruction occurs before the 80286 or 80287 execute the instruction, and are therefore
restartable. Exception 9 cannot be restarted.
Most simple load and store instructions that violate a segment limit are restartable. The current case that
cannot be restarted in general is any floating point operand reference where the second or subsequent word
exceeded a segment limit. The exception 9 handler __must__ execute FNINIT before __any__ other WAIT or ESC
instruction. The internal status of the 80287 cannot be read until it is forced idle by FNINIT. The FNINIT
instruction will mark all floating point data registers as empty, set top of stack to 0, and mask all errors.
The numeric instruction and data addresses stored in the 80287 will correctly point at the failing instruction.
If the 80286 program interrupted by the math address error is not the program that executed the failed ESC
instruction, then that program can be restarted.
4. Memory address space wrap-around is not directly supported. The iAPX 86/88 allow wrap around from the top of
the 1 megabyte address space into the bottom of the 1 megabyte address space (i.e. address FC00:4000 is same
as 0000:0000). To emulate instructions that address memory with such wrap-around, requires the segment register
limit be set to cause a protection exception for addresses beyond simulated physical address 0FFFFFH, or
addresses below 00000H using an expand down segment, and software emulation of the instruction to address memory
at the bottom of the address space.
5. An 8086/88/186 program will require different amounts of time to execute instructions on the 80286. Most
instructions will run faster on the 80286. Instructions which do not modify a segment register, and do not
use a segment register with a zero in it will run faster on the 80286. Instructions that first access memory
with a segment register containing a zero will run slower on the 80286. Instructions that load a segment register
with a non-zero selector value will run slower on the 80286.
6. The iAPX 286 and iAPX 186 can generate the most negative number as a quotient for the IDIV instruction.
The iAPX 86/88 will generate the divide error exception instead.
7. The iAPX 286 divide error return address will point at the divide instruction including prefixes. The registers
will appear as if the instruction had not executed. The iAPX 86/88/186/188 return address will point after the
divide instruction and the DX:AX or AH:AL registers may have been changed.
8. The numeric instruction address stored in the 80287 includes all leading prefixes before the ESC opcode.
The 8087 numeric instruction address always points at the ESC opcode.
9. An iAPX 286/20 system does not require an interrupt controller for the ERROR signal. iAPX 86/20 systems use an
interrupt controller to prioritize simultaneous interrupts and mask errors from the 8087 if servicing them must
be delayed.
If the same interrupt controller is provided as in the iAPX 86 system, the input used for the 8087 ERROR signal
can be grounded. Instructions that control that input of the interrupt controller become NOPs. Watch out for
non-specific EOI instructions inside an 8087 error handler which may affect other interrupt inputs.
80287 errors do not normally affect an interrupt handler. As long as any program does not execute WAIT or ESC
instructions, it cannot be interrupted by the 80287.
If a different interrupt system is used in the iAPX 286 system than in the iAPX 86 system, any I/O instructions
to the interrupt controller may have to be emulated.
10. Numeric error interrupts use interrupt vector 16. Since an external interrupt controller may be used in
iAPX 86,88,186 systems, another interrupt vector may have been used for numeric interrupts.
11. Do not perform port I/O to ports 00F8H to 00FFH. The 80287 may not operate properly if this is allowed.
These I/O locations are reserved by Intel.
12. The interrupt enable bit of the flag word may not change when a POPF or IRET instruction attempts to change it.
The IOPL field of the flag word controls whether IF can be changed. Subsequent PUSHF and INT instructions will
save a value of IF which differs from the value in an 8086/8088 program.
13. If STI and CLI are emulated as NOPs then they will fail to change IF. Subsequent PUSHF and INT instructions
will save a value of IF which differs from the value in an 8086/8088 program.
14. The flag word has two new fields: IOPL and NT. IOPL can not change except at level 0, but NT can be changed by
IRET and POPF instructions. The IRET instruction attempts a task switch when NT is set. The back link field of
the current TSS should have a 0 in it to cause exception 13, with an error code of 0, if the iAPX 86 program
attempts an IRET after setting NT. The exception 13 handler may then simulate an iAPX 86 !RET operation.
15. The iAPX 86 address space may be limited. Programs may use some form of memory space scanner to see how much
memory is available. Accesses to illegal locations are expected. The program emulator must decide what to do
about illegal accesses.
16. The 80286 defines new instructions for undefined opcodes in the 8086/88. An 8086/88 program with an unknown
bug in it that executes these undefined opcodes will work differently on an 80286.
17. Programs with self-modifying code may work differently on an 80286. The 80286 prefetcher can fetch more bytes
ahead of the current instruction than the 8086 or 8088. A program that modifies an instruction that has already
been prefetched will not see the changed instruction. Any program which jumps after modifying an instruction
before executing it will correctly execute the modified instruction.
18. Regions of the emulated iAPX 86,88,186 address space can not be write protected. The XCHG, ADC, SBB, RCL, and
RCR instructions are not restartable if their memory-based operand is in a write-protected segment.
Extending the Address Space of Current iAPX 86 Software
---
Current iAPX 86 real mode programs can use the extended address space of the iAPX 286 in a limited manner.
To address the extended memory, [LOADALL](../loadall/) must be used to load the descriptor cache with an base address beyond
the normal 1 Mbyte address range. That segment register must not be changed by software, else the segment register
will point back into the 1 Mbyte address space.
Two types of systems are examined: accessing a single large database in a limited manner, or splitting software
into normal and extended areas. The first is the easiest to implement, while the second is more general.
Access to a large data area outside the 1 Mbyte address space could be provided by a subroutine. The subroutine
scans the large data structure to locate the necessary item, then copy all data between the normal address space
and the extended address space.
Interrupts must be disabled while the subroutine uses segment registers that have been set by [LOADALL](../loadall/). The reload
of segment registers inside an interrupt routine would change the actual physical address from that loaded by [LOADALL](../loadall/)
before the interrupt. After all accesses in the extended area are done, interrupts may be enabled.
Returning the address of an extended data structure requires passing data through a segment register. For example,
the ES register could have been changed by [LOADALL](../loadall/) to point at a data area outside the bottom megabyte of physical
memory. The subroutine must not reload ES while it runs. The value stored in ES is not important since it is not
related to the physical address. Interrupts must not be allowed since the interrupt routine may reload ES.
A second technique uses special paragraph IDs (i.e. FFFFH) to signal that a piece of software is running in extended
mode. All interrupt handlers in the system must look when they return to the interrupted program to see if any of the
segment registers contain FFFFH. If so, then that segment register points at extended memory. [LOADALL](../loadall/) must be used
to load all the registers and the segment base address used last. The [LOADALL](../loadall/) memory area should contain that value
left there from the previous usage. Descriptors for the other segment registers with normal paragraph IDs must be
constructed before executing [LOADALL](../loadall/).
A semaphore must be placed around software that writes into the [LOADALL](../loadall/) area such that once written into, the software
can execute [LOADALL](../loadall/) without interruption.
Mixing Real Mode and Protected Mode
---
The 80286 can alternate between real mode and protected mode. Some programs could be executed in real mode in the
bottom megabyte of memory, while others execute in protected mode in the upper 15 Mbytes of memory. An external OR
gate could RESET the 80286, independent of the rest of the system, to force it to enter real mode. A short routine
at the power up address could redirect the software to the correct real mode program.
After executing the real mode program, [LOADALL](../loadall/) could then quickly restart the protected mode software. [LOADALL](../loadall/) can
be used as a form of task switch from real mode to a protected mode task.
One operating system could service both the real and protected mode software. Any operating system call from the real
mode program would cause a switch to protected mode. The protected mode software could then construct descriptors that
refer to the same physical memory addresses used by the real mode paragraph IDs. After conversion, the operating system
could then perform all work in protected mode.
Interrupts must be handled specially. Interrupt handlers for both real mode and protected mode must be present at all
times. If an interrupt handler needs to access a data area, that data area must be addressable from both real and
protected mode. The real mode interrupt table would be would be kept at location 000000H. The protected mode IDT could
be anywhere. [LOADALL](../loadall/) will switch to the protected interrupt table.
[This information is from an undated 15-page Intel document titled "Undocumented iAPX 286 Test Instruction"]

View file

@ -0,0 +1,150 @@
LOADALL (0F05H)
---
The iAPX 286 microprocessor (part number 80286) has an undocumented instruction used by Intel test programs to
allow direct access to internal registers for fast initialization. The instruction is called LOADALL. Each 80286
is tested with the LOADALL instruction. LOADALL is guaranteed to work on each 80286.
LOADALL allows explicit control of the descriptor cache register associated with each segment register independent
of the segment register value and descriptor tables. LOADALL can be used to extend either real mode or protected mode.
The protected mode 80286 can be extended to emulate iAPX 86 real mode programs with LOADALL. In real mode, LOADALL
can provide addressability to the other 15 Mbytes of the 286 physical address space.
The operation of LOADALL is closely tied to the internal hardware of the 80286. The iAPX 386 will not have the
same internal hardware. LOADALL will not work on an iAPX 386. The iAPX 386 has an alternative means of emulating
iAPX 86 real mode programs.
### Description
All CPU registers (including LDTR, TR, GDTR, IDTR, and MSW) are loaded from memory by this instruction.
The normally hidden descriptor cache registers for the ES, DS, SS, CS, TR, and LDT registers are also loaded.
LOADALL may be executed in either real address mode or protected mode (CPL must be 0). Any attempt to execute
LOADALL at any privilege level other than 0 in protected rode causes exception 13 with an error code of 0.
LOADALL allows direct control over the base, limit, and access rights associated with each segment register.
These values are kept in the descriptor cache registers which are normally hidden from programs. In protected mode,
LOADALL can set the selector, base address, limit, and access rights for a segment register without a descriptor
table entry corresponding to the program visible selector value. The normal protected mode protection rules can
also be changed. In real address mode, the physical address, limit, and access rights for a paragraph ID can also
be changed from the normal real mode definition.
The standard protected mode segment register loading checks (for privilege and access rights) are not performed
by LOADALL on the values loaded into the descriptor caches. Using LOADALL in iAPX 86 real mode also does not involve
any checks. Once loaded, the 80286 hardware will perform physical address calculation within the segment, offset
checks against the limit, and access rights checks for all memory accesses using that segment register in either
operating mode.
To retain protected mode system integrity, the policies used to define descriptor table contents must also be
applied to the dynamically created descriptors loaded into the descriptor cache registers with LOADALL. Once defined,
the 80286 segment access hardware will limit segment usage to the physical memory region defined.
The LOADALL instruction is encoded in two consecutive bytes as 00001111 00000101, with 00001111 at the lowest
memory address. LOADALL executes in 195 clocks and performs 51 bus cycles.
LOADALL cannot switch the 80286 from protected mode to real mode. Once in protected mode, the MSW value loaded by
LOADALL must have a one in bit position 0. The RESET input is the only way to reenter real mode.
LOADALL reads a 102 byte area of physical memory starting at physical memory location 000800H (2048). The entire
execution state of the 80286 (consisting of 24 registers) is defined upon completion of this instruction. The
descriptor cache registers for the ES, DS, SS, CS, TR, and LDT are directly loaded from this area. The instruction
requires 190 clocks with no wait states.
### LOADALL Memory Area Format ###
Physical Address (Hex) Associated CPU Register
800-805 None
806-807 MSW
808-815 None
816-817 TR
818-819 Flag word
81A-81B IP
81C-81D LDT
81E-81F DS
820-821 SS
822-823 CS
824-825 ES
826-827 DI
828-829 SI
82A-82B BP
82C-82D SP
82E-82F BX
830-831 DX
832-833 CX
834-835 AX
836-83B ES descriptor cache
83C-841 CS descriptor cache
842-847 SS descriptor cache
848-84D DS descriptor cache
84E-853 GDTR
854-859 LDT descriptor cache
85A-85F IDTR
860-865 TSS descriptor cache
No checks are made between the program visible selector values and the associated descriptor table entry.
LOADALL does not perform any descriptor table accesses. No checks are made regarding the type or access rights
defined by the descriptor. Any new descriptors defined by this instruction will be automatically used by subsequent
processor extension memory references.
Any subsequent segment register load instruction will reload the associated descriptor cache register in the
normal manner according to the operating mode of the CPU. In real mode, the low 4 bits and high 4 bits of the
base address are set to zero. The paragraph ID is inserted into bits 19-4 of the base address. The segment limit
is reset to FFFFH and access rights is changed to a writable segment. In protected mode, the base address, limit,
and access rights are loaded from the descriptor.
The descriptor cache entries are in the following format:
* bytes 0-2
24-bit physical base address of the segment. The bytes are stored in ascending order with the
least significant byte at lowest memory address.
* byte 3
Access rights byte is in the format of the access byte in a descriptor. The only difference is that
the present bit becomes a valid bit. If zero, the descriptor is considered invalid and any memory reference
using the descriptor will cause exception 13 with an error code of zero. Loading a descriptor cache register
with an invalid descriptor does not cause an immediate exception. Any attempted use of the descriptor to
reference memory causes the exception. Such an exception is restartable and the saved machine state appears
as if the instruction had not been attempted. The value loaded by LOADALL can be read without any exceptions.
The DPL fields of the SS and CS descriptor caches determine the CPL. The DPL fields of the DS and ES descriptor
caches should be 3. The CS descriptor may be loaded with a writable data segment descriptor.
* bytes 4-5
16-bit limit of the segment. The word is stored in two bytes in normal word format. The interpretation of
this field is determined by the type of segment identified by byte 3. Grow-down data segments are a special
case of how to interpret the limit field. The data sheet describes how this field works.
The GDTR and IDTR are in the following format:
* bytes 0-2
24-bit physical base address of segment. The bytes are stored in ascending order with the least significant
byte at the lowest memory address.
* byte 3
Should be zeroes.
* bytes 4-5
16-bit limit of the segment. The word is stored as two bytes in normal word format.
After properly executing LOADALL, the following is required of the descriptor cache register contents:
1. The stack segment is a writable, valid data segment.
2. The code segment can be of three types: execute-only, read/execute-only, or read/write/execute.
To be execute-only, use an execute-only code segment access rights byte value. To be execute/read-only,
use a execute/read code segment access rights byte value. To be read/write/execute, use a writable,
expand-up data segment access rights byte value.
For proper protected mode operation, the following is required:
3. The DPL field of the CS descriptor cache access-rights byte must equal the DPL field of the SS descriptor
cache access rights byte. These DPL fields are the CPL of the processor.
4. The DPL fields of the ES and DS descriptors should be 3 to prevent their being zeroed by RET or IRET
instructions.
[This information is from an undated 15-page Intel document titled "Undocumented iAPX 286 Test Instruction"]

View file

@ -0,0 +1,12 @@
Instructions Longer than 10 Bytes
---
When the CPU detects an instruction that is illegal due to being greater than 10 bytes in length, it generates an
exception #13 (General Protection Violation) instead of exception #6 (Invalid Opcode). The only way an instruction
greater than ten bytes can occur is by using the assembler to intentionally place multiple redundant prefix bytes
(e.g. multiple lock prefixes and/or segment override prefixes) before the opcode bytes.
There are no plans to change this functionality of the 80286 and future editions of the "iAPX286 Programmer's Reference
Manual" and 80286 datasheet will accurately describe how 80286 reacts to instructions greater than 10 bytes in length.
[This information is from an Intel document titled "80286 ARPL and Overlength Instructions, 15 October 1984"]

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.15.3/manifest.xsl"?>
<manifest type="document">
<title>Intel 80286 References</title>
<document href="https://archive.org/download/bitsavers_intel80286287ProgrammersReferenceManual1987_27505703/210498-005_80286_and_80287_Programmers_Reference_Manual_1987.pdf">
<name>80286 and 80287 Programmers Reference Manual (1987)</name>
<cover href="../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 1.jpeg"/>
<page href="#page=27">Memory Organization and Segmentation</page>
</document>
</manifest>

View file

@ -0,0 +1,520 @@
80286 and 80287 Programmer's Reference Manual
---
![Page 1](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 1.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 1.pdf:200:260")
![Page 2](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 2.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 2.pdf:200:260")
![Page 3](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 3.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 3.pdf:200:260")
![Page 4](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 4.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 4.pdf:200:260")
![Page 5](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 5.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 5.pdf:200:260")
![Page 6](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 6.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 6.pdf:200:260")
![Page 7](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 7.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 7.pdf:200:260")
![Page 8](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 8.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 8.pdf:200:260")
![Page 9](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 9.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 9.pdf:200:260")
![Page 10](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 10.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 10.pdf:200:260")
![Page 11](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 11.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 11.pdf:200:260")
![Page 12](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 12.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 12.pdf:200:260")
![Page 13](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 13.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 13.pdf:200:260")
![Page 14](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 14.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 14.pdf:200:260")
![Page 15](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 15.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 15.pdf:200:260")
![Page 16](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 16.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 16.pdf:200:260")
![Page 17](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 17.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 17.pdf:200:260")
![Page 18](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 18.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 18.pdf:200:260")
![Page 19](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 19.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 19.pdf:200:260")
![Page 20](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 20.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 20.pdf:200:260")
![Page 21](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 21.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 21.pdf:200:260")
![Page 22](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 22.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 22.pdf:200:260")
![Page 23](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 23.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 23.pdf:200:260")
![Page 24](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 24.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 24.pdf:200:260")
![Page 25](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 25.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 25.pdf:200:260")
![Page 26](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 26.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 26.pdf:200:260")
![Page 27](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 27.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 27.pdf:200:260")
![Page 28](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 28.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 28.pdf:200:260")
![Page 29](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 29.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 29.pdf:200:260")
![Page 30](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 30.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 30.pdf:200:260")
![Page 31](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 31.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 31.pdf:200:260")
![Page 32](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 32.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 32.pdf:200:260")
![Page 33](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 33.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 33.pdf:200:260")
![Page 34](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 34.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 34.pdf:200:260")
![Page 35](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 35.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 35.pdf:200:260")
![Page 36](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 36.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 36.pdf:200:260")
![Page 37](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 37.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 37.pdf:200:260")
![Page 38](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 38.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 38.pdf:200:260")
![Page 39](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 39.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 39.pdf:200:260")
![Page 40](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 40.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 40.pdf:200:260")
![Page 41](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 41.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 41.pdf:200:260")
![Page 42](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 42.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 42.pdf:200:260")
![Page 43](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 43.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 43.pdf:200:260")
![Page 44](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 44.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 44.pdf:200:260")
![Page 45](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 45.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 45.pdf:200:260")
![Page 46](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 46.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 46.pdf:200:260")
![Page 47](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 47.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 47.pdf:200:260")
![Page 48](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 48.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 48.pdf:200:260")
![Page 49](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 49.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 49.pdf:200:260")
![Page 50](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 50.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 50.pdf:200:260")
![Page 51](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 51.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 51.pdf:200:260")
![Page 52](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 52.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 52.pdf:200:260")
![Page 53](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 53.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 53.pdf:200:260")
![Page 54](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 54.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 54.pdf:200:260")
![Page 55](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 55.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 55.pdf:200:260")
![Page 56](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 56.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 56.pdf:200:260")
![Page 57](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 57.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 57.pdf:200:260")
![Page 58](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 58.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 58.pdf:200:260")
![Page 59](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 59.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 59.pdf:200:260")
![Page 60](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 60.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 60.pdf:200:260")
![Page 61](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 61.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 61.pdf:200:260")
![Page 62](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 62.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 62.pdf:200:260")
![Page 63](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 63.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 63.pdf:200:260")
![Page 64](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 64.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 64.pdf:200:260")
![Page 65](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 65.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 65.pdf:200:260")
![Page 66](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 66.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 66.pdf:200:260")
![Page 67](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 67.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 67.pdf:200:260")
![Page 68](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 68.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 68.pdf:200:260")
![Page 69](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 69.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 69.pdf:200:260")
![Page 70](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 70.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 70.pdf:200:260")
![Page 71](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 71.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 71.pdf:200:260")
![Page 72](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 72.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 72.pdf:200:260")
![Page 73](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 73.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 73.pdf:200:260")
![Page 74](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 74.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 74.pdf:200:260")
![Page 75](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 75.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 75.pdf:200:260")
![Page 76](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 76.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 76.pdf:200:260")
![Page 77](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 77.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 77.pdf:200:260")
![Page 78](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 78.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 78.pdf:200:260")
![Page 79](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 79.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 79.pdf:200:260")
![Page 80](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 80.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 80.pdf:200:260")
![Page 81](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 81.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 81.pdf:200:260")
![Page 82](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 82.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 82.pdf:200:260")
![Page 83](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 83.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 83.pdf:200:260")
![Page 84](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 84.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 84.pdf:200:260")
![Page 85](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 85.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 85.pdf:200:260")
![Page 86](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 86.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 86.pdf:200:260")
![Page 87](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 87.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 87.pdf:200:260")
![Page 88](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 88.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 88.pdf:200:260")
![Page 89](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 89.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 89.pdf:200:260")
![Page 90](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 90.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 90.pdf:200:260")
![Page 91](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 91.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 91.pdf:200:260")
![Page 92](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 92.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 92.pdf:200:260")
![Page 93](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 93.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 93.pdf:200:260")
![Page 94](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 94.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 94.pdf:200:260")
![Page 95](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 95.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 95.pdf:200:260")
![Page 96](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 96.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 96.pdf:200:260")
![Page 97](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 97.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 97.pdf:200:260")
![Page 98](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 98.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 98.pdf:200:260")
![Page 99](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 99.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 99.pdf:200:260")
![Page 100](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 100.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 100.pdf:200:260")
![Page 101](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 101.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 101.pdf:200:260")
![Page 102](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 102.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 102.pdf:200:260")
![Page 103](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 103.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 103.pdf:200:260")
![Page 104](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 104.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 104.pdf:200:260")
![Page 105](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 105.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 105.pdf:200:260")
![Page 106](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 106.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 106.pdf:200:260")
![Page 107](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 107.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 107.pdf:200:260")
![Page 108](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 108.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 108.pdf:200:260")
![Page 109](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 109.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 109.pdf:200:260")
![Page 110](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 110.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 110.pdf:200:260")
![Page 111](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 111.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 111.pdf:200:260")
![Page 112](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 112.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 112.pdf:200:260")
![Page 113](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 113.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 113.pdf:200:260")
![Page 114](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 114.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 114.pdf:200:260")
![Page 115](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 115.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 115.pdf:200:260")
![Page 116](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 116.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 116.pdf:200:260")
![Page 117](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 117.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 117.pdf:200:260")
![Page 118](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 118.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 118.pdf:200:260")
![Page 119](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 119.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 119.pdf:200:260")
![Page 120](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 120.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 120.pdf:200:260")
![Page 121](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 121.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 121.pdf:200:260")
![Page 122](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 122.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 122.pdf:200:260")
![Page 123](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 123.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 123.pdf:200:260")
![Page 124](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 124.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 124.pdf:200:260")
![Page 125](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 125.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 125.pdf:200:260")
![Page 126](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 126.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 126.pdf:200:260")
![Page 127](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 127.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 127.pdf:200:260")
![Page 128](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 128.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 128.pdf:200:260")
![Page 129](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 129.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 129.pdf:200:260")
![Page 130](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 130.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 130.pdf:200:260")
![Page 131](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 131.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 131.pdf:200:260")
![Page 132](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 132.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 132.pdf:200:260")
![Page 133](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 133.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 133.pdf:200:260")
![Page 134](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 134.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 134.pdf:200:260")
![Page 135](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 135.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 135.pdf:200:260")
![Page 136](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 136.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 136.pdf:200:260")
![Page 137](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 137.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 137.pdf:200:260")
![Page 138](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 138.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 138.pdf:200:260")
![Page 139](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 139.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 139.pdf:200:260")
![Page 140](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 140.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 140.pdf:200:260")
![Page 141](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 141.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 141.pdf:200:260")
![Page 142](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 142.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 142.pdf:200:260")
![Page 143](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 143.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 143.pdf:200:260")
![Page 144](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 144.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 144.pdf:200:260")
![Page 145](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 145.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 145.pdf:200:260")
![Page 146](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 146.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 146.pdf:200:260")
![Page 147](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 147.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 147.pdf:200:260")
![Page 148](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 148.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 148.pdf:200:260")
![Page 149](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 149.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 149.pdf:200:260")
![Page 150](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 150.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 150.pdf:200:260")
![Page 151](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 151.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 151.pdf:200:260")
![Page 152](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 152.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 152.pdf:200:260")
![Page 153](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 153.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 153.pdf:200:260")
![Page 154](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 154.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 154.pdf:200:260")
![Page 155](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 155.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 155.pdf:200:260")
![Page 156](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 156.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 156.pdf:200:260")
![Page 157](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 157.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 157.pdf:200:260")
![Page 158](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 158.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 158.pdf:200:260")
![Page 159](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 159.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 159.pdf:200:260")
![Page 160](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 160.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 160.pdf:200:260")
![Page 161](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 161.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 161.pdf:200:260")
![Page 162](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 162.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 162.pdf:200:260")
![Page 163](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 163.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 163.pdf:200:260")
![Page 164](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 164.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 164.pdf:200:260")
![Page 165](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 165.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 165.pdf:200:260")
![Page 166](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 166.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 166.pdf:200:260")
![Page 167](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 167.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 167.pdf:200:260")
![Page 168](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 168.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 168.pdf:200:260")
![Page 169](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 169.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 169.pdf:200:260")
![Page 170](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 170.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 170.pdf:200:260")
![Page 171](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 171.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 171.pdf:200:260")
![Page 172](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 172.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 172.pdf:200:260")
![Page 173](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 173.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 173.pdf:200:260")
![Page 174](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 174.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 174.pdf:200:260")
![Page 175](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 175.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 175.pdf:200:260")
![Page 176](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 176.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 176.pdf:200:260")
![Page 177](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 177.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 177.pdf:200:260")
![Page 178](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 178.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 178.pdf:200:260")
![Page 179](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 179.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 179.pdf:200:260")
![Page 180](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 180.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 180.pdf:200:260")
![Page 181](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 181.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 181.pdf:200:260")
![Page 182](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 182.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 182.pdf:200:260")
![Page 183](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 183.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 183.pdf:200:260")
![Page 184](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 184.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 184.pdf:200:260")
![Page 185](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 185.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 185.pdf:200:260")
![Page 186](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 186.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 186.pdf:200:260")
![Page 187](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 187.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 187.pdf:200:260")
![Page 188](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 188.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 188.pdf:200:260")
![Page 189](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 189.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 189.pdf:200:260")
![Page 190](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 190.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 190.pdf:200:260")
![Page 191](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 191.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 191.pdf:200:260")
![Page 192](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 192.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 192.pdf:200:260")
![Page 193](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 193.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 193.pdf:200:260")
![Page 194](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 194.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 194.pdf:200:260")
![Page 195](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 195.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 195.pdf:200:260")
![Page 196](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 196.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 196.pdf:200:260")
![Page 197](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 197.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 197.pdf:200:260")
![Page 198](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 198.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 198.pdf:200:260")
![Page 199](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 199.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 199.pdf:200:260")
![Page 200](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 200.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 200.pdf:200:260")
![Page 201](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 201.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 201.pdf:200:260")
![Page 202](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 202.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 202.pdf:200:260")
![Page 203](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 203.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 203.pdf:200:260")
![Page 204](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 204.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 204.pdf:200:260")
![Page 205](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 205.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 205.pdf:200:260")
![Page 206](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 206.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 206.pdf:200:260")
![Page 207](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 207.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 207.pdf:200:260")
![Page 208](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 208.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 208.pdf:200:260")
![Page 209](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 209.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 209.pdf:200:260")
![Page 210](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 210.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 210.pdf:200:260")
![Page 211](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 211.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 211.pdf:200:260")
![Page 212](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 212.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 212.pdf:200:260")
![Page 213](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 213.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 213.pdf:200:260")
![Page 214](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 214.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 214.pdf:200:260")
![Page 215](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 215.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 215.pdf:200:260")
![Page 216](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 216.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 216.pdf:200:260")
![Page 217](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 217.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 217.pdf:200:260")
![Page 218](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 218.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 218.pdf:200:260")
![Page 219](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 219.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 219.pdf:200:260")
![Page 220](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 220.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 220.pdf:200:260")
![Page 221](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 221.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 221.pdf:200:260")
![Page 222](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 222.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 222.pdf:200:260")
![Page 223](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 223.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 223.pdf:200:260")
![Page 224](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 224.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 224.pdf:200:260")
![Page 225](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 225.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 225.pdf:200:260")
![Page 226](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 226.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 226.pdf:200:260")
![Page 227](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 227.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 227.pdf:200:260")
![Page 228](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 228.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 228.pdf:200:260")
![Page 229](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 229.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 229.pdf:200:260")
![Page 230](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 230.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 230.pdf:200:260")
![Page 231](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 231.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 231.pdf:200:260")
![Page 232](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 232.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 232.pdf:200:260")
![Page 233](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 233.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 233.pdf:200:260")
![Page 234](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 234.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 234.pdf:200:260")
![Page 235](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 235.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 235.pdf:200:260")
![Page 236](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 236.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 236.pdf:200:260")
![Page 237](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 237.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 237.pdf:200:260")
![Page 238](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 238.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 238.pdf:200:260")
![Page 239](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 239.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 239.pdf:200:260")
![Page 240](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 240.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 240.pdf:200:260")
![Page 241](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 241.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 241.pdf:200:260")
![Page 242](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 242.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 242.pdf:200:260")
![Page 243](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 243.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 243.pdf:200:260")
![Page 244](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 244.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 244.pdf:200:260")
![Page 245](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 245.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 245.pdf:200:260")
![Page 246](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 246.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 246.pdf:200:260")
![Page 247](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 247.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 247.pdf:200:260")
![Page 248](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 248.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 248.pdf:200:260")
![Page 249](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 249.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 249.pdf:200:260")
![Page 250](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 250.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 250.pdf:200:260")
![Page 251](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 251.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 251.pdf:200:260")
![Page 252](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 252.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 252.pdf:200:260")
![Page 253](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 253.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 253.pdf:200:260")
![Page 254](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 254.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 254.pdf:200:260")
![Page 255](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 255.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 255.pdf:200:260")
![Page 256](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 256.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 256.pdf:200:260")
![Page 257](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 257.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 257.pdf:200:260")
![Page 258](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 258.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 258.pdf:200:260")
![Page 259](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 259.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 259.pdf:200:260")
![Page 260](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 260.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 260.pdf:200:260")
![Page 261](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 261.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 261.pdf:200:260")
![Page 262](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 262.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 262.pdf:200:260")
![Page 263](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 263.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 263.pdf:200:260")
![Page 264](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 264.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 264.pdf:200:260")
![Page 265](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 265.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 265.pdf:200:260")
![Page 266](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 266.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 266.pdf:200:260")
![Page 267](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 267.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 267.pdf:200:260")
![Page 268](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 268.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 268.pdf:200:260")
![Page 269](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 269.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 269.pdf:200:260")
![Page 270](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 270.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 270.pdf:200:260")
![Page 271](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 271.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 271.pdf:200:260")
![Page 272](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 272.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 272.pdf:200:260")
![Page 273](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 273.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 273.pdf:200:260")
![Page 274](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 274.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 274.pdf:200:260")
![Page 275](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 275.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 275.pdf:200:260")
![Page 276](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 276.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 276.pdf:200:260")
![Page 277](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 277.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 277.pdf:200:260")
![Page 278](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 278.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 278.pdf:200:260")
![Page 279](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 279.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 279.pdf:200:260")
![Page 280](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 280.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 280.pdf:200:260")
![Page 281](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 281.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 281.pdf:200:260")
![Page 282](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 282.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 282.pdf:200:260")
![Page 283](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 283.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 283.pdf:200:260")
![Page 284](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 284.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 284.pdf:200:260")
![Page 285](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 285.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 285.pdf:200:260")
![Page 286](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 286.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 286.pdf:200:260")
![Page 287](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 287.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 287.pdf:200:260")
![Page 288](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 288.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 288.pdf:200:260")
![Page 289](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 289.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 289.pdf:200:260")
![Page 290](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 290.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 290.pdf:200:260")
![Page 291](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 291.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 291.pdf:200:260")
![Page 292](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 292.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 292.pdf:200:260")
![Page 293](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 293.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 293.pdf:200:260")
![Page 294](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 294.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 294.pdf:200:260")
![Page 295](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 295.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 295.pdf:200:260")
![Page 296](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 296.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 296.pdf:200:260")
![Page 297](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 297.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 297.pdf:200:260")
![Page 298](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 298.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 298.pdf:200:260")
![Page 299](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 299.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 299.pdf:200:260")
![Page 300](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 300.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 300.pdf:200:260")
![Page 301](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 301.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 301.pdf:200:260")
![Page 302](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 302.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 302.pdf:200:260")
![Page 303](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 303.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 303.pdf:200:260")
![Page 304](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 304.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 304.pdf:200:260")
![Page 305](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 305.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 305.pdf:200:260")
![Page 306](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 306.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 306.pdf:200:260")
![Page 307](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 307.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 307.pdf:200:260")
![Page 308](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 308.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 308.pdf:200:260")
![Page 309](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 309.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 309.pdf:200:260")
![Page 310](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 310.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 310.pdf:200:260")
![Page 311](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 311.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 311.pdf:200:260")
![Page 312](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 312.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 312.pdf:200:260")
![Page 313](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 313.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 313.pdf:200:260")
![Page 314](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 314.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 314.pdf:200:260")
![Page 315](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 315.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 315.pdf:200:260")
![Page 316](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 316.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 316.pdf:200:260")
![Page 317](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 317.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 317.pdf:200:260")
![Page 318](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 318.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 318.pdf:200:260")
![Page 319](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 319.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 319.pdf:200:260")
![Page 320](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 320.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 320.pdf:200:260")
![Page 321](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 321.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 321.pdf:200:260")
![Page 322](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 322.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 322.pdf:200:260")
![Page 323](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 323.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 323.pdf:200:260")
![Page 324](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 324.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 324.pdf:200:260")
![Page 325](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 325.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 325.pdf:200:260")
![Page 326](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 326.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 326.pdf:200:260")
![Page 327](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 327.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 327.pdf:200:260")
![Page 328](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 328.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 328.pdf:200:260")
![Page 329](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 329.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 329.pdf:200:260")
![Page 330](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 330.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 330.pdf:200:260")
![Page 331](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 331.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 331.pdf:200:260")
![Page 332](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 332.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 332.pdf:200:260")
![Page 333](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 333.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 333.pdf:200:260")
![Page 334](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 334.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 334.pdf:200:260")
![Page 335](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 335.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 335.pdf:200:260")
![Page 336](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 336.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 336.pdf:200:260")
![Page 337](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 337.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 337.pdf:200:260")
![Page 338](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 338.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 338.pdf:200:260")
![Page 339](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 339.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 339.pdf:200:260")
![Page 340](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 340.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 340.pdf:200:260")
![Page 341](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 341.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 341.pdf:200:260")
![Page 342](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 342.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 342.pdf:200:260")
![Page 343](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 343.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 343.pdf:200:260")
![Page 344](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 344.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 344.pdf:200:260")
![Page 345](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 345.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 345.pdf:200:260")
![Page 346](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 346.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 346.pdf:200:260")
![Page 347](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 347.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 347.pdf:200:260")
![Page 348](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 348.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 348.pdf:200:260")
![Page 349](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 349.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 349.pdf:200:260")
![Page 350](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 350.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 350.pdf:200:260")
![Page 351](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 351.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 351.pdf:200:260")
![Page 352](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 352.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 352.pdf:200:260")
![Page 353](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 353.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 353.pdf:200:260")
![Page 354](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 354.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 354.pdf:200:260")
![Page 355](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 355.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 355.pdf:200:260")
![Page 356](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 356.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 356.pdf:200:260")
![Page 357](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 357.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 357.pdf:200:260")
![Page 358](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 358.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 358.pdf:200:260")
![Page 359](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 359.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 359.pdf:200:260")
![Page 360](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 360.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 360.pdf:200:260")
![Page 361](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 361.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 361.pdf:200:260")
![Page 362](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 362.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 362.pdf:200:260")
![Page 363](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 363.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 363.pdf:200:260")
![Page 364](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 364.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 364.pdf:200:260")
![Page 365](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 365.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 365.pdf:200:260")
![Page 366](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 366.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 366.pdf:200:260")
![Page 367](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 367.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 367.pdf:200:260")
![Page 368](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 368.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 368.pdf:200:260")
![Page 369](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 369.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 369.pdf:200:260")
![Page 370](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 370.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 370.pdf:200:260")
![Page 371](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 371.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 371.pdf:200:260")
![Page 372](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 372.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 372.pdf:200:260")
![Page 373](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 373.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 373.pdf:200:260")
![Page 374](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 374.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 374.pdf:200:260")
![Page 375](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 375.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 375.pdf:200:260")
![Page 376](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 376.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 376.pdf:200:260")
![Page 377](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 377.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 377.pdf:200:260")
![Page 378](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 378.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 378.pdf:200:260")
![Page 379](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 379.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 379.pdf:200:260")
![Page 380](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 380.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 380.pdf:200:260")
![Page 381](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 381.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 381.pdf:200:260")
![Page 382](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 382.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 382.pdf:200:260")
![Page 383](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 383.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 383.pdf:200:260")
![Page 384](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 384.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 384.pdf:200:260")
![Page 385](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 385.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 385.pdf:200:260")
![Page 386](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 386.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 386.pdf:200:260")
![Page 387](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 387.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 387.pdf:200:260")
![Page 388](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 388.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 388.pdf:200:260")
![Page 389](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 389.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 389.pdf:200:260")
![Page 390](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 390.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 390.pdf:200:260")
![Page 391](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 391.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 391.pdf:200:260")
![Page 392](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 392.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 392.pdf:200:260")
![Page 393](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 393.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 393.pdf:200:260")
![Page 394](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 394.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 394.pdf:200:260")
![Page 395](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 395.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 395.pdf:200:260")
![Page 396](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 396.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 396.pdf:200:260")
![Page 397](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 397.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 397.pdf:200:260")
![Page 398](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 398.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 398.pdf:200:260")
![Page 399](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 399.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 399.pdf:200:260")
![Page 400](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 400.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 400.pdf:200:260")
![Page 401](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 401.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 401.pdf:200:260")
![Page 402](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 402.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 402.pdf:200:260")
![Page 403](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 403.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 403.pdf:200:260")
![Page 404](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 404.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 404.pdf:200:260")
![Page 405](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 405.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 405.pdf:200:260")
![Page 406](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 406.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 406.pdf:200:260")
![Page 407](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 407.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 407.pdf:200:260")
![Page 408](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 408.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 408.pdf:200:260")
![Page 409](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 409.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 409.pdf:200:260")
![Page 410](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 410.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 410.pdf:200:260")
![Page 411](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 411.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 411.pdf:200:260")
![Page 412](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 412.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 412.pdf:200:260")
![Page 413](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 413.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 413.pdf:200:260")
![Page 414](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 414.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 414.pdf:200:260")
![Page 415](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 415.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 415.pdf:200:260")
![Page 416](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 416.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 416.pdf:200:260")
![Page 417](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 417.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 417.pdf:200:260")
![Page 418](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 418.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 418.pdf:200:260")
![Page 419](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 419.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 419.pdf:200:260")
![Page 420](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 420.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 420.pdf:200:260")
![Page 421](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 421.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 421.pdf:200:260")
![Page 422](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 422.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 422.pdf:200:260")
![Page 423](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 423.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 423.pdf:200:260")
![Page 424](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 424.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 424.pdf:200:260")
![Page 425](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 425.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 425.pdf:200:260")
![Page 426](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 426.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 426.pdf:200:260")
![Page 427](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 427.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 427.pdf:200:260")
![Page 428](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 428.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 428.pdf:200:260")
![Page 429](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 429.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 429.pdf:200:260")
![Page 430](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 430.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 430.pdf:200:260")
![Page 431](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 431.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 431.pdf:200:260")
![Page 432](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 432.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 432.pdf:200:260")
![Page 433](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 433.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 433.pdf:200:260")
![Page 434](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 434.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 434.pdf:200:260")
![Page 435](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 435.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 435.pdf:200:260")
![Page 436](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 436.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 436.pdf:200:260")
![Page 437](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 437.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 437.pdf:200:260")
![Page 438](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 438.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 438.pdf:200:260")
![Page 439](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 439.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 439.pdf:200:260")
![Page 440](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 440.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 440.pdf:200:260")
![Page 441](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 441.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 441.pdf:200:260")
![Page 442](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 442.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 442.pdf:200:260")
![Page 443](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 443.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 443.pdf:200:260")
![Page 444](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 444.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 444.pdf:200:260")
![Page 445](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 445.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 445.pdf:200:260")
![Page 446](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 446.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 446.pdf:200:260")
![Page 447](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 447.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 447.pdf:200:260")
![Page 448](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 448.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 448.pdf:200:260")
![Page 449](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 449.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 449.pdf:200:260")
![Page 450](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 450.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 450.pdf:200:260")
![Page 451](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 451.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 451.pdf:200:260")
![Page 452](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 452.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 452.pdf:200:260")
![Page 453](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 453.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 453.pdf:200:260")
![Page 454](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 454.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 454.pdf:200:260")
![Page 455](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 455.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 455.pdf:200:260")
![Page 456](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 456.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 456.pdf:200:260")
![Page 457](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 457.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 457.pdf:200:260")
![Page 458](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 458.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 458.pdf:200:260")
![Page 459](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 459.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 459.pdf:200:260")
![Page 460](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 460.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 460.pdf:200:260")
![Page 461](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 461.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 461.pdf:200:260")
![Page 462](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 462.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 462.pdf:200:260")
![Page 463](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 463.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 463.pdf:200:260")
![Page 464](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 464.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 464.pdf:200:260")
![Page 465](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 465.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 465.pdf:200:260")
![Page 466](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 466.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 466.pdf:200:260")
![Page 467](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 467.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 467.pdf:200:260")
![Page 468](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 468.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 468.pdf:200:260")
![Page 469](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 469.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 469.pdf:200:260")
![Page 470](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 470.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 470.pdf:200:260")
![Page 471](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 471.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 471.pdf:200:260")
![Page 472](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 472.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 472.pdf:200:260")
![Page 473](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 473.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 473.pdf:200:260")
![Page 474](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 474.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 474.pdf:200:260")
![Page 475](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 475.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 475.pdf:200:260")
![Page 476](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 476.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 476.pdf:200:260")
![Page 477](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 477.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 477.pdf:200:260")
![Page 478](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 478.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 478.pdf:200:260")
![Page 479](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 479.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 479.pdf:200:260")
![Page 480](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 480.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 480.pdf:200:260")
![Page 481](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 481.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 481.pdf:200:260")
![Page 482](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 482.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 482.pdf:200:260")
![Page 483](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 483.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 483.pdf:200:260")
![Page 484](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 484.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 484.pdf:200:260")
![Page 485](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 485.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 485.pdf:200:260")
![Page 486](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 486.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 486.pdf:200:260")
![Page 487](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 487.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 487.pdf:200:260")
![Page 488](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 488.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 488.pdf:200:260")
![Page 489](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 489.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 489.pdf:200:260")
![Page 490](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 490.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 490.pdf:200:260")
![Page 491](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 491.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 491.pdf:200:260")
![Page 492](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 492.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 492.pdf:200:260")
![Page 493](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 493.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 493.pdf:200:260")
![Page 494](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 494.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 494.pdf:200:260")
![Page 495](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 495.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 495.pdf:200:260")
![Page 496](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 496.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 496.pdf:200:260")
![Page 497](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 497.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 497.pdf:200:260")
![Page 498](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 498.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 498.pdf:200:260")
![Page 499](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 499.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 499.pdf:200:260")
![Page 500](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 500.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 500.pdf:200:260")
![Page 501](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 501.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 501.pdf:200:260")
![Page 502](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 502.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 502.pdf:200:260")
![Page 503](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 503.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 503.pdf:200:260")
![Page 504](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 504.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 504.pdf:200:260")
![Page 505](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 505.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 505.pdf:200:260")
![Page 506](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 506.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 506.pdf:200:260")
![Page 507](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 507.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 507.pdf:200:260")
![Page 508](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 508.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 508.pdf:200:260")
![Page 509](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 509.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 509.pdf:200:260")
![Page 510](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 510.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 510.pdf:200:260")
![Page 511](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 511.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 511.pdf:200:260")
![Page 512](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 512.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 512.pdf:200:260")
![Page 513](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 513.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 513.pdf:200:260")
![Page 514](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 514.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 514.pdf:200:260")
![Page 515](../../static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 515.jpeg "link:../../static/80286/progref/pages/80286_and_80287_Programmers_Reference_Manual_1987 515.pdf:200:260")
[[Full PDF](../../static/80286/progref/80286/progref.pdf)]

View file

@ -0,0 +1,42 @@
80286 REP MOVS and REP INS Restartability
---
The repeated string instructions on 80286 were made restartable after protection violations on the (B-2/B-3) and
later 80286 steppings. Should a protection violation occur when using these instructions in protected mode, it is
possible for the Exception 13 (General Protection Violation) handler to adjust the SI register and/or the DI register
and/or the CX register to allow proper restart of these instructions after it has corrected the protection violation.
[Note that when an external interrupt {from the INTR pin) interrupts a repeated string instruction, the repeated
string instructions on any stepping of 80286 all restart properly just by returning from the interrupt procedure.]
When a protection violation occurs, the exact rules for the exception 13 handler to use when restarting the repeated
string instructions were given in the Intel technical memo "iAPX 286 LOADALL Instruction." However, there is an
errata in the 80286 (B-2/B-3) and (C-2) steppings which prevent the restart rules given in "iAPX 286 LOADALL Instruction"
from properly restarting the REP MOVS and REP INS and REP OUTS instructions after a protection violation under all
conditions. Specifically, there is an inconsistency if a violation occurs on the last word or byte to be transferred by
REP MOVS or REP INS instructions, or a if an IOPL violation occurs from the REP OUTS instruction when the CX register
is initially 0001H.
Case of REP MOVSW or REP MOVSB:
> If the destination of the last word (REP MOVSW) or byte (REP MOVSB) to be moved causes a protection violation,
then the value in the CX register is 0000H. However, for the restart rule covering REP MOVS destination violations
to work properly at all times, the value in CX under this condition should be 0ffffH.
Case of REP INSW or REP INSB:
> If the memory destination of the last word (REP INSW) or byte (REP INSB) to be inputted causes a protection-violation,
then the value in the CX register is 0000H. However, for the restart rule covering REP INS destination violations to work
properly at all times, the value in CX under this condition should be 0ffffH.
Case of REP OUTSW or REP OUTSB:
> If the CX register is initially 0001H and a REP OUTSW or REP OUTSB causes an IOPL violation, then the value in the CX
register will be 0000H. However, for the rule covering REP OUTS restartability after IOPL violations to work properly
at all times, the value in CX (after the CPU detects the violation) under this condition should be 0ffffH.
The above three problems are being corrected in all future steppings of the 80286. When the corrections are made, the CX
register will hold 0ffffH when the CPU detects a violation due to the conditions above. Note that even when REP MOVS and
REP INS restartability is corrected, CX will correctly continue to be 0000H when these instructions complete without generating
a protection violation.
[This information is from an Intel document titled "80286 REP MOVS and REP INS Restartability, 15 October 1984"]

View file

@ -0,0 +1,12 @@
Intel CPU Documentation
---
**NEW**: Historical information on the [Intel 80286 CPU](80286/).
### Assorted Publications
![iAPX 86,88 User's Manual (1981)](static/iAPX_86_88_Users_Manual--1981/thumbs/iAPX_86_88_Users_Manual--1981.jpg "link:http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/1981_iAPX_86_88_Users_Manual.pdf:200:260")
![iAPX 286 Hardware Reference (1983)](static/iAPX_286_Hardware_Reference--1983/thumbs/iAPX_286_Hardware_Reference--1983.jpg "link:http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/1983_iAPX_286_Hardware_Reference.pdf:200:260")
![iAPX 286 OS Writer's Guide (1983)](static/iAPX_286_Operating_System_Writers_Guide--1983/thumbs/iAPX_286_Operating_System_Writers_Guide--1983.jpg "link:http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/1983_iAPX_286_Operating_System_Writers_Guide.pdf:200:260")
![iAPX 286 Programmer Reference (1985)](static/iAPX_286_Programmers_Reference_Manual--1985/thumbs/iAPX_286_Programmers_Reference_Manual--1985.jpg "link:http://bitsavers.trailing-edge.com/pdf/intel/_dataBooks/1985_iAPX_286_Programmers_Reference_Manual.pdf:200:260")
![80286/80287 Programmer Reference (1987)](static/80286/progref/thumbs/80286_and_80287_Programmers_Reference_Manual_1987 1.jpeg "link:80286/progref/:200:260")