Epson HX-20 - Display Controller Emulator

  • Diese Dateien kann ich auch laden. Ich habe keine Ahnung warum ich diese eine Datei nicht laden kann. Soweit funktioniert alles.

    Super!

    Danke für die Hilfe.

  • Danke für den Tip.

    Nicht alle der Dateien haben ein CTRL-Z (ich denke das ist 0x1A), aber alle Dateien lassen sich laden (z.Bsp.: ATTACK.ASC, AWARI3.ASC). Habe jetzt versucht die Datei zu ändern (0x1A an Ende Angefügt, Zeilennummern angepasst, Lineendings geändert) aber kein Erfolg. Ich habe keine Ahnung warum sich die Datei nicht laden lässt.

  • Hab einfach mit gedit eine Textdatei erstellt und diese dann als UTF-8 und mit Zeilenende Mac (klassisch) abgespeichert ... funzt ;)

    "Link arms,don't make them." - Du musst Gott für alles danken, sogar für einen Franken

  • Moin. Hab deine Datei bei mir ausprobiert ... funzt (siehe Bild). Wie ich weiter oben schon berichtet habe, reicht auch UTF-8 mit MacOS klassisch Line-Endings OHNE das von dir beschriebene 0x1A am Ende der Datei.


    "Link arms,don't make them." - Du musst Gott für alles danken, sogar für einen Franken

  • Danke für das Testen. Ich habe jetzt ein paar Versuche gemacht und bin zu folgendem Ergebnis gekommen:

    0x1A am Ende ist egal,

    Windows Lineendings (0x0D 0x0A): OK

    MAC Lineendings (0x0D): OK

    Unix Lineendings (0x0A): DS Error

    Hoffe die Sache damit geklärt zu haben.

    Ansonsten funktioniert die Software klaglos und ist eine große Hilfe.


    lg

  • Ah, dann ist alles klar. [Im Prinzip finde ich da mal ausnahmsweise MS-DOS am besten, denn CR fährt für mich den Druckkopf nach links und LF macht nur einen Zeilenvorschub.]


    Ich schau mal nach, aber ich denke, da kann meine Software nichts machen. Ich könnte zwar nachschauen, ob eine Datei Unix Zeilenenden hat und dann CR/LF einsetzen, aber dann würden Binärdateien zerstört. Letztendlich liefert die Emulation (und auch das Original) eben nur das, was es auch in der Datei vorfindet, ob sie einen Text (BASIC mit SAVE "XX",A gespeichert) oder einen anderen Inhalt hat (BASIC mit SAVE "XX" gespeichert = binär oder Datendatei), kann sie nicht erraten.


    Martin

  • Ich denke nicht das eine Änderung notwendig ist. Wenn man es weiß ist es kein Problem.

    lg. Robert

  • Martin Hepperle :


    Jetzt, wo ich endlich einen HS-20 am Laufen habe, hätte ich gerne Deine schöne Software ausprobiert. Wenn ich das JAR-File direkt starte, läuft es (natürlich ohne COM-Port). Wenn ich es über eine Batch aufrufe in der Dein Beispielaufruf "java -jar MH-20-Display-Controller.jar -port COM9 -width 80 -height 24", bekomme ich eine EXCEPTION_ACCESS_VIOLATION:



    Was läuft da schieft oder was mache ich falsch???


    @ALLE :


    Achja, ich habe auch Probleme mit der Grafikdarstellung mit der Software von Norbert Kehrer:

    SCREEN 1 funktioniert und ich kann die Zeichen am PC sehen. FILES funktioniert auch,

    Wenn ich aber SCREEN 1,2 oder SCREEN 2 eingebe, hängt sich das Programm auf und ich bekomme am HX-20 einen DU-ERROR!

    (Aufruf über eine Batch mit "flashx20.exe COM9")


    Kann mir da jemand weiter helfen???


    DANKE!


    :)Franky

  • Die Fehlermeldung sagt, dass das Programm anscheinend in den Tiefen der nativen Bilbliothek jSSC abstürzt, also außerhalb meines Java Programms.


    Ist denn die COM... , Bezeichnung die Du verwendest richtig? Bei USB-RS232 Kabeln ändert sich das ja gelegentlich mal.


    Martin


    [Soweit ich mich erinnere, funktioniert die Software von N. Kehrer nur bei HX-20 mit 16 KB Speicher, weil er keine Relokation/Verschiebung des Maschinencodeteils von Epson vornimmt]

  • Ist denn die COM... , Bezeichnung die Du verwendest richtig? Bei USB-RS232 Kabeln ändert sich das ja gelegentlich mal.

    Mit der gleichen COM-Bezeichnung funzt das Programm von N. Kehrer ja bei mir - nur die Grafikausgabe klappt nicht. Muss ich mal schauen wieviel Speicher ich in meinem HX-20 habe...

    Schade! Ich hätte Dein Programm zu gerne mal ausprobiert...


    :)Franky


    Nachtrag: ?FRE(0) gibt bei mir 12457 aus. Ist das ok???

  • [Soweit ich mich erinnere, funktioniert die Software von N. Kehrer nur bei HX-20 mit 16 KB Speicher, weil er keine Relokation/Verschiebung des Maschinencodeteils von Epson vornimmt]

    Ich habe nun mal einen anderen Rechner (auch i7, Win10, 64Bit) ausprobiert. Die Version von Norbert Kehrer funktioniert hier, auch die Grafikausgabe mit SCREEN 1,1. Dein Programm stürzt hier leider ebenso ab...


    :)Franky

  • Kann man da irgendwelche Kompatibilitäts-Eigenschaften einstellen?

    Hmm, wenn ich es OHNE Comport aufrufe, funktioniert es ja. Erst wenn ich in der BATCH den COM mit angebe, crasht Dein Programm... Vielleicht liegt's ja wirklich daran dass da neue Schnittstellen-Bibliotheken benötigt werden???


    Kannst Du mir sagen, wie groß eigentlich vom Originalgerät die Grafikauflösung war? Martin Kehrer hat da ja was mit 512x512, 1024x768 und 1800x1000 eingebaut - das kann ja unmöglich so gewesen sein!


    Kannst Du mir ein bisschen was über die Kommunikation zwischen HX-20 und PC verraten? Ich würde gerne ein kleines Standalone-Gerätchen mit einer PicoMite und einem einfachen TFT aufbauen...


    :)Franky

  • Die Details stehen alle in den Epson technischen Handbüchern. Es gibt dazu ein serielles Protokoll für externe Displays und Massenspeicher.

    Im Prinzip könnte man auch einen Raspberry Pi mit Linux und Java verwenden, das sollte eigentlich funktionieren, wenn es man die jscc Bibliothek dafür übersetzt (die Bibliothek unterstützt WIndows, Linux, Linux/Apple).


    Die beste Informationsquelle für Epson HX-20 /und andere Epson Geräte) ist https://electrickery.nl/comp/hx20/index.html


    Martin

  • Im Prinzip könnte man auch einen Raspberry Pi mit Linux und Java verwenden, das sollte eigentlich funktionieren, wenn es man die jscc Bibliothek dafür übersetzt (die Bibliothek unterstützt WIndows, Linux, Linux/Apple).

    Ich hatte mir da etwas Stromparenderes vorgestellt. Eine Pi-Pico z.B. mit einem ILI9341 oder ähnlich - zumindest so, dass ein autarker Batteriebetrieb (ohne Autobatterie) möglich wäre...


    Die beste Informationsquelle für Epson HX-20 /und andere Epson Geräte) ist https://electrickery.nl/comp/hx20/index.html

    Mal sehen ob ich daraus schlau werde...


    DANKE!!!


    :)Franky

  • Noch stromsparender ... es gibt da ein SD-Kartenprojekt mit Arduino Micro/Nano/etc. für den Epson PX-8 der das selbe Protokoll für die Massenspeicher verwendet. Das könnte man eventuell aufbohren. http://wrcooke.net/projects/pfbdk/pfbdk.html

    Auch hier https://forum.vcfed.org/index.…uino-and-sd-card.1242630/


    Das Protokoll ist z.B. hier beschrieben: https://electrickery.nl/comp/hx20/doc/tmS_10-11.pdf und hier https://electrickery.nl/comp/hx20/doc/epsp.txt

    Es ist Paket-basiert und man kann sich auch eigene Erweiterungen implementieren.


    Die Grafikkordinaten sind 16 bit, d.h. man könnte damit auf einem wirklich guten TFT mit 65000 x 65000 Pixels schöne Linien ziehen ... oder auf einem Plotter ausgeben ...

    Code
                                 DRAW LINE TO DISPLAY (L.C) 
    00   MM   SS   C8   08       00-01 = COORDINATE (X) OF START POINT
                                 02-03 = COORDINATE (Y) OF START POINT
                                 04-05 = COORDINATE (Y) OF END POINT
                                 06-07 = COORDINATE (Y) OF END POINT
                                 08-08 = COLOR CODE (C) 
    01   SS   MM   C8   00       00-00 = XX
  • Noch stromsparender ... es gibt da ein SD-Kartenprojekt mit Arduino Micro/Nano/etc. für den Epson PX-8 der das selbe Protokoll für die Massenspeicher verwendet. Das könnte man eventuell aufbohren. http://wrcooke.net/projects/pfbdk/pfbdk.html

    Auch hier https://forum.vcfed.org/index.…uino-and-sd-card.1242630/


    Das Protokoll ist z.B. hier beschrieben: https://electrickery.nl/comp/hx20/doc/tmS_10-11.pdf und hier https://electrickery.nl/comp/hx20/doc/epsp.txt

    Es ist Paket-basiert und man kann sich auch eigene Erweiterungen implementieren.


    Die Grafikkordinaten sind 16 bit, d.h. man könnte damit auf einem richtig guten TFT mit 65000 x 65000 Pixels schöne Linien ziehen ...

    Das sieht ja sehr interessant aus! Danke für die Infos!!!


    :)Franky