Asuro Hexfiles

Ein Hexfile dient zum Speichern von binären Daten in einem Textfile. In Hexfiles beginnt jede Zeile mit einem ':' gefolgt von einer variablen Anzahl von hexadezimal kodierten Bytes. In den Hexfiles des Asuro treten nur 2 der 6 möglichen Typen aus der Intel Hexadecimal Object File Format Specification auf, Datensatz und Dateiende.

Datensatz

ByteWert
1L[Länge]
2..3A[Ladeadresse]
4'00'["Datensatz"]
5..(4+L)Daten[für Adressen A..(A+L-1)]
(5+L)P[Prüfsumme]
  

Berechnung der Prüfsumme:

uint8_t R[],P,L;  uint16_t u;

for(P=0,L=R[1],u=1; u<=(4+L); ++u) 
  P-=R[u];

Dateiende

ByteWert
1'00'
2..3'0000'
4'01'["Dateiende"]
5'FF'[Prüfsumme]

Beispiel eines Asuro-Hexfiles

Ausschnitt eines Asuro-Hexfiles (links Original, rechts aufgeschlüsselt ohne Daten):

                                                        L    A  T Daten  P
                                                       -- ---- -- ----- --
:1000000012C02BC01FC129C0ECC027C026C025C00C          : 10 0000 00 ..... 0C
:1000100024C023C022C021C020C01FC02AC11DC0CF          : 10 0010 00 ..... CF
...

...
:1006100038F450954095309521953F4F4F4F5F4F9F          : 10 0610 00 ..... 9F
:100620000895F6F790958095709561957F4F8F4F5F          : 10 0620 00 ..... 5F
:040630009F4F08953B                                  : 04 0630 00 ..... 3B
:1006340020202020202052414D454E443A20000DD8          : 10 0634 00 ..... D8
:100644000A0020202020205852414D454E443A2093          : 10 0644 00 ..... 93
:1006540000202020202020204532454E443A20000E          : 10 0654 00 ..... 0E
:1006640020202020464C415348454E443A20005314          : 10 0664 00 ..... 14
:10067400504D5F5041474553495A453A20003A0D81          : 10 0674 00 ..... 81
:020684000A006A                                      : 02 0684 00 ..... 6A
:00000001FF                                          : 00 0000 01       FF

Weiterführende Links

Disassemblieren mittels Send To