API docs / Open libraries / xpkmaster.library
API · Librariesxpkmaster.library jump table
Our open xpkmaster.library: 14 calls with the same LVOs and registers as AmigaOS 3.2's, checked against the NDK 3.2 .fd file.
xpkmaster.library's jump table, as OpenXpkMaster builds it: LVO, call, registers, from XPK's public xpkmaster_lib.fd (the developer archive's; the NDK has none). build-amiga.sh (with ../common/check_fd.py) checks this against that fd (FD=) and stops on any difference; openxpkmaster_lib.c's lib_vectors[] follows it line for line. Core class (OPEN_LIBRARIES.md, section 5): every call is pure; the work is the caller's (per-call frames and the caller's own XpkOpen handle), files and sub-libraries are reached through dos.library and exec.
| LVO | Call | Registers | Notes |
|---|---|---|---|
| -30 | private | none | XPK's fd starts at bias 36 (lvo/xpkmaster_lib.i: XpkExamine EQU -36); answers 0 |
| -36 | XpkExamine | a0, a1 | |
| -42 | XpkPack | a0 | |
| -48 | XpkUnpack | a0 | |
| -54 | XpkOpen | a0, a1 | |
| -60 | XpkRead | a0, a1, d0 | |
| -66 | XpkWrite | a0, a1, d0 | |
| -72 | XpkSeek | a0, d0, d1 | |
| -78 | XpkClose | a0 | |
| -84 | XpkQuery | a0 | |
| -90 | XpkAllocObject | d0, a0 | |
| -96 | XpkFreeObject | d0, a0 | |
| -102 | XpkPrintFault | d0, a0 | |
| -108 | XpkFault | d0, a0, a1, d1 | |
| -114 | XpkPassRequest | a0 |