
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo! S19 Dateien sind von einem Assembler erzeugte Code Dateien, die leider an feste Adressen gebunden sind und keine Symbolinformationen mehr enthalten. Die Übernahme ist deshalb nicht ganz so einfach, da man ja in mBasic mehrere Projekte zusammenführen (oder besser: miteinander vermischen) kann. Das funktioniert aber eben nur dann, wenn der in mBasic integrierte Assembler und der Compiler den Code aller Projekte selbst organisieren können. Das ist für den Programmierer dann auch eine sehr bequeme Lösung, da sich der Programmierer selbst weder um irgendwelche Sprungadressen noch um die Adressen der Variablen kümmern muss. Statt SYS $120 verwendet man CALL Label (Label der Zeile die aufgerufen werden soll) und statt LDA $A5 einfach LDA Variable (Basic Variable, die in A Register verschoben werden soll). Der Vorteil macht sich besonders dann bemerkbar, wenn das Projekt wächst, erweitert oder geändert wird: ! Voraussetzung dafür ist eben, dass Assembler und Compiler freie Hand haben, was aber eine fertig assemblierte S19 Datei leider verhindert. Eine EXE Datei ist zum Beispiel auch fertig compiliert, enthält aber die alle nötigen Symbolinformationen. Die Erweiterung für S19 Dateien und somit die Lösung für das Einbinden (d.h. Import durch integrierten Disassembler) ist noch in Arbeit, das wäre auch die leichteste Lösung für den Anwender. Am besten wäre es im Moment, wenn der .ASM Quellcode der S19 Datei vorliegen würde. Vorübergehende Lösungen wären - .S19 in .BIN konvertieren und IDI05 Disassembler verwenden - .S19 Code mit CCBASIC, *++, CCWorkBench oder dem Download Tool in den Mikrocontroller laden und in mBasic mit Call &h101 aufrufen. (funktioniert aber nicht im Simulator, der findet bei $101 natürlich nur 0,0,0...) Grüße, Patrick > > Hallo; > Eifach genial der Simulator > Auch die programmierungsweise ist voll genial. > Aber wie kann ich die s19 dateien einbinden? > zb zum ansteuern meines 2wbus netzwerk? > Kann ich dem Simulator die Module wie ir 2wb empfännger oder > 2wb ad wandler einbinden? > kann ich funktionen die ich in einem anderen code mit > asembler funktionen (e.v S19 erweiterung) in einen neuen code integrieren? > > |
| Antwort schreiben |