Jamie, you should read about free pascal compiler (fpc) linker's options. It can link with .lib files. And if you create Java SDK, that means you can also create pascal SDK. mmfs2.lib is a .lib file for mmfs2.dll, right? And pascal have funny external feature, that reads directly functions from dll.
//I forgot in which unit is PChar definition
procedure message(text:PChar); external 'samplelibrary';
//this will links procedure message from library samplelibrary.dll.
int = Integer
char (as single character) = char
char (as string) = string
char* = Pchar
Functions and procedures
void function(parameters) = procedure(parameters)
Other typed functions return value of type in Type conversion
And headers can be translated with h2pas or by hand