AmigaChromeA new chapter for the Amiga

API docs / Open libraries / xfdmaster.library

API · Libraries

xfdmaster.library jump table

Our open xfdmaster.library: 22 calls with the same LVOs and registers as AmigaOS 3.2's, checked against the NDK 3.2 .fd file.

xfdmaster.library's jump table, as OpenXfdMaster builds it: LVO, call, registers, and (after #) each call's core class (OPEN_LIBRARIES.md section 5). build-amiga.sh (with ../common/check_fd.py) checks this against the xfdmaster developer archive's xfdmaster_lib.fd and stops on any difference (the NDK has no xfdmaster fd); openxfdmaster_lib.c's lib_vectors[] follows it line for line. The registers of -138 to -150 (V37 and later) are as OpenXfdMaster takes them: ABI test.

22 slots, 22 public
LVOCallRegistersNotes
-30xfdAllocBufferInfononepure
-36xfdFreeBufferInfoa1pure
-42xfdAllocSegmentInfononepure
-48xfdFreeSegmentInfoa1pure
-54xfdRecogBuffera0pure: the slave list is read only after init
-60xfdDecrunchBuffera0pure: the hot path
-66xfdRecogSegmenta0pure
-72xfdDecrunchSegmenta0pure
-78xfdGetErrorTextd0pure: constant strings
-84xfdTestHunkStructurea0, d0pure
-90xfdTestHunkStructureNewa0, d0pure
-96xfdRelocatea0, d0, a1, d1pure
-102xfdTestHunkStructureFlagsa0, d0, d1pure
-108xfdStripHunksa0, d0, a1, d1pure
-114xfdAllocObjectd0pure
-120xfdFreeObjecta1pure
-126xfdRecogLinkera0pure
-132xfdUnlinka0pure
-138xfdScanDataa0, d0, a1, d1, a2pure
-144xfdFreeScanLista1pure
-150xfdObjectTypea1pure
-156xfdInitScanHooka0, a1pure