RayeR![]() CZ, 08.04.2025, 10:44 |
debugxv - how to use I/O watchpoint? (Users) |
I'd need to set a breakpoint ideally on any I/O port access (without specifying address of out instruction as I don't know all the locations in debugee) - can it be achieved with debugxv /v via v86 IO traps? --- |
Japheth![]() Germany (South), 08.04.2025, 12:30 (edited by Japheth, 08.04.2025, 12:52) @ RayeR |
debugxv - how to use I/O watchpoint? |
> I'd need to set a breakpoint ideally on any I/O port access (without --- |
RayeR![]() CZ, 08.04.2025, 14:11 (edited by RayeR, 08.04.2025, 14:32) @ Japheth |
debugxv - how to use I/O watchpoint? |
> What is xxxx:yyyy? For I/O watchpoints, you have to specify a port. --- |
Japheth![]() Germany (South), 09.04.2025, 05:53 @ RayeR |
debugxv - how to use I/O watchpoint? |
> Wouldn't be possible to extend it to I/O address range or at least mask --- |
RayeR![]() CZ, 09.04.2025, 11:19 (edited by RayeR, 09.04.2025, 11:32) @ Japheth |
debugxv - how to use I/O watchpoint? |
> It's restricted to what the hardware supports. And the hardware allows --- |
Japheth![]() Germany (South), 09.04.2025, 16:33 @ RayeR |
debugxv - how to use I/O watchpoint? |
> BTW when an IO watchpoint is hit debugxv displays code of next instruction --- |
RayeR![]() CZ, 09.04.2025, 20:08 @ Japheth |
debugxv - how to use I/O watchpoint? |
> But you could write that tool in a minute, couldn't you? And I guess that's --- |
RayeR![]() CZ, 11.04.2025, 06:14 @ Japheth |
debugxv - how to use I/O watchpoint? |
Damn, I'm screwed. The machine I need debug on is Tx486DLC and it has not CR4 neither debug extension, it has only DR0-7 so I can't breakpoint on IO access :( --- |
Japheth![]() Germany (South), 11.04.2025, 09:10 @ RayeR |
debugxv - how to use I/O watchpoint? |
> Damn, I'm screwed. The machine I need debug on is Tx486DLC and it has not --- |
RayeR![]() CZ, 12.04.2025, 05:59 @ Japheth |
debugxv - how to use I/O watchpoint? |
I tried TD(32/386) but it refused to load the exe. --- |
Japheth![]() Germany (South), 12.04.2025, 09:16 @ RayeR |
debugxv - how to use I/O watchpoint? |
> Now I'd like to know how to patch (skip) this IO access at runtime by some --- |
RayeR![]() CZ, 12.04.2025, 15:02 @ Japheth |
debugxv - how to use I/O watchpoint? |
> That's trivial if Qemm or Jemm is loaded - they both implement a simple --- |
Japheth![]() Germany (South), 12.04.2025, 16:58 @ RayeR |
debugxv - how to use I/O watchpoint? |
> Now I'd like to know how to patch (skip) this IO access at runtime by some --- |
rr![]() ![]() Berlin, Germany, 12.04.2025, 18:10 @ RayeR |
debugxv - how to use I/O watchpoint? |
> This IO instruction in Speedsys make's it hang on some MBs as it attmpts to --- |
rr![]() ![]() Berlin, Germany, 12.04.2025, 19:05 @ rr |
debugxv - how to use I/O watchpoint? |
> It 'just' took me 19 years to upload SPEEDSYS source code: --- |
rr![]() ![]() Berlin, Germany, 12.04.2025, 20:11 @ rr |
debugxv - how to use I/O watchpoint? |
> > It 'just' took me 19 years to upload SPEEDSYS source code: --- |
RayeR![]() CZ, 13.04.2025, 07:12 (edited by RayeR, 15.04.2025, 06:45) @ rr |
debugxv - how to use I/O watchpoint? |
[accidentally edited] --- |
ecm![]() ![]() Düsseldorf, Germany, 13.04.2025, 14:13 @ RayeR |
debugxv - how to use I/O watchpoint? |
> I have quickly found the code I'm fighting with: --- |
ecm![]() ![]() Düsseldorf, Germany, 13.04.2025, 14:25 @ ecm |
speedsys.exe packed |
> You mentioned that the executable that you've used is --- |
ecm![]() ![]() Düsseldorf, Germany, 13.04.2025, 14:32 @ ecm |
speedsys.exe packed |
> > You mentioned that the executable that you've used is --- |
RayeR![]() CZ, 15.04.2025, 06:43 (edited by RayeR, 15.04.2025, 06:57) @ ecm |
speedsys.exe packed |
> I did try to hack 55h to "UPX!" and then adjusted the checksum at offset --- |
tom![]() Germany (West), 09.04.2025, 21:06 @ Japheth |
debugxv - how to use I/O watchpoint? |
> > Wouldn't be possible to extend it to I/O address range or at least mask |
Japheth![]() Germany (South), 10.04.2025, 13:14 @ tom |
debugxv - how to use I/O watchpoint? |
> While true for the debug registers, the CPU also supports the I/O map where --- |
tom![]() Germany (West), 10.04.2025, 18:27 (edited by tom, 10.04.2025, 19:29) @ Japheth |
debugxv - how to use I/O watchpoint? |
> > While true for the debug registers, the CPU also supports the I/O map |
RayeR![]() CZ, 09.04.2025, 02:58 @ Japheth |
debugxv - how to use I/O watchpoint? |
> bp %80 2 --- |
Japheth![]() Germany (South), 09.04.2025, 05:50 @ RayeR |
debugxv - how to use I/O watchpoint? |
> Huh, I got error with % (debugxv) - what's wrong? but 0:80 did the job and --- |