Difference between revisions of "OSWORD &99"

From BeebWiki
Jump to: navigation, search
(Initial page template.)
 
(update BeebLink OSWORD stuff)
Line 5: Line 5:
 
   XY?0  =inward control block size
 
   XY?0  =inward control block size
 
   XY?1  =returned control block size
 
   XY?1  =returned control block size
   XY?2  =command
+
   XY?2  =request code, or &00 for ROM presence check
   XY?3  =sub-command/returned status
+
   XY?3  =&00
   XY!4...
+
  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:
 
  On exit:
   XY?2   =&00 if call actioned
+
   XY?3   =response code (never &00), or &FF on error
   XY?3   =returned status
+
   XY?5   =FS ID of BeebLink ROM that handled the request
   XY!4...
+
   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

Revision as of 21:55, 18 August 2023

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