View previous topic :: View next topic |
Author |
Message |
PeterIreland
Joined: 18 Aug 2021 Posts: 1
|
Posted: Sun Sep 05, 2021 6:43 pm Post subject: Not stepping into the debugger |
|
|
I'd be very grateful if anyone has any ideas on how to solve this problem.
I'm using PLATO to compile and link a FTN77 project which has a lot of subroutines. The debugger has suddenly stopped working and no amount of reversing gets me back to being able to step into the code. Before this, I was able to see the arrow advance and was able to jump between routines using F7 (step into).
Now, as soon as I try to move forward with F7 (having compiled and built the project) the pop up message
"This configuration is out of date. Would you like to rebuild it ?"
appears. If I accept the rebuild, the same pop up reappears. |
|
Back to top |
|
|
mecej4
Joined: 31 Oct 2006 Posts: 1896
|
Posted: Mon Sep 06, 2021 12:39 am Post subject: |
|
|
Are you using the old FTN77 compiler, or a version of FTN95? Which version? What do you mean by "reversing"?
I suggest that you terminate the debugger and close Plato before the next step.
Delete all the OBJ and EXE files in the project\Debug\... directory. If you have trouble deleting an EXE file, it may be still running, and you can check and stop it using the Task Manager.
After the folders have been cleaned up, do a Rebuild and try debugging again. |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 8017 Location: Salford, UK
|
Posted: Mon Sep 06, 2021 8:15 am Post subject: |
|
|
Plato does have an option to use FTN77 rather than FTN95 but this option is no longer configurable via the Settings dialog and has not been visible for many years. It can still be selected manually in Plato.ini which can usually be found in C:\Users\UserName\AppData\Roaming\SilverFrost\FTN95. The setting is identified by the string "UseFTN77" and has the value 0 or 1.
The Settings dialog has an option to "Integrate with SDBG/SDBG64" and you can find this under Miscellaneous. When selected, Plato will display the code otherwise Plato launches SDBG/SDBG64 as a separate application. The integration works differently depending whether you are using Win32 or x64.
When integrated, for Win32, Plato "talks" to SDBG which is running in the background. For x64, the source code for SDBG64 is built into Plato which runs as one application.
If you are using a "Project" then it is possible that the dependency checking is not working correctly and this can happen if you have an unreasonable cyclic (i.e. recursive) dependency in your modules and/or INCLUDE files. You can switch off dependency checking directly from the Project menu and this should "fix" the failure but it would be better to work out why the dependencies have gone wrong. When this happens you will find that applying "Clean" to delete all the object files leads to a situation where a "Build" will not work in one go or (in extreme cases) will never complete. In the latter case you must either find and remove the cyclic dependency or temporarily comment out parts of the code in order to complete the faulty "boot-strapping". |
|
Back to top |
|
|
|