Hexdump Endianness
-
Also sollte es eigentlich funktionieren? Naja, das originale Hexdumpprogramm formatiert den Code deswegen ist es schwer zu diffen bräuchte halt einen Hexcode der wenigstens von der Formatierung her identisch wär mit meiner Kopie ... muss mal schauen ob das geht.
Ich hab geschaut ob das Programm den Hexcode richtig berechnet und eig. ist es richtig.
-
Du hast ein Originalfile org.bin
Den Hexoutput org.hex
Und die Bindatei aus der Hexdatei neu.binWie Unterscheiden sich org.bin und neu.bin ?
Der Befehl dazu ist
fc
unter Windows undcmp
unter *ix
-
Achso, ... oh thx mal gucken moment (pah wie konnt ich nicht eher drauf kommen)
test outbin differ: byte 5, line 1
Aber wirklich helfen tut das nicht, ich schau mal in den Quellcode
-
Könnte es an fputc liegen?Es nimmt ja eigentlich ein int als Argument, ich geb fputc aber ein char? Vielleicht eine implizite Konvertierung und dadurch jeweils 4Byte weise gespeichert? Ist zwar nur ne Idee, aber i-wie hab ich das Gefühl das nicht dass das Problem ist.
-
Nirvana134 schrieb:
test outbin differ: byte 5, line 1
Und wie sieht der Unterschied aus?
Sind janur 5 Byte, die kannst du auch hinschreiben.
-
7f 45 4c 46 11 10 00 00 00 00 20 30 10 00 60 83 48 34 00 02 c1 10 00 00 03 40 die eine Testdatei ersten paar Bytes
7f 45 4c 46 11 10 00 00 20 30 10 06 08 34 83 40 2c 11 00 die ersten paar Bytes der anderen Testdatei
beide mit meinem eigenem Programm ins Hex gebracht also siehe erster Post.
-
Kann es da Probleme mit den Leerzeichen beim einlesen geben?
-
Das sieht so aus, als ob du noch irgendein Problem bei der Verarbeitung der Null-Bytes hast. Erster Tip (wurde aber auch schon genannt): Verwende lieber "%02x" beim Schreiben der Zwischendatei - damit stellst du sicher, daß jedes Byte mit zwei Hex-Ziffern dargestellt wird.
-
CStoll schrieb:
Das sieht so aus, als ob du noch irgendein Problem bei der Verarbeitung der Null-Bytes hast.
Oder einstelligen Hexzahlen.
Ich bin davon ausgegangen, dass er mittlerweile "%02x " verwendet.
Ich kann auch nicht erkennen was Original und Fälschung ist.
-
Oh man,... das lag an 02x, ich dachte das wär optional nur um den Quellcode schöner zu gestalten oder so .... naja immerhin funktionierts jetzt.