As it turns out the performance hit is some kind of issue with the rendering loop; the actual drawing routine is still fast. If I disable
only the drawing call using a keypress debug, the performance hit is still there even though no actual screen update is taking place. I'm still working on figuring this out.
I haven't been able to crack the shell of the update rectangle error yet either, though it looks to be a more involved problem than the performance issue.
I really look forward to getting DELTA MK2 completed, so that we can finally begin work on the DKCLB. I know it's been a long wait and I feel bad about having to rewrite the program so many times, but hopefully this time will be the last. I've done my best to ensure that the GUI is rock solid against errors, and finding that one memory allocation corruption bug knocked out a critical issue that was plaguing the program right from the first release. I kinda feel like I could have went back and added bugfixes to the old version, but the truth of the matter is that the first version of DELTA simply wasn't up to par in the usability department.
I've decided to do a full-on image editor with undo/redo support, so even if this takes a bit more effort, hopefully DELTA will be better at doing what needs done.
EDIT: I fixed the performance issue. Turns out the rendering needed some adjustments along with a check for visibility in a very specific place.