BINLens is now documented, tested, manually validated on STM32-style HEX/BIN inputs, and prepared for the v1.0 GitHub release.
Output Polish
Updated the CLI report for stable terminal output:
- clearer input summary
- consistent region, gap, overlap, entropy, and vector-table sections
-
-vnow clearly exposes source chunks and entropy windows -
--heatmaprenders a compact entropy view - unknown input formats now include the input path in the error message
Generated the requested screenshot:
devlogs/ss.png
The PNG is rendered from real binlens output against testfiles/STM32-DEMO.hex.
Hardening
Cleaned up invalid-input behavior:
- case-insensitive
--format - case-insensitive
.hex,.ihex, and.binextension inference - explicit rejection for overly long input paths
- clearer help text for
--baseand-v - raw BIN size guard before allocation
Validated common error cases:
- invalid entropy chunk size
- invalid format
- bad Intel HEX checksum
- missing input file
Documentation
Updated:
README.mdPRD.mdARCHITECTURE.mdCONTRIBUTING.md
Added:
TESTING.md
The docs now describe the actual v1 behavior instead of the early scaffold state.
Test Corpus
The fixture set now covers:
- minimal Intel HEX
- extended linear address
- extended segment address
- bad checksum
- record after EOF
- STM32-like vector table image
The test workflow is documented in TESTING.md.
Manual Validation
Validated real STM32 HEX:
testfiles/STM32-DEMO.hex
Converted it to raw BIN with objcopy and validated:
build/manual/STM32-DEMO.bin
Both paths detected:
- address span
0x08000000 - 0x08001E2F - high-confidence vector table at
0x08000000 - reset handler target inside loaded firmware
- entropy heatmap output
Build Checks
Native Windows GCC:
test_bin_loader: ok
test_entropy: ok
test_hex_parser: ok
test_memmap: ok
test_smoke: ok
test_vector_table: ok
Docker Linux:
make clean
make test
make
Docker/Zig macOS check:
- Mach-O x86_64 binary produced
- Mach-O arm64 binary produced
Docker initially had a Desktop engine error and was recovered by restarting Docker Desktop.
Release State
Released on GitHub with compiled binaries for Windows and Linux.
https://github.com/DevaanshPathak/BINLens/releases/tag/v1.0
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.