1 Punkte von GN⁺ 2024-06-28 | 1 Kommentare | Auf WhatsApp teilen
  • Forth Deck mini ist eine Gehäuseversion des My4TH-Boards mit zusätzlicher Tastatur, Display und Akku, die eine kleine eigenständige Forth-Entwicklungsumgebung im Gerät bereitstellt
  • Kernstück ist eine diskrete 8-Bit-CMOS-Logik-CPU mit 8–14 MHz Takt, 32 KB ROM, 32 KB RAM und bis zu 256 KB EEPROM
  • Ein- und Ausgabe erfolgen über ein 40×4-Zeichen-LCD und eine QWERTY-Tastatur mit 56 Tasten; der 6,6-Wh-LiPo-Akku ermöglicht 6 Stunden Betrieb ohne Aufladen
  • Für Erweiterungen werden RS-232 mit 4800 Baud und ein I2C-Bus genutzt; die Tastatur-PCB ist so ausgelegt, dass sie die begrenzten I/O-Pins für LCD-Ansteuerung und Tastenmatrix sparsam nutzt
  • Das Budgetronics-Tastatur-Kit allein reicht nicht zur Fertigstellung; für einen Forth Deck werden zusätzlich ein separates My4TH computer board und optionale Bauteile benötigt

My4TH-Board als tragbares Forth-Gerät

  • Forth Deck mini ist eine Version des My4TH computer board, ergänzt um Tastatur und Display und in ein Gehäuse eingebaut
  • Dank integriertem wiederaufladbarem Akku kann es ohne Steckdose genutzt werden
  • Forth-Programme können direkt auf dem Gerät geschrieben und debuggt werden, sodass kein serielles Terminal oder PC nötig ist
  • Die Nutzung ähnelt dem eingebauten Basic-Interpreter von Heimcomputern der 1970er- und 1980er-Jahre

Hardwarespezifikationen

  • Bildschirm und Eingabe

    • 40×4-Zeichen-LCD
    • QWERTY-Tastatur mit 56 Tasten
  • Stromversorgung und Abmessungen

    • 6,6-Wh-LiPo-Akku
    • 6 Stunden Betrieb ohne Aufladen
    • Abmessungen: 198×118×35 mm
  • CPU und Speicher

    • Diskrete 8-Bit-CMOS-Logik-CPU
    • Taktfrequenz von 8–14 MHz
    • 32 KB ROM, 32 KB RAM, bis zu 256 KB EEPROM
    • 17 CMOS-Logikchips der 74er-Serie und 3 Transistoren
  • Ein-/Ausgabe und System

    • RS-232, 4800 Baud
    • I2C-Bus für Erweiterungen
    • 16-Bit-Forth-2012-System

Tastatur-PCB und Baukit

  • Tastatur und Display werden per Flachbandkabel mit dem My4TH board verbunden
  • Auf der Tastatur-PCB befinden sich LCD, 56 Drucktaster, USB-Type-B-Mini-Anschluss, Qwiic-Buchse, 74HC574 und weitere Bauteile
  • Die Akkuladeschaltung ist optional
  • Die vollständige Stückliste ist im Forth Deck construction manual zu finden
  • Die für den Bau benötigten Unterlagen sind unter download erhältlich
  • Bei Budgetronics kann ein Forth-Deck-Tastatur-Kit gekauft werden
    • Zur Kostensenkung sind Akku und Ladeschaltung nicht enthalten
    • Einige optionale Steckverbinder fehlen ebenfalls
    • Ein Satz Abstandshalter ist enthalten, damit die beiden Boards gestapelt und als Desktop-Version ohne Gehäuse aufgebaut werden können
  • Zur Fertigstellung eines Forth Deck wird ein My4TH computer board separat benötigt

LCD-Ansteuerung mit begrenzten I/O-Pins

  • Das LCD arbeitet im 4-Bit-Modus, um Pins am My4TH-I/O-Connector zu sparen
  • Am My4TH-I/O-Connector sind nur 5 ungenutzte digitale Ausgänge vorhanden; das große LCD hat 2 Chip-Select-Eingänge, sodass 2 Ausgänge gegenüber dem Bedarf fehlen
  • Die fehlenden digitalen Ausgänge werden durch einen 74HC574 octal D-type bus latch ergänzt
    • Dieses IC ist wie ein Schieberegister mit 4 Bit Breite und Tiefe 2 verdrahtet
    • Dadurch stehen insgesamt 8 zusätzliche digitale Ausgänge zur Verfügung
  • Zum Takten der Daten in den 74HC574 wird die SCL-Leitung des I2C-Busses verwendet
    • Auch wenn der 74HC574 mit dem SCL-Signal getaktet wird, sehen die Geräte am Bus keine gültige I2C start condition
  • Damit keine unerwünschten Register-Schreibvorgänge am LCD entstehen, nutzt das Display das OUT3-Auswahlsignal des digitalen My4TH-I/O-Ports
  • Die Widerstands-Dioden-AND-Gatter R3/D6 und R4/D8 maskieren den chip select des LCD
  • C2 und C3 filtern glitches, die durch das Umschalten der 74HC574-Pins und die parasitäre Kapazität von D6 und D8 entstehen

Tastatur mit 56 Tasten und Hardware-Reset

  • Die Tastatur besteht aus insgesamt 56 Tasten
  • Der Tastenabstand beträgt 12 mm, weshalb größere und komfortablere Tasten schwer zu verwenden sind
  • Das Gerät sollte möglichst klein werden, doch wegen des Displays beträgt die Mindestbreite 190 mm
  • Bei 12 mm Abstand passen 14 Tasten in eine Reihe; mit 4 Reihen ergibt das insgesamt 56 Tasten
  • Tasteneingaben werden über alle 6 ungenutzten Eingangspins des My4TH-I/O-Port-Connectors gelesen
    • In Kombination mit 9 digitalen Ausgängen wird eine 6×9=54-Tastenmatrix ausgelesen
    • Die verbleibenden 2 Tasten sind Sondertasten: Shift und Reset
  • Ein Hardware-Reset wird ausgeführt, indem bei gedrückter Shift-Taste die Reset-Taste gedrückt wird

Akkuschaltung, Software und PCB-Trennung

  • Ein LiPo-Akku dient als Systemstromversorgung
  • Die Ladeschaltung basiert auf dem TP5400-Chip, der häufig in günstigen USB-Powerbanks verwendet wird
  • Wenn das Löten kleiner SMD-Bauteile schwierig ist, kann ein fertig montiertes TP5400-Modul verwendet und per Fly-Wire mit der Tastatur-PCB verbunden werden
  • Die Support-Software für die Tastatur-PCB ist ab My4TH ROM 1.0 integriert
    • Wenn die Tastatur-Erweiterungsplatine mit dem My4TH-Computerboard verbunden wird, erkennt My4TH Tastatur und LCD automatisch
  • Die PCB ist dafür vorbereitet, in zwei Hälften geschnitten zu werden, um Tastatur und Display zu trennen
    • Das Display kann in einem anderen Winkel als die Tastatur montiert werden
    • Eine selbst gebaute, bequemere Tastatur kann verwendet werden

Beispiele und Lizenz

1 Kommentare

 
GN⁺ 2024-06-28
Hacker-News-Kommentare
  • Die CPU dieses Computers ist mikrocodebasiert und aus einigen wenigen diskreten Logikchips und EEPROMs aufgebaut.
    Der Daten-/Adressbus ist zwar 8 Bit breit, aber die NOR-Einheit verarbeitet nur 1 Bit; für eine 8-Bit-Addition muss der Mikrocode daher eine Schleife durchlaufen.
    Ich dachte, für den Zugriff auf die Bits D1 bis D7 bräuchte es einen Hardware-Shifter, und habe mir den Schaltplan angesehen; tatsächlich gibt es keinen, die Shifts werden über eine Lookup-Tabelle im EEPROM erledigt.
    Wer sich für coole CPU-Designs interessiert, sollte sich auch den Novix NC4000 oder den RTX2000 ansehen. Die Bits der Instruktionen steuern mehrere Multiplexer und Einheiten im Chip nahezu direkt, sodass es praktisch kein Decoding gibt.

  • Als Teenager war ich von Forth und CPUs aus diskreten Bauteilen besessen, und wenn man gut sucht, findet man wahrscheinlich noch alte Webrings von selbstgebauten CPUs aus diskreten Bauteilen.
    Diese Besessenheit hat zu meinem heutigen Beruf als Entwickler digitaler Hardware geführt, und ich freue mich wirklich, wenn solche Beiträge oben auf HN landen.

  • Ich lese gern über solche optimierten CPUs aus diskreten Bauteilen.
    Es gibt nur 16 Logik-ICs, nicht einmal einen Addierer. Die einzige ALU-Funktion ist ein einzelnes 1-Bit-NOR-Gatter.
    Details gibt es hier: http://mynor.org/my4th.htm

  • Ich frage mich, was heute eigentlich das Hindernis ist, so etwas wie einen TRS-80 Model 100 für Hobbyisten zu bauen.
    Ein 40x8-LCD, eine der besten Tastaturen aller Zeiten, und die Custom-Keyboard-Community scheint fast jede gewünschte Tastatur bauen zu können.
    Beim Model 100 nahm die Tastatur den größten Teil des Platzes ein, war aber zugleich wirklich brauchbar. Entscheidend war, dass das 40x8-Display groß genug und gut lesbar war; Decks mit kleinen 640x480-Displays sind besonders für ältere Augen schwer zu lesen.
    Beim Psion 5 war die Tastatur ebenfalls ziemlich brauchbar und das Display besser als beim M100, aber ich weiß nicht, ob Hobby-Bastler so eine Tastatur bauen könnten. Man könnte sie auch ausbauen und wiederverwenden, aber für manche wäre das wohl Sakrileg.
    Die „Decks“ mit Button-Matrix, die man heute sieht, kann man kaum als echte Tastaturen bezeichnen; ich denke, der PET 2001 hat das schon gezeigt. Früher habe ich viel auf einem PET programmiert.
    Es muss kein marktfähiges Produkt sein, aber ich frage mich, warum nichts „Echtes“ und „Gutes“ entsteht. Wenn man sieht, wie viel Geld Leute für Hobbys ausgeben, scheint Geld allein nicht die ganze Erklärung zu sein.

    • Es ist mühsam, an ein großes Display mit niedriger Auflösung zu kommen.
      Die Pixeldichte ist stark gestiegen, sodass große Bildschirme hochauflösend sind, und dafür braucht man dann ein deutlich schnelleres Gerät zur Ansteuerung. An dem Punkt ist der Display-Controller viel leistungsfähiger als der eigentliche Computer, was sich etwas absurd anfühlt.
      Genau das war das Hindernis, auf das ich gestoßen bin. Es ist durchaus machbar, wird aber unbeholfener als beabsichtigt.
    • Es gibt nichts, was einen heute daran hindert, einen TRS-80 Model 100 für Hobbyisten zu bauen: https://www.clockworkpi.com/home-devterm
    • Ich frage mich, warum man das überhaupt tun sollte. Früher war die Tastatur kein Peripheriegerät, heute ist sie eines.
      Es gibt keinen Grund, die Auswahl einzuschränken; man kann einfach die gewünschte Tastatur kaufen und verwenden. Nichts hält einen davon ab, die Tastatur zu nutzen, die man möchte, und ich denke, genau so sieht Fortschritt aus.
  • Ich habe fünf My4th-Light-Boards gebaut. Wer Interesse hat, kann mich über mein Profil kontaktieren.
    Wenn es genug Leute gibt, würde ich auch eine kleine Serie des Forth Deck mini bauen.
    Ich habe vor, ein kurzes Forth-Demo-Video zu machen, bin aber noch nicht dazu gekommen.

  • Kurz gesagt scheint es eher in Richtung eines AlphaSmart fürs Programmieren zu gehen
    Falls man AlphaSmart nicht kennt: Das war ein Gerät wie eine Schreibmaschine mit kleinem LCD. Es lief stundenlang mit Batterien, hatte begrenzten Speicherplatz, und man konnte es an einen großen Computer anschließen, um Entwürfe zu speichern
    Wo ist die Programmier-Version davon? Dieser Gedanke kam mir kürzlich, als ich auf HN den Beitrag sah, in dem ein Mac 128k auf einem RPI2040 lief. Theoretisch könnte man auf so einem System echte Arbeit erledigen, aber als Spielzeug wäre es wohl nicht besonders gut
    Ein AlphaSmart für Low-Power-Computing braucht eine echte Tastatur, ein stromsparendes Display, möglichst einen größeren E-Ink-Bildschirm, und keine Internetverbindung
    Ich meine damit keine Taschenrechner wie TI-83, TI-92 oder den neueren NumWorks. Die sind für Rechner gedacht und wegen ihres rechnerartigen Formfaktors unbequem
    https://en.wikipedia.org/wiki/AlphaSmart
    https://news.ycombinator.com/item?id=40699684
    https://axio.ms/projects/2024/06/16/MicroMac.html
    https://en.wikipedia.org/wiki/TI-83_series
    https://en.wikipedia.org/wiki/TI-92_series
    https://www.numworks.com/

    • Ich wünsche mir so etwas ebenfalls seit Jahren, und durch Sharps Memory LCD sowie Ambiqs ARM-Mikrocontroller mit Subthreshold-Logik ist es möglich geworden, das Ganze mit unter 1 Milliwatt zu betreiben
      Dann könnte es ohne Akku allein mit Solarstrom laufen, und als Massenspeicher würde bei niedriger Auslastung paralleler NAND-Flash reichen
      Ich bin nicht über frühe Prototypen hinausgekommen, und die Designnotizen zum zorzpad sind größtenteils auf Spanisch unter http://canonical.org/~kragen/sw/zorzpad.git/ zu finden. za3k vance baut ein davon inspiriertes zorchpad: https://blog.za3k.com/tag/zorchpad/
      Das Hauptziel des zorzpad ist eine Lebensdauer von 53 Jahren. Für dieses Ziel, so sehe ich es, darf man keinen Akku, keinen Ladeanschluss und keine handelsüblichen Keyswitches verwenden. Dadurch gibt es beim Systemdesign viele Kompromisse, und ich habe noch keinen Prozessor mit MMU gefunden, der unter 1 Milliwatt läuft
      „zorzpad“ ist ein Wortspiel mit „thinkpad“ und wird in manchen spanischen Dialekten wie „thorthpad“ ausgesprochen, also ein Witz in Richtung Gegenstück zum thinkpad
      Ich vermute, dass E-Ink-Displays zu viel Strom verbrauchen. Seit Jahren suche ich nach verlässlichen Verbrauchswerten; wenn man die Akkulaufzeit eines Amazon Kindle durch seine Akkukapazität teilt, landet man grob bei etwa 100 Milliwatt
      Der alternative Bildschirm des zorzpad zu E-Ink ist ungefähr ein Zehntel so groß und benötigt ein Tausendstel der Leistung, also etwa 100 Mikrowatt; das Datenblatt garantiert nur 20 Hz, aber auch 60-Hz-Updates sind möglich
      Wenn einem das Entfernen des Akkus nicht wichtig ist oder man keine Massenproduktion plant, kann man buchstäblich einen AlphaSmart Neo kaufen und Tastatur sowie Display an etwas wie einen ESP32 anschließen
    • Dem Gesuchten kommt meiner Meinung nach der Cardputer am nächsten: https://docs.m5stack.com/en/core/Cardputer
    • Der TRS-80 Model 100 passt wirklich sehr gut zu diesen Anforderungen
      Im ROM gibt es BASIC, eine Textverarbeitung und eine Tabellenkalkulation, dazu einen pixeladressierbaren Bildschirm und eine für die Größe hervorragende Tastatur. RS-232 und ein 300-bps-Modem sind ebenfalls vorhanden
      Der aktuelle Clockwork-PI erinnert zwar an dieses Gefühl, aber die Tastatur wirkt wie Spielzeug, und am Ende ist es nur ein Linux-Laptop mit allerlei Ablenkungen
      Das Model 100 wurde noch bis in die 90er von Journalisten mitgeführt, um Artikel zu schreiben und sie an ein Service-Bureau hochzuladen
    • Ein AlphaSmart mit E-Ink allein wäre schon großartig
      Für mich waren die zentralen Funktionen die Mac-Tastatur und die Shortcuts, sodass ich beim Schreiben nicht darüber nachdenken musste
    • Ich benutze ein Alphasmart Neo zum Tagebuchschreiben. Kürzlich habe ich es mit einem ESP32 modifiziert, sodass drahtlose Dateiübertragung möglich ist, und bin sehr zufrieden damit
      https://www.dannysalzman.com/2024/06/20/modding-alphasmart-n...
  • Als früheres Beispiel für einen Computer mit eingebautem Forth-Interpreter gibt es den Jupiter Ace: https://en.wikipedia.org/wiki/Jupiter_Ace
    Auch Open Firmware, das unter anderem bei Sun, PowerPC-Macs und One Laptop per Child eingesetzt wurde, nutzte Forth. Es konnte auch in ROMs von Erweiterungskarten verwendet werden, wodurch diese weniger CPU-abhängig wurden: https://en.wikipedia.org/wiki/Open_Firmware

  • Wenn dich kleine Computer interessieren, du aber von Forth oder Löten nicht besonders angezogen bist, kannst du für 30 Dollar eine ziemlich brauchbare ESP32-Box kaufen: https://shop.m5stack.com/products/m5stack-cardputer-kit-w-m5...

    • Ich frage mich, wie das Betriebssystem ist. Vermutlich bootet es nicht in einen Wayland-Desktop.
      Trotzdem ist es deutlich leistungsfähiger als der Amiga, den ich am Wochenende emuliert habe, und der Amiga hatte einen vollständigen GUI-Desktop, Compiler und mehrere Tools.
      Ich frage mich, was man im Auslieferungszustand damit machen kann.
      Edit: War mir egal, ich habe einfach bestellt. Wenn es ankommt, werde ich es herausfinden, aber bis dahin frage ich mich immer noch, was ich erwarten sollte.
    • Trotzdem gibt es Forth für dieses Gerät: https://github.com/ryu10/M5CardForth
    • Die Produkte von M5Stack sehen für ihren Preis alle ziemlich ordentlich aus. Für 30 Dollar wären Funktionen nahe an einem Flipper Zero schön.
    • Ein ESP32S3-Board mit GPS, LoRa-Funk, LiPo-Ladegerät und OLED-Display bekommt man ebenfalls für etwa 28 Dollar.
      Das ist ein Gerät, das häufig bei Meshtastic verwendet wird.
  • Hm … es gibt auch Forth von Collapse OS: http://collapseos.org/forth.html

  • Erinnert mich an den Oric-1.
    https://en.m.wikipedia.org/w/index.php?title=Oric_(computer)...