DOS Code

Hier dürfen auch unregistrierte Besucher posten.
Antworten
Martha

DOS Code

Beitrag von Martha »

Guten Morgen,

ich bin kein Experte, von Informatik habe ich nun ein bisschen Ahnung.
Ich habe in meine Rabeit ein Program, der in DOS geschrieben wurde. Ich soll mich an sich mit dem Programm auseinander setzen. Ich würde gerne an die Quellcode kommen. Leider weiss ich es nicht wie. Welche Datei ist das etc.

Könnte mir jemand helfen? oder einen Tip geben?

Einen schönen Tag wünsche ich Euch!

Martha
Benutzeravatar
Dune82
CONFIG.SYS-Autor
Beiträge: 286
Registriert: Sa 8. Jun 2013, 13:42
Wohnort: Unna

Re: DOS Code

Beitrag von Dune82 »

Du bist gut!
Ein Dos Programm fängt immer mit einer Bat , Com oder Exe Datei an.
Da musst du anfangen und dan weiter schauen in welche Datei gesprungen wird oder welche benutzt wird.

Exe Dateien sind meist Compaliert und Gepackt
also erst Entpacken und dan den richtigen Compiler zur Programmiersprache .

Erst wenn du das hast kannst du weiter machen
matze79123

Re: DOS Code

Beitrag von matze79123 »

Huch BAT ist doch kein Programm :O
Sondern ein Skript.
Benutzeravatar
Dune82
CONFIG.SYS-Autor
Beiträge: 286
Registriert: Sa 8. Jun 2013, 13:42
Wohnort: Unna

Re: DOS Code

Beitrag von Dune82 »

Bat ist auch kein programm aber einige programme werden über bat gestartet in der bat datei werden dan evtl noch parameter festgelegt.

Z.b.
einige spiele da werden die sound einstellungen festgelegt
Oder
es gibt programme die haben eine verarbeitungsdatei die man dan darin sieht
z.b. gsmenu.com menu.lst
deswegen habe ich bat mit aufgelistet
man muss halt ganz vorne anfangen
Benutzeravatar
Dune82
CONFIG.SYS-Autor
Beiträge: 286
Registriert: Sa 8. Jun 2013, 13:42
Wohnort: Unna

Re: DOS Code

Beitrag von Dune82 »

Mein handy macht immer doppelpost
Brueggi_A

Re: DOS Code

Beitrag von Brueggi_A »

Mhh.. von Informatik nur ein wenig Ahnung - wozu brauchst Du dann den Quellcode? Zur Not kannst Du Dein Programm disassemblieren, da gibt's genug Tools für - gerade unter Windows. Aber wenn Du nicht wirklich Ahnung hast, nützt dir das nichts, denn was da heraus kommt ist lediglich x86-Quellcode, und nicht der Quell-Code einer Hochsprache.
Gast

Re: DOS Code

Beitrag von Gast »

[quote="Martha"]Guten Morgen,

ich bin kein Experte, von Informatik habe ich nun ein bisschen Ahnung.
Ich habe in meine Rabeit ein Program, der in DOS geschrieben wurde. Ich soll mich an sich mit dem Programm auseinander setzen. Ich würde gerne an die Quellcode kommen. Leider weiss ich es nicht wie. Welche Datei ist das etc.

Könnte mir jemand helfen? oder einen Tip geben?

Einen schönen Tag wünsche ich Euch!

Martha[/quote]

Ich bin Experte von Informatik.

Wenn du dich gemäß deiner Arbeit mit dem Programm auseinandersetzten sollst, dann heißt das wohl, dass du den Umgang und die Benutzung des Programms lernen sollst.
Du wirst es also wohl kaum umschreiben müssen, denn diese Aufgabe würde man an Leute vergeben die das auch können.

Das ist das eine, nun zum anderen.
Der Quellcode eines Programms wird in der Regel nicht mitgeliefert, Open Source Software ist eine Ausnahme, aber damals zu DOS Zeiten wurden die Programme eher in compilierter Form als Binary verkauft, d.h. der Enduser bekam den Quellcode nicht und den wirst du aus einem Binary auch nicht sinnvoll rekonstruieren können.

Das einzige was gehen würde, wäre das Binary zu dissassemblieren, dann würde dir das Programm in Assembler vorliegen und man könnte es technisch betrachtet bearbeiten und ändern, sofern man Assembler beherrscht.

Ob sich der Aufwand allerdings lohnt, ist fraglich. Triviale Programme schreibt man besser in einer modernen Hochsprache neu und nicht triviale komplexe Programme auf Assemblerebene zu bearbeiten, ist aufwendig und teuer. Allein schon entsprechende Entwickler zu finden, die Assembler aus dem Ärmel schütteln können, dürfte schwierig werden und wenn man sie gefunden hat, dann lassen die sich das ordentlich bezahlen.

Das alles sind aber nur die technischen Frage, die viel relevantere ist aber die rechtliche.
Die lautet nämlich, dürft ihr das Programm überhaupt umbearbeiten?

Das ist nämlich normalerweise nicht erlaubt, das Programm ist urheberrechtlich geschützt und eine Umbearbeitung darf nur der Urheber oder der, der die Verwertungsrechte an diesem Programm besitzt durchführen. Eine einfache Nutzungslizenz ist noch kein Verwertungsrecht und wenn ihr damals, als Firma die Software in Auftrag gegeben habt und auch gleich die Verwertungsrechte mitgekauft hättet, dann hättet ihr sicher auch gleich den Quellcode mitgekauft.

Daher gehe ich davon aus, dass ihr keinerlei Rechte besitzt, das Programm umzubearbeiten.

Wenn dies nötig ist, dann solltet ihr die Firma bzw. den Autor kontaktieren, der die Software geschrieben hat. Der hat vielleicht auch noch den Quellcode.


Vielleicht sollte man aber auch an die Thematik anders herangehen und erst einmal fragen, warum der Quellcode notwendig ist?
Soll das Programm erweitert werden oder soll es nur auf einer neuen Hardware lauffähig gemacht werden?
Wenn letzteres zutreffend ist, dann macht es Sinn, wenn man sich nach einem Emulator umsieht, so das man das Programm unter einem 64 bittigen modernen OS nutzen kann.
DOS Programme sind in der Regel 16 Bit Real-Mode Programme und die funktionieren ohne Emulation nicht mehr in einem 64 bittigen Betriebssystem, dies liegt aber nicht am 64 bittigen Betriebssystem, sondern schlichtweg an der AMD64 Architektur, die im Long Mode keinen 16 Bit Real-Mode Betriebsmodus gestattet.
Was ihr braucht ist also ein Software Emulator. Die DOSBox wäre wahrscheinlich eine mögliche Lösung, damit laufen 16 Bit Realmode Programme in einer emulierten DOS Umgebung unter einem modernen 64 bittigen Betriebssystem.
http://www.dosbox.com/information.php?page=0

Alternativ dazu kann man aber auch auf einem modernen Rechner versuchen ein DOS Betriebssystem direkt zu booten.
Wenn das mit einem alten DOS Probleme bereiten sollte, dann empfiehlt es sich, dies mal mit FreeDOS als Alternative zu MS-DOS & Konsorten auszuprobieren, denn das unterstützt moderne Rechner in der Regel etwas besser, da es auch heute noch weiterentwickelt wird.

Wenn auch das keine Option ist, dann wäre ein 32 Bittiges Windows mit dem bei Windows mitgeliefertem Programm NTVDM.exe eine Möglichkeit, aber alles läuft damit auch nicht, man muss mit Einschränkungen rechnen.
Die DOSBox ist da in der Regel die bessere Wahl, wenn es eine DOS Anwendung ist.

Die beste Lösung kann allerdings auch sein, sofern das eine zumutbare Option ist, einfach einen alten Rechner hinzustellen, auf dem die Anwendung dann laufen soll.
Dies gilt insbesondere in solchen Fällen, bei denen die DOS Anwendung nach außen auf echte Hardware in Echtzeit zugreifen muss. Eine emulierte Software Umgebung ist mangels Echtzeitfähigkiet für solche Fälle leider oft keine brauchbare Lösung.
Antworten