HP 50g – Tools und Tipps
Seit mehr als einem Jahr bin ich im Besitz eines HP-42S und eines HP 50g – zwei wirklich tolle Taschenrechner. Zwar reicht heutzutage in den meisten Fällen das Smartphone (und mit Free42 gibt es eine fantastische Version des HP-42S für PC, Android und iOS), aber manchmal ist ein richtiger Rechner mit richtigen Tasten ganz angenehm.
Während es zum HP-42S wenig zu sagen gibt (nach einer gewissen Einarbeitungszeit läuft es einfach), ist der HP 50g ein wahres Monster bezüglich Anpassbarkeit und Erweiterbarkeit. Von einfachen Programmen in UserRPL bis zu tiefgreifenden Änderungen im System (über SysRPL und Assembler) ist fast alles möglich.
Hier möchte ich ein paar Libraries, die bei mir in Gebrauch sind, vorstellen und auf hilfreiche Dokumente und Seiten verweisen. Da ich immer noch neue Erfahrungen mit dem Rechner sammle, werde ich diesen Beitrag von Zeit zu Zeit erweitern.
Dokumentation und Anleitungen
- HP Calculator Literature
Die ultimative Sammlung von Dokumenten zu HP-Taschenrechnern. Handbücher, Kurzanleitungen, erweiterte Literatur. - HP 50g User's Guide
Die offizielle Bedienungsanleitung zum HP 50g. - HP 50g Advanced User's Reference Manual
Erweiterte Dokumentation mit kompletter Befehlsreferenz. Dort findet man viele Details, die im normalen Handbuch nicht erwähnt sind. - An Introduction to HP 48 System RPL and Assembly Language
Eigentlich für den Vorgänger – den HP 48G – geschrieben, bietet dieses Buch einen guten Einstieg in die SysRPL-Programmierung. - Programming in System RPL
Ergänzungen zur SysRPL-Programmierung für den HP 49/50g. - Using the HP49G for System RPL Programming
Ebenfalls weitere Informationen in Bezug auf den HP 49/50g. - Memento of useful tips and tricks for HP 50g
Zusammenfassung verschiedener Funktionen des HP 50g.
Libraries und Programme
Der HP 50g ist deswegen so mächtig, weil sich die Software fast beliebig erweitern lässt. Neben der Möglichkeit, eigene Programme in diversen Sprachen zu schreiben, gibt es in der Community bereits eine große Auswahl von Erweiterungen. Eine äußerst umfangreiche Sammlung lässt sich auf hpcalc.org finden.
Hier eine kurze Auflistung von Libraries und Programmen, die ich auf meinem HP 50g nutze:
- Appsman: Die prominent platzierte Apps-Taste ist leider recht nutzlos, da fast alle aufgeführten Funktionen auch schneller über einen einzelnen Tastendruck erreichbar sind. Mit Appsman lässt sich dieses Menü (und auch weitere) im USR-Modus beliebig anpassen.
- editmatrix: Der Matrix-Editor im HP 50g ähnelt einer Tabellenkalkulation und ist etwas unübersichtlich. Alternativ kann man Matrizen im Text-Modus bearbeiten, was meistens aber noch schwieriger ist. editmatrix bietet eine grafische Übersicht über die aktuelle (oder eine neue) Matrix, aus der man mit den Pfeiltasten ein Element auswählen und bearbeiten kann. Auch symmetrische Matrizen lassen sich damit leicht erzeugen.
- filer6: Schnell sammeln sich viele Daten im Speicher des HP 50g an. Der eingebaute Dateimanager ist allerdings etwas umständlich in der Bedienung, da man für häufige Operationen umständlich durch Menüs navigieren muss. Mit filer6 gibt es einen von der Optik sehr ähnlichen Dateimanager, dessen Bedienung aber hauptsächlich auf Tastenbelegungen basiert. Damit lassen sich nach kurzer Einarbeitung viele Operationen schnell erledigen. Auch erlaubt er es, Objekte zu "verstecken" (z.B. im VAR-Menü).
- HLP49: Die Funktionsnamen des HP 50g wirken oft ein wenig kryptisch. Die im Rechner integrierte Hilfe bietet zumindest für einige häufig genutzte Funktionen eine Erklärung. HLP49 ergänzt diese Liste um über 600 weitere Hilfeeinträge.
- Keyman: Wem das Tastenlayout mit Left- und Right-Shift nicht reicht, kann die Tasten im USR-Modus beliebig belegen. KeyMan erleichtert die Konfiguration und erlaubt das Belegen jeder Taste mit kurzem, langem oder doppeltem Druck, je normal, mit Left- oder mit Right-Shift. Dadurch sind hunderte Belegungen möglich. Einige Beispiele werden mitgeliefert, weitere befinden sich in Topkeys+. Meine eigenen Belegungen beschreibe ich weiter unten.
-
Quaternion: Für die meisten wohl etwas speziell, aber ich muss auf der Arbeit häufiger mit Quaternionen rechnen. Diese kleine Library implementiert häufige Operationen auf Quaternionen, die als 4D-Vektor dargestellt werden.
Als Alternative/Ergänzung gibt es auch noch ANION, das ich aber noch nicht ausprobiert habe. - SDfiler: Bietet eine Bibliothek für Entwickler, um direkt auf die SD-Karte des Rechners zugreifen zu können. Dadurch können auch Unterverzeichnisse und längere Dateinamen genutzt werden. Für den Endanwender gibt es einen kleinen Dateimanager mit diesen Funktionen.
- SolveSys49: Ein einfach zu bedienendes, grafisches Tool zum Lösen von nichtlinearen Gleichungssystemen.
Weitere Tools folgen …
Nützliche Einstellungen
Die folgenden Einstellungen sind natürlich im höchsten Maße abhängig vom eigenen Geschmack, aber vielleicht geben sie ja einige Denkanstöße oder gefallen so sehr, dass sie einfach übernommen werden.
Es ist sicher aufgefallen, dass einige der oben genannten Anpassungen nur im USR-Keyboard verfügbar sind, da sich nur dieses frei belegen lässt. Daher habe ich den USR-Modus standardmäßig aktiviert (zwei mal LS Alpha drücken). Nicht konfigurierte Tasten behalten ihre Standardbelegung bei.
Bei einem Neustart gehen einige Zustände verloren. Um diese Einstellungen wiederherzustellen, kann ein Programm STARTUP
im Home-Verzeichnis angelegt werden, das beim Start automatisch ausgeführt wird. Meins sieht aktuell wie folgt aus:
<<
600 ->KEYTIME
2 ->HEADER
-62 SF
>>
KEYTIME
legt die Debounce-Zeit der Tasten fest, HEADER
setzt die Höhe des Headers und -62 SF
aktiviert den USR-Modus über ein Flag.
Wenn man ein aufgeräumtes Home-Verzeichnis bevorzugt, lässt sich der STARTUP-Eintrag leicht mit einem Tool wie filer6 verstecken. Dies funktioniert auch mit automatisch angelegten Einträgen wie CASDIR
.
Tastenbelegungen
Mittels Keyman habe ich einige Tasten im USR-Keyboard neu belegt, um Funktionen schneller zu erreichen.
LS = Left-Shift, RS = Right-Shift, _ = Shift gedrückt halten, ◉ = lange Drücken
Aus den Keyman-Beispielen habe ich alles bis auf die Port-Browser- und Keyman-Shortcuts übernommen:
Taste | Funktion | Beschreibung |
---|---|---|
RS_A‥F | Quote Softkey | Belegung (Name) der Softkeys einfügen |
◉ H | FlagBox | Flag-Browser aufrufen |
◉ I | StkMenu | Shortcut zum Stack-Menü |
▲ | n PICK | Führt PICK mit der Zahl in der CMD-Line aus |
◉▲ | StkTop | Springt zum obersten Eintrag im Stack |
◀ | Up/Home | Geht in das nächsthöhere Verzeichnis. Gedrückt halten um immer weiter bis HOME zu gehen. |
LS ◀ | PICT | War vormals nur ◀ |
LS_◀ | PAINT | Angepasster Zeichenmodus |
◉ ▶ | OVER | Kurzer Druck SWAP, langer Druck OVER |
Weitere Belegungen stammen aus Topkeys:
Taste | Funktion | Beschreibung |
---|---|---|
◉ 🡄 | DEL/CLEAR | Kurzer Druck führt DEL aus, ein langer Druck direkt CLEAR (so verliert man schnell recht viele Daten, also aufpassen!) |
LS_🡄 | Purge/Del→ | Interaktiver Builder um Variablen mittels PURGE zu löschen bzw. Del→ im Edit-Modus |
LS_3 | ~n | Durch real, zint und user binary Darstellung wechseln |
RS_3 | ~BASE | Durch HEX, DEC, OCT und BIN wechseln |
LS_SPC | ~ANG / ~COOR | Kurz drücken um zwischen Rad/Deg zu wechseln, lange drücken für Rect/Cyl/Sph |
Und schließlich noch ein paar eigene Belegungen:
Taste | Funktion | Beschreibung |
---|---|---|
LS Apps | filer6 | :2:FILER6 EVAL Öffnet den erweiterten Dateimanager „filer6“ |
LS_Apps | SDiag Browser | EBR Öffnet den Dokumentations-Browser von „SDiag“ |
RS_Apps | HLP49 / HELP | Ein kurzer Druck öffnet den „HLP49“-Browser, ein langer Druck die CAS-Hilfe. Zur Erstellung beide Befehle auf den Stack packen, mittels IfL aus Keyman kombinieren und mit ->TO? durch einen TakeOver erweitern. |
RS_▼ | ViewP | Fullscreen-Viewer aus HeadMan |
LS_MTRW | EditMatrix | Der grafische Matrix-Editor. Befehl EDITMATRIZ |
LS_[] | ->ARR |
Zu Array konvertieren |
LS_() | OBJ-> |
Objekt entpacken |
LS_{} | ->LIST |
Zu Liste konvertieren |
LS_Enter | ->Qπ |
Wert als Bruchdarstellung anzeigen |
Tipps, Tricks & Snippets
- Wechsel zwischen Rad/Deg
<< IF -17 FC?C THEN -17 SF END >>
- Wechsel zwischen Rect/Cyl/Sph
<< CASE -16 FC? THEN -16 SF -15 CF END -15 FC? THEN -15 SF END -16 CF END >>
- Shortcut zum VIEW Befehl (Userspace-Implementierung):
DUP SCROLL
Meine aktuell gesetzten System Flags (lower, upper): 0x3080030300010FF0 0x001001420A040200
Flag | Beschreibung |
---|---|
-33 | Transfer via IR |
-34 | Print via wire |
-41 | 24-hour clock |
-42 | dd.mm.yy format |
-56 | Standard beep off |
-61 | [USR] locks User |
-62 | User keys on |
-74 | Left stack disp |
-83 | Display grobs off |
-90 | CHOOSE:mini font |
-92 | MASD SysRPL mode |
-98 | Vector:vert disp |
-103 | Complex on |
-105 | Approx. mode on |
-117 | Soft MENU |
Ein schneller Weg, um Befehle auf den Stack zu bekommen (und nicht als String mit Anführungszeichen oder so), am Beispiel SWAP
:
::SWAP DTAG
Weiteres folgt…