OSWORD &99

From BeebWiki
Revision as of 21:55, 18 August 2023 by Tom seddon (talk | contribs) (update BeebLink OSWORD stuff)
Jump to: navigation, search
OSWORD &99 (153) Perform BeebLink request
On entry:
 XY?0   =inward control block size
 XY?1   =returned control block size
 XY?2   =request code, or &00 for ROM presence check
 XY?3   =&00
 XY?4   =&00
 XY?5   =&00
 XY!6   =address of request payload
 XY!10  =size of request payload
 XY!14  =address for response payload
 XY!18  =max size of response payload
On exit:
 XY?3   =response code (never &00), or &FF on error
 XY?5   =FS ID of BeebLink ROM that handled the request
 XY!18  =total size of response payload

Addresses are 32-bit addresses, same as OSFILE and so on.

If the response payload total size is greater than the max size, the payload was truncated. (In this case, the max number of bytes were stored, but the rest were discarded.)

Latest docs for this call can be found on GitHub: https://github.com/tom-seddon/beeblink/blob/master/docs/tech.md#new-osword-call