VOGONS


DOSBox debugger

Topic actions

Reply 41 of 159, by doshea

User metadata
Rank Member
Rank
Member

Hi Qbix,

Qbix wrote:

hehe. I'll compile one day. 😀 creating that installer is most of the work though 😀

What software are you using to generate the installer? It should be possible to make the installer generation a simple 'make' target, .bat file or something like that, assuming a suitable installer generator is used. I have used NSIS for this kind of thing before.

Regards,
David

Reply 42 of 159, by Calvero

User metadata
Rank Member
Rank
Member
Qbix wrote:

I can't use the BPM command in this version. Is it removed in DOSBox 0.73 or isn't this the heavydebug version?
Anyway, I want to use memory breakpoints that activate when the value of a memory location is changed, without having to compile DOSBox myself 😀.

Reply 44 of 159, by Calvero

User metadata
Rank Member
Rank
Member

First, I type "?" to get a list of available commands. "BPM" is not in that list.
Then I type "bpm 1234:5678" and press Enter. All that happens is that "bpm 1234:5678" is changed into "BPM 1234:5678".

Reply 45 of 159, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

hmm then I must have made a typo while configuring the debugger enabled build.

it should be fixed now. Redownload it please

Water flows down the stream
How to ask questions the smart way!

Reply 46 of 159, by Jag

User metadata
Rank Newbie
Rank
Newbie

Hi, I am trying to use the dosbox debugger to have a bit poke around in an old game. I'm using the latest version posted in this thread. Two problems are occuring.

1) Memory breakpoints (linear - BPLM) seemed to not be working and after a while I realised that the breakpoints were being set 0x14 bytes before the address specified (and before the address shown in the data view and in output of MEMBUMPBIN). So to get them to work I need to type eg. BPLM CAFEBABE+14.

2) As you scroll up and down the code, the disassembly keeps changing. It's like the disassembler keeps changing it's mind about the alignment of instructions - if thats the right word. It makes no sense at all with core set to auto (presumably using the dynamic cpu) so I changed to normal as mentioned earlier in this thread. That made it much better and it seems to work properly if you just step through after hitting a bp. But I want to scroll up and look at the few instructions before the bp, and it gets messed up. 😠

The target is running in 32-bit protected mode (DOS/4GW). Don't know if that's relevant to the BPLM problem. Haven't tried it in any other modes.
Running debug version of dosbox-0.73 on WinXP SP2.

Cheers 😀

Reply 47 of 159, by vander

User metadata
Rank Newbie
Rank
Newbie

Hi, I download and tried the last debug version 0.73
While working with the debugger I got the impression only data changes are noted by the memory breakpoint. So it will not even note a writing of the same data as the one thats already stored on this memory location, right?

Reply 49 of 159, by vander

User metadata
Rank Newbie
Rank
Newbie

Hmm, any hint how to figure out which part of the code is reading from a specified adress? I wana try to run another debugger inside DosBox, maybe it works if here is not some kind of limitation that force touse real cpu hardware.

Reply 51 of 159, by vander

User metadata
Rank Newbie
Rank
Newbie

I will just try some of the old ones, TD or ... I think I still have my old Symantec compiler cd somewhere arround. It had a dosdebugger too AFAIR.
My need is somth that detect memory reads, as I described before

Reply 52 of 159, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

TR may work if it runs under dosbox, since it has some emulation capabilities.
Other stuff may not catch memory reads since that relies on debug registers
which are not emulated by dosbox.

Reply 56 of 159, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

the only thing I see there is some bitching about command dosbox debugger could have.
very little code and not mention about ollydbg at all

Water flows down the stream
How to ask questions the smart way!

Reply 57 of 159, by aqrit

User metadata
Rank Member
Rank
Member

Example: Hardware breakpoint with OllyDbg v1.10

Determine the Host(win32) address for the memory value of intrest
and add the bHardware_Breakpoint stuff to the DEBUG_HeavyIsBreakpoint() function

Open DOSBox.exe in Olly.
Symbols (dosbox.pdb) should load automatically, if in the same directory.

Set a "hardware breakpoint on read/write" at "host" address With Olly.
When the hardware breakpoint triggers, set bHardware_Breakpoint to 01 with OllyDbg, using the "Memory" Window.
(If the dosbox.pdb file is loaded Olly will know the address of the label bHardware_Breakpoint )

Disable the hardware breakpoint and resume execution of dosbox

The dosbox debugger should now be one instruction beyond the code that accessed the memory location.

Glad you liked it Qbix 😘
I wrote it specifically to anwser the break on memory read question
IMO it contains info that people need to know to use a hardware breakpoint

Reply 59 of 159, by Jamesapp

User metadata
Rank Newbie
Rank
Newbie

Hello,
I wondered if I could get some advice on dosbox debugger?

Can I install a debugger if I already have dosbox installed? Or do I have to reinstall dosbox somehow with debugger support?

I used a version of ms-dos where at the command prompt I could write debug and enter a environment on my computer with a -prompt.