Intel 80C186EB Trapisr, Reportstatus Code 14H, Monitorescape Code 15H, Readbport Code 16H

Models: 80L188EB 80C188EC 80C188EB 80L186EB 80C186EB 80L186EC 80C186EC 80L188EC

1 88
Download 88 pages 32.53 Kb
Page 75
Image 75

6.5.14 TRAP_ISR

This is a pseudo-command. It cannot be issued directly by the host software, but is executed when an INT3 is executed. The INT3 instruction is used by iECM-86 for implementing software breakpoints and for single-stepping. A separate entry point into the STOP_USER command is provided for the INT3 vector. Code at this entry point sets the TRAP_FLAG and then drops into the code that implements the STOP_USER command.

6.5.15 REPORT_STATUS (Code 14H)

This command loads the least-significant word of the RISM_DATA register with status information. Valid status values are 0, 1, and 2:

0—indicates that user code is stopped (RUN_FLAG and TRAP_FLAG are both

FALSE)

1—indicates that user code is running (RUN_FLAG is TRUE)

2—indicates that user code executed a TRAP instruction (TRAP_FLAG is TRUE)

The host software periodically polls the target system to check on its status, and this polling can rob execution time from the user’s program. This loss of target processor cycles can be avoided by setting the Ring Indicator modem status line signal whenever the RUN_FLAG is set. The host software assumes that the target is running user code whenever it detects the ring indicator and issues REPORT_STATUS commands only if the ring indicator is off.

6.5.16 MONITOR_ESCAPE (Code 15H)

This command provides for the addition of RISM commands for special purposes; it uses the RISM_DATA register to extend the command set of the RISM. The basic RISM requires only one of these “extended” commands; if the lower 16-bits of the RISM_DATA register is one (RISM_DATA = 0XXXX0001H), the target processor should execute either a RST (ReSeT) instruction or a software initialization routine.

6.5.17 READ_BPORT (Code 16H)

This command reads the 8-bit input port pointed to by the RISM_ADDR register and places the result in the least-significant byte of the RISM_DATA register.

6.5.18 WRITE_BPORT (Code 17H)

This command stores the least-significant byte of the RISM_DATA register in the 8-bit out- put port pointed to by the RISM_ADDR register.

6.5.19 READ_WPORT (Code 18H)

This command reads the 16-bit input port pointed to by the RISM_ADDR register and places the result in the least-significant word of the RISM_DATA register.

Page 75
Image 75
Intel 80C186EB, 80L188EC Trapisr, Reportstatus Code 14H, Monitorescape Code 15H, Readbport Code 16H, Writebport Code 17H