
			 Ŀ
			   Programs Included With The Undocumented PC  
			 


   Diagnostic and Analysis Programs                                     

CMOSVIEW - Shows the current contents of CMOS memory, with brief 
descriptions. Also checks for extended CMOS memory, and displays
contents if found.  (includes source code)

DISKTEST - Read sectors from the specified disk to test how the BIOS 
responds.  The test looks for problems when more than one track is read 
at a time, using the BIOS service interrupt 13h.  Specify the disk 
number on the command line; 0 and 1 for diskette drives, and 80 and 81 
for hard disk drives.  (includes source code)

IOSPY - A TSR to monitor specific I/O port status on screen while 
other programs are running.  Supports monitoring multiple I/O ports 
at the same time, alerts on value changes, and many other options. 

SERSLOW - Routine used help solve logic and design problems with 
serial port software.  (includes source code)

SSPY - This TSR is a customized subset of IOSPY for monitoring 
serial port modem status lines.  A great help for debugging serial 
interface problems.  (includes source code)

TIMEVENT - Precisely monitor the actual time of software routines, 
portions of code, interrupt latency, and hardware responses.  
Events timing resolution is about one microsecond.  Testcase 
program demonstrates how TIMEVENT is used.  (includes source code) 

UNPC - Incorporates many of the programs supplied with The 
Undocumented PC book.  View source code and run various utilities. 
Also provides an advanced multiple I/O port viewer to monitor and 
determine possible conflicts and I/O ports in use. 


   Detection Utilities                                                  

CPURDMSR - Locates and displays any registers defined by the Read 
Machine Specific Register instruction.  Program will check all 4 
billion possible register addresses. (includes source code)

CPURDTSC - This routine continuously displays the values from the 
undocumented Pentium Time Stamp Counter until Ctrl-Break is pressed. 
(includes source code)

CPUTEST - Checks all unspecified opcodes not documented or not 
already tested by CPUUNDOC.  Used to detect new hidden instructions.
(includes source code)

CPUTYPE - Identifies the exact CPU, math coprocessor, processor 
speed, cache size, and other CPU information. (includes source code)

CPUUNDOC - Tests all "known" undocumented instructions for the 
specific CPU.  Shows result of test on each instruction.  (includes 
source code)

KEYBIOS - Checks the BIOS to see if it support extended keyboard
services.  (includes source code)

MAX_XMIT and MAX_RECV - These pair of programs are used together
on two machines to see what the maximum serial port baud rate can be 
reliably transferred, up to 115,000 baud! (includes source code)

PRNTYPE - Scans the parallel ports to locate any active ports and 
check if the active parallel ports support undocumented extended 
functions. (includes source code)

SERTYPE - Scans the serial ports to locate any active ports and 
identify specific UART chips present. (includes source code)

SYSTYPE - Determine the system, PC, XT, AT, EISA, or MCA and display 
other data about the system. (includes source code)


   Demonstration Utilities                                              

BEEPx - Shows how to access interrupts and I/O ports from Microsoft C 
or Borland C.  Program simply issues a 2 second beep using the 
hardware timer.  Also shows the large overhead C compilers foist on 
users as compared with assembly. (includes source code). 

CTRL2CAP - Shows how keyboard keys can be ignored or changed.  
This example TSR swaps the functions of the Caps-Lock key and the 
Ctrl key. (includes source code) 

DMA_READ - Subroutine shows how to perform a DMA transfer.  
(includes source code)

IODELAY - Demonstrates the IODELAY subroutine, used to ensure a 
set delay between successive port accesses.  (includes source code)

IRQREDIR - Shows how the interrupt controller can be reprogrammed 
for improved performance on some systems. (includes source code) 

KEYVIEW - Shows the actual keyboard codes for all keys, prior to 
translation into scan codes.  Helpful in understanding how to 
access the keyboard controller directly, change the keyboard LEDs, 
and processing of undocumented keyboard combinations. (includes 
source code) 

PRNASCII - Shows how to intercept characters sent to the printer.  
This TSR converts all non ASCII characters sent to the printer into 
standard ASCII characters.  Works with Print-Screen and all BIOS 
print functions. (includes source code) 

PRNSWAP - Swaps PRN1 and PRN2.  Not a TSR.  (includes source code)

TMRFAST - Demonstrates how the system timer can be boosted to get a 
much higher interrupt rate for your application.  This TSR puts up
a white overstrike character on top of a changing green character, 
with a black background. (includes source code)


   Other Files                                                          

UNDOCPC.INC - This is a collection of common equates and simple 
macros used in the source code routines provided.

UNPCLIST.TXT - This list of file descriptions.

UNPCNOTE.TXT - Any last minute notes.

VCOM.MSG - File used by UNPC for information.


