list off ; ----------------------------------------------------------------------------- ; iop definitions ; number of iops. NIOPS equ 4 ; number of quadarts per iop NQDS equ 16 IOP1DPORT equ 0CFH ; data port number of IOP1 (from the point of view of the host) ; (the data port number of IOP2 is 0BFH, of IOP3 is 0AFH, of IOP4 is 09FH.) ; INTVECRG byte (iop interrupt vector in the host system) IOP1IVEC equ 40H ; host interrupt vector from IOP1 ; for IOP2 it is 42H, for IOP3 it is 44H, for IOP4 it is 46H ; number of iop channels. ; when the host commands the iop, it outputs a byte to the CMDREG. ; this byte has the iop channel number in the lower bits and the command number ; in the upper bits. NCHANS equ 32 ; (must be a power of 2. determines how many ; bits the iop channel number occupies in ; the lower bits of CMDREG.) CHNMSK equ NCHANS - 1 ; channel number mask CMDMSK equ not CHNMSK ; command number mask ; iop port numbers (from the point of view of the iop) CMDREG equ 0 ; input: command from host STATREG equ 0 ; output: iop status to host DATAREG equ 1 ; i/o: data to & from host FLAGREG equ 2 ; input: status from host CNTRLREG equ 2 ; output: control of interrupts, etc. INTVECRG equ 3 ; output: interrupt vector for host's INTA ; STATREG flags or bits (output to host by iop) SfCMDTBE equ 1 ; iop ready for a command from the host SfDATRDA equ 6 ; iop has data available for the host SfDATTBE equ 7 ; iop has read the data from the host ; STATREG messages using bits 2, 3, 4, and 5 (output to host by iop) SmMAXMSG equ 0fH<<2 ; maximum numerical value of iop ; message to host SmERROR equ 0fH<<2 ; iop command error SmWAIT equ 0eH<<2 ; wait until awaken by the iop SmNODATA equ 0dH<<2 ; no data for host (EOF) SmABORT equ SmNODATA; abort the host system call SmLAST equ 01H<<2 ; last datum for host (delimiter) ; the iop indicates to the host the status of the previous command ; by outputting something to DATAREG (to explain to the host ; the reason for the error in the case of command error, or as a response ; to the command for some types of commands) ; and then outputting one of the following bytes to STATREG ; ; ^SfCMDTBE iop ready for a new command from host ; ^SfCMDTBE | SmWAIT iop cannot complete host's command now ; ^SfCMDTBE | SmERROR iop command error SGPHANGUP equ sigmax + 1 ; modem has hung up, signal process SGMAXIMUM equ SGPHANGUP ; IOP uses one signal more than Cromix ; equ sigmax + 2 ; (spare) SGWAKEUP equ sigmax + 3 ; wake host up & then have host wake iop up ; value in c-register when .SETMODE is called for the device IOMEM IOMD_RESET equ -99 ; reset the IOP system IOMD_POSITION equ 0 ; set memory location in the IOP ; for reading & writing list on