Post Reply 
[HP41] mcode question polling point entries
03-27-2023, 11:34 AM
Post: #13
RE: [HP41] mcode question polling point entries
I have just created the simplest of all entry routines, accessed from xFF8 (IO Service):

Version 1:
NOP
?NC GO RMCK15 (27F4)

Version2:
N=C
?NC GO ROMCK15 (27F4)

The ROM sits in a lower page than Ángels OS/X. Version 1 leaves the double quoted CAT intact, version 2 falls back to the normal CAT.

I did a trace with V41 doing a CAT" 0 G, and found that in the OS/X ROM (in Page 9) entry xFF* does a relative long goto to 9892, runs through some other code an finally, at 98E0 does C=N and seems to check a value originating from N.
Doing a search backward in the trace for a N=C instruction shows this at 0C24, right in the partial key sequence code, long before going into the polling loop.

Without looking at the HP41 ROM in detail I suspect that upon doing the IO service polling the HP41 system puts a key value in N to be used by the entry in the ROM. When this value is changed by another polling point before the ROM really using it things go wrong.

This again shows how clever the HP41 system ROMS were written, and one can only wonder if all this stuff was ever really documented internally at HP. And many thanks for the tracing function in V41!

Regards, Meindert
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: [HP41] mcode question polling point entries - MeindertKuipers - 03-27-2023 11:34 AM



User(s) browsing this thread: 1 Guest(s)