Misc files and DOS utilities

You may download any of these files and use them as you would like, as long as you don't do it for profit. All I ask is that you send me your comments and error findings so that I may fix the errors and possibly post them (with code) on my home page.

* Please see legal notice for info on copyrights and legal information.

CDDOOR.ASM (3k), CDDOOR.PAS (2k), and CDDOOR.C (2k) - 09 Dec 2000
- A utility to open or close the CD tray in a batch file. See sources for usage.

TOLOW.ZIP - 2k bytes - 23 Jan 2010 - version 1.04a
- A utility to change all long filenames to lower case. Must be in a DOS session under Win9x/WinXP. Will not work in True DOS.
- - Only changes filenames in current directory.
- - Use TOLOW /? to get version.
- - Use TOLOW /d to change all directory names in current directory also. (lower case D)
- - One parameter at a time and the parameter must be the first item on the line. i.e: TOLOW /d. No extra spaces between TOLOW and /?
- - Includes assembly source.

QBPTCH.ZIP - 2,230 bytes - 04 June 1998 - version 1.00b
- A patch to make QB4.5 save all source files as Text files rather than 'QuickSave' files. (includes assembly source code)

SHFTSTAT.ZIP - 1,434 bytes - 24 Jan 1998 - version 1.00b
- Routines callable from a batch file or directly on the command line to turn on or off the num lock and the caps lock states. (includes assembly source for each)

ISEMPTY.ZIP - 2,162 bytes - 25 Sept 1997 - version 1.00b
- a file callable from a DOS batch file to see if a file is a null sized file.
It is included here to show how to write and call routines from batch files. It uses the environment table to pass arguments to the routine and the RC (ERRORLEVEL) to return variables. (includes assembly and batch script source)

FINDIT.COM - 756 bytes - 01 Aug 1998 - version 1.14b
- A find file util for DOS. To use it, type FINDIT filename.ext at the DOS prompt. Wildcards are accepted.
- Thanks to D. Bächli for catching a bug that had to do with the directory and the read-only file attributes.

EXE2COM.COM - 2,390 bytes - 10 Mar 2001 - version 1.16
- A replacement for the forgotten MS-DOS EXE2BIN, but with better error checking and more file information. Now shows actual size of COM/BIN size rather than size + PSP (100h)

NORMAL.COM - 245 bytes - version 1.10b
- If you are tired of exiting a DOS app and it leaves the cursor screwy, or the color is wrong, etc., then run this small utility to set the color to white on black, reset the cursor, turn off the internal speaker, and other things like that.

INT21.OBJ - 287 bytes
- Allows you to make an assembler interrupt call within QuickBasic
- AX% - ES% are as if you where in assembly (see note on DS%)
- Flags% takes nothing on entry but returns the flags register.
Note: If you don't use the DS register, make sure you put a -1 as it's value on input

DECLARE SUB Int21 (AX%, BX%, CX%, DX%, SI%, DI%, DS%, ES%, Flags%)

S$ = "Ben Lunt was here$"
AX% = &H900
DX% = SADD(S$)
Int21 AX%, BX%, CX%, DX%, SI%, DI%, DS%, ES%, Flags%

PRTSNGL.ASM - 3,758 bytes
This is a small snip of code to print a single precision, fixed point number to the screen. (fixed to 5 decimal places). Call with EAX holding the fixed point number to print.

This is a small snip of code to see what the bit status of a specified word in memory. I use it for checking the Keyboard word status. (0040:0017h)
It also contains a snip of code to change an unsigned word to an ascii binary string ready for output to this screen.

CLCK.ASM - (20k)
This is a small example of VGA mode 13h screen programming. It has the intent to show how to program in the specified mode, therefore does not contain small or efficient code. It is however quite fast, though probably could be a bit faster.

See CDPlayer for a DOS utility for playing audio CD's.

Please write me with any errors that you may find.