VOGONS


First post, by Nobuo T

User metadata
Rank Newbie
Rank
Newbie

Hello everyone,

I just tried running SD32/a (the DOS32a debugger) in dosbox and guess why I'm here: It didn't work like expected. 🙁
When I start the debugger on a real PC running DOS, it first displays the GUI and waits for user input. In DOSBox it immediatelly runs the loaded app I want to debug and only switches to GUI on an exception (that's a little too late for me 😅 ).

AFAIR SD32/a switches to it's GUI by placing int 03h-calls in the app code.
So it seems like the int 03h is not correctly emulated/ignored? Bug? Feature? How can I change this behaviour?

cu.

Reply 4 of 12, by Nobuo T

User metadata
Rank Newbie
Rank
Newbie

*sigh* Thanks.
Just gave up compiling dosbox with debugger support.
Somehow this pdcurses doesn't compile in that MinGW/MSYS stuff (missing required file sys/ipc.h) and that crap also refuses to see the shiny lib I compiled with watcom. 😵
Any suggestions?

Reply 5 of 12, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Erm depends on your host OS, for windows see the development forum
(think it's 0.65 only there unless Qbix already updated it), think ykhwong
has debugger-enabled builds (cvs builds thread).
What application do you want to debug? Pmode/dpmi? I'll try to look at
sd32 some time, maybe it can be fixed.

Reply 6 of 12, by Nobuo T

User metadata
Rank Newbie
Rank
Newbie

K. I'll look in the dev forum then.

And yes: I'm debugging a DOS32/a DPMI-app with DOS32a stub etc. That's why I'm still using (or trying to use *g) this half-baked sd32a debugger.
Didn't find another working DPMI-debugger so far...

Reply 7 of 12, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Well depends on what you need, in general you should try to get your
own compiles working with pdcurses, as then you can debug pretty
much anything with the dosbox debugger.
Still dos debuggers are useful/handy by times.

Reply 8 of 12, by Nobuo T

User metadata
Rank Newbie
Rank
Newbie

Yup, but as long as they insist on opening the RealMode stub only instead of the real PM-Program, they're not. :p
If you find out something about this problem with sd32a let me know. I planned to put some work in this old patchworks (means SD32a 😉 ) anyways...

BTW: I opened another thread in the dev-forum for the compiler issues...

Reply 10 of 12, by narech

User metadata
Rank Newbie
Rank
Newbie

SD only uses hardware breakpoints (for a variety of reasons) which are not supported in DOSBox. It's possible to hack in SW breakpoint support (INT 3 injection into code segment). Look at "_break_pnt" and "restore_state" fns in sdebug.asm . Remeber that the exception stackframe's format was changed sometime after DOS/32A v7.1 without SD being updated. In other words, using the latest dos32a.exe with the existing sd.exe (probably) won't work correctly unless the frame format is updated in SD sources.

Reply 12 of 12, by narech

User metadata
Rank Newbie
Rank
Newbie

Well, I suppose the main reason is because I'm lazy hehe 😉 . SD has limited application today since it is heavily bound to DOS/32A's internal API not supported by other DPMI hosts, obviously. So it doesn't work with Windows, DOS/4GW, Causeway etc. Those who still run native DOS are mostly in embedded sector, and they mostly use a Lauterbach or another HW debugger anyways. That said, if someone desperately needed to hack something useful out of SD I could probably give a few pointers.