Difference between revisions of "OSWORD &14"
(Updated return from OSWORD &14,0.) |
|||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Category:OSWORD]] | [[Category:OSWORD]] | ||
[[Category:Networking]]__NOTOC__ | [[Category:Networking]]__NOTOC__ | ||
− | {{PageTitle|OSWORD &14 (20) | + | {{PageTitle|OSWORD &14 (20): Various Network functions}} |
XY?0=0 - Communicate with fileserver | XY?0=0 - Communicate with fileserver | ||
XY?0=1 - Send text string to remote station | XY?0=1 - Send text string to remote station | ||
Line 17: | 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 function | ||
XY?3=error code, 0 for ok <>0 for error, CR-terminated error | XY?3=error code, 0 for ok <>0 for error, CR-terminated error | ||
string at XY+4 | string at XY+4 | ||
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== | ==XY?0=1 - Send text string to remote station== | ||
Line 34: | Line 35: | ||
XY?0 =2 | 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== |
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)