Programming

The IP-Octal is designed around the SCC2698B and all of the SCC2698 functions are available. The SCC298B is divided into four Functional Blocks lettered A through D. Each functional block contains two serial channels. The channels are identified by lower case letters a through h. The SCC2698B contains 64 internal registers, 16 for each functional block. Each of these registers are accessible using a read or write to the IP-Octal I/O space. The SCC2698 manual is included with the Technical Documentation to provide the user with detailed information about these registers.

The IndustryPack provides an external vector register. The address of the vector register, which may also be read normally, is in the upper half of the ID PROM space of the IndustryPack, on odd bytes. The address offsets are shown in Figure 7.

There is also provision for mapping the vector register to IP memory space. This is required primarily when the IP is installed on a Motorola MVME162 CPU board. In this mode, no address offset is required; the memory base address is sufficient.

CarrierBusAddress
VIPC310VMEbusIP I/O base + $C1
VIPC610VMEbusIP I/O base + $C1
MVME162IPICIP Memory base
RM1260NuBusIP ID base + $81
RM1270NuBusIP ID base + 83

Figure 7 Location of the Vector Register

The eight bit vector is loaded by the host software prior to enabling interrupts. The interrupts service routine polls the SCC2698B to determine the detailed cause of the interrupt. Function Blocks A and B interrupt on IRQ0. Function Blocks C and D interrupt on IRQ1. See the User Manual for your IP Carrier tor interrupt mapping to your bus. Note that although two distinct interrupt levels are provided, there is a single vector for the IndustryPack.

A Hypercard stack is available that permits quick demonstration, testing and prototyping of the IP-Octal Serial. A GreenSpring RM1270 SupportBoard and a Greenspring RackMac or user provide Apple Macintosh II family computer is required.