Closed thesourcerer8 closed 6 years ago
Are you sure it's with File->Save? During that, there's no outputting of current location.
However, that does happens with File->Write disasm (Shift+w).
What kind of slow terminal do you use? Please elaborate, it's important to understand the matter to approach a fix.
Hmm, I thought I had clicked on File->Save, but perhaps it really was File->Write diasm. I am sometimes using very slow internet links with SSH and ShellInABox.
Yeah, it's definitely "Write disasm". I also have a hunch that it's cause of reverse causation. Writing disasm is not slow because of progress indicator. It's not instant, and that the reason why there's a progress indicator. IDA(Python) CPU plugin design isn't optimized for speed, it's optimized for clear processing stages. Plus, disassembly speed depends on a particular disassembly library, and that may vary widely. That's not important during interactive use, because ScratchABit disassembles incrementally, just a screenful at which user looks. But when entire loaded address space needs to be disassembled, the time of the operation is noticeable to the naked eye, that's why there's a progress indicator.
That said, I'm happy to make its update less frequent to address the concerns - previously it was updated every 256 lines written, with 53bb31a580523c98f35179529c354a37194ca9b7, every 4096 lines.
Great!
In 6c554a03c750e864c3a4ec9ddb0e2aa04e9977c3, I implemented save time printing (both to UI status line and log), so it can be better. For me, it's in the order of milliseconds.
Saving (File->Save) seems to be slow on slow terminals, since it outputs the current location quite often. I would suggest to ouput the position less often to speed it up.