MSX midi I/O poorten Onbekend, 00-00-00 2.2 msx midi I/O POORTEN 0E8H (READ) B7 B6 B5 B4 B3 B2 B1 B0 (data) RXD7 RXD6 RXD5 RXD4 RXD3 RXD2 RXD1 RXD0 (WRITE) TXD7 TXD6 TXD5 TXD4 TXD3 TXD2 TXD1 TXD0 (data) RXD7-RXD0 = 8251 ONTVANGEN DATA TXD7-TXD0 = 8251 TE VERZENDEN DATA 0E9H (READ) B7 B6 B5 B4 B3 B2 B1 B0 (status) DSR BRK FE OE PE EMPT RDDY TRDY DSR 8253 DATA SET READY BRK 8251 SYNC DETECTION FE 8251 FRAMING ERROR OE 8251 OVERRUN ERROR PE 8251 PARITY ERROR EMPT 8251 TRANSMITTER EMPTY RRDY 8251 RECEIVER READY TRDY 8251 TRANSMITTER READY (WRITE) DE EERSTE DATA NA EEN RESET DIE IN HET COMMAND REGISTER GESCHREVEN MOET WORDEN IS DE MODE INSTRUCTION DE MODE INSTRUCTION ZIET ER ALS VOLGT UIT: B7 B6 B5 B4 B3 B2 B1 B0 S2 S1 EP PEN L2 L1 B2 B1 B2,B1 BIT 1,0 00=SYNCHRONE MODE 01=BAUDRATE FACTOR IS 1 10=BAUDRATE FACTOR IS 16 11=BAUDRATE FACTOR IS 64 L2,L1 BIT 3,2 00=5 DATA BITS 01=6 DATA BITS 10=7 DATA BITS 11=8 DATA BITS PEN BIT 4 0=GEEN PARITEITSBIT 1=PARITEITSBIT AANWEZIG EP BIT5 0= ONEVEN PARITEIT 1= EVEN PARITEIT -> NIET NODIG ALS PEN=0 S2,S1 BIT7,6 00=NIET TOEGESTAAN 01=1 STOPBIT 10=1.5 STOPBIT 11=2 STOPBITS ->GELDT ALLEEN VOOR DE ZENDER, DE ONTVANGER HEEFT ALTIJD VOLDOENDE AAN 1 STOPBIT INDIEN BIT1,0 =00 DAN IS HET DE SYNCHRONE MODE, DAN HEBBEN DE BITS7,6 DE VOLGENDE BETEKENIS BIT 6 ESD 0=INTERNE SYNCHRONISATIE 1=EXTERNE SYNCHRONISATIE BIT 7 SCS 0= 1 SYNC KARAKTER 1= 2 SYNHC KARAKTERS DE SYNC KARAKTERS MOETEN DIRECT NA DE MODE INSTRUCTION NAAR HET COMMANDO REGISTER GESCHREVEN WORDEN NA DE MODE INSTRUCTION KAN DE COMMAND INSTRUCTION GESCHREVEN WORDEN OP IEDER GEWENST MOMENT. DE MODE INSTRUCTION ZIET ER ALS VOLGT UIT: B7 B6 B5 B4 B3 B2 B1 B0 EH IR RIE ER SBRK RE TIE TEN EH :0=GEEN EFFECT ;1=HUNT MODE IR :0=GEEN EFFECT ;1=INTERNAL RESET RIE: RTS? ER :0=GEEN EFFECT ;1=RESET ERROR FLAGS PE,OE,FE SBRK:0=GEEN EFFECT;1=ZEND BREAK KARAKTER PE :0=DISABLE ONTVANGER;1=ENABLE ONTVANGER TIE :CTS? TEN :0=DISABLE ZENDER:1=ENABLE ZENDER VOOR EEN INITIALISATIE VOOR DE IN EN UITGANG VAN DE MIDIPOORTEN MOET DUS NAAR 0E9H DE VOLGENDE BYTES GESTUURDE WORDEN: 00H,00H,00H,40H ZIE VOOR VOORBEELDEN HET PROGRAMMA [THRU.MAC] OP DE BIJGELEVERDE SCHIJF. 8253 OUT2 INTERRUPT (0EAH,0EBH) 0EAH (WRITE) B7 B6 B5 B4 B3 B2 B1 B0 - - - - - - - - GEEFT INTERRUPT AF . WEL RESETTEN 8253 COUNTERS (0ECH-0EFH) 0EFH (READ) B7 B6 B5 B4 B3 B2 B1 B0 - - - - - - - - (WRITE) SC1 SC0 RW1 RW0 M2 M1 M0 BCD SC1,SC0 : 00=SELECT COUNTER 0 01=SELECT COUNTER 1 10=SELECT COUNTER 2 11=NIET TOEGESTAAN RW1,RW0 : 00=LATCH COUNTER 01=LEES/LAAD ALLEEN MSB 10=LEES/LAAD ALLEEN LSB 11=LEES/LAAD LSB EN MSB M2,M1,M0: 000=MODE0 (INTERRUPT ON TERMINAL COUNT BV TIME OUT VAN EEN MODEM) 001=MODE1 (PROGRAMMEERBARE ONE SHOT) X10=MODE2 (RATE GENERATO BV REAL TIME CLOCK) X11=MODE3 (BLOCKGOLF GENERATOR BV BAUDRATE GENERATOR) 100=MODE4 (SOFTWARE TRIGGERED STROBE) 101=MODE5 (HARDWARE TRIGGERED STROBE BV PULSBREEDTE METING) BCD : 0= BINAIR TELLEN 1= BCD TELLEN 0ECH (R/W) B7 B6 B5 B4 B3 B2 B1 B0 CT7 CT6 CT5 CT4 CT3 CT2 CT1 CT0 0EDH (R/W) B7 B6 B5 B4 B3 B2 B1 B0 CT17 CT16 CT15 CT14 CT13 CT12 CT11 CT10 0EEH (R/W) B7 B6 B5 B4 B3 B2 B1 B0 C727 CT26 CT25 CT24 CT23 CT22 CT21 CT20 CT7-CT0 = DATA COUNTER 0 CT17-CT10 = DATA COUNTER 1 CT27-CT20 = DATA COUNTER 2 0E2H (WRITE) B7 B6 B5 B4 B3 B2 B1 B0 EN -- -- -- -- -- -- E8 EN = MIDI INTERFACE AAN/UIT (AAN=0,UIT=1) E8 = MIDI INTERFACE OP E8H/E9H OF E0H/E1H (0=E8/E9,1=E0/E1) 0E0H (READ) B7 B6 B5 B4 B3 B2 B1 B0 (data) RXD7 RXD6 RXD5 RXD4 RXD3 RXD2 RXD1 RXD0 (WRITE) TXD7 TXD6 TXD5 TXD4 TXD3 TXD2 TXD1 TXD0 (data) RXD7-RXD0 = 8251 ONTVANGEN DATA TXD7-TXD0 = 8251 TE VERZENDEN DATA 0E1H (READ) B7 B6 B5 B4 B3 B2 B1 B0 (status) DSR BRK FE OE PE EMPT RDDY TRDY DSR 8253 DATA SET READY BRK 8251 SYNC DETECTION FE 8251 FRAMING ERROR OE 8251 OVERRUN ERROR PE 8251 PARITY ERROR EMPT 8251 TRANSMITTER EMPTY RRDY 8251 RECEIVER READY TRDY 8251 TRANSMITTER READY (WRITE) DE EERSTE DATA NA EEN RESET DIE IN HET COMMAND REGISTER GESCHREVEN MOET WORDEN IS DE MODE INSTRUCTION. DE MODE INSTRUCTION ZIET ER ALS VOLGT UIT: B7 B6 B5 B4 B3 B2 B1 B0 S2 S1 EP PEN L2 L1 B2 B1 B2,B1 BIT 1,0 00=SYNCHRONE MODE 01=BAUDRATE FACTOR IS 1 10=BAUDRATE FACTOR IS 16 11=BAUDRATE FACTOR IS 64 L2,L1 BIT 3,2 00=5 DATA BITS 01=6 DATA BITS 10=7 DATA BITS 11=8 DATA BITS PEN BIT 4 0=GEEN PARITEITSBIT 1=PARITEITSBIT AANWEZIG EP BIT5 0= ONEVEN PARITEIT 1= EVEN PARITEIT -> NIET NODIG ALS PEN=0 S2,S1 BIT7,6 00=NIET TOEGESTAAN 01=1 STOPBIT 10=1.5 STOPBIT 11=2 STOPBITS ->GELDT ALLEEN VOOR DE ZENDER, DE ONTVANGER HEEFT ALTIJD VOLDOENDE AAN 1 STOPBIT INDIEN BIT1,0 =00 DAN IS HET DE SYNCHRONE MODE, DAN HEBBEN DE BITS7,6 DE VOLGENDE BETEKENIS BIT 6 ESD 0=INTERNE SYNCHRONISATIE 1=EXTERNE SYNCHRONISATIE BIT 7 SCS 0= 1 SYNC KARAKTER 1= 2 SYNHC KARAKTERS DE SYNC KARAKTERS MOETEN DIRECT NA DE MODE INSTRUCTION NAAR HET COMMANDO REGISTER GESCHREVEN WORDEN NA DE MODE INSTRUCTION KAN DE COMMAND INSTRUCTION GESCHREVEN WORDEN OP IEDER GEWENST MOMENT DE MODE INSTRUCTION ZIET ER ALS VOLGT UIT: B7 B6 B5 B4 B3 B2 B1 B0 EH IR RIE ER SBRK RE TIE TEN EH :0=GEEN EFFECT ;1=HUNT MODE IR :0=GEEN EFFECT ;1=INTERNAL RESET RIE : ? ER :0=GEEN EFFECT ;1=RESET ERROR FLAGS PE,OE,FE SBRK:0=GEEN EFFECT;1=ZEND BREAK KARAKTER PE :0=DISABLE ONTVANGER;1=ENABLE ONTVANGER TIE :? TEN :0=DISABLE ZENDER:1=ENABLE ZENDER CHECK MIDI MSX TURBO DAN STAAT BIJ DESTATUS VAN POORT 002DH DE WAARDE 03H INTERNE MSX MIDI OF U-PACK (GEEN FMBASIC) ADRES INTERNE EXTERNE __________________________________________________________ 4018H 41H(A) ??H(?) 4019H 50H(P) ??H(?) 401AH 52H(R) ??H(?) 401BH 4CH(L) ??H(?) 401CH 4FH(O) 4DH(M) 401DH 50H(P) 49H(I) 401EH 4CH(L) 44H(D) 401FH 4CH(L) 49H(I) __________________________________________________________ |