Servus Community! Vermutlich handelt es sich hier um eine ziemliche Noob Frage, aber sie treibt mich dennoch um: In meinem beruflichen Umfeld bin ich derzeit konfrontiert mit der Arbeit eines ehemaligen Soft- und Hardware Entwicklers. Es geht um etliche Projekte, welche meines Wissens nach mit BASCOM umgesetzt wurden. Die Dateien, die mir vorliegen sind vermutlich der Output des BASCOM Compilers. Leider finde ich nirgends eine XY.bas Datei; zur Übersicht mal eine Aufstellung der vorhandenen Files: - XY.bin - XY.dbg - XY.hex - XY.main - XY.obj - XY.rpt In der XY.main scheint der Quellcode zu stehen. Mein Vorhaben ist es nun, den Code zu verstehen und bei Bedarf anzupassen. Reicht hierfür das XY.main File oder brauche ich ein .bas? Danke im Voraus für Eure Unterstützung!
"ich habe hier 100kg Hackfleisch, kann ich da wieder eine Kuh draus machen um danach die Kuh in ein saftiges Steak zu verwandeln?" -> Is nicht. Du kannst das .hex oder .bin mit einem Disassembler in Assemlber verwandeln und dann den Assembler-Code verstehen und ändern. Das geht mit viel Zeit für kleine Änderungen. Zurück zu BASCOM ist unmöglich, das geht schon bei dem viel weiter verbreiteten c / c++ nicht. Wenn es eine große Änderung sein soll: Schreib es neu und führ vernünftiges Versionsmanagment (Git!) in der Firma ein.
Wenn in der *.main tatsächlich der Quellcode steht sollte es laufen. Einfach umbenennen in *.bas Nachtrag: Wenn erlaubt, zeige doch mal einen Ausschnitt.
:
Bearbeitet durch User
Hallo @feinmechaniker! Supi, das mit dem Umbenennen scheint zu funktionieren! Habe mir zwar schon gedacht, dass es irgendwie möglich sein sollte - aber dass es so easy ist habe ich nicht erwartet ;) @Bauteiltöter: ich wünsche Dir viel Erfolg mit Deinem Steak! Dass ich nur mit viel Aufwand les- und verstehbaren Code aus der .hex oder .bin machen kann, ist mir klar. Meine Frage war aber anders gelagert (es ist ja eine .main mit lesbarem Code vorhanden).
Joe G. schrieb: > Wenn in der *.main tatsächlich der Quellcode steht sollte es laufen. > Einfach umbenennen in *.bas > > Nachtrag: > Wenn erlaubt, zeige doch mal einen Ausschnitt. Natürlich darf ich hier nicht zu viel veröffentlichen, aber im Folgenden Abschnitt werden vermutlich die Variablen deklariert. Leider kenne ich mich mit BASCOM und der zugehörigen Syntax null aus, weshalb ich das noch nicht beurteilen kann...
1 | dim red as byte: dim green as byte: dim blue as byte |
2 | dim cr as word:dim cg as word:dim cb as word |
3 | dim redth as byte: dim greenth as byte: dim blueth as byte |
4 | dim cred as dword: dim cgreen as dWord :dim cblue as dword |
5 | dim vred as dword:dim vgreen as dword:dim vblue as dword :dim vpwm as dword :dim v2pwm as dword |
6 | dim vred2 as dword:dim vgreen2 as dword:dim vblue2 as dword |
7 | dim vr as word:dim vg as word:dim vb as word |
8 | dim vrr as word:dim vgg as word:dim vbb as word |
9 | dim vrx as word:dim vgx as word:dim vbx as word |
10 | dim ntc1 as dword:dim ntc2 as dword:dim offset as dword |
11 | dim x as byte: dim y as byte |
12 | dim t1max as byte:dim t2max as byte:dim v1max as byte:dim v2max as byte |
13 | dim diff1 as byte:dim diff2 as byte: dim freigabetemp as byte : dim ot1 as byte: dim ot2 as byte |
Die Syntax des von dir gezeigten Ausschnittes entspricht BASCOM. Mein Compiler hat bei diesem Abschnitt keine Felermeldung produziert.
Andreas E. schrieb: > In der XY.main scheint der Quellcode zu stehen. Wenn das wirklich so wäre, bräuchtest du die nur umbenennen in *.bas und der Drops ist gelutscht... > Mein Vorhaben ist es nun, den Code zu verstehen und bei Bedarf > anzupassen. Reicht hierfür das XY.main File oder brauche ich ein .bas? Das hängt einfach davon ab, ob die mit deiner Einschätzung dessen, was in *.main steht, richtig lagst. So einfach ist das.
Servus zusammen! Also es war tatsächlich so, dass das einfache Umbenennen der *.main in *.bas den gewünschten Erfolg gebracht hat. Der Code ließ sich so ohne Weiteres kompilieren. Vielen Dank für Eure Hilfe! Thread kann geschlossen werden.
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.