HPI shared library
ported to the Macintosh by Bruce Payan
(with many thanks to Joe D for the PC version)

HPIUtilLib is a shared library for programmers interested in developing software that would previously be based upon Joe D's set of TA utilities for the PC. Some examples of such software are HPIPack, HPIView, HPIDump or the Annihilator map editor by Kinboat.

If you'd like a copy of my shared library (which is a work in progress) let me know.

For your information, here are the currently supported routines within HPIUtilLib.

void WINAPI GetTADirectory(LPSTR TADir);

LPVOID WINAPI HPIOpen(LPSTR FileName);

LRESULT WINAPI HPIGetFiles(HPIFILE *hpi, long Next, LPSTR Name, LPINT Type, LPINT Size);

LRESULT WINAPI HPIDir(HPIFILE *hpi, long Next, LPSTR DirName, LPSTR Name, LPINT Type, LPINT Size);

LRESULT WINAPI HPIClose(HPIFILE *hpi);

LPSTR WINAPI HPIOpenFile(HPIFILE *hpi, LPSTR FileName);

void WINAPI HPIGet(LPSTR Dest, LPSTR FileHandle, long offset, long bytecount);

LRESULT WINAPI HPICloseFile(LPSTR FileHandle);

LRESULT WINAPI HPIExtractFile(HPIFILE *hpi, LPSTR FileName, LPSTR ExtractName);

LPVOID WINAPI HPICreate(LPSTR FileName, HPICALLBACK Callback);

LRESULT WINAPI HPICreateDirectory(PACKFILE *Pack, LPSTR DirName);

LRESULT WINAPI HPIAddFile(PACKFILE *Pack, LPSTR HPIName, LPSTR FileName);

LRESULT WINAPI HPIAddFileFromMemory(PACKFILE *Pack, LPSTR HPIName, LPSTR FileBlock, long fsize);

LRESULT WINAPI HPIPackArchive(PACKFILE *Pack, long CMethod);

LRESULT WINAPI HPIPackFile(PACKFILE *Pack);