- Standalone Python disassembler for 24-bit ADSP-219x instructions - Complete instruction set reference (PDFs + extracted text) - Architecture documentation and getting-started guide - Test ROM generator with packed (3-byte) and padded (4-byte) formats - r2pipe-based analysis script for radare2 integration
1.2 KiB
1.2 KiB
ADSP-219x Analysis Workflow (Air-Gapped 🛡️)
Phase 1: Preparation (Online)
- Download and Copy: Ensure the entire
adsp219x-re/folder is on the air-gapped machine. - Setup Dependencies: Ensure Python 3.8+ is installed. Radare2 must be on $PATH.
- Verify Python:
python3 -m pip install r2pipe(if not already part of your r2 install).
Phase 2: Loading ROMs
Use raw loading for ADSP-2191 ROMs:
r2 -a adsp2 -b 24 -m 0x0 my_rom.bin
(Note: -a and -b are placeholders until a native plugin exists. We use raw mode.)
Phase 3: Automated Disassembly
Run the standalone disassembler first to get a quick overview:
python3 disassembler/adsp219x_disasm.py my_rom.bin 3 > disassembly.txt
Phase 4: Radare2 + Iaito Integration
To use our custom Python disassembly inside radare2:
- Open the ROM in radare2.
- Run the analysis script via r2pipe:
#!python analysis/analyze_rom.py(Inside r2:#!pipe python3 ...) - Use
iaitoto browse the memory with the comments generated by the script.
Phase 5: Debugging/Validation
Compare your proprietary ROM against our test ROMs in testrom/test_roms/.
If you find a new instruction type, add it to disassembler/adsp219x_disasm.py and submit!