piodisasm

A disassembler for the RP2040 Programmable I/O State-machine!

Usage

Just run piodisasm.py on a file that contains the PIO code as hex! (Such as generated by pioasm -o hex).

Examples

  • piodisasm.py --sideset 1 --sideset-optional 1 --sideset-enable 1 examples/differential_manchester_1.hex

Reassembling the generated code should yield a 100% identical hex image!

Options

If the code uses sideset, a couple of options need to be supplied:

  • --sideset – Identical to the value in .side_set
  • --sideset-optional – Identical to the opt flag for .side_set
  • --sideset-pindirs – Identical to the pindirs flag for .side_set
  • --sideset-enable – Value of EXECCTRL_SIDE_EN

GitHub

https://github.com/ghidraninja/piodisasm