Skip to content

0.3

Choose a tag to compare

@galmok galmok released this 13 Sep 05:40
· 2 commits to master since this release
428e72b

What's new in 0.3

New: rom_version command

Print the firmware version embedded in a SATA (ASM116x) ROM image:

AsmTool rom_version ASM1166_10250005.ROM
Firmware version: 241025-0000-05

This reads the ROM file directly, so it needs no driver and no admin rights.

flash_info now shows the firmware version

AsmTool flash_info (SATA controllers) now also reports the firmware version
read live from the SPI flash:

Flash chip : ...
JEDEC ID   : ...
Capacity   : ...
Firmware   : 241025-0000-05
BAR0 base  : 0x...

How the version is determined

The ROM carries a small identification block:

[2 pad bytes] [6-byte version] ["2116RAM" name]

The version is a big-endian 48-bit value, reported as YYMMDD-build-rev
(e.g. 241025-0000-05). The unique 2116RAM marker is located by search, so it
works for both 128 KB and 256 KB ROM layouts.

Copyright

The ASM116x SATA files (AsmSataChipTable.cs, AsmSataDevice.cs) are now
correctly attributed to Bernhard Ege <galmok@gmail.com>.

Assets

  • AsmTool-<hash>_windows.zip — Windows x86 (32-bit) build.
  • AsmTool-<hash>_linux.zip — Linux x86-64 build (includes libAsmIoLinux.so).

Drivers (not included)

As with previous releases, the ASMedia driver is not bundled:

  • Windows: you need asmiodll.dll and AsmIo.sys (32-bit) or AsmIo64.sys
    (64-bit). The asmiodll.dll / AsmIo.sys from ASMedia's ASM116x firmware
    updater (RomUpdWin) provide the SATA flash access. Place them next to
    AsmTool.exe.
  • Linux: the build uses the userspace implementation and links libpci
    (install your distribution's libpci / pciutils development package).

Note: the Windows build is 32-bit by design, to interoperate with the 32-bit
ASMedia user-mode DLLs. rom_version works on both platforms and needs no
driver; the SATA flash_read / flash_info commands require the driver and
elevated privileges.