fbpx
Wikipedia

Debug (command)

The line-oriented debugger DEBUG.EXE is an external command in operating systems such as DOS, OS/2 and Windows (only in 16-bit/32-bit versions[1]).

DEBUG.COM (MS-DOS <= 2.0), DEBUG.EXE (MS-DOS >= 3.x)
Original author(s)Tim Paterson
Developer(s)Microsoft, IBM, Digital Research, Novell, Caldera
Written inMS-DOS: x86 assembly language
Operating systemDOS, OS/2, Windows
TypeDebugger
LicenseMS-DOS v2.0, FreeDOS: MIT
OS/2, Windows: Proprietary software
WebsiteDebug

DEBUG can act as an assembler, disassembler, or hex dump program allowing users to interactively examine memory contents (in assembly language, hexadecimal or ASCII), make changes, and selectively execute COM, EXE and other file types. It also has several subcommands which are used to access specific disk sectors, I/O ports and memory addresses.

Overview edit

 
DEBUG.COM (among other commands) in IBM PC DOS 1.0.
 
The Microsoft Windows 95 DEBUG.EXE command

Traditionally, all computers and operating systems have included a maintenance function, used to determine whether a program is working correctly.[citation needed] DEBUG was originally written by Tim Paterson to serve this purpose in 86-DOS. When Paterson began working for Microsoft in the early 1980s he brought the program with him. DEBUG was part of DOS 1.00 and has been included in MS-DOS/PC DOS and certain versions of Microsoft Windows. Originally named DEBUG.COM, the executable was renamed into DEBUG.EXE with MS-DOS 3.2.[2]

Windows XP and later versions included DEBUG for the MS-DOS subsystem to maintain MS-DOS compatibility. The 16-bit DOS commands are not available on 64-bit editions of Windows.[3]

The MS-DOS/PC DOS DEBUG has several limitations:

Enhanced DEBUG packages include the DEBUG command in Novell DOS 7, OpenDOS 7.01 and DR-DOS 7.02 and higher, a reimplementation of Digital Research's former Symbolic Instruction Debugger SID/SID86,[4] which came with former versions of DR DOS.[5][6][7] It is fully compatible with the DEBUG command line syntax of MS-DOS/PC DOS, but offers many enhancements, including supporting 16-bit and 32-bit opcodes up to the Pentium, an extended mode (/X) with dozens of additional commands and sub-modes, a much enhanced command line syntax with user-definable macros and symbolic debugging facilities with named registers, loaded symbol tables, mathematical operations and base conversions, as well as a commenting disassembler.[8][7] Some versions also utilized DPMS to function as a "stealth mode" protected-mode debugger.[9]

The FreeDOS version of DEBUG was developed by Paul Vojta and is licensed under the MIT License.[10]

A 32-bit clone "DEBUGX" version supporting 32-bit DPMI programs exists as well.[11] Andreas "Japheth" Grech, the author of the HX DOS extender, developed enhanced DEBUG versions 0.98 to 1.25, and former PC DOS developer Vernon C. Brooks added versions 1.26 to 1.32.[12]

Syntax edit

DEBUG [[drive:][path] filename [parameters]]

When DEBUG is started without any parameters the DEBUG prompt, a "-" appears. The user can then enter one of several one or two-letter subcommands, including "A" to enter the assembler mode, "D" to perform a hexadecimal dump, "T" to trace and "U" to unassemble (disassemble) a program in memory.[13] DEBUG can also be used as a "DEBUG script" interpreter using the following syntax.

DEBUG < filename 

A script file may contain DEBUG subcommands and assembly language instructions.[14] This method can be used to create or edit binary files from batch files.[2]

Using for non-debugging purposes edit

The DEBUG utility is useful for editing binary files in an environment where only DOS is installed without anything else. It can also be used to edit disk sectors, which is one method of removing boot-sector viruses.

Availability edit

Although technical documentation for the DEBUG command was removed with the release of MS-DOS 3.3, the command was retained in the standard distribution, unlike what was done with EXE2BIN.[15]

Other Operating Systems edit

The operating systems Intel ISIS-II[16] and iRMX 86,[17] DEC TOPS-10[18] and TOPS-20,[19] THEOS/OASIS,[20] Zilog Z80-RIO,[21] Stratus OpenVOS,[22] PC-MOS,[23] and AROS[24] also provide a DEBUG command.

See also edit

References edit

  1. ^ According to Microsoft Macro Assembler Reference, inline assembly is not supported for x64.
  2. ^ a b Sedory, Daniel B. "A Guide to DEBUG". Retrieved 2014-11-29.
  3. ^ MS-DOS subsystem commands
  4. ^ SID-86 User's Guide for CP/M-86 (2 ed.). Digital Research. August 1982 [March 1982]. SID86UG.WS4. from the original on 2019-10-20. Retrieved 2020-02-06. (NB. A retyped version of the manual by Emmanuel Roche with Q, SR, and Z commands added. This manual is for the CP/M-86 version, but the DR DOS version is similar.)
  5. ^ Born, Günter [in German] (1993). DOS 6 Tuning (in German) (1 ed.). Markt & Technik. ISBN 3-87791-495-0. (NB. Has several pages on MS-DOS DEBUG.EXE as well as on the Symbolic Instruction Debugger SID.EXE in DR DOS 5.0/6.0.)
  6. ^ Paul, Matthias R. (1997-05-24) [1991]. DRDOSTIP.TXT — Tips und Tricks für DR DOS 3.41 - 5.0 (in German) (47 ed.). from the original on 2016-11-07. Retrieved 2016-11-07. {{cite book}}: |work= ignored (help) (NB. Has some information on Symbolic Instruction Debugger (SID86.EXE in DR DOS 3.41 and SID.EXE in DR DOS 5.0/6.0), the predecessor of the DR-DOS DEBUG.EXE.)
  7. ^ a b Paul, Matthias R. (2002-01-09). "SID86". Newsgroup: comp.os.cpm. Retrieved 2018-04-08. […] Since the DR-DOS 7.03 DEBUG is still based on the old SID86.EXE, I suggest to run DEBUG 1.51 and enter the extended help system with ?? from the debug prompt. This will give you eight screens full of syntax and feature help. Some of these features were also supported by older issues. […]
  8. ^ Paul, Matthias R. (1997-07-30). "Kapitel II.5. Allgemeines: Undokumentierte Möglichkeiten von DEBUG" [Undocumented features of DEBUG]. NWDOS-TIPs — Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds. Release 157 (in German) (3 ed.). from the original on 2017-09-10. Retrieved 2014-09-06. {{cite book}}: |work= ignored (help) (NB. NWDOSTIP.TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7.01, including the description of many undocumented features and internals. It is part of the author's yet larger MPDOSTIP.ZIP collection maintained up to 2001 and distributed on many sites at the time. The provided link points to a HTML-converted older version of the NWDOSTIP.TXT file.)
  9. ^ Paul, Matthias R. (2001-04-09). NWDOS-TIPs — Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds. Release 183 (in German) (3 ed.). {{cite book}}: |work= ignored (help)
  10. ^ "FreeDOS 1.2 Updates Package - debug (FreeDOS Base)". Ibiblio.org. 2021-02-16. Retrieved 2022-09-08.
  11. ^ Vojta, Paul. . Archived from the original on 2007-08-24. Retrieved 2007-06-25.
  12. ^ Brooks, Vernon C. (2014-04-08). "Enhanced DEBUG for PC DOS and MS-DOS". PC DOS Retro. from the original on 2020-02-21. Retrieved 2014-05-08.
  13. ^ "Microsoft TechNet Debug article". Retrieved 2008-04-23.
  14. ^ Irvine, Kip R. (2010). "Using Debug". Assembly language for Intel-based computers (PDF) (6th ed.). Prentice Hall. ISBN 978-0-13602212-1. Retrieved 2014-03-18.
  15. ^ Dror, Asael (1988-01-12). "Thank You, IBM". PC Magazine. p. 366.
  16. ^ ISIS II Users Guide
  17. ^ iRMX 86 Introduction And Operator's Reference Manual For Release 6
  18. ^ (PDF). Digital Equipment Corporation. August 1980. Archived from the original (PDF) on 2020-08-09. Retrieved 2019-02-17.
  19. ^ (PDF). Archived from the original (PDF) on 2020-08-09. Retrieved 2018-07-18.
  20. ^ THEOS/OASIS User′s Handbook
  21. ^ Z80-RIO Operating System User's Manual
  22. ^ "OpenVOS Commands Reference Manual" (PDF).
  23. ^ PC-MOS User Guide
  24. ^ "AROS Research Operating System".

External links edit

  • Debug | Microsoft Docs
  • Open source DEBUG implementation that comes with MS-DOS v2.0

debug, command, line, oriented, debugger, debug, external, command, operating, systems, such, windows, only, versions, debug, debug, original, author, patersondeveloper, microsoft, digital, research, novell, calderawritten, inms, assembly, languageoperating, s. The line oriented debugger DEBUG EXE is an external command in operating systems such as DOS OS 2 and Windows only in 16 bit 32 bit versions 1 DEBUG COM MS DOS lt 2 0 DEBUG EXE MS DOS gt 3 x Original author s Tim PatersonDeveloper s Microsoft IBM Digital Research Novell CalderaWritten inMS DOS x86 assembly languageOperating systemDOS OS 2 WindowsTypeDebuggerLicenseMS DOS v2 0 FreeDOS MITOS 2 Windows Proprietary softwareWebsiteDebug DEBUG can act as an assembler disassembler or hex dump program allowing users to interactively examine memory contents in assembly language hexadecimal or ASCII make changes and selectively execute COM EXE and other file types It also has several subcommands which are used to access specific disk sectors I O ports and memory addresses Contents 1 Overview 2 Syntax 3 Using for non debugging purposes 4 Availability 5 Other Operating Systems 6 See also 7 References 8 External linksOverview edit nbsp DEBUG COM among other commands in IBM PC DOS 1 0 nbsp The Microsoft Windows 95 DEBUG EXE command Traditionally all computers and operating systems have included a maintenance function used to determine whether a program is working correctly citation needed DEBUG was originally written by Tim Paterson to serve this purpose in 86 DOS When Paterson began working for Microsoft in the early 1980s he brought the program with him DEBUG was part of DOS 1 00 and has been included in MS DOS PC DOS and certain versions of Microsoft Windows Originally named DEBUG COM the executable was renamed into DEBUG EXE with MS DOS 3 2 2 Windows XP and later versions included DEBUG for the MS DOS subsystem to maintain MS DOS compatibility The 16 bit DOS commands are not available on 64 bit editions of Windows 3 The MS DOS PC DOS DEBUG has several limitations In assembly disassembly modes it only supports 8086 opcodes It can only access 16 bit registers and not 32 bit extended registers When the N subcommand for naming files is used the filename is stored from offset DS 5D to DS 67 the Program Segment Prefix File Control Block area meaning that the program can only save files in FAT 8 3 filename format Enhanced DEBUG packages include the DEBUG command in Novell DOS 7 OpenDOS 7 01 and DR DOS 7 02 and higher a reimplementation of Digital Research s former Symbolic Instruction Debugger SID SID86 4 which came with former versions of DR DOS 5 6 7 It is fully compatible with the DEBUG command line syntax of MS DOS PC DOS but offers many enhancements including supporting 16 bit and 32 bit opcodes up to the Pentium an extended mode X with dozens of additional commands and sub modes a much enhanced command line syntax with user definable macros and symbolic debugging facilities with named registers loaded symbol tables mathematical operations and base conversions as well as a commenting disassembler 8 7 Some versions also utilized DPMS to function as a stealth mode protected mode debugger 9 The FreeDOS version of DEBUG was developed by Paul Vojta and is licensed under the MIT License 10 A 32 bit clone DEBUGX version supporting 32 bit DPMI programs exists as well 11 Andreas Japheth Grech the author of the HX DOS extender developed enhanced DEBUG versions 0 98 to 1 25 and former PC DOS developer Vernon C Brooks added versions 1 26 to 1 32 12 Syntax editDEBUG drive path filename parameters When DEBUG is started without any parameters the DEBUG prompt a appears The user can then enter one of several one or two letter subcommands including A to enter the assembler mode D to perform a hexadecimal dump T to trace and U to unassemble disassemble a program in memory 13 DEBUG can also be used as a DEBUG script interpreter using the following syntax DEBUG lt filename A script file may contain DEBUG subcommands and assembly language instructions 14 This method can be used to create or edit binary files from batch files 2 Using for non debugging purposes editThe DEBUG utility is useful for editing binary files in an environment where only DOS is installed without anything else It can also be used to edit disk sectors which is one method of removing boot sector viruses Availability editAlthough technical documentation for the DEBUG command was removed with the release of MS DOS 3 3 the command was retained in the standard distribution unlike what was done with EXE2BIN 15 Other Operating Systems editThe operating systems Intel ISIS II 16 and iRMX 86 17 DEC TOPS 10 18 and TOPS 20 19 THEOS OASIS 20 Zilog Z80 RIO 21 Stratus OpenVOS 22 PC MOS 23 and AROS 24 also provide a DEBUG command See also editList of DOS commands DDT CP M command Dynamic Debugging Technique SID Symbolic Instruction Debugger SYMDEB CodeView Turbo Debugger SoftICE DEBUG tag References edit According to Microsoft Macro Assembler Reference inline assembly is not supported for x64 a b Sedory Daniel B A Guide to DEBUG Retrieved 2014 11 29 MS DOS subsystem commands SID 86 User s Guide for CP M 86 2 ed Digital Research August 1982 March 1982 SID86UG WS4 Archived from the original on 2019 10 20 Retrieved 2020 02 06 1 NB A retyped version of the manual by Emmanuel Roche with Q SR and Z commands added This manual is for the CP M 86 version but the DR DOS version is similar Born Gunter in German 1993 DOS 6 Tuning in German 1 ed Markt amp Technik ISBN 3 87791 495 0 NB Has several pages on MS DOS DEBUG EXE as well as on the Symbolic Instruction Debugger SID EXE in DR DOS 5 0 6 0 Paul Matthias R 1997 05 24 1991 DRDOSTIP TXT Tips und Tricks fur DR DOS 3 41 5 0 in German 47 ed Archived from the original on 2016 11 07 Retrieved 2016 11 07 a href Template Cite book html title Template Cite book cite book a work ignored help NB Has some information on Symbolic Instruction Debugger SID86 EXE in DR DOS 3 41 and SID EXE in DR DOS 5 0 6 0 the predecessor of the DR DOS DEBUG EXE a b Paul Matthias R 2002 01 09 SID86 Newsgroup comp os cpm Retrieved 2018 04 08 Since the DR DOS 7 03 DEBUG is still based on the old SID86 EXE I suggest to run DEBUG 1 51 and enter the extended help system with from the debug prompt This will give you eight screens full of syntax and feature help Some of these features were also supported by older issues Paul Matthias R 1997 07 30 Kapitel II 5 Allgemeines Undokumentierte Moglichkeiten von DEBUG Undocumented features of DEBUG NWDOS TIPs Tips amp Tricks rund um Novell DOS 7 mit Blick auf undokumentierte Details Bugs und Workarounds Release 157 in German 3 ed Archived from the original on 2017 09 10 Retrieved 2014 09 06 a href Template Cite book html title Template Cite book cite book a work ignored help NB NWDOSTIP TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7 01 including the description of many undocumented features and internals It is part of the author s yet larger MPDOSTIP ZIP collection maintained up to 2001 and distributed on many sites at the time The provided link points to a HTML converted older version of the NWDOSTIP TXT file Paul Matthias R 2001 04 09 NWDOS TIPs Tips amp Tricks rund um Novell DOS 7 mit Blick auf undokumentierte Details Bugs und Workarounds Release 183 in German 3 ed a href Template Cite book html title Template Cite book cite book a work ignored help FreeDOS 1 2 Updates Package debug FreeDOS Base Ibiblio org 2021 02 16 Retrieved 2022 09 08 Vojta Paul DEBUG README Archived from the original on 2007 08 24 Retrieved 2007 06 25 Brooks Vernon C 2014 04 08 Enhanced DEBUG for PC DOS and MS DOS PC DOS Retro Archived from the original on 2020 02 21 Retrieved 2014 05 08 Microsoft TechNet Debug article Retrieved 2008 04 23 Irvine Kip R 2010 Using Debug Assembly language for Intel based computers PDF 6th ed Prentice Hall ISBN 978 0 13602212 1 Retrieved 2014 03 18 Dror Asael 1988 01 12 Thank You IBM PC Magazine p 366 ISIS II Users Guide iRMX 86 Introduction And Operator s Reference Manual For Release 6 TOPS 10 Operating System Commands Manual PDF Digital Equipment Corporation August 1980 Archived from the original PDF on 2020 08 09 Retrieved 2019 02 17 TOPS 20 Command manual PDF Archived from the original PDF on 2020 08 09 Retrieved 2018 07 18 THEOS OASIS User s Handbook Z80 RIO Operating System User s Manual OpenVOS Commands Reference Manual PDF PC MOS User Guide AROS Research Operating System External links edit nbsp Wikibooks has a book on the topic of Guide to Windows Commands Debug Microsoft Docs Open source DEBUG implementation that comes with MS DOS v2 0 Retrieved from https en wikipedia org w index php title Debug command amp oldid 1180268878, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.