So that means that I have to update the CRC every time I write to my data area... wouldn't that have a significant effect on speed?
One 'feature' I thought of was that if a data area was not found, warn the user, give an option to continue and construct a 'default' data area with IBM PC BIOS-compatible interrupt vector locations, since they are by convention the same between BIOSes.
This would also probably work if the data area was clobbered, if one was willing to 'sacrifice' the program which decided to overwrite the debugger's data area .
The old vector addresses are pretty much the only data that must remain constant between debugger invocations (and even then, I could hardcode the jumps into the ROM at the potential cost of compatibility to non-compliant BIOSes).
One 'feature' I thought of was that if a data area was not found, warn the user, give an option to continue and construct a 'default' data area with IBM PC BIOS-compatible interrupt vector locations, since they are by convention the same between BIOSes.
This would also probably work if the data area was clobbered, if one was willing to 'sacrifice' the program which decided to overwrite the debugger's data area .
The old vector addresses are pretty much the only data that must remain constant between debugger invocations (and even then, I could hardcode the jumps into the ROM at the potential cost of compatibility to non-compliant BIOSes).