BeebMaster - I Want an Econet! - Build your own Econet


Build your own Econet


Level 3 File Server

Level 3 Econet expanded the facilities introduced by the Level 2 File Server, using ADFS as the base storage filing system and allowing support for hard discs.

The original Level 3 software disc is a DFS disc containing the file server code, disc formatter and initialiser and the BBC B and Master series library utilities. It can be downloaded from the internet but if you have any difficulty, or if you want to use my own version, this can be downloaded here.

My own version is an ADFS disc, which is a combined software and storage disc, allowing all the items on the original disc to be stored alongside a server partition area which can be mounted by the L3 server.


Advantages

The biggest advantage of using Level 3 Econet over Level 2 is that disc storage is based around ADFS meaning floppy discs can hold up to 640K of data as opposed to 400K on Level 2. Mass storage became a reality with Level 3 Econet as any BBC-compatible Winchester disc unit can be used for Level 3 storage.


Disadvantages

Again, a 6502 second processor is required, without which you can't use Level 3! To really take advantage of the increased storage space offered by Level 3, you need a Winchester disc but these can be very hard to come by.


Preparing Level 3 for Use

Like Level 2, Level 3 Econet requires some preparation work before the network can be used

First, you will need to create a data disc for storage as the original system disc cannot be used.

Acorn provide a utility on the system disc for this purpose, a BASIC programme called "WFSINIT". Load this programme and then remove the Level 3 system disc and then RUN the programme. Remember to take out the system disc otherwise you will end up formatting it by mistake.

You will be asked to enter the drive number to initialise. This must be an ADFS-formatted disc, either floppy or Winchester. For a floppy disc, you will need an 80-track double sided drive to format the disc to ADFS "L" format, ie. 640K.

Enter the name of the disc at the prompt. Be careful at the next prompt for "Next drive". It is best to leave this blank. If you enter a drive number then the file server will look for a file server disc in that drive before starting the server so this may cause problems if another disc is not available.

Enter the date and then the initialisation process will begin. This may sound as if the drive has gone potty, as the initialisation routine quickly clanks up and down the disc surface but this is perfectly normal.

WARNING: the initialisation process will "partition" the disc into an ADFS section at the beginning and a Level 3 section for the remaining free space on the disc. WFSINIT will begin the Level 3 partition from the FIRST FREE SECTOR it finds on the disc, even if there is ADFS data later on the disc. IT IS THEREFORE VITAL to fully compact the disc before running WFSINIT. I know - I have ruined my Technomatic Winchester at least twice as a result of this!

After initialisation, you will be prompted for a Passwords file. The file server will not start running unless there is at least one disc present with a passwords file, so it is best to select Yes to this option, unless you wish the disc to be extra-secure and only useable with another disc with passwords. The Passwords file will have a system user SYST as default and you may enter other user names to get going.

Choose No to copy master directories, unless you have them readily available for copying over to the file server disc, as this can be done later when the Level 3 server is running.

The disc is now initialised and ready to be used in Level 3 Econet.


Real Time Clock

Level 3 Econet requires a Real Time Clock module to run. Really this is more of a "dongle" to prevent unauthorised copying of the file server software than anything, and most of the versions of the Level 3 software available on the Internet have been modified to work without the RTC module present, which plugs into the BBC user port.


Starting the File Server

Put the file server system disc back in the drive and type *FS. Remember if using the original Acorn L3 disc, that it a DFS disc, so you may need to do *DISC before *FS. Once the file server programme has loaded, remove the disc and put the initialised data disc into the drive.

The file server tests the second processor memory and then prompts you for the date, then the number of drives you are using. If you are using double drives then I recommend you use both drives to increase the amount of storage space available. Make another data disc but remember to give it a different name to the first disc.

The next prompt is "Command". Here you can type A or S. "A" is to start Again and "S" is to enter the number of Stations.

Press S and enter a number between 1 and 40 sufficient to cover the number of stations on your network. The higher the number of stations you choose, the lower the amount of space inside the file server for caching operations so things will be a bit slower.

The file server will access the disc and, if all is well, the message "Starting - Ready" will be displayed.

Level 3 Econet is now running!


First Steps for New Discs

If you are running Level 3 for the first time or you have just initialised a new disc, there are certain procedures you should now follow, although you can carry out these tasks at any time:

First, log on as the system user "SYST" by typing "*I AM SYST". System users have the ability to create and delete users and to grant and remove system access to other users.

Because of this, I recommend that you immediately give a password to the SYST user. Whilst logged on as SYST, type:

*PASS "" <password>

From now on, you will need to use the formula:

*I AM SYST :[RETURN]<password>

to log on. To change the password in the future, use:

*PASS <old password> <new password>

Whilst logged on a a system user, you can give System privilege to other users with:

*PRIV <user name> S

To remove System access, omit the "S".

Be careful not to remove all privileged users of the network or you will not be able to run the network properly.

You might like to create or remove some users by using:

*NEWUSER <user name> or
*REMUSER <user name>

Note that using REMUSER deletes a user's name from the Passwords file but it does not delete any of that user's data.

You might like to create a directory or subdirectory, using:

*CDIR <directory name>

When users log on, the File Server will set as their Master Directory a directory bearing their user name held in the root ($) directory, so you might want to create directories corresponding to the registered user names. You will probably also want to create Library directories for the network utilities.


User Free Space

Level 3 Econet introduces the concept of a free space allocation to individual users. The amount of free space available to each user is stored in the passwords file. Every time a file is saved on the disc by a user, the size of the file is deducted from the remaining free space available to that user.

System privileged users can read or set the user free space for themselves and other users. *READFREE will display the number of bytes remaining for the current user and *READFREE <user> will display the space available to user <user>.

*SETFREE <user> <space> will set the amount of free space available to <user>, where <space> is a value in hexadecimal.

It is always a good idea to check the amount of user free space before embarking on any extensive file copying operations, otherwise you may end up with an "Insufficient space" error message meaning you will most probably have to start the entire copy again!


Access and Privilege

Level 3 Econet continues the concept of different access rights for different users. Again, there are three types of access, System access, Owner access and Public access.

System users have Owner access to all files and directories as well as special privilege to create and remove users and privileged users and to set the amount of user free space.

Owner access is available to a user's home directory and all subdirectories and allows that user to set the access rights to those files and directories.

Public access is available to all other files and directories. The user will be able to read and write those files with the appropriate public access rights but not set the access rights to those files.

The command *ACCESS is used to set the access rights to files and directories. You will only be able to change the attributes if you have Owner access to the directory in which the file is located. *ACCESS takes the form:

*ACCESS <filename> <owner access>/<public access>

The owner access string may be one or more of the following:
L - locked against deletion by Owner
W - able to be written by Owner
R - able to be read by Owner

The public access string may be one or more of:
W - able to be written by Public users
R - able to be read by Public users

The locked attribute is not valid as all files are locked against deletion by public access users.

So, for example, to set a file which can be read or written by the Owner but read and not written by anyone with Public Access, use:

*ACCESS <file> WR/R

To prevent others viewing your files, set the public access string as blank, like this:

*ACCESS <file> WR/


Commands at the File Server Station

Various keys can be pressed on the File Server station whilst it is running, with the following effect:

ESCAPE - allows the disc to be changed. Press SPACE when the new disc is in the drive.
Q - return you to the Command: prompt.
M - toggles the output monitor on and off.

If you press ESCAPE or Q, all users will be logged off the network and may lose data which was stored in the File Server cache but not written to the disc.


File Server Commands

Stations can now use the facilities of the file server to transfer data across the network. Some of these commands will be subject to availability as many of them are machine code utilities in the file server LIBRARY directory rather than part of the Network Filing System or file server software itself:

CommandSourceDescription
*ACCESSNFS ROMSet the access attributes for files and directories
*BYENFS ROMLog off
*CAT (*.)NFS ROMCatalogue the current directory
*CDIRNFS ROMCreate a directory
*CREATEANFS ROMCreate a file by reserving space on the file server
*DELETENFS ROMDelete a file or directory
*DIRNFS ROMChange directory
*DISCSLibraryDisplay the discs currently available
*EXANFS ROM
(or BBC B Library)
Examine the specified directory
*EXECNFS ROMExecute a file
*FREELibraryDisplay free space on discs
*FSANFS ROM
(or BBC B Library)
Select or report the file server number
*I AMNFS ROMLog on to the network specifying user name and password
*INFONFS ROMDisplay information for the file specified
*LCATANFS ROM
(or BBC B Library)
Catalogue the current library
*LEXANFS ROM
(or BBC B Library)
Examine the current library
*LIBNFS ROMSet the current library
LOAD/*LOADNFS ROMLoad a BASIC or machine code programme
*NEWUSERFile ServerCreate new user in Passwords file
*NOTIFYLibrarySend a message to another station
OPENIN/ OPENOUT/ OPENUPNFS ROMBASIC file handling routines
*PASSFile ServerChange password
*PRIVFile ServerChange user privilege
*PROTANFS ROM
(or BBC B Library)
Protect station
*PSANFS ROM
(or BBC B Library)
Select or report the printer server number
*READFREELibraryRead current or specified user's free space remaining
*RENAMENFS ROMRename a file
*REMOTELibraryRemote control another station
*REMUSERFile ServerRemove user from Passwords file
*ROFFANFS ROM
(or BBC B Library)
End remote control
*RUN (*, */)NFS ROMRun a machine code programme
SAVE/*SAVENFS ROMSaves a BASIC programme or block of memory
*SDISCFile ServerChange to a different disc
*SETFREELibrarySet current or specified user's free space allocation
*SPOOLNFS ROMCreate a spool file
*UNPROTANFS ROM
(or BBC B Library)
Unprotect station
*USERSLibraryDisplay users currently logged on
*VIEWLibraryView another station's screen

That's all for this rather text-intensive guide to the Econet Level 3 file server. If you'd prefer to see it in pictures, there's an illustrated guide in several parts here.