Hello!
At first glance a the code, the command,
rprintfProgStr(XXXX) acquires a value in
Rom, not the ram, assuming a value was stored there.
Command
char_attribute_(XXX) - puts a value to store hex conversion in Ram.
Command
rprintfProgStr( XXx) on the last page prints a string from Ram.
From the errors at the bottom of the page, the debugger can not
"pick up" where the command is. Usually, a
header file is responsible for this definition.
If those commands can not be recognized, then any commands for char_attribute(XXX)
can not run.
Since this is a C program,
I would try to locate the header file responsible for calling these commands.
Header files are always at the top of the program. and direct any commands to a library for
running the program. Once the program is compiled, an executable is formed which can run by
itself, without any libraries.
This is just a thought, at first glance.