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

!JFShared/ISvcs/!Help

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/ISvcs/!Help
Read OK:
File size: 0E0C bytes
Load address: 0000
Exec address: 0000
File contents
                                InternetServices
                                ================

Version 1.07 (05 Feb 1997)
     
Introduction
------------
Whilst learning the ins and outs of writing Internet software I found one
sadly missing section of the SWI interface. Although we have calls to decode
and encode host addresses, there is none to decode and encode services and
ports. For my SocketLib I wrote a pair of basic routines to perform this,
using the FreeNet and Acorn services files as the standard I would decode.
These routines, whilst doing the job, were very slow. Therefore, I've
re-written the code in Assembler and bunged it in a module. Much nicer :-)

Since I got fed up with the really pathetic error messages that the sockets
interface kept giving me I decided to expand this by adding error number to
text conversion. Nicer still :-)

And because I really don't like droping down to basic to read the error
numbers or service names, I've added some *Commands to help.


Usage
-----
Obviously, no programs will benefit currently from this module, as I've only
just written it. However, to those of you who wish to use it, the StrongHelp
manual provided should give you details enough to be able to write using it.

OSCLI Commands :
  *Inet_DecodeError <number> - display the textual version of the error
                               code
  *Inet_ServiceByPort <port> - decode the service name and it's aliases
  *Inet_ServiceByName <service> - decode the service number


Disclaimer
----------
The author accepts no responsibility for any problems which this application
may cause or loss of data resulting in its use. This application is Public
Domain Freeware. This means that it may be distributed, so long as no charge
other than copying costs are charged for it.
  

Source code
-----------
   This program requires the !JFPatch pre-assembler to make the code. This is
a simple text-to-basic assembler which takes a text assembler file, makes a
basic program from it to assemble, assembles it and returns any errors. It is
available from Justin Fletcher's website (users.essex.ac.uk/users/gerph) or
directly by mailing to Gerph@essex.ac.uk.
   All source code and the resultant module must be distributed together.


Contact
-------
Any comments, queries, donations or bug reports can be sent to Justin
Fletcher at :

E-Mail : Gerph@essex.ac.uk
URL    : http://users.essex.ac.uk/users/gerph
IRC    : On #Acorn as Gerph
Finger : finger jrflet@postman.essex.ac.uk
Tel    : (01842) 813979

Snail Mail :
    Justin Fletcher
    �Galadriel�
    17b Cromwell Road,
    Weeting,
    Brandon,
    Suffolk.
    IP27 0QT


History
-------
Version 1.00 : 26 Sep 1996
               Could only read lines out of the services file. Alias code
               unfinished.

Version 1.01 : 26 Sep 1996
               Alias code re-written. Crashed when alias comments encountered

Version 1.02 : 26 Sep 1996
               Alias code works, tied in to Internet_GetServiceByPort, which
               now works.

Version 1.03 : 26 Sep 1996
               Internet_GetServiceByName now works correctly. Fixed alias
               code to return 0 if no aliases are present.

Version 1.04 : 28 Sep 1996
               Minor bug in ReadUnsigned for the port number fixed - should
               ignore malformed numbers.

Version 1.05 : 02 Dec 1996
               Added the DecodeError SWI to make life even easier.

Version 1.06 : 09 Dec 1996
               Added the *Inet_DecodeError and *Inet_Service* commands.

Version 1.07 : 05 Feb 1997
               Added CreateMenu SWI.
00000000  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00000020  49 6e 74 65 72 6e 65 74  53 65 72 76 69 63 65 73  |InternetServices|
00000030  0a 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00000040  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000050  20 3d 3d 3d 3d 3d 3d 3d  3d 3d 3d 3d 3d 3d 3d 3d  | ===============|
00000060  3d 0a 0a 56 65 72 73 69  6f 6e 20 31 2e 30 37 20  |=..Version 1.07 |
00000070  28 30 35 20 46 65 62 20  31 39 39 37 29 0a 20 20  |(05 Feb 1997).  |
00000080  20 20 20 0a 49 6e 74 72  6f 64 75 63 74 69 6f 6e  |   .Introduction|
00000090  0a 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 0a 57 68  |.------------.Wh|
000000a0  69 6c 73 74 20 6c 65 61  72 6e 69 6e 67 20 74 68  |ilst learning th|
000000b0  65 20 69 6e 73 20 61 6e  64 20 6f 75 74 73 20 6f  |e ins and outs o|
000000c0  66 20 77 72 69 74 69 6e  67 20 49 6e 74 65 72 6e  |f writing Intern|
000000d0  65 74 20 73 6f 66 74 77  61 72 65 20 49 20 66 6f  |et software I fo|
000000e0  75 6e 64 20 6f 6e 65 0a  73 61 64 6c 79 20 6d 69  |und one.sadly mi|
000000f0  73 73 69 6e 67 20 73 65  63 74 69 6f 6e 20 6f 66  |ssing section of|
00000100  20 74 68 65 20 53 57 49  20 69 6e 74 65 72 66 61  | the SWI interfa|
00000110  63 65 2e 20 41 6c 74 68  6f 75 67 68 20 77 65 20  |ce. Although we |
00000120  68 61 76 65 20 63 61 6c  6c 73 20 74 6f 20 64 65  |have calls to de|
00000130  63 6f 64 65 0a 61 6e 64  20 65 6e 63 6f 64 65 20  |code.and encode |
00000140  68 6f 73 74 20 61 64 64  72 65 73 73 65 73 2c 20  |host addresses, |
00000150  74 68 65 72 65 20 69 73  20 6e 6f 6e 65 20 74 6f  |there is none to|
00000160  20 64 65 63 6f 64 65 20  61 6e 64 20 65 6e 63 6f  | decode and enco|
00000170  64 65 20 73 65 72 76 69  63 65 73 20 61 6e 64 0a  |de services and.|
00000180  70 6f 72 74 73 2e 20 46  6f 72 20 6d 79 20 53 6f  |ports. For my So|
00000190  63 6b 65 74 4c 69 62 20  49 20 77 72 6f 74 65 20  |cketLib I wrote |
000001a0  61 20 70 61 69 72 20 6f  66 20 62 61 73 69 63 20  |a pair of basic |
000001b0  72 6f 75 74 69 6e 65 73  20 74 6f 20 70 65 72 66  |routines to perf|
000001c0  6f 72 6d 20 74 68 69 73  2c 0a 75 73 69 6e 67 20  |orm this,.using |
000001d0  74 68 65 20 46 72 65 65  4e 65 74 20 61 6e 64 20  |the FreeNet and |
000001e0  41 63 6f 72 6e 20 73 65  72 76 69 63 65 73 20 66  |Acorn services f|
000001f0  69 6c 65 73 20 61 73 20  74 68 65 20 73 74 61 6e  |iles as the stan|
00000200  64 61 72 64 20 49 20 77  6f 75 6c 64 20 64 65 63  |dard I would dec|
00000210  6f 64 65 2e 0a 54 68 65  73 65 20 72 6f 75 74 69  |ode..These routi|
00000220  6e 65 73 2c 20 77 68 69  6c 73 74 20 64 6f 69 6e  |nes, whilst doin|
00000230  67 20 74 68 65 20 6a 6f  62 2c 20 77 65 72 65 20  |g the job, were |
00000240  76 65 72 79 20 73 6c 6f  77 2e 20 54 68 65 72 65  |very slow. There|
00000250  66 6f 72 65 2c 20 49 27  76 65 0a 72 65 2d 77 72  |fore, I've.re-wr|
00000260  69 74 74 65 6e 20 74 68  65 20 63 6f 64 65 20 69  |itten the code i|
00000270  6e 20 41 73 73 65 6d 62  6c 65 72 20 61 6e 64 20  |n Assembler and |
00000280  62 75 6e 67 65 64 20 69  74 20 69 6e 20 61 20 6d  |bunged it in a m|
00000290  6f 64 75 6c 65 2e 20 4d  75 63 68 20 6e 69 63 65  |odule. Much nice|
000002a0  72 20 3a 2d 29 0a 0a 53  69 6e 63 65 20 49 20 67  |r :-)..Since I g|
000002b0  6f 74 20 66 65 64 20 75  70 20 77 69 74 68 20 74  |ot fed up with t|
000002c0  68 65 20 72 65 61 6c 6c  79 20 70 61 74 68 65 74  |he really pathet|
000002d0  69 63 20 65 72 72 6f 72  20 6d 65 73 73 61 67 65  |ic error message|
000002e0  73 20 74 68 61 74 20 74  68 65 20 73 6f 63 6b 65  |s that the socke|
000002f0  74 73 0a 69 6e 74 65 72  66 61 63 65 20 6b 65 70  |ts.interface kep|
00000300  74 20 67 69 76 69 6e 67  20 6d 65 20 49 20 64 65  |t giving me I de|
00000310  63 69 64 65 64 20 74 6f  20 65 78 70 61 6e 64 20  |cided to expand |
00000320  74 68 69 73 20 62 79 20  61 64 64 69 6e 67 20 65  |this by adding e|
00000330  72 72 6f 72 20 6e 75 6d  62 65 72 20 74 6f 0a 74  |rror number to.t|
00000340  65 78 74 20 63 6f 6e 76  65 72 73 69 6f 6e 2e 20  |ext conversion. |
00000350  4e 69 63 65 72 20 73 74  69 6c 6c 20 3a 2d 29 0a  |Nicer still :-).|
00000360  0a 41 6e 64 20 62 65 63  61 75 73 65 20 49 20 72  |.And because I r|
00000370  65 61 6c 6c 79 20 64 6f  6e 27 74 20 6c 69 6b 65  |eally don't like|
00000380  20 64 72 6f 70 69 6e 67  20 64 6f 77 6e 20 74 6f  | droping down to|
00000390  20 62 61 73 69 63 20 74  6f 20 72 65 61 64 20 74  | basic to read t|
000003a0  68 65 20 65 72 72 6f 72  0a 6e 75 6d 62 65 72 73  |he error.numbers|
000003b0  20 6f 72 20 73 65 72 76  69 63 65 20 6e 61 6d 65  | or service name|
000003c0  73 2c 20 49 27 76 65 20  61 64 64 65 64 20 73 6f  |s, I've added so|
000003d0  6d 65 20 2a 43 6f 6d 6d  61 6e 64 73 20 74 6f 20  |me *Commands to |
000003e0  68 65 6c 70 2e 0a 0a 0a  55 73 61 67 65 0a 2d 2d  |help....Usage.--|
000003f0  2d 2d 2d 0a 4f 62 76 69  6f 75 73 6c 79 2c 20 6e  |---.Obviously, n|
00000400  6f 20 70 72 6f 67 72 61  6d 73 20 77 69 6c 6c 20  |o programs will |
00000410  62 65 6e 65 66 69 74 20  63 75 72 72 65 6e 74 6c  |benefit currentl|
00000420  79 20 66 72 6f 6d 20 74  68 69 73 20 6d 6f 64 75  |y from this modu|
00000430  6c 65 2c 20 61 73 20 49  27 76 65 20 6f 6e 6c 79  |le, as I've only|
00000440  0a 6a 75 73 74 20 77 72  69 74 74 65 6e 20 69 74  |.just written it|
00000450  2e 20 48 6f 77 65 76 65  72 2c 20 74 6f 20 74 68  |. However, to th|
00000460  6f 73 65 20 6f 66 20 79  6f 75 20 77 68 6f 20 77  |ose of you who w|
00000470  69 73 68 20 74 6f 20 75  73 65 20 69 74 2c 20 74  |ish to use it, t|
00000480  68 65 20 53 74 72 6f 6e  67 48 65 6c 70 0a 6d 61  |he StrongHelp.ma|
00000490  6e 75 61 6c 20 70 72 6f  76 69 64 65 64 20 73 68  |nual provided sh|
000004a0  6f 75 6c 64 20 67 69 76  65 20 79 6f 75 20 64 65  |ould give you de|
000004b0  74 61 69 6c 73 20 65 6e  6f 75 67 68 20 74 6f 20  |tails enough to |
000004c0  62 65 20 61 62 6c 65 20  74 6f 20 77 72 69 74 65  |be able to write|
000004d0  20 75 73 69 6e 67 20 69  74 2e 0a 0a 4f 53 43 4c  | using it...OSCL|
000004e0  49 20 43 6f 6d 6d 61 6e  64 73 20 3a 0a 20 20 2a  |I Commands :.  *|
000004f0  49 6e 65 74 5f 44 65 63  6f 64 65 45 72 72 6f 72  |Inet_DecodeError|
00000500  20 3c 6e 75 6d 62 65 72  3e 20 2d 20 64 69 73 70  | <number> - disp|
00000510  6c 61 79 20 74 68 65 20  74 65 78 74 75 61 6c 20  |lay the textual |
00000520  76 65 72 73 69 6f 6e 20  6f 66 20 74 68 65 20 65  |version of the e|
00000530  72 72 6f 72 0a 20 20 20  20 20 20 20 20 20 20 20  |rror.           |
00000540  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000550  20 20 20 20 63 6f 64 65  0a 20 20 2a 49 6e 65 74  |    code.  *Inet|
00000560  5f 53 65 72 76 69 63 65  42 79 50 6f 72 74 20 3c  |_ServiceByPort <|
00000570  70 6f 72 74 3e 20 2d 20  64 65 63 6f 64 65 20 74  |port> - decode t|
00000580  68 65 20 73 65 72 76 69  63 65 20 6e 61 6d 65 20  |he service name |
00000590  61 6e 64 20 69 74 27 73  20 61 6c 69 61 73 65 73  |and it's aliases|
000005a0  0a 20 20 2a 49 6e 65 74  5f 53 65 72 76 69 63 65  |.  *Inet_Service|
000005b0  42 79 4e 61 6d 65 20 3c  73 65 72 76 69 63 65 3e  |ByName <service>|
000005c0  20 2d 20 64 65 63 6f 64  65 20 74 68 65 20 73 65  | - decode the se|
000005d0  72 76 69 63 65 20 6e 75  6d 62 65 72 0a 0a 0a 44  |rvice number...D|
000005e0  69 73 63 6c 61 69 6d 65  72 0a 2d 2d 2d 2d 2d 2d  |isclaimer.------|
000005f0  2d 2d 2d 2d 0a 54 68 65  20 61 75 74 68 6f 72 20  |----.The author |
00000600  61 63 63 65 70 74 73 20  6e 6f 20 72 65 73 70 6f  |accepts no respo|
00000610  6e 73 69 62 69 6c 69 74  79 20 66 6f 72 20 61 6e  |nsibility for an|
00000620  79 20 70 72 6f 62 6c 65  6d 73 20 77 68 69 63 68  |y problems which|
00000630  20 74 68 69 73 20 61 70  70 6c 69 63 61 74 69 6f  | this applicatio|
00000640  6e 0a 6d 61 79 20 63 61  75 73 65 20 6f 72 20 6c  |n.may cause or l|
00000650  6f 73 73 20 6f 66 20 64  61 74 61 20 72 65 73 75  |oss of data resu|
00000660  6c 74 69 6e 67 20 69 6e  20 69 74 73 20 75 73 65  |lting in its use|
00000670  2e 20 54 68 69 73 20 61  70 70 6c 69 63 61 74 69  |. This applicati|
00000680  6f 6e 20 69 73 20 50 75  62 6c 69 63 0a 44 6f 6d  |on is Public.Dom|
00000690  61 69 6e 20 46 72 65 65  77 61 72 65 2e 20 54 68  |ain Freeware. Th|
000006a0  69 73 20 6d 65 61 6e 73  20 74 68 61 74 20 69 74  |is means that it|
000006b0  20 6d 61 79 20 62 65 20  64 69 73 74 72 69 62 75  | may be distribu|
000006c0  74 65 64 2c 20 73 6f 20  6c 6f 6e 67 20 61 73 20  |ted, so long as |
000006d0  6e 6f 20 63 68 61 72 67  65 0a 6f 74 68 65 72 20  |no charge.other |
000006e0  74 68 61 6e 20 63 6f 70  79 69 6e 67 20 63 6f 73  |than copying cos|
000006f0  74 73 20 61 72 65 20 63  68 61 72 67 65 64 20 66  |ts are charged f|
00000700  6f 72 20 69 74 2e 0a 20  20 0a 0a 53 6f 75 72 63  |or it..  ..Sourc|
00000710  65 20 63 6f 64 65 0a 2d  2d 2d 2d 2d 2d 2d 2d 2d  |e code.---------|
00000720  2d 2d 0a 20 20 20 54 68  69 73 20 70 72 6f 67 72  |--.   This progr|
00000730  61 6d 20 72 65 71 75 69  72 65 73 20 74 68 65 20  |am requires the |
00000740  21 4a 46 50 61 74 63 68  20 70 72 65 2d 61 73 73  |!JFPatch pre-ass|
00000750  65 6d 62 6c 65 72 20 74  6f 20 6d 61 6b 65 20 74  |embler to make t|
00000760  68 65 20 63 6f 64 65 2e  20 54 68 69 73 20 69 73  |he code. This is|
00000770  0a 61 20 73 69 6d 70 6c  65 20 74 65 78 74 2d 74  |.a simple text-t|
00000780  6f 2d 62 61 73 69 63 20  61 73 73 65 6d 62 6c 65  |o-basic assemble|
00000790  72 20 77 68 69 63 68 20  74 61 6b 65 73 20 61 20  |r which takes a |
000007a0  74 65 78 74 20 61 73 73  65 6d 62 6c 65 72 20 66  |text assembler f|
000007b0  69 6c 65 2c 20 6d 61 6b  65 73 20 61 0a 62 61 73  |ile, makes a.bas|
000007c0  69 63 20 70 72 6f 67 72  61 6d 20 66 72 6f 6d 20  |ic program from |
000007d0  69 74 20 74 6f 20 61 73  73 65 6d 62 6c 65 2c 20  |it to assemble, |
000007e0  61 73 73 65 6d 62 6c 65  73 20 69 74 20 61 6e 64  |assembles it and|
000007f0  20 72 65 74 75 72 6e 73  20 61 6e 79 20 65 72 72  | returns any err|
00000800  6f 72 73 2e 20 49 74 20  69 73 0a 61 76 61 69 6c  |ors. It is.avail|
00000810  61 62 6c 65 20 66 72 6f  6d 20 4a 75 73 74 69 6e  |able from Justin|
00000820  20 46 6c 65 74 63 68 65  72 27 73 20 77 65 62 73  | Fletcher's webs|
00000830  69 74 65 20 28 75 73 65  72 73 2e 65 73 73 65 78  |ite (users.essex|
00000840  2e 61 63 2e 75 6b 2f 75  73 65 72 73 2f 67 65 72  |.ac.uk/users/ger|
00000850  70 68 29 20 6f 72 0a 64  69 72 65 63 74 6c 79 20  |ph) or.directly |
00000860  62 79 20 6d 61 69 6c 69  6e 67 20 74 6f 20 47 65  |by mailing to Ge|
00000870  72 70 68 40 65 73 73 65  78 2e 61 63 2e 75 6b 2e  |rph@essex.ac.uk.|
00000880  0a 20 20 20 41 6c 6c 20  73 6f 75 72 63 65 20 63  |.   All source c|
00000890  6f 64 65 20 61 6e 64 20  74 68 65 20 72 65 73 75  |ode and the resu|
000008a0  6c 74 61 6e 74 20 6d 6f  64 75 6c 65 20 6d 75 73  |ltant module mus|
000008b0  74 20 62 65 20 64 69 73  74 72 69 62 75 74 65 64  |t be distributed|
000008c0  20 74 6f 67 65 74 68 65  72 2e 0a 0a 0a 43 6f 6e  | together....Con|
000008d0  74 61 63 74 0a 2d 2d 2d  2d 2d 2d 2d 0a 41 6e 79  |tact.-------.Any|
000008e0  20 63 6f 6d 6d 65 6e 74  73 2c 20 71 75 65 72 69  | comments, queri|
000008f0  65 73 2c 20 64 6f 6e 61  74 69 6f 6e 73 20 6f 72  |es, donations or|
00000900  20 62 75 67 20 72 65 70  6f 72 74 73 20 63 61 6e  | bug reports can|
00000910  20 62 65 20 73 65 6e 74  20 74 6f 20 4a 75 73 74  | be sent to Just|
00000920  69 6e 0a 46 6c 65 74 63  68 65 72 20 61 74 20 3a  |in.Fletcher at :|
00000930  0a 0a 45 2d 4d 61 69 6c  20 3a 20 47 65 72 70 68  |..E-Mail : Gerph|
00000940  40 65 73 73 65 78 2e 61  63 2e 75 6b 0a 55 52 4c  |@essex.ac.uk.URL|
00000950  20 20 20 20 3a 20 68 74  74 70 3a 2f 2f 75 73 65  |    : http://use|
00000960  72 73 2e 65 73 73 65 78  2e 61 63 2e 75 6b 2f 75  |rs.essex.ac.uk/u|
00000970  73 65 72 73 2f 67 65 72  70 68 0a 49 52 43 20 20  |sers/gerph.IRC  |
00000980  20 20 3a 20 4f 6e 20 23  41 63 6f 72 6e 20 61 73  |  : On #Acorn as|
00000990  20 47 65 72 70 68 0a 46  69 6e 67 65 72 20 3a 20  | Gerph.Finger : |
000009a0  66 69 6e 67 65 72 20 6a  72 66 6c 65 74 40 70 6f  |finger jrflet@po|
000009b0  73 74 6d 61 6e 2e 65 73  73 65 78 2e 61 63 2e 75  |stman.essex.ac.u|
000009c0  6b 0a 54 65 6c 20 20 20  20 3a 20 28 30 31 38 34  |k.Tel    : (0184|
000009d0  32 29 20 38 31 33 39 37  39 0a 0a 53 6e 61 69 6c  |2) 813979..Snail|
000009e0  20 4d 61 69 6c 20 3a 0a  20 20 20 20 4a 75 73 74  | Mail :.    Just|
000009f0  69 6e 20 46 6c 65 74 63  68 65 72 0a 20 20 20 20  |in Fletcher.    |
00000a00  94 47 61 6c 61 64 72 69  65 6c 95 0a 20 20 20 20  |.Galadriel..    |
00000a10  31 37 62 20 43 72 6f 6d  77 65 6c 6c 20 52 6f 61  |17b Cromwell Roa|
00000a20  64 2c 0a 20 20 20 20 57  65 65 74 69 6e 67 2c 0a  |d,.    Weeting,.|
00000a30  20 20 20 20 42 72 61 6e  64 6f 6e 2c 0a 20 20 20  |    Brandon,.   |
00000a40  20 53 75 66 66 6f 6c 6b  2e 0a 20 20 20 20 49 50  | Suffolk..    IP|
00000a50  32 37 20 30 51 54 0a 0a  0a 48 69 73 74 6f 72 79  |27 0QT...History|
00000a60  0a 2d 2d 2d 2d 2d 2d 2d  0a 56 65 72 73 69 6f 6e  |.-------.Version|
00000a70  20 31 2e 30 30 20 3a 20  32 36 20 53 65 70 20 31  | 1.00 : 26 Sep 1|
00000a80  39 39 36 0a 20 20 20 20  20 20 20 20 20 20 20 20  |996.            |
00000a90  20 20 20 43 6f 75 6c 64  20 6f 6e 6c 79 20 72 65  |   Could only re|
00000aa0  61 64 20 6c 69 6e 65 73  20 6f 75 74 20 6f 66 20  |ad lines out of |
00000ab0  74 68 65 20 73 65 72 76  69 63 65 73 20 66 69 6c  |the services fil|
00000ac0  65 2e 20 41 6c 69 61 73  20 63 6f 64 65 0a 20 20  |e. Alias code.  |
00000ad0  20 20 20 20 20 20 20 20  20 20 20 20 20 75 6e 66  |             unf|
00000ae0  69 6e 69 73 68 65 64 2e  0a 0a 56 65 72 73 69 6f  |inished...Versio|
00000af0  6e 20 31 2e 30 31 20 3a  20 32 36 20 53 65 70 20  |n 1.01 : 26 Sep |
00000b00  31 39 39 36 0a 20 20 20  20 20 20 20 20 20 20 20  |1996.           |
00000b10  20 20 20 20 41 6c 69 61  73 20 63 6f 64 65 20 72  |    Alias code r|
00000b20  65 2d 77 72 69 74 74 65  6e 2e 20 43 72 61 73 68  |e-written. Crash|
00000b30  65 64 20 77 68 65 6e 20  61 6c 69 61 73 20 63 6f  |ed when alias co|
00000b40  6d 6d 65 6e 74 73 20 65  6e 63 6f 75 6e 74 65 72  |mments encounter|
00000b50  65 64 0a 0a 56 65 72 73  69 6f 6e 20 31 2e 30 32  |ed..Version 1.02|
00000b60  20 3a 20 32 36 20 53 65  70 20 31 39 39 36 0a 20  | : 26 Sep 1996. |
00000b70  20 20 20 20 20 20 20 20  20 20 20 20 20 20 41 6c  |              Al|
00000b80  69 61 73 20 63 6f 64 65  20 77 6f 72 6b 73 2c 20  |ias code works, |
00000b90  74 69 65 64 20 69 6e 20  74 6f 20 49 6e 74 65 72  |tied in to Inter|
00000ba0  6e 65 74 5f 47 65 74 53  65 72 76 69 63 65 42 79  |net_GetServiceBy|
00000bb0  50 6f 72 74 2c 20 77 68  69 63 68 0a 20 20 20 20  |Port, which.    |
00000bc0  20 20 20 20 20 20 20 20  20 20 20 6e 6f 77 20 77  |           now w|
00000bd0  6f 72 6b 73 2e 0a 0a 56  65 72 73 69 6f 6e 20 31  |orks...Version 1|
00000be0  2e 30 33 20 3a 20 32 36  20 53 65 70 20 31 39 39  |.03 : 26 Sep 199|
00000bf0  36 0a 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |6.              |
00000c00  20 49 6e 74 65 72 6e 65  74 5f 47 65 74 53 65 72  | Internet_GetSer|
00000c10  76 69 63 65 42 79 4e 61  6d 65 20 6e 6f 77 20 77  |viceByName now w|
00000c20  6f 72 6b 73 20 63 6f 72  72 65 63 74 6c 79 2e 20  |orks correctly. |
00000c30  46 69 78 65 64 20 61 6c  69 61 73 0a 20 20 20 20  |Fixed alias.    |
00000c40  20 20 20 20 20 20 20 20  20 20 20 63 6f 64 65 20  |           code |
00000c50  74 6f 20 72 65 74 75 72  6e 20 30 20 69 66 20 6e  |to return 0 if n|
00000c60  6f 20 61 6c 69 61 73 65  73 20 61 72 65 20 70 72  |o aliases are pr|
00000c70  65 73 65 6e 74 2e 0a 0a  56 65 72 73 69 6f 6e 20  |esent...Version |
00000c80  31 2e 30 34 20 3a 20 32  38 20 53 65 70 20 31 39  |1.04 : 28 Sep 19|
00000c90  39 36 0a 20 20 20 20 20  20 20 20 20 20 20 20 20  |96.             |
00000ca0  20 20 4d 69 6e 6f 72 20  62 75 67 20 69 6e 20 52  |  Minor bug in R|
00000cb0  65 61 64 55 6e 73 69 67  6e 65 64 20 66 6f 72 20  |eadUnsigned for |
00000cc0  74 68 65 20 70 6f 72 74  20 6e 75 6d 62 65 72 20  |the port number |
00000cd0  66 69 78 65 64 20 2d 20  73 68 6f 75 6c 64 0a 20  |fixed - should. |
00000ce0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 69 67  |              ig|
00000cf0  6e 6f 72 65 20 6d 61 6c  66 6f 72 6d 65 64 20 6e  |nore malformed n|
00000d00  75 6d 62 65 72 73 2e 0a  0a 56 65 72 73 69 6f 6e  |umbers...Version|
00000d10  20 31 2e 30 35 20 3a 20  30 32 20 44 65 63 20 31  | 1.05 : 02 Dec 1|
00000d20  39 39 36 0a 20 20 20 20  20 20 20 20 20 20 20 20  |996.            |
00000d30  20 20 20 41 64 64 65 64  20 74 68 65 20 44 65 63  |   Added the Dec|
00000d40  6f 64 65 45 72 72 6f 72  20 53 57 49 20 74 6f 20  |odeError SWI to |
00000d50  6d 61 6b 65 20 6c 69 66  65 20 65 76 65 6e 20 65  |make life even e|
00000d60  61 73 69 65 72 2e 0a 0a  56 65 72 73 69 6f 6e 20  |asier...Version |
00000d70  31 2e 30 36 20 3a 20 30  39 20 44 65 63 20 31 39  |1.06 : 09 Dec 19|
00000d80  39 36 0a 20 20 20 20 20  20 20 20 20 20 20 20 20  |96.             |
00000d90  20 20 41 64 64 65 64 20  74 68 65 20 2a 49 6e 65  |  Added the *Ine|
00000da0  74 5f 44 65 63 6f 64 65  45 72 72 6f 72 20 61 6e  |t_DecodeError an|
00000db0  64 20 2a 49 6e 65 74 5f  53 65 72 76 69 63 65 2a  |d *Inet_Service*|
00000dc0  20 63 6f 6d 6d 61 6e 64  73 2e 0a 0a 56 65 72 73  | commands...Vers|
00000dd0  69 6f 6e 20 31 2e 30 37  20 3a 20 30 35 20 46 65  |ion 1.07 : 05 Fe|
00000de0  62 20 31 39 39 37 0a 20  20 20 20 20 20 20 20 20  |b 1997.         |
00000df0  20 20 20 20 20 20 41 64  64 65 64 20 43 72 65 61  |      Added Crea|
00000e00  74 65 4d 65 6e 75 20 53  57 49 2e 0a              |teMenu SWI..|
00000e0c