You can trace through (Prolog) system predicates after
?- set_prolog_flag(access_level, system).
This doesn’t always work nice, especially the graphical debugger sometimes gets into debugging itself and producing something completely not understandable or crashing.
Source file can turn their predicates into black boxes using
:- set_prolog_flag(generate_debug_info, false).
That might only work properly for module files. Not sure.