2 August 2018 18:27

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

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:

TasteFunktionBeschreibung
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:

TasteFunktionBeschreibung
◉ 🡄 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:

TasteFunktionBeschreibung
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

FlagBeschreibung
-33Transfer via IR
-34Print via wire
-4124-hour clock
-42dd.mm.yy format
-56Standard beep off
-61[USR] locks User
-62User keys on
-74Left stack disp
-83Display grobs off
-90CHOOSE:mini font
-92MASD SysRPL mode
-98Vector:vert disp
-103Complex on
-105Approx. mode on
-117Soft 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…

Kommentare

Powered by BetaBlog
Login | RSS Beiträge RSS Kommentare Impressum