Please enable JavaScript to view this site.

A-Shell Development History

1. Fix bugs in ODTIM relating to display of times between midnight and one am (was using 24:xx:xx instead of 00:xx:xx); and of times > 24 hours (was limiting the maximum time to 24:59:59.) Also, it was displaying the current time if a time of zero passed; now time 0 equals midnight unless date is also zero, in which case the current time and date are used.

 

2. Fix INFLD bug: was displaying blanks to clear the fringe area of the field even in OPCODE 28, which should not have generated any display.

 

3. Fix protected fields bug (WINDOWS): even protected fields were getting cleared by clear-line and clear-to-end-of-screen commands (although they would reappear if the window was forced to be repainted.)

 

4. Improve title centering in PRINT.SBR.

 

5. Updated LITs: Several LIT files released in edit 737 were compiled with the wrong libraries, resulting in "subscript out of range" errors.

 

6. (UNIX) Printer INI files now support the command PRTCOPIES = This provides a printer-specific alternative to the miame.ini command OPTIONS = PRTCOPIES which was introduced in edit 729. Note that the miame.ini OPTIONS = PRTCOPIES will override all individual printer INI settings, so unless you want to use the PRTCOPIES feature on all printers, you should omit OPTIONS=PRTCOPIES from miame.ini and add PRTCOPIES=ON to specifie printer INI files.

 

7. (UNIX bug fix): Multiple copy print requests were getting "squared"; that is, if you asked for 2 copies, you were getting 4; if asking for 3, you were getting 9.

 

8. The maximum internal command line length has been expanded from 80 to 132 columns.

 

9. (UNIX) Enhancement to printer ini alternate command syntax (COMMAND = ): The specified command line may now include special variables $FILE and $COPIES. For example, you could convert a printer request into a copy using the following:

 

 COMMAND = cp $FILE /mydir

 

When $FILE is specified, the file name is not added to the end of the generated command line. Otherwise it is. Thus:

 

 COMMAND = mylpr -n$COPIES $FILE

 

is equivalent to:

 

 COMMAND = mylpr -n$COPIES

 

10. Support ashell / ashw32 command line switch -bc . Same as -ba except that it starts a new buffer file instead of appending to the existing one.

 

11. A slave task bit has been added to the JOBTYP word in the job control record. It has the same value (512) as the corresponding AMOS flag. Updated SYSTAT and SUBMIT commands now look at this bit (see below), and GETJTB.SBR and PLYJOB.SBR will return it. The bit allows slave or background tasks to be identified now independent of their jobname (which previously had to be TASxxx) allowing the /j switch to be used now more effectively with SUBMIT.

 

12. PRINT.LIT 2.5(114) supports /PREFIX:fspec and /SUFFIX:fspec switches, allowing you to override the PREFIX and SUFFIX options in the printer INI on a file-by-file basis.

 

13. SYSTAT.LIT 2.1(129) supports /F (display foreground jobs only) and /B (display background jobs only) switches. The /B switch can be particularly useful in identifying background jobs since now they don't have to stick to the TSKxxx jobnames anymore.

 

14. SUBMIT.LIT 2.0(122) is now able to identify background jobs by the JOBTYP slave bit rather than just their jobnames.

 

15. VUE 3.2(239) fixes a problem with yanking in lines with just CRLF on them when SET CRNL is on; it was leaving an extra ^M in the file.

 

16. Dot prompt command line may now be scrolled horizontally to a new maximum command length of 200 columns. LIT modules updated to support 200 column commands. (VERSYS will show ashell[47], cmdlin[17], and qdef[19].)

 

17. (Windows) Fix some glitches with use of colors > 7.

 

18. (UNIX) Introduce XCALL GETMAC,ADDR to get Ethernet MAC address. Depending on format of ADDR, it will return an array of 6 bytes or the hex xx:xx:xx:xx:xx:xx string representation:

 

 MAP1 ADDR1        MAP2 ADDR'B(6),B,1        MAP1 ADDRS,S,18

 

 XCALL GETMAC,ADDR1        ! returns 6 binary bytes        XCALL GETMAC,ADDRS        ! returns "xx:xx:xx:xx:xx:xx"

 

Note that the internal technique for getting the MAC address varies from OS to OS, and possibly even from system to system, so it may not work in all cases. If the address cannot be retrieved, it will be returned as 6 zero bytes, or "00:00:00:00:00:00". Currently, AIX, SCO and Red Hat 6.1/6.2 are supported.