Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

shezik/espnut

Repository files navigation


An ESP32 port of Eric Smith's Nonpareil emulator. Designed for HP Voyager calculator emulation.
The successor of shezik/esp15c (now archived).
To perform a firmware update, visit espnut-updater.

Features

  • Matrix keyboard driver for ESP32-S3 that doesn't support dedicated GPIO interrupt :)
  • Power management
  • State saving & loading
  • Graphical menu and file manager
  • Synthetic programming support for HP-15C (yx + ON)

Todo (Sorted by priority)

  • Remove excess variables saved in state file
  • deleting empty directories
  • Logging and accessing logfile
  • Read comments marked with '!!'
  • Apply ROM patches dynamically
  • Add ESP32 cpu frequency options to Menu

Schematics are available here.


Porting to unicore chips

This project utilizes the auxiliary core of ESP32-S3 to scan the matrix keyboard. You'll need to take care of the xTaskCreatePinnedToCore function called in src/MatrixKeyboard.cpp, though I suppose that ARDUINO_RUNNING_CORE would also be 0 in this case.

Additionally, check commit 7db65a if watchdog is often triggered. You'll probably want to replace yield() with vTaskDelay().

Also confirm that there's enough RAM that fits the ROM files.

About

An ESP32 port of Eric Smith's Nonpareil emulator. Designed for HP Voyager calculator emulation.

Resources

License

Stars

Watchers

Forks

Contributors

AltStyle によって変換されたページ (->オリジナル) /