hpp41

Free HP41C emulator for HP PRIME.V0 : proof of concept

    • 320 memory registers.
    • No modules support.

v0:

    • put HP41.hpappdir Nut.hpprgm and Lcd.hpprgm in calc.
    • 'check' "Lcd" first, then "Nut" in Program
    • use USER mode
    • launch HP41 app (check "HP41" in Program if needed)
    • wait until MEMORY LOST disappear
    • only direct key possible (shift and alpha not done)

v1

    • now alpha & shift ok, prgm is MENU
    • no more USER mode required
    • leave with ON

v2

    • now better keypad

v3 now in one program, no need of Nut & Lcd programs

    • some optimizations
    • Menu is 'prgm', View is 'user', Symb is for saving ram, ...
    • ON key abort the program (in the manual it is stated that ON as a keycode but it breaks the program instead of sending the keycode)
    • there are some debug inside (search PRINT(TEVAL(runToSleep())); near the end of prog in nutLoop function, comment it and decomment the next line to remove it)
    • I give up on this program, the prime seems to use some heavy CPU throttling on the CPU frequency or some strange heavy background tasks (the given ram config has a simple loop program, execution varies from 27 secondes upto 580 secondes, depending on WHEN you run it with XEQ"AA !! )
    • this behavior means that no optimization is possible on a program using full cpu for more than 10 seconds, no way to measure anything usefull
    • I will continue on the TI83PCE version, deterministic platform, speed of cpu is slow but in assembly it is fast (around 8 MHz ez80 but constant)

If people have ideas to enhance the app, feel free to do so

(and send modification back to me ;) )

P.P.S.

    • speed on a G2 is 3.7 times slower than a real 41 at best, can be 20 times slower, it depends on the mood of the CPU throttling or USB connection ??
    • full C program on a TI83PCE is 1.2 times slower then a real 41
    • on a TI83PCE an ASM crafted version is 5.5 times faster than a real 41

Emulator loosely based on Non-Pareil from Eric Smith, font by Luiz C. Vieira.

reboot screen due to bug (see hpmuseum forum)