home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Between Heaven & Hell 2
/
BetweenHeavenHell.cdr
/
500
/
491
/
rescmd.doc
< prev
next >
Wrap
Text File
|
1983-08-11
|
4KB
|
81 lines
RESIDENT COMMAND INTERPRETER
John Chapman
844 S. Madison St.
Hinsdale, Illinois 60521
COMPUSERV ID 70205,1217
DISCLAIMER
This modification is provided without warranty of any kind. The
author assumes no liability for failure of this code to perform
in any environment. The user is completely responsible for
determining the applicability of this modification to a
particular environment.
LIMITATIONS
This modification causes the transient portion of COMMAND.COM to
be made resident at system IPL. Re-booting the system with an
unmodified COMMAND.COM is the only way to remove this
modification. This modification alters the starting segment
[paragraph] address available to programs, lowering the amount of
storage available by 4288 bytes [for PC/DOS 1.1 with a normal
load segment address of 02C1]. The starting segment of
COMMAND.COM can be found at location 0000:9E, and should display
[debug] as 0000:009E 2C 01
CONTENTS
This modification, supplied as a BASIC program called
"RESCMD.COM" (Or CLOCKCMD.BAS for realtime clock users) which
will read in an UNMODIFIED DOS 1.1 COMMAND.COM and produce a new
file, "COMMAND.CMD" which has all the mods installed. This set of
modifications alters the IBM Personal Computer DOS command
interpreter (COMMAND.COM) to remain entirely resident, rather
than be half resident and half transient. The whole purpose of
this modification is to suppress 99% of the occurrances of the
refresh of the transient portion. This will remove the
requirement to ALWAYS have a disk with a valid COMMAND.COM in
drive A. This change has been especially useful with multiple
DISKCOPY type activities, and with those application packages
which use all of memory, including the top 4880 bytes where the
transient COMMAND.COM resides.
The modification merely omits the relocation of the transient
portion of COMMAND.COM, and sets the first free paragraph address
to be the area behind the transient routines, rather than the
small "resident" portion.
1
PC/DOS Initialization Overview
The IBM Personal Computer DOS is brought in from disk by the
bootstrap loader read from track 0 of drive A by the ROM routines
after the initial hardware tests are performed at power-on, and
subsequently when ALT-CTRL-DEL re-boot is requested. In both
cases, the following sequence occurs:
1) The "boot" program is read from track 0.
2) It reads IBMBIO.COM from a specific location
3) IBMBIO is given control and builds the environmental
control blocks, initializes peripherals, and then
reads IBMDOS.COM from its specific location on disk
4) IBMDOS is passed control. After initializing the
remainder of the operating system, IBMDOS loads
the COMMAND.COM file [the command interpreter], and
passes it control
5) The command interpreter immediately relocates all of the
main line code for command prompting, parsing, and the
code which supports the resident commands to the high end
of memory, where it can be more easily destroyed by
wandering programs.
6) Resident COMMAND.COM will now [pretend to] detect a
checksum error in the transient portion of itself,
immediately causing a Re-load from disk, thus setting
the tone for a long and tedious interaction, interrupted
frequently by disk I/O and requests for a DOS disk
in the default drive.
REAL-TIME CLOCK VERSION
An alternate version of the modification is supplied as
"CLOCKCMD.BAS". This version REQUIRES THE PRESENCE OF A CLOCK.
The DOS DATE and TIME commands ARE DISABLED by this version,
requiring the user to employ the software provided with the clock
card to access date and time. The space formerly used by DATE
and time is reused for three new RESIDENT commands, BEEP, PAGE,
and CLS. PAGE causes the printer (LPT1:) to skip to top-of form.
CLS clears the active display. BEEP causes a warbling tone to be
produced.