SMB EQU -1 ;TDL-SMB CONFIGURATION (MC6850) TUART EQU 0 ;CROMEMCO TU-ART CONFIG (TMS5501) DISCO EQU 0 ;INFO 2000 DISCOMEM (8251 USART) TEI1 EQU 0 ;TEI CONFIGURATION (8251 USART) TEI2 EQU 0 ;TEI CONFIGURATION (AY 5-1013) JADE EQU 0 ;JADE I/O BOARD (AY 5-1013) MPUB EQU 0 ;IMSAI MPUB CONFIG (8251 USART) BSII EQU 0 ;BITSTREAMER II (8251 USART) SYS8 EQU 0 ;AMD AmSYS 8/8 (8251 USART) MSLICE EQU 0 ;SCION Microslice (2651 USART) SSMIO4 EQU 0 ;SSM I/O-4 PTC EQU 0 ;Proc. Tech. 3P+S (TMS6011NC) SDS EQU 0 ;SD Systems SBC-100/200 (8251 USART) DGS EQU 0 ;Digital Group System (8251 USART) IMS440 EQU 0 ;IMS-440 I/O BOARD (6402 UART) MPMCON EQU 0 ;MP/M Console operation ;--THESE SHOULD WORK BUT HAVE NOT BEEN FULLY CHECKED OUT YET PNTCPM EQU 0 ;P&T CP/M 2.2 for the TRS-80 Mod II GODBOT EQU 0 ;Godbout Interfacer II (UART CFIG FIXED) ;--NOT YET FULLY IMPLIMENTED HEATH EQU 0 ;HEATH H-8 CONFIGURATION (INS 8250) ; NOTE: TUART PARITY & NUM.DATA.BITS IS NOT PROGRAMMABLE. ; IT IS FIXED FOR DATA.BITS=7 & PARITY=0. ; NOTE: DISCOMEM SELECTION REQUIRES CONSOLE DEVICE OPERATE AT ; A FIXED BAUD RATE. CURRENTLY SET FOR 9600 BAUD. ;--INITIALIZE UART/USART CONDITIONAL ASSEMBLY FLAGS TO ZERO MC6850 SET 0 TMS5501 SET 0 INT8251 SET 0 JAD1013 SET 0 TEI1013 SET 0 INS8250 SET 0 SIG2651 SET 0 TMS6011 SET 0 IMS6402 SET 0 BAUDFLG SET 0 ;ENABLES VARIABLE BAUD RATE (HARDWARE DEPENDANT) CANBRK SET 0 ;ENABLES BREAK COMMAND (HARDWARE DEPENDANT) INVSTAT SET 0 ;INVERTS STATUS BITS (i.e., active low or zero) ;-- ******************************************************************* ;+++++++++++++++++++++++ MP/M CONFIGURATION +++++++++++++++++++++++++++ IF MPMCON ;--ASSUMES MODEM PORT IS PRE-INITIALIZED FOR: 7 DATA BITS, EVEN PARITY MPMGO EQU 2 ;THE CONSOLE NUMBER USED UNDER MP/M FOR THE MODEM RDA EQU 1 ;DUMMY RECEIVED DATA AVAILABLE ENDIF ;+++++++++++++++++++++++ SMB CONFIGURATION ++++++++++++++++++++++++++++ IF SMB ;--PORTS 72H & 73H ARE USUALLY IDENTIFIED AS CRT PORTS CMD EQU 072H ;COMMAND REGISTER STATUS EQU 072H ;STATUS REGISTER RXDATA EQU 073H ;SERIAL DATA IN TXDATA EQU 073H ;SERIAL DATA OUT CANBRK SET -1 MC6850 SET -1 ENDIF ;++++++++++++++++++++++++ TU-ART CONFIGURATION ++++++++++++++++++++++++ IF TUART ;--PORTS 20H, 21H, & 22H ARE COMPATIBLE WITH CROMEMCO SYSTEM 3 CMD EQU 022H ;COMMAND REGISTER STATUS EQU 020H ;STATUS REGISTER RXDATA EQU 021H ;SERIAL DATA IN TXDATA EQU 021H ;SERIAL DATA OUT BAUD EQU 020H ;BAUD RATE CONTROL ;--BAUD RATE VALUES (APPLIES TO TU-ART ONLY) BAUD10 EQU 081H ;110 BAUD (MSB=1 ==> NO.STOP.BITS=1) BAUD15 EQU 082H ;150 BAUD BAUD30 EQU 084H ;300 BAUD BAUD120 EQU 088H ;1200 BAUD BAUD240 EQU 090H ;2400 BAUD BAUD480 EQU 0A0H ;4800 BAUD BAUD960 EQU 0C0H ;9600 BAUD STOPB1 EQU 080H ;ONE STOP BIT CANBRK SET -1 TMS5501 SET -1 BAUDFLG SET -1 ENDIF ;PAGE ;++++++++++++++++++++++++ DISCO CONFIGURATION ++++++++++++++++++++++++ IF DISCO ;--PORTS 0A4H, & 0A5H ARE IDENTIFIED WITH PORT "B" CMD EQU 0A5H ;COMMAND REGISTER STATUS EQU 0A5H ;STATUS REGISTER RXDATA EQU 0A4H ;SERIAL DATA IN TXDATA EQU 0A4H ;SERIAL DATA OUT BAUD EQU 0A8H ;BAUD RATE CONTROL ;--BAUD RATE VALUES BAUD10 EQU 2 SHL 4 ;110 BAUD BAUD15 EQU 4 SHL 4 ;150 BAUD BAUD30 EQU 5 SHL 4 ;300 BAUD BAUD120 EQU 7 SHL 4 ;1200 BAUD BAUD240 EQU 10 SHL 4 ;2400 BAUD BAUD480 EQU 12 SHL 4 ;4800 BAUD BAUD960 EQU 14 SHL 4 ;9600 BAUD BRSAVE EQU 0FF00H ;BIOS SAVE LOCATION FOR BAUD RATES (BOTH A AND B) BBRMSK EQU 0F0H ;CHANNEL B BAUD RATE MASK CANBRK SET -1 INT8251 SET -1 BAUDFLG SET -1 ENDIF ;PAGE ;+++++++++++++++++++++++ TEI1 CONFIGURATION ++++++++++++++++++++++++++++ IF TEI1 ;--PORT 2 & 3 ARE USUALLY IDENTIFIED AS TTY PORTS CMD EQU 003H ;COMMAND REGISTER STATUS EQU 003H ;STATUS REGISTER RXDATA EQU 002H ;SERIAL DATA IN TXDATA EQU 002H ;SERIAL DATA OUT CANBRK SET -1 INT8251 SET -1 ENDIF ;++++++++++++++++++++++++ TEI2 CONFIGURATION +++++++++++++++++++++++++++ IF TEI2 ;--THIS DEVICE IS USUALLY USED FOR FUNCTION KEYS & BIT LIGHTS CMD EQU 040H ;COMMAND REGISTER STATUS EQU 040H ;STATUS REGISTER RXDATA EQU 041H ;SERIAL DATA IN TXDATA EQU 041H ;SERIAL DATA OUT TEI1013 SET -1 INVSTAT SET -1 ENDIF ;PAGE ;++++++++++++++++++++++++ JADE CONFIGURATION ++++++++++++++++++++++++++ IF JADE ;--PORT 00 & 80 ARE USUALLY IDENTIFIED AS PORT B CMD EQU 080H ;COMMAND REGISTER STATUS EQU 080H ;STATUS REGISTER RXDATA EQU 000H ;SERIAL DATA IN TXDATA EQU 000H ;SERIA DATA OUT JAD1013 SET -1 ENDIF ;+++++++++++++++++++++ HEATH H-8 CONFIGURATION ++++++++++++++++++++++++ IF HEATH ;--PORT ADDRESSES CMD EQU 333Q ;COMMAND REGISTER STATUS EQU 335Q ;STATUS REGISTER RXDATA EQU 330Q ;SERIAL DATA IN TXDATA EQU 330Q ;SERIAL DATA OUT BAUDR1 EQU 330Q ;BAUD CONTROL REGISTER 1 (MDLL) BAUDR2 EQU 331Q ;BAUD CONTROL REGISTER 2 (MDLM) ;--SPEDIAL PORT ADDRESSES MIER EQU 331Q MCR EQU 334Q ;--BAUD RATE VALUES (APPLIES TO H-8 ONLY) BAUD10 EQU 001H ;110 BAUD BAUD15 EQU 001H ;150 BAUD BAUD30 EQU 001H ;300 BAUD BAUD120 EQU 001H ;1200 BAUD BAUD240 EQU 001H ;2400 BAUD BAUD480 EQU 001H ;4800 BAUD BAUD960 EQU 001H ;9600 BAUD CANBRK SET -1 INS8250 SET -1 BAUDFLG SET -1 ENDIF ;PAGE ;++++++++++++++++++++++++ MPUB CONFIGURATION ++++++++++++++++++++++++++ IF MPUB ;--SERIAL PORT ADDRESSES CMD EQU 005H ;COMMAND REGISTER STATUS EQU 005H ;STATUS REGISTER RXDATA EQU 004H ;SERIAL DATA IN TXDATA EQU 004H ;SERIA DATA OUT CANBRK SET -1 INT8251 SET -1 ENDIF ;++++++++++++++++++++++++ BSII CONFIGURATION ++++++++++++++++++++++++ IF BSII BSIIBAS EQU 0 ;BS II BASE ADDRESS (LEGAL VALUES 0..7) BSIICHN EQU 2 ;BS II CHANNEL OFFSET CH-A => 2, CH-B => 4, CH-C => 6 CMD EQU BSIIBAS+BSIICHN+1 ;COMMAND REGISTER STATUS EQU BSIIBAS+BSIICHN+1 ;STATUS REGISTER RXDATA EQU BSIIBAS+BSIICHN+0 ;SERIAL DATA IN TXDATA EQU BSIIBAS+BSIICHN+0 ;SERIAL DATA OUT ; BAUD RATES SWITCH SELECTABLE ON BS II BOARD CANBRK SET -1 INT8251 SET -1 ENDIF ;PAGE ;++++++++++++++++++++++++ MSLICE CONFIGURATION ++++++++++++++++++++++++ IF MSLICE ;--SERIAL PORT ADDRESSES CMD EQU 003H ;COMMAND REGISTER STATUS EQU 001H ;STATUS REGISTER RXDATA EQU 000H ;SERIAL DATA IN TXDATA EQU 000H ;SERIAL DATA OUT MODE EQU 002H ;INIT & BAUD CONTROL ;--BAUD RATE VALUES BAUD10 EQU 032H ;110 BAUD BAUD15 EQU 034H ;150 BAUD BAUD30 EQU 035H ;300 BAUD BAUD120 EQU 037H ;1200 BAUD BAUD240 EQU 03AH ;2400 BAUD BAUD480 EQU 03CH ;4800 BAUD BAUD960 EQU 03EH ;9600 BAUD CANBRK SET -1 SIG2651 SET -1 BAUDFLG SET -1 ENDIF ;+++++++++++++++++++++++ SYS8 CONFIGURATION ++++++++++++++++++++++++++++ IF SYS8 ;--PORT DC & DD ARE ASSOCIATED WITH CONNECTOR 9 CMD EQU 0DDH ;COMMAND REGISTER STATUS EQU 0DDH ;STATUS REGISTER RXDATA EQU 0DCH ;SERIAL DATA IN TXDATA EQU 0DCH ;SERIAL DATA OUT CANBRK SET -1 INT8251 SET -1 ENDIF ;PAGE ;++++++++++++++++++++++++ SBC100/200 CONFIGURATION ++++++++++++++++++++ IF SDS ;--SERIAL PORT ADDRESSES CMD EQU 07DH ;COMMAND REGISTER STATUS EQU 07DH ;STATUS REGISTER RXDATA EQU 07CH ;SERIAL DATA IN TXDATA EQU 07CH ;SERIAL DATA OUT BAUD EQU 078H ;CTC-0 CONTROL REGISTER BAUD2 EQU 005H ;CTC INIT BYTE ;--BAUD RATE VALUES BAUD10 EQU 057H ;110 BAUD BAUD15 EQU 040H ;150 BAUD BAUD30 EQU 020H ;300 BAUD BAUD120 EQU 008H ;1200 BAUD BAUD240 EQU 004H ;2400 BAUD BAUD480 EQU 002H ;4800 BAUD BAUD960 EQU 001H ;9600 BAUD CANBRK SET -1 INT8251 SET -1 BAUDFLG SET -1 ENDIF ;+++++++++++++++++++++++++++++ SSM I/O-4 +++++++++++++++++++++++++++ IF SSMIO4 ;--PORT ADDRESSES CMD EQU 03H ;COMMAND REGISTER STATUS EQU 03H ;STATUS REGISTER RXDATA EQU 02H ;SERIAL DATA IN TXDATA EQU 02H ;SERIAL DATA OUT CANBRK SET -1 TMS6601 SET -1 ENDIF ;PAGE ;+++++++++++++++++++++++ PROC. TECH. CONFIGURATION ++++++++++++++++++++++++++ IF PTC ;--PORT ADDRESSES (AS SPECIFIED FOR SOL COMPUTER SYSTEM) CMD EQU 0F8H ;COMMAND REGISTER STATUS EQU 0F8H ;STATUS REGISTER RXDATA EQU 0F9H ;SERIAL DATA IN TXDATA EQU 0F9H ;SERIAL DATA OUT TMS6011 SET -1 ENDIF ;+++++++++++++++ DIGITAL GROUP SYSTEM CONFIGURATION ++++++++++++++++++++ IF DGS ;--PORTS 10 & 11 ARE ASSOCIATED WITH USART # 1 CMD EQU 011H ;COMMAND REGISTER STATUS EQU 011H ;STATUS REGISTER RXDATA EQU 010H ;SERIAL DATA IN TXDATA EQU 010H ;SERIAL DATA OUT CANBRK SET -1 INT8251 SET -1 ENDIF ;PAGE ;++++++++++++++++ INDUSTRIAL MICRO SYSTEMS ++++++++++++++++++++++++++ PORT EQU 1 ;PORT WITHIN THE IMS440 BOARD IF IMS440 ;--SELECT XTAL VALUE AS A FUNCTION OF XTAL EQU 7680 ;USED WITH ON BOARD OSCILLATOR ;XTAL EQU 12500 ;ASSUMES NO ON-BOARD OSCILLATOR IOB EQU 40H ;BASE ADDRESS OF THE IMS440 BOARD CMD EQU IOB + 2*PORT STATUS EQU IOB + 2*PORT RXDATA EQU IOB + 1 + 2*PORT TXDATA EQU IOB + 1 + 2*PORT ;--BAUD RATE VALUES BAUD10 EQU XTAL/11 ;110 BAUD BAUD15 EQU XTAL/15 ;150 BAUD BAUD30 EQU XTAL/30 ;300 BAUD BAUD120 EQU XTAL/120 ;1200 BAUD BAUD240 EQU XTAL/240 ;2400 BAUD BAUD480 EQU XTAL/480 ;4800 BAUD BAUD960 EQU XTAL/960 ;9600 BAUD CNTVAL EQU IOB + 4 + PORT ;COUNT INITIALIZATION REGISTER CNTID EQU 036H + PORT*40H ;COUNTER IDENTITY CNTSEL EQU IOB + 7 ;COUNTER CONTROL REGISTER BAUDFLG SET -1 IMS6402 SET -1 ENDIF ;PAGE ;+++++++++++++++++++ P&T TRS-80 Mod II +++++++++++++++++++++ IF PNTCPM EXX EQU 0D9H ;Z-80 REG EXCHANGE OP-CODE PNT EQU 040H ;P&T JUMP VECTOR LOCATION CHANL EQU 1 ;1 ==> PORT A, 2 ==> PORT B CMD EQU 0 ;DUMMY VALUE STATUS EQU CHANL+4 ;STATUS REGISTER RXDATA EQU CHANL+0 ;SERIAL DATA IN TXDATA EQU CHANL+2 ;SERIAL DATA OUT ;--UART CONFIGURED BY P&T "SETUP" FUNCTION RDA EQU 001H ;RECEIVED DATA AVAILABLE TBE EQU 004H ;TRANSMITTER BUFFER EMPTY ENDIF ;++++++++++++++++++ GODBOUT INTERFACER II ++++++++++++++++++++ IF GODBOT CMD EQU 011H ;COMMAND PORT STATUS EQU 011H ;STATUS PORT RXDATA EQU 010H ;RECEIVED DATA PORT TXDATA EQU 010H ;TRANSMITTED DATA PORT ;--UART CONFIGURATION JUMPER CONTROLLED RDA EQU 002H ;RECEIVED DATA AVAILABLE BIT TBE EQU 001H ;TRANSMITTER BUFFER EMPTY BIT ENDIF ;PAGE ;++ ******************************************************************* ; UART/USART SPECIFICATIONS ; ========================= IF MC6850 ;--STATUS & COMMAND BIT VALUES (7 DATA BITS, EVEN PARITY, ONE STOP BIT) RDA EQU 001H ;RECEIVED DATA AVAILABLE TBE EQU 002H ;TRANSMITTER BUFFER EMPTY RESET EQU 04BH ;UART RESET INIT EQU 049H ;UART INITIALIZATION (FOLLOWING RESET) BREAK EQU 069H ;TRANSMIT A BREAK (MUST BE PULSED) ENDIF IF TMS5501 ;--STATUS & COMMAND VALUES RDA EQU 040H ;RECEIVED DATA AVAILABLE TBE EQU 080H ;TRANSMITTER BUFFER EMPTY RESET EQU 001H ;TU-ART RESET INIT EQU 000H ;UART INITIALIZATION (FOLLOWING RESET) BREAK EQU 002H ;TRANSMIT A BREAK (MUST BE PULSED) ENDIF IF INT8251 ;--STATUS & COMMAND VALUES RDA EQU 002H ;RECEIVED DATA AVAILABLE TBE EQU 001H ;TRANSMITTER BUFFER EMPTY RESET EQU 050H ;CONTROL = ERROR.RESET, INTERNAL.RESET INIT1 EQU 07AH ;MODE = 1-STOP, EVEN.PARITY, 7-BITS, 16X.BAUD INIT2 EQU 027H ;CONTROL = RTS, RX.EN, DTR, TX.EN BREAK EQU 02AH ;CONTROL = RTS, SEND.BREAK, DTR ENDIF IF JAD1013 ;--STATUS & COMMAND VALUES RDA EQU 010H ;RECEIVED DATA AVAILABLE TBE EQU 080H ;TRANSMITTER BUFFER EMPTY RESET EQU 000H ;UART RESET INIT EQU 028H ;7 DATA BITS, EVEN PARITY, 1 STOP BIT ENDIF IF TEI1013 ;--STATUS & COMMAND VALUES RDA EQU 001H ;RECEIVED DATA AVAILABLE TBE EQU 080H ;TRANSMITTER BUFFER EMPTY RESET EQU 000H ;UART RESET INIT EQU 000H ;7 DATA BITS, EVEN PARITY, 1 STOP BIT ENDIF IF INS8250 ;--STATUS & COMMAND VALUES RDA EQU 001H ;RECEIVED DATA AVAILABLE TBE EQU 020H ;TRANSMITTER BUFFER EMPTY RESET EQU 000H ;DUMMY VALUE INIT EQU 01AH ;EVEN PARITY, 1 STOP, 7 DATA BITS DLSEL EQU 080H ;DIVISION LATCH SELECT BREAK EQU 040H ;TRANSMIT A BREAK (MUST BE PULSED) ENDIF IF SIG2651 ;--STATUS & COMMAND VALUES RDA EQU 002H ;RECEIVED DATA AVAILABLE TBE EQU 001H ;TRANSMITTER BUFFER EMPTY RESET EQU 037H ;UART RESET INIT EQU 037H ;PARTIAL INITIALIZATION MODE1 EQU 079H ;1 STOP, EVEN_PAR, 7 D_BITS, 1X BAUD MODE2 EQU 037H ;RX & TX CLOCK <= BRCLK, 300 BAUD BREAK EQU 03FH ;TRANSMIT A BREAK (MUST BE PULSED) ENDIF IF TMS6011 ;--STATUS & COMMAND VALUES RDA EQU 040H ;RECEIVED DATA AVAILABLE TBE EQU 080H ;TRANSMITTER BUFFER EMPTY RESET EQU 010H ;REQUEST TO SEND INIT EQU 010H ;BIT CONFIGURATION SWITCH SELECTIBLE ENDIF IF IMS6402 ;--STATUS & COMMAND VALUES RDA EQU 001H ;RECEIVED DATA AVAILABLE TBE EQU 002H ;TRANSMITTER BUFFER EMPTY RESET EQU 000H ;DUMMY RESET INIT EQU 013H ;7 DATA BITS, EVEN PARITY, 1 STOP BIT ENDIF ;-- *******************************************************************