Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-1


					PAGE	60,132 ;
					TITLE	DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS
				;======================= START OF SPECIFICATIONS =========================
				;
				; MODULE NAME: DECOM1.SAL
				;
				; DESCRIPTIVE NAME: DEBUGGING TOOL
				;
				; FUNCTION: PROVIDES USERS WITH A TOOL FOR DEBUGGING PROGRAMS.
				;
				; ENTRY POINT: ANY CALLED ROUTINE
				;
				; INPUT: NA
				;
				; EXIT NORMAL: NA
				;
				; EXIT ERROR: NA
				;
				; INTERNAL REFERENCES:
				;
				; EXTERNAL REFERENCES:
				;
				;	ROUTINE: DEBCOM2 - CONTAINS ROUTINES CALLED BY DEBUG
				;		 DEBCOM3 - CONTAINS ROUTINES CALLED BY DEBUG
				;		 DEBASM  - CONTAINS ROUTINES CALLED BY DEBUG
				;		 DEBUASM - CONTAINS ROUTINES CALLED BY DEBUG
				;		 DEBMES  - CONTAINS ROUTINES CALLED BY DEBUG
				;
				; NOTES: THIS MODULE IS TO BE PREPPED BY SALUT WITH THE "PR" OPTIONS.
				;	 LINK DEBUG+DEBCOM1+DEBCOM2+DEBCOM3+DEBASM+DEBUASM+DEBERR+
				;	      DEBCONST+DEBDATA+DEBMES
				;
				; REVISION HISTORY:
				;
				;	AN000	VERSION 4.00 - REVISIONS MADE RELATE TO THE FOLLOWING:
				;
				;				- IMPLEMENT DBCS HANDLING	DMS:6/17/87
				;				- IMPLEMENT MESSAGE RETRIEVER	DMS:6/17/87
				;				- IMPLEMENT > 32MB SUPPORT	DMS:6/17/87
				;
				; COPYRIGHT: "MS DOS DEBUG UTILITY"
				;	     "VERSION 4.00 (C) COPYRIGHT 1988 Microsoft"
				;	     "LICENSED MATERIAL - PROPERTY OF Microsoft  "
				;
				;======================= END OF SPECIFICATIONS ===========================
				
				; Routines to perform debugger commands except ASSEMble and UASSEMble
				
				.LIST
				
 0000				CODE	SEGMENT PUBLIC BYTE
 0000				CODE	ENDS
				
 0000				CONST	SEGMENT PUBLIC BYTE
					EXTRN	SYNERR_PTR:BYTE
					EXTRN	DISPB:WORD,DSIZ:BYTE,DSSAVE:WORD
 0000				CONST	ENDS
				
 0000				CSTACK	SEGMENT STACK
 0000				CSTACK	ENDS
				
 0000				DATA	SEGMENT PUBLIC BYTE
					EXTRN	DEFLEN:WORD,BYTEBUF:BYTE,DEFDUMP:BYTE
					EXTRN	ARG_BUF:BYTE,ARG_BUF_PTR:BYTE
					EXTRN	ONE_CHAR_BUF:BYTE,ONE_CHAR_BUF_PTR:WORD
 0000				DATA	ENDS
				
				DG	GROUP	CODE,CONST,CSTACK,DATA
				
 0000				CODE	SEGMENT PUBLIC BYTE
				ASSUME	CS:DG,DS:DG,ES:DG,SS:DG
					PUBLIC	HEXCHK,GETHEX1,PRINT,DSRANGE,ADDRESS,HEXIN,PERROR
					PUBLIC	GETHEX,GET_ADDRESS,GETEOL,GETHX,PERR
					PUBLIC	PERR,MOVE,DUMP,ENTERDATA,FILL,SEARCH,DEFAULT
					EXTRN	CRLF:NEAR,OUTDI:NEAR,OUTSI:NEAR,SCANP:NEAR
					EXTRN	SCANB:NEAR,BLANK:NEAR,TAB:NEAR,COMMAND:NEAR
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-2
                                                            

					EXTRN	HEX:NEAR,BACKUP:NEAR
					EXTRN	PRINTF_CRLF:NEAR,HEX_ADDRESS_ONLY:NEAR,HEX_ADDRESS_STR:NEAR
					EXTRN	STD_PRINTF:NEAR
 0000				DEBCOM1:
				; RANGE - Looks for parameters defining an address range.
				; The first parameter is the starting address. The second parameter
				; may specify the ending address, or it may be preceded by
				; "L" and specify a length (4 digits max), or it may be
				; omitted and a length of 128 bytes is assumed. Returns with
				; segment in AX, displacement in DX, and length in CX.
 0000				DSRANGE:
 0000  8B 2E 0000 E			MOV	BP,[DSSAVE]		; Set default segment to DS
 0004  C7 06 0000 E 0080		MOV	[DEFLEN],128		; And default length to 128 bytes
 000A				RANGE:
 000A  E8 0248 R			CALL	ADDRESS
				
 000D  50				PUSH	AX			; Save segment
 000E  52				PUSH	DX			; Save offset
 000F  E8 0000 E			CALL	SCANP			; Get to next parameter
				
 0012  8A 04				MOV	AL,[SI]
 0014  3C 4C				CMP	AL,UPPER_L		; Length indicator?
 0016  74 29				JE	GETLEN
				
 0018  8B 16 0000 E			MOV	DX,[DEFLEN]		; Default length
 001C  E8 01CD R			CALL	HEXIN			; Second parameter present?
				
 001F  72 13				JC	GETDEF			; If not, use default
				
 0021  B9 0004				MOV	CX,4
 0024  E8 01C1 R			CALL	GETHEX			; Get ending address (same segment)
				
 0027  8B CA				MOV	CX,DX			; Low 16 bits of ending addr.
 0029  5A				POP	DX			; Low 16 bits of starting addr.
 002A  2B CA				SUB	CX,DX			; Compute range
 002C  73 03				JAE	DSRNG2
				
 002E				DSRNG1:
 002E  E9 0230 R			JMP	PERROR			; Negative range
 0031				DSRNG2:
 0031  41				INC	CX			; Include last location
				;	JCXZ	DSRNG1			; Wrap around error
				;	Removing this instruction allows 0 FFFF to valid range
 0032  58				POP	AX			; Restore segment
 0033  C3				RET
 0034				GETDEF:
 0034  59				POP	CX			; get original offset
 0035  51				PUSH	CX			; save it
 0036  F7 D9				NEG	CX			; rest of segment
 0038  74 0E				JZ	RNGRET			; use default
				
 003A  3B CA				CMP	CX,DX			; more room in segment?
 003C  73 0A				JAE	RNGRET			; yes, use default
				
 003E  EB 0A 90				JMP	RNGRET1 		; no, length is in CX
				
 0041				GETLEN:
 0041  46				INC	SI			; Skip over "L" to length
 0042  B9 0004				MOV	CX,4			; Length may have 4 digits
 0045  E8 01C1 R			CALL	GETHEX			; Get the range
				
 0048				RNGRET:
 0048  8B CA				MOV	CX,DX			; Length
 004A				RNGRET1:
 004A  5A				POP	DX			; Offset
 004B  8B C1				MOV	AX,CX
 004D  03 C2				ADD	AX,DX
 004F  73 05				JNC	OKRET
				
 0051  3D 0001				CMP	AX,1
 0054  73 D8				JAE	DSRNG1			; Look for wrap error
				
 0056				OKRET:
 0056  58				POP	AX			; Segment
 0057  C3				RET
 0058				DEFAULT:
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-3
                                                            

				; DI points to default address and CX has default length
 0058  E8 0000 E			CALL	SCANP
				
 005B  74 0A				JZ	USEDEF			; Use default if no parameters
				
 005D  89 0E 0000 E			MOV	[DEFLEN],CX
 0061  E8 000A R			CALL	RANGE
				
 0064  E9 0229 R			JMP	GETEOL
				
 0067				USEDEF:
 0067  8B F7				MOV	SI,DI
 0069  AD				LODSW				; Get default displacement
 006A  8B D0				MOV	DX,AX
 006C  AD				LODSW				; Get default segment
 006D  C3				RET
				
				; Dump an area of memory in both hex and ASCII
 006E				DUMP:
 006E  8B 2E 0000 E			MOV	BP,[DSSAVE]
 0072  8B 0E 0000 E			MOV	CX,DISPB
 0076  BF 0000 E			MOV	DI,OFFSET DG:DEFDUMP
 0079  E8 0058 R			CALL	DEFAULT 		; Get range if specified
				
 007C  8E D8				MOV	DS,AX			; Set segment
					ASSUME	DS:NOTHING
				
 007E  8B F2				MOV	SI,DX			; SI has displacement in segment
 0080  56				PUSH	SI			; save SI away
 0081  36: A0 0000 E			MOV	AL,DSIZ
 0085  32 E4				XOR	AH,AH
 0087  35 FFFF				XOR	AX,-1
 008A  23 F0				AND	SI,AX			; convert to para number
 008C  BF 0000 E			MOV	DI,OFFSET DG:ARG_BUF	; Build the output str in arg_buf
 008F  E8 0000 E			CALL	OUTSI			; display location
				
 0092  5E				POP	SI			; get SI back
				; Determine where the registers display should begin.
 0093  8B C6				MOV	AX,SI			; move offset
 0095  B4 03				MOV	AH,3			; spaces per byte
 0097  36: 22 06 0000 E			AND	AL,DSIZ 		; convert to real offset
 009C  F6 E4				MUL	AH			; 3 char positions per byte of output
 009E  0A C0				OR	AL,AL			; at beginning?
 00A0  74 07				JZ	INROW			; if so, then no movement.
				
 00A2  51				PUSH	CX
 00A3  8B C8				MOV	CX,AX
 00A5  E8 0000 E			CALL	TAB
				
 00A8  59				POP	CX
 00A9				INROW:
 00A9  56				PUSH	SI			; Save address for ASCII dump
 00AA				BYTE0:
 00AA  E8 0000 E			CALL	BLANK			; Space between bytes
 00AD				BYTE1:
 00AD  AC				LODSB				; Get byte to dump
 00AE  E8 0000 E			CALL	HEX			; and display it
				
 00B1  5A				POP	DX			; DX has start addr. for ASCII dump
 00B2  49				DEC	CX			; Drop loop count
 00B3  74 1E				JZ	ASCII			; If through do ASCII dump
				
 00B5  8B C6				MOV	AX,SI
 00B7  36: 84 06 0000 E			TEST	AL,DSIZ 		; On row boundary?
 00BC  74 0A				JZ	ENDROW
				
 00BE  52				PUSH	DX			; Didn't need ASCII addr. yet
 00BF  A8 07				TEST	AL,7			; On 8-byte boundary?
 00C1  75 E7				JNZ	BYTE0
				
 00C3  B0 2D				MOV	AL,CHAR_MINUS		; Mark every 8 bytes with "-"
 00C5  AA				STOSB
 00C6  EB E5				JMP	SHORT BYTE1
				
 00C8				ENDROW:
 00C8  E8 00D3 R			CALL	ASCII			; Show it in ASCII
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-4
                                                            

				
 00CB  BF 0000 E			MOV	DI,OFFSET DG:ARG_BUF	; Build the output str in arg_buf
 00CE  E8 0000 E			CALL	OUTSI			; Get the address at start of line
				
 00D1  EB D6				JMP	INROW			; Loop until count is zero
				
				; Produce a dump of the ascii text characters.	We take the current SI which
				; contains the byte after the last one dumped.	From this we determine how
				; many spaces we need to output to get to the ascii column.  Then we look at
				; the beginning address of the dump to tsee how many spaces we need to indent.
 00D3				ASCII:
 00D3  51				PUSH	CX			; Save count of remaining bytes
				; Determine how many spaces to go until the ASCII column.
 00D4  8B C6				MOV	AX,SI			; get offset of next byte
 00D6  FE C8				DEC	AL
 00D8  36: 22 06 0000 E			AND	AL,DSIZ
 00DD  FE C0				INC	AL
				; AX now has the number of bytes that we have displayed:  1 to Dsiz+1.
				; Compute characters remaining to be displayed.  We *always* put the ASCII
				; dump in column 51 (or whereever)
 00DF  2C 10				SUB	AL,10H			; get negative of number
 00E1  FE C8				DEC	AL			;
 00E3  F6 D8				NEG	AL			; convert to positive
 00E5  98				CBW				; convert to word
				; 3 character positions for each byte displayed.
 00E6  8B C8				MOV	CX,AX
 00E8  D1 E0				SHL	AX,1
 00EA  03 C8				ADD	CX,AX
				; Compute indent for ascii dump
 00EC  8B C2				MOV	AX,DX
 00EE  36: 22 06 0000 E			AND	AL,DSIZ
 00F3  32 E4				XOR	AH,AH
 00F5  03 C8				ADD	CX,AX
				; Tab over
 00F7  E8 0000 E			CALL	TAB
				
				; Set up for true dump
 00FA  8B CE				MOV	CX,SI
 00FC  8B F2				MOV	SI,DX
 00FE  2B CE				SUB	CX,SI
 0100				ASCDMP:
 0100  AC				LODSB				; Get ASCII byte to dump
 0101  3C 7F				CMP	AL,CHAR_RUBOUT
 0103  73 04				JAE	NOPRT			; Don't print RUBOUT or above
				
 0105  3C 20				CMP	AL,CHAR_BLANK
 0107  73 02				JAE	PRIN			; print space through RUBOUT-1
				
 0109				NOPRT:
 0109  B0 2E				MOV	AL,CHAR_PERIOD		; If unprintable character
 010B				PRIN:
 010B  AA				STOSB
 010C  E2 F2				LOOP	ASCDMP			; CX times
 010E  B0 00				MOV	AL,0
 0110  AA				STOSB
 0111  1E				PUSH	DS
 0112  0E				PUSH	CS
 0113  1F				POP	DS
					ASSUME	DS:DG
				
 0114  E8 0000 E			CALL	HEX_ADDRESS_STR
				
 0117  E8 0000 E			CALL	CRLF
				
 011A  1F				POP	DS
					ASSUME	DS:NOTHING
				
 011B  59				POP	CX			; Restore overall dump len
 011C  36: 89 36 0000 E			MOV	WORD PTR [DEFDUMP],SI
 0121  36: 8C 1E 0002 E			MOV	WORD PTR [DEFDUMP+WORD],DS ; Save last address as def
 0126  C3				RET
				
					ASSUME	DS:DG
				; Block move one area of memory to another Overlapping moves are performed
				; correctly, i.e., so that a source byte is not overwritten until after it has
				; been moved.
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-5
                                                            

 0127				MOVE:
 0127  E8 0000 R			CALL	DSRANGE 		; Get range of source area
				
 012A  51				PUSH	CX			; Save length
 012B  50				PUSH	AX			; Save segment
 012C  52				PUSH	DX			; Save source displacement
 012D  E8 0248 R			CALL	ADDRESS 		; Get destination address (sam
				
 0130  E8 0229 R			CALL	GETEOL			; Check for errors
				
 0133  5E				POP	SI
 0134  8B FA				MOV	DI,DX			; Set dest. displacement
 0136  5B				POP	BX			; Source segment
 0137  8E DB				MOV	DS,BX
 0139  8E C0				MOV	ES,AX			; Destination segment
 013B  59				POP	CX			; Length
 013C  3B FE				CMP	DI,SI			; Check direction of move
 013E  1B C3				SBB	AX,BX			; Extend the CMP to 32 bits
 0140  72 07				JB	COPYLIST		; Move forward into lower mem.
				
				; Otherwise, move backward. Figure end of source and destination
				; areas and flip direction flag.
 0142  49				DEC	CX
 0143  03 F1				ADD	SI,CX			; End of source area
 0145  03 F9				ADD	DI,CX			; End of destination area
 0147  FD				STD				; Reverse direction
 0148  41				INC	CX
 0149				COPYLIST:
 0149  A4				MOVSB				; Do at least 1 - Range is 1-1
 014A  49				DEC	CX
 014B  F3/ A4				REP	MOVSB			; Block move
 014D				RET1:
 014D  C3				RET
				
				; Fill an area of memory with a list values. If the list
				; is bigger than the area, don't use the whole list. If the
				; list is smaller, repeat it as many times as necessary.
 014E				FILL:
 014E  E8 0000 R			CALL	DSRANGE 		; Get range to fill
				
 0151  51				PUSH	CX			; Save length
 0152  50				PUSH	AX			; Save segment number
 0153  52				PUSH	DX			; Save displacement
 0154  E8 021B R			CALL	LIST			; Get list of values to fill w
				
 0157  5F				POP	DI			; Displacement in segment
 0158  07				POP	ES			; Segment
 0159  59				POP	CX			; Length
 015A  3B D9				CMP	BX,CX			; BX is length of fill list
 015C  BE 0000 E			MOV	SI,OFFSET DG:BYTEBUF	; List is in byte buffer
 015F  E3 02				JCXZ	BIGRNG
				
 0161  73 E6				JAE	COPYLIST		; If list is big, copy part of
				
 0163				BIGRNG:
 0163  2B CB				SUB	CX,BX			; How much bigger is area than
 0165  87 CB				XCHG	CX,BX			; CX=length of list
 0167  57				PUSH	DI			; Save starting addr. of area
 0168  F3/ A4				REP	MOVSB			; Move list into area
 016A  5E				POP	SI
				; The list has been copied into the beginning of the
				; specified area of memory. SI is the first address
				; of that area, DI is the end of the copy of the list
				; plus one, which is where the list will begin to repeat.
				; All we need to do now is copy [SI] to [DI] until the
				; end of the memory area is reached. This will cause the
				; list to repeat as many times as necessary.
 016B  8B CB				MOV	CX,BX			; Length of area minus list
 016D  06				PUSH	ES			; Different index register
 016E  1F				POP	DS			; requires different segment r
 016F  EB D8				JMP	SHORT COPYLIST		; Do the block move
				
				; Search a specified area of memory for given list of bytes.
				; Print address of first byte of each match.
 0171				SEARCH:
 0171  E8 0000 R			CALL	DSRANGE 		; Get area to be searched
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-6
                                                            

				
 0174  51				PUSH	CX			; Save count
 0175  50				PUSH	AX			; Save segment number
 0176  52				PUSH	DX			; Save displacement
 0177  E8 021B R			CALL	LIST			; Get search list
				
 017A  4B				DEC	BX			; No. of bytes in list-1
 017B  5F				POP	DI			; Displacement within segment
 017C  07				POP	ES			; Segment
 017D  59				POP	CX			; Length to be searched
 017E  2B CB				SUB	CX,BX			;  minus length of list
 0180				SCAN:
 0180  BE 0000 E			MOV	SI,OFFSET DG:BYTEBUF	; List kept in byte buffer
 0183  AC				LODSB				; Bring first byte into AL
 0184				DOSCAN:
 0184  AE				SCASB				; Search for first byte
 0185  E0 FD				LOOPNE	DOSCAN			; Do at least once by using LO
				
 0187  75 C4				JNZ	RET1			; Exit if not found
				
 0189  53				PUSH	BX			; Length of list minus 1
 018A  87 D9				XCHG	BX,CX
 018C  57				PUSH	DI			; Will resume search here
 018D  F3/ A6				REPE	CMPSB			; Compare rest of string
 018F  8B CB				MOV	CX,BX			; Area length back in CX
 0191  5F				POP	DI			; Next search location
 0192  5B				POP	BX			; Restore list length
 0193  75 0B				JNZ	TTEST			 ; Continue search if no match
				
 0195  4F				DEC	DI			; Match address
 0196  E8 0000 E			CALL	OUTDI			; Print it
				
 0199  47				INC	DI			; Restore search address
 019A  E8 0000 E			CALL	HEX_ADDRESS_ONLY	; Print the addresss
				
 019D  E8 0000 E			CALL	CRLF
				
 01A0				TTEST:
 01A0  E3 AB				JCXZ	RET1
				
 01A2  EB DC				JMP	SHORT SCAN		; Look for next occurrence
				
				; Get the next parameter, which must be a hex number.
				; CX is maximum number of digits the number may have.
				
				;=========================================================================
				; GETHX: This routine calculates the binary representation of an address
				;	 entered in ASCII by a user.  GETHX has been modified to provide
				;	 support for sector addresses > 32mb.  To do this the bx register
				;	 has been added to provide a 32 bit address.  BX is the high word
				;	 and DX is the low word.  For routines that rely on DX for a 16
				;	 bit address, the use of BX will have no effect.
				;
				;	Date	   : 6/16/87
				;=========================================================================
				
 01A4				GETHX:
 01A4  E8 0000 E			CALL	SCANP
 01A7				GETHX1:
 01A7  33 D2				XOR	DX,DX			; Initialize the number
 01A9  33 DB				xor	bx,bx			;an000;initialize high word for
									;      sector address
 01AB  E8 01CD R			CALL	HEXIN			; Get a hex digit
				
 01AE  72 1C				JC	HXERR			; Must be one valid digit
				
 01B0  8A D0				MOV	DL,AL			; First 4 bits in position
 01B2				GETLP:
 01B2  46				INC	SI			; Next char in buffer
 01B3  49				DEC	CX			; Digit count
 01B4  E8 01CD R			CALL	HEXIN			; Get another hex digit?
				
 01B7  72 12				JC	RETHX			; All done if no more digits
				
 01B9  F9				STC
 01BA  E3 10				JCXZ	HXERR			; Too many digits?
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-7
                                                            

				
				
 01BC  E8 039D R			call	ADDRESS_32_BIT		;an000;multiply by 32
 01BF  EB F1				JMP	SHORT GETLP		; Get more digits
				
 01C1				GETHEX:
 01C1  E8 01A4 R			CALL	GETHX			; Scan to next parameter
				
 01C4  EB 03				JMP	SHORT GETHX2
				
 01C6				GETHEX1:
 01C6  E8 01A7 R			CALL	GETHX1
 01C9				GETHX2:
 01C9  72 65				JC	PERROR
 01CB				RETHX:
 01CB  F8				CLC
 01CC				HXERR:
 01CC  C3				RET
				
				; Check if next character in the input buffer is a hex digit
				; and convert it to binary if it is. Carry set if not.
 01CD				HEXIN:
 01CD  8A 04				MOV	AL,[SI]
				; Check if AL  is a hex digit and convert it to binary if it
				; is. Carry set if not.
 01CF				HEXCHK:
 01CF  2C 30				SUB	AL,CHAR_ZERO		; Kill ASCII numeric bias
 01D1  72 10				JC	RET2
				
 01D3  3C 0A				CMP	AL,10
 01D5  F5				CMC
 01D6  73 0B				JNC	RET2			; OK if 0-9
				
 01D8  24 5F				AND	AL,5FH
 01DA  2C 07				SUB	AL,7			; Kill A-F bias
 01DC  3C 0A				CMP	AL,10
 01DE  72 03				JC	RET2
				
 01E0  3C 10				CMP	AL,16
 01E2  F5				CMC
 01E3				RET2:
 01E3  C3				RET
				
				; Process one parameter when a list of bytes is
				; required. Carry set if parameter bad. Called by LIST.
 01E4				LISTITEM:
 01E4  E8 0000 E			CALL	SCANP			; Scan to parameter
				
 01E7  E8 01CD R			CALL	HEXIN			; Is it in hex?
				
 01EA  72 0D				JC	STRINGCHK		; If not, could be a string
				
 01EC  B9 0002				MOV	CX,2			; Only 2 hex digits for bytes
 01EF  53				push	bx			;an000;save it - we stomp it
 01F0  E8 01C1 R			CALL	GETHEX			; Get the byte value
 01F3  5B				pop	bx			;an000;restore it
				
 01F4  88 17				MOV	[BX],DL 		; Add to list
 01F6  43				INC	BX
 01F7				GRET:
 01F7  F8				CLC				; Parameter was OK
 01F8  C3				RET
				
 01F9				STRINGCHK:
 01F9  8A 04				MOV	AL,[SI] 		; Get first character of param
 01FB  3C 27				CMP	AL,SINGLE_QUOTE 	; String?
 01FD  74 06				JZ	STRING
				
 01FF  3C 22				CMP	AL,DOUBLE_QUOTE 	; Either quote is all right
 0201  74 02				JZ	STRING
				
 0203  F9				STC				; Not string, not hex - bad
 0204  C3				RET
 0205				STRING:
 0205  8A E0				MOV	AH,AL			; Save for closing quote
 0207  46				INC	SI
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-8
                                                            

 0208				STRNGLP:
 0208  AC				LODSB				; Next char of string
 0209  3C 0D				CMP	AL,CR			; Check for end of line
 020B  74 22				JZ	PERR			; Must find a close quote
				
 020D  3A C4				CMP	AL,AH			; Check for close quote
 020F  75 05				JNZ	STOSTRG 		; Add new character to list
				
 0211  3A 24				CMP	AH,[SI] 		; Two quotes in a row?
 0213  75 E2				JNZ	GRET			; If not, we're done
				
 0215  46				INC	SI			; Yes - skip second one
 0216				STOSTRG:
 0216  88 07				MOV	[BX],AL 		; Put new char in list
 0218  43				INC	BX
 0219  EB ED				JMP	SHORT STRNGLP		; Get more characters
				
				; Get a byte list for ENTER, FILL or SEARCH. Accepts any number
				; of 2-digit hex values or character strings in either single
				; (') or double (") quotes.
 021B				LIST:
 021B  BB 0000 E			MOV	BX,OFFSET DG:BYTEBUF	; Put byte list in the byte buffer
 021E				LISTLP:
 021E  E8 01E4 R			CALL	LISTITEM		; Process a parameter
				
 0221  73 FB				JNC	LISTLP			; If OK, try for more
				
 0223  81 EB 0000 E			SUB	BX,OFFSET DG:BYTEBUF	; BX now has no. of bytes in list
 0227  74 07				JZ	PERROR			; List must not be empty
				
				; Make sure there is nothing more on the line except for
				; blanks and carriage return. If there is, it is an
				; unrecognized parameter and an error.
 0229				GETEOL:
 0229  E8 0000 E			CALL	SCANB			; Skip blanks
				
 022C  75 02				JNZ	PERROR			; Better be a RETURN
 022E				RET3:
 022E  C3				RET
				
				; Command error.  SI has been incremented beyond the command letter so it must
				; decremented for the error pointer to work.
 022F				PERR:
 022F  4E				DEC	SI
				; Syntax error.  SI points to character in the input buffer which caused
				; error.  By subtracting from start of buffer, we will know how far to tab
				; over to appear directly below it on the terminal.  Then print "^ Error".
 0230				PERROR:
 0230  81 EE FFFF E			SUB	SI,OFFSET DG:(BYTEBUF-1) ; How many char processed so far?
 0234  8B CE				MOV	CX,SI			; Parameter for TAB in CX
 0236  BF 0000 E			MOV	DI,OFFSET DG:ARG_BUF	;
 0239  E8 0000 E			CALL	TAB			; Directly below bad char
				
 023C  C6 05 00				MOV	BYTE PTR [DI],0 	; nul terminate the tab
 023F  BA 0000 E			MOV	DX,OFFSET DG:SYNERR_PTR ; Error message
				; Print error message and abort to command level
 0242				PRINT:
 0242  E8 0000 E			CALL	PRINTF_CRLF
				
 0245  E9 0000 E			JMP	COMMAND
				
				; Gets an address in Segment:Displacement format. Segment may be omitted
				; and a default (kept in BP) will be used, or it may be a segment
				; register (DS, ES, SS, CS). Returns with segment in AX, OFFSET in DX.
 0248				ADDRESS:
 0248  E8 024F R			CALL	GET_ADDRESS
				
 024B  72 E3				JC	PERROR
				
 024D				ADRERR:
 024D  F9				STC
 024E  C3				RET
				
 024F				GET_ADDRESS:
 024F  E8 0000 E			CALL	SCANP
				
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-9
                                                            

 0252  8A 44 01				MOV	AL,[SI+1]
 0255  3C 53				CMP	AL,UPPER_S
 0257  74 1C				JZ	SEGREG
				
 0259  B9 0004				MOV	CX,4
 025C  E8 01A4 R			CALL	GETHX
				
 025F  72 EC				JC	ADRERR
				
 0261  8B C5				MOV	AX,BP			; Get default segment
 0263  80 3C 3A				CMP	BYTE PTR [SI],CHAR_COLON
 0266  75 0B				JNZ	GETRET
				
 0268  52				PUSH	DX
 0269				GETDISP:
 0269  46				INC	SI			; Skip over ":"
 026A  B9 0004				MOV	CX,4
 026D  E8 01A4 R			CALL	GETHX
				
 0270  58				POP	AX
 0271  72 DA				JC	ADRERR
				
 0273				GETRET:
 0273  F8				CLC
 0274  C3				RET
				
 0275				SEGREG:
 0275  8A 04				MOV	AL,[SI]
 0277  BF 0292 R			MOV	DI,OFFSET DG:SEGLET	; SEGLET  DB  "CSED"
 027A  B9 0004				MOV	CX,4
 027D  F2/ AE				REPNE	SCASB
 027F  75 CC				JNZ	ADRERR
				
 0281  46				INC	SI
 0282  46				INC	SI
 0283  D1 E1				SHL	CX,1
 0285  8B D9				MOV	BX,CX
 0287  80 3C 3A				CMP	BYTE PTR [SI],CHAR_COLON
 028A  75 C1				JNZ	ADRERR
				
 028C  FF B7 0000 E			PUSH	[BX+DSSAVE]
 0290  EB D7				JMP	SHORT GETDISP
				
 0292  43 53 45 44		SEGLET	DB	"CSED"			; First letter of each of the segregs: CS,SS,ES,DS
				
				; Short form of ENTER command. A list of values from the
				; command line are put into memory without using normal
				; ENTER mode.
 0296				GETLIST:
 0296  E8 021B R			CALL	LIST			; Get the bytes to enter
				
 0299  5F				POP	DI			; Displacement within segment
 029A  07				POP	ES			; Segment to enter into
 029B  BE 0000 E			MOV	SI,OFFSET DG:BYTEBUF	; List of bytes is in byte buffer
 029E  8B CB				MOV	CX,BX			; Count of bytes
 02A0  F3/ A4				REP	MOVSB			; Enter that byte list
 02A2  C3				RET
				
				; Enter values into memory at a specified address.  If the line contains
				; nothing but the address we go into "enter mode", where the address and its
				; current value are printed and the user may change it if desired.  To change,
				; type in new value in hex.  Backspace works to correct errors.  If an illegal
				; hex digit or too many digits are typed, the bell is sounded but it is
				; otherwise ignored.  To go to the next byte (with or without change), hit
				; space bar.  To back CLDto a previous address, type "-".  On every 8-byte
				; boundary a new line is started and the address is printed.  To terminate
				; command, type carriage return.
				;  Alternatively, the list of bytes to be entered may be included on the
				; original command line immediately following the address.  This is in regular
				; LIST format so any number of hex values or strings in quotes may be entered.
 02A3				ENTERDATA:
 02A3  8B 2E 0000 E			MOV	BP,[DSSAVE]		; Set default segment to DS
 02A7  E8 0248 R			CALL	ADDRESS
				
 02AA  50				PUSH	AX			; Save for later
 02AB  52				PUSH	DX
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-10
                                                            

 02AC  E8 0000 E			CALL	SCANB			; Any more parameters?
				
 02AF  75 E5				JNZ	GETLIST 		; If not end-of-line get list
				
 02B1  5F				POP	DI			; Displacement of ENTER
 02B2  07				POP	ES			; Segment
 02B3				GETROW:
 02B3  E8 0000 E			CALL	OUTDI			; Print address of entry
				
 02B6  57				PUSH	DI
 02B7  06				PUSH	ES
 02B8  1E				PUSH	DS
 02B9  07				POP	ES
 02BA  BF 0000 E			MOV	DI,OFFSET DG:ARG_BUF
 02BD  E8 0000 E			CALL	BLANK
				
 02C0  32 C0				XOR	AL,AL
 02C2  AA				STOSB
 02C3  E8 0000 E			CALL	HEX_ADDRESS_STR
				
 02C6  07				POP	ES
 02C7  5F				POP	DI
 02C8				GETBYTE:
 02C8  26: 8A 05			MOV	AL,ES:[DI]		; Get current value
 02CB  57				PUSH	DI
 02CC  06				PUSH	ES
 02CD  1E				PUSH	DS
 02CE  07				POP	ES
 02CF  BF 0000 E			MOV	DI,OFFSET DG:ARG_BUF
 02D2  E8 0000 E			CALL	HEX			; And display it
				
 02D5  B0 2E				MOV	AL,CHAR_PERIOD
 02D7  AA				STOSB
 02D8  32 C0				XOR	AL,AL
 02DA  AA				STOSB
 02DB  BA 0000 E			MOV	DX,OFFSET DG:ARG_BUF_PTR
 02DE  E8 0000 E			CALL	STD_PRINTF
				
 02E1  07				POP	ES
 02E2  5F				POP	DI
 02E3				LOOK_AGAIN:
 02E3  B9 0002				MOV	CX,2			; Max of 2 digits in new value
 02E6  BA 0000				MOV	DX,0			; Intial new value
 02E9				GETDIG:
 02E9  E8 0382 R			CALL	INPT			; Get digit from user
				
 02EC  8A E0				MOV	AH,AL			; Save
 02EE  E8 01CF R			CALL	HEXCHK			; Hex digit?
				
 02F1  86 E0				XCHG	AH,AL			; Need original for echo
 02F3  72 09				JC	NOHEX			; If not, try special command
				
 02F5  8A F2				MOV	DH,DL			; Rotate new value
 02F7  8A D4				MOV	DL,AH			; And include new digit
 02F9  E2 EE				LOOP	GETDIG			; At most 2 digits
				
				; We have two digits, so all we will accept now is a command.
 02FB				DWAIT:
 02FB  E8 0382 R			CALL	INPT			; Get command character
 02FE				NOHEX:
 02FE  3C 08				CMP	AL,CHAR_BACKSPACE	; Backspace
 0300  74 21				JZ	BS
				
 0302  3C 7F				CMP	AL,CHAR_RUBOUT		; RUBOUT
 0304  74 18				JZ	RUB
				
 0306  3C 2D				CMP	AL,CHAR_MINUS		; Back up to previous address
 0308  74 6B				JZ	PREV
				
 030A  3C 0D				CMP	AL,CR			; All done with command?
 030C  74 6E				JZ	EOL
				
 030E  3C 20				CMP	AL,CHAR_BLANK		; Go to next address
 0310  74 3A				JZ	NEXT
				
 0312  B0 08				MOV	AL,CHAR_BACKSPACE
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-11
                                                            

 0314  E8 0387 R			CALL	OUT_CHAR		; Back up over illegal character
				
 0317  E8 0000 E			CALL	BACKUP
				
 031A  E3 DF				JCXZ	DWAIT
				
 031C  EB CB				JMP	SHORT GETDIG
				
 031E				RUB:
 031E  B0 08				MOV	AL,CHAR_BACKSPACE
 0320  E8 0387 R			CALL	OUT_char
 0323				BS:
 0323  80 F9 02				CMP	CL,2			; CX=2 means nothing typed yet
 0326  74 0B				JZ	PUTDOT			; Put back the dot we backed up over
				
 0328  FE C1				INC	CL			; Accept one more character
 032A  8A D6				MOV	DL,DH			; Rotate out last digit
 032C  8A F5				MOV	DH,CH			; Zero this digit
 032E  E8 0000 E			CALL	BACKUP			; Physical backspace
				
 0331  EB B6				JMP	SHORT GETDIG		; Get more digits
				
 0333				PUTDOT:
 0333  B0 2E				MOV	AL,CHAR_PERIOD
 0335  E8 0387 R			CALL	OUT_CHAR
				
 0338  EB A9				JMP	LOOK_AGAIN
				
				; If new value has been entered, convert it to binary and
				; put into memory. Always bump pointer to next location
 033A				STORE:
 033A  80 F9 02				CMP	CL,2			; CX=2 means nothing typed yet
 033D  74 0B				JZ	NOSTO			; So no new value to store
				
				; Rotate DH left 4 bits to combine with DL and make a byte value
 033F  51				PUSH	CX
 0340  B1 04				MOV	CL,4
 0342  D2 E6				SHL	DH,CL
 0344  59				POP	CX
 0345  0A D6				OR	DL,DH			; Hex is now converted to binary
 0347  26: 88 15			MOV	ES:[DI],DL		; Store new value
 034A				NOSTO:
 034A  47				INC	DI			; Prepare for next location
 034B  C3				RET
				
 034C				NEXT:
 034C  E8 033A R			CALL	STORE			; Enter new value
				
 034F  41				INC	CX			; Leave a space plus two for
 0350  41				INC	CX			;  each digit not entered
 0351  57				PUSH	DI
 0352  BF 0000 E			MOV	DI,OFFSET DG:ARG_BUF
 0355  06				PUSH	ES
 0356  1E				PUSH	DS
 0357  07				POP	ES
 0358  E8 0000 E			CALL	TAB
				
 035B  32 C0				XOR	AL,AL
 035D  AA				STOSB
 035E  BA 0000 E			MOV	DX,OFFSET DG:ARG_BUF_PTR
 0361  E8 0000 E			CALL	STD_PRINTF
				
 0364  07				POP	ES
 0365  5F				POP	DI
 0366  8B C7				MOV	AX,DI			; Next memory address
 0368  24 07				AND	AL,7			; Check for 8-byte boundary
 036A  74 03				JZ	NEWROW			; Take 8 per line
				
 036C  E9 02C8 R			JMP	GETBYTE
				
 036F				NEWROW:
 036F  E8 0000 E			CALL	CRLF			; Terminate line
				
 0372  E9 02B3 R			JMP	GETROW			; Print address on new line
				
 0375				PREV:
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-12
                                                            

 0375  E8 033A R			CALL	STORE			; Enter the new value
				
				; DI has been bumped to next byte. Drop it 2 to go to previous addr
 0378  4F				DEC	DI
 0379  4F				DEC	DI
 037A  EB F3				JMP	SHORT NEWROW		; Terminate line after backing	 CLD
				
 037C				EOL:
 037C  E8 033A R			CALL	STORE			; Enter the new value
				
 037F  E9 0000 E			JMP	CRLF			; CR/LF and terminate
				
				; Console input of single character
					ELSE
 0382				INPT:				; Change label for build
 0382  B4 01				    MOV     AH,Std_Con_Input ;OPTION=1, STANDARD CONSOLE INPUT
 0384  CD 21				    INT     21H
				
 0386  C3				    RET
				
					ENDIF
 0387				OUT_CHAR:
 0387  57				PUSH	DI
 0388  52				PUSH	DX
 0389  06				PUSH	ES
 038A  1E				PUSH	DS
 038B  07				POP	ES
 038C  BF 0000 E			MOV	DI,OFFSET DG:ONE_CHAR_BUF
 038F  AA				STOSB
 0390  B0 00				MOV	AL,0
 0392  AA				STOSB
 0393  BA 0000 E			MOV	DX,OFFSET DG:ONE_CHAR_BUF_PTR
 0396  E8 0000 E			CALL	STD_PRINTF
				
 0399  07				POP	ES
 039A  5A				POP	DX
 039B  5F				POP	DI
 039C  C3				RET
				
				;=========================================================================
				; ADDRESS_32_BIT: This routine will build an address for 32bit sector
				;		  addressibility.  BX will be the high word, with DX being
				;		  the low word.
				;
				;	Inputs : DX/BX - registers to contain 32bit sector address
				;		 DX & BX are both initialized to 0 on first call to routine.
				;
				;	Outputs: DX/BX - registers to contain 32bit sector address
				;
				;	Date	  : 6/16/87
				;=========================================================================
				
 039D				ADDRESS_32_BIT	proc	near			;an000;perform 32 bit address
										;      creation
 039D  51				push	cx				;an000;save affected regs.
 039E  B9 0004				mov	cx,04h				;an000;initialize to
										;      nibble shift
				;	$do					;an000;while cx not= 0
 03A1				$$DO1:
 03A1  83 F9 00					cmp	cx,00h			;an000;are we done?
				;		$leave	e			;an000;yes, quit loop
 03A4  74 0C					JE $$EN1
 03A6  D1 E3					shl	bx,1			;an000;shift bx 1 bit
 03A8  D1 E2					shl	dx,1			;an000;shift dx 1 bit
				;		$if	c			;an000;did low word carry
 03AA  73 03					JNC $$IF3
 03AC  83 CB 01						or	bx,01h		;an000;set bit 0 of high word
				;		$endif				;an000;
 03AF				$$IF3:
 03AF  49					dec	cx			;an000;decrease counter
				;	$enddo					;an000;end while loop
 03B0  EB EF				JMP SHORT $$DO1
 03B2				$$EN1:
 03B2  0A D0				or	dl,	al			;an000;overlay low word
										;      bits 0-3 with next
										;      portion of the address
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Page     1-13
                                                            

 03B4  59				pop	cx				;an000;restore affected regs.
				
 03B5  C3				ret					;an000;return to caller
				
 03B6				ADDRESS_32_BIT	endp				;an000;end proc
				
				
				
 03B6				CODE	ENDS
					END	DEBCOM1

Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-1


Macros:

		N a m e			Lines

ARGVAR . . . . . . . . . . . . .  	  23
ASMVAR . . . . . . . . . . . . .  	   3
ASMVARS  . . . . . . . . . . . .  	   3
ASSERT . . . . . . . . . . . . .  	   0
CALLINSTALL  . . . . . . . . . .  	  12
DOSASSUME  . . . . . . . . . . .  	   3
ENTER  . . . . . . . . . . . . .  	   3
ENTERCRIT  . . . . . . . . . . .  	   1
ERRNZ  . . . . . . . . . . . . .  	   4
FMT  . . . . . . . . . . . . . .  	   0
LEAVE  . . . . . . . . . . . . .  	   2
LEAVECRIT  . . . . . . . . . . .  	   1
LOCALVAR . . . . . . . . . . . .  	  23

Structures and Records:

                N a m e                 Width   # fields
                                        Shift   Width   Mask    Initial

ARENA  . . . . . . . . . . . . .  	0010	0005
  ARENA_SIGNATURE  . . . . . . .  	0000
  ARENA_OWNER  . . . . . . . . .  	0001
  ARENA_SIZE . . . . . . . . . .  	0003
  ARENA_RESERVED . . . . . . . .  	0005
  ARENA_NAME . . . . . . . . . .  	0008
A_BPB  . . . . . . . . . . . . .  	001F	000F
  BPB_BYTESPERSECTOR . . . . . .  	0000
  BPB_SECTORSPERCLUSTER  . . . .  	0002
  BPB_RESERVEDSECTORS  . . . . .  	0003
  BPB_NUMBEROFFATS . . . . . . .  	0005
  BPB_ROOTENTRIES  . . . . . . .  	0006
  BPB_TOTALSECTORS . . . . . . .  	0008
  BPB_MEDIADESCRIPTOR  . . . . .  	000A
  BPB_SECTORSPERFAT  . . . . . .  	000B
  BPB_SECTORSPERTRACK  . . . . .  	000D
  BPB_HEADS  . . . . . . . . . .  	000F
  BPB_HIDDENSECTORS  . . . . . .  	0011
  BPB_BIGTOTALSECTORS  . . . . .  	0015
BPBLOCK  . . . . . . . . . . . .  	000D	0008
  BPSECSZ  . . . . . . . . . . .  	0000
  BPCLUS . . . . . . . . . . . .  	0002
  BPRES  . . . . . . . . . . . .  	0003
  BPFTCNT  . . . . . . . . . . .  	0005
  BPDRCNT  . . . . . . . . . . .  	0006
  BPSCCNT  . . . . . . . . . . .  	0008
  BPMEDIA  . . . . . . . . . . .  	000A
  BPFTSEC  . . . . . . . . . . .  	000B
BUFFER_HASH_ENTRY  . . . . . . .  	0008	0004
  EMS_PAGE_NUM . . . . . . . . .  	0000
  BUFFER_BUCKET  . . . . . . . .  	0002
  DIRTY_COUNT  . . . . . . . . .  	0006
  BUFFER_RESERVED  . . . . . . .  	0007
BUFFINFO . . . . . . . . . . . .  	0023	000F
  HASH_PTR . . . . . . . . . . .  	0000
  HASH_COUNT . . . . . . . . . .  	0004
  CACHE_PTR  . . . . . . . . . .  	0006
  CACHE_COUNT  . . . . . . . . .  	000A
  EMS_SAFE_FLAG  . . . . . . . .  	000C
  EMS_LAST_PAGE  . . . . . . . .  	000D
  EMS_FIRST_PAGE . . . . . . . .  	0011
  EMS_NPA640 . . . . . . . . . .  	0015
  EMS_MODE . . . . . . . . . . .  	0017
  EMS_HANDLE . . . . . . . . . .  	0018
  EMS_PAGEFRAME_NUMBER . . . . .  	001A
  EMS_SEG_CNT  . . . . . . . . .  	001C
  EMS_PAGE_FRAME . . . . . . . .  	001E
  EMS_RESERVED . . . . . . . . .  	0020
  EMS_MAP_BUFF . . . . . . . . .  	0022
CURDIR_LIST  . . . . . . . . . .  	0058	000A
  CURDIR_TEXT  . . . . . . . . .  	0000
  CURDIR_FLAGS . . . . . . . . .  	0043
  CURDIR_DEVPTR  . . . . . . . .  	0045
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-2


  CURDIR_ID  . . . . . . . . . .  	0049
  CURDIR_USER_WORD . . . . . . .  	004D
  CURDIR_END . . . . . . . . . .  	004F
  CURDIR_TYPE  . . . . . . . . .  	0051
  CURDIR_IFS_HDR . . . . . . . .  	0052
  CURDIR_FSDA  . . . . . . . . .  	0056
DIR_ENTRY  . . . . . . . . . . .  	0020	000B
  DIR_NAME . . . . . . . . . . .  	0000
  DIR_ATTR . . . . . . . . . . .  	000B
  DIR_CODEPG . . . . . . . . . .  	000C
  DIR_EXTCLUSTER . . . . . . . .  	000E
  DIR_ATTR2  . . . . . . . . . .  	0010
  DIR_PAD  . . . . . . . . . . .  	0011
  DIR_TIME . . . . . . . . . . .  	0016
  DIR_DATE . . . . . . . . . . .  	0018
  DIR_FIRST  . . . . . . . . . .  	001A
  DIR_SIZE_L . . . . . . . . . .  	001C
  DIR_SIZE_H . . . . . . . . . .  	001E
DPB  . . . . . . . . . . . . . .  	0021	0012
  DPB_DRIVE  . . . . . . . . . .  	0000
  DPB_UNIT . . . . . . . . . . .  	0001
  DPB_SECTOR_SIZE  . . . . . . .  	0002
  DPB_CLUSTER_MASK . . . . . . .  	0004
  DPB_CLUSTER_SHIFT  . . . . . .  	0005
  DPB_FIRST_FAT  . . . . . . . .  	0006
  DPB_FAT_COUNT  . . . . . . . .  	0008
  DPB_ROOT_ENTRIES . . . . . . .  	0009
  DPB_FIRST_SECTOR . . . . . . .  	000B
  DPB_MAX_CLUSTER  . . . . . . .  	000D
  DPB_FAT_SIZE . . . . . . . . .  	000F
  DPB_DIR_SECTOR . . . . . . . .  	0011
  DPB_DRIVER_ADDR  . . . . . . .  	0013
  DPB_MEDIA  . . . . . . . . . .  	0017
  DPB_FIRST_ACCESS . . . . . . .  	0018
  DPB_NEXT_DPB . . . . . . . . .  	0019
  DPB_NEXT_FREE  . . . . . . . .  	001D
  DPB_FREE_CNT . . . . . . . . .  	001F
EXEC0  . . . . . . . . . . . . .  	000E	0004
  EXEC0_ENVIRON  . . . . . . . .  	0000
  EXEC0_COM_LINE . . . . . . . .  	0002
  EXEC0_5C_FCB . . . . . . . . .  	0006
  EXEC0_6C_FCB . . . . . . . . .  	000A
EXEC1  . . . . . . . . . . . . .  	0016	0008
  EXEC1_ENVIRON  . . . . . . . .  	0000
  EXEC1_COM_LINE . . . . . . . .  	0002
  EXEC1_5C_FCB . . . . . . . . .  	0006
  EXEC1_6C_FCB . . . . . . . . .  	000A
  EXEC1_SP . . . . . . . . . . .  	000E
  EXEC1_SS . . . . . . . . . . .  	0010
  EXEC1_IP . . . . . . . . . . .  	0012
  EXEC1_CS . . . . . . . . . . .  	0014
EXEC3  . . . . . . . . . . . . .  	0004	0002
  EXEC3_LOAD_ADDR  . . . . . . .  	0000
  EXEC3_RELOC_FAC  . . . . . . .  	0002
EXE_FILE . . . . . . . . . . . .  	0020	000F
  EXE_SIGNATURE  . . . . . . . .  	0000
  EXE_LEN_MOD_512  . . . . . . .  	0002
  EXE_PAGES  . . . . . . . . . .  	0004
  EXE_RLE_COUNT  . . . . . . . .  	0006
  EXE_PAR_DIR  . . . . . . . . .  	0008
  EXE_MIN_BSS  . . . . . . . . .  	000A
  EXE_MAX_BSS  . . . . . . . . .  	000C
  EXE_SS . . . . . . . . . . . .  	000E
  EXE_SP . . . . . . . . . . . .  	0010
  EXE_CHKSUM . . . . . . . . . .  	0012
  EXE_IP . . . . . . . . . . . .  	0014
  EXE_CS . . . . . . . . . . . .  	0016
  EXE_RLE_TABLE  . . . . . . . .  	0018
  EXE_IOV  . . . . . . . . . . .  	001A
  EXE_SYM_TAB  . . . . . . . . .  	001C
EXT_OPEN_PARM  . . . . . . . . .  	0006	0002
  EXT_SET_LIST . . . . . . . . .  	0000
  EXT_NUM_OF_PARM  . . . . . . .  	0004
FIND_BUF . . . . . . . . . . . .  	002B	000C
  FIND_BUF_DRIVE . . . . . . . .  	0000
  FIND_BUF_NAME  . . . . . . . .  	0001
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-3


  FIND_BUF_SATTR . . . . . . . .  	000C
  FIND_BUF_LASTENT . . . . . . .  	000D
  FIND_BUF_DIRSTART  . . . . . .  	000F
  FIND_BUF_NETID . . . . . . . .  	0011
  FIND_BUF_ATTR  . . . . . . . .  	0015
  FIND_BUF_TIME  . . . . . . . .  	0016
  FIND_BUF_DATE  . . . . . . . .  	0018
  FIND_BUF_SIZE_L  . . . . . . .  	001A
  FIND_BUF_SIZE_H  . . . . . . .  	001C
  FIND_BUF_PNAME . . . . . . . .  	001E
INTERNAT_BLOCK . . . . . . . . .  	0018	0015
  DATE_TIM_FORMAT  . . . . . . .  	0000
  CURRENCY_SYM . . . . . . . . .  	0002
  THOUS_SEP  . . . . . . . . . .  	0007
  DECIMAL_SEP  . . . . . . . . .  	0009
  DATE_SEP . . . . . . . . . . .  	000B
  TIME_SEP . . . . . . . . . . .  	000D
  BIT_FIELD  . . . . . . . . . .  	000F
  CURRENCY_CENTS . . . . . . . .  	0010
  TIME_24  . . . . . . . . . . .  	0011
  MAP_CALL . . . . . . . . . . .  	0012
  DATA_SEP . . . . . . . . . . .  	0016
PROCESS_DATA_BLOCK . . . . . . .  	005C	0011
  PDB_EXIT_CALL  . . . . . . . .  	0000
  PDB_BLOCK_LEN  . . . . . . . .  	0002
  PDB_CPM_CALL . . . . . . . . .  	0005
  PDB_EXIT . . . . . . . . . . .  	000A
  PDB_CTRL_C . . . . . . . . . .  	000E
  PDB_FATAL_ABORT  . . . . . . .  	0012
  PDB_PARENT_PID . . . . . . . .  	0016
  PDB_JFN_TABLE  . . . . . . . .  	0018
  PDB_ENVIRON  . . . . . . . . .  	002C
  PDB_USER_STACK . . . . . . . .  	002E
  PDB_JFN_LENGTH . . . . . . . .  	0032
  PDB_JFN_POINTER  . . . . . . .  	0034
  PDB_NEXT_PDB . . . . . . . . .  	0038
  PDB_PAD1 . . . . . . . . . . .  	003C
  PDB_CALL_SYSTEM  . . . . . . .  	0050
  PDB_PAD2 . . . . . . . . . . .  	0055
SF . . . . . . . . . . . . . . .  	0008	0003
  SFLINK . . . . . . . . . . . .  	0000
  SFCOUNT  . . . . . . . . . . .  	0004
  SFTABLE  . . . . . . . . . . .  	0006
SF_ENTRY . . . . . . . . . . . .  	003B	0014
  SF_REF_COUNT . . . . . . . . .  	0000
  SF_MODE  . . . . . . . . . . .  	0002
  SF_ATTR  . . . . . . . . . . .  	0004
  SF_FLAGS . . . . . . . . . . .  	0005
  SF_DEVPTR  . . . . . . . . . .  	0007
  SF_FIRCLUS . . . . . . . . . .  	000B
  SF_TIME  . . . . . . . . . . .  	000D
  SF_DATE  . . . . . . . . . . .  	000F
  SF_SIZE  . . . . . . . . . . .  	0011
  SF_POSITION  . . . . . . . . .  	0015
  SF_CLUSPOS . . . . . . . . . .  	0019
  SF_DIRSEC  . . . . . . . . . .  	001B
  SF_DIRPOS  . . . . . . . . . .  	001F
  SF_NAME  . . . . . . . . . . .  	0020
  SF_CHAIN . . . . . . . . . . .  	002B
  SF_UID . . . . . . . . . . . .  	002F
  SF_PID . . . . . . . . . . . .  	0031
  SF_MFT . . . . . . . . . . . .  	0033
  SF_LSTCLUS . . . . . . . . . .  	0035
  SF_IFS_HDR . . . . . . . . . .  	0037
SYMBOL_ENTRY . . . . . . . . . .  	0106	0004
  SYM_VALUE  . . . . . . . . . .  	0000
  SYM_TYPE . . . . . . . . . . .  	0004
  SYM_LEN  . . . . . . . . . . .  	0006
  SYM_NAME . . . . . . . . . . .  	0007
SYSINITVARS  . . . . . . . . . .  	0047	0018
  SYSI_DPB . . . . . . . . . . .  	0000
  SYSI_SFT . . . . . . . . . . .  	0004
  SYSI_CLOCK . . . . . . . . . .  	0008
  SYSI_CON . . . . . . . . . . .  	000C
  SYSI_MAXSEC  . . . . . . . . .  	0010
  SYSI_BUF . . . . . . . . . . .  	0012
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-4


  SYSI_CDS . . . . . . . . . . .  	0016
  SYSI_FCB . . . . . . . . . . .  	001A
  SYSI_KEEP  . . . . . . . . . .  	001E
  SYSI_NUMIO . . . . . . . . . .  	0020
  SYSI_NCDS  . . . . . . . . . .  	0021
  SYSI_DEV . . . . . . . . . . .  	0022
  SYSI_ATTR  . . . . . . . . . .  	0026
  SYSI_STRAT . . . . . . . . . .  	0028
  SYSI_INTER . . . . . . . . . .  	002A
  SYSI_NAME  . . . . . . . . . .  	002C
  SYSI_SPLICE  . . . . . . . . .  	0034
  SYSI_IBMDOS_SIZE . . . . . . .  	0035
  SYSI_IFS_DOSCALL@  . . . . . .  	0037
  SYSI_IFS . . . . . . . . . . .  	003B
  SYSI_BUFFERS . . . . . . . . .  	003F
  SYSI_BOOT_DRIVE  . . . . . . .  	0043
  SYSI_DWMOVE  . . . . . . . . .  	0044
  SYSI_EXT_MEM . . . . . . . . .  	0045
SYSINITVARS_EXT  . . . . . . . .  	0008	0002
  SYSI_INITVARS  . . . . . . . .  	0000
  SYSI_COUNTRY_TAB . . . . . . .  	0004
SYS_FCB  . . . . . . . . . . . .  	0025	000C
  FCB_DRIVE  . . . . . . . . . .  	0000
  FCB_NAME . . . . . . . . . . .  	0001
  FCB_EXT  . . . . . . . . . . .  	0009
  FCB_EXTENT . . . . . . . . . .  	000C
  FCB_RECSIZ . . . . . . . . . .  	000E
  FCB_FILSIZ . . . . . . . . . .  	0010
  FCB_DRVBP  . . . . . . . . . .  	0012
  FCB_FDATE  . . . . . . . . . .  	0014
  FCB_FTIME  . . . . . . . . . .  	0016
  FCB_RESERVED . . . . . . . . .  	0018
  FCB_NR . . . . . . . . . . . .  	0020
  FCB_RR . . . . . . . . . . . .  	0021
USER_ENVIRON . . . . . . . . . .  	0018	000C
  USER_AX  . . . . . . . . . . .  	0000
  USER_BX  . . . . . . . . . . .  	0002
  USER_CX  . . . . . . . . . . .  	0004
  USER_DX  . . . . . . . . . . .  	0006
  USER_SI  . . . . . . . . . . .  	0008
  USER_DI  . . . . . . . . . . .  	000A
  USER_BP  . . . . . . . . . . .  	000C
  USER_DS  . . . . . . . . . . .  	000E
  USER_ES  . . . . . . . . . . .  	0010
  USER_IP  . . . . . . . . . . .  	0012
  USER_CS  . . . . . . . . . . .  	0014
  USER_F . . . . . . . . . . . .  	0016

Segments and Groups:

                N a m e         	Length	 Align	Combine Class

DG . . . . . . . . . . . . . . .  	GROUP
  CODE . . . . . . . . . . . . .  	03B6	BYTE	PUBLIC	
  CONST  . . . . . . . . . . . .  	0000	BYTE	PUBLIC	
  CSTACK . . . . . . . . . . . .  	0000	PARA	STACK	
  DATA . . . . . . . . . . . . .  	0000	BYTE	PUBLIC	

Symbols:            

                N a m e         	Type	 Value	 Attr

ABORT  . . . . . . . . . . . . .  	NUMBER	0000	
ACCESS_MASK  . . . . . . . . . .  	NUMBER	000F	
ACTION_CREATED_OPENED  . . . . .  	NUMBER	0002	
ACTION_OPENED  . . . . . . . . .  	NUMBER	0001	
ACTION_REPLACED_OPENED . . . . .  	NUMBER	0003	
ADDRESS  . . . . . . . . . . . .  	L NEAR	0248	CODE	Global
ADDRESS_32_BIT . . . . . . . . .  	N PROC	039D	CODE	Length = 0019
ADDR_INT_ABORT . . . . . . . . .  	NUMBER	0080	
ADDR_INT_COMMAND . . . . . . . .  	NUMBER	0084	
ADDR_INT_CTRL_C  . . . . . . . .  	NUMBER	008C	
ADDR_INT_DISK_READ . . . . . . .  	NUMBER	0094	
ADDR_INT_DISK_WRITE  . . . . . .  	NUMBER	0098	
ADDR_INT_FASTCON . . . . . . . .  	NUMBER	00A4	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-5


ADDR_INT_FATAL_ABORT . . . . . .  	NUMBER	0090	
ADDR_INT_IBM . . . . . . . . . .  	NUMBER	00A8	
ADDR_INT_KEEP_PROCESS  . . . . .  	NUMBER	009C	
ADDR_INT_SPOOLER . . . . . . . .  	NUMBER	00A0	
ADDR_INT_TERMINATE . . . . . . .  	NUMBER	0088	
ADRERR . . . . . . . . . . . . .  	L NEAR	024D	CODE
ALLOC  . . . . . . . . . . . . .  	NUMBER	0048	
ALLOCOPER  . . . . . . . . . . .  	NUMBER	0058	
ALLOWED_FAIL . . . . . . . . . .  	NUMBER	0008	
ALLOWED_IGNORE . . . . . . . . .  	NUMBER	0020	
ALLOWED_RETRY  . . . . . . . . .  	NUMBER	0010	
ALTVECT  . . . . . . . . . . . .  	ALIAS	 FALSE		
ALT_EXPECTED_VERSION . . . . . .  	NUMBER	1A05	
ALT_MAJOR_VERSION  . . . . . . .  	NUMBER	0005	
ALT_MINOR_VERSION  . . . . . . .  	NUMBER	001A	
ARENA_OWNER_SYSTEM . . . . . . .  	NUMBER	0000	
ARENA_SIGNATURE_END  . . . . . .  	NUMBER	005A	
ARENA_SIGNATURE_NORMAL . . . . .  	NUMBER	004D	
ARG_BUF  . . . . . . . . . . . .  	V BYTE	0000	DATA	External
ARG_BUF_PTR  . . . . . . . . . .  	V BYTE	0000	DATA	External
ASCDMP . . . . . . . . . . . . .  	L NEAR	0100	CODE
ASCII  . . . . . . . . . . . . .  	L NEAR	00D3	CODE
ASSIGNOPER . . . . . . . . . . .  	NUMBER	005F	
ATTR_ALL . . . . . . . . . . . .  	NUMBER	0016	
ATTR_ARCHIVE . . . . . . . . . .  	NUMBER	0020	
ATTR_CHANGEABLE  . . . . . . . .  	NUMBER	0027	
ATTR_DEVICE  . . . . . . . . . .  	NUMBER	0040	
ATTR_DIRECTORY . . . . . . . . .  	NUMBER	0010	
ATTR_HIDDEN  . . . . . . . . . .  	NUMBER	0002	
ATTR_IGNORE  . . . . . . . . . .  	NUMBER	0061	
ATTR_READ_ONLY . . . . . . . . .  	NUMBER	0001	
ATTR_SYSTEM  . . . . . . . . . .  	NUMBER	0004	
ATTR_VOLUME_ID . . . . . . . . .  	NUMBER	0008	
AUTO_COMMIT_WRITE  . . . . . . .  	NUMBER	4000	

BACKUP . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
BIGRNG . . . . . . . . . . . . .  	L NEAR	0163	CODE
BLANK  . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
BPLEN  . . . . . . . . . . . . .  	NUMBER	0032	
BPMAX  . . . . . . . . . . . . .  	NUMBER	000A	
BPREG  . . . . . . . . . . . . .  	NUMBER	5042	
BS . . . . . . . . . . . . . . .  	L NEAR	0323	CODE
BUFFERFLAG . . . . . . . . . . .  	NUMBER	FFFF	
BUFINSIZ . . . . . . . . . . . .  	NUMBER	0014	
BUFLEN . . . . . . . . . . . . .  	NUMBER	0050	
BUFSIZ . . . . . . . . . . . . .  	NUMBER	0200	
BUF_DIRTY  . . . . . . . . . . .  	NUMBER	0040	
BUF_DPB  . . . . . . . . . . . .  		000D	
BUF_FILL . . . . . . . . . . . .  		0011	
BUF_FLAGS  . . . . . . . . . . .  		0005	
BUF_FREE . . . . . . . . . . . .  	NUMBER	00FF	
BUF_ID . . . . . . . . . . . . .  		0004	
BUF_ISDATA . . . . . . . . . . .  	NUMBER	0008	
BUF_ISDIR  . . . . . . . . . . .  	NUMBER	0004	
BUF_ISFAT  . . . . . . . . . . .  	NUMBER	0002	
BUF_ISNET  . . . . . . . . . . .  	NUMBER	0080	
BUF_NETID  . . . . . . . . . . .  	ALIAS	 BUFINSIZ		
BUF_NEXT . . . . . . . . . . . .  		0000	
BUF_OFFSET . . . . . . . . . . .  	DWORD	0006	
BUF_PREV . . . . . . . . . . . .  		0002	
BUF_RESERVED . . . . . . . . . .  		0013	
BUF_SECTOR . . . . . . . . . . .  		0006	
BUF_SNBUF  . . . . . . . . . . .  	NUMBER	0010	
BUF_TYPE_0 . . . . . . . . . . .  	NUMBER	00F1	
BUF_VISIT  . . . . . . . . . . .  	NUMBER	0020	
BUF_WRTCNT . . . . . . . . . . .  		000A	
BUF_WRTCNTINC  . . . . . . . . .  		000B	
BXREG  . . . . . . . . . . . . .  	NUMBER	5842	
BYTE0  . . . . . . . . . . . . .  	L NEAR	00AA	CODE
BYTE1  . . . . . . . . . . . . .  	L NEAR	00AD	CODE
BYTEBUF  . . . . . . . . . . . .  	V BYTE	0000	DATA	External

CARGS  . . . . . . . . . . . . .  	NUMBER	0000	
CHAR_AT_SIGN . . . . . . . . . .  	NUMBER	0040	
CHAR_BACKSPACE . . . . . . . . .  	NUMBER	0008	
CHAR_BLANK . . . . . . . . . . .  	NUMBER	0020	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-6


CHAR_COLON . . . . . . . . . . .  	NUMBER	003A	
CHAR_COMMA . . . . . . . . . . .  	NUMBER	002C	
CHAR_EOF . . . . . . . . . . . .  	NUMBER	001A	
CHAR_EQUAL . . . . . . . . . . .  	NUMBER	003D	
CHAR_LEFT_BRACKET  . . . . . . .  	NUMBER	005B	
CHAR_MINUS . . . . . . . . . . .  	NUMBER	002D	
CHAR_OPER  . . . . . . . . . . .  	NUMBER	0037	
CHAR_PERIOD  . . . . . . . . . .  	NUMBER	002E	
CHAR_RUBOUT  . . . . . . . . . .  	NUMBER	007F	
CHAR_SEMICOLON . . . . . . . . .  	NUMBER	003B	
CHAR_TAB . . . . . . . . . . . .  	NUMBER	0009	
CHAR_ZERO  . . . . . . . . . . .  	NUMBER	0030	
CHDIR  . . . . . . . . . . . . .  	NUMBER	003B	
CHMOD  . . . . . . . . . . . . .  	NUMBER	0043	
CLOSE  . . . . . . . . . . . . .  	NUMBER	003E	
COMMA  . . . . . . . . . . . . .  	NUMBER	2C00	
COMMAND  . . . . . . . . . . . .  	L NEAR	0000	CODE	External
COMMIT . . . . . . . . . . . . .  	NUMBER	0068	
COPYLIST . . . . . . . . . . . .  	L NEAR	0149	CODE
CR . . . . . . . . . . . . . . .  	NUMBER	000D	
CREAT  . . . . . . . . . . . . .  	NUMBER	003C	
CREATENEWFILE  . . . . . . . . .  	NUMBER	005B	
CREATETEMPFILE . . . . . . . . .  	NUMBER	005A	
CREATE_PROCESS_DATA_BLOCK  . . .  	NUMBER	0026	
CRITASSIGN . . . . . . . . . . .  	NUMBER	0008	
CRITDEVICE . . . . . . . . . . .  	NUMBER	0002	
CRITDISK . . . . . . . . . . . .  	NUMBER	0001	
CRITIFS  . . . . . . . . . . . .  	NUMBER	0006	
CRITMEM  . . . . . . . . . . . .  	NUMBER	0001	
CRITNET  . . . . . . . . . . . .  	NUMBER	0005	
CRITSFT  . . . . . . . . . . . .  	NUMBER	0001	
CRITSHARE  . . . . . . . . . . .  	NUMBER	0001	
CRLF . . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
CURDIRLEN  . . . . . . . . . . .  	NUMBER	0058	
CURDIR_INUSE . . . . . . . . . .  	NUMBER	4000	
CURDIR_ISIFS . . . . . . . . . .  	NUMBER	8000	
CURDIR_ISNET . . . . . . . . . .  	NUMBER	8000	
CURDIR_LOCAL . . . . . . . . . .  	NUMBER	1000	
CURDIR_NETID . . . . . . . . . .  	DWORD	0049	
CURDIR_SPLICE  . . . . . . . . .  	NUMBER	2000	
CURRENT_DIR  . . . . . . . . . .  	NUMBER	0047	
C_BS . . . . . . . . . . . . . .  	NUMBER	0008	
C_CR . . . . . . . . . . . . . .  	NUMBER	000D	
C_DEL  . . . . . . . . . . . . .  	NUMBER	007F	
C_ETB  . . . . . . . . . . . . .  	NUMBER	0017	
C_ETX  . . . . . . . . . . . . .  	NUMBER	0003	
C_HT . . . . . . . . . . . . . .  	NUMBER	0009	
C_LF . . . . . . . . . . . . . .  	NUMBER	000A	
C_NAK  . . . . . . . . . . . . .  	NUMBER	0015	

DBCS . . . . . . . . . . . . . .  	NUMBER	0000	
DEALLOC  . . . . . . . . . . . .  	NUMBER	0049	
DEBCOM1  . . . . . . . . . . . .  	L NEAR	0000	CODE
DEBUG  . . . . . . . . . . . . .  	NUMBER	0000	
DEFAULT  . . . . . . . . . . . .  	L NEAR	0058	CODE	Global
DEFDUMP  . . . . . . . . . . . .  	V BYTE	0000	DATA	External
DEFLEN . . . . . . . . . . . . .  	V WORD	0000	DATA	External
DEVID_BLOCK_DEV  . . . . . . . .  	NUMBER	001F	
DEVID_DEVICE . . . . . . . . . .  	NUMBER	0080	
DEVID_DEVICE_CLOCK . . . . . . .  	NUMBER	0008	
DEVID_DEVICE_CON_IN  . . . . . .  	NUMBER	0001	
DEVID_DEVICE_CON_OUT . . . . . .  	NUMBER	0002	
DEVID_DEVICE_EOF . . . . . . . .  	NUMBER	0040	
DEVID_DEVICE_NULL  . . . . . . .  	NUMBER	0004	
DEVID_DEVICE_RAW . . . . . . . .  	NUMBER	0020	
DEVID_DEVICE_SPECIAL . . . . . .  	NUMBER	0010	
DEVID_EOF  . . . . . . . . . . .  	NUMBER	0040	
DEVID_FILE_CLEAN . . . . . . . .  	NUMBER	0040	
DEVID_FILE_MASK_DRIVE  . . . . .  	NUMBER	003F	
DEVID_ISCIN  . . . . . . . . . .  	NUMBER	0001	
DEVID_ISCLK  . . . . . . . . . .  	NUMBER	0008	
DEVID_ISCOT  . . . . . . . . . .  	NUMBER	0002	
DEVID_ISDEV  . . . . . . . . . .  	NUMBER	0080	
DEVID_ISNUL  . . . . . . . . . .  	NUMBER	0004	
DEVID_RAW  . . . . . . . . . . .  	NUMBER	0020	
DEVID_SPECIAL  . . . . . . . . .  	NUMBER	0010	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-7


DIREG  . . . . . . . . . . . . .  	NUMBER	4944	
DIRSTRLEN  . . . . . . . . . . .  	NUMBER	0043	
DIR_SEARCH_FIRST . . . . . . . .  	NUMBER	0011	
DIR_SEARCH_NEXT  . . . . . . . .  	NUMBER	0012	
DISK_RESET . . . . . . . . . . .  	NUMBER	000D	
DISPB  . . . . . . . . . . . . .  	V WORD	0000	CONST	External
DOSCAN . . . . . . . . . . . . .  	L NEAR	0184	CODE
DOUBLE_QUOTE . . . . . . . . . .  	NUMBER	0022	
DPBSIZ . . . . . . . . . . . . .  	NUMBER	0021	
DSIZ . . . . . . . . . . . . . .  	V BYTE	0000	CONST	External
DSKSIZ . . . . . . . . . . . . .  	NUMBER	000D	
DSRANGE  . . . . . . . . . . . .  	L NEAR	0000	CODE	Global
DSRNG1 . . . . . . . . . . . . .  	L NEAR	002E	CODE
DSRNG2 . . . . . . . . . . . . .  	L NEAR	0031	CODE
DSSAVE . . . . . . . . . . . . .  	V WORD	0000	CONST	External
DUMP . . . . . . . . . . . . . .  	L NEAR	006E	CODE	Global
DUP_PDB  . . . . . . . . . . . .  	NUMBER	0055	
DWAIT  . . . . . . . . . . . . .  	L NEAR	02FB	CODE

ECS_CALL . . . . . . . . . . . .  	NUMBER	0063	
EMS_GET_MAN_STAT . . . . . . . .  	NUMBER	0040	
EMS_GET_PAGE_MAP . . . . . . . .  	NUMBER	0000	
EMS_GET_SET_PG_MP  . . . . . . .  	NUMBER	004E	
EMS_HANDLE_CNT . . . . . . . . .  	NUMBER	004B	
EMS_HANDLE_PAGES . . . . . . . .  	NUMBER	004D	
EMS_HANDLE_TOTAL . . . . . . . .  	NUMBER	00FF	
EMS_HAN_ALLOC  . . . . . . . . .  	NUMBER	0043	
EMS_LIM_40 . . . . . . . . . . .  	NUMBER	0040	
EMS_MAP_BUFF_SIZE  . . . . . . .  	NUMBER	000C	
EMS_MAP_MEMORY . . . . . . . . .  	NUMBER	0044	
EMS_PAGE_DEALL . . . . . . . . .  	NUMBER	0045	
EMS_PG_FRAME . . . . . . . . . .  	NUMBER	5800	
EMS_REST_PAGE_MAP  . . . . . . .  	NUMBER	0048	
EMS_SAVE_PAGE_MAP  . . . . . . .  	NUMBER	0047	
EMS_SET_PAGE_MAP . . . . . . . .  	NUMBER	0001	
EMS_UNALL_PG_CNT . . . . . . . .  	NUMBER	0042	
EMS_VERSION  . . . . . . . . . .  	NUMBER	0046	
ENDROW . . . . . . . . . . . . .  	L NEAR	00C8	CODE
ENTERDATA  . . . . . . . . . . .  	L NEAR	02A3	CODE	Global
ENTRYPOINT . . . . . . . . . . .  	NUMBER	00C0	
EOL  . . . . . . . . . . . . . .  	L NEAR	037C	CODE
ERRACT_ABORT . . . . . . . . . .  	NUMBER	0004	
ERRACT_DLYRET  . . . . . . . . .  	NUMBER	0002	
ERRACT_IGNORE  . . . . . . . . .  	NUMBER	0006	
ERRACT_INTRET  . . . . . . . . .  	NUMBER	0007	
ERRACT_PANIC . . . . . . . . . .  	NUMBER	0005	
ERRACT_RETRY . . . . . . . . . .  	NUMBER	0001	
ERRACT_USER  . . . . . . . . . .  	NUMBER	0003	
ERRCLASS_ALREADY . . . . . . . .  	NUMBER	000C	
ERRCLASS_APPERR  . . . . . . . .  	NUMBER	0007	
ERRCLASS_AUTH  . . . . . . . . .  	NUMBER	0003	
ERRCLASS_BADFMT  . . . . . . . .  	NUMBER	0009	
ERRCLASS_HRDFAIL . . . . . . . .  	NUMBER	0005	
ERRCLASS_INTRN . . . . . . . . .  	NUMBER	0004	
ERRCLASS_LOCKED  . . . . . . . .  	NUMBER	000A	
ERRCLASS_MEDIA . . . . . . . . .  	NUMBER	000B	
ERRCLASS_NOTFND  . . . . . . . .  	NUMBER	0008	
ERRCLASS_OUTRES  . . . . . . . .  	NUMBER	0001	
ERRCLASS_SYSFAIL . . . . . . . .  	NUMBER	0006	
ERRCLASS_TEMPSIT . . . . . . . .  	NUMBER	0002	
ERRCLASS_UNK . . . . . . . . . .  	NUMBER	000D	
ERRLOC_DISK  . . . . . . . . . .  	NUMBER	0002	
ERRLOC_MEM . . . . . . . . . . .  	NUMBER	0005	
ERRLOC_NET . . . . . . . . . . .  	NUMBER	0003	
ERRLOC_SERDEV  . . . . . . . . .  	NUMBER	0004	
ERRLOC_UNK . . . . . . . . . . .  	NUMBER	0001	
ERROR_ACCESS_DENIED  . . . . . .  	NUMBER	0005	
ERROR_ALREADY_ASSIGNED . . . . .  	NUMBER	0055	
ERROR_ARENA_TRASHED  . . . . . .  	NUMBER	0007	
ERROR_BAD_COMMAND  . . . . . . .  	NUMBER	0016	
ERROR_BAD_ENVIRONMENT  . . . . .  	NUMBER	000A	
ERROR_BAD_FORMAT . . . . . . . .  	NUMBER	000B	
ERROR_BAD_LENGTH . . . . . . . .  	NUMBER	0018	
ERROR_BAD_UNIT . . . . . . . . .  	NUMBER	0014	
ERROR_CANNOT_MAKE  . . . . . . .  	NUMBER	0052	
ERROR_CODE_PAGE_MISMATCHED . . .  	NUMBER	0025	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-8


ERROR_CRC  . . . . . . . . . . .  	NUMBER	0017	
ERROR_CURRENT_DIRECTORY  . . . .  	NUMBER	0010	
ERROR_DUP_FCB  . . . . . . . . .  	NUMBER	0051	
ERROR_FAIL_I24 . . . . . . . . .  	NUMBER	0053	
ERROR_FCB_UNAVAILABLE  . . . . .  	NUMBER	0023	
ERROR_FILE_EXISTS  . . . . . . .  	NUMBER	0050	
ERROR_FILE_NOT_FOUND . . . . . .  	NUMBER	0002	
ERROR_GEN_FAILURE  . . . . . . .  	NUMBER	001F	
ERROR_HANDLE_DISK_FULL . . . . .  	NUMBER	0027	
ERROR_HANDLE_EOF . . . . . . . .  	NUMBER	0026	
ERROR_I24_BAD_COMMAND  . . . . .  	NUMBER	0003	
ERROR_I24_BAD_LENGTH . . . . . .  	NUMBER	0005	
ERROR_I24_BAD_UNIT . . . . . . .  	NUMBER	0001	
ERROR_I24_CRC  . . . . . . . . .  	NUMBER	0004	
ERROR_I24_GEN_FAILURE  . . . . .  	NUMBER	000C	
ERROR_I24_NOT_DOS_DISK . . . . .  	NUMBER	0007	
ERROR_I24_NOT_READY  . . . . . .  	NUMBER	0002	
ERROR_I24_OUT_OF_PAPER . . . . .  	NUMBER	0009	
ERROR_I24_READ_FAULT . . . . . .  	NUMBER	000B	
ERROR_I24_SECTOR_NOT_FOUND . . .  	NUMBER	0008	
ERROR_I24_SEEK . . . . . . . . .  	NUMBER	0006	
ERROR_I24_WRITE_FAULT  . . . . .  	NUMBER	000A	
ERROR_I24_WRITE_PROTECT  . . . .  	NUMBER	0000	
ERROR_I24_WRONG_DISK . . . . . .  	NUMBER	000F	
ERROR_INVALID_ACCESS . . . . . .  	NUMBER	000C	
ERROR_INVALID_BLOCK  . . . . . .  	NUMBER	0009	
ERROR_INVALID_DATA . . . . . . .  	NUMBER	000D	
ERROR_INVALID_DRIVE  . . . . . .  	NUMBER	000F	
ERROR_INVALID_FUNCTION . . . . .  	NUMBER	0001	
ERROR_INVALID_HANDLE . . . . . .  	NUMBER	0006	
ERROR_INVALID_PARAMETER  . . . .  	NUMBER	0057	
ERROR_INVALID_PASSWORD . . . . .  	NUMBER	0056	
ERROR_LOCK_VIOLATION . . . . . .  	NUMBER	0021	
ERROR_NET_WRITE_FAULT  . . . . .  	NUMBER	0058	
ERROR_NOT_DOS_DISK . . . . . . .  	NUMBER	001A	
ERROR_NOT_ENOUGH_MEMORY  . . . .  	NUMBER	0008	
ERROR_NOT_READY  . . . . . . . .  	NUMBER	0015	
ERROR_NOT_SAME_DEVICE  . . . . .  	NUMBER	0011	
ERROR_NOT_SUPPORTED  . . . . . .  	NUMBER	0032	
ERROR_NO_MORE_FILES  . . . . . .  	NUMBER	0012	
ERROR_OUT_OF_PAPER . . . . . . .  	NUMBER	001C	
ERROR_OUT_OF_STRUCTURES  . . . .  	NUMBER	0054	
ERROR_PATH_NOT_FOUND . . . . . .  	NUMBER	0003	
ERROR_READ_FAULT . . . . . . . .  	NUMBER	001E	
ERROR_SECTOR_NOT_FOUND . . . . .  	NUMBER	001B	
ERROR_SEEK . . . . . . . . . . .  	NUMBER	0019	
ERROR_SHARING_BUFFER_EXCEEDED  .  	NUMBER	0024	
ERROR_SHARING_VIOLATION  . . . .  	NUMBER	0020	
ERROR_SYS_COMP_NOT_LOADED  . . .  	NUMBER	005A	
ERROR_TOO_MANY_OPEN_FILES  . . .  	NUMBER	0004	
ERROR_WRITE_FAULT  . . . . . . .  	NUMBER	001D	
ERROR_WRITE_PROTECT  . . . . . .  	NUMBER	0013	
ERROR_WRONG_DISK . . . . . . . .  	NUMBER	0022	
EXEC . . . . . . . . . . . . . .  	NUMBER	004B	
EXEC_FUNC_NO_EXECUTE . . . . . .  	NUMBER	0001	
EXEC_FUNC_OVERLAY  . . . . . . .  	NUMBER	0002	
EXEFCB . . . . . . . . . . . . .  	ALIAS	 FCB		
EXE_VALID_OLD_SIGNATURE  . . . .  	NUMBER	4D5A	
EXE_VALID_SIGNATURE  . . . . . .  	NUMBER	5A4D	
EXISTS_MASK  . . . . . . . . . .  	NUMBER	000F	
EXIT . . . . . . . . . . . . . .  	NUMBER	004C	
EXIT_ABORT . . . . . . . . . . .  	NUMBER	0000	
EXIT_CTRL_C  . . . . . . . . . .  	NUMBER	0001	
EXIT_HARD_ERROR  . . . . . . . .  	NUMBER	0002	
EXIT_KEEP_PROCESS  . . . . . . .  	NUMBER	0003	
EXIT_TERMINATE . . . . . . . . .  	NUMBER	0000	
EXPECTED_VERSION . . . . . . . .  	NUMBER	0004	
EXTHANDLE  . . . . . . . . . . .  	NUMBER	0067	
EXTOPEN  . . . . . . . . . . . .  	NUMBER	006C	
EXT_EXISTS_FAIL  . . . . . . . .  	NUMBER	0000	
EXT_EXISTS_OPEN  . . . . . . . .  	NUMBER	0001	
EXT_FILE_NOT_EXISTS  . . . . . .  	NUMBER	0004	
EXT_NEXISTS_CREATE . . . . . . .  	NUMBER	0010	
EXT_OPEN_I24_OFF . . . . . . . .  	NUMBER	0002	
EXT_OPEN_ON  . . . . . . . . . .  	NUMBER	0001	

Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-9


FALSE  . . . . . . . . . . . . .  	NUMBER	0000	
FCB  . . . . . . . . . . . . . .  	NUMBER	005C	
FCBDEVICE  . . . . . . . . . . .  	NUMBER	0040	
FCBMASK  . . . . . . . . . . . .  	NUMBER	00C0	
FCBNETWORK . . . . . . . . . . .  	NUMBER	0080	
FCBSHARE . . . . . . . . . . . .  	NUMBER	00C0	
FCBSPECIAL . . . . . . . . . . .  	NUMBER	0080	
FCB_CLOSE  . . . . . . . . . . .  	NUMBER	0010	
FCB_CREATE . . . . . . . . . . .  	NUMBER	0016	
FCB_DELETE . . . . . . . . . . .  	NUMBER	0013	
FCB_L_ATTR . . . . . . . . . . .  	BYTE	001E	
FCB_L_DRIVE  . . . . . . . . . .  	BYTE	0019	
FCB_L_FIRCLUS  . . . . . . . . .  	WORD	001A	
FCB_L_MFS  . . . . . . . . . . .  	WORD	001C	
FCB_NETID  . . . . . . . . . . .  	DWORD	001C	
FCB_NET_DRIVE  . . . . . . . . .  	BYTE	0019	
FCB_NET_HANDLE . . . . . . . . .  	WORD	001A	
FCB_NSLD_DRIVE . . . . . . . . .  	BYTE	0019	
FCB_NSLD_DRVPTR  . . . . . . . .  	DWORD	001A	
FCB_NSL_BITS . . . . . . . . . .  	BYTE	001A	
FCB_NSL_DIRPOS . . . . . . . . .  	BYTE	001F	
FCB_NSL_DIRSEC . . . . . . . . .  	WORD	001D	
FCB_NSL_DRIVE  . . . . . . . . .  	BYTE	0019	
FCB_NSL_FIRCLUS  . . . . . . . .  	WORD	001B	
FCB_OPEN . . . . . . . . . . . .  	NUMBER	000F	
FCB_RANDOM_READ  . . . . . . . .  	NUMBER	0021	
FCB_RANDOM_READ_BLOCK  . . . . .  	NUMBER	0027	
FCB_RANDOM_WRITE . . . . . . . .  	NUMBER	0022	
FCB_RANDOM_WRITE_BLOCK . . . . .  	NUMBER	0028	
FCB_RENAME . . . . . . . . . . .  	NUMBER	0017	
FCB_SEQ_READ . . . . . . . . . .  	NUMBER	0014	
FCB_SEQ_WRITE  . . . . . . . . .  	NUMBER	0015	
FCB_SFN  . . . . . . . . . . . .  	BYTE	0018	
FCHK . . . . . . . . . . . . . .  	NUMBER	0001	
FDELIM . . . . . . . . . . . . .  	NUMBER	0002	
FFCB . . . . . . . . . . . . . .  	NUMBER	0008	
FILDIRENT  . . . . . . . . . . .  	NUMBER	0010	
FILE_TIMES . . . . . . . . . . .  	NUMBER	0057	
FILL . . . . . . . . . . . . . .  	L NEAR	014E	CODE	Global
FILPERPROC . . . . . . . . . . .  	NUMBER	0014	
FIND_FIRST . . . . . . . . . . .  	NUMBER	004E	
FIND_NEXT  . . . . . . . . . . .  	NUMBER	004F	
FSPCHK . . . . . . . . . . . . .  	NUMBER	0004	
F_AUX  . . . . . . . . . . . . .  	NUMBER	0010	
F_CARRY  . . . . . . . . . . . .  	NUMBER	0001	
F_DIRECTION  . . . . . . . . . .  	NUMBER	0400	
F_INTERRUPT  . . . . . . . . . .  	NUMBER	0200	
F_OVERFLOW . . . . . . . . . . .  	NUMBER	0800	
F_PARITY . . . . . . . . . . . .  	NUMBER	0004	
F_SIGN . . . . . . . . . . . . .  	NUMBER	0080	
F_TRACE  . . . . . . . . . . . .  	NUMBER	0100	
F_ZERO . . . . . . . . . . . . .  	NUMBER	0040	

GENERIC_IOCTL  . . . . . . . . .  	NUMBER	440D	
GETBYTE  . . . . . . . . . . . .  	L NEAR	02C8	CODE
GETCURRENTPSP  . . . . . . . . .  	NUMBER	0062	
GETDEF . . . . . . . . . . . . .  	L NEAR	0034	CODE
GETDIG . . . . . . . . . . . . .  	L NEAR	02E9	CODE
GETDISP  . . . . . . . . . . . .  	L NEAR	0269	CODE
GETEOL . . . . . . . . . . . . .  	L NEAR	0229	CODE	Global
GETEXTCNTRY  . . . . . . . . . .  	NUMBER	0065	
GETEXTENDEDERROR . . . . . . . .  	NUMBER	0059	
GETHEX . . . . . . . . . . . . .  	L NEAR	01C1	CODE	Global
GETHEX1  . . . . . . . . . . . .  	L NEAR	01C6	CODE	Global
GETHX  . . . . . . . . . . . . .  	L NEAR	01A4	CODE	Global
GETHX1 . . . . . . . . . . . . .  	L NEAR	01A7	CODE
GETHX2 . . . . . . . . . . . . .  	L NEAR	01C9	CODE
GETLEN . . . . . . . . . . . . .  	L NEAR	0041	CODE
GETLIST  . . . . . . . . . . . .  	L NEAR	0296	CODE
GETLP  . . . . . . . . . . . . .  	L NEAR	01B2	CODE
GETRET . . . . . . . . . . . . .  	L NEAR	0273	CODE
GETROW . . . . . . . . . . . . .  	L NEAR	02B3	CODE
GETSETCDPG . . . . . . . . . . .  	NUMBER	0066	
GETSETMEDIAID  . . . . . . . . .  	NUMBER	0069	
GET_ADDRESS  . . . . . . . . . .  	L NEAR	024F	CODE	Global
GET_CURRENT_PDB  . . . . . . . .  	NUMBER	0051	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-10


GET_DATE . . . . . . . . . . . .  	NUMBER	002A	
GET_DEFAULT_DPB  . . . . . . . .  	NUMBER	001F	
GET_DEFAULT_DRIVE  . . . . . . .  	NUMBER	0019	
GET_DMA  . . . . . . . . . . . .  	NUMBER	002F	
GET_DPB  . . . . . . . . . . . .  	NUMBER	0032	
GET_DRIVE_FREESPACE  . . . . . .  	NUMBER	0036	
GET_FCB_FILE_LENGTH  . . . . . .  	NUMBER	0023	
GET_FCB_POSITION . . . . . . . .  	NUMBER	0024	
GET_INDOS_FLAG . . . . . . . . .  	NUMBER	0034	
GET_INTERRUPT_VECTOR . . . . . .  	NUMBER	0035	
GET_IN_VARS  . . . . . . . . . .  	NUMBER	0052	
GET_TIME . . . . . . . . . . . .  	NUMBER	002C	
GET_VERIFY_ON_WRITE  . . . . . .  	NUMBER	0054	
GET_VERSION  . . . . . . . . . .  	NUMBER	0030	
GRET . . . . . . . . . . . . . .  	L NEAR	01F7	CODE

HANDLE_FAIL_I24  . . . . . . . .  	NUMBER	0100	
HEX  . . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
HEXCHK . . . . . . . . . . . . .  	L NEAR	01CF	CODE	Global
HEXIN  . . . . . . . . . . . . .  	L NEAR	01CD	CODE	Global
HEX_ADDRESS_ONLY . . . . . . . .  	L NEAR	0000	CODE	External
HEX_ADDRESS_STR  . . . . . . . .  	L NEAR	0000	CODE	External
HONGEUL  . . . . . . . . . . . .  	NUMBER	0063	
HXERR  . . . . . . . . . . . . .  	L NEAR	01CC	CODE

I24_AREA . . . . . . . . . . . .  	NUMBER	0006	
I24_CLASS  . . . . . . . . . . .  	NUMBER	0080	
I24_OPERATION  . . . . . . . . .  	NUMBER	0001	
IBM  . . . . . . . . . . . . . .  	ALIAS	 IBMVER		
IBMCOPYRIGHT . . . . . . . . . .  	ALIAS	 FALSE		
IBMJAPAN . . . . . . . . . . . .  	ALIAS	 FALSE		
IBMJAPVER  . . . . . . . . . . .  	ALIAS	 FALSE		
IBMVER . . . . . . . . . . . . .  	ALIAS	 TRUE		
IFS_IOCTL  . . . . . . . . . . .  	NUMBER	006B	
INPT . . . . . . . . . . . . . .  	L NEAR	0382	CODE
INROW  . . . . . . . . . . . . .  	L NEAR	00A9	CODE
INSTALLED  . . . . . . . . . . .  	NUMBER	FFFF	
INSTALLEDDATA  . . . . . . . . .  	NUMBER	0000	
INTBASE  . . . . . . . . . . . .  	NUMBER	0080	
INTERNAT . . . . . . . . . . . .  	ALIAS	 FALSE		
INTERNATIONAL  . . . . . . . . .  	NUMBER	0038	
INTERNAT_BLOCK_MAX . . . . . . .  	NUMBER	0020	
INTTAB . . . . . . . . . . . . .  	NUMBER	0020	
INT_24_ERROR . . . . . . . . . .  	NUMBER	2000	
INT_ABORT  . . . . . . . . . . .  	ALIAS	 INTTAB		
INT_COMMAND  . . . . . . . . . .  	NUMBER	0021	
INT_CTRL_C . . . . . . . . . . .  	NUMBER	0023	
INT_DISK_READ  . . . . . . . . .  	NUMBER	0025	
INT_DISK_WRITE . . . . . . . . .  	NUMBER	0026	
INT_FASTCON  . . . . . . . . . .  	NUMBER	0029	
INT_FATAL_ABORT  . . . . . . . .  	NUMBER	0024	
INT_IBM  . . . . . . . . . . . .  	NUMBER	002A	
INT_KEEP_PROCESS . . . . . . . .  	NUMBER	0027	
INT_MASK . . . . . . . . . . . .  	NUMBER	00FF	
INT_SPOOLER  . . . . . . . . . .  	NUMBER	0028	
INT_TERMINATE  . . . . . . . . .  	NUMBER	0022	
IOCTL  . . . . . . . . . . . . .  	NUMBER	0044	
IO_MODE_ID . . . . . . . . . . .  	NUMBER	0002	

JAPAN  . . . . . . . . . . . . .  	ALIAS	 FALSE		

KANJI  . . . . . . . . . . . . .  	ALIAS	 FALSE		
KEEP_PROCESS . . . . . . . . . .  	NUMBER	0031	
KOREA  . . . . . . . . . . . . .  	ALIAS	 FALSE		

LF . . . . . . . . . . . . . . .  	NUMBER	000A	
LIST . . . . . . . . . . . . . .  	L NEAR	021B	CODE
LISTITEM . . . . . . . . . . . .  	L NEAR	01E4	CODE
LISTLP . . . . . . . . . . . . .  	L NEAR	021E	CODE
LOCKOPER . . . . . . . . . . . .  	NUMBER	005C	
LOOK_AGAIN . . . . . . . . . . .  	L NEAR	02E3	CODE
LOWER_A  . . . . . . . . . . . .  	NUMBER	0061	
LOWER_Z  . . . . . . . . . . . .  	NUMBER	007A	
LSEEK  . . . . . . . . . . . . .  	NUMBER	0042	
LSEEK_EOF_OPTION . . . . . . . .  	NUMBER	0002	
LSEEK_FROM_START . . . . . . . .  	NUMBER	0000	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-11



MAJOR_VERSION  . . . . . . . . .  	NUMBER	0004	
MASK_PORT  . . . . . . . . . . .  	NUMBER	0021	
MAXBUCKETINPAGE  . . . . . . . .  	NUMBER	0002	
MAXBUFFINBUCKET  . . . . . . . .  	NUMBER	000F	
MEMS . . . . . . . . . . . . . .  	NUMBER	0001	
MINOR_VERSION  . . . . . . . . .  	NUMBER	0000	
MI_INT . . . . . . . . . . . . .  	NUMBER	00CD	
MI_LONG_CALL . . . . . . . . . .  	NUMBER	009A	
MI_LONG_JMP  . . . . . . . . . .  	NUMBER	00EA	
MI_LONG_RET  . . . . . . . . . .  	NUMBER	00CB	
MI_NEAR_RET  . . . . . . . . . .  	NUMBER	00C3	
MKDIR  . . . . . . . . . . . . .  	NUMBER	0039	
MOVE . . . . . . . . . . . . . .  	L NEAR	0127	CODE	Global
MSVER  . . . . . . . . . . . . .  	NUMBER	0000	
MULTDOS  . . . . . . . . . . . .  	NUMBER	0012	
MULTIFS  . . . . . . . . . . . .  	NUMBER	0011	
MULTNET  . . . . . . . . . . . .  	NUMBER	0011	
MULTSHARE  . . . . . . . . . . .  	NUMBER	0010	

NEWROW . . . . . . . . . . . . .  	L NEAR	036F	CODE
NEXT . . . . . . . . . . . . . .  	L NEAR	034C	CODE
NLSFUNC  . . . . . . . . . . . .  	NUMBER	0014	
NOHEX  . . . . . . . . . . . . .  	L NEAR	02FE	CODE
NOPRT  . . . . . . . . . . . . .  	L NEAR	0109	CODE
NOSTO  . . . . . . . . . . . . .  	L NEAR	034A	CODE
NOT_EXISTS_MASK  . . . . . . . .  	NUMBER	00F0	
NO_CODE_PAGE_CHECK . . . . . . .  	NUMBER	0100	

OEM_C1 . . . . . . . . . . . . .  	NUMBER	00F9	
OEM_C2 . . . . . . . . . . . . .  	NUMBER	00FA	
OEM_C3 . . . . . . . . . . . . .  	NUMBER	00FB	
OEM_C4 . . . . . . . . . . . . .  	NUMBER	00FC	
OEM_C5 . . . . . . . . . . . . .  	NUMBER	00FD	
OEM_C6 . . . . . . . . . . . . .  	NUMBER	00FE	
OEM_C7 . . . . . . . . . . . . .  	NUMBER	00FF	
OKRET  . . . . . . . . . . . . .  	L NEAR	0056	CODE
ONE_CHAR_BUF . . . . . . . . . .  	V BYTE	0000	DATA	External
ONE_CHAR_BUF_PTR . . . . . . . .  	V WORD	0000	DATA	External
OPBUFLEN . . . . . . . . . . . .  	NUMBER	0023	
OPEN . . . . . . . . . . . . . .  	NUMBER	003D	
OPEN_FOR_BOTH  . . . . . . . . .  	NUMBER	0002	
OPEN_FOR_READ  . . . . . . . . .  	NUMBER	0000	
OPEN_FOR_WRITE . . . . . . . . .  	NUMBER	0001	
OUTDI  . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
OUTSI  . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
OUT_CHAR . . . . . . . . . . . .  	L NEAR	0387	CODE

PARSE_FILE_DESCRIPTOR  . . . . .  	NUMBER	0029	
PATHPARSE  . . . . . . . . . . .  	NUMBER	0061	
PDB_APPEND . . . . . . . . . . .  	BYTE	003D	
PDB_INTERCON . . . . . . . . . .  	BYTE	003C	
PERR . . . . . . . . . . . . . .  	L NEAR	022F	CODE	Global
PERROR . . . . . . . . . . . . .  	L NEAR	0230	CODE	Global
PREV . . . . . . . . . . . . . .  	L NEAR	0375	CODE
PRIN . . . . . . . . . . . . . .  	L NEAR	010B	CODE
PRINT  . . . . . . . . . . . . .  	L NEAR	0242	CODE	Global
PRINTF_CRLF  . . . . . . . . . .  	L NEAR	0000	CODE	External
PROMPT . . . . . . . . . . . . .  	NUMBER	002D	
PUTDOT . . . . . . . . . . . . .  	L NEAR	0333	CODE

RANGE  . . . . . . . . . . . . .  	L NEAR	000A	CODE
RAW_CON_INPUT  . . . . . . . . .  	NUMBER	0007	
RAW_CON_IO . . . . . . . . . . .  	NUMBER	0006	
READ . . . . . . . . . . . . . .  	NUMBER	003F	
READ_SECTOR  . . . . . . . . . .  	NUMBER	0000	
READ_WRITE . . . . . . . . . . .  	NUMBER	0008	
REDIRECTOR . . . . . . . . . . .  	NUMBER	0000	
REGTABLEN  . . . . . . . . . . .  	NUMBER	000E	
RENAME . . . . . . . . . . . . .  	NUMBER	0056	
RESERVED_BITS_MASK . . . . . . .  	NUMBER	FE00	
RET1 . . . . . . . . . . . . . .  	L NEAR	014D	CODE
RET2 . . . . . . . . . . . . . .  	L NEAR	01E3	CODE
RET3 . . . . . . . . . . . . . .  	L NEAR	022E	CODE
RETHX  . . . . . . . . . . . . .  	L NEAR	01CB	CODE
RMDIR  . . . . . . . . . . . . .  	NUMBER	003A	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-12


RNGRET . . . . . . . . . . . . .  	L NEAR	0048	CODE
RNGRET1  . . . . . . . . . . . .  	L NEAR	004A	CODE
RUB  . . . . . . . . . . . . . .  	L NEAR	031E	CODE

SCAN . . . . . . . . . . . . . .  	L NEAR	0180	CODE
SCANB  . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
SCANP  . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
SEARCH . . . . . . . . . . . . .  	L NEAR	0171	CODE	Global
SEGDIF . . . . . . . . . . . . .  	NUMBER	0000	
SEGLET . . . . . . . . . . . . .  	L BYTE	0292	CODE
SEGREG . . . . . . . . . . . . .  	L NEAR	0275	CODE
SERVERCALL . . . . . . . . . . .  	NUMBER	005D	
SETBLOCK . . . . . . . . . . . .  	NUMBER	004A	
SETCNTC  . . . . . . . . . . . .  	ALIAS	 TRUE		
SETDPB . . . . . . . . . . . . .  	NUMBER	0053	
SET_CTRL_C_TRAPPING  . . . . . .  	NUMBER	0033	
SET_CURRENT_PDB  . . . . . . . .  	NUMBER	0050	
SET_DATE . . . . . . . . . . . .  	NUMBER	002B	
SET_DEFAULT_DRIVE  . . . . . . .  	NUMBER	000E	
SET_DMA  . . . . . . . . . . . .  	NUMBER	001A	
SET_DRIVEID_OPTION . . . . . . .  	NUMBER	0001	
SET_INTERRUPT_VECTOR . . . . . .  	NUMBER	0025	
SET_OEM_HANDLER  . . . . . . . .  	NUMBER	00F8	
SET_PRINTER_FLAG . . . . . . . .  	NUMBER	0064	
SET_TIME . . . . . . . . . . . .  	NUMBER	002D	
SET_VERIFY_ON_WRITE  . . . . . .  	NUMBER	002E	
SF_BUSY  . . . . . . . . . . . .  	NUMBER	-0001	
SF_CLOSE_NODATE  . . . . . . . .  	NUMBER	4000	
SF_DEFAULT_NUMBER  . . . . . . .  	NUMBER	0005	
SF_FSDA  . . . . . . . . . . . .  	BYTE	0019	
SF_ISFCB . . . . . . . . . . . .  	NUMBER	8000	
SF_ISNET . . . . . . . . . . . .  	NUMBER	8000	
SF_LRU . . . . . . . . . . . . .  	WORD	0015	
SF_NETID . . . . . . . . . . . .  	BYTE	0019	
SF_NET_SPOOL . . . . . . . . . .  	NUMBER	0800	
SF_NO_INHERIT  . . . . . . . . .  	NUMBER	1000	
SF_OPENAGE . . . . . . . . . . .  	WORD	0017	
SF_PIPE  . . . . . . . . . . . .  	NUMBER	2000	
SF_SERIAL_ID . . . . . . . . . .  	WORD	000B	
SHAREF . . . . . . . . . . . . .  	NUMBER	0000	
SHARING_COMPAT . . . . . . . . .  	NUMBER	0000	
SHARING_DENY_BOTH  . . . . . . .  	NUMBER	0010	
SHARING_DENY_NONE  . . . . . . .  	NUMBER	0040	
SHARING_DENY_READ  . . . . . . .  	NUMBER	0030	
SHARING_DENY_WRITE . . . . . . .  	NUMBER	0020	
SHARING_MASK . . . . . . . . . .  	NUMBER	00F0	
SHARING_NET_FCB  . . . . . . . .  	NUMBER	0070	
SHARING_NO_INHERIT . . . . . . .  	NUMBER	0080	
SINGLE_QUOTE . . . . . . . . . .  	NUMBER	0027	
SIREG  . . . . . . . . . . . . .  	NUMBER	4953	
STDAUX . . . . . . . . . . . . .  	NUMBER	0003	
STDERR . . . . . . . . . . . . .  	NUMBER	0002	
STDIN  . . . . . . . . . . . . .  	NUMBER	0000	
STDOUT . . . . . . . . . . . . .  	NUMBER	0001	
STDPRN . . . . . . . . . . . . .  	NUMBER	0004	
STD_AUX_INPUT  . . . . . . . . .  	NUMBER	0003	
STD_AUX_OUTPUT . . . . . . . . .  	NUMBER	0004	
STD_CON_INPUT  . . . . . . . . .  	NUMBER	0001	
STD_CON_INPUT_FLUSH  . . . . . .  	NUMBER	000C	
STD_CON_INPUT_NO_ECHO  . . . . .  	NUMBER	0008	
STD_CON_INPUT_STATUS . . . . . .  	NUMBER	000B	
STD_CON_OUTPUT . . . . . . . . .  	NUMBER	0002	
STD_CON_STRING_INPUT . . . . . .  	NUMBER	000A	
STD_CON_STRING_OUTPUT  . . . . .  	NUMBER	0009	
STD_PRINTER_OUTPUT . . . . . . .  	NUMBER	0005	
STD_PRINTF . . . . . . . . . . .  	L NEAR	0000	CODE	External
STORE  . . . . . . . . . . . . .  	L NEAR	033A	CODE
STOSTRG  . . . . . . . . . . . .  	L NEAR	0216	CODE
STRING . . . . . . . . . . . . .  	L NEAR	0205	CODE
STRINGCHK  . . . . . . . . . . .  	L NEAR	01F9	CODE
STRNGLP  . . . . . . . . . . . .  	L NEAR	0208	CODE
SYNERR_PTR . . . . . . . . . . .  	V BYTE	0000	CONST	External
SYSVER . . . . . . . . . . . . .  	ALIAS	 FALSE		

TAB  . . . . . . . . . . . . . .  	L NEAR	0000	CODE	External
TEMPLEN  . . . . . . . . . . . .  	NUMBER	0086	
Microsoft (R) Macro Assembler Version 5.10                  2/14/25 23:44:17
DEBCOM1.ASM - PART1 DEBUGGER COMMANDS	PC DOS                Symbols-13


TRUE . . . . . . . . . . . . . .  	NUMBER	FFFF	
TRUEBYTE . . . . . . . . . . . .  	NUMBER	00FF	
TTEST  . . . . . . . . . . . . .  	L NEAR	01A0	CODE

UNLINK . . . . . . . . . . . . .  	NUMBER	0041	
UPPER_A  . . . . . . . . . . . .  	NUMBER	0041	
UPPER_C  . . . . . . . . . . . .  	NUMBER	0043	
UPPER_E  . . . . . . . . . . . .  	NUMBER	0045	
UPPER_F  . . . . . . . . . . . .  	NUMBER	0046	
UPPER_L  . . . . . . . . . . . .  	NUMBER	004C	
UPPER_M  . . . . . . . . . . . .  	NUMBER	004D	
UPPER_N  . . . . . . . . . . . .  	NUMBER	004E	
UPPER_P  . . . . . . . . . . . .  	NUMBER	0050	
UPPER_S  . . . . . . . . . . . .  	NUMBER	0053	
UPPER_X  . . . . . . . . . . . .  	NUMBER	0058	
UPPER_Z  . . . . . . . . . . . .  	NUMBER	005A	
USEDEF . . . . . . . . . . . . .  	L NEAR	0067	CODE
USEROPER . . . . . . . . . . . .  	NUMBER	005E	

VEC_BREAKPOINT . . . . . . . . .  	NUMBER	0003	
VEC_CRIT_ERR . . . . . . . . . .  	NUMBER	0024	
VEC_CTRL_BREAK . . . . . . . . .  	NUMBER	0023	
VEC_PRIMITIVE_DISK_READ  . . . .  	NUMBER	0025	
VEC_PRIMITIVE_DISK_WRITE . . . .  	NUMBER	0026	
VEC_SING_STEP  . . . . . . . . .  	NUMBER	0001	
VEC_TERM_ADDR  . . . . . . . . .  	NUMBER	0022	

WAITPROCESS  . . . . . . . . . .  	NUMBER	004D	
WRITE  . . . . . . . . . . . . .  	NUMBER	0040	
WRITE_SECTOR . . . . . . . . . .  	NUMBER	0000	

XDUP . . . . . . . . . . . . . .  	NUMBER	0045	
XDUP2  . . . . . . . . . . . . .  	NUMBER	0046	
XM_ERR80 . . . . . . . . . . . .  	NUMBER	0080	
XM_ERR83 . . . . . . . . . . . .  	NUMBER	0083	
XM_ERR84 . . . . . . . . . . . .  	NUMBER	0084	
XM_ERR85 . . . . . . . . . . . .  	NUMBER	0085	
XM_ERR86 . . . . . . . . . . . .  	NUMBER	0086	
XM_ERR87 . . . . . . . . . . . .  	NUMBER	0087	
XM_ERR88 . . . . . . . . . . . .  	NUMBER	0088	
XM_ERR89 . . . . . . . . . . . .  	NUMBER	0089	
XM_ERR8A . . . . . . . . . . . .  	NUMBER	008A	
XM_ERR8B . . . . . . . . . . . .  	NUMBER	008B	
XM_ERR8D . . . . . . . . . . . .  	NUMBER	008D	
XM_ERR8E . . . . . . . . . . . .  	NUMBER	008E	
XM_ERR8F . . . . . . . . . . . .  	NUMBER	008F	
XM_NOT_INST  . . . . . . . . . .  	NUMBER	00FF	
XNAMETRANS . . . . . . . . . . .  	NUMBER	0060	

$$DO1  . . . . . . . . . . . . .  	L NEAR	03A1	CODE
$$EN1  . . . . . . . . . . . . .  	L NEAR	03B2	CODE
$$IF3  . . . . . . . . . . . . .  	L NEAR	03AF	CODE
?PLM . . . . . . . . . . . . . .  	NUMBER	0000	
?WIN . . . . . . . . . . . . . .  	NUMBER	0000	
@CPU . . . . . . . . . . . . . .  	TEXT  0101h		
@FILENAME  . . . . . . . . . . .  	TEXT  debcom1		
@VERSION . . . . . . . . . . . .  	TEXT  510		


   3564 Source  Lines
   3676 Total   Lines
    954 Symbols

  43628 + 168019 Bytes symbol space free

      0 Warning Errors
      0 Severe  Errors
