AmigaChromeA new chapter for the Amiga

API docs / Open libraries / dos.library

API · Libraries

dos.library jump table

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

dos.library's jump table, as OpenDOS will build it: LVO, call, registers. Checked on 13 October 2026: build-amiga.sh (with ../common/check_fd.py) compares it with the NDK 3.2 dos_lib.fd (47.1) in the stove and stops on any difference, and it matches: -30 to -996 as written first (the 8 private slots -162, -168, -486, -852, -864, -924, -960 and -978 are the fd's too), then OS 3.2's V47 slots to -1158, 189 in all. The V47 slots were added from the fd's names, registers and order. "D1 core" marks the calls whose work slice D1's core does (libraries/ opendos/dos_*.cpp); the face (jump table, registers, the library base) is D2. LoadSeg, NewLoadSeg and InternalLoadSeg open or take the file and hand it to the core's hunk parser; DateStamp reads the timer through the env. Core class (OPEN_LIBRARIES.md, section 5): the D1 calls are pure (or pure on the caller's own handles); every lock, file, packet, process, CLI, assign, DosList, notification and variable call is anchored (dos's process and filesystem state), reached from other cores as a message to CPU0.

189 slots, 161 public
LVOCallRegistersNotes
-30Opend1, d2
-36Closed1
-42Readd1, d2, d3
-48Writed1, d2, d3
-54Inputnone
-60Outputnone
-66Seekd1, d2, d3
-72DeleteFiled1
-78Renamed1, d2
-84Lockd1, d2
-90UnLockd1
-96DupLockd1
-102Examined1, d2
-108ExNextd1, d2
-114Infod1, d2
-120CreateDird1
-126CurrentDird1
-132IoErrnone
-138CreateProcd1, d2, d3, d4
-144Exitd1
-150LoadSegd1D1 core
-156UnLoadSegd1D1 core
-162privatenone
-168privatenone
-174DeviceProcd1
-180SetCommentd1, d2
-186SetProtectiond1, d2
-192DateStampd1D1 core
-198Delayd1
-204WaitForChard1, d2
-210ParentDird1
-216IsInteractived1
-222Executed1, d2, d3
-228AllocDosObjectd1, d2
-234FreeDosObjectd1, d2
-240DoPktd1, d2, d3, d4, d5, d6, d7
-246SendPktd1, d2, d3
-252WaitPktnone
-258ReplyPktd1, d2, d3
-264AbortPktd1, d2
-270LockRecordd1, d2, d3, d4, d5
-276LockRecordsd1, d2
-282UnLockRecordd1, d2, d3
-288UnLockRecordsd1
-294SelectInputd1
-300SelectOutputd1
-306FGetCd1
-312FPutCd1, d2
-318UnGetCd1, d2
-324FReadd1, d2, d3, d4
-330FWrited1, d2, d3, d4
-336FGetsd1, d2, d3
-342FPutsd1, d2
-348VFWritefd1, d2, d3D1 core
-354VFPrintfd1, d2, d3D1 core
-360Flushd1
-366SetVBufd1, d2, d3, d4
-372DupLockFromFHd1
-378OpenFromLockd1
-384ParentOfFHd1
-390ExamineFHd1, d2
-396SetFileDated1, d2
-402NameFromLockd1, d2, d3
-408NameFromFHd1, d2, d3
-414SplitNamed1, d2, d3, d4, d5D1 core
-420SameLockd1, d2
-426SetModed1, d2
-432ExAlld1, d2, d3, d4, d5
-438ReadLinkd1, d2, d3, d4, d5
-444MakeLinkd1, d2, d3
-450ChangeModed1, d2, d3
-456SetFileSized1, d2, d3
-462SetIoErrd1
-468Faultd1, d2, d3, d4
-474PrintFaultd1, d2
-480ErrorReportd1, d2, d3, d4
-486privatenone
-492Clinone
-498CreateNewProcd1
-504RunCommandd1, d2, d3, d4
-510GetConsoleTasknone
-516SetConsoleTaskd1
-522GetFileSysTasknone
-528SetFileSysTaskd1
-534GetArgStrnone
-540SetArgStrd1
-546FindCliProcd1
-552MaxClinone
-558SetCurrentDirNamed1
-564GetCurrentDirNamed1, d2
-570SetProgramNamed1
-576GetProgramNamed1, d2
-582SetPromptd1
-588GetPromptd1, d2
-594SetProgramDird1
-600GetProgramDirnone
-606SystemTagListd1, d2
-612AssignLockd1, d2
-618AssignLated1, d2
-624AssignPathd1, d2
-630AssignAddd1, d2
-636RemAssignListd1, d2
-642GetDeviceProcd1, d2
-648FreeDeviceProcd1
-654LockDosListd1
-660UnLockDosListd1
-666AttemptLockDosListd1
-672RemDosEntryd1
-678AddDosEntryd1
-684FindDosEntryd1, d2, d3
-690NextDosEntryd1, d2
-696MakeDosEntryd1, d2
-702FreeDosEntryd1
-708IsFileSystemd1
-714Formatd1, d2, d3
-720Relabeld1, d2
-726Inhibitd1, d2
-732AddBuffersd1, d2
-738CompareDatesd1, d2D1 core
-744DateToStrd1D1 core
-750StrToDated1D1 core
-756InternalLoadSegd0, a0, a1, a2D1 core
-762InternalUnLoadSegd1, a1D1 core
-768NewLoadSegd1, d2D1 core
-774AddSegmentd1, d2, d3
-780FindSegmentd1, d2, d3
-786RemSegmentd1
-792CheckSignald1
-798ReadArgsd1, d2, d3D1 core
-804FindArgd1, d2D1 core
-810ReadItemd1, d2, d3D1 core
-816StrToLongd1, d2D1 core
-822MatchFirstd1, d2
-828MatchNextd1
-834MatchEndd1
-840ParsePatternd1, d2, d3D1 core
-846MatchPatternd1, d2D1 core
-852privatenone
-858FreeArgsd1D1 core
-864privatenone
-870FilePartd1D1 core
-876PathPartd1D1 core
-882AddPartd1, d2, d3D1 core
-888StartNotifyd1
-894EndNotifyd1
-900SetVard1, d2, d3, d4
-906GetVard1, d2, d3, d4
-912DeleteVard1, d2
-918FindVard1, d2
-924privatenone
-930CliInitNewclia0
-936CliInitRuna0
-942WriteCharsd1, d2
-948PutStrd1
-954VPrintfd1, d2
-960privatenone
-966ParsePatternNoCased1, d2, d3D1 core
-972MatchPatternNoCased1, d2D1 core
-978privatenone
-984SameDeviced1, d2
-990ExAllEndd1, d2, d3, d4, d5
-996SetOwnerd1, d2
-1002privatenone
-1008privatenone
-1014VolumeRequestHookd1the default hook: -1
-1020privatenone
-1026GetCurrentDirnone
-1032privatenone
-1038privatenone
-1044privatenone
-1050privatenone
-1056privatenone
-1062privatenone
-1068privatenone
-1074privatenone
-1080privatenone
-1086privatenone
-1092privatenone
-1098privatenone
-1104privatenone
-1110privatenone
-1116privatenone
-1122privatenone
-1128PutErrStrd1
-1134ErrorOutputnone
-1140SelectErrord1
-1146privatenone
-1152DoShellMethodTagListd0, a0D5 (the Shell): 0, ERROR_NOT_IMPLEMENTED
-1158ScanStackTokend1, d2