Please enable JavaScript to view this site.

A-Shell Development History

Navigation: Version 4.6, builds 699-791

789 — 03 December 2001

Scroll Prev Top Next More

1. XCALL BUTTED,STRING added. Removes all characters from STRING except A-Z and 0-9.

2. XCALL CHKONE,A$ added. (MAP1 A$,S,1) Checks to see if there is any pending keyboard input. If so, returns "1" (but leaves the character in the input buffer to be input by another operation.) If no character available, returns "0".

3. XCALL JOBTRM,JOBNAM,JOBTRM,JOBTDV {,CTLNAM,CTLTRM,CTLTDV} added. (All parameters S,6 or larger.) Returns jobname, trmdef name, and terminal driver name. If last 3 parameters specified and running under control of PolyShell, returns info corresponding to parent job.

4. XCALL INCOM,NAME,LABEL,OPCODE,STPOS,LENGTH,FLAG added.

NAME,S,10           ! name of storage module (only first 6 chars sig.)

LABEL <any type>    ! variable to send from or receive into

OPCODE <numeric>    ! 0=read, 1=write

STPOS <numeric>     ! starting offset into module (1 relative)

LENGTH <numeric>    ! # of bytes to transfer

 

INCOM is a variation on the XCALL COMMON concept, used for storing information in the equivalent of user memory to be shared between programs run by the one user. The main differences with COMMON are that read is always non-destructive, and you can read and write to portions of the module identified by starting position and size.

Under AMOS, the NAME parameter was meant to reference an actual module loaded into user memory (name.ext). Under A-Shell, there is no need to load the module, as it is created automatically (size 1024 bytes) when first accessed. (Using LOAD.LIT on the module NAME will clear the module contents in memory.)