I use this to determine whether an internet connection is available :
LOCAL webAddresses$[]; DIMDATA webAddresses$[],"www.bbc.co.uk","www.microsoft.com","www.glbasic.com"
self.isInternetAvailable%=FALSE
IF SOCK_INIT()
FOR loop%=0 TO BOUNDS(webAddresses$[],0)-1
socket%=SOCK_TCPCONNECT(webAddresses$[loop%],port%)
IF socket%>=0
SOCK_CLOSE(socket%)
self.isInternetAvailable%=TRUE
BREAK
ENDIF
NEXT
SOCK_SHUTDOWN
ENDIF
2. You would have to compensate for the time delay and update any animations accordingly unless you use a thread for calculating the animation positions.