The top the system segment (segment 0FFh
) contains certain
defined addresses which may be accessed by the user of EXOS. These are:
0BFFFh - USR_P3 | These are the four segments which 0BFFEh - USR_P2 | were paged in when EXOS was last 0BFFDh - USR_P1 | called. 0BFFCh - USR_P0 | Undefined when not in EXOS. 0BFFA/Bh - STACK_LIMIT Lower limit of the system stack which devices may ues. Allows a safety margin for interrupts. 0BFF8/9h - RST_ADDR Warm reset address, must be in page zero. 0BFF6/7h - ST_POINTER Z80 address of the statusline RAM. 0BFF4/5h - LP_POINTER Z80 address of the start of the video line parameter table. 0BFF3h - PORTB5 Current contents of Z80 port 0B5h, used if any bits are modified. 0BFF2h - FLAG_SOFT_IRQ Flag set to nonzero value to cause a software interrupt. The value will become the software interrupt code. 0BFF0/1h - SECOND_COUNTER 16bit seconds counter, never read by EXOS or built in devices. 0BFEFh - CRDISP_FLAG Flag can be set nonzero by an extension ROM when it is called to be initialised (action code 8) to suppress the initial flashing display. 0BFED/Eh - USER_ISR Address of user interrupt routine, must be in page 0. 0000h for no user interrupt routine.