IV. More Information on KA9Q

This is a message from Mike De.Petris : (**)

There is no difference between Ka9q and NOS, it's just history. This software
was born as a Tcp/ip stack for radio packet users. It is free, so many people
contributed adding functions and changing the code, thus there were also many
names, the main definition is:

NOS = Network Operating System

but the radio packet users called it Ka9q as NOS is not a proper name but a
definition of what it does. There are many variations around mostly for the
PC, the are called JNOS, TNOS, JANOS, WNOS and so on, ours is just:

Atari NOS

Atari NOS derived from original Ka9q (see David Nash comments in the
documentation, particularly NOS 0.42). I am now adding, fixing, changing
taking often inspiration from other PC versions, mostly JNOS that is still an
updated project. It is to say that NOS multitasking kernel is mostly the same
between platforms and versions, but other parts are modular and change a lot,
even on the PC you find the "same" NOS compiled with many different
combinations of modules. I keep only one version for Atari, as it would be
much more complicated to create each time versions with or without certain
modules. The sources are available anyway, so one can exclude and include to
meet his needs changing the definitions in the project and recompiling.

I've just made some changes, mostly to make my sessions more automatic, it's
still under test here but these are the news:

- nntp bug fixed, posting article worked only if nntp trace>=3

- added multiple serial ports support, specify BIOS number:
#      if  port 0 type dev buff  MTU  baud
#      --- ---- - ---- --- ----  ---  -----
# AUX:
#attach asy  1  0 ppp  pp0 32767 1500 57600
# modem 2
attach asy   7  0 ppp  pp1 32767 1500 38400
# serial 2
attach asy   9  0 ppp  pp0 32767 1500 57600
# modem 1
attach asy   6  0 ppp  pp2 32767 1500 19200
BIOS numbers for port are for a TT, for some reason to investigate
this does not work if you specify the modem1 port as the first device.

- bugfix: domain cache list bombed ( ARGV1 instead of ARGV0 )

- added domain cache dump to reset cache

- bugfix: this was a very OLD bug, detaching of asy interfaces didn't
  work as the asy pointer was not set to NULLIF in st_asy.c

- add http support, new commands:
   cab directory <path>: to specify where CAB.APP can be found
   cab head <url>: to get header informations on a url
   cab get <url> <filename>: to get and url and save it to file !!!
   cab start: !!!!!!!!!!!!!!! yes this starts the browser ad then you can 
   navigate, cache is supported, POST is still NOT supported, sorry, no search 
    engines !

- change in ftp server, directory listing is now unix-like, so
  that you can use graphic ftp clients
  the change is made to the dir listing routing, so all commands using
  the dir() function are affected, i.e. "dir", "ls", etc.

- bugfix: it was impossible to set the INLINE dialing on

- bugfix: telnet to a wrong port passed by name now works
  the resolve routine to find the port number can be used
  keeping in mind a wrong name makes it return -1, but
  fsocket->sin_port is unsigned short
- new SEND command to send strings to any port:
  send   ...
  port can be specified by name as telnet

.... so my AUTO.NOS script is:

cd d:\nos
source startup.nos
ppp pp0 idle 60 exit
# Next line tells NOS to go ahead and make the connection
inline on
dia pp0 dial.txt
at now+0001 "smtp kick"
at now+0001 "nntp kick"
at now+0001 "ping mail"
at now+0001 "send #### here I send special commands to activate something on
the remote server ####"
smtp kick
nntp kick
ping mail
# An example of the send command:
send mail.tin.it smtp HELP "THREE WORDS COMMAND" QUIT

The notes from the original Atari Guide to Network Connectivity from D. Ackerman :

The following notes are a quick guide to setting up the NOS version of Ka9q, 
this version of the program is in an early stage of development for the Atari 
ST and more complete instructions will be created at a latter date. 

Release 0.10 has been rebuilt for the ST from the DIS supported KA9Q for the 
IBM PC.  This means that the internet code is as up to date as I can find, and 
is a major advance on the amiga code level used for the 0.0x betas.  I am still
working on the port to the DIS code.  There are various additions to the 
previous ST programs which are not present in this Version.  These will be 
added shortly. 

The NOS programs requires the following directories and files:- 

startup.nos   domain.txt         ftpusers         dial.txt         alias 




        spool\mqueue\         spool\mqueue\sequence.seq 


By default all paths are relative to the root directory of the drive from which
NOS was started.  This can be changed by starting nos with the -d flag.  For 

        nos -dg:\nos 

would cause nos to look for g:\nos\startup.txt and g:\nos\spool etc. 

You can also set the root directory by setting the NOS_ROOT enviroment  
variable.  For example:- 


This method requires a shell or utility program which allows you to setup the 

NNTP - netnews 

There has been a lot of changes in the NNTP code.  The news groups to fetch 
can now be specified in the nntp.dat file. This takes priority over the startup
file.  If batch mode is turned on all the news will be written into a single 
file for latter processing. 
The netnews newsgroups are specified in the startup.nos file, as is the NNTP 
profile.  The demon news server is news.demon.co.uk 
You may want to update the nntp.dat file in spool\news to change the date and 
time values to something recent, to prevent a large flood of news on your first

The dialer 

This version of ka9q has a dialer facility.  This uses the dial.txt file which 
must be placed in the NOS root directory.  You can setup the connection to 
demon with the command 

          dial sl0 dial.txt 

There are currently a few problems with the dialer.  I know that the first 
character of some of the login messages is missing and that cwait can give 
problems, however I am currently using the supplied dial.txt file for all my 
connections.  It is much easier than using a seperate terminal program to do 
the login 

(**) : Last modified on 28 August 1999 by Karl Samyn