View Single Post
  #14  
Old 09-28-2007, 04:12 AM
Grant Stockly Grant Stockly is offline
Administrator
 
Join Date: Jan 2005
Posts: 447
Default

You have to reset the port and send a config byte. You also have to check if there is data waiting in the chip buffer before you try to read the serial chip.

You SHOULD check to make sure that the TRANSMIT buffer is empty before transmitting a byte, but for this test we can assume that since you first have to wait for a byte that there will be more than enough time to transmit it before a new byte has been received. Do you understand that?

Here is a sample program I just wrote. Sometime saturday night I'll get the program from my S-100 book to you.

Code:
;Serial echo program for the 8080 and 2SIO
;
.EQU CONT,0 ;CONTROL/STATUS PORT OF 2SIO CARD
.EQU DATA,1 ;DATA PORT OF 2SIO CARD
;
;
RESET:
   MVI   A, H'03   ;MASTER RESET
   OUT   CONT
   MVI   A, H'15   ;CLK/16, 8N1, RTS LOW TX/RX INTERRUPTS DISABLED
   OUT   CONT
LOADLP:
   IN    CONT      ;WAIT FOR RX BUFFER TO BE FULL
   ANI   H'01
   JZ    LOADLP
   IN    DATA      ;GET DATA
   OUT   DATA      ;SEND DATA
   JMP   LOOP
Reply With Quote