Baron-von-Riedesel / DOS-debug

Debug and DebugX (short: Debug/X) are extended versions of MS DEBUG
58 stars 12 forks source link

Scratch selector bugs fixed in lDebugX today #13

Closed ecm-pushbx closed 7 months ago

ecm-pushbx commented 1 year ago

I think the following bugs are applicable to the current Debug/X as well:

Honourable mention to the bug in parsecm that you figured out in your latest revision, I picked that up for https://hg.pushbx.org/ecm/ldebug/rev/c9dd1b27f2a2

ecm-pushbx commented 1 year ago

That was missing the link to the aa fix: https://hg.pushbx.org/ecm/ldebug/rev/5f3e9ce65c55

ecm-pushbx commented 1 year ago

Another bug: If the addition in https://hg.pushbx.org/ecm/fddebug/file/30d695b48654/DEBUG.ASM#l6988 carries then iswriteablecseip will detect a failure to write. Fixed in https://hg.pushbx.org/ecm/ldebug/rev/60357e2ef014

And for another, IsWriteableBX returns a status in CF but all callers of getaddrW (including getrangeW) ignore it. Fixed in https://hg.pushbx.org/ecm/ldebug/rev/96fa72814b0a Though you do comment in https://hg.pushbx.org/ecm/fddebug/file/30d695b48654/DEBUG.ASM#l7006 that you intentionally omitted the dispatching on the error status. But if the 31.000C call in IsWriteableBX fails (is that possible?) then you will have bx == scratchsel upon the CY return, which is probably not what you want.

Baron-von-Riedesel commented 1 year ago

In the last commit that getaddrW/R and getrangeW/R distinction has been removed ( call IsWriteableBX isn't done at that "low-level" anymore ). Will have to check that "DM bug" yet.

Baron-von-Riedesel commented 7 months ago

e cmd no longer shows scratch sel.