OSBYTE &9C
OSBYTE &9C (156) - Read/write 6850 ACIA registers. If an 6850 ACIA is not used, the serial drivers translate the parameters appropriately.
Y=255 to read X=b0..1 0=divide clock by 1, use *FX7/*FX8 baud rate times 64 1=divide clock by 16, use *FX7/*FX8 baud rate times 4 2=divide clock by 64, use *FX7/*FX8 baud rate 3=reset transmit, receive, control registers b2..4 0=7 bit, even parity, 2 stop bits (7E2) 1=7 bit, odd parity, 2 stop bits (7O2) 2=7 bit, even parity, 1 stop bits (7E1) 3=7 bit, odd parity, 1 stop bit (7O1) 4=8 bit, no parity, 2 stop bits (8N2) 5=8 bit, no parity, 1 stop bits (8N1) (usual default) 6=8 bit, even parity, 1 stop bits (8E1) 7=8 bit, odd parity, 1 stop bit (8O1) b5..6 0=RTS low, transmit interrupt disabled 1=RTS low, transmit interrupt enabled 2=RTS high, transmit interrupt disabled 3=RTS low, transmit interrupt disabled, transmit a break b7 0=receive interrupt disabled 1=receive interrupt enabled Y=0 to write X=as above (RISC OS 1.00) X=b0..1 0=no effect 1=no effect 2=no effect (Electron OS only) Passed as an unknown osbyte to the paged ROMs
For compatability with non-6850 systems, programs should use: Y=0, X=3 to reset the ACIA Y=159, X=0 to stop transmitting a serial break Y=159, X=96 to start transmitting a serial break Y=227, X=n*4 to set word format
See Also
- OSBYTE &07 - Set serial receive speed
- OSBYTE &08 - Set serial transmit speed
- http://mdfs.net/Docs/Comp/BBC/Osbyte80
Jgharston 22:12, 26 May 2009 (UTC)