First post, by mike_canada
			
								mike_canada
								Offline
			
			
				
					
			
		
					
																	Rank
				Member
																
			I'm trying to monitor serial port output from Qbasic in linux.
This is the value I use for serial1 in the dosbox config file under the serial section:
serial1=nullmodem server:127.0.0.1 port:8002 transparent:1
This is my mini script to start dosbox with the serial port connection linked into linux:
#!/bin/bashsocat -4 PTY,link="/tmp/dbser",raw,echo=0 TCP4-LISTEN:8002 &dosbox
After Dosbox starts, I execute this in another linux console on the same computer:
od -tx1 -w1 /tmp/dbser
Now I run qbasic in dosbox and run the following command one at a time, replacing the last number after comma with a different one:
out &H3F8,1
That works. But the problem arises when I send a whole bunch of them out in one go like this:
out &H3F8,1out &H3F8,2out &H3F8,3out &H3F8,4out &H3F8,5out &H3F8,6out &H3F8,7out &H3F8,8out &H3F8,9out &H3F8,10out &H3F8,11
Because then what dosbox does is report this:
Serial1: Errors: Framing 0, Parity 0, Overrun RX:0 (IF0:0), TX:10, Break 0
except the actual TX number reported is basically all the issued Qbasic commands except for the first and last.
How do I go about fixing this?