Home » Archimedes archive » Acorn User » AU 1998-02 B.adf » JFShared » !JFShared/BasicLib/EconetLib

!JFShared/BasicLib/EconetLib

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn User » AU 1998-02 B.adf » JFShared
Filename: !JFShared/BasicLib/EconetLib
Read OK:
File size: 0A11 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >EconetLib
   20REM LEN Justin Fletcher
   30REM Version : 1.01 (10 Jul 1996)
   40REM This version for RO3
   50ERROR &803,"Do not run the Econet Library"
   60:
   70DEFPROCiniteconet
   80eco_version=1.00:REM version number
   90eco_max%=16:eco_retries%=500:eco_delay%=5
  100eco_last%=0
  110DIM eco_b% 256,eco_h%(eco_max%,1)
  120REM 0=control block (-1 if unallocated)
  130REM 1=flags
  140REM   b0=1 if transmit
  150eco_h%()=-1
  160ENDPROC
  170:
  180REM FNeco_nexthandle = return the next free handle
  190DEFFNeco_nexthandle
  200LOCAL hand%
  210hand%=(eco_last%+1) MOD eco_max%
  220WHILE (hand%<>eco_last% AND eco_h%(hand%,0)<>-1)
  230 hand%=(hand%+1) MOD eco_max%
  240ENDWHILE
  250IF eco_h%(hand%,0)<>-1 THEN=-1
  260eco_last%=hand%:=hand%
  270:
  280REM FNeconet_decodestatus = Return the status value as a string
  290DEFFNeconet_decodestatus(status)
  300SYS "Econet_ConvertStatusToString",status,eco_b%,256,0,0
  310=FNstring0(eco_b%)
  320:
  330REM FNeconet_senddata = Send some data over the econet
  340DEFFNeconet_senddata(port,statnet,b%,s%)
  350LOCAL txcb%,h%,f%
  360h%=FNeco_nexthandle
  370IF h%=-1 THEN=-1
  380SYS "Econet_StartTransmit",(statnet>>16)AND255,port,(statnet AND255),(statnet>>8)AND255,b%,s%,eco_retries%,eco_delay% TO txcb% ;f%
  390IF (f% AND1)<>0 THEN=-1
  400eco_h%(h%,0)=txcb%
  410eco_h%(h%,1)=1:REM Transmit
  420=h%
  430:
  440REM FNeconet_listen = Listen for transmissions on port
  450DEFFNeconet_listen(port,statnet,b%,s%)
  460LOCAL rxcb%,h%,f%
  470h%=FNeco_nexthandle
  480IF h%=-1 THEN=-1
  490SYS "Econet_CreateReceive",port,(statnet AND255),(statnet>>8)AND255,b%,s% TO rxcb% ;f%
  500IF (f% AND1)<>0 THEN=-1
  510eco_h%(h%,0)=rxcb%
  520eco_h%(h%,1)=0:REM Receive
  530=h%
  540:
  550REM FNeconet_getstatus = return the status (or -1 if invalid)
  560DEFFNeconet_getstatus(h%)
  570LOCAL s%
  580IF eco_h%(h%,0)=-1 THEN=-1
  590IF (eco_h%(h%,1) AND1)=1 THEN
  600 SYS "Econet_PollTransmit",eco_h%(h%,0) TO s%
  610 IF s%=0 THENSYS "Econet_AbandonTransmit",eco_h%(h%,0):eco_h%(h%,0)=-1
  620ELSE
  630 SYS "Econet_ExamineReceive",eco_h%(h%,0) TO s%
  640ENDIF
  650=s%
  660:
  670REM FNeconet_getdata = read the data returned by the listen
  680REM Note: Will also abandon the read
  690DEFPROCeconet_getdata(h%,RETURN buf%,RETURN size%,RETURN statnet)
  700LOCAL flag,port,station,net
  710IF eco_h%(h%,0)=-1 THENbuf%=-1:size%=-1:statnet=-1:ENDPROC
  720SYS "Econet_ReadReceive",eco_h%(h%,0) TO status,flag,,station,net,buf%,size%
  730statnet=station+(net<<8)+(flag<<16)
  740SYS "Econet_AbandonReceive",eco_h%(h%,0)
  750eco_h%(h%,0)=-1
  760ENDPROC
  770:
  771REM PROCeconet_abortall = abort all the communications
  780DEFPROCeconet_abortall
  790LOCAL I
  800FORh%=0TO eco_max%
  810 IF eco_h%(h%,0)<>-1 THEN
  820  IF (eco_h%(h%,1) AND 1)=0 THEN
  830   SYS "Econet_AbandonReceive",eco_h%(h%,0)
  840  ELSE
  850   SYS "Econet_AbandonTransmit",eco_h%(h%,0)
  851  ENDIF
  852  eco_h%(h%,0)=-1
  853 ENDIF
  854NEXT
  855ENDPROC

� >EconetLib
� � Justin Fletcher
"� Version : 1.01 (10 Jul 1996)
(� This version for RO3
2*� &803,"Do not run the Econet Library"
<:
F��initeconet
P%eco_version=1.00:� version number
Z-eco_max%=16:eco_retries%=500:eco_delay%=5
deco_last%=0
n#� eco_b% 256,eco_h%(eco_max%,1)
x)� 0=control block (-1 if unallocated)
�
� 1=flags
��   b0=1 if transmit
�eco_h%()=-1
��
�:
�4� FNeco_nexthandle = return the next free handle
�ݤeco_nexthandle
�� hand%
�"hand%=(eco_last%+1) � eco_max%
�/ȕ (hand%<>eco_last% � eco_h%(hand%,0)<>-1)
� hand%=(hand%+1) � eco_max%
��
�� eco_h%(hand%,0)<>-1 �=-1
eco_last%=hand%:=hand%
:
A� FNeconet_decodestatus = Return the status value as a string
"!ݤeconet_decodestatus(status)
,;ș "Econet_ConvertStatusToString",status,eco_b%,256,0,0
6=�string0(eco_b%)
@:
J8� FNeconet_senddata = Send some data over the econet
T)ݤeconet_senddata(port,statnet,b%,s%)
^� txcb%,h%,f%
hh%=�eco_nexthandle
r� h%=-1 �=-1
|~ș "Econet_StartTransmit",(statnet>>16)�255,port,(statnet �255),(statnet>>8)�255,b%,s%,eco_retries%,eco_delay% � txcb% ;f%
�� (f% �1)<>0 �=-1
�eco_h%(h%,0)=txcb%
�eco_h%(h%,1)=1:� Transmit
�=h%
�:
�8� FNeconet_listen = Listen for transmissions on port
�'ݤeconet_listen(port,statnet,b%,s%)
�� rxcb%,h%,f%
�h%=�eco_nexthandle
�� h%=-1 �=-1
�Tș "Econet_CreateReceive",port,(statnet �255),(statnet>>8)�255,b%,s% � rxcb% ;f%
�� (f% �1)<>0 �=-1
�eco_h%(h%,0)=rxcb%
eco_h%(h%,1)=0:� Receive
=h%
:
&?� FNeconet_getstatus = return the status (or -1 if invalid)
0ݤeconet_getstatus(h%)
:� s%
D� eco_h%(h%,0)=-1 �=-1
N� (eco_h%(h%,1) �1)=1 �
X/ ș "Econet_PollTransmit",eco_h%(h%,0) � s%
bE � s%=0 �ș "Econet_AbandonTransmit",eco_h%(h%,0):eco_h%(h%,0)=-1
l�
v1 ș "Econet_ExamineReceive",eco_h%(h%,0) � s%
��
�=s%
�:
�=� FNeconet_getdata = read the data returned by the listen
�&� Note: Will also abandon the read
�1��econet_getdata(h%,� buf%,� size%,� statnet)
�� flag,port,station,net
�4� eco_h%(h%,0)=-1 �buf%=-1:size%=-1:statnet=-1:�
�Nș "Econet_ReadReceive",eco_h%(h%,0) � status,flag,,station,net,buf%,size%
�'statnet=station+(net<<8)+(flag<<16)
�+ș "Econet_AbandonReceive",eco_h%(h%,0)
�eco_h%(h%,0)=-1
��
:
8� PROCeconet_abortall = abort all the communications
��econet_abortall
� I
 �h%=0� eco_max%
* � eco_h%(h%,0)<>-1 �
4  � (eco_h%(h%,1) � 1)=0 �
>.   ș "Econet_AbandonReceive",eco_h%(h%,0)
H  �
R/   ș "Econet_AbandonTransmit",eco_h%(h%,0)
S  �
T  eco_h%(h%,0)=-1
U �
V�
W�
�
00000000  0d 00 0a 10 f4 20 3e 45  63 6f 6e 65 74 4c 69 62  |..... >EconetLib|
00000010  0d 00 14 17 f4 20 a9 20  4a 75 73 74 69 6e 20 46  |..... . Justin F|
00000020  6c 65 74 63 68 65 72 0d  00 1e 22 f4 20 56 65 72  |letcher...". Ver|
00000030  73 69 6f 6e 20 3a 20 31  2e 30 31 20 28 31 30 20  |sion : 1.01 (10 |
00000040  4a 75 6c 20 31 39 39 36  29 0d 00 28 1a f4 20 54  |Jul 1996)..(.. T|
00000050  68 69 73 20 76 65 72 73  69 6f 6e 20 66 6f 72 20  |his version for |
00000060  52 4f 33 0d 00 32 2a 85  20 26 38 30 33 2c 22 44  |RO3..2*. &803,"D|
00000070  6f 20 6e 6f 74 20 72 75  6e 20 74 68 65 20 45 63  |o not run the Ec|
00000080  6f 6e 65 74 20 4c 69 62  72 61 72 79 22 0d 00 3c  |onet Library"..<|
00000090  05 3a 0d 00 46 10 dd f2  69 6e 69 74 65 63 6f 6e  |.:..F...initecon|
000000a0  65 74 0d 00 50 25 65 63  6f 5f 76 65 72 73 69 6f  |et..P%eco_versio|
000000b0  6e 3d 31 2e 30 30 3a f4  20 76 65 72 73 69 6f 6e  |n=1.00:. version|
000000c0  20 6e 75 6d 62 65 72 0d  00 5a 2d 65 63 6f 5f 6d  | number..Z-eco_m|
000000d0  61 78 25 3d 31 36 3a 65  63 6f 5f 72 65 74 72 69  |ax%=16:eco_retri|
000000e0  65 73 25 3d 35 30 30 3a  65 63 6f 5f 64 65 6c 61  |es%=500:eco_dela|
000000f0  79 25 3d 35 0d 00 64 0f  65 63 6f 5f 6c 61 73 74  |y%=5..d.eco_last|
00000100  25 3d 30 0d 00 6e 23 de  20 65 63 6f 5f 62 25 20  |%=0..n#. eco_b% |
00000110  32 35 36 2c 65 63 6f 5f  68 25 28 65 63 6f 5f 6d  |256,eco_h%(eco_m|
00000120  61 78 25 2c 31 29 0d 00  78 29 f4 20 30 3d 63 6f  |ax%,1)..x). 0=co|
00000130  6e 74 72 6f 6c 20 62 6c  6f 63 6b 20 28 2d 31 20  |ntrol block (-1 |
00000140  69 66 20 75 6e 61 6c 6c  6f 63 61 74 65 64 29 0d  |if unallocated).|
00000150  00 82 0d f4 20 31 3d 66  6c 61 67 73 0d 00 8c 18  |.... 1=flags....|
00000160  f4 20 20 20 62 30 3d 31  20 69 66 20 74 72 61 6e  |.   b0=1 if tran|
00000170  73 6d 69 74 0d 00 96 0f  65 63 6f 5f 68 25 28 29  |smit....eco_h%()|
00000180  3d 2d 31 0d 00 a0 05 e1  0d 00 aa 05 3a 0d 00 b4  |=-1.........:...|
00000190  34 f4 20 46 4e 65 63 6f  5f 6e 65 78 74 68 61 6e  |4. FNeco_nexthan|
000001a0  64 6c 65 20 3d 20 72 65  74 75 72 6e 20 74 68 65  |dle = return the|
000001b0  20 6e 65 78 74 20 66 72  65 65 20 68 61 6e 64 6c  | next free handl|
000001c0  65 0d 00 be 14 dd a4 65  63 6f 5f 6e 65 78 74 68  |e......eco_nexth|
000001d0  61 6e 64 6c 65 0d 00 c8  0b ea 20 68 61 6e 64 25  |andle..... hand%|
000001e0  0d 00 d2 22 68 61 6e 64  25 3d 28 65 63 6f 5f 6c  |..."hand%=(eco_l|
000001f0  61 73 74 25 2b 31 29 20  83 20 65 63 6f 5f 6d 61  |ast%+1) . eco_ma|
00000200  78 25 0d 00 dc 2f c8 95  20 28 68 61 6e 64 25 3c  |x%.../.. (hand%<|
00000210  3e 65 63 6f 5f 6c 61 73  74 25 20 80 20 65 63 6f  |>eco_last% . eco|
00000220  5f 68 25 28 68 61 6e 64  25 2c 30 29 3c 3e 2d 31  |_h%(hand%,0)<>-1|
00000230  29 0d 00 e6 1f 20 68 61  6e 64 25 3d 28 68 61 6e  |).... hand%=(han|
00000240  64 25 2b 31 29 20 83 20  65 63 6f 5f 6d 61 78 25  |d%+1) . eco_max%|
00000250  0d 00 f0 05 ce 0d 00 fa  1e e7 20 65 63 6f 5f 68  |.......... eco_h|
00000260  25 28 68 61 6e 64 25 2c  30 29 3c 3e 2d 31 20 8c  |%(hand%,0)<>-1 .|
00000270  3d 2d 31 0d 01 04 1a 65  63 6f 5f 6c 61 73 74 25  |=-1....eco_last%|
00000280  3d 68 61 6e 64 25 3a 3d  68 61 6e 64 25 0d 01 0e  |=hand%:=hand%...|
00000290  05 3a 0d 01 18 41 f4 20  46 4e 65 63 6f 6e 65 74  |.:...A. FNeconet|
000002a0  5f 64 65 63 6f 64 65 73  74 61 74 75 73 20 3d 20  |_decodestatus = |
000002b0  52 65 74 75 72 6e 20 74  68 65 20 73 74 61 74 75  |Return the statu|
000002c0  73 20 76 61 6c 75 65 20  61 73 20 61 20 73 74 72  |s value as a str|
000002d0  69 6e 67 0d 01 22 21 dd  a4 65 63 6f 6e 65 74 5f  |ing.."!..econet_|
000002e0  64 65 63 6f 64 65 73 74  61 74 75 73 28 73 74 61  |decodestatus(sta|
000002f0  74 75 73 29 0d 01 2c 3b  c8 99 20 22 45 63 6f 6e  |tus)..,;.. "Econ|
00000300  65 74 5f 43 6f 6e 76 65  72 74 53 74 61 74 75 73  |et_ConvertStatus|
00000310  54 6f 53 74 72 69 6e 67  22 2c 73 74 61 74 75 73  |ToString",status|
00000320  2c 65 63 6f 5f 62 25 2c  32 35 36 2c 30 2c 30 0d  |,eco_b%,256,0,0.|
00000330  01 36 15 3d a4 73 74 72  69 6e 67 30 28 65 63 6f  |.6.=.string0(eco|
00000340  5f 62 25 29 0d 01 40 05  3a 0d 01 4a 38 f4 20 46  |_b%)..@.:..J8. F|
00000350  4e 65 63 6f 6e 65 74 5f  73 65 6e 64 64 61 74 61  |Neconet_senddata|
00000360  20 3d 20 53 65 6e 64 20  73 6f 6d 65 20 64 61 74  | = Send some dat|
00000370  61 20 6f 76 65 72 20 74  68 65 20 65 63 6f 6e 65  |a over the econe|
00000380  74 0d 01 54 29 dd a4 65  63 6f 6e 65 74 5f 73 65  |t..T)..econet_se|
00000390  6e 64 64 61 74 61 28 70  6f 72 74 2c 73 74 61 74  |nddata(port,stat|
000003a0  6e 65 74 2c 62 25 2c 73  25 29 0d 01 5e 11 ea 20  |net,b%,s%)..^.. |
000003b0  74 78 63 62 25 2c 68 25  2c 66 25 0d 01 68 16 68  |txcb%,h%,f%..h.h|
000003c0  25 3d a4 65 63 6f 5f 6e  65 78 74 68 61 6e 64 6c  |%=.eco_nexthandl|
000003d0  65 0d 01 72 10 e7 20 68  25 3d 2d 31 20 8c 3d 2d  |e..r.. h%=-1 .=-|
000003e0  31 0d 01 7c 7e c8 99 20  22 45 63 6f 6e 65 74 5f  |1..|~.. "Econet_|
000003f0  53 74 61 72 74 54 72 61  6e 73 6d 69 74 22 2c 28  |StartTransmit",(|
00000400  73 74 61 74 6e 65 74 3e  3e 31 36 29 80 32 35 35  |statnet>>16).255|
00000410  2c 70 6f 72 74 2c 28 73  74 61 74 6e 65 74 20 80  |,port,(statnet .|
00000420  32 35 35 29 2c 28 73 74  61 74 6e 65 74 3e 3e 38  |255),(statnet>>8|
00000430  29 80 32 35 35 2c 62 25  2c 73 25 2c 65 63 6f 5f  |).255,b%,s%,eco_|
00000440  72 65 74 72 69 65 73 25  2c 65 63 6f 5f 64 65 6c  |retries%,eco_del|
00000450  61 79 25 20 b8 20 74 78  63 62 25 20 3b 66 25 0d  |ay% . txcb% ;f%.|
00000460  01 86 15 e7 20 28 66 25  20 80 31 29 3c 3e 30 20  |.... (f% .1)<>0 |
00000470  8c 3d 2d 31 0d 01 90 16  65 63 6f 5f 68 25 28 68  |.=-1....eco_h%(h|
00000480  25 2c 30 29 3d 74 78 63  62 25 0d 01 9a 1d 65 63  |%,0)=txcb%....ec|
00000490  6f 5f 68 25 28 68 25 2c  31 29 3d 31 3a f4 20 54  |o_h%(h%,1)=1:. T|
000004a0  72 61 6e 73 6d 69 74 0d  01 a4 07 3d 68 25 0d 01  |ransmit....=h%..|
000004b0  ae 05 3a 0d 01 b8 38 f4  20 46 4e 65 63 6f 6e 65  |..:...8. FNecone|
000004c0  74 5f 6c 69 73 74 65 6e  20 3d 20 4c 69 73 74 65  |t_listen = Liste|
000004d0  6e 20 66 6f 72 20 74 72  61 6e 73 6d 69 73 73 69  |n for transmissi|
000004e0  6f 6e 73 20 6f 6e 20 70  6f 72 74 0d 01 c2 27 dd  |ons on port...'.|
000004f0  a4 65 63 6f 6e 65 74 5f  6c 69 73 74 65 6e 28 70  |.econet_listen(p|
00000500  6f 72 74 2c 73 74 61 74  6e 65 74 2c 62 25 2c 73  |ort,statnet,b%,s|
00000510  25 29 0d 01 cc 11 ea 20  72 78 63 62 25 2c 68 25  |%)..... rxcb%,h%|
00000520  2c 66 25 0d 01 d6 16 68  25 3d a4 65 63 6f 5f 6e  |,f%....h%=.eco_n|
00000530  65 78 74 68 61 6e 64 6c  65 0d 01 e0 10 e7 20 68  |exthandle..... h|
00000540  25 3d 2d 31 20 8c 3d 2d  31 0d 01 ea 54 c8 99 20  |%=-1 .=-1...T.. |
00000550  22 45 63 6f 6e 65 74 5f  43 72 65 61 74 65 52 65  |"Econet_CreateRe|
00000560  63 65 69 76 65 22 2c 70  6f 72 74 2c 28 73 74 61  |ceive",port,(sta|
00000570  74 6e 65 74 20 80 32 35  35 29 2c 28 73 74 61 74  |tnet .255),(stat|
00000580  6e 65 74 3e 3e 38 29 80  32 35 35 2c 62 25 2c 73  |net>>8).255,b%,s|
00000590  25 20 b8 20 72 78 63 62  25 20 3b 66 25 0d 01 f4  |% . rxcb% ;f%...|
000005a0  15 e7 20 28 66 25 20 80  31 29 3c 3e 30 20 8c 3d  |.. (f% .1)<>0 .=|
000005b0  2d 31 0d 01 fe 16 65 63  6f 5f 68 25 28 68 25 2c  |-1....eco_h%(h%,|
000005c0  30 29 3d 72 78 63 62 25  0d 02 08 1c 65 63 6f 5f  |0)=rxcb%....eco_|
000005d0  68 25 28 68 25 2c 31 29  3d 30 3a f4 20 52 65 63  |h%(h%,1)=0:. Rec|
000005e0  65 69 76 65 0d 02 12 07  3d 68 25 0d 02 1c 05 3a  |eive....=h%....:|
000005f0  0d 02 26 3f f4 20 46 4e  65 63 6f 6e 65 74 5f 67  |..&?. FNeconet_g|
00000600  65 74 73 74 61 74 75 73  20 3d 20 72 65 74 75 72  |etstatus = retur|
00000610  6e 20 74 68 65 20 73 74  61 74 75 73 20 28 6f 72  |n the status (or|
00000620  20 2d 31 20 69 66 20 69  6e 76 61 6c 69 64 29 0d  | -1 if invalid).|
00000630  02 30 1a dd a4 65 63 6f  6e 65 74 5f 67 65 74 73  |.0...econet_gets|
00000640  74 61 74 75 73 28 68 25  29 0d 02 3a 08 ea 20 73  |tatus(h%)..:.. s|
00000650  25 0d 02 44 1a e7 20 65  63 6f 5f 68 25 28 68 25  |%..D.. eco_h%(h%|
00000660  2c 30 29 3d 2d 31 20 8c  3d 2d 31 0d 02 4e 1b e7  |,0)=-1 .=-1..N..|
00000670  20 28 65 63 6f 5f 68 25  28 68 25 2c 31 29 20 80  | (eco_h%(h%,1) .|
00000680  31 29 3d 31 20 8c 0d 02  58 2f 20 c8 99 20 22 45  |1)=1 ...X/ .. "E|
00000690  63 6f 6e 65 74 5f 50 6f  6c 6c 54 72 61 6e 73 6d  |conet_PollTransm|
000006a0  69 74 22 2c 65 63 6f 5f  68 25 28 68 25 2c 30 29  |it",eco_h%(h%,0)|
000006b0  20 b8 20 73 25 0d 02 62  45 20 e7 20 73 25 3d 30  | . s%..bE . s%=0|
000006c0  20 8c c8 99 20 22 45 63  6f 6e 65 74 5f 41 62 61  | ... "Econet_Aba|
000006d0  6e 64 6f 6e 54 72 61 6e  73 6d 69 74 22 2c 65 63  |ndonTransmit",ec|
000006e0  6f 5f 68 25 28 68 25 2c  30 29 3a 65 63 6f 5f 68  |o_h%(h%,0):eco_h|
000006f0  25 28 68 25 2c 30 29 3d  2d 31 0d 02 6c 05 cc 0d  |%(h%,0)=-1..l...|
00000700  02 76 31 20 c8 99 20 22  45 63 6f 6e 65 74 5f 45  |.v1 .. "Econet_E|
00000710  78 61 6d 69 6e 65 52 65  63 65 69 76 65 22 2c 65  |xamineReceive",e|
00000720  63 6f 5f 68 25 28 68 25  2c 30 29 20 b8 20 73 25  |co_h%(h%,0) . s%|
00000730  0d 02 80 05 cd 0d 02 8a  07 3d 73 25 0d 02 94 05  |.........=s%....|
00000740  3a 0d 02 9e 3d f4 20 46  4e 65 63 6f 6e 65 74 5f  |:...=. FNeconet_|
00000750  67 65 74 64 61 74 61 20  3d 20 72 65 61 64 20 74  |getdata = read t|
00000760  68 65 20 64 61 74 61 20  72 65 74 75 72 6e 65 64  |he data returned|
00000770  20 62 79 20 74 68 65 20  6c 69 73 74 65 6e 0d 02  | by the listen..|
00000780  a8 26 f4 20 4e 6f 74 65  3a 20 57 69 6c 6c 20 61  |.&. Note: Will a|
00000790  6c 73 6f 20 61 62 61 6e  64 6f 6e 20 74 68 65 20  |lso abandon the |
000007a0  72 65 61 64 0d 02 b2 31  dd f2 65 63 6f 6e 65 74  |read...1..econet|
000007b0  5f 67 65 74 64 61 74 61  28 68 25 2c f8 20 62 75  |_getdata(h%,. bu|
000007c0  66 25 2c f8 20 73 69 7a  65 25 2c f8 20 73 74 61  |f%,. size%,. sta|
000007d0  74 6e 65 74 29 0d 02 bc  1b ea 20 66 6c 61 67 2c  |tnet)..... flag,|
000007e0  70 6f 72 74 2c 73 74 61  74 69 6f 6e 2c 6e 65 74  |port,station,net|
000007f0  0d 02 c6 34 e7 20 65 63  6f 5f 68 25 28 68 25 2c  |...4. eco_h%(h%,|
00000800  30 29 3d 2d 31 20 8c 62  75 66 25 3d 2d 31 3a 73  |0)=-1 .buf%=-1:s|
00000810  69 7a 65 25 3d 2d 31 3a  73 74 61 74 6e 65 74 3d  |ize%=-1:statnet=|
00000820  2d 31 3a e1 0d 02 d0 4e  c8 99 20 22 45 63 6f 6e  |-1:....N.. "Econ|
00000830  65 74 5f 52 65 61 64 52  65 63 65 69 76 65 22 2c  |et_ReadReceive",|
00000840  65 63 6f 5f 68 25 28 68  25 2c 30 29 20 b8 20 73  |eco_h%(h%,0) . s|
00000850  74 61 74 75 73 2c 66 6c  61 67 2c 2c 73 74 61 74  |tatus,flag,,stat|
00000860  69 6f 6e 2c 6e 65 74 2c  62 75 66 25 2c 73 69 7a  |ion,net,buf%,siz|
00000870  65 25 0d 02 da 27 73 74  61 74 6e 65 74 3d 73 74  |e%...'statnet=st|
00000880  61 74 69 6f 6e 2b 28 6e  65 74 3c 3c 38 29 2b 28  |ation+(net<<8)+(|
00000890  66 6c 61 67 3c 3c 31 36  29 0d 02 e4 2b c8 99 20  |flag<<16)...+.. |
000008a0  22 45 63 6f 6e 65 74 5f  41 62 61 6e 64 6f 6e 52  |"Econet_AbandonR|
000008b0  65 63 65 69 76 65 22 2c  65 63 6f 5f 68 25 28 68  |eceive",eco_h%(h|
000008c0  25 2c 30 29 0d 02 ee 13  65 63 6f 5f 68 25 28 68  |%,0)....eco_h%(h|
000008d0  25 2c 30 29 3d 2d 31 0d  02 f8 05 e1 0d 03 02 05  |%,0)=-1.........|
000008e0  3a 0d 03 03 38 f4 20 50  52 4f 43 65 63 6f 6e 65  |:...8. PROCecone|
000008f0  74 5f 61 62 6f 72 74 61  6c 6c 20 3d 20 61 62 6f  |t_abortall = abo|
00000900  72 74 20 61 6c 6c 20 74  68 65 20 63 6f 6d 6d 75  |rt all the commu|
00000910  6e 69 63 61 74 69 6f 6e  73 0d 03 0c 15 dd f2 65  |nications......e|
00000920  63 6f 6e 65 74 5f 61 62  6f 72 74 61 6c 6c 0d 03  |conet_abortall..|
00000930  16 07 ea 20 49 0d 03 20  13 e3 68 25 3d 30 b8 20  |... I.. ..h%=0. |
00000940  65 63 6f 5f 6d 61 78 25  0d 03 2a 19 20 e7 20 65  |eco_max%..*. . e|
00000950  63 6f 5f 68 25 28 68 25  2c 30 29 3c 3e 2d 31 20  |co_h%(h%,0)<>-1 |
00000960  8c 0d 03 34 1e 20 20 e7  20 28 65 63 6f 5f 68 25  |...4.  . (eco_h%|
00000970  28 68 25 2c 31 29 20 80  20 31 29 3d 30 20 8c 0d  |(h%,1) . 1)=0 ..|
00000980  03 3e 2e 20 20 20 c8 99  20 22 45 63 6f 6e 65 74  |.>.   .. "Econet|
00000990  5f 41 62 61 6e 64 6f 6e  52 65 63 65 69 76 65 22  |_AbandonReceive"|
000009a0  2c 65 63 6f 5f 68 25 28  68 25 2c 30 29 0d 03 48  |,eco_h%(h%,0)..H|
000009b0  07 20 20 cc 0d 03 52 2f  20 20 20 c8 99 20 22 45  |.  ...R/   .. "E|
000009c0  63 6f 6e 65 74 5f 41 62  61 6e 64 6f 6e 54 72 61  |conet_AbandonTra|
000009d0  6e 73 6d 69 74 22 2c 65  63 6f 5f 68 25 28 68 25  |nsmit",eco_h%(h%|
000009e0  2c 30 29 0d 03 53 07 20  20 cd 0d 03 54 15 20 20  |,0)..S.  ...T.  |
000009f0  65 63 6f 5f 68 25 28 68  25 2c 30 29 3d 2d 31 0d  |eco_h%(h%,0)=-1.|
00000a00  03 55 06 20 cd 0d 03 56  05 ed 0d 03 57 05 e1 0d  |.U. ...V....W...|
00000a10  ff                                                |.|
00000a11