Debug has been included in every version of MS-DOS as well as Windows. When running any of the debug routines it is recommended that if you have Windows that you exit or shut down to get into a real DOS prompt (unless you're running Windows ME, Windows 2000, Windows XP, or later versions).
Once at the MS- DOS prompt, run through the below example, this example is perfectly fine to run on any PC Computer running MS-DOS / Windows and will not harm anything.
Type debug and press enter.
This should get you to a - (small dash). This is the debug prompt.
At the - type d40:00 and press enter; this will return several lines of information.
After the feedback you will be back to the debug prompt.
To exit out of debug type q and press enter. This will return you back to the MS-DOS prompt.
In some of the below debug routines you will notice that a "g" is typed, then "q". G tells the computer that the code type is not self executing and must be run at this point. If completed, the program will return Program Terminated Normally which indicates you can now quit from the debug program. TESTING PORTS
The below debug routine will check the ports of the computer to allow you to know if ports are being detected or not. Type debug to get to the "-" Type D40:0
You should get several lines; however, the first line is the only important line, which should read the following:
0040:0000 F8 03 F8 02 E8 03 E8 02 - 78 03 78 02 BC 03 F8 03 F8 02 E8 03 E8 02
78 03 78 02 BC 03
COM1 COM2 COM3 COM4
LPT1 LPT2 LPT3
The above graph shows you what the feed back means as far as port, so if you see F8 03, this would be an indication that COM1 is being detected; if you see 00 00, this is an indication that it is not being detected, which could mean that hardware is bad or that it is disabled inCMOS
Once you have finished looking at the information, type Q and press enter to get out of Debug.
CLEAR CMOS
The below debug routine will clear CMOS, BIOS, Passwords, Settings, Viruses, and other items residing in the CMOS. During this process you may get returned characters which are an indication that the string has gone in, if you by chance get ERROR ensure that you have typed the line in correctly, if not retype. Ensure that you do not skip any lines, that it is ALL typed in correctly to help prevent problems. Before running this Debug routine also ensure that you have read the above disclaimer. After typing debug you will get "-" which is were you can begin by typing A and pressing enter. A
MOV AX,0
MOV AX,CX
OUT 70,AL
MOV AX,0
OUT 71,AL
INC CX
CMP CX,100
JB 103
INT 20
G
Q
JOYSTICK TEST
This test will test to see if your Joystick is present or not. Type debug from the DOS prompt once at the "-". Type i201 If you get a FF response attempt hold one of the main buttons on your joystick, and while holding the button down type i201 and see if a different response is given, each button on the joystick should return a different response. However, some special joysticks, such as the Microsoft Sidewinder, which has more than 4-5 buttons, may not return a response for all extra buttons because these buttons are generally controlled through software. If a FF is still given on each of the buttons on the game paddle or joystick, it is a good possibility that either the Joystick and or the Joystick port is bad. If possible, attempt these steps with another known working joystick. However, if you are receiving different responses when pressing and holding the keys on the joystick, the computer hardware is working properly. Type q and press enter to quit out of debug.
ERASING SECTOR 2
Before doing the below routine ensure that you have read our disclaimer and that you're sure that this is safe to do on your hard drive. Some computer hard drive manufacturers may void your warranty if this routine is ran or in some situations this can cause damage to the hard drive. This routine is useful in clearing DDO and unknown partitions. If this routine completes successfully it will erase everything in Sector 2. In the below debug routine, only type what is in bold from line 3 to 9, you will get a response if typed in properly. If you get a response continue to type the bold text as shown below in the below example.
A:\>debug
-FCS:200 400 0
-ACS:100
-xxxx:0100 mov ax,302
-xxxx:0103 mov bx,200
-xxxx:0106 mov cx,2
-xxxx:0109 mov dx, 80
-xxxx:010a int 13
-xxxx:010c int 20
-xxxx:0110
-g
Program terminated normally.
-q
ERASE ALL HDD INFORMATION
This debug routine is used to erase all partition information on the hard disk drive and is only recommend for experienced users or users who are unable to delete the partition information through fdisk. In the below debug routine, only type what is in bold from line 3 to 8, you will get a response if typed in properly. If you get a response continue to type the bold text as shown below in the below example. A:\>debug
-F 200 L1000 0
-A CS:100
xxxx:0100 MOV AX,301
xxxx:0103 MOV BX,200
xxxx:0106 MOV CX,1
xxxx:0109 MOV DX,80
xxxx:010E INT 20
xxxx:0110
-g
Program terminated normally
-q
ERASE HDD AND CLEAR CMOS
Before doing the below routine ensure that you read our disclaimer as well as are sure that this is safe to do on your hard drive. Some computer hard drive manufacturers may void your warranty or this may cause damage to the hard drive when doing the below example. This routine is useful in clearing DDO and removing possible viruses. If this routine completes successfully it will erase everything from your Hard Drive as well as your reset your CMOS values. In the below debug routine, only type what is in bold from line 3 to 17, you will get a response if typed in properly. If you get a response continue to type the bold text as shown below in the below example.
A:\>debug
-fcs:200 400 0
-acs:100
-xxxx:0100 mov ax, 0
-xxxx:0103 mov ax, cx
-xxxx:0105 out 70, al
-xxxx:0107 mov ax, 0
-xxxx:010a out 71,al
-xxxx:010c inc cx
-xxxx:010d cmp cx,100
-xxxx:0111 jb 103
-xxxx:0113 mov ax,302
-xxxx:0116 mov bx,200
-xxxx:0119 mov cx,1
-xxxx:011c mov dx,80
-xxxx:011f int 13
-xxxx:012l int 20
-xxxx:0123
-g
If you are doing this debug routine to clear out a possible virus turn off your computer and wait and turn back on.
-q
Once back at DOS, reboot your computer When your computer comes back on from doing the above you will get an error message as booting up the computer, such as "Invalid Configuration". You must enter CMOS and set the time and date, save, and reboot again. Once rebooted, you will then need to run fdisk and recreate the partitions. Once created, you will then need to format the hard drive and proceed as normal.
DISCHARGE OLD LAPTOP BATTERIES
The below debug routine is used for older laptop batteries (i.e. batteries made from 1990-1992), we do not recommend using this routine on any newer laptop batteries or any NiMH batteries N DPDISCHG.COM
A
MOV DX,01E8
MOV AL,F9
OUT DX,AL
INT 20
RCX
10
W
Q
REBOOT YOUR COMPUTER
Implement this debug routine to reboot your computer. DEBUG E 40:72 34 12
RCS
FFFF
RIP
0000
G To create a batch file that reboots your computer without having to type the above command each time, use the below example. GOTO BEGIN
E 40:72 34 12
RCS
FFFF
RIP
0000
G
:BEGIN
DEBUG < REBOOT.BAT CREATE A SLEEP FILE This file allows your computer to sleep for a specified amount of time. This file is not dangerous in any way; if typed improperly, more than likely the file will just not work. Type Debug You should get a "-" begin typing the below information; after each line you may get a response, do not press enter and type the next line after the response. N SLEEP.COM A 100 MOV SI,0082 MOV AX,[SI] XCHG AH,AL XOR AX,3030 MOV BL,AL MOV AL,0A MUL AH ADD AX,BX MOV SI,AX MOV AH,2C INT 21 MOV BL,DH MOV AX,SI AAM OR AX,3030 XCHG AH,AL MOV [0160],AX MOV AH,09 MOV DX,0160 INT 21 MOV AH,06 MOV DL,FF INT 21 JZ 014C OR AL,AL JNZ 013F MOV AH,08 INT 21 MOV AL,FF MOV DX,016C PUSH AX MOV AH,09 INT 21 POP AX MOV AH,4C INT 21 MOV AH,2C INT 21 CMP BL,DH JZ 012D MOV BL,DH DEC SI JNZ 011A SUB AL,AL MOV DX,016C JMP 0142 DB "XX SECONDS", D, 24 DB " ", D, A, 24 RCX 79 W Q Tip: You may cut and paste the above test into a notepad document and save the file with a .scr extension. Once saved from DOS, type debug < name of scrSLEEP.COM. which should create the file; should be created CHECK BIOS DATE The below debug routine is to check the date of your BIOS. All BIOS dates on PC compatible computers is stored at memory address FFFF5h. To display the date of your BIOS do the following: At the C:\> type debug - d FFFF:5 L 8 After typing the above command you should receive a string similar to: FFFF:0000 30 34 2F-33 30 2F 39 38 4/30/98 The 4/30/98 would be the date of your computer BIOS.
VIDEO CARD TYPE
The below debug routine will list the type of video card within your computer. This is an excellent way of determining the chipset on the card or the card within your computer without opening the computer. At the C:\> type debug -d c000:0040 After typing the above command you should receive several lines of text similar to: C000:0040
00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00
................
C000:0050
E9 63 7B 00 B4 10 49 27 - E9 FE 2B E9 F7 2B 50 4D
.c{...I'..+..+PM
C000:0060
49 44 58 00 5B 00 00 00 - 00 A0 00 B0 00 B8 00 C0
IDX.[...........
C000:0070
00 5B 53 54 42 20 6E 56 - 49 44 49 41 20 54 4E 54
.[STB nVIDIA TNT
C000:0080
20 76 65 72 2E 20 31 2E - 31 30 20 0D 0A 00 1B 43
ver. 1.10 ....C
C000:0090
6F 70 79 72 69 67 68 74 - 28 43 29 31 39 39 38 20
opyright(C)1998
C000:00A0
53 54 42 20 53 79 73 74 - 65 6D 73 20 49 6E 63 0D
STB Systems Inc.
C000:00B0
0A 00 22 6C 2C 0A 01 00 - C3 50 24 7F E8 60 36 58
.."1,....P$..'6X
C000:0040
00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00
................
C000:0050
E9 63 7B 00 B4 10 49 27 - E9 FE 2B E9 F7 2B 50 4D
.c{...I'..+..+PM
C000:0060
49 44 58 00 5B 00 00 00 - 00 A0 00 B0 00 B8 00 C0
IDX.[...........
C000:0070
00 5B 53 54 42 20 6E 56 - 49 44 49 41 20 54 4E 54
.[STB nVIDIA TNT
C000:0080
20 76 65 72 2E 20 31 2E - 31 30 20 0D 0A 00 1B 43
ver. 1.10 ....C
C000:0090
6F 70 79 72 69 67 68 74 - 28 43 29 31 39 39 38 20
opyright(C)1998
C000:00A0
53 54 42 20 53 79 73 74 - 65 6D 73 20 49 6E 63 0D
STB Systems Inc.
C000:00B0
0A 00 22 6C 2C 0A 01 00 - C3 50 24 7F E8 60 36 58
.."1,....P$..'6X
As you can pick out in the above dump, this gives you enough information to determine the make and the year made on the video card. On line 4 you can see the make of this video card, which in this case is a N VIDIA TNT which would be the Riva TNT chipset. The next line you notice the version of the card and finally the line thereafter is the copyright or the year manufactured, generally. If you are unable to capture any information which sounds like the video card, you can also type -d c000:0090