User Tools

Site Tools


blog:pushbx:2023:0308_ldebug_release_5

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

blog:pushbx:2023:0308_ldebug_release_5 [2023-03-08 19:03:36 +0100 Mar Wed] (current)
ecm created
Line 1: Line 1:
 +====== lDebug release 5 ======
 +
 +**2023-03-08**
 +
 +The lDebug release 5 is imminent. Update: The release is done, grab packages at https://pushbx.org/ecm/download/ldebug/ or the source at https://hg.pushbx.org/ecm/ldebug/rev/release5
 +
 +===== =====
 +
 +It brings several new features:
 +
 +  * Support for 40-column displays in the R, U, D, and E commands
 +  * Expression types
 +  * The QA and QB and QC and QD commands
 +  * RC buffer commands
 +  * The RVP and RVD commands
 +  * The device driver mode
 +  * The conditionally debuggable lCDebug build option
 +  * Dual code segments build option
 +  * Sharing serial IRQs
 +  * The TAKEN and NOTTAKEN keywords
 +  * Debugger exception areas and AMIS private function 33h
 +  * The CLR operator
 +  * Variables to control the default length of U and D commands
 +  * INSTALL and UNINSTALL commands
 +  * Descriptor modification commands
 +  * Query patch support for bootloaded mode
 +  * MMX  support commands fixed
 +  * ''IF EXISTS R variable THEN'' command
 +
 +It also has a number of bugfixes, including:
 +
 +  * lDebugX in PM handles 32-bit offsets correctly more often, detects use of 32-bit offsets from limits > FFFFh
 +  * Use of the scratch selector works in some cases where it would have failed
 +  * R write memory variable command doesn't crash for values ending in FFFFh anymore
 +  * A range parameter can be ended by a semicolon comment indicator
 +  * Interrupt 19h call while in application mode now sets up registers to terminate the process on the next trace step
 +  * Current PSP is read and written using the SDA even in PM
 +  * Empty binaries now cause an error even if the DOS incorrectly handles them (FreeDOS kernel bug)
 +  * No longer crash in init if there's no UMCB but int 21.5803 is supported
 +  * Do not crash in init if int 2Fh is not initialised
 +  * WHILE condition not checked if pass or non-pass permanent breakpoint runs
 +  * The ldebug.txt file is now converted to CR LF line endings immediately after Halibut has created it
 +  * Command line tail in PSP also set up for loading .BIN files
 +  * Empty /C switch does not cause an error
 +  * Terminate properly on reaching the end of a stdin file
 +  * AAM and AAD do not display an operand in disassembly if it would be ''0A''
 +  * RC buffer execution is aborted by a Control-C
 +  * XMS Protected Mode entrypoint is no longer used by default
 +  * ''r f .'' works
 +  * Bootloaded sector read that crosses a 64 KiB DMA boundary copies correct amount of data from transfer buffer
 +  * ''u(bootldpunit).(bootldppart)'' works even if LDP is a diskette file system
 +  * Serial IRQ handler passes on call if its IRQ isn't set in the In-Service Register of the PIC
 +  * RC command line parsing skips leading blanks
 +  * Double slash without subsequent command line allowed for ''BOOT PROTOCOL'' command
 +  * E and A commands in PM display original selector even if actually writing through the debugger's scratch selector
 +  * C command never uses debugger's scratch selector (and does not display it either)
 +  * Do not fault if scratch selector got a low limit in some way
 +  * ''BOOT PROTOCOL'' command always allows use of ENTRY and BPB parameters
 +  * Allow all address specifications for M command
 +  * Disassemble ''mov'' with segreg and memory operand as always m16
 +  * Allow operators between ''??'' and ''::'' in H command
 +  * Allow single-digit interrupt number for RIxxy variables
 +  * Disabling string instruction simulation now assumes count as 1 for the access variables
 +  * Operand size prefix disassembled as part of a ''push'' or ''pop'' with segreg
 +  * Do not simulate string instruction on U command
 +  * lDebugX preserves scratch selector across ''getexpression'' calls
 +  * lDebugX TSR command works in PM
 +  * Set sleep delta limit to 5 to work around idle function needing more than 1 timer tick
 +  * Allow bootloaded debugger to access small FAT32 file systems (below 64 Ki clusters)
 +  * Q or QA could fail due to corrupting the client stack in the PM interrupt 21h handler
 +  * Access variables for ''int'' instructions select size based on mode, ignore operand-size of the instruction
 +  * Fix S command error if search mask is longer than search area
 +  * Support ''EXECUTING'' keyword on non-386 machines
 +  * Allow access to ''VD'' variable using R command
 +  * Creating a process resets the DTA
 +  * Bootloaded init relocation could corrupt part of the debugger in an unlikely case
 +  * RM command and MMxy register reads work
 +{{tag>ldebug}}
 +
 +
 +~~DISCUSSION~~
  
blog/pushbx/2023/0308_ldebug_release_5.txt ยท Last modified: 2023-03-08 19:03:36 +0100 Mar Wed by ecm