Aira Force est un outil d’analyse et de rétro-ingénierie des logiciels classiques de l’Amiga 680×0. Il permet de désassembler les binaires et de les étudier. L’objectif principal de ce projet est de fournir une interface utilisateur graphique au-dessus du « réassembleur » ira afin d’accélérer le flux de travail.
Aira Force comprend également un émulateur OCS Amiga de base et un débogueur, qui peuvent être utilisés pour l’analyse dynamique.
Aira Force met en Å“uvre le « réassemblage » en utilisant le désassembleur ira et l’assembleur vasm. Ira transforme l’exécutable source ou le binaire brut en code source en langage d’assemblage, puis vasm assemble le code source. Le binaire de sortie doit être identique (ou équivalent) au binaire d’entrée.
Ce processus permet à l’utilisateur d’analyser et d’annoter efficacement le code source, avant d’apporter les modifications nécessaires au désassemblage généré et de construire un binaire corrigé. Il peut être utile pour corriger des bogues, ajouter des fonctionnalités, optimiser le code ou faire de l’archéologie logicielle.
Les changements:
– Add: Amiga CIA 8520 emulation
– Add: Amiga Sprite emulation (no collisions)
– Add: Amiga Hires playfield emulation (buggy)
– Add: Amiga blitter emulation (copy, line but no fill)
– Add: Amiga interrupt emulation
– Add: Amiga bitplane, sprite, copper and disk DMA emulation
– Add: Amiga copper emulation
– Add: Amiga DSKSYNC register emulation (trackloader support)
– Add: Amiga disk controller emulation
– Add: Amiga Mouse, joystick and keyboard emulation
– Add: Amiga ADF disk support
– Add: Amiga Kickstart 1.2/1.3 ROM emulation support
– Add: Many logging options
– Add: USB joystick support
– Add: CIA window
– Add: Amiga Copper (disassembly) window
– Add: Amiga Exec (OS) window
– Add: Dynamic Analysis window (replaces LiveAnalysis window)
– Add: Floppy drives window with ADF, MFM, disk visualisation
– Add: Memory disassembly window
– Add: Memory viewer (visualiser) Window
– Add: TypeInfo window (see included *.json)
– Add: Watch window(s) with type info support
– Add: UI to set breakpoint by address
– Add: Break when PC in RAM option
– Add: Break on vertical blank option
– Add: Break on system call option
– Add: CPU history window
– Add: Watchpoints window
– Add: Disassembler external symbols support and window
– Add: FIXLABELS disassembler option (default: disabled)
– Add: Configurable host input options (pad, keys, mouse)
– Improve: Amiga Window (lots more state)
– Improve: Update to ira V2.11
– Improve: Update vasm to 2.0a
– Improve: Update dear imgui to v1.91.4
– Improve: Video window DMA overlay
– Improve: Add filter to Equates Window
– Improve: Live Analysis is now Dynamic analysis
– Fix: Preserve leading whitespace in comments and banners
– Fix: Pressing E on label causes crash
– Fix: Leading whitespace preserved in banners
– Fix: Filenames containing whitespace support on Linux
– Fix: Store imgui.ini in user folder (guaranteed writable)
– Fix: Bugs in 68000 (CHK, DIVU, DIVS, ASR.x, LINK A7, and MOVE to SR instructions)
– Fix: Include CR when searching for text