Please enable JavaScript to view this site.

A-Shell Development History

871.0.1   PCKLST.SBR

PCKLST.SBR now allows the array argument to be passed as an unformatted variable, which gives you more flexibility in creating variable sized pick lists. Previously, for the array mode, you had to specify the first element, i.e. ARRAY(1), so that it the subroutine could determine the size of the array elements. Now, you can pass an unformatted variable which the array is overlaid upon, and PCKLST will determine the element size by looking at the spacing between the first and second elements in the array. For example:

MAP1 ARRAYX

   MAP2 ARRAY(50),S,13

XCALL PCKLST,ROW,COL,ANSWER,ARRAYX,MAXCNT,PROMPT, &

   EXITCODE,STROW,ENDROW,FLAGS,"",MMOCLR

 

In order for this to work, there must be at least one trailing null terminating the ARRAY(1) element. Note that by using the overlay feature, you could support several array layouts with the same XCALL PCKLST, i.e.:

MAP1 ARRAYX2,@ARRAYX

   MAP2 ARRAY2(10),S,60

MAP1 ARRAYX3,@ARRAYX

   MAP2 ARRAY3(80),S,8

etc.

 

871.0.2   INMEMO

Fix a bug in INMEMO causing a GPF or segmentation fault has been fixed. It occurred when the code for 26 compressed spaces (^B^Z) straddled two physical memo records.

871.0.3   Extended TAB

TAB(-10,23);CMD$;CHR$(127); will execute the specified CMD$ as a Windows command line. This is equivalent to XCALL HOSTEX,CMD$ under A-Shell/windows, with the main advantage being that also works from A-Shell/UNIX if the emulator is ATE. Note that just as with HOSTEX, you can add certain flag characters (&, %, $) to the end of the CMD$ to affect how the command is launched. See HOSTEX.SBR in the XCALL Reference for details.

871.0.4   Extended TAB

TAB(-10,24);FSPEC$;CHR$(127); will invoke the invoke the Windows application associated with the specified file or object type. Same capability as MIAMEX,96 except again, it may be used from A-Shell/UNIX if the emulator is ATE.

871.0.5   Extended ? TAB

TAB(-10,26);WINBGC;",";WINCLR;",";WINTXT;CHR$(127); will link the specified color palette numbers to the associated Windows colors, similar to MIAMEX,91 or SET SYS TERM. WINBGC should be a background color number 0 thru 7 (-1 to ignore) to be linked to the Windows standard dialog background color (gray). WINCLR should also be a background color number 0 thru 7 (-1 to ignore) to be linked to the Windows window background color (white). WINTXT should be a foreground color number to be linked to the Windows text color (black). Again, this works from A-Shell/UNIX if the emulator is ATE. Code similar to the example below will make screens containing buttons and text controls more like typical Windows screens (black text on a gray background, with listboxes and edit controls in white).

? TAB(-10,26);"0,1,6";CHR$(127); ! BG0=gray, BG1=wht, FG6=blk

? TAB(-3,0);TAB(-2,6);TAB(-1,0); ! BG=0, FG=6, clr screen