OSWORD &FA

From BeebWiki
Revision as of 23:58, 28 August 2013 by WikiSysop (talk | contribs) (1 revision)
Jump to: navigation, search

OSWORD &FA (250) - Data transfer over Tube 80x86 Tube OS

On entry:
 XY?0     =&0D or &0E (send block length)
 XY?1     =&10 (receive block length)
 XY!2     =I/O processor address
 XY+6..7  =80x86 offset address
 XY+8..9  =80x86 segment address
 XY+10..11=data length
 XY?12    =function
 XY?13    =memory access control if XY?0=&0E.
The functions are the same as the Tube values:
 0 - write to I/O as single bytes
 1 - read from I/O as single bytes
 2 - write to I/O as byte pairs
 3 - read from I/O as byte pairs
 6 - write to I/O as groups of 256 bytes
 7 - read from I/O as groups of 256 bytes
If the memory access control byte is used, its format is:
 b0-b3=ROM number
 b4   =0 use specified ROM, b4=1 use current ROM
 b5   =0 use main memory, b5=1 use screen memory
 b6   =1 ignore b5 and use shadow memory
 b7   unused.

See Also

Jgharston 14:26, 26 May 2009 (UTC)