Please enable JavaScript to view this site.

A-Shell Development History

1. Unlock keyboard and turn on screen before displaying subroutine errors. 2. Clean up some problems in instance startup and shutdown which resulted in various spurious qflock or jobtbl errors (e.g. "Internal error accessing jobtbl", "Unable to access/lock ...".) A-Shell should now automatically reinitialize qflock and jobtbl as needed after most kinds of system aborts.

 

It will also be more friendly when you launch a new version of A-Shell that is not compatible with an existing version of qflock or jobtbl; it will warn you to get all other users out and offer to reinitialize the file automatically. (Hopefully this will eliminate most of the calls from users who encounter this situation when doing an update.)

 

3. (WINDOWS) Make a minor aesthetic improvement in the way the window background/margin is painted. Previously it would use the CURRENT background color, which would result in a different color margin (the space between the outer edge of the 24x80 display area and the inner edge of the window border) whenever the current background color was different than the already-displayed background of the screen. Now it uses the background color which was used to paint the first position of the screen (upper left corner.) This is not necessarily a perfect solution either, but seems to work better with the screens we've looked at.

 

4. (WINDOWS) Two new sample programs are included with the release:        TCRTEX.BAS--Demonstrates some of the extended TAB(-10,x) commands.   (replaces TCRT.BAS)  BEVEL.BAS--Demonstrates use of 3D bevelling.

 

Also, the TSTGDI.TXT sample/demo of GDI printing has been updated to show printing of images stored in metafiles; two metafiles are included (SABIO.EMF and SATELL.EMF.) VUE TSTGDI.TXT for more notes.

 

5. Two additional utility programs are now included in the sample directory:        SBCSCH--Text search utility contributed by Gary Guilbert of SBC.        RECOMX--Utility to compile all programs in current directory.         (Originally contributed by Tom Heim of HMOpro, updated by JDM.) The sample/utility directory--DSK0:[7,376]--now contains a START.CMD which contains a directory of the files.

 

5. (WINDOWS) Support the option to display a CANCEL button in addition to the OK button in the TAB(-10,4) messagebox function. This is invoked by specifying chr(1) as the first byte of the message, instead of " ". For example,

 

 ? TAB(-10,4);chr(1);message$;chr(126);title$;chr(127);  XCALL GET,A$

 

This will display a message box with both CANCEL and OK buttons. If the OK button is selected, A$ will come back as carriage return (ascii 13); if the CANCEL button is selected, A$ will come back as an escape (ascii 27). If the chr(1) was changed to chr(32) (or " ") then the message box would only display the OK button.

 

See the TCRTEX.BAS sample program which comes in the standard release.

 

6. (WINDOWS) Support an alternate form of message box based on the generic Windows messagebox function. Calling sequence is similar to the A-Shell messagebox above, except there are 2 bytes of flags preceding the message, and there are many more options and return values. This type of message box displays in the middle of the screen (unlike the other, which displays as the bottom of the window), and it can accomodate more or less any size message (unlike the other which is limited to about 2 lines.) Calling sequence:

 

 ? TAB(-10,17);chr(flglo+32);chr(flghi+32);message$;chr(126); &        title$;chr(127);        XCALL GET,A$

 

flglo represents the low byte of the sum of the options flags, and flghi is the high byte. (Each is offset by 32 to prevent nulls which would confuse the termination logic.) Flag options:

 

BUTTONS: 0=OK, 1=OK/CANCEL, 2=ABORT/RETRY/CANCEL, 3=YES/NO/CANCEL,  4=YES/NO, 5=RETRY/CANCEL

 

ICON: 16=X, 32=?, 48=!, 64=i MISC: 256=Default to 2nd button, 512=Default to 3rd button

 

Assuming FLAGS was the sum of the desired choices from above, you could break it into the hi and lo bytes as follows:

 

 FLAGSLO = FLAGS AND 255        FLAGSHI = int(FLAGS / 256)        ? tab(-10,17);chr(FLAGSLO+32);chr(FLAGSHI+32);message$; &        chr(126);title$;chr(127);        XCALL GET,A$  The return values are: 33=OK, 34=CANCEL, 35=ABORT, 36=RETRY, 37=IGNORE, 38=YES, 39=NO.

 

See the TCRTEX.BAS sample program which is part of the release.

 

7. EZVUE now automatically examines up to 1500 lines of the file to compute pagination information. A few glitches in the display of the line and page information (on the status line) have been cleared up. The percentage figure has been removed entirely as it was more confusing than helpful, even when it was accurate.

 

8. A minor aesthetic adjustment was made to INFLD in the way it handles the color display of negative numbers. It still uses the NFCLR and NBCLR numbers for the foreground and background while editing a negative number, but now on exit, it uses the UBCLR for the background. (It makes more sense for the background to remain constant for all static text fields, and only change it during editing.)

 

9. A file EXHASH.DIR is now released in the OPR: account that contains the hash code of the A-Shell executable. You can use this to verify that you have a good copy by typing EXHASH.DIR on the screen and then using the A-Shell DIR.LIT and SIZE.LIT programs on the native filespec of the A-Shell executable, as shown here:

 

.TYPE OPR:EXHASH.DIR

 

.DIR "C:\VM\MIAME\BIN\ASHW32.EXE"/H        (Windows)  .SIZE "C:\VM\MIAME\BIN\ASHW32.EXE"/H or  .DIR "/vm/miame/bin/ashell.exe"/H        (Unix)  .SIZE "/vm/miame/bin/ashell.exe"

 

To display the size and actual hash of the specified executable to see if they match the size and hash as released.