# List of the Arachne system files

Warning: This document has no value for users who want to setup software just with mouse clicks.

### Main configuraton file ARACHNE.CFG

###### Expected in: .\ARACHNE.CFG
when not found there: [arachne directory]\ARACHNE.CFG
written always to: [already existing file]

The configuration file can be changed using user friendly setup pages. It is plain text, human readable file, so advanced users can modify it. See list of ARACHNE.CFG keywords.
Warning: ARACHNE.CFG cannot be modified from inside Arachne, because this configuration file is being overwritten before exiting...

### ARACHNE.BAT, CORE.EXE

###### Expected in: .\
when not found there: [system path]\
CORE.EXE is main executable file of Arachne. It cannot be run standalone, it must be run from inside of ARACHNE.BAT. Command line arguments of ARACHNE.BAT will be passed to CORE.EXE.

Command line arguments:
URL | Start with desired document (default protocol is file:) -o | Start in online mode (eg. with Connection @PPP.EXE ...)
-x [URL] | Start in offline fullscreen mode and display desired URL
-i [URL] | Start in online fullscreen mode and display desired URL
-s | Setup video adapter and memory type, then exit (core.exe only)
-c | Continue offline browsing (if you use Connection READY, it will force offline mode)
-cg | Continue offline browsing without reseting graphics mode (only for internal use of Arachne !)
-r | Continue online browsing (eg. with Connection @PPP.EXE ...)
-rg | Continue online browsing without reseting graphics mode (only for internal use of Arachne !)
-d | Detect and setup video adapter and exit (core.exe only)
-f | Create new font information (fontinfo.bin)
-u | Unload packet driver (core.exe only)

### Plug-in configuration file MIME.CFG

###### Expected in: .\MIME.CFG
when not found there: [arachne directory]\MIME.CFG
this file can be modified (but not rewritten) by Arachne Package Manager

MIME.CFG must be updated each time when you want to add some plug-in to ARACHNE (for example Java interpreter, VRML browser, or so ;-). If you want to write your own DGI application, MIME.CFG must to be updated too. Using Arachne Packages can make this task really very easy.

### Icon configuration file WWWMAN.CFG

###### Expected in: .\WWWMAN.CFG

WWWMAN.CFG assigns icons to certain filename fragments (like extensions). Icons can be any images viewable by Arachne, but for performance reasons, format .IKN is the recommended one. Filename fragment can be someting like ".GIF", ".HTM" or "FILES.BBS". Syntax is:

    filename_fragmet icon_filename
    filename_fragmet icon_filename
    ...

### The Other *.CFG files

###### usually: [arachne directory]\*.CFG

These are the other configuration files. Their usage usually depends on ARACHNE.CFG. Don't change them if you don't know what you are doing.

### *.OOK files

###### usually: [arachne directory]\OOPS\*.OOK

Files with extension *.OOK are simply batch files - shortcuts to DOS applications. Why "OOK" files ? Launch this OOK to understand more...

### Arachne Packages

###### Can be found on diffent places

Files with extension *.APM are Arachne Packages. They are not included in main distribution package, they must be downloaded from Internet.

### Cache index file

###### User definable filename and location, usually: [arachne directory]\CACHE.IDX

Cache Index is binary file with following structure:

    BinaryRecord
    BinaryRecord
    BinaryRecord
    ...
    BinaryRecord

BinaryRecord has following structure:

    int itemlength;//in this file, always 0x01A8
    struct HTTPrecord cacheitem;

And this is prototype of HTTPrecord:

    #define URLSIZE 256
    #define STRINGSIZE 40

    struct HTTPrecord
    {
     char URL[URLSIZE];    // Uniform Resource Locator
     int x;                // coordinates where the document was last displayed
     long y;               //
     long size;            // size in bytes
     char knowsize;        // logical - size is valid
     char mime[STRINGSIZE];// mime type
     char locname[80];     // full filename (after conversion to TXT,HTM,GIF,BMP)
     char rawname[80];     // full filename (before conversion)
     int handle;           // file handle
     long lastseen;        // last seen time
     char postflag;        // it is result of <FORM METHOD=POST>...
    };

### History file

###### User definable filename and location, usually: [arachne directory]\HISTORY.LST

Plain text file - each line contains one URL. First line must be for some reasons (mysterious even to the author) empty. Index of current URL is located in ARACHNE.PCK file.

### Cookie database

###### User definable filename and location, usually: [arachne directory]\COOKIES.LST

Plain text file - each line contains one cookie, in format as they appear in HTTP headers of WWW pages. You can delete unwanted cookies from this file manualy, or delete it, if you want to protect your privacy.

### Runtime configuration file ARACHNE.PCK

###### Expected in: .\ARACHNE.PCK
when not found there: [arachne directory]\ARACHNE.PCK
written always to: .\ARACHNE.PCK

Run SETUP.BAT if you want to ignore this file and reset Arachne. This file contains hardware dependent information about your video card !

    #define MAXBACKTRACE 64
    #define MAXTITLELEN 100

    #define SWAP_DISK 0
    #define SWAP_XMS  1
    #define SWAP_EMS  2

    struct ArachnePick
    {
     char graphics[16];//last video mode
     char GUIstyle;    //0-menu on the right side,
                       //1-menu like normal browser
                       //2-almost fullscreen
                       // & 4 ...fullscreen (3rd bit set)
     char xSwap;       //see SWAP_DISK, SWAP_XMS, SWAP_EMS
     int mousex,mousey,framescount; //mouse x and y, number of frames
     char target;      //current target inside frameset
     char newframe;    //new frame to be loaded
     long cachesize;   //size of HTTP cache - not yet implemented
     int history;      //current pointer to history file TADYJSEM.BYL
     int backtrace;                       //pointer to backtrace_target
     char backtrace_target[MAXBACKTRACE]; //trace targets of clicks
     char title[MAXTITLELEN];             //main title of the entire frameset
    };

    //there are 16 frames allocated. Each frame have following structure:
    #define STRINGSIZE 40

    struct HTMLframe
    {
     //general information:
     char framename[STRINGSIZE]; /target=....
     struct HTTPrecord cacheitem;//seee cache index for "HTTPrecord" declaration
     struct ScrollBar scroll;    //frame size is declared in scrollbar structure

     //this is required for Netscape & MSIE compatibility..
     char allowscrolling;
     char marginwidth,marginheight;

     //real position in frame, in pixels
     int posX;
     long posY;

     //document status: LOCAL/REMOTE/VIRTUAL/MAIL , 0...3
     unsigned status;

     //hidden frames are 1) parent frames 2) overwritten child frames
     //if parent is overwritten, this frame should be hidden:
     char hidden,parent,next;

    };

    //end of frames

Definition of scrollbar structure (of course, it is not part of ARACHNE.PCK, but it is required to correctly load information from ARACHNE.PCK ;-)

    struct ScrollBar
    {
     int max_xscrsz,max_yscrsz,xscr,yscr,xscrsz,yscrsz;
     int xsize,ysize,ymax,xtop,ytop;
     int total_x;
     long total_y;
     char xvisible;
     int x_decrease_gap; //for scrollbuttons
     int x_increase_gap;
     int y_decrease_gap;
     int y_increase_gap;
     int gap;
     char onscrollx,onscrolly;
     char scrollbarstyle;
    };

### Icon files

###### Expected always in: [arachne directory]\SYSTEM\

Files with extension *.IKN are Arachne icons. On Arachne online homepage, there is available package MORE_IKN. It is collection of various *.IKN files, which can be useful for different file extensions on your hard disk. This format was originaly used in user interface of IBASE image database. It's advantage against Windows *.ICO format is, that it contains colour pallette. All 60x60 *.IKN files were created by me sometimes between 1991 and 1996 for IBASE "Command Center". I included some of them to Arachne because I had no other idea how to use them ;-) I don't recommend to publish them on WWW. It's proprietary file format, usable only in PC enviroment. However, IKN files can be used in your Intranet *.HTML files, if you decide to use Arachne as your intranet client.

GIFIKN utility will allow you to customize Arachne toolbar. It is available to owners of commercial multilicense (see file REGISTER.HTM).

### Font files

###### Expected always in: [arachne directory]\SYSTEM\

FONTINFO.BIN and *.FNT files are files used by X_LOPIF graphics library. They are hard-linked to subdirectory SYSTEM, and cannot be stored elsewhere (mainly because fonts are initialized before loading main configuration file). Currently, there is available free utility TFONTY to convert *.TTF fonts to *.FNT format (for Windows) and FEDIT utility to edit *.FNT files (for DOS). After modifying Arachne FNT files, you have to run arachne -f to create new font information (file FONTINFO.BIN).

See also details about distribution X_LOPIF graphics library for C language.

### The waste

###### Can be found on diffent places (including %TEMP%\ directory)

Files like *._$B, *.TMP or $ROURA$.BAT are temporary and can be deleted when they stay on your hard disk (it can happen when Arachne crashes). File TEXTAREA.TMP stores last unsubmitted <TEXTAREA> tag. Extension *.IDX belong to index files - if you delete them, Arachne and/or plug-ins will create them again.

Return to main help page.