Please enable JavaScript to view this site.

A-Shell Reference

Navigation: Appendix

ASHINC Include Files

Scroll Prev Top Next More

The ASHINC: ersatz directory (normally DSK0:[907,16]) contains the ++include files supplied with A-Shell. Although these files are not mandatory for programming, they help minimize the confusion and potential for error inherent in the complicated data structures and thousands of opcodes, options and flags which are typically employed in XCALL and function parameters. By referencing the relevant ++include files in your programs, you gain instant access to standardized MAPs, structures, and symbols that make your programs easier to read, write, and share with others, as well as maximizing the utility of our documentation, which is heavily indexed and/or searchable on these same symbols and map/structure names.

The most recent versions of the ASHINC files can—and regularly should—be obtained from SOSLIB:[907,016].

The ASHINC: directory contains the following kinds of files, identified by their extension:

Extension

Description

DEF

Symbol definitions (e.g. define MBF_STATIC = &h00040000)

MAP

MAP statements

SDF

Structure definitions

BSI

Actual code ( including MAP statements, function/procedure definitions, etc.)

 

Other than a small version signature (about 40 bytes), DEF and SDF files do not increase the size of the resulting RUN programs. They merely expand the "vocabulary" of the compiler. They do, however, require the COMPIL /X:2 switch. When there is both an SDF and MAP file, the SDF is generally preferable, as it allows multiple copies of the structures to be declared, using your own prefixes. The MAP files represent the older approach used before defined structures were introduced.

Here is an overview of the most commonly used files. New ones are added periodically, typically with names matching the XCALL or subsystem to which they refer.

Filename

Description

ashell.bsi

Code commonly used in LIT programs (e.g. command line processing)

ashell.def

A core set of symbols used in nearly every A-Shell program, especially those containing MIAMEX calls

ashell.sdf

Structure definitions associated with common MIAMEX calls

csidl.def

CSIDL_xxxx symbol definitions (used by MX_BROWSEFOLDERxs and MX_GETSHELLPATHxs)

evtmsg.def

Symbols used with EVTMSGxs

gtlang.map

Mapped structure used by GTLANGxs (get language definition)

hook.def

Symbols used by the file hook mechanism (see MX_FILEHOOKxs)

http.def

Symbols used by HTTPxs

isam.def

Symbols related to ISAM

jobtbl.def

Symbols related to fields in the job table

jobtbl.map

Mapped structure representing JOBTBL.SYS records - see MX_READJCBxs

msboxx.def

Symbols related to MSBOXXxs

regex.def

Symbols related to regular expressions

sql.def

Symbols related to SQLxs

trmchr.map

Mapped structure used by TRMCHRxs (terminal characteristics)

xcall.bsi

Startup code useful in writing custom SBX routines

xtext.def

Symbols related to XTEXTxs

xtext.sdf

Structure definitions for XTEXTxs parameters

xtree.def

Symbols related to XTREExs

xtree.map

Mapped structures compatible with XTREExs

xtree.sdf

Structure definitions for XTREExs parameters