Hi, ich möchte mich mal mit dem TMS 9995 beschäftigen und benötige ein Tool mit dem man evtl. bestehende Programme disassemblen kann und wieder kompilieren kann. Kann mir evtl. jemand weiterhelfen, wo kann man solche Tools heute noch finden?
Das ist eine Variante des TMS 9900, der im TI99/4A verbaut wurde, also dürfte eine Suche nach Emulatoren etc. für den TI 99/4A Dir weiterhelfen können.
Johannes schrieb: > ich möchte mich mal mit dem TMS 9995 beschäftigen Ist die Frage "warum" gestattet? > und benötige ein Tool > mit dem man evtl. bestehende Programme disassemblen kann und wieder > kompilieren kann. Disassemblieren ist einfach. Wenns nichts gibt, dann ist ein einfaches Teil in kurzer Zeit geschrieben. Aber aus Binärcode ein echtes(!) C Programm zu bauen, das übersetzt dann wieder zum leidlich gleichen Code wird - das grenzt an ein Wunder.
:
Bearbeitet durch User
A. K. schrieb: > > Disassemblieren ist einfach. Wenns nichts gibt, dann ist ein einfaches > Teil in kurzer Zeit geschrieben. > Verstehe die Antwort nicht. Was ist ein einfaches Teil? Was ist mit "Wenns nichts gibt" gemeint? > Aber aus Binärcode ein echtes(!) C Programm zu bauen, das übersetzt dann > wieder zum leidlich gleichen Code wird - das grenzt an ein Wunder. Verstehe Relevanz zum Thread nicht.
Takao K. schrieb: > Was ist ein einfaches Teil? Code => Befehle, ohne Versuch einer vollständigen Erzeugung von Labels, Adresstabellen etc. > Was ist mit "Wenns nichts gibt" gemeint? Wenn sich niemand meldet und du auch nichts findest. > Verstehe Relevanz zum Thread nicht. Kompiliert wird ein Programm einer höheren Programmiersprache wie C. Nicht aber Assembler-Quellcode, der wird assembliert.
A. K. schrieb: > Takao K. schrieb: >> Was ist ein einfaches Teil? > > Code => Befehle, ohne Versuch einer vollständigen Erzeugung von Labels, > Adresstabellen etc. > >> Was ist mit "Wenns nichts gibt" gemeint? > > Wenn sich niemand meldet und du auch nichts findest. > >> Verstehe Relevanz zum Thread nicht. > > Kompiliert wird ein Programm einer höheren Programmiersprache wie C. > Nicht aber Assembler-Quellcode, der wird assembliert. OK, Danke.
> Aber aus Binärcode ein echtes(!) C Programm zu bauen, das übersetzt > dann wieder zum leidlich gleichen Code wird - das grenzt an ein Wunder. Haelst du es fuer wahrscheinlich das es fuer den Prozessor einen C-compiler gab? Oder ueberhaubt einen Compiler? Wenn ja wuerde der mich echt noch interesieren. :-) Olaf
Olaf schrieb: > Haelst du es fuer wahrscheinlich das es fuer den Prozessor einen > C-compiler gab? Oder ueberhaubt einen Compiler? C stand hier eigentlich für jede Compilersprache. Pascal gab es jedenfalls. Die 9900 Familie stammt zudem von den TI 990 Minicomputern ab, Konkurrenz zu PDP-11, und dafür gab es z.B. FORTRAN und COBOL: http://bitsavers.trailing-edge.com/pdf/ti/990/ Die 9900er hatten unter den Mikroprozessoren der 70ern sicher eine der besten Zielarchitekturen für Compiler.
:
Bearbeitet durch User
Hallo Johannes, darf man fragen woher Dein Interesse kommt? Ich habe mich mal sehr intensive mit dem 16-Bit Mikroprozessor beschäftigt und habe auch noch S/W-Unterlagen. Der TMS9995 ist die 8-Bit Datenbusversion vom TMS990, also ist die Software kompatibel. Es wurden damit auch E-Bus Platinen gebaut. Dies ist der TM990/E155 und dafür wurde ein Monitorprogramm - Eurobug 4 - geschrieben. Die Datenmanual mit Source Listing besitze ich noch. Dieser Eurobug 4 beinhlatet auch einen Disassembler. Da die Befehlsstruktur sehr klar und einfach ist ist der Disassembler im Assembler-Listing grade mal 9 Din A4 Seiten lang. Voraussetzung ist aber eine Assembler Programm vom TMS9900 zu haben, oder aber es einen Disassembler auf einem anderen Programm in C zu programmieren. Frage ist auch in welcher Form das zu disassemblierende TMS9995 Programm vorliegt.
Noch jemand, der sich an die TI 990 erinnert, schön! Assembler/Disassembler und einen gcc-Port (und Software+Emulator) für TI 990/TMS99xx gibt es unter http://www.cozx.com/~dpitts/ti990.html und ein Beispiel, wie ein kleines TMS9995-System aussehen kann, ist hier zu finden: http://www.avjd51.dsl.pipex.com/tms9995_breadboard/tms9995_breadboard.htm -- Michael
Hi, hauptsächlich möchte ich mir dies aus Intresse anschauen :-) Grund ist folgender: Ich besitze einen alten Spielautomaten dieser nimmt noch DM und hat einen TMS9995NL Prozessor drin. Ich würde gerne einfach mal schaue wie das Programm so aufgebaut ist und evtl die Wertigkeit der Münzen anpassen. Mir ist klar das da der Aufwand etwas zu ändern in keinem Verhältnis zum Nutzen steht. Aber der Spieltrieb ist da :-)
Hat niemand mehr einen noch einen Link zu einem Programm, dass mir das Programm wieder in Assembler mit Sprungmarken usw. anzeigt? Das Programm liegt mir als bin file vor. Eine Memory Map würde ich mir dann erstellen.
Johannes schrieb: > Hat niemand mehr einen noch einen Link zu einem Programm, dass mir das > Programm wieder in Assembler mit Sprungmarken usw. anzeigt? Die Sprungmarken im original Assembler-Code kann ein Disassembler nicht mehr herstellen - die stehen im Programm (im ROM) nicht drin (ausser es hätte jemand Debug-Informationen mit dazu gepackt, was für ein embedded System aber extrem ungewöhnlich wäre). Ein guter Disassembler baut aber zumindest neue Sprungmarken ein, die heissen dann aber "L00001" und so... > Das Programm liegt mir als bin file vor. Eine Memory Map würde ich mir > dann erstellen. Ich weiss nicht, für welches Betriebssystem du den Disassembler suchst. Für Unix-Systeme funktioniert der von mir weiter oben verlinkte von Dave Pitts wunderbar. Für Windows gibt es wohl auch einen (nicht ausprobiert), der ROM-Dumps/bin-files lesen kann, unter ftp://ftp.collosumus.net/ti99/project/hc/common/software/dasm99_v1_0_11. zip - unter http://ti99.collosumus.net/ti99/project/hc/ steht, wie man den Autor erreichen kann, vielleicht hilft der im Zweifel auch weiter. -- Michael
Hallo Johannes, die Spielautomaten-Hersteller treiben normalerweise sehr viel Aufwand um das ein kopieren oder Manipulationen möglichst zu verhindern. Es könnte also sein, das das Programm-ROM verschlüsselt ist oder sonstige Maßnahmen das Auslesen erschweren und es äußerst aufwendig ist durchzusteigen. Eine besondere Herausforderung also. Viel Spaß dabei!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.