home *** CD-ROM | disk | FTP | other *** search
/ Millennium Time Capsule / AC2000.BIN / disks / ac9_disk / net157 / netinc2.bas < prev    next >
Encoding:
BASIC Source File  |  1997-08-06  |  2.7 KB  |  159 lines

  1.  
  2. LIBRARY "networld"
  3. DEFINT a-z
  4.  
  5. REM $include transprt.bh
  6.  
  7. REM This is an include file for NetWorld. It creates functions that will
  8. REM let you connect to the internet quickly and painlessly. Well, just!
  9. REM :-)
  10.  
  11. DIM SHARED stikinitialised
  12.  
  13. FUNCTION gerrtxt$ (er)
  14. LOCAL s$,e&,d
  15. e&=get_err_text& (er)
  16. DO
  17.     d=SPEEKB (e&)
  18.     IF d=0 THEN EXIT DO
  19.     s$=s$+CHR$(d)
  20.     INCR e&
  21. LOOP
  22. gerrtxt$=s$
  23. s$="" : e&=0 : d=0
  24. END FUNCTION
  25.  
  26. FUNCTION gvstr$ (er$)
  27. LOCAL s$,er$,d,e&
  28. er$=er$+CHR$(0)
  29. e&=getvstr& (VARPTR(er$))
  30. DO
  31.     d=SPEEKB (e&)
  32.     IF d=0 THEN EXIT DO
  33.     s$=s$+CHR$(d)
  34.     INCR e&
  35. LOOP
  36. gvstr$=s$
  37. s$="" : e&=0 : d=0 : er$=""
  38. END FUNCTION
  39.  
  40. FUNCTION tcp_author$
  41. LOCAL s$,er$,d,e&,b(1)
  42. e&=tcp_author& (b())
  43. DO
  44.     d=SPEEKB (e&)
  45.     IF d=0 THEN EXIT DO
  46.     s$=s$+CHR$(d)
  47.     INCR e&
  48. LOOP
  49. tcp_author$=s$
  50. s$="" : e&=0 : d=0 : er$=""
  51. END FUNCTION
  52.  
  53. FUNCTION tcp_version$
  54. LOCAL s$,er$,d,e&,b(1)
  55. e&=tcp_version& (b())
  56. DO
  57.     d=SPEEKB (e&)
  58.     IF d=0 THEN EXIT DO
  59.     s$=s$+CHR$(d)
  60.     INCR e&
  61. LOOP
  62. tcp_version$=s$
  63. s$="" : e&=0 : d=0 : er$=""
  64. END FUNCTION
  65.  
  66. FUNCTION tcp_module$
  67. LOCAL s$,er$,d,e&,b(1)
  68. e&=tcp_module& (b())
  69. DO
  70.     d=SPEEKB (e&)
  71.     IF d=0 THEN EXIT DO
  72.     s$=s$+CHR$(d)
  73.     INCR e&
  74. LOOP
  75. tcp_module$=s$
  76. s$="" : e&=0 : d=0 : er$=""
  77. END FUNCTION
  78.  
  79. FUNCTION networldver$
  80. LOCAL s$,er$,d,e&,b(1)
  81. e&=netwldver& (b())
  82. DO
  83.     d=SPEEKB (e&)
  84.     IF d=0 THEN EXIT DO
  85.     s$=s$+CHR$(d)
  86.     INCR e&
  87. LOOP
  88. networldver$=s$
  89. s$="" : e&=0 : d=0 : er$=""
  90. END FUNCTION
  91.  
  92. FUNCTION TCP_connect (domain$, port, tos, alloc)
  93. LOCAL a,num,anum&,x,TCP_cnnect,dum(1)
  94.  
  95. domain$=domain$+CHR$(0)
  96. num=resolve (VARPTR(domain$),0,VARPTR(anum&),1)
  97. IF num<0 THEN
  98.     TCP_cnnect=-1
  99. END IF
  100.  
  101. x=TCP_open (anum&, port, tos, alloc)
  102. IF x<0 THEN
  103.     TCP_cnnect=-1
  104. END IF
  105.  
  106. IF TCP_cnnect<>-1 THEN TCP_connect=x ELSE TCP_connect=-1
  107.  
  108. END FUNCTION
  109.  
  110. SUB initnetworld
  111. LOCAL a,b(1)
  112. a=initstik (b())
  113. 'IF a<1 THEN a=form_alert (1,"[3][ STiK not installed | correctly! ][ OK ]")
  114. stikinitialised=a
  115. END SUB
  116.  
  117. FUNCTION get_response$ (cn, time)
  118. LOCAL time2,time3,count,c,s$,dum(1),d
  119.  
  120. time2=CINT(TIMER)
  121. time3=time2+time
  122. s$=""
  123. DO
  124. count=cnbyte_count (cn)
  125. IF count<>0 THEN EXIT DO
  126. LOOP
  127. IF count<0 THEN
  128.     get_response$=gerrtxt$(count)
  129.     EXIT FUNCTION
  130. END IF
  131.     
  132. IF CINT(TIMER)=time3 THEN get_response$=gerrtxt$(E_USERTIMEOUT) : EXIT FUNCTION
  133.  
  134. IF INKEY$<>"" THEN get_response$=gerrtxt$(E_USERTIMEOUT) : EXIT FUNCTION
  135.  
  136. FOR d=1 TO count
  137.     c=cnget_char (cn)
  138.     IF c<E_NODATA THEN
  139.         get_response$=gerrtxt$(c)
  140.         EXIT FUNCTION
  141.     END IF
  142.     
  143.     IF c>0 AND c<256 THEN s$=s$+CHR$(c)
  144. NEXT
  145.  
  146. get_response$=s$
  147.  
  148. END FUNCTION
  149.  
  150. FUNCTION tcpsend (cn,mess$)
  151. LOCAL x
  152.  
  153. mess$=mess$+CHR$(13)+CHR$(10)
  154. x=tcp_send (cn,VARPTR(mess$),LEN(mess$))
  155. tcpsend=x
  156.  
  157. END FUNCTION
  158.  
  159. initnetworld