I didn't write this. Indeed, I don't know who did. But it's a very useful program.

Modified it to allow large chunk sizes, using a long long.  Also modified to use
a BLOCK_SIZE of 1024 bytes, instead of reading 1 byte at a time.  This should be
much faster, albeit less tolerant of strange block sizes.  Indeed, it will error
out if you use a size that isn't evenly divisible by BLOCK_SIZE (currently
1024).

From the comment at the top of the C source:
    Split a binary file into pieces of a specified (or default) size.

    Usage:
            bsplit [[-nnn] [-] filename]

    A -nnn bytecount option sets the split piece size for subsequent
    files.  Stdin is assumed if a bare - is given, or if no files are
    specified.  Multiple filenames may be specified.

    No check is made to see whether the output files (named with the input
    file name and the suffixes "-001", "-002", etc.) exist.