hat jemand einen Tip, welches Tool unter Windows (7, 64-bit) in der Lage ist, in einem zu ladenden Intel-HEX-File das obere und untere nibble jedes Bytes zu tauschen, also aus z.B. 0xFA ein 0xFA zu machen, und dann das File wieder zu speichern?
Bin leider kein so Programmierer vor dem Herrn, sonst wäre das wohl eine einfach Aufgabe :) Aber vielleicht gibt es ja schon was...
-ras
--
Ralph A. Schmid
http://www.dk5ras.de/ http://www.db0fue.de/
http://www.bclog.de/
Aus einem 0xFA ein 0xFA zu machen ist einfach :-) Ansonsten klingt das ziemlich speziell.
Cygwin:
S-Records drausmachen, auf ein Nutzbyte pro Zeile limitiert: objcopy -I ihex ein.hex -O srec --srec-len 1 --srec-forceS3 tmp.srec In den Nutzbytes die Nibbles tauschen: perl -pe 's/(S3..........)(.)(.)(.*)/$1$3$2$4/' < tmp.srec > tmp2.srec Wieder Hex drausmachen objcopy -I srec tmp2.srec -O ihex aus.hex
Wenn das Programm, was das HEX verarbeiten soll, die Checksummen nicht prüft, kannst du auch direkt mit einem Editor die entsprechenden Spalten vertauschen. S-Records haben zwar auch Prüfsummen, aber objcopy scheint sich nicht dafür zu interessieren (zumindest die Version "GNU objcopy
Die programmieren das wohl in ein dickes EPROM, stöpseln dann einen handgelöteten Adapter dazwischen und lesen das EPROM wieder aus. Wenns nur einmal gemacht werden soll kann das sogar schneller als als Schreiben von Software sein.
Nennt sich auf amriganisch "Nibble Swap". Ich weiss nicht ob man das Programm einzeln (ohne den Programmieradapter) besorgen kann und was es dann kostet:
formatting link
Manche uC wie der dsPIC30 oder Cypress haben ein Nibble Swap Command aber das nutzt Dir hier wohl nix.
Win7? Das wird dann u.U. nochmal ein Problem fuer sich, da soll etliches aeltere nicht mehr drauf laufen :-(
--
Gruesse, Joerg
http://www.analogconsultants.com/
"gmail" domain blocked because of excessive spam.
Use another domain or send PM.
-- Mit unseren Sensoren ist der Administrator informiert, bevor es Probleme im Serverraum gibt: preiswerte Monitoring Hard- und Software-kostenloses Plugin auch für Nagios - Nachricht per e-mail,SMS und SNMP:
formatting link
Neu: Ethernetbox jetzt auch im 19 Zoll Gehäuse mit 12 Ports für Sensoren
Solange solche Boecke in diesem "modernen" OS sitzen wird das hier konsequent ausgesessen. Hat bei Vista ja schonmal ganz gut geklappt, der Krug ist an mir vorbeigegangen :-)
--
Gruesse, Joerg
http://www.analogconsultants.com/
"gmail" domain blocked because of excessive spam.
Use another domain or send PM.
Also das ist ja wohl sowieso sicher. Aber es geht leider wohl noch weit darüber hinaus...
Don't drink and post.
Aber in der Hoffnung, daß es das kleine verbliebene Stück grauer Materie doch noch erreicht: Für sowas primitives braucht man echt nicht selber programmieren. Das kann man zur Not mit einem Texteditor abwickeln, der Suchen/Ersetzen mit regulären Ausdrücken unterstützt. Lustig: Sowas gibt's sogar für Windows. Selbst für Wix7hoch64Wixbits...
Wie kommt man überhaupt dazu, sich so einen Bullshit freiwillig anzutuen?
Oh mein Gott, der nächste Nicht-Programmierer. Intel-Hex-Files sind so weit weg von der Maschine, daß die Bytes als ASCII-Hexstrings dargestellt werden. "AF" sind genau zwei Zeichen, und die kann ein fähiger Texteditor natürlich problemlos zu "FA" machen, womit die Nibbles der Representation dieses Bytes getauscht wären.
Tsss...
Du hast meine Frage nicht richtig verstanden. Die bestand keinesfalls darin, wozu es manchmal nötig sein kann, Nibbles zu tauschen. Dies Notwendigkeit kenne ich selber. Die Frage ging eher dahin, warum man sich Win7 im Allgemeinen und die 64Bit-Edition im Speziellen antut. Weil: nach meinem Ermessen gibt es exakt Null logische Begründungen dafür. Nichtmal mehr: "War beim Rechner dabei" lasse ich noch als Ausrede gelten. Die Zeiten der Nachsicht sind vorbei.
Ich kann das zur Not auch auf XP erledigen, das ist jetzt nicht das Problem.
Oder ich frage einfach einen Kollegen, ob er mir gegen ein Abendessen oder eine Flasche Schampus oder so einfach mal eben schnell sowas programmiert :)
Hintergrund ist übrigens , daß ich ein 4-bit-PROM ersetzen mag, das an D4-D7 hängt, indem der CE dieses PROM einfach über die passende Adressleitung des firmware-EEPROM die zweite Bank da drin aktiviert, in der dann dieser geswappte block steckt.
-ras
--
Ralph A. Schmid
http://www.dk5ras.de/ http://www.db0fue.de/
http://www.bclog.de/
Intel-HEX Files haben aber ein paar Besonderheiten, wird das vom Programm berücksichtigt?
Der Vorschlag von Stefan war gut, ich würde allerdings kein cygwin nehmen, das wäre mir zu aufwändig. Eine kleine Linux-Distribution in der Virtual Box o.ä. installieren oder einfach samt dem VMWare Player bei
formatting link
herunterladen. Es gibt noch mehr nette Tools unter Linux ;-), die man immer wieder mal gebrauchen kann.
73 de Tom
Address Field und so? Das weiss ich nicht, muesste Ralph anfragen. Das ist jetzt ewig her und ich bin definitiv kein Programmierer, aber aus dunkler Erinnerung haben unsere SW Leute das in den 80ern so geloest, dass sie in einen Flat File ausgaben, die gewuenschte Bit- und Nibble-Schaufelei oder Verschieberei dort vornahmen und dann wieder zurueck auf Intel HEX. Das kaeme Rafaels Methode recht nahe, aber Hauptsache es funzt :-)
Damals handelte es sich um die Steuerung einer Kreuzpunktmatrix, und der Vorgang hiess bei uns "De-Rotation". Das waren noch Zeiten, wo der Chef der SW Gruppe uns bei jeder neuen Version einen Satz von 8-12 frisch gebrannten EPROMs raufbrachte. Die SW Gruppe arbeitete "unter uns", im Keller, kein Scherz. Das hatte fuer die auch Vorteile, weil da unten ein gefliester Raum war wo freitags schonmal ein Faesschen aufgemacht wurde. Da fanden wir auch raus, dass man Amerikanern den Anstich mit einem alemannischen Holzzapfhahn besser nicht ueberlaesst ... *POFF* ... phssssssss ....
Habe ich hier auch. Wenn VirtualBox erstmal richtig laeuft und Linux mit drauf ist, kann man mal eben was "von der anderen Seite" ausprobieren :-)
--
Gruesse, Joerg
http://www.analogconsultants.com/
"gmail" domain blocked because of excessive spam.
Use another domain or send PM.
Das hast Du vollkommen richtig erfasst. Wenn ich auf einen 89C51 oder so losgelassen werde bleibt kein Auge trocken :-)
AF und FA war aber nur ein Beispiel. Auch alle anderen Kombinationen wollen korrekt verwurstet werden, wenn ich Ralph richtig verstanden habe.
Stimme Dir zu. Hier bleibt das bis auf weiteres bei XP, da gibt's nix. Im Westen der USA habe ich Leute getroffen die sich ein halbes Dutzend XP Voll-Lizenzen gekauft und eingekellert haben.
--
Gruesse, Joerg
http://www.analogconsultants.com/
"gmail" domain blocked because of excessive spam.
Use another domain or send PM.
Nun, mehr 4GiB oder mehr RAM sind heute ja fast Standard, da haben ein
64-Bit-OS und 64-Bit-Anwendungen schon Vorteile. Außerdem: Welche logische Begründung gibt es dafür, auf einem Rechner, der eine geeignete CPU beseitzt, ein 32-Bit-OS einzusetzen?
Christian PS: Und was Windows 7 angeht, die Kollegen, die das schon einsetzen, sind ganz angetan davon...
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.