TA PC-8, dies und das
-
-
Hallo liebe Leute,
ich suche ein PC8 BIOS Listing, bzw. drei ROM Listings ...
Es gab hier im Formum mal Assembler Listimgs für drei "BIOS ROMs".
Leider finde ich sie nicht mehr
Es wäre schön diese Listings wieder finden zu können.mfG. Klaus Loy
-
Um etwas Futter für das ROM-Modul zu bekommen habe ich das Parkplatzspiel auf TA portiert.
-
-
Schau mal hier: https://www.marcuslausch.de/20…ph-adler-alphatronic-pc8/
oder auch: http://oldcomputer.info/keep/c/museum/8bit/Alphatronic_PC
Sind aber alles nur ROM-Images, keine Disassembler-Listings.
-
-
Hier ist eines. Leider weiss ich nicht so recht von welcher Version und wo da die Unterschiede sind.
Interessanterweise ist man für die damalige Zeit mit dem Platz sehr verschwenderisch umgegangen. Von den 8K ROM sind 4K Monitor-Routinen wie Tastatur, jede Menge ESC-Codes für ein Terminal und ein kleiner Monitor. Sonst ist da nichts. Nicht einmal Floppy-Routinen, ausgenommen ein paar Bytes um den Bootsektor zu laden.
Die Anderen 4K werden nur zu Konfiguration gebraucht, Tastaturcodetabellen und ein wenig Initalisierungscode. Diese 4K werden später ausgeblendet.
-
-
Es gibt soviel ich noch weiß kein Unterschied, später wurde nur ein D2764D verwendet.
Am Mainboard sind Brücken, damit kann man zwischen 2732 / 2764 Jumpern. Einzige, was anderes war, ist im Basic mal mit und ohne B.
Auch da habe ich aber kein Unterschied gefunden gehabt.
Man kann aber jeder zeit 32/64 EPROMs wechseln. Denke das dies einfach aus Kostengründen gemacht wurde.
-
hier nochmal mit dos linefeeds
-
... jetzt kann es ja auch der DOS Editor.
Aber das war kein Problem, war halt doppleklick dann dann ging der auf.
Mein Lieblingseditor (Windows) ist der Notepad++ und der kontte das perfekt anzeigen.
Ich möchte halt die Floppy Routinen suchen und ein bisschen studieren.
Mit Linux mach zu selten rum. -
bei boot bzw ENTRY gehts los.
die Floppy Routinen haette ich gleich reinkopieren können:
-
-
selbstgestrickt.
-
Sehr schön gemacht, hab mir grad im Service Manual mal ein bisschen die Memory MAP angeschaut.
Was hast du selbst gestrickt ?
Den Disassembler oder was ?
mfG. Klaus Loy
-
Der Disassembler ist von mir. Über die Zeit war ich zu faul, jedesmal zu den Konstanten die Namen zuzuordnen. Das kann der Computer wesentlich schneller herausfinden und vor allem auch merken. Wenn ich die Kommentare auf ein Stück schreibe, bleiben sie dort und können nicht wieder zurück in den Source code.
-
Ich gab das ganze zum Nachbauen ins Netz gestellt. In der neueren Version habe ich noch etwas besser die FDC Routinen und IO-Bits dokumentiert.
rom.rst - assembliert im Listing-Format
Falls jemand noch Kommentare hat bzw. bessere Namen an die Adressen oder Symbole schreiben will, so kann ich das mit hinzufügen.
Zwei interessante Adressen sind:
Codecall E762 ; wartet auf einen Tastendruck und liefert den aktuellen Wert E498 ; dort steht ebenfalls der Wert des letzten Tastendrucks
Ich habe sie aufgeführt, da sie sowas wie ein API-Aufruf darstellen. Man kann die Funktion aus anderen Programmen verwenden.
-
@Hobi,
sehr schön, dass du das abgelegt hast.
Getsern Abend hab ich den Floppy Code noch ein wenig studiert.
Langsam verstehe ich den FDC 765, ...Wie hast du das zweite Lising "rom.rst - assembliert im Listing-Format" gemacht ?
Ist das auch Output aus deinem Disassembler, oder hast du deinen ersten Output durch einen Assembler gejagt ?
Zum Studieren von disassembler Listing ziehe ich das zweite Format mit den Hex Adressen und HexBytes vor.mfG. klaus Loy
-
Das Ganze geht im Kreis. Die Ausgabe vom Disassembler wird wieder durch den Assembler geschickt zum binären Vergleich.
Das RST File ist das Ergebnis vom Assembler. Deswegen hatte ich es aus dem Source-Code entfernt, da im Ergebnis nach dem Assemblieren wieder das Gleiche herauskommen soll.
Im RST-File wurden noch zusätzlich die absoluten Adressen hinzugefügt werden. Es entspricht somit der Ausgabe nach dem Linker, also exakt dem Rom-Image.
Wie du im BIOS sehen kannst, wird erst Kommando 0x03 (Specify), dann 0x46 (Load Data) ausgeführt.
Das wie steht im Makefile:
-
Kann man die Images bekommen ?
Auch damit kann gedient werden. Dank dem BIOS Listing konnte ich noch ein paar Änderungen am Programm durchführen.
-
kurz noch ne Frage zu den Images, sind die für das ROM Modul ?
Falls ja, ich hab ja ein original ROM Modul, ich glaub mit 2x 2764 EPROMs.
In welches ROM Muss ich das rein spielen ?
Vermutlich in das mit der niedrigen Adresse, oder ?mfG. Klaus Loy
-
das Programm ist 16 KB gross. Es muss aufgeteilt werden.
-
ok, hatte ich falsch gesehen.
Also die eine hälfte da und die andere dort rein.Mal schaun, bin grad noch etwas zu faul, ...
-
Noch ein Jumper dran und du kannst mehrere ROMs umschalten.
-
Leider mag dein Spiel bei mir nicht laufen, da kommt immer Break at $DC38
Ich glaube mein TA8 ist eine "spezial Version".
Der enhält eine Zusatzplatine, vermutlich eine Grafik Erweiterung.
Ich werde ihn später mal aufschrauben und ein Foto machen.mfG. Klaus Loy
-
Da müsste mal wohl ans debuggen. Eigentlich sollte da kein Break kommen. Break tritt nur auf, wenn die CPU auf FF läuft. Bei DC38 ist aber ein F8.
Kannst du mit dem Monitor den Speicher von DC30 bis DC60 ausdrucken?
Ich hab noch etwas hinzugefügt.
-
Jetzt kommen erst mal die Bilder:
Kennst du oder jemand dieses Board ?
Und dann das hier:
> Kannst du mit dem Monitor den Speicher von DC30 bis DC60 ausdrucken?Sollte an der Stelle ein ROM sein ?
Oder was erwartest du da ?
Und wann soll ich das ausgeben, bzw. ok durch den Break falle ich ja in den Monitor rein und könnte dann schaun was da steht.
Außerdem sollte ich mal die EPROMs auslesen.
Aber das wird wohl erst morgen etwas werden.mfG. Klaus Loy
-
Genau dort sollte der Rom sein. Mit ein bisschen Glück stimmt meine Vermutung und der Rom Inhalt ist nicht korrekt.
-
ok DC30 ... DC60, zweimal geschaut, mit Netz aus dazwischen.
beide male identische Inhalte.
mfG. Klaus Loy
-
Den verdammten EPROM habe ich zweimal gebrannt, einmal mit dem China Prommer.
Dem habe ich aber nicht getraut.
Und dann andere EPROMs mit meinem guten alten ALL-03, der hat mich noch nie im Stich gelassen.
Gut die EPROMs waren nicht frisch gelöscht, aber Blank Check war ok.
Falls deine Vermutung stimmt, kann ich es Morgen nochmal versuchen.
Ich lösche grad einige EPROMs.
Hast du irgendwelche Info zu der Huckepack Platine ?mfG. Klaus Loy