This document outlines the format and behavior of PIGBARF. PIGBARF is a parser generator in the style of YACC or Bison, but instead of parsing text files it is designed to parse binary data files. PIGBARF is designed to parse binary data in any format, with any byte-ordering or bit-ordering. A PIGBARF specification compiles down to a Java source program that defines the code necessary to parse the given binary data format. The resulting Java program will extend the pigbarf.AbstractParser class, and hence it must be run with the main PIGBARF jarfile on the classpath.