Home » Archimedes archive » Archimedes World » archimedes_world_volume_15_issue_1_scp.adf » !OpenFiles_OpenFiles » !SocketMgr/!RunImage

!SocketMgr/!RunImage

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 » Archimedes World » archimedes_world_volume_15_issue_1_scp.adf » !OpenFiles_OpenFiles
Filename: !SocketMgr/!RunImage
Read OK:
File size: 09B8 bytes
Load address: 0000
Exec address: 0000
File contents
    4DIMA%511,a%&7F,G%75:E%=A%+256:c%=a%+&80:Q%=FALSE:SYS&400C0,&C8,&4B534154,"SocketMgr"TO,w%:SYS&400D9,,"<SocketMgr$Dir>.Templates":q%=FNA("keys"):S%=FNA("main"):x%=FNA("prog_info"):SYS&400DA:SYS8,16,"<SocketMgr$Dir>.Menu",G%:G%!32=x%:!A%=q%:SYS&400CB,,A%
    5A%!4=-1:A%!8=-1:A%!&C=-1:A%!16=-1:SYS&400C5,,A%:DIMf%&3FF,Z%35,I%2,F%35,H%4,K%6:g%=f%+&400::$I%="R2"::$H%="R5,3":$K%="Remove":ONERRORPROCZ
    6WHILENOTQ%:SYS&400C7,&1FCB3,A%TOd%:CASEd%OF
    7WHEN2:IF!A%<>q%THENSYS&400C5,,A%
    8WHEN3:SYS&400C6,,A%
    9WHEN6:L%=A%!8:D%=A%!&C:X%=A%!16:CASED%OF
   10WHENS%:CASEL%OF
   11WHEN4,1:!E%=S%:E%!4=X%-1:SYS&400CE,,E%:A$=$E%!28:SYS&41210,VALLEFT$(A$,INSTR(A$," ")-1):IFL%=4THENSYS&400C6,,E%ELSEPROCA
   12WHEN2:SYS&400D4,,G%,!A%-64,A%!4
   13ENDCASE
   14ENDCASE
   15WHEN8:CASEA%!24OF
   16WHEN19:PROCA:PROCE(S%)
   17OTHERWISESYS&400DC,A%!24
   18ENDCASE
   19WHEN9:Q%=!A%=1:SYS&400CF,,E%:IFE%!8=1THENSYS&400D4,,G%,!E%-64,E%!4
   20WHEN17,18:CASEA%!16OF
   21WHEN0:Q%=TRUE
   22WHEN&A:SYS35,"SocketMgr$Dir",E%,256,0,3TO,,s%:E%?s%=&D:BPUT#A%!20,"Run "+$E%
   23ENDCASE
   24ENDCASE:ENDWHILE:SYS&400DD,w%,&4B534154:END
   25DEFPROCA:SYS&41218TOe%:!E%=S%:E%!4=2:REPEAT:SYS&400CE,,E%:IFE%!24<>&800000THENSYS&400C4,,E%:E%!4+=1
   26UNTILE%!24=&800000:C%=(FNE(-1,&B)+1<<FNE(-1,4))*0.75:!Z%=S%:Z%!4=32:Z%!&C=C%-&B4:Z%!20=&17000135:Z%!28=I%:Z%!32=32:!F%=S%:F%!4=Z%!&C+8:F%!&C=C%-32:F%!20=&1700313d:F%!28=H%:F%!32=7:X%=0:Z%!8=-&6C:Z%!16=-56:W%=f%:!E%=16:FORB%=0TOe%-1:SYS&6120F,B%,E%+4,E%TO;V%
   27IFNOTV%AND1THEN
   28E%!40=4:SYS&6120D,B%,&FFFF,4104,E%+36,E%+40:SYS&6120E,B%,E%+20,E%TO;V%:E$=STR$B%+" - "+FNS(E%!36)+" - "+FNM(E%+4,E%+20):T%=LENE$+1:IFW%+T%<g%THEN
   29$W%=E$:Z%!24=W%:W%+=T%:SYS&400C2,,Z%:F%!8=Z%!8:F%!16=Z%!16:F%!24=K%:SYS&400C2,,F%:Z%!8-=60:Z%!16-=60:X%+=1
   30ENDIF
   31ENDIF:NEXT:P%=Z%!16-24:IFP%>-&9CTHENP%=-&9C
   32!E%=S%:E%!4=0:SYS&400CE,,E%:SYS&400C4,,E%:E%!4=S%:E%!8=&C:E%!&C=P%+&C:E%!16=C%-&C:E%!20=-28:SYS&400C2,,E%+4:SYS&400D1,S%,0,P%,C%,0:!E%=0:E%!4=P%:E%!8=C%:E%!&C=0:SYS&400D7,S%,E%:PROCE(S%):ENDPROC
   33DEFFNE(b%,Y%)SYS53,b%,Y%TO,,Y%:=Y%
   34DEFFNA(Z$):SYS&400DB,,A%,a%,c%,-1,Z$,0TO,,a%:SYS&400C1,,A%TOv%:=v%
   35DEFPROCE(D%):!E%=D%:SYS&400CC,,E%+1:IFE%!32AND65536THEN
   36E%!28=-1
   37ELSE:_%=E%!52-E%!44:R%=E%!56-E%!48:O%=((FNE(-1,&B)<<FNE(-1,4))-_%)>>1:z%=((FNE(-1,&C)<<FNE(-1,5))-R%)>>1:!E%=D%:E%!4=O%:E%!8=z%:E%!&C=O%+_%:E%!16=z%+R%
   38ENDIF:SYS&400C5,,E%:ENDPROC
   39DEFPROCZ:!A%=ERR:$(A%+4)=REPORT$+" at line "+STR$ERL+CHR$0:SYS&400DF,A%,3,"SocketMgr"TO,!A%:Q%=!A%=2:ENDPROC
   40DEFFNM(M%,J%):N%=M%?2<<8ORM%?3:M%=M%?4ORM%?5<<8ORM%?6<<16ORM%?7<<24:t%=J%?2<<8ORJ%?3:r%=J%?4ORJ%?5<<8ORJ%?6<<16ORJ%?7<<24:IFM%=0THEN="Listening on port "+STR$N%
   41=FNZ(M%,N%)+" to "+FNZ(r%,t%)
   42DEFFNZ(M%,N%):IFM%=&100007FTHEN="localhost."+STR$(N%)
   43=STR$(M%AND&FF)+"."+STR$((M%>>8)AND&FF)+"."+STR$((M%>>16)AND&FF)+"."+STR$(M%>>>24)+" ("+STR$(N%)+")"
   44DEFFNS(U%):IFU%=1THEN="TCP"ELSEIFU%=2THEN="UDP"ELSEIFU%=3THEN="ICMP"
   45=STR$U%
��A%511,a%&7F,G%75:E%=A%+256:c%=a%+&80:Q%=�:ș&400C0,&C8,&4B534154,"SocketMgr"�,w%:ș&400D9,,"<SocketMgr$Dir>.Templates":q%=�A("keys"):S%=�A("main"):x%=�A("prog_info"):ș&400DA:ș8,16,"<SocketMgr$Dir>.Menu",G%:G%!32=x%:!A%=q%:ș&400CB,,A%
�A%!4=-1:A%!8=-1:A%!&C=-1:A%!16=-1:ș&400C5,,A%:�f%&3FF,Z%35,I%2,F%35,H%4,K%6:g%=f%+&400::$I%="R2"::$H%="R5,3":$K%="Remove":��Z
%ȕ�Q%:ș&400C7,&1FCB3,A%�d%:Ȏd%�
�2:�!A%<>q%�ș&400C5,,A%
�3:ș&400C6,,A%
	&�6:L%=A%!8:D%=A%!&C:X%=A%!16:ȎD%�


�S%:ȎL%�
`�4,1:!E%=S%:E%!4=X%-1:ș&400CE,,E%:A$=$E%!28:ș&41210,��A$,�A$," ")-1):�L%=4�ș&400C6,,E%��A
�2:ș&400D4,,G%,!A%-64,A%!4

�
�
�8:ȎA%!24�
�19:�A:�E(S%)
ș&400DC,A%!24
�
=�9:Q%=!A%=1:ș&400CF,,E%:�E%!8=1�ș&400D4,,G%,!E%-64,E%!4
�17,18:ȎA%!16�
�0:Q%=�
H�&A:ș35,"SocketMgr$Dir",E%,256,0,3�,,s%:E%?s%=&D:�#A%!20,"Run "+$E%
�
�:�:ș&400DD,w%,&4B534154:�
U��A:ș&41218�e%:!E%=S%:E%!4=2:�:ș&400CE,,E%:�E%!24<>&800000�ș&400C4,,E%:E%!4+=1
��E%!24=&800000:C%=(�E(-1,&B)+1<<�E(-1,4))*0.75:!Z%=S%:Z%!4=32:Z%!&C=C%-&B4:Z%!20=&17000135:Z%!28=I%:Z%!32=32:!F%=S%:F%!4=Z%!&C+8:F%!&C=C%-32:F%!20=&1700313d:F%!28=H%:F%!32=7:X%=0:Z%!8=-&6C:Z%!16=-56:W%=f%:!E%=16:�B%=0�e%-1:ș&6120F,B%,E%+4,E%�;V%
�V%�1�
�E%!40=4:ș&6120D,B%,&FFFF,4104,E%+36,E%+40:ș&6120E,B%,E%+20,E%�;V%:E$=�B%+" - "+�S(E%!36)+" - "+�M(E%+4,E%+20):T%=�E$+1:�W%+T%<g%�
l$W%=E$:Z%!24=W%:W%+=T%:ș&400C2,,Z%:F%!8=Z%!8:F%!16=Z%!16:F%!24=K%:ș&400C2,,F%:Z%!8-=60:Z%!16-=60:X%+=1
�
$�:�:P%=Z%!16-24:�P%>-&9C�P%=-&9C
 �!E%=S%:E%!4=0:ș&400CE,,E%:ș&400C4,,E%:E%!4=S%:E%!8=&C:E%!&C=P%+&C:E%!16=C%-&C:E%!20=-28:ș&400C2,,E%+4:ș&400D1,S%,0,P%,C%,0:!E%=0:E%!4=P%:E%!8=C%:E%!&C=0:ș&400D7,S%,E%:�E(S%):�
!!ݤE(b%,Y%)ș53,b%,Y%�,,Y%:=Y%
"?ݤA(Z$):ș&400DB,,A%,a%,c%,-1,Z$,0�,,a%:ș&400C1,,A%�v%:=v%
#/��E(D%):!E%=D%:ș&400CC,,E%+1:�E%!32�65536�
$E%!28=-1
%��:_%=E%!52-E%!44:R%=E%!56-E%!48:O%=((�E(-1,&B)<<�E(-1,4))-_%)>>1:z%=((�E(-1,&C)<<�E(-1,5))-R%)>>1:!E%=D%:E%!4=O%:E%!8=z%:E%!&C=O%+_%:E%!16=z%+R%
&�:ș&400C5,,E%:�
'T��Z:!A%=�:$(A%+4)=�$+" at line "+Þ+�0:ș&400DF,A%,3,"SocketMgr"�,!A%:Q%=!A%=2:�
(�ݤM(M%,J%):N%=M%?2<<8�M%?3:M%=M%?4�M%?5<<8�M%?6<<16�M%?7<<24:t%=J%?2<<8�J%?3:r%=J%?4�J%?5<<8�J%?6<<16�J%?7<<24:�M%=0�="Listening on port "+�N%
)=�Z(M%,N%)+" to "+�Z(r%,t%)
*/ݤZ(M%,N%):�M%=&100007F�="localhost."+�(N%)
+S=�(M%�&FF)+"."+�((M%>>8)�&FF)+"."+�((M%>>16)�&FF)+"."+�(M%>>>24)+" ("+�(N%)+")"
,3ݤS(U%):�U%=1�="TCP"��U%=2�="UDP"��U%=3�="ICMP"
-=�U%
�
00000000  0d 00 04 f1 de 41 25 35  31 31 2c 61 25 26 37 46  |.....A%511,a%&7F|
00000010  2c 47 25 37 35 3a 45 25  3d 41 25 2b 32 35 36 3a  |,G%75:E%=A%+256:|
00000020  63 25 3d 61 25 2b 26 38  30 3a 51 25 3d a3 3a c8  |c%=a%+&80:Q%=.:.|
00000030  99 26 34 30 30 43 30 2c  26 43 38 2c 26 34 42 35  |.&400C0,&C8,&4B5|
00000040  33 34 31 35 34 2c 22 53  6f 63 6b 65 74 4d 67 72  |34154,"SocketMgr|
00000050  22 b8 2c 77 25 3a c8 99  26 34 30 30 44 39 2c 2c  |".,w%:..&400D9,,|
00000060  22 3c 53 6f 63 6b 65 74  4d 67 72 24 44 69 72 3e  |"<SocketMgr$Dir>|
00000070  2e 54 65 6d 70 6c 61 74  65 73 22 3a 71 25 3d a4  |.Templates":q%=.|
00000080  41 28 22 6b 65 79 73 22  29 3a 53 25 3d a4 41 28  |A("keys"):S%=.A(|
00000090  22 6d 61 69 6e 22 29 3a  78 25 3d a4 41 28 22 70  |"main"):x%=.A("p|
000000a0  72 6f 67 5f 69 6e 66 6f  22 29 3a c8 99 26 34 30  |rog_info"):..&40|
000000b0  30 44 41 3a c8 99 38 2c  31 36 2c 22 3c 53 6f 63  |0DA:..8,16,"<Soc|
000000c0  6b 65 74 4d 67 72 24 44  69 72 3e 2e 4d 65 6e 75  |ketMgr$Dir>.Menu|
000000d0  22 2c 47 25 3a 47 25 21  33 32 3d 78 25 3a 21 41  |",G%:G%!32=x%:!A|
000000e0  25 3d 71 25 3a c8 99 26  34 30 30 43 42 2c 2c 41  |%=q%:..&400CB,,A|
000000f0  25 0d 00 05 83 41 25 21  34 3d 2d 31 3a 41 25 21  |%....A%!4=-1:A%!|
00000100  38 3d 2d 31 3a 41 25 21  26 43 3d 2d 31 3a 41 25  |8=-1:A%!&C=-1:A%|
00000110  21 31 36 3d 2d 31 3a c8  99 26 34 30 30 43 35 2c  |!16=-1:..&400C5,|
00000120  2c 41 25 3a de 66 25 26  33 46 46 2c 5a 25 33 35  |,A%:.f%&3FF,Z%35|
00000130  2c 49 25 32 2c 46 25 33  35 2c 48 25 34 2c 4b 25  |,I%2,F%35,H%4,K%|
00000140  36 3a 67 25 3d 66 25 2b  26 34 30 30 3a 3a 24 49  |6:g%=f%+&400::$I|
00000150  25 3d 22 52 32 22 3a 3a  24 48 25 3d 22 52 35 2c  |%="R2"::$H%="R5,|
00000160  33 22 3a 24 4b 25 3d 22  52 65 6d 6f 76 65 22 3a  |3":$K%="Remove":|
00000170  ee 85 f2 5a 0d 00 06 25  c8 95 ac 51 25 3a c8 99  |...Z...%...Q%:..|
00000180  26 34 30 30 43 37 2c 26  31 46 43 42 33 2c 41 25  |&400C7,&1FCB3,A%|
00000190  b8 64 25 3a c8 8e 64 25  ca 0d 00 07 1c c9 32 3a  |.d%:..d%......2:|
000001a0  e7 21 41 25 3c 3e 71 25  8c c8 99 26 34 30 30 43  |.!A%<>q%...&400C|
000001b0  35 2c 2c 41 25 0d 00 08  13 c9 33 3a c8 99 26 34  |5,,A%.....3:..&4|
000001c0  30 30 43 36 2c 2c 41 25  0d 00 09 26 c9 36 3a 4c  |00C6,,A%...&.6:L|
000001d0  25 3d 41 25 21 38 3a 44  25 3d 41 25 21 26 43 3a  |%=A%!8:D%=A%!&C:|
000001e0  58 25 3d 41 25 21 31 36  3a c8 8e 44 25 ca 0d 00  |X%=A%!16:..D%...|
000001f0  0a 0d c9 53 25 3a c8 8e  4c 25 ca 0d 00 0b 60 c9  |...S%:..L%....`.|
00000200  34 2c 31 3a 21 45 25 3d  53 25 3a 45 25 21 34 3d  |4,1:!E%=S%:E%!4=|
00000210  58 25 2d 31 3a c8 99 26  34 30 30 43 45 2c 2c 45  |X%-1:..&400CE,,E|
00000220  25 3a 41 24 3d 24 45 25  21 32 38 3a c8 99 26 34  |%:A$=$E%!28:..&4|
00000230  31 32 31 30 2c bb c0 41  24 2c a7 41 24 2c 22 20  |1210,..A$,.A$," |
00000240  22 29 2d 31 29 3a e7 4c  25 3d 34 8c c8 99 26 34  |")-1):.L%=4...&4|
00000250  30 30 43 36 2c 2c 45 25  8b f2 41 0d 00 0c 1f c9  |00C6,,E%..A.....|
00000260  32 3a c8 99 26 34 30 30  44 34 2c 2c 47 25 2c 21  |2:..&400D4,,G%,!|
00000270  41 25 2d 36 34 2c 41 25  21 34 0d 00 0d 05 cb 0d  |A%-64,A%!4......|
00000280  00 0e 05 cb 0d 00 0f 0f  c9 38 3a c8 8e 41 25 21  |.........8:..A%!|
00000290  32 34 ca 0d 00 10 11 c9  31 39 3a f2 41 3a f2 45  |24......19:.A:.E|
000002a0  28 53 25 29 0d 00 11 13  7f c8 99 26 34 30 30 44  |(S%).......&400D|
000002b0  43 2c 41 25 21 32 34 0d  00 12 05 cb 0d 00 13 3d  |C,A%!24........=|
000002c0  c9 39 3a 51 25 3d 21 41  25 3d 31 3a c8 99 26 34  |.9:Q%=!A%=1:..&4|
000002d0  30 30 43 46 2c 2c 45 25  3a e7 45 25 21 38 3d 31  |00CF,,E%:.E%!8=1|
000002e0  8c c8 99 26 34 30 30 44  34 2c 2c 47 25 2c 21 45  |...&400D4,,G%,!E|
000002f0  25 2d 36 34 2c 45 25 21  34 0d 00 14 13 c9 31 37  |%-64,E%!4.....17|
00000300  2c 31 38 3a c8 8e 41 25  21 31 36 ca 0d 00 15 0b  |,18:..A%!16.....|
00000310  c9 30 3a 51 25 3d b9 0d  00 16 48 c9 26 41 3a c8  |.0:Q%=....H.&A:.|
00000320  99 33 35 2c 22 53 6f 63  6b 65 74 4d 67 72 24 44  |.35,"SocketMgr$D|
00000330  69 72 22 2c 45 25 2c 32  35 36 2c 30 2c 33 b8 2c  |ir",E%,256,0,3.,|
00000340  2c 73 25 3a 45 25 3f 73  25 3d 26 44 3a d5 23 41  |,s%:E%?s%=&D:.#A|
00000350  25 21 32 30 2c 22 52 75  6e 20 22 2b 24 45 25 0d  |%!20,"Run "+$E%.|
00000360  00 17 05 cb 0d 00 18 1f  cb 3a ce 3a c8 99 26 34  |.........:.:..&4|
00000370  30 30 44 44 2c 77 25 2c  26 34 42 35 33 34 31 35  |00DD,w%,&4B53415|
00000380  34 3a e0 0d 00 19 55 dd  f2 41 3a c8 99 26 34 31  |4:....U..A:..&41|
00000390  32 31 38 b8 65 25 3a 21  45 25 3d 53 25 3a 45 25  |218.e%:!E%=S%:E%|
000003a0  21 34 3d 32 3a f5 3a c8  99 26 34 30 30 43 45 2c  |!4=2:.:..&400CE,|
000003b0  2c 45 25 3a e7 45 25 21  32 34 3c 3e 26 38 30 30  |,E%:.E%!24<>&800|
000003c0  30 30 30 8c c8 99 26 34  30 30 43 34 2c 2c 45 25  |000...&400C4,,E%|
000003d0  3a 45 25 21 34 2b 3d 31  0d 00 1a fa fd 45 25 21  |:E%!4+=1.....E%!|
000003e0  32 34 3d 26 38 30 30 30  30 30 3a 43 25 3d 28 a4  |24=&800000:C%=(.|
000003f0  45 28 2d 31 2c 26 42 29  2b 31 3c 3c a4 45 28 2d  |E(-1,&B)+1<<.E(-|
00000400  31 2c 34 29 29 2a 30 2e  37 35 3a 21 5a 25 3d 53  |1,4))*0.75:!Z%=S|
00000410  25 3a 5a 25 21 34 3d 33  32 3a 5a 25 21 26 43 3d  |%:Z%!4=32:Z%!&C=|
00000420  43 25 2d 26 42 34 3a 5a  25 21 32 30 3d 26 31 37  |C%-&B4:Z%!20=&17|
00000430  30 30 30 31 33 35 3a 5a  25 21 32 38 3d 49 25 3a  |000135:Z%!28=I%:|
00000440  5a 25 21 33 32 3d 33 32  3a 21 46 25 3d 53 25 3a  |Z%!32=32:!F%=S%:|
00000450  46 25 21 34 3d 5a 25 21  26 43 2b 38 3a 46 25 21  |F%!4=Z%!&C+8:F%!|
00000460  26 43 3d 43 25 2d 33 32  3a 46 25 21 32 30 3d 26  |&C=C%-32:F%!20=&|
00000470  31 37 30 30 33 31 33 64  3a 46 25 21 32 38 3d 48  |1700313d:F%!28=H|
00000480  25 3a 46 25 21 33 32 3d  37 3a 58 25 3d 30 3a 5a  |%:F%!32=7:X%=0:Z|
00000490  25 21 38 3d 2d 26 36 43  3a 5a 25 21 31 36 3d 2d  |%!8=-&6C:Z%!16=-|
000004a0  35 36 3a 57 25 3d 66 25  3a 21 45 25 3d 31 36 3a  |56:W%=f%:!E%=16:|
000004b0  e3 42 25 3d 30 b8 65 25  2d 31 3a c8 99 26 36 31  |.B%=0.e%-1:..&61|
000004c0  32 30 46 2c 42 25 2c 45  25 2b 34 2c 45 25 b8 3b  |20F,B%,E%+4,E%.;|
000004d0  56 25 0d 00 1b 0b e7 ac  56 25 80 31 8c 0d 00 1c  |V%......V%.1....|
000004e0  87 45 25 21 34 30 3d 34  3a c8 99 26 36 31 32 30  |.E%!40=4:..&6120|
000004f0  44 2c 42 25 2c 26 46 46  46 46 2c 34 31 30 34 2c  |D,B%,&FFFF,4104,|
00000500  45 25 2b 33 36 2c 45 25  2b 34 30 3a c8 99 26 36  |E%+36,E%+40:..&6|
00000510  31 32 30 45 2c 42 25 2c  45 25 2b 32 30 2c 45 25  |120E,B%,E%+20,E%|
00000520  b8 3b 56 25 3a 45 24 3d  c3 42 25 2b 22 20 2d 20  |.;V%:E$=.B%+" - |
00000530  22 2b a4 53 28 45 25 21  33 36 29 2b 22 20 2d 20  |"+.S(E%!36)+" - |
00000540  22 2b a4 4d 28 45 25 2b  34 2c 45 25 2b 32 30 29  |"+.M(E%+4,E%+20)|
00000550  3a 54 25 3d a9 45 24 2b  31 3a e7 57 25 2b 54 25  |:T%=.E$+1:.W%+T%|
00000560  3c 67 25 8c 0d 00 1d 6c  24 57 25 3d 45 24 3a 5a  |<g%....l$W%=E$:Z|
00000570  25 21 32 34 3d 57 25 3a  57 25 2b 3d 54 25 3a c8  |%!24=W%:W%+=T%:.|
00000580  99 26 34 30 30 43 32 2c  2c 5a 25 3a 46 25 21 38  |.&400C2,,Z%:F%!8|
00000590  3d 5a 25 21 38 3a 46 25  21 31 36 3d 5a 25 21 31  |=Z%!8:F%!16=Z%!1|
000005a0  36 3a 46 25 21 32 34 3d  4b 25 3a c8 99 26 34 30  |6:F%!24=K%:..&40|
000005b0  30 43 32 2c 2c 46 25 3a  5a 25 21 38 2d 3d 36 30  |0C2,,F%:Z%!8-=60|
000005c0  3a 5a 25 21 31 36 2d 3d  36 30 3a 58 25 2b 3d 31  |:Z%!16-=60:X%+=1|
000005d0  0d 00 1e 05 cd 0d 00 1f  24 cd 3a ed 3a 50 25 3d  |........$.:.:P%=|
000005e0  5a 25 21 31 36 2d 32 34  3a e7 50 25 3e 2d 26 39  |Z%!16-24:.P%>-&9|
000005f0  43 8c 50 25 3d 2d 26 39  43 0d 00 20 b8 21 45 25  |C.P%=-&9C.. .!E%|
00000600  3d 53 25 3a 45 25 21 34  3d 30 3a c8 99 26 34 30  |=S%:E%!4=0:..&40|
00000610  30 43 45 2c 2c 45 25 3a  c8 99 26 34 30 30 43 34  |0CE,,E%:..&400C4|
00000620  2c 2c 45 25 3a 45 25 21  34 3d 53 25 3a 45 25 21  |,,E%:E%!4=S%:E%!|
00000630  38 3d 26 43 3a 45 25 21  26 43 3d 50 25 2b 26 43  |8=&C:E%!&C=P%+&C|
00000640  3a 45 25 21 31 36 3d 43  25 2d 26 43 3a 45 25 21  |:E%!16=C%-&C:E%!|
00000650  32 30 3d 2d 32 38 3a c8  99 26 34 30 30 43 32 2c  |20=-28:..&400C2,|
00000660  2c 45 25 2b 34 3a c8 99  26 34 30 30 44 31 2c 53  |,E%+4:..&400D1,S|
00000670  25 2c 30 2c 50 25 2c 43  25 2c 30 3a 21 45 25 3d  |%,0,P%,C%,0:!E%=|
00000680  30 3a 45 25 21 34 3d 50  25 3a 45 25 21 38 3d 43  |0:E%!4=P%:E%!8=C|
00000690  25 3a 45 25 21 26 43 3d  30 3a c8 99 26 34 30 30  |%:E%!&C=0:..&400|
000006a0  44 37 2c 53 25 2c 45 25  3a f2 45 28 53 25 29 3a  |D7,S%,E%:.E(S%):|
000006b0  e1 0d 00 21 21 dd a4 45  28 62 25 2c 59 25 29 c8  |...!!..E(b%,Y%).|
000006c0  99 35 33 2c 62 25 2c 59  25 b8 2c 2c 59 25 3a 3d  |.53,b%,Y%.,,Y%:=|
000006d0  59 25 0d 00 22 3f dd a4  41 28 5a 24 29 3a c8 99  |Y%.."?..A(Z$):..|
000006e0  26 34 30 30 44 42 2c 2c  41 25 2c 61 25 2c 63 25  |&400DB,,A%,a%,c%|
000006f0  2c 2d 31 2c 5a 24 2c 30  b8 2c 2c 61 25 3a c8 99  |,-1,Z$,0.,,a%:..|
00000700  26 34 30 30 43 31 2c 2c  41 25 b8 76 25 3a 3d 76  |&400C1,,A%.v%:=v|
00000710  25 0d 00 23 2f dd f2 45  28 44 25 29 3a 21 45 25  |%..#/..E(D%):!E%|
00000720  3d 44 25 3a c8 99 26 34  30 30 43 43 2c 2c 45 25  |=D%:..&400CC,,E%|
00000730  2b 31 3a e7 45 25 21 33  32 80 36 35 35 33 36 8c  |+1:.E%!32.65536.|
00000740  0d 00 24 0c 45 25 21 32  38 3d 2d 31 0d 00 25 94  |..$.E%!28=-1..%.|
00000750  cc 3a 5f 25 3d 45 25 21  35 32 2d 45 25 21 34 34  |.:_%=E%!52-E%!44|
00000760  3a 52 25 3d 45 25 21 35  36 2d 45 25 21 34 38 3a  |:R%=E%!56-E%!48:|
00000770  4f 25 3d 28 28 a4 45 28  2d 31 2c 26 42 29 3c 3c  |O%=((.E(-1,&B)<<|
00000780  a4 45 28 2d 31 2c 34 29  29 2d 5f 25 29 3e 3e 31  |.E(-1,4))-_%)>>1|
00000790  3a 7a 25 3d 28 28 a4 45  28 2d 31 2c 26 43 29 3c  |:z%=((.E(-1,&C)<|
000007a0  3c a4 45 28 2d 31 2c 35  29 29 2d 52 25 29 3e 3e  |<.E(-1,5))-R%)>>|
000007b0  31 3a 21 45 25 3d 44 25  3a 45 25 21 34 3d 4f 25  |1:!E%=D%:E%!4=O%|
000007c0  3a 45 25 21 38 3d 7a 25  3a 45 25 21 26 43 3d 4f  |:E%!8=z%:E%!&C=O|
000007d0  25 2b 5f 25 3a 45 25 21  31 36 3d 7a 25 2b 52 25  |%+_%:E%!16=z%+R%|
000007e0  0d 00 26 14 cd 3a c8 99  26 34 30 30 43 35 2c 2c  |..&..:..&400C5,,|
000007f0  45 25 3a e1 0d 00 27 54  dd f2 5a 3a 21 41 25 3d  |E%:...'T..Z:!A%=|
00000800  9f 3a 24 28 41 25 2b 34  29 3d f6 24 2b 22 20 61  |.:$(A%+4)=.$+" a|
00000810  74 20 6c 69 6e 65 20 22  2b c3 9e 2b bd 30 3a c8  |t line "+..+.0:.|
00000820  99 26 34 30 30 44 46 2c  41 25 2c 33 2c 22 53 6f  |.&400DF,A%,3,"So|
00000830  63 6b 65 74 4d 67 72 22  b8 2c 21 41 25 3a 51 25  |cketMgr".,!A%:Q%|
00000840  3d 21 41 25 3d 32 3a e1  0d 00 28 92 dd a4 4d 28  |=!A%=2:...(...M(|
00000850  4d 25 2c 4a 25 29 3a 4e  25 3d 4d 25 3f 32 3c 3c  |M%,J%):N%=M%?2<<|
00000860  38 84 4d 25 3f 33 3a 4d  25 3d 4d 25 3f 34 84 4d  |8.M%?3:M%=M%?4.M|
00000870  25 3f 35 3c 3c 38 84 4d  25 3f 36 3c 3c 31 36 84  |%?5<<8.M%?6<<16.|
00000880  4d 25 3f 37 3c 3c 32 34  3a 74 25 3d 4a 25 3f 32  |M%?7<<24:t%=J%?2|
00000890  3c 3c 38 84 4a 25 3f 33  3a 72 25 3d 4a 25 3f 34  |<<8.J%?3:r%=J%?4|
000008a0  84 4a 25 3f 35 3c 3c 38  84 4a 25 3f 36 3c 3c 31  |.J%?5<<8.J%?6<<1|
000008b0  36 84 4a 25 3f 37 3c 3c  32 34 3a e7 4d 25 3d 30  |6.J%?7<<24:.M%=0|
000008c0  8c 3d 22 4c 69 73 74 65  6e 69 6e 67 20 6f 6e 20  |.="Listening on |
000008d0  70 6f 72 74 20 22 2b c3  4e 25 0d 00 29 1f 3d a4  |port "+.N%..).=.|
000008e0  5a 28 4d 25 2c 4e 25 29  2b 22 20 74 6f 20 22 2b  |Z(M%,N%)+" to "+|
000008f0  a4 5a 28 72 25 2c 74 25  29 0d 00 2a 2f dd a4 5a  |.Z(r%,t%)..*/..Z|
00000900  28 4d 25 2c 4e 25 29 3a  e7 4d 25 3d 26 31 30 30  |(M%,N%):.M%=&100|
00000910  30 30 37 46 8c 3d 22 6c  6f 63 61 6c 68 6f 73 74  |007F.="localhost|
00000920  2e 22 2b c3 28 4e 25 29  0d 00 2b 53 3d c3 28 4d  |."+.(N%)..+S=.(M|
00000930  25 80 26 46 46 29 2b 22  2e 22 2b c3 28 28 4d 25  |%.&FF)+"."+.((M%|
00000940  3e 3e 38 29 80 26 46 46  29 2b 22 2e 22 2b c3 28  |>>8).&FF)+"."+.(|
00000950  28 4d 25 3e 3e 31 36 29  80 26 46 46 29 2b 22 2e  |(M%>>16).&FF)+".|
00000960  22 2b c3 28 4d 25 3e 3e  3e 32 34 29 2b 22 20 28  |"+.(M%>>>24)+" (|
00000970  22 2b c3 28 4e 25 29 2b  22 29 22 0d 00 2c 33 dd  |"+.(N%)+")"..,3.|
00000980  a4 53 28 55 25 29 3a e7  55 25 3d 31 8c 3d 22 54  |.S(U%):.U%=1.="T|
00000990  43 50 22 8b e7 55 25 3d  32 8c 3d 22 55 44 50 22  |CP"..U%=2.="UDP"|
000009a0  8b e7 55 25 3d 33 8c 3d  22 49 43 4d 50 22 0d 00  |..U%=3.="ICMP"..|
000009b0  2d 08 3d c3 55 25 0d ff                           |-.=.U%..|
000009b8