Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » JU+TE Tiny 6k mit ES45 » Themenansicht

Autor Thread - Seiten: -1-
000
07.05.2026, 13:16 Uhr
KaGa



Hallo,

hat schon mal jemand ES45 in Funktion gehabt ?
Ich habe hier die Datei "ES4.5_D57FH.bin".
Allerdings funktioniert weder die Tastatur noch die Videoausgabe sinnvoll.

Im JTCEmu ist Shift+E z.B. das R
Auch wird im JTCEmu ein Bild mit gelben Buchstabenfragmenten auf blauen Hintergrund angezeigt, aber nur Fragmente und vertikal verschoben.
Man kann Bsic Programme starten und diese laufen auch.

Auf einem realen Tiny 6K wird der untere Teil des Video RAMs nicht beschrieben, hier ist buntes Pixelrauschen.


Die Routine zum Umrechnen von X/Y zu einer Speicheradresse im Video RAM ist im ES45 anders als im ES40.
Eine LookUp Tabelle wird nicht mehr verwendet, die 8 ungenutzten Bytes nach jeder 3. Zeile gibt es nicht. Nach Zeile 3 Spalte 319 folgt nahtlos Zeile 4 Spalte 0
Das Pixelrauschen am Ende dürften somit die nicht genutzten 512 Bytes jeder Videobank nun am Stück sein.

Hat jemand eine Idee, ob Herr Scheutzow nur die Software der Video CPU geändert hat oder auch die Hardware ?

Die Tastaturabfrage des ES45 habe ich jetzt noch nicht erforscht...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
09.05.2026, 10:34 Uhr
Buebchen



@KaGa
Hallo,
Ich hatte die Version 4.5 aus dem Tiny 6K von Harun Scheutzow ausgelesen und hier verbreitet. Ich bin aus gesundheitlichen Gründen jedoch nicht dazu gekommen seinen Tiny 6K mit der in der Ju+Te vorgestellten Version zu vergleichen. Sie hat eine ganze Anzahl Änderungen und Erweiterungen. Harun konnte mir aber keine Auskunft mehr über seine Änderungen geben. Unterlagen konnte er nicht mehr auftreiben. Zu viel Zeit vergangen seid er sich damit beschäftigt hatte.
Wolfgang
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
09.05.2026, 13:28 Uhr
HeikoS



Ich hatte auch schon viele Gespräche zum ES4.5 mit den Aktiven hier im Forum. Meines Wissens gibt es keinen funktionierenden Ju+TeC mit ES4.5. Wenn man das reaktivieren könnte, wäre es ein sehr interessantes Stück Technik. Ich vermute, dass Hard- und Software des Videoteils verändert wurden.

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
09.05.2026, 19:02 Uhr
KaGa



@HeikoS:
Es muß da mal einen funktionierenden Tiny mit ES 4.5 gegeben haben. Das Thema 4.5 und letztendlich die ES4.5_D57FH.BIN wurden mit einem Bild von einem ES4.5 irgendwann in 2011 begonnen.
Die Suche nach ES4.5 als Beitragstext hier im Forum fördert dies hervor:

034
25.11.2011, 09:33 Uhr
Gast: Schnulli
Das Bildschirmfoto ist "echt". Eine Doku dazu habe ich nicht. Leider ist der ganze Rechner ein fragiles Kunstwerk und die Eproms nicht "mal eben" entnehmbar. Sobald ich etwas Zeit habe, werde ich sie auslesen. Das kann allerdings noch eine Weile dauern.

@Buebchen:

Die Routine zum Setzen eines Pixels an Position X/Y mit Farbe Z ist identisch zu ES 4.0 und auch etliche anderen Routinen. Nur Video und Tastatur passen nicht.
Da liefert der Aufruf der Routine zur Umrechnung von X/Y in eine Video Ram Adresse ab Zeile 4 andere Werte zurück, weil die 8Byte Lücken fehlen.
Ich trotzdem hoffe dass die Hardware nicht verändert wurde sondern das lediglich zum ES 4.5 auch eine andere Version der Videosoftware gehört.

Wenn nun dieser VideoEprom noch existiert und ausgelesen wird……

Die Problematik mit der Tastatur erforsche ich demnächst.
Bis jetzt hatte ich im JTCEmu gearbeitet. Auf meinem realen Tiny mit ES4.0c fehlt mir ein Debugger und auch der Epromsimulator ist noch in der Projektphase bei na ja 50%.

Gruß
Karsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
09.05.2026, 19:40 Uhr
HeikoS




Zitat:
KaGa schrieb
@HeikoS:
Es muß da mal einen funktionierenden Tiny mit ES 4.5 gegeben haben. Das Thema 4.5 und letztendlich die ES4.5_D57FH.BIN wurden mit einem Bild von einem ES4.5 irgendwann in 2011 begonnen.
Die Suche nach ES4.5 als Beitragstext hier im Forum fördert dies hervor:

034
25.11.2011, 09:33 Uhr
Gast: Schnulli
Das Bildschirmfoto ist "echt". Eine Doku dazu habe ich nicht. Leider ist der ganze Rechner ein fragiles Kunstwerk und die Eproms nicht "mal eben" entnehmbar. Sobald ich etwas Zeit habe, werde ich sie auslesen. Das kann allerdings noch eine Weile dauern.



Ja, es gab sehr sicher ein Muster, ich meinte, dass es jetzt keinen funktionierenden Tiny mit ES 4.5 mehr gibt. Im Video-ROM steht nicht viel Code. Den könnte man ja mal disassemblieren, wenn es nicht schon mal gemacht wurde. Vielleicht kann man den so umbauen, dass der Videospeicher dann symmetrisch ausgelesen wird.

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
09.05.2026, 19:47 Uhr
Buebchen



Hallo,
Ich werde bei Gelegenheit den Video Eprom auslesen, bin jedoch im Moment sehr im Garten involviert.
Wie Schnulli schreibt von dem ich den Computer erhalten habe ist der Ausbau eine fragile Angelegenheit. Der Os 4.5 Eprom wurde mir als fehlerhaft gemeldet nochdem ich ihn verteilt hatte.
Wolfgang
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
09.05.2026, 19:53 Uhr
KaGa



@Buebchen

ja der Garten. Die Problematik habe ich aktuell auch.

Also fehlerhaft ist aus meiner Sicht der 4.5er Eprom nicht.
Ich habe das Binärfile disassembliert. Da sieht nichts fehlerhaft aus.

Also gibt es den 4.5er Tiny noch. Ist der original von Herrn Scheutzow ?


Gruß
Karsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
09.05.2026, 23:05 Uhr
HeikoS



Habe auch mal ES4.5 im JTCEMU laufen lassen.



Wenn ich die Bildschirmausgabe richtig zusammensetze, müsste das auf dem Bildschirm des ES4.5 stehen:



Da müsste man eigentlich nur den Video-ROM anpassen oder Wolfgang kann ihn auslesen, das wäre wirklich sehr gut. Die Tastatur bekommt man dann schon hin.

Grüße, Heiko

Dieser Beitrag wurde am 09.05.2026 um 23:58 Uhr von HeikoS editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
09.05.2026, 23:35 Uhr
Buebchen



@KaGa
Hallo,
Der Tiny 6K in meinem Besitz ist das Original von Harun Scheutzow, das ich mit der Vermittlung von Volker P. von Schnulli bekommen habe.
Wolfgang
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
10.05.2026, 07:47 Uhr
KaGa



Hallo,

@HeikoS
so sehe ich das auch.
Bei der Tastaturproblematik denke ich aber irgendwie doch an eine Hardwaremodifikation. Allerdings warum sollte diese passiert sein ?
Ich meine auch, im Timer IRQ des ES45 wird nicht nur das eine Register, wie beim ES40, runtergezählt, da passiert auch etwas in Sachen Tastatur.

@Buebchen
dann ist der Tiny ja etwas ganz Besonderes. Sozusagen der modernste seiner Art. Da sollte er einerseits nicht der Einzige und Letzte bleiben, andererseits ist er ein Unikat für das Museum.

Gruß
Karsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
10.05.2026, 08:16 Uhr
Bert




Zitat:
KaGa schrieb
Bei der Tastaturproblematik denke ich aber irgendwie doch an eine Hardwaremodifikation. Allerdings warum sollte diese passiert sein?


Wenn ich mir das Tastaturlayout von ES4.0 anschaue, sehe ich da schon Verbesserungspotential:

Die drei Shift-Tasten (=vier Ebenen) sorgen an der Originaltastatur sicher für die eine oder andere Verrenkung.

Ist das Image (und das Disassembly) von ES4.5 irgendwo erhältlich?

Ich würde mir ja von der Software wünschen, daß wieder die BASIC-Token (statt der Abkürzungen wie bei ES4.0) angezeigt werden.
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
10.05.2026, 08:56 Uhr
HeikoS




Zitat:
Bert schrieb

Zitat:
KaGa schrieb
Bei der Tastaturproblematik denke ich aber irgendwie doch an eine Hardwaremodifikation. Allerdings warum sollte diese passiert sein?


Wenn ich mir das Tastaturlayout von ES4.0 anschaue, sehe ich da schon Verbesserungspotential:

Die drei Shift-Tasten (=vier Ebenen) sorgen an der Originaltastatur sicher für die eine oder andere Verrenkung.

Ist das Image (und das Disassembly) von ES4.5 irgendwo erhältlich?

Ich würde mir ja von der Software wünschen, daß wieder die BASIC-Token (statt der Abkürzungen wie bei ES4.0) angezeigt werden.



Das Image liegt ja schon lange bei Volker auf der Seite:

https://hc-ddr.hucki.net/wiki/doku.php/tiny/software
https://hc-ddr.hucki.net/wiki/lib/exe/fetch.php/tiny/es45.zip

Viele Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
10.05.2026, 11:35 Uhr
Bert




Zitat:
HeikoS schrieb
Das Image liegt ja schon lange bei Volker auf der Seite:


Danke, das war mir irgendwie entgangen...
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
12.05.2026, 09:42 Uhr
KaGa



das Tastaturproblem ist gelöst.
Es ist lediglich eine andere Tabelle im ES45.
Mit der Tabelle vom ES40c funktioniert die Eingabe auch bei ES45 im JTCEmu.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
12.05.2026, 10:10 Uhr
Bert




Zitat:
KaGa schrieb
Mit der Tabelle vom ES40c funktioniert die Eingabe auch bei ES45 im JTCEmu.


Fein! Vermutlich hatte der Entwickler zwischenzeitlich seine Tastatur modernisiert.

Die Anpassung an neue Tastaturen ist hier beschrieben (2.1. Eigene Tastaturbelegung):
https://hc-ddr.hucki.net/wiki/lib/exe/fetch.php/tiny/6k_es_40.pdf

Jetzt fehlt nur noch die Grafik, richtig?
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
12.05.2026, 11:04 Uhr
HeikoS



Eigentlich könnte Jens im JTCEMU das ES4.5, mit dem Wissen des Bildschirmaufbaus, schon zum Laufen bringen.

Anstatt nach 3 Zeilen (= 120 Bytes) die letzten 8 Bytes zu unterschlagen, einfach linear die Zeilen weiter darstellen mit der 40 Bytes/Zeilen-Grenze.

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
12.05.2026, 11:49 Uhr
KaGa



@Bert

ich habe meine Tastatur am realen Tiny 6k auch bestimmt fast 10 mal geändert. Doppelbelegung, Anordnung. Sogar noch mal Tasten neu gedruckt.
Dann war sie endlich fertig,nun mal eben Sokoban spielen.
Andauernd falsche Richtung auf den Kursortasten getippt. Also noch mal Tastenkappen umverteilt, Tabelle geändert und die Anordnung der Kursortasten geändert, so ähnlich wie auf dem PC.
Schon besser…

Die Anpassungsmöglichkeit der Tastatur an den eigenen Geschmack und die eigene Hardware ist perfekt.
Die Belegung aus ES40c hatte ich genommen, da ich gerade den JTCEmu benutzt habe.

Das mit der Grafik ist so eine Sache.
Ich habe zum Test im ES45 die Routine „X/Y zu Adresse im Video RAM“ aus ES40 mit reingenommen inkl. der zugehörigen Tabelle und diese benutzt.
Siehe da, die Grafik funktioniert teilweise, zumindest Plot und Draw.
Die Zeichenausgabe ist noch genauso zerwürfelt wie zuvor.
Weiter geht es mit der Grundlagenforschung.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
12.05.2026, 11:51 Uhr
KaGa



@HeikoS

ob er dazu Lust hat ?
Dann auch den 640x200 Pixel Modus bitte !

Gruß Karsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
12.05.2026, 11:53 Uhr
KaGa



Tschuldigung

640x192 Pixel

wobei doch jetzt noch 512 Bytes RAM im ES45 Video RAM übrig sein müsste?

Karsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
12.05.2026, 22:32 Uhr
HeikoS




Zitat:
KaGa schrieb
@HeikoS

ob er dazu Lust hat ?
Dann auch den 640x200 Pixel Modus bitte !

Gruß Karsten



Habs mal selbst gemacht. Hier eine gepatchte Version des JTCEMU für ES4.5 (wenn ES4.0 ausgewählt ist):

https://nextcloud-ext.peppermint.de/s/okeHLWaLwnY6WgQ

Da liegen 2 Dateien:

- jtcemu_es45.jar
- es45_0800.bin

Die Datei "es45_0800.bin" muss noch als ROM ab 0800H eingebunden werden.

In der Datei "src/jtcemu/base/JTCSys.java" musste die RAM-Index-Berechnung geändert werden. Mit Deiner Erkenntnis des Bildaufbaus war das ganz einfach. Wir haben ein lauffähiges ES4.5 !

Grüsse, Heiko


Quellcode:

  private void updScreenBuf()
  {
    if( this.screenDirty ) {
      this.screenDirty = false;
      if( this.osType == OSType.ES40 ) {
        for( int x = 0; x < 320; x++ ) {
          for( int y = 0; y < 192; y++ ) {

            int colorNum = 0;
    
           /* ES 4.0 Screen Index
            int grp      = y / 3;
            int yGrp     = y % 3;
            int idx      = (grp * 128) + (yGrp * 40) + (x / 8);
           */
  
          /* ES 4.5 Screen Index */  
            int idx = (y * 40) + (x / 8);
            ...






EDIT: "es45_0800.bin" noch mitgeliefert.

Dieser Beitrag wurde am 12.05.2026 um 23:05 Uhr von HeikoS editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
12.05.2026, 23:44 Uhr
HeikoS



Erste Tests gemacht.

Das Testbild in Assembler von Rolf Weidlich läuft deutlich länger. Wäre auch erklärbar, da ja die Lookup-Tabelle für das Umrechnen von X/Y zu einer Speicheradresse nicht mehr verwendet wird. Da sollte wohl Platz geschaffen werden, für mehr Programm-Code ...

Wäre interessant zu wissen, was ES4.5 mehr kann als ES4.0.

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
Heute, 06:44 Uhr
KaGa



@HeikoS

Prima !

Da muß ich den JTCEmu anwerfen.
Nun kann man das originale ES45 zumindest erstmal dort erforschen.
Mir ist bis jetzt u.a. eine längere Interruptroutine aufgefallen. Ebenso wird in Reg %55 ein neues Statusbit genutzt.

Irgendwann wird es auch auf realen Hardware laufen.
Ist dann evtl. nicht mehr original, aber vielleicht sogar besser…

Die XPY Routine aus der FGL sollte diesbezüglich eigentlich die ES45 Routine ersetzen können.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
022
Heute, 07:21 Uhr
Bert




Zitat:
HeikoS schrieb
Das Testbild in Assembler von Rolf Weidlich läuft deutlich länger.


Kann es auch sein, das jetzt die BUSY-Leitung vom Videoprozessor mit abgefragt wird?


Zitat:

Wäre interessant zu wissen, was ES4.5 mehr kann als ES4.0.


Ja, das interessiert mich auch
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
023
Heute, 08:51 Uhr
HeikoS



@Bert:

-> Kann es auch sein, das jetzt die BUSY-Leitung vom Videoprozessor mit abgefragt wird?

Beim LINE-Befehl (PSET) wurde die BUSY-Leitung ja schon immer abgefragt, soweit ich das in Erinnerung habe. Nur bei Zeichenausgabe (Scrollen) nicht. Und seit Version 2.2

http://www.jens-mueller.org/jtcemu/versions_se.html

wird das auch emuliert. Aber da müsste man tatsächlich noch bessere Tests machen. Am besten wäre es, wenn das ES4.5, analog zum ES4.0, sauber disassembliert werden würde. Volker hat das ja schon gemacht für ES4.0. Ob er nochmal Lust dazu hat ?

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
024
Heute, 11:35 Uhr
Dresdenboy




Zitat:
HeikoS schrieb
wird das auch emuliert. Aber da müsste man tatsächlich noch bessere Tests machen. Am besten wäre es, wenn das ES4.5, analog zum ES4.0, sauber disassembliert werden würde. Volker hat das ja schon gemacht für ES4.0. Ob er nochmal Lust dazu hat ?


Da unser aller Ressourcen immer knapp sind, denke ich, dass mittlerweile oder recht bald das doch sicher eine KI übernehmen könnte, insb. mit Vorwissen aus bisherigen Disassemblierungen.
--
___________________________________
Produktionen im Rahmen der "The Computer Art Community" (Demoszene): https://demozoo.org/sceners/64936/, YT-Kanal: https://www.youtube.com/@4lpha0ne/videos
Aktuelle Projekte: GDC-Analysen für Grafikeffekte u. Demo/Game-Framework, universelles BIC-Modul auf Pico-Basis, Packer mit sehr kleinem 6502-Dekompressor
HW: BIC, MSX2+, KC87, KC85/2-4, KCC, LC-80, PC1715, C64, C16, Plus/4, A500, A1200, Mega 65, µCs ...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
025
Heute, 11:44 Uhr
KaGa



Das ES45 habe ich disassembliert.
Es kann im JTCEmu (Texteditor) bearbeitet und wider assembliert werden.
Für den Arnold Assembler passt die Syntax aber nicht ohne Anpassungen.
Etliches ist auch schon kommentiert. Ist zur Zeit noch nicht ganz rund. Eine Zeitfrage eben.

Gruß Karsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
026
Heute, 11:57 Uhr
KaGa



Busy von der Video CPU wird im ES45 z.B. bei %0851, %0F1A, %1711 und %1F2A abgefragt.
Aber auch im ES40 gibt es 4 Stellen wo dies passiert.
Plot, PTest, Showplayer, Hideplayer.

Gruß
Karsten
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
027
Heute, 12:05 Uhr
PC-Opa



Ich wollte mal testen:



Leider Fehlermeldung...
--
Gruß Wolfgang
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
028
Heute, 12:19 Uhr
HeikoS




Zitat:
PC-Opa schrieb
Ich wollte mal testen:



Leider Fehlermeldung...



Bei mir gehts unter Linux und Windows. Das ist natürlich alles ohne Gewähr und Garantie. Wir können ja mal einen Video-Call machen am WE.

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
029
Heute, 12:22 Uhr
HeikoS



Habe mal den Video-ROM und das Schaltbild angeschaut. Die ersten 3 TV-Zeilen (und dann wiederkehrend) habe ich verstanden. "Super-Brain" Harun Scheutzow hat ganz schön tief in die Trickkiste gegriffen. Das umzubauen ist nicht ohne:


Quellcode:


0800   FF            NOP
0801   FF            NOP
0802   FF            NOP
0803   FF            NOP
0804   FF            NOP
0805   FF            NOP
0806   FF            NOP
0807   FF            NOP
0808   FF            NOP
0809   FF            NOP
080A   FF            NOP
080B   FF            NOP
080C   FF            NOP
080D   FF            NOP
080E   FF            NOP
080F   FF            NOP
0810   FF            NOP
0811   FF            NOP

; Init

0812   8F            DI                 ; keine Int
0813   31 F0         SRP     #%F0       ; Steuerregister
0815   8C B2         LD      R8, #%B2   ; P01M = Port 0/1 Betriebsart        = 1011 0010 = P04-07 = A12-A15
                                        ;                                                = P00-03 = A08-A11

0817   7C 09         LD      R7, #9     ; P3M  = Port 3 Betriebsart          = 0000 1001 = Port 2 push/pull
                                        ;                                                = P31, P32 Digital Mode
                                        ;                                                = P32 inp P35 out
                                        ;                                                = P33 inp P34 /DM
                                        ;                                                = P31 inp P36 out
                                        ;                                                = P30 inp P37 out
                                        ;                                                = Parity ON

0819   6C C0         LD      R6, #%C0   ; P2M  = Port 2 Betriebsart          = 1100 0000 = D7,D6 inp, D5-D0 out
081B   1C 00         LD      R1, #0     ; TMR  = Zähler/Zeitgeberbetriebsart = 0000 0000 = disabl. T0/T1 count
081D   FF            NOP
081E   FF            NOP
081F   FF            NOP
0820   31 00         SRP     #0         ; Registersatz 0 / Ports über R0-R3
0822   FF            NOP
                                        ; Port 0: Adr     A08  - A10
                                        ; Port 1: Adr/Dat AD00 - AD07, xA00 - xA06 --> VRAM
                                        ; Port 2: Adr                  xA07 - xA12 --> VRAM
                                        ; Port 3: P35 = SYNC (H/V)
                                        ;         P36 = BUSY
                                        ;         P37 = VP3.7 (Video start/stop)
...

; Zeile 0

                                        ; VP3.7  BUSY    SYNC    /DM

08FA   A2 A2         CP      R10, R2    ;
08FC   3C F0         LD      R3, #%F0   ; 1      1       1       1       VP3.7-> Video-ADR start
08FE   A2 A2         CP      R10, R2
0900   A2 A2         CP      R10, R2    ; VADR 0
0902   A2 A2         CP      R10, R2
0904   A2 A2         CP      R10, R2
0906   A2 A2         CP      R10, R2
0908   A2 A2         CP      R10, R2
090A   A2 A2         CP      R10, R2
090C   A2 A2         CP      R10, R2
090E   A2 A2         CP      R10, R2
0910   A2 A2         CP      R10, R2
0912   A2 A2         CP      R10, R2
0914   A2 A2         CP      R10, R2
0916   A2 A2         CP      R10, R2
0918   A2 A2         CP      R10, R2
091A   A2 A2         CP      R10, R2
091C   A2 A2         CP      R10, R2
091E   A2 A2         CP      R10, R2
0920   A2 A2         CP      R10, R2
0922   A2 A2         CP      R10, R2
0924   3C 70         LD      R3, #%70   ; 0      1       1       1       VP3.7-> Video-ADR stop
0926   A2 A2         CP      R10, R2
0928   A2 A2         CP      R10, R2
092A   A2 A2         CP      R10, R2
092C   3C 50         LD      R3, #%50   ; 0      1       0       1       HSYNC
092E   A2 A2         CP      R10, R2
0930   3C 70         LD      R3, #%70   ; 1      1       1       1
0932   A2 A2         CP      R10, R2
0934   A2 A2         CP      R10, R2
0936   8D DA 22      JP      %DA22

; Zeile 1

                                        ; VP3.7  BUSY    SYNC    /DM
0A22   A2 A2         CP      R10, R2
0A24   3C F0         LD      R3, #%F0   ; 1      1       1       1       VP3.7-> Video-ADR start
0A26   A2 A2         CP      R10, R2
0A28   A2 A2         CP      R10, R2
0A2A   A2 A2         CP      R10, R2
0A2C   A2 A2         CP      R10, R2
0A2E   A2 A2         CP      R10, R2
0A30   A2 A2         CP      R10, R2
0A32   A2 A2         CP      R10, R2
0A34   A2 A2         CP      R10, R2
0A36   A2 A2         CP      R10, R2
0A38   A2 A2         CP      R10, R2
0A3A   A2 A2         CP      R10, R2
0A3C   A2 A2         CP      R10, R2
0A3E   A2 A2         CP      R10, R2
0A40   A2 A2         CP      R10, R2
0A42   A2 A2         CP      R10, R2
0A44   A2 A2         CP      R10, R2
0A46   A2 A2         CP      R10, R2
0A48   A2 A2         CP      R10, R2
0A4A   A2 A2         CP      R10, R2
0A4C   3C 70         LD      R3, #%70   ; 0      1       1       1       VP3.7-> Video-ADR stop
0A4E   A2 A2         CP      R10, R2
0A50   A2 A2         CP      R10, R2
0A52   A2 A2         CP      R10, R2
0A54   3C 50         LD      R3, #%50   ; 0      1       0       1       HSYNC
0A56   A2 A2         CP      R10, R2
0A58   3C 70         LD      R3, #%70   ; 0      1       1       1
0A5A   A2 A2         CP      R10, R2
0A5C   A2 A2         CP      R10, R2
0A5E   8D DB 4A      JP      %DB4A

; Zeile 2

                                        ; VP3.7  BUSY    SYNC    /DM
0B4A   A2 A2         CP      R10, R2
0B4C   3C F0         LD      R3, #%F0   ; 1      1       1       1       VP3.7-> Video-ADR start
0A26   A2 A2         CP      R10, R2
0B4E   A2 A2         CP      R10, R2
0B50   A2 A2         CP      R10, R2
0B52   A2 A2         CP      R10, R2
0B54   A2 A2         CP      R10, R2
0B56   A2 A2         CP      R10, R2
0B58   A2 A2         CP      R10, R2
0B5A   A2 A2         CP      R10, R2
0B5C   A2 A2         CP      R10, R2
0B5E   A2 A2         CP      R10, R2
0B60   A2 A2         CP      R10, R2
0B62   A2 A2         CP      R10, R2
0B64   A2 A2         CP      R10, R2
0B66   A2 A2         CP      R10, R2
0B68   A2 A2         CP      R10, R2
0B6A   A2 A2         CP      R10, R2
0B6C   A2 A2         CP      R10, R2
0B6E   A2 A2         CP      R10, R2
0B70   A2 A2         CP      R10, R2
0B72   A2 A2         CP      R10, R2
0B74   3C 70         LD      R3, #%70   ; 0      1       1       1       VP3.7-> Video-ADR stop
0B76   A2 A2         CP      R10, R2
0B78   A2 A2         CP      R10, R2
0B7A   A2 A2         CP      R10, R2
0B7C   3C 50         LD      R3, #%50   ; 0      1       0       1       HSYNC
0B7E   EC 37         LD      R14, #%37
0B80   3C 70         LD      R3, #%70   ; 0      1       1       1
0B82   20 02         INC     %2         ; INC -> xA07-xA12
0B84   00 0D         DEC     %0D        ; DEC -> Zeilenzähler  
0B86   42 DD         OR      R13, R13   ; 64 Durchläufe zu je 3 Zeilen = 0 ???
0B88   ED D8 FC      JP      NZ, %D8FC


0B8B   8B 00         JR      %0B8D
0B8D   8B 00         JR      %0B8F
0B8F   8B 0A         JR      %0B9B
0B91   A2 A2         CP      R10, R2
0B93   A2 A2         CP      R10, R2
0B95   A2 A2         CP      R10, R2
0B97   A2 A2         CP      R10, R2
0B99   A2 A2         CP      R10, R2
0B9B   3C 30         LD      R3, #%30
0B9D   A2 A2         CP      R10, R2
0B9F   A2 A2         CP      R10, R2
0BA1   A2 A2         CP      R10, R2
0BA3   A2 A2         CP      R10, R2
0BA5   A2 A2         CP      R10, R2
0BA7   A2 A2         CP      R10, R2
0BA9   A2 A2         CP      R10, R2
0BAB   A2 A2         CP      R10, R2
0BAD   A2 A2         CP      R10, R2
0BAF   A2 A2         CP      R10, R2
0BB1   A2 A2         CP      R10, R2
0BB3   A2 A2         CP      R10, R2
0BB5   A2 A2         CP      R10, R2
0BB7   A2 A2         CP      R10, R2
0BB9   A2 A2         CP      R10, R2
0BBB   A2 A2         CP      R10, R2
0BBD   A2 A2         CP      R10, R2
0BBF   A2 A2         CP      R10, R2
0BC1   3C 10         LD      R3, #%10
0BC3   A2 A2         CP      R10, R2
0BC5   3C 30         LD      R3, #%30
0BC7   FC 0A         LD      R15, #%0A
0BC9   00 0E         DEC     %0E
0BCB   42 EE         OR      R14, R14
0BCD   ED DB 91      JP      NZ, %DB91


0BD0   8B 00         JR      %0BD2
0BD2   8B 00         JR      %0BD4
0BD4   8B 0A         JR      %0BE0
0BD6   A2 A2         CP      R10, R2
0BD8   A2 A2         CP      R10, R2
0BDA   A2 A2         CP      R10, R2
0BDC   A2 A2         CP      R10, R2
0BDE   A2 A2         CP      R10, R2
0BE0   A2 A2         CP      R10, R2
0BE2   A2 A2         CP      R10, R2
0BE4   A2 A2         CP      R10, R2
0BE6   A2 A2         CP      R10, R2
0BE8   A2 A2         CP      R10, R2
0BEA   A2 A2         CP      R10, R2
0BEC   A2 A2         CP      R10, R2
0BEE   A2 A2         CP      R10, R2
0BF0   A2 A2         CP      R10, R2
0BF2   A2 A2         CP      R10, R2
0BF4   A2 A2         CP      R10, R2
0BF6   A2 A2         CP      R10, R2
0BF8   A2 A2         CP      R10, R2
0BFA   A2 A2         CP      R10, R2
0BFC   A2 A2         CP      R10, R2
0BFE   A2 A2         CP      R10, R2
0C00   A2 A2         CP      R10, R2
0C02   3C 30         LD      R3, #%30
0C04   A2 A2         CP      R10, R2
0C06   3C 10         LD      R3, #%10
0C08   A2 A2         CP      R10, R2
0C0A   3C 10         LD      R3, #%10
0C0C   EC 39         LD      R14, #%39
0C0E   00 0F         DEC     %0F
0C10   42 FF         OR      R15, R15
0C12   ED DB D6      JP      NZ, %DBD6


0C15   8B 00         JR      %0C17
0C17   8B 00         JR      %0C19
0C19   8B 0A         JR      %0C25
0C1B   A2 A2         CP      R10, R2
0C1D   A2 A2         CP      R10, R2
0C1F   A2 A2         CP      R10, R2
0C21   A2 A2         CP      R10, R2
0C23   A2 A2         CP      R10, R2
0C25   A2 A2         CP      R10, R2
0C27   A2 A2         CP      R10, R2
0C29   A2 A2         CP      R10, R2
0C2B   A2 A2         CP      R10, R2
0C2D   A2 A2         CP      R10, R2
0C2F   A2 A2         CP      R10, R2
0C31   A2 A2         CP      R10, R2
0C33   A2 A2         CP      R10, R2
0C35   A2 A2         CP      R10, R2
0C37   A2 A2         CP      R10, R2
0C39   A2 A2         CP      R10, R2
0C3B   4C 04         LD      R4, #4
0C3D   A2 E4         CP      R14, R4
0C3F   4C 00         LD      R4, #0
0C41   C0 04         RRC     %4
0C43   C0 04         RRC     %4
0C45   42 34         OR      R3, R4
0C47   5C D0         LD      R5, #%D0
0C49   6C 20         LD      R6, #%20
0C4B   52 35         AND     R3, R5
0C4D   2C 00         LD      R2, #0     ; xA07-xA12 = 0
0C4F   42 36         OR      R3, R6
0C51   DC 40         LD      R13, #%40  ; 64 x 3 Zeilen = 192
0C53   00 0E         DEC     %0E
0C55   42 EE         OR      R14, R14
0C57   6D D8 FC      JP      Z, %D8FC
0C5A   8B BB         JR      %0C17
0C5C   FF            NOP

...




Dieser Beitrag wurde am 13.05.2026 um 17:00 Uhr von HeikoS editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
030
Heute, 12:26 Uhr
HeikoS




Zitat:
KaGa schrieb
Das ES45 habe ich disassembliert.
Es kann im JTCEmu (Texteditor) bearbeitet und wider assembliert werden.
Für den Arnold Assembler passt die Syntax aber nicht ohne Anpassungen.
Etliches ist auch schon kommentiert. Ist zur Zeit noch nicht ganz rund. Eine Zeitfrage eben.

Gruß Karsten



Könnte man nicht eine Differenz-Betrachtung zu ES4.0 machen und dann an Hand des disassemblierten Codes von Volker den Rest disassemblieren, oder ist alles 100% anders?

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
031
Heute, 17:02 Uhr
HeikoS



Habe noch ein wenig im Listing in <029> ergänzt.

Einen schönen Herrentag morgen und schönes (langes) WE !

Grüße, Heiko
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek