|
 |
 |
 |
|
|
c't Projekte - c't-Bot und c't-Sim -
Mailinglisten
[Voriger (Datum)]
[Nächster (Datum)]
[Voriger (Thread)]
[Nächster (Thread)]
[Nach Datum][Nach Thread]
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
|
|
|