University of Vaasa, Finland, Sun IPX sparcstation, node number 128.214.87.1 (garbo.uwasa.fi) has a large collection of PD and shareware programs which are available by anonymous ftp (file transfer program) or mail server. This /pc/ts/0news92.ts text contains news about the programs in the /pc/ts directory (in reverse order). .................................................................. Prof. Timo Salmi Co-moderator of comp.archives.msdos.announce Moderating at garbo.uwasa.fi anonymous FTP archives 128.214.87.1 Faculty of Accounting & Industrial Management; University of Vaasa Internet: ts@uwasa.fi Bitnet: salmi@finfun ; SF-65101, Finland .................................................................. N e w s o f 1 9 9 2 Mon 28-Dec-92: Updated my collection of Telix telecommunication program Salt scripts to be garbo.uwasa.fi:/pc/ts/tstlx11.zip. Added: TIMER.SLT An elapsed time reminder This addition was based on a question on the UseNet news. Corrected: FTPGET.SLT Autodownloading from ftp sites I confured seconds and tenth's of a second. Sun 27-Dec-92: Introduced a collection for my Telix utilities. It is available as garbo.uwasa.fi:/pc/ts/tstlx10.zip. It contains several fairly simple, well documented Salt scripts. They are useful for learning to write in the Telix Salt programming language. Looking at source code examples has always been a good way of getting started. The scripts included are 9600E.SLT Initialize MultiTech MultiModem FINDPORT.SLT Test which port has a modem FTPGET.SLT Autodownloading from ftp sites MBBS.SLT Connect to an MBBS system TRANSOFF.SLT Turn off char translation tables TRANSON2.SLT Turn on both translation tables UNIXHOST.SLT Connect to Unix host via server Fri 25-Dec-92: Updated my third filter collection. It is now garbo.uwasa.fi:/pc/ts/tstsfltc15.zip. Added DUMP.EXE "Decimal, hexadecimal, ascii dump" COL.EXE "Columnize a text file" UNDUMP.EXE "Convert decimals to ascii chars" Sat 19-Dec-92: Update garbo.uwasa.fi:/pc/ts/tsbat40.zip of my collection of useful batch files and batch tips & tricks. Added BDIR.BAT "Bare list & count of directories" HEX.BAT "Add and subtract hexadecimal values" PORTS.BAT "Display port base I/O addresses" Updated and rewrote BATRICKS.TXT "Assorted batch tricks" Corrected COLOR.BAT "Set screen color attributes" It left on a tmp_ environment value. It shouldn't have. Sat 19-Dec-92: I have updated my collection of Frequently Asked questions. It is now garbo.uwasa.fi:/pc/ts/tsfaq31.zip. Added CAM.INF "CAM discussion groups charter" Brought up to date many of the items throughout the FAQ. The principal sections of the collection are FAQNEWS.TXT Q&As relating to UseNet news FAQPAS.TXT Turbo Pascal questions & answers FAQPROGS.TXT Questions answers about programs PD2ANS.TXT Q&As on uwasa.fi archives & more UPLOAD.INF How to upload to garbo archives VAASA.INF Info: Finland, Vaasa, U of Vaasa Sun 6-Dec-92: I found a bug in my TDEL.EXE "Timo's safe recursive delete files and remove directories" version 1.2. The previous version sometimes detected non-existing directories. I think I pinpointed the elusive error in my code and hopefully have this bug corrected. While I was at it I also included a more detailed message why a directory cannot be removed. Example: "Directory not empty: Contains 2 subdirectories and 1 files". TDEL.EXE skips read-only files, but reports them. The updated version also reports hidden and system files (but does not allow deleting them). For Unix users I would describe TDEL.EXE as an MsDos counterpart rather than a direct port of the rm command. For MsDos users one could call TDEL.EXE a combined file deletion and directory-tree pruning utility. TDEL.EXE is a part of my consequently updated fifth utility collection from garbo.uwasa.fi:/pc/ts/tsutle21.zip. Sat 28-Nov-92: Are you aggravated by accidentally hitting the CapsLock key and the consequent turning on of the CapsLock? I've written a new Terminate and Stay Resident (TSR) program NOCAPSLC.EXE which monitors the CapsLock status and forces it off if it is on. This is one of the programs that arises from my own usage needs. I decided that I'd prefer to have the CapsLock key usually disabled because I hit it by accident rather often. It is located between the Shift ans Tab key. I use both quite frequently. The former I use for obvious reasons, the latter especially because it has a special function on our Unix host (command completion). This is how I load NOCAPSLC.EXE on an MsDos 5.0 system: MARK nocapslc LOADHIGH nocapslc where MARK.COM comes from TurboPower's /pc/memutil/tstsr34.zip. Would you want to assure that the NumLock key is always activated? My NUMLOCK.EXE TSR program does exactly that by forcing the NumLock key always on. Incidentally, I also have a program to disable the PrintScreen key to prevent accidental screen prints. That program, however, is in a different collection garbo.uwasa.fi:/pc/ts/tsutld*.zip because the task does not require a TSR. Consequently, I have updated my collection of TSR programs. It is now garbo.uwasa.fi:/pc/ts/tstsr14.zip. Thu 26-Nov-92: I have upgraded my third filter collection to be garbo.uwasa.fi:/pc/ts/tsfltc14.zip. The program CUT.EXE "Extract or delete text columns" has been updated. Added a /s switch for optionally suppressing empty lines. A have included a new program CUTW.EXE "Extract or delete text by words". It has several convenient features like defining the word delimiters, option to start from the end of the line, optional suppression of empty lines, and multiple ranges. Added FILE_ID.DIZ "Brief characterization of TSFLTC". Some BBS systems scan for a FILE_ID.DIZ in uploaded packages and if found use its contents as the description in their annotated file list. Thu 26-Nov-92: I have updated my TDEL.EXE "Timo's safe recursive delete". Besides being able to delete files, this program includes the option of removing directories recursively. The new version does the removing from bottom up, which makes using the utility very convenient. Of course you'll first have to make the directories empty by deleting the files from them, if any, but that is easy by first applying TDEL recursively on the files. A small practice set for ramdisk is included, because even with safe deleting and removing one has to know exactly what one is doing! The old method of removing from top to bottom has been preserved for compatibility. It has a special switch /f (force Forward). TDEL.EXE is a part of the consequently updated fifth utility collection from me garbo.uwasa.fi:/pc/ts/tsutle20.zip. Mon 16-Nov-92: I have started the sixth utility assortment of mine. It is garbo.uwasa.fi:/pc/ts/tsutlf10.zip. The new collection includes STRINGS.EXE for finding the embedded strings from a text or a binary file. It also gives the hexadecimal offset of each string found. The second program in the new collection is STRMEMO.EXE which can be used for scanning your PC's memory for strings. You'll probably find some interesting information in there. An optional switch to use the Scandinavian string definition in the search is provided. Sun 8-Nov-92: I have again updated my Turbo Pascal units collection. They are now 99367 Nov 8 19:13 garbo.uwasa.fi:/pc/ts/tspa3140.zip 101110 Nov 8 19:13 garbo.uwasa.fi:/pc/ts/tspa3150.zip 103186 Nov 8 19:13 garbo.uwasa.fi:/pc/ts/tspa3155.zip 103345 Nov 8 19:13 garbo.uwasa.fi:/pc/ts/tspa3160.zip The new routines added are TSUNTB: BBINFN Convert decimal byte to binary string BHEXFN Convert decimal byte to hexadecimal string TSUNTE: ARCFILFN Is a file's archive bit set or not HIDFILFN Is a file a hidden file or not RDOFILFN Is a file a read-only file or not SYSFILFN Is a file a system file or not TSUNTG: ACTDRVFN Which floppy drive is active on a one drive system FLOPSTFN Floppy disk status. Is it present and formatted. ISUBSTFN Is a drive a substituted drive (MsDos 3.1+) MEDIAFN What kind of a disk media is present in a drive returns: $00 : Error $F0 : Floppy of 1.44Mb $F8 : Fixed disk $F9 : Floppy of 1.2Mb $FA : Floppy of 720Kb $FD : Floppy of 360Kb $FF : Floppy of 320Kb TSUNTJ ISDIR2FN Is a name a directory or not, alternative method Sun 1-Nov-92: I have updated one of my directory programs DIRF.EXE "DIRectory in Full". It can be found in the consequently updated garbo.uwasa.fi:/pc/ts/tsutlc18.zip package. Enhancements: - The volume serial number is now given for MsDos 4.0 and greater. - The MsDos 5.0 like bare format has been included. - The help screen has been rewritten. - Sysfiles are indicated by an s. A tip. Besides its usual functions you can utilize DIRF to locate files anywhere on a drive using e.g. DIRF c:\ /s /b | find "BAK". The neat feature of this method is that it matches the search string anywhere in the filename. 91799 Nov 1 10:14 garbo.uwasa.fi:/pc/ts/tsutlc18.zip Mon 26-Oct-92: I have again updated my collection of useful batch files and batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat38.zip. Added COLORMAP.BAT "Ansi screen color esc. seq. map". I adapted the idea from PC Computing October 1992. The difference in my adaptation is that it displays the escape sequence codes you need to induce the colors on the map. Furthermore, I do not use any environment variables. Added TOUCH.BAT "Touch a file's datetime stamp". It is quite amazing the thing one can actually do with bare batch files using the tricks trade. TOUCH.BAT is a good example of this. Added EDIT.BAT "A truly trivial text editor". Appends text to a text file from the con device, that is the keyboard. Made some enhancements to BATRICKS.TXT "Assorted batch tricks" and added the following item: 21) Testing if a file name includes a path 93765 Oct 26 08:05 garbo.uwasa.fi:/pc/ts/tsbat39.zip Sun 18-Oct-92: I have updated my first utility collection to be garbo.uwasa.fi:/pc/ts/tsutil36.zip as follows I have updated my SYSINFO.EXE system information program. The new features. - It includes MsDos environment size/use as an additional item. - It shows the serial number of the disks (for MsDos 4.0+) - It recognizes substituted drives (for MsDos 3.1+) Also updated my DIRW.EXE directory program by adding a switch /n to display the disk's serial number for MsDos version 4.0 and later. Added FILE_ID.DIZ "Brief characterization of TSUTIL". Some BBS systems scan for a FILE_ID.DIZ in uploaded packages and if found use its contents as the description in their annotated file list. Sat 10-Oct-92: I have updated my collection of TSR (Terminate and Stay Resident) programs. It is garbo.uwasa.fi:/pc/ts/tstsr13.zip. Added LEDS.EXE "Caps, NumLock, ScrollLock status" to indicate the caps status on laptops and the like which may lack the normal leds. Added FILE_ID.DIZ "Brief characterization of TSTSR". Some BBS systems scan for a FILE_ID.DIZ in uploaded packages and if found use its contents as the description in their annotated file list. Compiled the rest of the programs anew to bring some information up to date, but made no operational changes. Thus the version numbers have not been altered, only the compilation date. Tue 6-Oct-92: I have updated my fifth utility collection to be garbo.uwasa.fi:/pc/ts/tsutle19.zip. CMOS.EXE "Display of the CMOS information" is a program that reads your battery backupped system information. The program now takes an optional switch /BW to run on an LDC laptop so that only two colors (LightGray / Black) are used. CMOS can take ? as a parameter. It then gives the usage information. CLOBBER.EXE "Delete files beyond undelete" is a new program in the collection. As you know there are several programs that can undelete deleted files, most notably the external undelete.exe program that comes with MsDos 5.0. CLOBBER works by rewriting your destination file full with ? and then deleting the file. Thus if one undeletes the file the original contents is no longer there. Be realistic if you wish a water-tight security. But beware. Although this can foil a "simple" undelete, there are programs that can read the sectors of the disk directly. If you update a sensitive file that often leaves old, unattached clusters of the file on the disk, and those can be read by a skillful snoop. On the other hand use CLOBBER judiciously because as a general rule you will lose the file for good (which is the exact purpose of CLOBBER). I have not been able to evaluate how well CLOBBER performs on a badly fragmented file. - All in all, there is a lesson to be learned here for those who trust encryption programs to protect their sensitive files. You should never encrypt them anywhere else than on a ram disk. If you use harddisk for even a temporary decryption, it may leave readable portions on the hard disk. It is not easy to access them, but it is not overly difficult. For example I have the tools and knowhow to do it. (No I will not disclose which and how, so please do not ask.) - I have tried to make CLOBBER fast. It uses its own 64Kb internal buffer, a kind of a programmed "disk cache". The programs are mostly self-documenting, but I added the documentations to the TSUTLE.INF information file so that they also are in one place. Sun 27-Sep-92: I have updated what was my number base calculation programs package: BASE.EXE Convert from one base to another BC.EXE Base calculations (+-* and or..) Implemented /g## a switch into these programs to indicate that the user wants the converted string spaced in groups of ## digits. Implemented more operators (xor shl shr) to BC.EXE. Added SCANCODE.EXE "Get key scan/ascii/status codes" redefining the TSBASE package to be more generally "A programmer's tools base". It is available as garbo.uwasa.fi:/pc/ts/tsbase11.zip. Added FILE_ID.DIZ "Brief characterization of TSBASE". Some BBS systems scan for a FILE_ID.DIZ in uploaded packages and if found use its contents as the description in their annotated file list. Thu 24-Sep-92: I have updated all my five easy-to-use statistics packages available from the Garbo archives, directory /pc/ts. The packages are ts1st20.zip Univariate statistical measures. ts2st20.zip Statistics: Multiple regression analysis. ts3st17.zip Statistics: Transformations of observations. ts4st17.zip Statistics: Correlation analysis. ts5st13.zip Least Absolute Deviation regression analysis. The input and output file names can be optionally given as parameters in the program calls, e.g. STATREGR /ic:\stat\test.dat /or:\tmp This option has been improved. The "prefilled" name (e.g. c:\stat\test.dat) will now automatically appear on the input line without the need of pressing the cursor up key. All you need to do is to press enter. Also made some minor internal changes not worth recording. Rewrote the document files using a 68 column wrap instead of the former 80 to make the text easier to read and handle. Added the list of files in each package to the documentations. Mon 21-Sep-92: Update garbo.uwasa.fi:/pc/ts/tslin33b.zip of my Linear Programming and Linear Goal Programming user-friendly solution package. Version 3.3b: Since version 3.2 the input and output file names can be optionally given as parameters in the program call, e.g. LINSOLVE /ic:\ordat\lptask.dat /of:\tmp This option has been improved. The "prefilled" name (e.g. c:\ordat\lptask.dat) will now automatically appear on the input line without the need of pressing the cursor up key. All you need to do is to press enter. Also made some minor internal changes not worth recording. Sun 20-Sep-92: I have again updated my collection of useful batch files and batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat38.zip. WEEKLY.BAT "Run program(s) once a week" is a new batch in my collection. If you want to run a program once a week when you reboot your computer, put CALL WEEKLY Weekday YourApplicationName [Param1] [Param2] [...] in your autoexec.bat file. Only one application, or one set of applications, can be run on the same weekday with this batch. The application can be a different one for each weekday. Examples: CALL WEEKLY Mon YourApplication CALL WEEKLY Tue echo Time to back up^G^G^G CALL WEEKLY Fri call YourBatchOfManyPrograms No auxiliary programs outside the normal MsDos commands have been used in WEEKLY.BAT. Not easy, but it can be done. DAILY.BAT "Run a program only once a day" which you call call from your autoexec.bat relies on the MsDos external FC command. The output of this command has been rewritten in MsDos 5.0. DAILY.BAT did therefore not work for MsDos version 5.0. I have consequently rewritten DAILY.BAT to comply also with the MsDos 5.0 version. A similar amendment has been done to VIRUS.BAT "Another batch-based virus test". BOOT.BAT "Choose your boot configuration" now utilizes nu NOBOOT.EXE from garbo.uwasa.fi:/pc/ts/tstsr12.zip (or whichever is the current version number) if it is available. This is to prevent the user from accidentally being too hasty about rebooting while the batch is still running. LASTBOOT.BAT "Show date + time of previos boot" streamlined to show just the date and time without the confusion of referring to the previous boot with "Current date is" which MsDos date (and time) produce. PROMPT.TXT "Tips on prompt usages with ansi" has some additional information on key redefinitions. BATRICKS.TXT added the following new items: 19. Utilizing the subst command in paths 20. How to run a batch once a week (testing for the weekday) Some other, minor amendments. Sun 20-Sep-92: In my Turbo Pascal units there is a number of editable readln substitutes: TSUNTF: (uses Dos, Crt) EDRDLN Readln with line-editing potential (the simplest) EDREABLN Edreadln with ctrl-c and break trapping EDREADLN Editable Readln with recall, and insert toggle I have written alternative versions of these routines which can take a PrefillString as the default input string, so the user has an option of just pressing enter, and default is selected. EDRDEBLN Editable Readln with ctrl-c, break trapping, pre-fill etc EDRDEFLN Editable Readln with recall, pre-fill, and insert toggle The suggestion to make this enhancement came from Darrell Davis davisd@ziavms.enmu.edu. My thanks to Darrell for his useful suggestion. garbo.uwasa.fi:/pc/ts/tspa3040.zip garbo.uwasa.fi:/pc/ts/tspa3050.zip garbo.uwasa.fi:/pc/ts/tspa3055.zip garbo.uwasa.fi:/pc/ts/tspa3060.zip Sat 19-Sep-92: Updated my answers to Frequently Asked Questions. It is now garbo.uwasa.fi:/pc/ts/tsfaq30.zip. This is a working update with no major additions. Sun 13-Sep-92: I have released an update of my fourth package of utilities making it garbo.uwasa.fi:/pc/ts/tsutld20.zip. I have a laptop-oriented TSR (terminate and stay resident) program BIGCURS.EXE to make the cursor a block so that is is better visible. It now can sense whether it already has been loaded so that the user cannot accidentally load it twice. I have rewritten the optional batch ADJCURS.BAT which can be used to load and unload my cursor programs. The batch senses whether the user has MsDos 5.0 and in that case loads BIGCURS high with loadhi. If not then the batch loads it low. Also the tests in ADJCURS to verify that the necessary programs are available has been totally rewritten. It is now sufficient for ADJCURS that the programs are at in the current directory or at path. (ADJCURS draws the ideas from my batchtricks in /pc/ts/tsbat37.zip or whichever is the current version number). Note that if you use ADJCURS you need auxiliary programs from /pc/ts/tsutil35.zip and /pc/memutil/tsrcom34.zip (or whichever are the current version numbers). I have a SWITCHAR.EXE program for Unix freaks to toggle the MsDos switch character between / and - although using the - can cause problems with some applications. The undocumented MsDos interrupt which drives the program has no effect in MsDos 5.0. I have added a test for the MsDos version into SWITCHAR so that it won't even try when MsDos 5.0 is encountered. Fri 11-Sep-92: Wrote a program to set the serial number of a disk. Starting from the MsDos version 4, format puts a random serial number on the disk. For example you might have 2D0D-13C9. With SETSER.EXE you can decide yourself what you want this two part nine character hexadecimal serial number to be. Or you can randomize a new serial number without having to reformat the disk. This program is within a new package from me garbo.uwasa.fi:/pc/ts/ts5dos10.zip. At the moment SETVER.EXE is the only program within the package. The program utilizes the routines from my collection of TPU units for Turbo Pascal, garbo.uwasa.fi:/pc/ts/tspa29*.zip where * = 40, 50, 55, 60. Sun 30-Aug-1992: I have updated my collection of useful batch files and batch tricks. It is now 88457 Aug 30 1992 garbo.uwasa.fi:/pc/ts//tsbat37.zip BATRICKS.TXT "Assorted batch tricks" now also explains how to extract the extension from a file name, how to prevent breaking a batch, how to avoid auxiliary batches, and much more. PUSHDIRE.BAT "Non-resident push directory" has been totally rewritten and is now self-contained. The external auxiliary program SETPUSHD.EXE is no longer needed, and has been omitted from the collection. The companion program POPDIRE.BAT has been brought up to date. Both the batches can take an /s (show) switch. See the remarks within the batches for more information. DELPATH.BAT "Delete a directory from the path" has been rewritten so that it creates the auxiliary file that it needs as a temporary file. Thus SETVAR.BAT is not longer needed in beforehand and has been eliminated from the collection. UNPACK.BAT "Unpack-test-view any archivetype" does not need, nor allow an extension in the archive name because it know how to detect the type of the archive. The batch now first checks that the user has not mistakenly given an extension. UNPACK.BAT also treats the other error situations in a more informative manner than before. D.BAT "Directory with sort & wildsearch" uses implicit wildcards to match anywhere in the file name(s). The batch now checks that the users soes not enter explicit wildcards to D.BAT. LOCATE.BAT "Wildcard file find". Added an optional /p paging switch. Clarified the instructions. WILD.BAT "Wilcard any command". Corrected the simple case of no command given to wild.bat to jump out. ARC2ZIP.BAT "Single .arc to .zip with comment" has been rewritten to check more closely to correct input format. Likewise the renamed ZOO2ZIP.BAT and EXE2ZIP.BAT. ARC2ZIP.BAT is now harddisk oriented like the two otehrs, since working on floppies can be now considered rare. Some other minor changes and rewrites of the batches and their documentation. (The batches are self-documenting.) Wed 26-Aug-92: Updated my Turbo Pascal units collection. It is now garbo.uwasa.fi:/pc/ts/tspa29*.zip where * = 40,50,55,60. 94246 Aug 26 23:18 garbo.uwasa.fi:/pc/ts/tspa2940.zip 96009 Aug 26 23:20 garbo.uwasa.fi:/pc/ts/tspa2950.zip 98101 Aug 26 23:20 garbo.uwasa.fi:/pc/ts/tspa2955.zip 98264 Aug 26 23:21 garbo.uwasa.fi:/pc/ts/tspa2960.zip Bug fixed (hopefully) the ISDIRFN "Is a name a directory or not" function in TSUNTJ unit. My thanks are due to Richard (Ricki) Breuer ricki@rwthi3.informatik.rwth-aachen.de for alerting me to the problem. In the process we noticed a rather undesirable feature of DRDOS. All my units are written for MsDos (command.com). The alternative command interpreters like DRDOS and 4DOS can cause incompatibilities since some of Turbo Pascal's routines (like IOResult) utilize the values the system returns. There is nothing I can do about incompatibilities like this, and it is a coincidence that we even noticed, since I do not run 4DOS or DRDOS. Anyway, ISDIRFN eill not work as expected if you are using DRDOS. I do not know about 4DOS. SETENV "Set a parent environment variable (variable=value)" in the TSUNTENV unit now accepts cases like TARGET=A B C (formerly the it was cut at the spaces). Also this suggestion is to to Ricki. Be careful. Trailing white spaces and other invisible characters you might put in there are included. Thus "TARGET=A" and "TARGET=A " are not the same thing. Started a new 4.0+ specific unit TSUNTK. It contains the following routines. BOOTDRFN Get boot device name (MsDos 4.0+) GETSERFN Get disk's serial number (MsDos 4.0+) GETVOLFN Special get disk volume label (MsDos 4.0+) SETSER Set floppy's serial number (MsDos 4.0+) The first, that is BOOTDRFN was transferred from the TSUNTH unit. The others are brand new. I got the idea to get and set the disk serial number from PC-Magazine (July 1992, Vol. 11, No. 13, p. 496) which published TP 6.0 specific code for these tasks. Since my own TP units are more general, that is for all the current MsDos TP versions starting from TP 4.0, I decided to write routines of my own for these tasks. But the users interested in a source code may wish to look at the article. (I did not bother to test whether the PC-Magazine code works, but I don't see why not). I got interested because I now use MsDos 5.0 in addition to 3.30 and 3.21 (and the aggravating 4.01). Added HEXLNGFN "Convert hexadecimal string to decimal longint up to 7FFFFFFF" to the conversion unit TSUNTB because TSUNTK internally needs this conversion in accessing the disk serial number. Added to TSUNTE the following elementary routines, just because I occasionally happen to need them myself. LABELFN Get a disk's volume label (not for TP 4.0) DEFDRVFN Get the default drive Finally added HIBACK to TSUNTC to enable high intensity background colors instead of enabling blinking text. The appropriate interrupt was pointed out by Bob Beauchaine bobb@vice.ICO.TEC.COM on the UseNet news in comp.lang.pascal. The routine requires an EGA, MCGA, or a VGA. Sun 16-Aug-92: Every now and then anyone who has much to do with computers needs a quick program to convert a number or a range of numbers from one base to another. My new BASE.EXE does just that. The usage is simple: BASE FromBase ToBase Number [LastNumber]. The file in contained in a new garbo.uwasa.fi:/pc/ts/tsbase10.zip package. The package also contains BC.EXE which performs calculations for numbers in non-decimal bases. The operations include + - * div mod and or. Thu 6-Aug-92: I have updated my collection of useful batch files and batch tricks. It is now 88069 Aug 7 02:16 garbo.uwasa.fi:/pc/ts/tsbat36.zip. Among the updates and enhancements are C.BAT "Lazy changing of a directory" has been enhanced. The basic idea is that if you are tired of typing the backslash (\), C.BAT lets you use an easier syntax. For example if you have a directory on the current drive called \text\jokes\stupid you can apply the form "c text jokes stupid" without needing the backslash. If you type c alone, it takes you to the root directory. Now C.BAT can handle drives too, and at one go at that. For example of you are on the C: drive and your directory is on D: you can apply c d: text jokes stupid The beauty of the system is that the "d:" is optional, that is the batch can identify whether the first parameter indicates a drive or not. BATRICKS.BAT is a new addition. It covers assorted batch tricks from the batches in the TSBAT collection, and also a number additional tricks that are not covered in the in the actual batches. BOOT.BAT "Choose your boot configuration" now sounds a warning bell if you choose an unexisting boot configuration. My own selection new has four alternative boots, but you can easily adjust to yours. To logic is rather straight-forward. Also a couple of typos in the rem comments have been corrected. PROMPT.TXT "Tips on prompt usages with ansi" has some new clarifications. SCANZ.BAT "Scan for viruses (incl. execomp)" has been brought up to date. VAASA.INF "Info: Finland, Vaasa, U of Vaasa, our faculty, Timo" has been updated. This file is included in most of my program packages. There are several minor adjustments in some of the other items. Sat 20-Jun-92: I recently acquired a HP Desk Jet 500 printer at home and have programmed a menu driven system SETHP.EXE to set the printer. It is available in my updated garbo.uwasa.fi:/pc/ts/ tsprn16.zip printer program collection. Sat 13-Jun-92: Updated my Turbo Pascal units collection. It is now garbo.uwasa.fi:/pc/ts/tspa28*.zip where * = 40,50,55,60. Added to TSUNTG unit GETESCAN Get scancode of key pressed, enhanced keyboard. GETSCAN Get scancode of key pressed, XT keyboard. The TSUNTENV unit already had SETENV Set a parent environment variable (variable=value). but this takes effect only after the program has been completed. Added an alternative which takes effect immediately, but is temporary SETENVSH Set an environment variable for the duration of shelling. One of the handy uses of SETENVSH is that you can temporarily change the prompt to indicate that you are shelled out of a program so that you are less likely to forget to type exit. See TSUNTG.TST for how to use this feature. Sat 13-Jun-92: An update garbo.uwasa.fi:/pc/ts/tsfaq29.zip of the collection of my Frequently Asked Questions for UseNet news newcomers, FTP users, MsDos shareware and PD program users, and Turbo Pascal programmers. Most importantly I have added information on archie servers kindly provided to me Adam Thompson, and I have corrected my error in describing the alt.sources UseNet newsgroup. Sat 6-Jun-92: I have updated to garbo.uwasa.fi:/pc/ts/tsutle18.zip as follows. I have written a new SETVIDEO.EXE program for setting the CRT video mode. This program in fact originates from my own need to set the 132x43 text mode for (MsKermit) terminal emulation in order to read wide screens when connected to main frames like the Vaasa University garbo.uwasa.fi and chyde.uwasa.fi. It is easy to set the 40x25 in Turbo Pascal by applying TextMode(C40). Likewise it is fairly trivial to set the 80x43/50 text mode by applying TextMode (C80 + font8x8). But I initially had difficulties in finding out how to set the 132 text modes until David R. Conrad (David_Conrad@mts.cc.wayne.edu) kindly informed me that the interrupt 10hex function 00hex can be used for this purpose too. The way it goes is that the standard defines video modes from 00hex to 13hex, but in fact there are many more modes which depend on the particular video adapter card. This information can be found in Ralf Brown's list of interrupts INTERRUP.A in inter30a.zip (located in the /pc/programming directory at garbo.uwasa.fi). The problem is that the sifferent video adapter cards have different defaults for the beyond 13hex video modes. I have used the following solution. You give the video mode as a hex parameter to SETVIDEO.EXE rather than choose from a menu of preset video modes. The values to give for the different video adapter cards can be found in the said INTERRUP.A information file if you look at INT 10h, function 00h. There is a very long list in there. For my own 386s the text modes are $00 = 40x25 $01 = 40x25 $02 = 80x25 $03 = 80x25 $50 = 80x30 $51 = 80x43 $52 = 132x25 $53 = 132x25 $54 = 132x30 $55 = 132x43 $56 = 132x60 Tue 26-May-92: I have again updated the collection of my Frequently Asked Questions for UseNet news newcomers, FTP users, MsDos shareware and PD program users, and Turbo Pascal programmers. It is available as 112238 May 26 12:03 garbo.uwasa.fi:/pc/ts/tsfaq28.zip. Wed 20-May-92: I have programmed two educational games involving national flags. A quiz of national flags, and as a by-product, a memory game of pairing turned flags. I have updated these games and release the update as garbo.uwasa.fi:/pc/ts/tsgmed12.zip. I have added new flags to reflect the changes brought by the recent world events. The new flags include flags from the Commonwealth of Independent States such as Russia, Ukraine, Byelorussia and so on. I have not, however, reflected the events in the Balkan region since the picture is still forming. My flag games are devoid of any political connotations. The (old?) Yugoslav flag is retained for the time being in these games, since whatever happens at least it is part of world history just like the flag of the Soviet Union (although the latter does not feature in the games). I have added some common flags that were missing. These added flags are those of Great Britain, Australia, New Zealand, Canada, Brazil. This brings the total number of flags to en even 100. I usually try to avoid hype my own programs, but I wish to say that I am fairly pleased with my flag games. They both are nicely educational for children and adults alike, and they are pleasantly colorful. Furthermore they made a reasonably challenging graphics programming task. These games have brought me most of the feedback (positive, I am pleased to say) that I have received from the gentle users on my games programs. An Ega color video adapter is a necessary minimum for playing these games. A tip: I you dont like to play, but would like to study the flags, use FLAGQUIZ /d. The flags are displayed to you in an alphabetical order. The alphabetical order is new feature in FLAGQUIZ. I have this option because some users like me may appreciate games in general, but do not have the time or the inclination to play. Sun 3-May-92: I have updated the collection of my Frequently Asked Questions for UseNet news newcomers, FTP users, MsDos shareware and PD program users, and Turbo Pascal programmers. It is available as garbo.uwasa.fi:/pc/ts/tsfaq27b.zip. This is a maintenance update bringing quite a few items up to the current status. No new items have been added, but there are some useful new pointers in the old items. Sat 18-Apr-92: I have updated my collection of QEdit editor macros and key definitions to be garbo.uwasa.fi:/pc/ts/tsqed16.zip. I added one macro to scroll the text in two windows up or down in synchronization. Like for the rest of the macros the need for it came out of practice. To use these macros you naturally must be using SemWare's QEdit shareware editor, version 2.10 or later. It is available as garbo.uwasa.fi:/pc/editor/qedit215.zip. You will also need the macro translator garbo.uwasa.fi:/pc/editor/qmac215.zip. Tue 14-Apr-92: I have updated my collection of useful batch files and tricks making it garbo.uwasa.fi:/pc/ts/tsbat35.zip. Sometimes there are situations where a batch file needs to call another in order to perform its task. There is a genuinely clever trick in Wolverton & Gooking, Supercharging MsDos, Microsoft Press, 1991, p. 102 to circumvent the need of having a separate batch by making a batch call itself. I have modified the solution a bit and rewritten my SAFEDEL.BAT (safe delete of files) so that it no longer needs the auxiliary SAFEDEL1.BAT batch. Likewise the SHOW.BAT (wildcard multifile type command) has been updated and the auxiliary file SHOW1.BAT has been deleted. The same book shows how to push the current directory without the need of resident programs, auxiliary executables, or environment variables. On the other hand this is less general than my PUSHDIRE.BAT which uses an auxiliary executable and environment variables. PUSHIT.BAT based on the idea from Wolverton & Gooking does not work between different drives. It have added this file to tsbat35.zip along with its auxiliary text file CD.AUX. Sat 28-Mar-92: I have updated my TODAY.EXE. It is a utility that shows your files that have been created today (have their date stamp today). It optionally shows your files that have been created nn days back (exactly nn days, or since, as you choose) also traversing (optionally) all the subdirectories. There was a directory mask error kindly reported to me by landers@ibm150.mgmt.purdue.edu (Christopher Landers). Thanks, user feedback is welcome and useful. TODAY now correctly handles masks like TODAY . and TODAY D: also when used from another drive like C:. TODAY.EXE is part of my consequently updated garbo.uwasa.fi:/pc/ts/tsutld19.zip package. Sat 28-Mar-92: Updated my collection of QEdit editor macros and utilities. It is now garbo.uwasa.fi:/pc/ts/tsqed15.zip. I added the rot13.qma macro to rotate and unrotate a block of text. Rot13 rotation is often used as an elementary encryption technique for public but somehow sensitive texts. Sat 28-Mar-92: I have updated my third filter collection making it garbo.uwasa.fi:/pc/ts/tsfltc13.zip by adding ROT13.EXE which rotates ascii text by 13 positions. This is often used as an elementary encryption technique for public but somehow sensitive texts. ROT13.EXE works both ways because the method is transitive. It rotates unrotated text and unrotates rotated text. My version of ROT13.EXE is "clever" in the sense that it can detect redirection, and thus if you don't direct any input to it, it will give you the instructions. Sat 21-Mar-92: Updated garbo.uwasa.fi:/pc/ts/vaasa2.inf which gives some history of the University of Vaasa. Sat 21-Mar-92: Updated TOUCH.EXE for altering the date stamps of files. The month can now be also given as a three letters. Thus examples of acceptable dates include 21-3-92 21-Mar-92 21/03/1992 21.3.92 today oldate and /fReferenceFile. This file is part of the thus updated garbo.uwasa.fi:/pc/ts/tsutlb20.zip utility collection. Sat 21-Mar-92: I have updated my CMOS.EXE program which displays information from your battery backupped CMOS memory. - Made the CMOS clock display continuous. - Omitted the weekday information because it has turned out to be volatile. - Added the display of whether a math coprocessor is installed according to the CMOS configuration information. I have consequently released an updated version of my fifth utility collection. It is now garbo.uwasa.fi:/pc/ts/tsutle17.zip. Sat 21-Mar-92: I have updated my collection of useful batch files and tricks making it garbo.uwasa.fi:/pc/ts/tsbat34.zip. - Added EXE2ZIP for converting self-extracting archives into zippped archives. Requires that you have PKZIP.EXE and dive R: available. I have ramdisk on drive R:, and if you do not you have to either customize the batch or use a suitable drive substitution like SUBST R: C:\ - Updated REZIP.BAT which removes authenticity -AV labels for zippped archives. (Such a batch is useful, since PKWare's authenticity code was broken and some BBSes put in their own -AV labels). If errors are reported by pkzip, the user is asked for whether s/he wants to go on nevertheless. - Added a WILD.BAT to perform wildcarded operations with commands which ordinarily do not allow wildcards. Example of WILD.BAT usage: WILD *.txt type. The idea for my own version comes a from a note in a Finnish computer journal (Mikro PC, March 1992, Aimo Matikainen). Sat 21-Mar-92: I have updated my collection of puns, and it is now garbo.uwasa.fi:/pc/ts/tspun11.zip. Mon 16-Mar-92: I am often asked for information about Finland, Vaasa, University of Vaasa, our faculty, and even about myself. I have updated garbo.uwasa.fi:/pc/ts/vaasa.inf which contains such information. The said file is also included in the new tsfaq27.zip release of my Frequently Asked Questions which I just announced. Sun 15-Mar-92: I have updated the collection of my Frequently Asked Questions for UseNet news newcomers, FTP users, MsDos shareware and PD program users, and Turbo Pascal programmers. It is available as garbo.uwasa.fi:/pc/ts/tsfaq27.zip. I have added two new files UPLOAD.INF and UPTEXT.INF which give information on how to upload to garbo.uwasa.fi MsDos archives, and how to write the upload announcement. There is one new item in the Turbo Pascal section (storing and restoring the screen). I have updated the VAASA.INF file giving information about Finland, Vaasa, University of Vaasa, our faculty, and yours truly. I have made some updating of a few of the old items. Mon 2-Mar-92: The modern PCs have a battery backupped CMOS memory which includes the backed-up clock to store the date and the time, and configuration information. This battery usually lasts for several years, but eventually it will loose power. The current (pardon the pun) state of the battery can be checked by programming since as long as the battery is giving power is a certain bit in CMOS memory is on, and if the battery looses power the bit will be off. I have written a program CMOSALAR.EXE to read this bit. If the battery bit is off, an alarm will be sounded. One option is to put it in your autoexec.bat where it will act as a sentinel for you. Another similar program added is CMOS.EXE which displays information from your battery backupped CMOS memory. A color video adapter, and at least an AT PC is required. CMOSALAR.EXE and CMOS.EXE are part of my hence updated fifth utility collection garbo.uwasa.fi:/pc/ts/tsutle16.zip. The other three programs in the package are MSPLIT.EXE Split Unix elm email messages, for UseNet users PESTIKID.EXE Keep your computer to yourself, lock keyboard TDEL.EXE Timo's safe recursive delete for files & dirs PESTIKID.EXE has a small, invisible correction. The other two have not been changed. Sat 22-Feb-92: I have updated my collection of useful batch files making it garbo.uwasa.fi:/pc/ts/tsbat33.zip: - Added PROMPT.TXT tips on prompt usages with ansi. - Added REPLY.BAT to demonstrate how batch files can after all accept input without any auxiliary programs (like the common ask.exe). This is not a widely know trick, although I cannot claim true originality. It utilizes environment variables, and is somewhat awkward, but shows that it can be done. Get this package even if you do not need the specific batches. There is much to learn from them about MsDos and batch usages. Many Frequently Asked MsDos Questions (FAQs) are implicitly answered by looking at these files. The sometimes spurned MsDos batches are much more powerful and flexible than usually believed. But you have to know how to get the best mileage out of them. Mon 17-Feb-92: I have updated the collection of my Frequently Asked Questions for UseNet news newcomers, FTP users, MsDos shareware and PD program users, and Turbo Pascal programmers. It is available as garbo.uwasa.fi:/pc/ts/tsfaq26.zip. I have updated some of the items and added two items to the Turbo Pascal section. If you find this collection interesting, there is more, mostly garbo.uwasa.fi MsDos archive site related material in /pc/pd2/post*.txt files (* = 01,...,07 currently). Sun 9-Feb-92: If you happened to like 75890 Feb 4 23:23 garbo.uwasa.fi:/pc/ts/tsbat32.zip there is an interesting enhancement by ilya@math.mit.edu to UNPACK.BAT for unpacking, viewing, or testing any archive type (.arc, .zip, .zoo etc). Enhancements: 1. The first parameter can be an option 2. The extensions are allowed (look into the trick, I have never seen it elsewhere) 3. Any amount of environment is allowed (Yes, today I debugged this part) 4. Wildcards allowed! unpack /v * Ilya's version is available in the garbo.uwasa.fi:/pc/pd2/post07.txt garbo feedback and information file. Sat 8-Feb-92: I have updated my Turbo Pascal units collection to be garbo.uwasa.fi:/pc/ts/tspa2740.zip garbo.uwasa.fi:/pc/ts/tspa2750.zip garbo.uwasa.fi:/pc/ts/tspa2755.zip garbo.uwasa.fi:/pc/ts/tspa2760.zip This time I have introduced (parent) environment related routines in a new TSUNTENV.TPU unit ENVSIZFN Get the size of the parent environment ENVUSEFN Get the current use of the parent environment ENVADDFN Get the starting segment address of the parent environment SETENV Set a parent environment variable (as MsDos SET var=value) SHOWENV Write the parent environment table on stdout (for testing) Setting a parent environment varaible from within a Turbo Pascal program can be considered reasonably advanced programming I guess, and I cannot be absolutely sure that I got it right. But here goes anyway. The key to the task is obtaining the starting address of the parent environment, and knowing that the format of the parent environment table in memory is name=value1name=value2...name=valueN. PC Magazine Vol. 11, No. 1, pp. 425-427 has useful code which can be adapted to find out the relevant segment address. Should you look at that article, the crucial variable to get at in there is EnvSeg. The rest then follows. What a delightfully complicated challenge. Oh yes, since I know that some users will be asking for the source code. I am happy to share this reference, and make my .TPU collection publicly available, but I have chosen not to distribute by source codes. In fact I have not added the unit to the tspas2740.zip TP 4.0 version TPUs, but I have updated it nevertheless to avoid confusion with the version numbers. Tue 4-Feb-92: I have again updated my collection of useful batch files. It is now garbo.uwasa.fi:/pc/ts/tsbat32.zip. Some of the batches do not allow wildcards in file names given to them as parameters. There was a clever for-loop trick in the PC Magazine Vol 11 No 1 on page 364 to check whether the file name is wildcarded. Even if innovative the PC Magazine's solution uses unnecessarily an environment variable for the cheking. But the article got me thinking that I should find a better solution and put in a check for wildcards to warn the user in those of my bacthes which do not allow wildcards. Consequently I have updated the following batches in my collection: ARC2ZIP.BAT Single .arc to .zip with comment REZIP.BAT Remove zip authenticity labels UNPACK.BAT Unpack-test-view any archivetype ZOO2ZIPH.BAT Single .zoo to .zip on harddisk Sat 1-Feb-92: I have updated my average speed & time calculator JOG.EXE. A user (Hamish Whittal cchw@hippo.ru.ac.za) suggested that the one kilometer intervalling option is insufficient. I have consequently extended the usage to be JOG DistanceKm Time [ComparisonDistance] [/i[IntervalMeters]] include Interval schedule -+ The jog program is part of me hence updated package garbo.uwasa.fi:/pc/ts/tsjog13.zip. Thu 30-Jan-92: I have updated to garbo.uwasa.fi:/pc/ts/tsfltc12.zip. It is a futher collection of my filters that you can customize yourself. The filter DETAB.EXE for filtering tabs now has the following enhancements: - A new optional keep switch (/k) to make the date/time stamp of the destination file the same as that of the source text file. - To allow the source text file and the destination file be the same. In other words the programs can now make the conversion without forcing you to produce new files with names different from the original. - The programs first test whether the source file is a proper text file with MsDos #13#10 eolns, no special characters (#0..#6, #8, #11, #14..#25, #28..#31), and no lines exceeding 254 characters in length. If not the conversion will not be attempted. Thu 30-Jan-92: I have updated to garbo.uwasa.fi:/pc/ts/tsfltb15.zip. It is a collection of filters that you can customize yourself. The filter FILTXT.EXE for text files and FILBIN.EXE for binary files now have the following enhancements: - A new optional keep switch (/k) to make the date/time stamp of the destination file the same as that of the source text file. - To allow the source text file and the destination file be the same. In other words the programs can now make the conversion without forcing you to produce new files with names different from the original. - The programs first test whether the source file is a proper text file with MsDos #13#10 eolns, no special characters (#0..#6, #8, #11, #14..#25, #28..#31), and no lines exceeding 254 characters in length. If not the conversion will not be attempted. This naturally goes for FILTXT.EXE only. Wed 29-Jan-92: I have updated to garbo.uwasa.fi:/pc/ts/tsfilt19.zip. It is a collection of filters for text files. Among others it includes programs for converting text files from 8-bit ascii to 7-bit ascii with Scandinavian conventions. The programs are TOASC.EXE and TOASCI.EXE. There is also a Scandinavian conversion TOIBM.EXE from 7-bit ascii to 8-bit ascii. The fourth update is LOGFILT.EXE to filter noise from telecommunication log files. These programs have now the following enhancements: - A new optional keep switch (/k) to make the date/time stamp of the destination file the same as that of the source text file. - To allow the source text file and the destination file be the same. In other words the programs can now make the conversion without forcing you to produce new files with names different from the original. - The programs first test whether the source file is a proper text file with MsDos #13#10 eolns, no special characters (#0..#6, #8, #11, #14..#25, #28..#31), and no lines exceeding 254 characters in length. If not the conversion will not be attempted. Some examples of the current usages: TOASC MyText.txt /k („ -> }, ” -> |, etc) TOASC MyText.txt conv.txt TOASC MyText con /m Sat 25-Jan-92: I have updated my collection of useful batch files. It is now garbo.uwasa.fi:/pc/ts/tsbat31.zip and contains 49 batch files. It adds - boot.bat for convenient selective booting from alternative configurations. It is often believed that complicated programs are needed for booting with alternative configurations. The boot.bat batch shows that this need not be the case at all. - path.txt to explain how to easily circumvent the 127 character limit on the path length. - showtime.bat to show both the date and the time without the hassle of beating enter to death. - mve.bat to move file(s) to another directory. Sun 19-Jan-92: I have updated my collection of TSR (Terminate and Stay Resident) programs to be garbo.uwasa.fi:/pc/ts/tstsr12.zip. I have added a noboot.exe which turns off the Alt-Ctrl-Del warm boot. I know that there must be other similar facilities around, perhaps even much better. Here my point is not only to make one more available to our downloaders, but I wanted to look at this reasonably advanced Turbo Pascal programming problem myself. Quite a plateful. The program has to replace the old keyboard interrupt handler to intercept the keystrokes already at the keyboard port, chain the old keyboard interrupt, check the keyboard buffer status, assure that the program is not yet loaded to avoid a second copy in memory, make the program resident in memory, assure a sufficient but non-bloated stack, etc, etc. I can just hope I got all of it right. If you use this, or any other TSR utilities for that matter, you are well advised to get garbo.uwasa.fi:/pc/memutil/tsrcom33.zip (or whichever version number is current) memory management tools by Turbo Power Software. Sat 18-Jan-92: I have updated my PESTIKID.EXE program which locks the keyboard (unless the user knows the code to unlock it). The following features have been added: - The alt-ctrl-del combination is inactivated for the time the program is running. Thus the pesty user cannot beat PESTIKID.EXE by the simple alt-ctrl-del warm boot. The user either has to know the unlock code or reset your PC physically. - There is an optional message that is flashed to the screen if any other key is pressed except the unlock code. The message is invoked by a new /w (warning word) switch. You can choose the word yourself, or if you just use /w, "Hands off" will be flashed as the default. The flash is given in LightRed on Blue. The screen is restored to blank Black after the flash. - The cursor can be turned off for the duration of the program. The new /c switch is for turning the cursor off. - Improved a bit the error messages if incorrect parameters are given in the program call PESTIKID.EXE is a part of my consequently updated fifth utility collection garbo.uwasa.fi:/pc/ts/tsutle15.zip. The other two programs in the package are MSPLIT.EXE Split Unix elm email messages TDEL.EXE Timo's safe recursive delete but they have not been changed. Mon 6-Jan-92: I have updated my Turbo Pascal units collection to be garbo.uwasa.fi:/pc/ts/tspa2640.zip garbo.uwasa.fi:/pc/ts/tspa2650.zip garbo.uwasa.fi:/pc/ts/tspa2655.zip garbo.uwasa.fi:/pc/ts/tspa2660.zip by transferring the following routines from TSUNTH.TPU unit to a new TSUNTJ.TPU unit COPYFILE Copy a file from within a Turbo Pascal program OPENEDFN Is an assigned textfile still open or not ISDIRFN Is a name a directory or not PIPEDIFN Is the standard input from redirection PIPEDNFN Is the standard output redirected to nul PIPEDOFN Is the standard output redirected by adding the following routines to TSUNTJ.TPU INTRADDR Show the memory address to which the interrupt points INTRLOCA Show the memory address where the interrupt is located and by adding the following routines to TSUNTH.TPU ISMOUSFN A simple true/true false test of mouse available MOUSTAFN Status (type byte) of the mouse hardware and driver My thanks are due to Duncan Murdoch in particular who first noted a potential error in the early version of my mouse functions. The first of the sets garbo.uwasa.fi:/pc/ts/tspa2640.zip contains a compatibility unit TSUNT45.TPU for Turbo Pascal 4.0. It adds routines that the later versions have, but which are missing in version 4.0. I have added GetVerify Get the status of the MsDos write verify flag SetVerify Set the status of the MsDos write verify flag GetCBreak Get the state of Ctr-Break checking in DOS SetCBreak Set state of Ctr-Break checking in DOS Sun 5-Jan-92: I have updated the collection of my Frequently Asked Questions for UseNet news newcomers, FTP users, MsDos shareware and PD program users, and Turbo Pascal programmers. It is available as garbo.uwasa.fi:/pc/ts/tsfaq25.zip. The collection is already so large that I have only added one new item (it concerns the columns width of news postings). I have also updated and rewritten some of the items. Especially if you are new to comp.binaries.ibm.pc.archives, news.newusers.questions, and/or comp.lang.pascal I trust that you will benefit from this collection. If you find this collection interesting, there is more, mostly garbo.uwasa.fi MsDos archive site related material in /pc/pd2/post##.txt files (## = 01,...,06 currently). Wed 1-Jan-92: Updated my collection of QEdit editor macros and utilities to be garbo.uwasa.fi:/pc/ts/tsqed14.zip. This is a minor update that corrects a bug in the DATE.QMA macro for inserting the date with the month given as letters instead of numbers. The macro confused the month and the day number for certain dates. Wed 1-Jan-92: The 1991's garbo.uwasa.fi news concerning the files in the /pc/ts directory (the directory of Timo Salmi's packages) has been moved to 0news91.ts.