vAVRdisasm è un programma di AVR disassemblatore. Il progetto sostiene tutte le 136 istruzioni AVR come definito dal set di istruzioni Atmel AVR, revisione 0856E-AVR-05/11.
Questo singolo passaggio disassembler in grado di gestire Atmel generico, Intel HEX8, e Motorola S-Record file formattati contenenti programmi binari AVR validi.
vAVRdisasm dovrebbe funzionare su più piattaforme * nix, che include un ambiente Cygwin. vAVRdisasm è stato scritto in C da Vanya A. Sergeev - vsergeev a gmail, e testato con GNU C Compiler
Caratteristiche
- <. li> Stampare gli indirizzi di istruzione accanto smontaggio, attivata per impostazione predefinita li>
- Stampa delle osservazioni di destinazione dei relativi istruzioni ramo / jump / call, abilitato di default
- Etichette Ghetto indirizzi (vedi & quot; Ghetto Indirizzo Labels & quot; sezione)
- Formattazione costanti dati in basi diverse (esadecimale, binario, decimale)
- .DW direttiva parola dati per i dati non riconosciuto come istruzione in fase di smontaggio.
Cosa c'è di nuovo in questa versione:
- formattazione indirizzo Cambiato operando per LDS, STS, JMP, e istruzioni CALL da addreses byte agli indirizzi di parole, per rendere l'uscita di vAVRdisasm compatibile con assemblatori AVR.
- fissi decodifica ramo / jump relativa firmato: salta in direzione opposta sono ora decodificati correttamente .
- Grazie a Graham Carnell per queste due correzioni!
- licenza aggiornato da GPLv2 a GPLv3.
Cosa c'è di nuovo nella versione 1.8:
- decodifica indirizzo è stato fissato per LDS, STS, JMP, e istruzioni CALL.
- Una modifica nella versione precedente, in cui sono stati raddoppiati gli indirizzi perché lo smontaggio è byte indicizzata è stata invertita.
- è stato aggiunto il supporto per XCH, LAS, LAC, e le istruzioni LAT, portando il disassembler aggiornato con AVR Instruction Set revisione 0856I -. 07/10
Cosa c'è di nuovo nella versione 1.6:
- Risolto il campo di numero-di-operandi per l'istruzione SPM . Questo problema è stato causato vAVRdisasm il crash come è stato il tentativo di formattare un operando inesistente durante lo smontaggio.
- Aggiornato il README.
Cosa c'è di nuovo nella versione 1.5:
- Il sostegno è stato aggiunto per DES, SPM # 2, LDS ( 16-bit), e STS (16 bit) istruzioni, portando il disassembler per sostenere l'istruzione AVR istituito per la revisione 0856H -. 04/09
- I file di origine sono stati rinominati per avere più senso e per una migliore organizzazione del codice.
Cosa c'è di nuovo in versione 1.4:
- file_disasm.c, libGIS: trattamento fisso di nuove righe (a volte si trova alla fine del file di programma) in modo un & quot; record non valido & quot; errore non viene visualizzato quando una nuova riga si legge.
- file_disasm.c: CRITICAL FIX: lettura fisso e lo smontaggio di strane registrazioni di lunghezza byte in esadecimale Intel e Motorola file S-Record. Un ringraziamento speciale a Ahmed per la scoperta e la patch!
Cosa c'è di nuovo nella versione 1.3:
- Questa versione corregge alcuni bug minori e un bug critico: il calcolo dell'indirizzo assoluto, che viene utilizzato in alcune istruzioni (come salto assoluto).
- Le versioni precedenti hanno dimostrato indirizzi assoluti che non sono stati moltiplicati per due (per tenere conto della dimensione di istruzioni a 16-bit), e quindi non visualizzare l'indirizzo assoluto corretto. Questo è stato risolto.
I commenti non trovato