Difference between revisions of "OSWORD &14"
m (moved OSWORD 14 to OSWORD &14) |
(Updated return from OSWORD &14,0.) |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:OSWORD]] | [[Category:OSWORD]] | ||
− | OSWORD &14 (20 ) | + | [[Category:Networking]]__NOTOC__ |
+ | {{PageTitle|OSWORD &14 (20): Various Network functions}} | ||
+ | XY?0=0 - Communicate with fileserver | ||
+ | XY?0=1 - Send text string to remote station | ||
+ | XY?0=2 - Generate error on remote machine. | ||
− | + | ==XY?0=0 - Communicate with fileserver== | |
On entry: | On entry: | ||
+ | XY?0=0 | ||
XY?1=size of rest of block | XY?1=size of rest of block | ||
XY?2=0 | XY?2=0 | ||
Line 12: | Line 17: | ||
XY+7... contains rest of infomation | XY+7... contains rest of infomation | ||
On exit: | On exit: | ||
− | + | XY?2=command code, 0 for ok <>0 to continue with another function | |
− | XY?2=command code, 0 for ok <>0 to continue with another | + | XY?3=error code, 0 for ok <>0 for error, CR-terminated error |
− | + | string at XY+4 | |
− | XY?3=error code, 0 for ok <>0 for error, CR-terminated | ||
− | |||
XY+4.. contains returned data. | XY+4.. contains returned data. | ||
− | + | Note that XY?1 is documented as returning the updated size of block, but it is actually unchanged. Only XY+2 onwards are specified as returning data. The return values in XY?0 and XY?1 should be treated as undefined. | |
+ | |||
+ | ==XY?0=1 - Send text string to remote station== | ||
On entry: | On entry: | ||
+ | XY?0 =1 | ||
XY+1..2=destination station | XY+1..2=destination station | ||
− | XY+3... string to send, terminated by CR or &00. The CR | + | XY+3... string to send, terminated by CR or &00. The CR also gets |
− | + | sent. | |
− | + | ==XY?0=2 - Generate error on remote machine== | |
On entry: | On entry: | ||
+ | XY?0 =2 | ||
XY+1..2=destination machine. | XY+1..2=destination machine. | ||
+ | |||
+ | ==Notes== | ||
+ | On RISC OS and Arthur OSWORD &14,0 calls SWI NetFS_DoFSOp, but if you call | ||
+ | NetFS_DoFSOp directly the control block is passed and returned differently. | ||
+ | OSWORD &14,0: | ||
+ | XY+00 01 02 03 04 05 06 07 08 09... | ||
+ | Send: |00|sz|00|fn|00|00|00|command data... | ||
+ | Receive: | | |ok|er|returned data... | ||
+ | |||
+ | NetFS_DoFSOp: | ||
+ | R0=function | ||
+ | R1+00 01 02 03 04 05 06 07 08 09... | ||
+ | Send: |command data... | ||
+ | Receive: |returned data... | ||
+ | R0=0 if ok or R0=>returned error block | ||
==See Also== | ==See Also== | ||
* http://mdfs.net/Docs/Comp/BBC/Oswords | * http://mdfs.net/Docs/Comp/BBC/Oswords | ||
− | + | {{Networking}} | |
[[User:Jgharston|Jgharston]] 13:27, 26 May 2009 (UTC) | [[User:Jgharston|Jgharston]] 13:27, 26 May 2009 (UTC) |
Latest revision as of 12:29, 21 June 2024
OSWORD &14 (20): Various Network functions
XY?0=0 - Communicate with fileserver XY?0=1 - Send text string to remote station XY?0=2 - Generate error on remote machine.
XY?0=0 - Communicate with fileserver
On entry: XY?0=0 XY?1=size of rest of block XY?2=0 XY?3=function XY?4=0 XY?5=0 XY?6=0 XY+7... contains rest of infomation On exit: XY?2=command code, 0 for ok <>0 to continue with another function XY?3=error code, 0 for ok <>0 for error, CR-terminated error string at XY+4 XY+4.. contains returned data.
Note that XY?1 is documented as returning the updated size of block, but it is actually unchanged. Only XY+2 onwards are specified as returning data. The return values in XY?0 and XY?1 should be treated as undefined.
XY?0=1 - Send text string to remote station
On entry: XY?0 =1 XY+1..2=destination station XY+3... string to send, terminated by CR or &00. The CR also gets sent.
XY?0=2 - Generate error on remote machine
On entry: XY?0 =2 XY+1..2=destination machine.
Notes
On RISC OS and Arthur OSWORD &14,0 calls SWI NetFS_DoFSOp, but if you call NetFS_DoFSOp directly the control block is passed and returned differently.
OSWORD &14,0: XY+00 01 02 03 04 05 06 07 08 09... Send: |00|sz|00|fn|00|00|00|command data... Receive: | | |ok|er|returned data... NetFS_DoFSOp: R0=function R1+00 01 02 03 04 05 06 07 08 09... Send: |command data... Receive: |returned data... R0=0 if ok or R0=>returned error block
See Also
Networking calls | |
---|---|
|
|
Jgharston 13:27, 26 May 2009 (UTC)