mk90.api

Native API reference

Calling contracts for the services used by built-in native applications.

Version and calling convention

The native file/task/pipe API has build version 2. Native ROM modules use module ABI 3. These are not POSIX interfaces or stable numeric addresses across releases. This reference applies to the specific 0.7 image identified on the validation page.

Calls use PDP-11 JSR PC,@#entry and RTS PC. This public contract describes services; it does not publish the operating-system implementation or supply a loader for external native machine-code files. Built-in native extensions require integration into a new private firmware build.

Routine summary

RoutineGroup0.7 entry address
block_ioblocks0x0FE0
file_abortfiles0x190C
file_closefiles0x191C
file_openfiles0x162E
file_readfiles0x17EC
file_writefiles0x1876
pipe_close_readpipes0x250C
pipe_close_writepipes0x2534
pipe_readpipes0x24A4
pipe_writepipes0x243A
task_beeptasks0x2386
task_datatasks0x232E
task_exittasks0x22FE
task_selftasks0x2328
task_sleeptasks0x21FA
task_spawntasks0x2238
task_yieldtasks0x20C4

Ownership and pointers

Only shell/foreground owners use regular-file services. A task calling native routines must supply valid RAM pointers and preserve its own state across yields. There is no MMU to protect invalid caller buffers. Native blocking routines are not ISR-safe.