From: CT_Surveyor on
On Apr 20, 10:48 pm, Jacob Wall <jac...(a)surv50.ca> wrote:
> If you declare:
>
> EXTERNAL xDISPXY
>
> in your Debug4x source file, it should work.
>
> I know there are some others also that are missing from the entry table,
> some of which I know to be:
>
> xSTREAM
> xCOL-
> xCOL+
> xROW-
> xROW+
> xSREPL
> xSORT
> x\GSLIST
>
> Jacob

Jacob-
YES!!! It works! "External xDISPXY" added to the source code solves
the problem!
Thanks!!!!
From: Andreas Möller on
Hello,

as a background information:
There are lot’s of way to configure/customize debug4x to your specific
needs.
Most widely known is the use of header files where you can build your
own commands through DEFINES and EXTERNAL declarations.
Another way is to use an entry point table, like Suprom49.a
Some supported entry points there are missing, some names have a mixed-
up address and some are wrong which is not surprising as there are
roughly 6.000 supported and several thousands additional unsupported
entries points which divide into truly unsupported and into
unsupported but stable (as promised by JYA who know does not work for
HP anymore). And then there even more thousands unnamed pointers which
can only be accessed through special techniques and which you should
not do as this is very bad programming habit. They are unnamed as
their address will most certainly change if code is added/removed from
the ROM.

To let your program run out of the box in debug4x use this source
code:

::
xCLEAR
xCLLCD
"your text string"
{
HXS 00010 0000000000000000
HXS 00010 0000000000000000
}
%2 ( n=0 for minifont or 2 for system font )
ROMPTR xDISPXY
%7
xFREEZE
;

Note that I would not consider this in anyway a System-RPL program as
you are *only* using User-RPL commands. Note that there is a different
syntax available, if you want to use debug4x to develop User-RPL
programs (check the examples).

Also please search this newsgroup about FLASHPTR and ROMPTR usage in
debug4x.

> If you are trying to save a few bytes (at expense of execution time)
A built-in 5 Nibble ROM address (a PTR) is usually faster to execute
than an equivalent in RAM consisting of a 5 Nibble prolog + the rest
of the object.
In this specific case:
%2 needs Elapsed: 0,02125ms
whereas
% 2 needs Elapsed: 0,03775ms
both timed with debug4x and EMU48.

Of course this is not always true, especially for the opcodes that
have been replaced with native ARM code.

HTH,
Andreas
http://www.software49g.gmxhome.de