
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hi ihr beiden, das, was Kay beschreibt, wird nicht helfen. Die Adressen der S19 werden sicherlich ignoriert, bestenfalls dienen sie noch zur Überprüfung des Codes (Länge in Byte). Abgesehen davon ist eine S19 Datei bereits auf eine Adresse fixiert. Du könntest also nun um zwei Assemblerroutinen aus zwei Dateien zusammenzufügen folgendes tun 1. Möglichkeit beide S19 in BINÄR Dateien umwandeln (siehe Download Area), und die beiden Dateien dann in eine zusammenkopieren. Funktioniert aber nur dann, wenn beide keine JMP oder JSR Assembler Anweisungen verwenden, die in den Bereich 101hex - 1FFhex verzweigen. 2. Möglichkeit beide S19 in BINÄR Dateien umwandeln und disassemblieren(siehe Download Area), dann die Quellcodes von Hand zusammenfügen, Adressen und Labels anpassen.... viel Arbeit. (*) 3. Möglichkeit Wähle mBasic in Menü Datei - Importieren... und imporitere erst die eine, dann die andere S19 oder BIN Datei. (*) (*) :: Überprüfe jeweils, ob der erzeugte Quellcode im Assembler Projektteil auch keine JMP oder JSR Assembler Anweisungen enthält, die in den Bereich 101hex - 1FFhex verzweigen. Sollte eigentlich nicht vorkommen, da es nicht besonders effezient ist diese Befehl innerhalb des Assemblercodes zu verwenden, kann aber vorkommen. In diesem Fall einfach JMP xxxx bzw. JSR xxxx umwandeln in JMP xxxx - 101h + routine1start wobei routine1start ein Label ist, das vor der ersten Anweisung der Routine Y steht. Ebenso bei JSR. Noch ein kleiner Tip: Beim Disassemblieren aufpassen, Disassemblieren erkennen keine Dateienbytes, wenn der ASCII Code auch ein Befehl sein könnte. D.h. wenn irgendwelche Datenbyte Fallen mitten im Code eingebaut sind (Conrad Treiber Prüfsummen, Codierung, Ausleseschutz und sonstige Freundlichkeiten) stimmt der erzeugte Code an dieser Stelle nicht mehr... |
| Antwort schreiben |