Entry Points Window
The Entry Points Window can be opened and closed by using the Debug4x Main Window's View Menu or by the shortcut keys ctrl+U (think of undefined).

The Entry Points Window allows you to browse through the symbols defined in the .lr files for the project.  This, of course, also includes all the entry points for the Calculator ROM (in the Supromxx.a file).  This window is an access port to the full database of entry points, including those defined and compiled by the current project.

The numeric forms of all addresses needs special handling in Debug4x because of the complex memory management in the calculators.  Read Addresses and Address Expressions to understand the values shown in the Entry Points Window.

Build a Query to the Database
To find entry points, the search information is entered into various fields and then this query is used to search the database.  In this example, the Demo project has been compiled and then the word Demo has been typed into the Contain box.  Pressing the Exec button (or just hitting the ENTER key) executes the search and returns all entries which have Demo as part of their name.

The search is case-sensitive, so demo will not produce the same result as Demo.  The addresses shown will be different if the emulator window is open and the project has been loaded.  When a project is loaded all of its addresses are changed to reflect its current position in the emulator memory.

In the example window, the first item is xDemo (0000E9) R.  The entry name is xDemo, it has an address of 0000E9 and it is relocatable (the "R" flag).  Because the address is flagged as relocatable, the value 0000E9 is relative to the beginning of the project in memory.  The symbol ~xDemo is the ROMPTR for the xDemo entry (because of the leading "~").  Its value is a ROMPTR consisting of the entry table number (000) plus a 3 digit library number (hex 201).  The last item shown is ^DemonicLF.  This entry is not part of the Demo project.  It is a FLASHPTR in the HP49 ROM (the "^" identifies it as a FLASHPTR).  It is entry number 0BA in library 006.

Double clicking an entry will open the Source Editor at the line which defined the entry (if the definition was part of the project).

Entries Found, References Found
Under the list of entries which were found is a count of how many entries were found (6 in the picture). a comma and then the total number of references to all of the found entries (12 in the picture).  This there were a total of 6 entries which had Demo in their name and these names were referenced in the project a total of 12 times.

References List
Click on an entry in the top list and the lower box will display a list of references to that entry.  Clicking on an item in the lower list will open the Source Editor at the reference.  This is a very quick way to find calls in a project.

Undefined Entries
Symbols which have not been defined may be found by unchecking the Resolved Symbols box.  These may represent bugs in your code. Clear the Contains: box and press ENTER to see all undefined items.  Put a few characters in the Contains box or add some filters based upon addresses to see a smaller list.  Clicking in the lower box on a reference will open the Source Editor to the reference to the undefined symbol.

Filters
The query for entries may be filtered in the following ways:

 

Buttons:

Execute a Query
Click on EXEC, or press ENTER in one of the edit areas to execute the search.

FPTR?
Reduce the current list of entries to only those entries that are FLASHPTRs.

Save List/Load List
The Sv Lst and the Ld Lst buttons will save/load the entry list to a text file.  This may be convenient for later exploration.

New
The New button will open another Entry Point Window for independent operations and searching.

 

ROM Developers:
Debug4x has some features used to help develop the ROM for the HP49.  The following items are provided for the ROM development teams:
Use Supported   Check to use the Supported Entries List.
39   Check for special filtering of entries.
Load Sup   Load a supported entries list.
Recreate   Recreate a supported entries list from the current search lists.
Sp Read   Perform a combined search with the supported entries list.