Well, the one of the biggest problems in FASM programming is lack of debug information in compiled executables. Perhaps, this is not a big problem for advanced FASM users, but for beginers it can be confusing and may kill the plesure of work.
So, Fresh IDE is intended to fix this problem with its source level debuger, but unfortunately it is not finished yet and is almost useless.
Nevertheless, Fresh already contains some features, that can help debuging applications. I use them all the time, but maybe not everyone knows about these features, so I decided to write short guide about "Fresh debuging features". Note, that these features will be improved in next releases, so this "guide' should be considered temporary.
Here, I am writing about the latest "work" version of Fresh.
1. Source level debuger: there is big lack of features. Although, if you place some "int3" instruction somewhere in your program and run it with "F9" = mainmenu("Debug"|"Run"), the program will stop at the breakpoint and you can trace it instruction by instruction. The same is for any exception raised in your code - you will be able to look at the exact place in the source where exception occurs.
Unfortunately in this mode you can only see the source and the registers. More in next releases...
2. Function "goto address" - Ctrl+G or mainmenu(Debug|Goto address).
This function ask you for address and tryes to find the source line with this address. Very usefull when working with external debuger.
3. You can run program directly in external debuger with Shift+F8 or mainmenu(Debug|External debuger). Of cource, prior, you have to set proper path to external debuger in mainmenu(Options|IDE options) .
4. Labels explorer: after compilation, show all used symbols, constants, structures, etc. with its values. Call it from mainmenu(Project|Labels explorer). This is the feature that can help you to know what address have this or that label, constant, etc.
I hope, this small part of future Fresh debuging functions will help you to debug your FASM applications more easy.
In the next releases, we are intended to improve source level debuger and other debuging tools in Fresh to the very high level, able to replace any external tool.
Regards