Skip to main content

Creating and Debugging  TCC-RT and Windows CMD Batch Files

Windows CMD Batch Files Commands

Batch File Programming IDE

Create and debug your Windows batch files in a fraction of the time with the integrated editor and  batch file debugger.

Multilingual User Interface

The user interface is available in English, French, German, Italian, Russian, and Spanish. Online help is available in English, French, German, and Spanish.

Online help

The comprehensive help (including context-sensitive popup help for Windows batch file commands), speeds your batch file programming and reduces syntax errors.

Windows batch files are widely used for automating repetitive tasks at the command prompt. However, debugging batch files can be challenging due to the lack of a built-in debugger for CMD files.

CMDebug is a stand-alone version of the Take Command IDE and batch debugger. CMDebug is intended to help developers create a batch file to run in CMD (the Windows default command processor) or TCC-RT (the free runtime version of TCC). It provides a comprehensive set of batch debugging features specifically designed for batch file development. 

CMDebug allows you to write and debug your CMD batch files with the integrated graphical IDE. CMDebug includes tabbed edit windows and a sophisticated debugger with single stepping, conditional breakpoints, syntax coloring tooltips, bookmarks, and tabbed breakpoint, call stack, variable, alias, and watch windows. Windows batch file programming has never been easier or more powerful!

You can use CMDebug to develop either CMD-compatible batch files (*.BAT or *.CMD), or faster (and far more capable) TCC-RT-compatible batch scripts (.BTM). If you select the "TCC Syntax" option, CMDebug supports the full TCC-RT command set. If you select the "CMD Syntax" option, CMDebug will disable TCC-only internal commands, variables, and functions, and use the limited Windows CMD batch file commands syntax. Some internal CMD / TCC commands will also behave slightly differently or modify their display output in order to match CMD's behavior (and bugs!) more closely.

Using CMDebug with the TCC-RT syntax option allows you to create and debug (and optionally encrypt) batch files using the TCC command language, and then distribute them with the free TCC-RT runtime on an unlimited number of target machines.

Easily Create TCC-RT Batch Files to Replace Custom Apps

Windows CMD Batch File Programming Made Easy

 CMDebug has a host of additional features, including:

  • The IDE automatically detects ANSI, UTF-8, UTF-8 w/BOM, and UTF-16 Windows batch files.
  • The Command Expansion window shows the original command line, the command line after alias expansion, and the command line after variable expansion.
  • The IDE editor will display batch file edit changes in the margin and in the text. In the text, inserted characters appear with colored underlines and points where characters were deleted are shown with small triangles. The margin shows a block indicating the overall state of the line. 
  • Hovering the mouse over an internal command name will display the command syntax. Hovering over a variable will display the current variable value.
  • The CMDebug batch file debugger has a performance profiler to help optimize your batch files. The resolution is in milliseconds (.001 seconds).
  • You can set breakpoints at specific lines of code (and optionally define a condition before the breakpoint is triggered) allowing you to pause the execution of your batch file and inspect the current state of variables and command output.
  • With Single Stepping, you can step into, step over, step out, and run to a breakpoint (or end).
  • You can monitor and modify variables in real-time during the debugging process. You can also modify variables while debugging to test different scenarios and evaluate the impact on your batch file's execution.
  • The “Modified” tab shows the current value and the previous value of variables when their values are changed.
  • The Call Stack tab displays the current call stack (the batch file name, line #, command line, and the line(s) that called it (i.e., from a GOSUB, GOTO, or CALL).
  • When debugging, the IDE window will keep the current batch file line centered on the screen (unless it’s on the last page). This allows you to see both the last few lines and the next ones to be executed.
  • The edit window will default to maintaining the same indentation as the previous line.
  • If you’re using TCC-RT syntax (not CMD), and the first command on the line is an internal TCC-RT command, the IDE will display quick usage help on the status bar.
  • There is a "RegEx Filter" combobox on the toolbar. If you enter a string in the filter box, the debugger will hide all non-matching lines in the current tab edit window.
  • The Regular Expression Analyzer lets you test your regular expressions, and includes a “cheat sheet” of RE syntax and common expressions.
CMDebug : Windows batch file IDE editor and debugger
Batch file programming and debugging with CMDebug

Packed With Features for Creating & Debugging Your Windows Batch Files

  • Create and debug your CMD batch files with the integrated graphical IDE. The IDE includes tabbed edit windows and a sophisticated debugger with single stepping, conditional breakpoints, syntax coloring, tooltips, bookmarks, and tabbed variable, watch, and alias windows. Windows batch file programming has never been easier or more powerful!
  • The TCC-RT batch file language is a massive superset of CMD, with 265+ internal commands, 440+ internal functions, and 340+ variable functions. Almost all of the CMD commands (e.g. DIR, COPY, DEL, START, etc.) are enhanced with hundreds of additional options. And TCC adds more than 210 new commands! TCC-RT can usually do in one or two lines what requires dozens of CMD commands and external apps (if CMD can do it at all).
  • The TCC-RT scripting language includes a complete set of extended flow control structures including IF-Then-Else, DO and FOR loops, SWITCH statements, subroutines, batch libraries, and more.
  • Monitor your system's hardware and software events, and execute commands when an event is triggered. You can monitor file system directory changes, the clipboard, event logs, Ethernet and WiFi connections, services, processes, and USB and Firewire connections.
  • Environment variable substitution is greatly enhanced in TCC-RT, including variable types, nested variables, delayed expansion, indirect variables, multidimensional array variables, and direct access to the system, user, and volatile variables in the registry.
  • Select or exclude files in batch file commands by date, time, size, owner, and extended wildcards or regular expressions for extraordinary flexibility in file management.
  • Specify multiple filenames for most file processing commands (i.e., COPY, DEL, DIR, MOVE, etc.), or optionally the name of a file that contains the filename arguments. (COPY even supports multiple targets as well as multiple sources.)
  • Multiple types of I/O redirection are available, including redirecting and piping to STDERR, "in-process" pipes, "here-document" and "here-string" redirection, and Tee and Y pipe fittings.
  • Send keystrokes to any application (console or GUI) with the KEYSTACK command.
  • TCC-RT includes internal compression and extraction commands for ZIP, 7ZIP, TAR, JAR, GZIP, and BZIP files.
  • You can access FTPS and HTTPS (including SSL and SSH) directories and files in all  file-handling commands (COPY, DEL, MOVE, REN, etc.).
  • Internal support is included for LuaREXX, PowerShellPython, Tcl/tk, and any Windows Active Scripting language. You can even combine multiple languages in your batch scripts.
  • And many thousands more -- see our online help for details.

CMDebug is compatible with any version of Microsoft Windows 10, Windows 11, Server 2016, Server 2019, and Server 2022.

Take Command


Single system; multisystem discounts

  • Tabbed console windows with 18 themes - run any console app in a tab window
  • Includes TCC and CMDebug
  • Windows Explorer integration
  • Programmable toolbar
  • Forum-based support; optional Extended Support
  • 90-day unconditional return guarantee


Single system; multisystem discounts

  • Windows command processor (CMD.EXE replacement)
  • 270+ internal commands (CMD has about 40)
  • More than 780 internal variables and variable functions
  • Forum-based support; optional Extended Support
  • 90-day unconditional return guarantee


Single system; multisystem discounts

  • Batch file debugger and editor for TCC-RT and CMD batch files
  • Set breakpoints and single-step through your Windows batch files
  • Watch variables, call stack, breakpoint, and modified variables windows
  • Forum-based support
  • 90-day unconditional return guarantee

Support Forums

With CMDebug, you'll not only have access to a wide range of powerful features and enhanced commands, but also a supportive community of batch file programing enthusiasts. The JP Software Support Forums are a valuable resource for learning new tricks, sharing tips, and getting batch debugging help when you need it. The Forums are also the place to hear about the latest updates, announcements, and product releases from JP Software. 

The Support Forums include forums for Take Command, TCC, CMDebug, and TCC-RT support, Tips and Tricks, TCC Plugins, and Suggestions for future versions.

Satisfaction Guarantee

We stand behind our products 100% -- if you are not completely satisfied with your individual copy of any JP Software product, return it within 90 days for a full refund. For complete details and terms see the Satisfaction Guarantee section of our Software License.