myatari.net[Banner]
Homepage

 

STiK Tutorial

by Dan Ackerman

 

First let me start with an old nursery rhyme...

There was a little girl, with a little curl
right in the middle of her forehead.
When she was good, she was very very good
But when she was bad she was horrid.

Why start with that you ask? Well it's really a very simple answer that I've often used to describe STiK's functionality. People have often been confused as to why some people swear by STiK2, yet for them it's about as fast as paint drying. My answer is usually that nursery rhyme. When it is good, it is indeed very very good, but when it is bad it is horrid.

Pros

  • Runs under any OS/AES combination and any emulator that properly emulates Atari serial ports.
  • Full STiK API compatibility. This means that the vast majority of the Atari internet clients run without any hassles.
  • Internal memory management. Memory for STiK/STiK2 is all reserved at boot time which avoids fragmentation of the OS memory pool during operation. Something that some of the other stacks suffer from.
  • Multiple connections at one time is no problem. Of course, I don't think this is really much of a problem under any of the major TCP/IP stacks for the Atari.
  • Connection automation scripts possible with Qdialer. This means you can have several applications or clients automatically launch when you connect to the internet.
  • Recognition of the connection status. If your carrier is dropped during a session, everything should properly recognize the fact.
  • Memory usage configurable allowing users of machines with limited RAM to save some space and users with lots of RAM to really allow it room to take off.
  • Internal identd server support. Servers that require it can be used whether the client supports it or not.
  • Speed. It can be one of the fastest dial-up connections you have ever seen as many users have reported it as fast or faster than their Mac or PC.
  • Probably the most important of all. It's open source and free.

Cons

  • Qdialer is a bit buggy and could use some serious work to become a professional looking application.
  • One communication port limitation in all released versions.
  • Legacy script file confusion.
  • No CHAP support.
  • Speed. It can be one of the slowest dial-up connections you have ever seen.

[Image: STiK II banner]

Where to start
All of the files can be downloaded from
www.netset.com/~baldrick/. Once you have all the files, the following needs to be done.

First, copy STiK.PRG into your Auto folder. Note HSModem or FSerial may be necessary on some machines, however, in general HSModem is desirable to have installed for most machines anyway. On machines with older versions of TOS, it may be necessary to have a cookie jar creation program installed as well (a few of these can be found at my web site).

When copying STiK and HSModem to your Auto folder, please note that they should be copied in the following order.

  1. Cookie jar creation (if necessary)
  2. HSModem
  3. STiK

Confirguring STiK
[Screen-shot: Auto and STiK Confirguration folders]The next step is to create a folder called STIK_CFG on your boot drive. This folder will be used to store your configuration files. While STiK2 still uses configuration files, for most users you will need only a couple of minutes to edit the file and then will never look at it again.

The first file to edit is DEFAULT.CFG. There is an example version included in the STiK2 archive.

For a minimal installation the following is recommended for operation.
 

VARIABLE = Value

Description

ALLOCMEM = 125000

Can be any value you want.

PROTOCOL = 2

This states connection will be PPP on our serial port.

USERNAME = myuserid

This is not necessary, but does give seed values to the internal identd server.

HOSTNAME = myhost

Again not necessary, but seeds internal identd server.

There are other values and variables that can be set in your DEFAULT.CFG file. Some clients like to find values stored here. However these are up to the user and are not necessary.

Editing the dial script
The next file to edit is the dial script.

A dial script can be named anything you want and need not be located in your STIK_CFG folder. However it is simplest to keep it there, so that all your STiK2 files are in one location. In the following example, I have assumed that you want to connect to a modern ISP that supports PPP and PAP.

First we need to set up your serial port and baud rate, more accurately this would be described as your DTE, but is a legacy name from the original STiK. If you are uncertain what speeds your serial port can handle, there is a program called Listport available from my web site that will list all of your ports and their speeds. STiK unlike some other TCP/IP stacks uses the correct values and does not need to have them remapped to the lower values.

SERIALPORT = Serial 2
BAUD_RATE = 230400

* Note: The values above apply to the TT030 and are for example only.

Next, you need to configure some of the standard settings for your modem. These may need to be modified for your system, or you might just be able to use the values in the example files. For a full description of each of the values you can refer to the text files located in the STiK2 archive.
 

VARIABLE = Value

Description

HANGUP = ATH

Your modem's hang-up string.

PREFIX = ATD

Your modem's dial prefix.

INIT = ATQ0M1&C1%C3

Your modem's init string.

If you are using a modem that properly asserts carrier detect then you would add the line

CDVALID = TRUE

If your modem does not handle carrier detect properly or you have a NULL modem connection then you would have the line

CDVALID = FALSE

Dialing parameters
Next you need to set up the dialling parameters for the modem.
 

VARIABLE = Value

Description

CONNECT_WAIT = 95

Number of seconds at most to wait for connection success before disconnecting automatically.

REDIAL_DELAY = 20

Number of seconds to wait before re-dialling the ISP if the first connection fails.

Connection success or failure configuration
There are three main values for the success configuration and they work as follows.

If you would like to consider success as a carrier detect signal (note your modem must properly assert carrier detect for this option) then you add the line

SUCCESS = CDWAIT

If your modem doesn't assert carrier detect or you would rather watch for the CONNECT response of your modem enter the line

SUCCESS = CONNECT

Lastly if you are using a direct connection like a NULL modem cable, you would add the line

SUCCESS = DIRECT

One note, if you are using a direct connection then you will also want to have CLIENT_IP configured in this file, such as CLIENT_IP = 192.168.1.1

There can be up to 5 FAILURE test words configured. Sample ones are included in the example files and are

FAILURE = BUSY
FAILURE = NO CARRIER
FAILURE = NO DIALTONE

Now you might be thinking this is a lot of information to edit or add to a file. However for any single machine, once you have a dial script with this information configured for your machine, you can simply edit the file to create new scripts.

ISP specific details
The next step is to create the connection specific information. This is the information the deals with your ISP and your account.
 

VARIABLE = Value

Description

PHONE_NUMER = 0800 1234567

Your phone number for your ISP. You can have up to five phone numbers configured per dial script.

PAP_ID = myusername

Your login/username for your ISP.

PASSWORD = mypassword

Your password at your ISP.

NAMESERVER has two options. If your ISP gives you a name server dynamically at connection then enter this line.

NAMESERVER = 0.0.0.0

If your ISP does not provide it at connection time then they should provide you with the IP number. Simply replace the 0.0.0.0 in the above line with the IP number they provide you.

There is one other option that might be useful to use. If negotiating your connection to your ISP takes a long time, you can try the following line, which will cause STiK2 to force the connection if possible.

ACTIVE_PPP = 1

Once you have entered all of these lines, save the configuration file with an easy to remember name with the extension SCR. And you are finished with all of the complicated stuff.

The next step is to copy Qdialer and its RSC files to your hard drive. It can be anywhere on your system that you desire. Qdialer can run as an .ACC or as a .PRG. ACC operation requires its installation on your system in the same manner as other ACC files.

With all of this done, you now need to reboot your system so that STiK2 is loaded. Once your system has re-booted, run Qdialer, edit any options that you may want to change under the tools icon, select your dial script and save Qdialer's config file. The next time you run Qdialer it will remember all of your options.

You should now be able to hit the connect button in Qdialer and start browsing the internet.
 

Glossary

  • HSModem
    In order to make good use of your modem, you'll need to install HSModem. This little program speeds up access to your modem and makes thing a lot easier.
  • Baud
    Baud is a measure of how frequently sound changes on a phone line.
  • Carrier Detect
    When two modems decide that they can talk to each other, they generate a signal on the serial RS-232 interface called carrier detect.
  • PAP (Password Authentication Protocol)
    PAP is a protocol used to authenticate a user's name and password over a PPP connection.
  • PPP (Point-to-Point Protocol)
    PPP is the successor to SLIP and defines how your modem connection exchanges data packets with other systems over the internet.
  • TCP/IP (Transmission Control Protocol/Internet Protocol)
    TCP and IP protocol allow computers to talk with each other over long distance networks (such as the internet). IP is responsible for moving packets of data between nodes while TCP is responsible for verifying delivery from client to server. TCP/IP forms the basis of the internet.

 

Useful links

 

[
Top of page ]


MyAtari magazine - Feature #7, August 2002

 
Copyright 2002 MyAtari magazine