Hexeditor gesucht

OP #7872907
Lesenswert?

Hallo *,

ich habe in der letzten Zeit öfters an Daten aus Intel Hex Files editiert die aus 16-Bit breiten Eproms kamen. Bei allen Hexeditoren die ich gefunden habe passiert das Editieren auf Bytebene. Da man dabei das Thema Endianness und die Tatsache das die Adressen nicht korrekt angezeigt werden selber beachten muss nervt dabei etwas. Kennt jemand einen Hexeditor der es anders kann und am besten unter Linux läuft? Die Programmiersoftware des TL866II beherrscht die korrekte Anzeige der Daten ist aber zum Editieren wenig geeignet.

#7872951
Lesenswert?

Wenn Intel Hex Files editiert werden, braucht man doch einen Texteditor?! Oder wandelst Du vorher und editierst dann die Binary? Wenn Du direkt im ihex ändern willst kannst Du die auch bei ChatGPT hochladen und ihm sagen, welcher Wert angepasst werden soll. Die Checksumme berechnet der dann für die Zeile auch neu. Das reine Wort ChatGPT bringt hier zwar Negativbewertungen hervor, funktionieren tut es aber trotzdem.

#7872971
Lesenswert?

H. H. schrieb:

Andreas B. schrieb:

Harald A. schrieb:

Wenn Intel Hex Files editiert werden, braucht man doch einen Texteditor?!

Da hast Du allerdings recht. Das habe ich (und andere wohl auch) übersehen.

Ein ordentlicher Hex-Editor kann natürlich auch sowas im- und exportieren.

Wozu soll das gut sein? Wenn es schon im ASCII Format vorliegt, kann man es doch dabei belassen.

#7873050
Lesenswert?

Peter M. schrieb:

aber in meiner Erinnerung kam weder "bitte" noch "verdammt nochmal!" vor, sondern "idiotisch-destruktiv".

Dann ist Deine Erinnerung merkwürdig selektiv. Ja, ich schrieb "idiotisch-destruktiv", und dazu stehe ich auch. Die "KI" ist genau das, und die Idee, sie für irgendwas anderes als das Erzeugen sinnentleerter Wort- oder Bildhülsen zu verwenden, ist von ganz, ganz wenigen Ausnahmen abgesehen genau das. Wer glaubt, daß die "KI" seine Probleme löst, gibt sich selbst auf. Warum etwas lernen, wenn's doch die "KI" kann? Warum etwas verstehen, wenn's doch die "KI" versteht? Warum etwas lesen, wenn doch die "KI" eine Zusammenfassung davon generieren kann? Macht man das lange genug, verlernt man auch jedwede Fähigkeit, herauszufinden, ob das, was die "KI" da tolles geliefert hat, dreist gelogen, wüst zusammenfantasiert oder irgendwo geklaut ist.

Und dafür muss man jetzt die Welt mit Kernkraftwerken zupflastern, damit die Rechenzentren, in denen die "KI" betrieben wird, ihren pervers riesigen Stromverbrauch aufrechterhalten kann.

#7873093
Lesenswert?

Harald K. schrieb:

Peter M. schrieb:

aber in meiner Erinnerung kam weder "bitte" noch "verdammt nochmal!" vor, sondern "idiotisch-destruktiv".

Dann ist Deine Erinnerung merkwürdig selektiv.

Sie ist halt subjektiv. Ich wollte damit nur spiegeln, was bei den (einem) Rezipienten hängen bleibt. Im Gegensatz zu dem Beitrag hier hast Du oben auf einen konstruktiven Beitrag vom anderen Harald etwas geschrieben, was nicht etwa das (fragwürdige) Werkzeug niedermacht, sondern den konstruktiven Beitrag.

Immerhin stand da "Könntest Du bitte auf derartig idiotisch-destruktive Vorschläge verzichten?" und nicht "bitte überdenke den Einsatz eines derartigen ressourcenaasenden Werkzeugs; im Übrigen halte ich den Einsatz von LLMs für idiotisch-destruktiv."

Von mir aus EOD; ciao, Peter

#7998900
Lesenswert?

Arthur D. schrieb:

oder das Hexeditor Plugin zum Vscode

Meinst Du das hier? https://marketplace.visualstudio.com/items?itemName=ms-vscode.hexeditor

Da steht nichts von den unterstützten Dateiformaten; das kann also vermutlich nur Binärdateien als Hex verarbeiten.

Von den verschiedenen Intel-Hex-Formaten oder den Motorola-S19-Varianten steht da nichts.

: Bearbeitet durch User
(Firma: 42) #7999730
Lesenswert?

Was Du suchst ist also eher so eine Art Parser, der ein ASCII File im ihex bzw. s19 Format analysiert? Da kenne ich nichts.

Wenn wirklich Binärdaten verändert werden sollen dann empfehle ich:

  • *.ihex -> *.bin mit z.B srec_cat
  • ändern der Daten mit einem Hex-Editor
  • *.bin -> *.ihex mit srec_cat
: Bearbeitet durch User
#7999974
Lesenswert?

Arthur D. schrieb:

Was Du suchst ist also eher so eine Art Parser, der ein ASCII File im ihex bzw. s19 Format analysiert?

Nö, aber das ist elementare Funktionalität, die ich von einem besseren Hexeditor erwarte.

Die folgenden kommerziellen Produkte können das:

https://www.sweetscape.com/010editor/

"Professional" und "Ultimate" von https://hhdsoftware.com/free-hex-editor

https://dataescher.com/products/hexeditor.php

HxD (https://mh-nexus.de/de/hxd/) kann diese Formate nur schreiben, nicht aber lesen.

Es erfordert halt eine grundlegend andere Programmlogik, eine aus mehreren nicht kontinuierlichen Abschnitten bestehende Binärdatei zu verwalten, als eine aus einem kontinuierlichen Block.

#8001327
Lesenswert?

Eigentlich kann man sich einen einfachen Hexeditor auch selber schreiben bzw. programmieren. So schwierig ist das nicht..

Relativ gut war immer hexworkshop. Auf Linux gibt es einen Clone von KDE, glaube ich.

Zur Not könnte man auch IDA einsetzen.

#8001418
Lesenswert?

Ich nutze Hex Editor Neo mit Ultimate Lizenz:

https://hhdsoftware.com/hex-editor

Hat sich schon lange gelohnt sich das mal zu leisten.

Rbx schrieb:

Eigentlich kann man sich einen einfachen Hexeditor auch selber schreiben bzw. programmieren. So schwierig ist das nicht..

Oh bitte. Du würdest es nicht schaffen auch nur die Minimalfunktionen einigermaßen zu programmieren. Das würdest du dann nach 2 Jahren feststellen.

#8001539
Lesenswert?

C. W. schrieb:

Kennt jemand einen Hexeditor der es anders kann und am besten unter Linux läuft?

Umwandeln mit srec_cat wurde ja schon genannt: srec_cat example.ihex -Intel -Output example.bin -binary

Da man nun schon auf der Kommandozeile ist, kann man dort mit vbindiff und hexer weitermachen.

https://www.cjmweb.net/vbindiff/ https://devel.ringlet.net/editors/hexer/

Falls man bei einem Binärfile vorn oder hinten was abschneiden möchte, kann man 'dd' mit den Parametern skip und count verwenden: dd if=example.bin of=extract.bin bs=1 skip=369 count=7942

#8003033
Lesenswert?

Rick schrieb:

Umwandeln mit srec_cat wurde ja schon genannt: srec_cat example.ihex -Intel -Output example.bin -binary

Geht auch mit objcopy. Ist auch egal für welche Zielarchitektur objcopy gebaut wurde, da in einer Intel-Hex Datei keine Information bezüglich Architektur stehen wie zum Beispiel in ELF oder PE.

1
$ objcopy -I ihex -O binary test.ihex test.bin
#8003093
Lesenswert?

Rbx schrieb:

Cyblord -. schrieb:

Du würdest es nicht schaffen auch nur die Minimalfunktionen einigermaßen zu programmieren.

Welche Minimalfunktionen denn genau, wenn ich fragen darf?

Die Minimalfunktion eines HEX Editors ist die Byteweise Darstellung von Daten (meist aus Dateien) in verschiedenen Zahlensystemen und deren Bearbeitung.

Kannst ja mal versuchen. Das wirklich gut zu machen, vor allem GUI seitig, ist aufwändiger als du denken würdest und du bist hier noch nicht als erfahrener SW Entwickler aufgefallen. Deshalb zweifle ich sehr dass du das kannst. Hast du denn ähnliche Anwendungen schon gemacht? Kannst du Beispiele zeigen?

: Bearbeitet durch User
#8003099
Lesenswert?

Kannst ja mal versuchen. Das wirklich gut zu machen, vor allem GUI seitig, ist aufwändiger als du denken würdest

Naja, ich hab da noch eine schwache Erinnerung das ich das anfang der 90er mal gemacht habe. War aber in TurboPascal und Teil meines MCS48 Emulators. Aber natuerlich, es ist schon mehr Arbeit als irgendwo im Internet eine Software zu finden. Und es gab auch Dutzende von Hexeditoren, sind wohl alle mit DOS ausgestorben weil das heute fast niemand mehr braucht und wenn doch muss man wohl seine Geldboerse aufmachen. .-)

Ich denke aber schon das dies eine gute Fingeruebung fuer Programmieranfaenger ist...

Vanye

#8003103
Lesenswert?

Vanye R. schrieb:

Naja, ich hab da noch eine schwache Erinnerung das ich das anfang der 90er mal gemacht habe. War aber in TurboPascal und Teil meines MCS48 Emulators. Aber natuerlich, es ist schon mehr Arbeit als irgendwo im Internet eine Software zu finden.

Ja und du willst ja nicht nur die Grundfunktionen. Der von mir verwendete Editor hat enorm viele sinnvolle Funktionen. Warum sollte man das Rad neu erfinden wenn man nur das Tool braucht.

Ich habe den Eindruck gerade Leute wie Rbx die eben wirklich null Erfahrung in der Anwendungsentwicklung haben, hauen mal kurz so einen Unsinn raus wie "kann man kurz selbst machen".

Ich denke aber schon das dies eine gute Fingeruebung fuer Programmieranfaenger ist...

Ohne Zweifel. Aber das Ergebnis würde kaum jemand produktiv nutzen wollen.

: Bearbeitet durch User
#8003111
Lesenswert?

Cyblord -. schrieb:

Kannst ja mal versuchen. Das wirklich gut zu machen, vor allem GUI seitig, ist aufwändiger als du denken würdest

Für Windows oder für Linux? Bei Windows gibt es ja zur Not das GDI - während bei Linux nicht ganz sicher ist, für welche Plattform eigentlich. Bietet sich ja eigentlich an, mal was mit Rust zu versuchen, aber da muss ich erstmal schauen.. (oder irgendwie was mit html? (https://stan-kondrat.github.io/js-hex-editor/?path=/story/hexeditor-docs--page))

Cyblord -. schrieb:

Ich habe den Eindruck gerade Leute wie Rbx

Ich habe den Eindruck, das so Leute wie Cyblord mit viel zu hohen und unrealistischen Erwartungen ankommen - was hinsichtlich der Softwareentwicklung kein so fremdes Erleben ist. Bleib mal auf dem Teppich Alter.

#8003116
Lesenswert?

Rbx schrieb:

Cyblord -. schrieb:

Kannst ja mal versuchen. Das wirklich gut zu machen, vor allem GUI seitig, ist aufwändiger als du denken würdest

Für Windows oder für Linux?

Spielt keine Rolle. Mein Aussage ist universell korrekt.

Bei Windows gibt es ja zur Not das GDI - während bei Linux nicht ganz sicher ist, für welche Plattform eigentlich. Bietet sich ja eigentlich an, mal was mit Rust zu versuchen, aber da muss ich erstmal schauen..

Oh ja dann schau mal.... Klingt wirklich so als wärst du gleich morgen fertig. Wenn du erst mal noch OS und Sprache sorgfältig auswählen musst. Bist ein Typischer Schwätzer.

Ich habe den Eindruck, das so Leute wie Cyblord mit viel zu hohen und unrealistischen Erwartungen ankommen

Was meinst du mit unrealistische Erwartungen? Grade ging es noch um MINIMALFUNKTIONEN. Jetzt ist das schon unrealistisch?

DEINE Aussage war doch:

Eigentlich kann man sich einen einfachen Hexeditor auch selber schreiben bzw. programmieren. So schwierig ist das nicht..

: Bearbeitet durch User
(Firma: Privat) #8003175
Lesenswert?

von Cyblord - schrieb:

Die Minimalfunktion eines HEX Editors ist die Byteweise Darstellung von Daten

Das geht in Linux am einfachsten im Befehlsfenster mit der Befehlszeile:

xxd -u -g1 Datei.bin

Und wenn man da drinn irgendwelche Bytes änder will, dann macht man:

xxd -u --g1 Datei.bin > Datei.bin.txt

Und nimmt einen beliebigen Texteditor und bearbeitet die Datei "Datei.bin.txt".

Und macht anschließend daraus wieder eine echte Binärdatei mit:

rm Datei.bin xxd -r Datei.bin.txt Datei.bin

Dagegen ist aber Intel-HEX was ganz anderes. Diese Datei ist zwar auch mit einen Texteditor lesbar, enthält aber zusätzliche Prüfsummeninformationen.

https://de.wikipedia.org/wiki/Intel_HEX

Gast #8003249
Lesenswert?

Rbx schrieb:

Bei Windows gibt es ja zur Not das GDI - während bei Linux nicht ganz sicher ist, für welche Plattform eigentlich. Bietet sich ja eigentlich an, mal was mit Rust zu versuchen, aber da muss ich erstmal schauen.. (oder irgendwie was mit html?

Gegen das GDI programmiert heute kein Mensch mehr. Und was bitte hat Rust mit dem Thema UI zu tun? Da hat man mal das Wort "Rust" aufgeschnappt, und dass es der neue heiße Scheiß sei, da kann man es ja einfach mal in die Runde werfen <kopfschüttel>

btw.: unter Linux gibt es mehrere Optionen. z.B. Qt, wxWidgets, SWT etc.; dann kann man natürlich auch heute noch in Java entwickeln, mit JavaFX als GUI-Framework. Auch für Python gibt es einige UI-Frameworks bzw. API-Layer. Oder dann halt direkt als Web-Anwendung. Allerdings würde ich das auch aktuell eher nicht in Betracht ziehen.

ciao

Marci

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren