Using System Mode

The ABC programmer interface you have been using is your primary interface for development. However there are occasions when you would like to perform some simple system maintenance without using the windowing system. System mode is provided for that purpose.

To enter system mode type

% abc -s

In a moment you will see the 'ABC>' prompt. The following functions are available by typing the command indicated:

ls
list a directory
cd
change a directory
imp
import a load file (see below)
exp
export an object
run
run a method
ac
compile a file
ex
exit the system
help
display help

Directory pathname specifications in ABC are like those in UNIX. Objects are relative to the master directory. To change to the types folder, type

cd /types

To export the widget menudb in the folder widgets to the file menudb.asm, type

exp /widgets/menudb menudb.asm

To import a load file called test.load type

import test.load

Load Files

A load file is a special file which is used to specify the object name and associated external filename during importing. An example is shown below.

    = /home/abc/test
    /types/Newtype : newtype.asm
    #/widgets/testdb : testdb.asm
    /widgets/newdb : newdb.asm

The objects are listed one per line. For lines beginning with /, the first name is the name of the ABC object including the directory path from master. This name must be followed by at least one space, a colon, at least one more space and a name. The second name is the name of the .asm file and may also include a directory specification appropriate for the operating system. ! or # in the first column indicates a comment line. = in the first line indicates that the remainder of the line is a directory specification for the files which follow until another = or end-of-file is encountered. The import option will read each file, build the object and store it in the environment under the name you have given.

You can also import a load file without entering system mode. For example,

% abc -i test.load

will enter abc, load the objects and exit in one step.

The 'run' command expects the name of a method object and the 'compile' command expects the name of an external file to compile. Be sure to 'exit' to save your changes.