Designing mainly. It has been a few times that I dropped completely the existing design for source level debugger before even starting to implement it. For example the line offset collector used by unofficial listing extension is not good, and not enough for the debugger purposes. Actually it can even be fooled and "exploited" in some way, when additional pass it does to collect line offset doesn't generate the same output as the "regular" last pass, and thus generate the bad output; but that's another story... For those reasons (and also a few other) the listing extension stays unofficial, and the source level debugger stays not written. Nevertheless I've already got the ideas, how to do it well, and thus you can expect I will start working on the debugger soon (when only I have time for this) - as I don't plan touching the core of the assembler too much in the near future, and instead wanted to concentrate on two tasks: improve documentation for assembler and finish the IDE. Also the separation of edit control into core and interface in the similar way, as it was done with the assembler, was done to allow building on this core the analogues of fasmw for other operating systems.
So my fasm-related programming efforts may go mainly into direction of developing the IDE(s), though it's also possible that as a side-effect of implementing the debugger into IDE, there will be also added support for some debug info formats in the assembler.
The all mentioned above actually makes my complete to-do list for flat assembler as for now.
|