on 64 bit machines, most of the prototypes need to be explicitly declared since void pointers are no longer the same size as integers.