CP/M-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Memberlist || Home || Statistik || Kalender || Staff Willkommen Gast!
[ Unofficial CP/M Website ] [ Z80 Family Support Page ] [ Forum-Regeln ] [ Impressum/Kontakt ] [ Datenschutzerklärung ]

CP/M-Forum » CP/M 2.2 » MAC -Quellcode » Threadansicht

Autor Thread - Seiten: -1-
000
09.03.2012, 10:23 Uhr
volkerp

Avatar von volkerp

Hallo,

eine ganze Reihe von Programmen aus dem Quellcodepakete für CP/M 2.2 sind vom Typ C80. Das sind offensichtlich keine ASCII-Quelltexte, sondern irgendwas vorverarbeitetes.

Womit kann ich diese Dateien wieder lesbar machen? Bzw. womit sind sie geschrieben/kompilierbar?

ASM.C80
DDT.C80
DUMP.C80
ED.C80
LIB.C80
LINK.C80
LOAD.C80
MAC.C80
MOVCPM.C80
PIP.C80
STAT.C80
SUBMIT.C80
SYSGEN.C80
XSUB.C80
--
Volker

http://homecomputer-ddr.de.vu
(z9001, Z1013, LC-80, ...)
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
001
09.03.2012, 10:26 Uhr
volkerp

Avatar von volkerp

Antwort: es sind doch die Binaries.

Warum die C80 statt COM heißen weiß ich nicht.
--
Volker

http://homecomputer-ddr.de.vu
(z9001, Z1013, LC-80, ...)
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
002
09.03.2012, 11:26 Uhr
volkerp

Avatar von volkerp

Aber zum eigentlichen Thema bzw. der Ursache meiner ersten Frage: Gibt es irgendwo den Quellcode des MAC?
--
Volker

http://homecomputer-ddr.de.vu
(z9001, Z1013, LC-80, ...)
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
003
09.03.2012, 19:39 Uhr
proof80




Zitat:
volkerp postete
Antwort: es sind doch die Binaries.

Warum die C80 statt COM heißen weiß ich nicht.

Kann es sein, dass die Umbenennung unter DOS, WIN etc. verhindern soll, die Dateien mit der Endung .COM aus Versehen zu starten?
Ich meine mich zu erinnern, dass 22dsk beim Schreiben auf DOS-Disketten das auch macht ...

Quellcode habe ich leider auch keinen (außer ein DUMP, was nach einer Demo aussieht).

Gruß, Wolfram

Dieser Post wurde am 09.03.2012 um 19:59 Uhr von proof80 editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
004
10.03.2012, 11:42 Uhr
mtx500




Zitat:
proof80 postete
Ich meine mich zu erinnern, dass 22dsk beim Schreiben auf DOS-Disketten das auch macht ...

Richtig, aber das benennt nach *.cpm um, nicht nach *.c80.

Zum Quellcode:
Diese Tools wurde in PL/M geschrieben, und Sourcecode dazu habe ich. Nach einer Weile Suchen habe ich auch wieder gefunden, wo ich das her habe:

http://www.cpm.z80.de/source.html

Viel Spaß!
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
005
10.03.2012, 14:16 Uhr
volkerp

Avatar von volkerp

Bei den PL/M Sources ist der für den MAC Makroassembler aber nicht dabei (oder ich bin zu blind?)
--
Volker

http://homecomputer-ddr.de.vu
(z9001, Z1013, LC-80, ...)

Dieser Post wurde am 10.03.2012 um 14:16 Uhr von volkerp editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
006
10.03.2012, 19:24 Uhr
mtx500



Nein, speziell zum MAC habe ich leider keine Source.

Ich habe auch nochmal in meinem Archiv gekramt, aber nichts gefunden. Damals habe ich etliche Programme disassembliert, aber da ich MAC nicht verwendet habe, sondern Microsoft M80 und später SLR Systems SLRZ80 bzw. SLR180, habe ich MAC auch nicht disassembliert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
007
13.03.2012, 21:09 Uhr
proof80




Zitat:
mtx500 postete
Damals habe ich etliche Programme disassembliert, aber da ich MAC nicht verwendet habe, sondern Microsoft M80 und später SLR Systems SLRZ80 bzw. SLR180, habe ich MAC auch nicht disassembliert.

Und - hast Du diese disassembliert, also M80 und SLRZ80 bzw. SLR180?
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
008
14.03.2012, 07:48 Uhr
volkerp

Avatar von volkerp

einen umfangreichen Besuch wert sind die Seiten von Werner Cirsovius. Mit ein bisschen Suchen findet man reassemblierte und sehr gut kommentierte Quelltexte vom M80, SLR, ZSID, TURBO PASCAL uvam.

Und hier liegt aucxh ein Disassemblat des MAC

http://www.cirsovius.de/CPM/Projekte/Disassembler/Gesammeltes/MAC/MAC-MAC.txt
--
Volker

http://homecomputer-ddr.de.vu
(z9001, Z1013, LC-80, ...)

Dieser Post wurde am 14.03.2012 um 08:03 Uhr von volkerp editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
009
14.03.2012, 13:14 Uhr
proof80



F U N D G R U B E

Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
010
18.03.2012, 11:45 Uhr
mtx500




Zitat:
proof80 posteteUnd - hast Du diese disassembliert, also M80 und SLRZ80 bzw. SLR180?

Teilweise. Etliches davon ist aber handschriftlich auf Papier - zwar noch vorhanden, aber auf diese Weise kaum über die Entfernung anderen vermittelbar.

Was ich noch in meinem Archiv elektronisch zum Microsoft M80 gefunden habe, habe ich mal auf meine Webseite gestellt: http://www.memotech.franken.de/CPM80/

Zum SLR80 / SLR180:
Die Herstellerfirma hat jedes einzelne verkaufte Progamm mit einer eindeutigen Seriennummer gestempelt. Diese ist mehrfach, verschleiert, im Programm abgelegt.
Wenn das heute noch jemanden interessiert kann ich das mal hier posten.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
011
18.03.2012, 18:16 Uhr
proof80



Ich habe einen SLR80 lizensiert seit den 80er Jahren. Von daher hätte ich Interesse daran, was sich da "unter der Haube" befindet ...
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
012
19.03.2012, 21:27 Uhr
mtx500



Praktisch alle Texte, also die Meldungen, insbesondere die Copyright-Meldung, und die eingestempelte Seriennummer sind verschleiert, indem jeweils ein Zeichen rechts rotiert und das nächste wieder links rotiert ist (mit den Assembler-Befehlen RRC und RLC). Lässt man das Programm im Debugger bis zu einer gewissen Stelle (A) laufen, dann sieht man die unverschleierten Meldungen.

Die Seriennummer beginnt immer mit einem '#' Zeichen und zwei Buchstaben oder Ziffern, gefolgt von vier weiteren Ziffern. Sie ist als sieben ASCII-Zeichen abgelegt (B) und wird gegen Patchen geschützt indem über die sechs Zeichen nach dem '#' eine 8-Bit-Summe berechnet wird und mit einem abgelegten Byte an Stelle (C) verglichen wird. Das macht die Routine in (D). Falls sie nicht übereinstimmen, weigert sich das Program zu laufen.

Die Seriennummer ist nochmal an einer anderen Stelle (E) abgelegt, und zwar als zwei ASCII-Zeichen (die beiden nach dem '#') gefolgt von einer 16-Bit-Zahl die die weiteren 4 Ziffern BCD-codiert enthält. Diese Ablage wird scheinbar nicht geprüft. Vielleicht soll sie einen pösen Patcher in Sicherheit wiegen und dann verraten.

Die Adressen der Seriennummern und Routinen sind natürlich je Programm unterschiedlich. Hier eine Liste:

SLRNK.COM Release 1.31:
A = 21A1, B = 09BA, C = 019B, D = 1A33, E = 1950

Z80ASM.COM Rel. 1.32:
A = 2404, B = 2998, C = 01AC, D = 5FCF, E = 5FC7

SLRNK+.COM Rel. 2.01:
A = 4CC2, B = 4EBA, C = 0233, D = 0F75 (die Seriennummer wird vorher allerdings nach ~17D7 kopiert, bevor geprüft wird), E = 0CB5

Z80ASM.COM Rel. 1.24:
A = 2356, B = 283E, C = 0190, D = 5DDB, E = 5DD3

SLR180.COM Rel. 1.32:
A = 247D, B = 2A11, C = 01AC, D = 609F, E = 6097

Dieser Post wurde am 19.03.2012 um 21:30 Uhr von mtx500 editiert.
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
013
20.03.2012, 20:55 Uhr
proof80



Genial! Da hast Du ja bereits tief hinein geschaut ...

Ich hab mal gegraben und den Z80ASM 1.30 bei mir gefunden. Aber um herauszufinden, wo da die Stellen sind, bräucht ich jetzt mehr Zeit dafür

danke einstweilen und Gruß, Wolfram
Seitenanfang Seitenende
Profil || Private Message || Suche Zitatantwort || Editieren || Löschen || IP
Seiten: -1-     [ CP/M 2.2 ]  



gaby.de

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