2024-03-21 12:46:02 +01:00
|
|
|
|
# Emulator of the HP 48GX, HP 49, and HP 40
|
|
|
|
|
|
2024-09-26 14:58:38 +02:00
|
|
|
|
**This is a fork of saturn v4.1.1.1 originally by Ivan Cibrario Bertolotti.**
|
|
|
|
|
|
|
|
|
|
Original source are available at https://www.hpcalc.org/details/4382
|
|
|
|
|
|
|
|
|
|
The GUI has been replaced by a new one (taken from x48ng) in SDL2 and/or ncurses.
|
|
|
|
|
|
|
|
|
|
The main binary is `dist/saturn` with helpers/wrappers scripts available per model as:
|
|
|
|
|
* `dist/saturn48gx`
|
|
|
|
|
* `dist/saturn48sx`
|
2024-10-02 15:46:14 +02:00
|
|
|
|
* `dist/saturn49g`
|
2024-09-26 14:58:38 +02:00
|
|
|
|
* `dist/saturn40g` (not really functional (yet))
|
|
|
|
|
|
2024-10-06 19:14:44 +02:00
|
|
|
|
## Screenshots
|
|
|
|
|
|
|
|
|
|
![screenshot of saturn49g](./saturn49g.png?raw=true "screenshot of saturn49g")
|
|
|
|
|
![screenshot of saturn48gx](./saturn48gx.png?raw=true "screenshot of saturn48gx")
|
|
|
|
|
![screenshot of saturn48sx](./saturn48sx.png?raw=true "screenshot of saturn48sx")
|
|
|
|
|
|
2024-03-28 09:24:20 +01:00
|
|
|
|
## Building
|
2024-03-21 12:46:02 +01:00
|
|
|
|
|
2024-09-26 14:58:38 +02:00
|
|
|
|
Dependencies:
|
|
|
|
|
- SDL2
|
|
|
|
|
- ncursesw
|
|
|
|
|
|
|
|
|
|
|
2024-03-21 12:46:02 +01:00
|
|
|
|
``` shell
|
|
|
|
|
make
|
|
|
|
|
```
|
|
|
|
|
|
2024-08-25 18:40:59 +02:00
|
|
|
|
## Installing
|
|
|
|
|
``` shell
|
|
|
|
|
make install DESTDIR=/
|
|
|
|
|
```
|
|
|
|
|
|
2024-03-28 09:24:20 +01:00
|
|
|
|
## Using
|
2024-09-26 14:58:38 +02:00
|
|
|
|
Use the wrappers scripts.
|
2024-08-25 18:40:59 +02:00
|
|
|
|
|
2024-09-26 14:58:38 +02:00
|
|
|
|
The local data are stored under $XDG_CONFIG_HOME/saturn<model>/
|
2024-03-28 09:24:20 +01:00
|
|
|
|
|
|
|
|
|
## Known bugs
|
2024-10-05 08:31:56 +02:00
|
|
|
|
- some bugs in emulation:
|
|
|
|
|
- 48gx: ON-D A can hang because it tries to write data in ROM space
|
|
|
|
|
- 48gx: VERSION spouts messages in the console (but works)
|
|
|
|
|
- 49g: spouts messages in the console every second (but works)
|
|
|
|
|
- ncurses UI: becomes unresponsive (but still quits gracefully on F7)
|
2024-09-26 16:26:51 +02:00
|
|
|
|
|
|
|
|
|
## Todo
|
|
|
|
|
- fix emulation bugs
|
2024-10-05 08:31:56 +02:00
|
|
|
|
- 49g: find a way to enable the bigger screen (131×80)
|
|
|
|
|
- 40g: make emulation work
|