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