Dec 282017
Gimme-A-Break. TSR Debugging tool. Allows you to set multiple break points while debugging.
File GIMME.ZIP from The Programmer’s Corner in
Category Miscellaneous Language Source Code
Gimme-A-Break. TSR Debugging tool. Allows you to set multiple break points while debugging.
File Name File Size Zip Size Zip Type
GIMME.DOC 4550 1886 deflated
GIMME.EXE 15090 9480 deflated
GIMME.REG 1424 515 deflated

Download File GIMME.ZIP Here

Contents of the GIMME.DOC file

REV 1.0 10/90


GIMME A BREAK uses the powerful 386 debug registers to provide enhanced
debugging capabilities under MS-DOS. The 386 debug registers have many
of the same capabilities as hardware debugging solutions (like an In
Circuit Emulator or ICE). This includes the ability to breakpoint on
data write cycles, data read cycles and on instruction fetchs from
within Read Only Memory (ROM) without loss of execution speed. GIMME A
BREAK is a terminate and stay resident program that can be popped up
from within DEBUG to set up to 4 special breakpoints on the any of the
above conditions. The breakpoints will appear as normal DEBUG
breakpoints when triggered, you pop up GIMME A BREAK to see exactly
which breakpoint was triggered. GIMME A BREAK allows you to set up 4
breakpoints. Each breakpoint can be on either an instruction fetch, a
data write or a data access (read or write). Data breakpoints can be
either single byte, word (two byte on even address) or double word (four
byte on a quad aligned address) in scope. GIMME A BREAK of course
requires a 386 or 486 machine running DOS in real mode.


GIMME A BREAK version 1.0 may be freely given away provided that all
parts of the archive are passed on as a unit. This software is USER
SUPPORTED, if you find it useful and would like to see continued
enhancements please fill out the registration form and send $25.00 to

P.O. BOX 217

The very short opinion survey and your comments are important feedback
that will help determine the shape of future versions of GIMME A BREAK.

The complete archive should contain:
GIMME.EXE - the pop up program
GIMME.REG - the registration form
GIMME.DOC - this file


GIMME A BREAK is installed as a terminate and stay resident program by
simply running GIMME. It can be popped up by the key combination ALT -
RIGHT SHIFT. It can be popped up within DEBUG to set and check
breakpoints. Pressing F10 will cause it to pop down.

3.1 Setting a breakpoint

Once GIMME A BREAK has been popped up press F1 to set a breakpoint.
Select the breakpoint to set (0-3). Next you will be prompted for the
type of breakpoint: Fetch, Write, Read/write or Disable. (Disable will
disable only the selected breakpoint and return to the main menu.) Then
enter the breakpoint address in segment:address form as prompted. If
the breakpoint type is data Write or data Read/write you will be
prompted for a size either Byte, Word or Dword. The size also specifies
the address alignment, the address will be adjusted to show the proper

3.2 Clearing the breakpoints

The breakpoints are all cleared by pressing F2. It is a good ideal to
clear all breakpoints in this manner before exiting DEBUG, having
breakpoints enabled during normal DOS operation has unpredictable

3.3 Breakpoint types

GIMME A BREAK supports three breakpoint types: Fetch, Write and

Fetch sets a breakpoint to break on an instruction fetch at the
breakpoint address - the breakpoint will trigger before the instruction
executes. A Fetch breakpoint must be on the first byte of an
instruction in order to be triggered.

Write sets a breakpoint on a data write at the breakpoint address - the
breakpoint will trigger after the instruction that caused the write has
executed. The breakpoint size will determine the range of breakpoint. A
Byte breakpoint will trigger only on an access to that byte. A Word
breakpoint is automatically word aligned and will trigger on an access
to either or both bytes at that address. For example if you set the
breakpoint address 0:1000 for a Write breakpoint with size Word, it will
be triggered by a write to address 0:1000 and/or 0:1001. A Dword
breakpoint is automatically double word aligned and covers a range of
four bytes. For example if you set breakpoint address 0:1007 with size
Dword, it will be triggered by an access to addresses 0:1004, 0:1005,
0:1006 and/or 0:1007. Note that the breakpoint address would be
displayed 0:1004 to show the actual alignment that the 386 debug
registers uses.

3.4 Breakpoint status

The status of each breakpoint is indicated in the table each time GIMME
A BREAK is popped up. A status of triggered indicates that a breakpoint
has been triggered since the last time GIMME A BREAK was activated.
Exiting GIMME A BREAK clears the triggered status.

 December 28, 2017  Add comments

Leave a Reply