Roadshow cleanups, Wait Writing return code fixes
This commit is contained in:
parent
a1f57da200
commit
338ed94a77
Binary file not shown.
16
API.md
16
API.md
|
@ -123,9 +123,11 @@ a remote socket to send you data.
|
||||||
|
|
||||||
##### Returns
|
##### Returns
|
||||||
|
|
||||||
* 0 on timeout
|
* 0 on timeout.
|
||||||
* -1,-2 on error
|
* -1 on error. Use `Socket Errno` for more detail.
|
||||||
* 1 on success
|
* -3 on the socket being sorta-ready. This isn't a connection timeout,
|
||||||
|
so check again.
|
||||||
|
* 1 on success.
|
||||||
|
|
||||||
#### RESULT=Socket Async Wait Writing(Socket, Wait_ms)
|
#### RESULT=Socket Async Wait Writing(Socket, Wait_ms)
|
||||||
|
|
||||||
|
@ -135,9 +137,11 @@ has been completed.
|
||||||
|
|
||||||
##### Returns
|
##### Returns
|
||||||
|
|
||||||
* 0 on timeout
|
* 0 on timeout.
|
||||||
* -1,-2 on error
|
* -1 on error. Use `Socket Errno` for more detail.
|
||||||
* 1 on success
|
* -3 on the socket being sorta-ready. This isn't a connection timeout,
|
||||||
|
so check again.
|
||||||
|
* 1 on success.
|
||||||
|
|
||||||
#### RESULT=Socket Set Timeout(Socket, Wait_ms)
|
#### RESULT=Socket Set Timeout(Socket, Wait_ms)
|
||||||
|
|
||||||
|
|
|
@ -139,6 +139,11 @@ Doing something cool with the extension?
|
||||||
most system-friendly way of doing this.
|
most system-friendly way of doing this.
|
||||||
* MiamiDX can be fiddly, at least it is on my MiSTer set up.
|
* MiamiDX can be fiddly, at least it is on my MiSTer set up.
|
||||||
If Internet connectivity is not working, try re-connecting to the network.
|
If Internet connectivity is not working, try re-connecting to the network.
|
||||||
|
* If using Roadshow, `bsdsocket.library` will always be available, so
|
||||||
|
you can't use its presence or lack thereof to test if Internet is available.
|
||||||
|
You'll have to use a combination of DNS lookups and/or connection
|
||||||
|
timeouts using `Socket Async Wait Writing` to determine if the Internet
|
||||||
|
is available.
|
||||||
|
|
||||||
## Versioning
|
## Versioning
|
||||||
|
|
||||||
|
|
|
@ -1576,6 +1576,7 @@ _DoSocketLibraryClose_Skip:
|
||||||
;
|
;
|
||||||
; @return
|
; @return
|
||||||
; 1 on success
|
; 1 on success
|
||||||
|
; -1 on error, check Socket Errno
|
||||||
; -2 on library not open
|
; -2 on library not open
|
||||||
; -3 on not interesting yet
|
; -3 on not interesting yet
|
||||||
; 0 on timeout
|
; 0 on timeout
|
||||||
|
@ -1627,8 +1628,13 @@ _SocketWaitAsyncWriting_LibraryOpen:
|
||||||
MOVE.L BSDSocketBase-MB(A4),A6
|
MOVE.L BSDSocketBase-MB(A4),A6
|
||||||
CALLLIB WaitSelect
|
CALLLIB WaitSelect
|
||||||
|
|
||||||
TST.L D0 ; timeout, pass through
|
; returns:
|
||||||
BPL _SocketWaitAsyncWriting_Done
|
; * 0 on timeout
|
||||||
|
; * >0 on socket was seen
|
||||||
|
; * -1 on error
|
||||||
|
TST.L D0
|
||||||
|
BEQ _SocketWaitAsyncWriting_Timeout
|
||||||
|
BMI _SocketWaitAsyncWriting_Error
|
||||||
MOVE.L (SP)+,D0 ; D0 contains socket again
|
MOVE.L (SP)+,D0 ; D0 contains socket again
|
||||||
|
|
||||||
Dload A4
|
Dload A4
|
||||||
|
@ -1669,6 +1675,7 @@ _SocketWaitAsyncWriting_CheckSockopt:
|
||||||
TST.L D0
|
TST.L D0
|
||||||
BEQ _SocketWaitAsyncWriting_Ready
|
BEQ _SocketWaitAsyncWriting_Ready
|
||||||
|
|
||||||
|
; still not ready
|
||||||
MOVEM.L (SP)+,A3-A4
|
MOVEM.L (SP)+,A3-A4
|
||||||
MOVE.L #-3,D3
|
MOVE.L #-3,D3
|
||||||
|
|
||||||
|
@ -1682,11 +1689,20 @@ _SocketWaitAsyncWriting_Ready:
|
||||||
RestoreStackFunction
|
RestoreStackFunction
|
||||||
Ret_Int
|
Ret_Int
|
||||||
|
|
||||||
_SocketWaitAsyncWriting_Done:
|
_SocketWaitAsyncWriting_Error:
|
||||||
MOVE.L (SP)+,D1
|
MOVE.L (SP)+,D1
|
||||||
MOVEM.L (SP)+,A3-A4
|
MOVEM.L (SP)+,A3-A4
|
||||||
|
|
||||||
MOVE.L D0,D3
|
MOVE.L #-1,D3
|
||||||
|
|
||||||
|
RestoreStackFunction
|
||||||
|
Ret_Int
|
||||||
|
|
||||||
|
_SocketWaitAsyncWriting_Timeout:
|
||||||
|
MOVE.L (SP)+,D1
|
||||||
|
MOVEM.L (SP)+,A3-A4
|
||||||
|
|
||||||
|
MOVEQ #0,D3
|
||||||
|
|
||||||
RestoreStackFunction
|
RestoreStackFunction
|
||||||
Ret_Int
|
Ret_Int
|
||||||
|
|
Loading…
Reference in New Issue