OSBYTE &08

From BeebWiki
Revision as of 14:46, 6 July 2011 by Jgharston (talk) (Altered code to recognise rates skip 600.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


OSBYTE &08 (8) - Select the transmit rate to be used on the RS423 interface.

On entry, A=&08, X=transmission rate

On exit, A=&07, X=Y=previous contents of Serial ULA control register (B+ User Guide)

The value of X is made up as follows:

Value Meaning if set
1 75 baud transmit
2 150 baud transmit
3 300 baud transmit
4 1200 baud transmit
5 2400 baud transmit
6 4800 baud transmit
7 9600 baud transmit
8 19200 baud transmit. This rate is not guaranteed.

A baud rate can be converted to a *FX7/*FX8 parameter with the following code:

   A%=baud%:IFA%>63:A%=LN(A%DIV75)/LN2:IFA%<4:A%=A%+1

A *FX7/8 parameter can be converted into a baud rate with the following code:

   A%=rate%:IFA%<64:A%=A%+(A%<4):A%=75*2^A%

See also