Absender: Timo Sandmann
Datum: Fr, 13.07.2007 16:15:48
In-reply-to:
<468FC24D.5080507@xxxxxx>
References:
<BCF016D5ED5AC34FBB655D109519ABCF083EBE@xxxxxxxxxxxxxxxxxxxx> <45F135B9.5030203@xxxxxx> <45F13A91.6090904@xxxxxxxx> <D053B7F5-6BDD-4052-B45F-28FCF0EF45F8@xxxxxxxxxxxxxxx> <45F2B74F.8090706@xxxxxx> <38A4BFD9-CA32-436A-9A1E-B4E6E0652A5D@xxxxxxxxxxxxxxx> <463E0782.1050406@xxxxxx> <0FBD95CF-DA3B-461B-B12B-9FDCD84984D2@xxxxxxxxxxxxxxx> <463F3E0A.7020605@xxxxxx> <8D5B90F4-74FD-45D4-B5B8-DDCAC0B81932@xxxxxxxxxxxxxxx> <464092F7.30605@xxxxxx> <465DB1F9.5030404@xxxxxx> <CF925D4D-FD5A-4581-8480-1C5D35EFEDC9@xxxxxxxxxxxxxxx> <4663027F.4040301@xxxxxx> <F71477F0-03AD-4F06-87E3-AC5DA5BFD1B2@xxxxxxxxxxxxxxx> <466D6849.1020109@xxxxxx> <46756694.9010906@xxxxxx> <6566D2F2-ADE4-4656-86C0-6533B3462B64@xxxxxxxxxxxxxxx> <46866046.7040108@xxxxxx> <4686813D.8020405@xxxxxx> <70929B57-E069-4B5F-AC22-3E1E51ACD696@xxxxxxxxxxxxxxx> <5E0B9EC1-1718-4319-95D6-54862E9ECA42@xxxxxxxxxxxxxxx> <468CB5B0.3000408@xxxxxx> <EB302B19-E327-4736-A0DE-588E25D2EE48@xxxxxxxxxxxxxxx> <468FC24D.5080507@xxxxxx>
Hallo, Am 07.07.2007 um 18:41 schrieb Achim Pankalla:
hallo,anbei eine überarbeitete version der eeprom-emulation. sie sollte nun auch mit macosx und linux funktionieren, vorrausgesetzt: 1) meine positionsangaben für die dateien stimmen (sollte so sein, ausser sie enthalten TABs)
für OS X waren sie falsch, für Linux glaube ich auch, habe ich korrigiert.
2)die ausgabe von objdump von den avr compiler von windows ist identisch zu der bei linux und macos. die werte können mit konstanten am anfang von eeprom-emu_pc.c angepasst werden, die zählung erfolgt ab 0 und bei den adressen / groessenangaben sollten die letzten 4 stellen erfasst werden.
Das mit den letzten 4 Stellen ist sehr unschön. Für PC habe ich das mal korrigiert. Außerdem sollte man Speicheradressen immer in Maschinenwortbreite rechnen, die Adresse wurde zwar in 32 Bit gespeichert, aber ein Zwischenergebnis in einer 16-Bit Variablen abgelegt, da hat bei mir dann gar nichts mehr gepasst. So was ist extrem schwer zu debuggen, ich hoffe ich habe alle Stellen korrigiert, wo die Speicheradressen eine Rolle spielen.
Auch für MCU sollten wir die Adresse komplett, also in 32 Bit einlesen. Ich weiß nicht, ob man sich darauf verlassen kann, dass das schlichte Weglassen der oberen 2 Bytes immer funktioniert. Wo im Adressraum der Linker die Variablen ablegt, können wir kaum pauschal voraussagen.
ausserdem habe ich die eeprom.bin gecached, dh die werte werden aus den ram gelesen und geschrieben in ram und datei. ausserdem noch weiter kleinigkeiten...für (hoffentliche) postive rückmeldungen bin ich dankbar....
Die Sache ist soweit jetzt im SVN, ich habe es nur unter Mac OS X getestet, unter Linux und Windows müsste das bitte nachgeholt werden. Die Post-Build-Einträge kommen in Kürze auch noch in die Projekteinstellungen im SVN, das muss ich nur unter dem alten Eclipse machen.
Ich wäre dafür, dass wir ein 5. Target "Debug Mac OS X" anlegen, weil der Post-Build-Step hier unterschiedlich zu Linux ist, hat jemand etwas dagegen? ;-)
Viele Grüße, Timo