Contents of the CBOOT.DOC file
CBOOT.COM - CBOOT DeLuxe Version 4.0 - Beta version, March 1990
"Controlled Chaos Rebooter"
This program is my own working copy of a program that I wrote back
in 1983 on a floppy based system. CBOOT was the first memory
resident program that I ever wrote. What it did was allow you to
break out of misbehaved programs. When I first started writing
assembly language I had lots of misbehaved programs. Even now I
have a good need for this program.
The program is a memory resident. It takes over the keyboard
interrupt rather aggressively and watches for a hot key
combination. The menu that comes up will allow you to kill the
currently running program, restore the video mode or make an
attempt at recovering the DOS memory map. (MALLOC).
CBOOT can recover from many "locked" situations. CBOOT cannot
recover if memory is completely trashed (which may also include
CBOOT). CBOOT will not be able to respond if the interrupts are
turned off because the program will not be able to respond to
Looking back on the old program, I realize that, although my
programming technique has changed, my approach to a problem has
not changed much. This program mostly just adds some new experience
to the old one. It also adds a few interesting odd routines that
I have accumulated over the years.
CBOOT is a "Power User" utility and is not for the coward. You can
screw up something with CBOOT very easily. Rebooting or crashing
out of a program is not always the best thing to do. DBASE, for
instance may not have updated the current database. Word processors
may not have saved the current document. It's main use is to break
out of badly behaved bugs in programs under development.
What I need from you, gentle user, is a bug report. I need to know
if CBOOT works on your machine. If CBOOT locks your machine, try
running without keyboard enhancers and see if it still works. I
know, for instance, that CBOOT and PC-KWIK's KBD program conflict.
Leave a comment to the sysop at PC-Rockland BBS (914) 353-2157. The
message will get to me. This is the only way that I will respond.
Do not write to me or call me voice. I am hardly ever home. Since
I make little or no money off of CBOOT, I have not set up any
method, other than the local BBS, for providing updates. Please
do not ask me to mail anything. Download from the BBS instead.
I also need to know what features are needed. Keep in mind that
many may not be possible in the small size of a TSR.
The easy way is to type CBOOT from the command line. Or put it into
Use Alt-Left Shift-B to start up CBOOT.
CBOOT is customizeable from the command line. These are the options
that I am pretty sure work:
Use CBOOT option1 option2 option3 ....
to start up CBOOT. Options can be in any order, but must be
separated by at least one space.
NOCRIT - Don't install critical error handler. CBOOT will
normally replace the "ABORT, RETRY IGNORE" message
with a box that gives a little more information.
Some programs work better if they handle the
situation themselves. Some programs do not use DOS
to access the Critical Error Vector. CBOOT will have
no affect on them.
NODIV - Don't install divide overflow handler. CBOOT traps
divide overflow errors and allows you to continue
with the program, or else you can use CBOOT's menu
SWAP12 - swap LPT1 and LPT2 ports.
SWAP23 - swap LPT2 and LPT3 ports.
SWAP13 - swap LPT1 and LPT3 ports.
CBOOT allows swapping of ports. This is not simply
replacing port addresses. This is true redirection
which can be very useful on networks.
TURBO - Enter Turbo mode on Turbo XT's. This does not work
for turbo AT's.
FIXBW - Trap attempts to use color for CGA BW screens. Some
color combinations are not readable on composite or
LCD screens. This option will cause CBOOT to trap
mode changes to color CGA and change them to BW80
mode. Use dos's MODE BW80 at some time to get the
current screen mode to BW mode, as CBOOT will not
change the current mode, only new attempts to change
BLOCK - Make a block cursor (for laptops). This reforms the
cursor to a block cursor every time a key is struck.
Programs such as Word Perfect work very hard to keep
the small cursor. CBOOT works hard to make the
NONMI - Do not install parity error trap. CBOOT will trap
parity errors by default and search for the
offending chip. This may be a better alternative to
the bios routine which shuts down the machine. Use
NONMI to turn off CBOOT's parity trap.
REFRSH - Recalculate memory refresh rate to increase speed.
This can effectively increase performance of a PC
up to 10%. Some networks crash when the refresh rate
HSCAN=xx - Change the hot key scan code. xx is two hex digits.
HSHIFT=x - Change the hot key shift combination. Use the
program DKEY.COM to look for good combinations of
shift keys and scan codes.
UNINST - Uninstall CBOOT, freeing up memory and returning to
state when CBOOT was first invoked. If other TSR's
were installed after CBOOT, this will kill them.
But it will not clear out their memory usage.
FIX27 - Free local environment area for TSR's. This saves
at least 160 bytes for every TSR, more if you have
a lot of environment space. There is a very remote
chance that a TSR which uses DOS may become confused
by FIX27. I have not found any program that objects
to this option.
CBOOT Menu items:
Most menu items are numbered. Pressing the number or the function
key corresponding to the number will cause that menu item to
1. Reboot Ctrl Alt Del. This is the same a three finger boot.
if you current program has locked you out of this option
and CBOOT is still responding then you can use this to
restart the computer.
2. Reboot with memory check. Same as choice 1, but goes
through the whole memory check. (386MAX and some other 386
memory managers make it a warm boot).
3. Terminate Current Program. This option should return you
to the DOS prompt.
4. Restore interrupts. Some programs (such as Basica) redirect
interrupts all over the place. Some of these may still
point to the dead program. You may be safe in using this
option to restore the interrupts to the way they were just
after CBOOT finished installing. This will disable any
TSR's installed after CBOOT.
5. Display Interrupts. Shows a list of interrupts as they
currently stand and the entry state of some key registers.
6. Port Control. This is CPORT.COM, an old program that I
wrote 100 years ago. The CPORT menus give important port
information and the ability to control the ports. Serial
ports may be screwy.
7. Rebuild DOS MALLOC map. Sometimes when you leave through
option 3, you get "Cannot load COMMAND.COM, system halted".
Bring up CBOOT and use this option to rebuild the DOS
memory map. Sometimes the magic works, but if your program
stepped real hard on DOS, no amount of magic will bring it
back. Sometimes you don't get much memory back, large
blocks may not be freed.
8. Exit with debug break. This option does an INT 3 just
before an IRET. If you are in DOS DEBUG or similar program,
leaving through this option will allow you to trace your
way back to the program to the point where the hot key was
9. Restore Video Mode. This allows you to go back to text mode
when you are in a graphics mode. My GEM programs hang in
graphics mode. I use this option to get a text screen back.
CBOOT will not appear correctly on a graphics screen. ESC
will return you to the point where you were when the hot
key was pressed.
CBOOT Guarantee: "You get what you pay for". CBOOT is a last resort
and may not work in all circumstances. It is better than nothing,
but there can be no guarantee that CBOOT will do anything
helpful. The PORT CONTROL items may are may not be helpful.
The Price of CBOOT: Free, Zip, Zero, Nada. Use CBOOT to you hearts
content. Do not feel obligated to pay for it. Its a nice idea but
not revolutionary and probably not worth a shareware donation....
There will come a day when CBOOT pulls your behind out of the fire,
and you thank your lucky stars that you had CBOOT in the
AUTOEXEC.BAT. On that day take $15.00 out of your wallet and put
it in an envelope and mail it to:
Keith P. Graham
238 Germonds Road
West Nyack, New York 10994
For the last five years I've averaged about $5.00 per month on a
simple little program. By asking for $15.00 instead of $5.00 I will
triple, over night, my income from shareware.