; AUTOGENERATED by scripts/genGnoKernel.py — DO NOT EDIT by hand.
;
; GNO/ME kernel toolset $03 wrappers.
; Dispatcher: JSL $E10008 (GNO's udispatch vector) with LDX #funcId.
;
; C ABI: arg0 (i16) in A, arg0 (i32) in A:X, arg1+ on stack
; (caller-pushed, lo-word first for 32-bit values).
; Each wrapper re-pushes args in Pascal order (high-word first
; for 32-bit), allocates result space, dispatches, pops result.

	.text

; Kgetpid(void) -> i16
; toolset 3, func 0x0903
	.section .text.Kgetpid,"ax"
	.globl Kgetpid
Kgetpid:
	; --- result space (2 bytes) ---
	pea 0
	ldx #0x0903
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kkill(i16, i16, i32) -> i16
; toolset 3, func 0x0A03
	.section .text.Kkill,"ax"
	.globl Kkill
Kkill:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (2B) ---
	lda 8, s
	pha
	; --- arg2 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x0A03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kfork(i32, i32) -> i16
; toolset 3, func 0x0B03
	.section .text.Kfork,"ax"
	.globl Kfork
Kfork:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	ldx #0x0B03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kgetpid_dup(void) -> i16
; toolset 3, func 0x0903
	.section .text.Kgetpid_dup,"ax"
	.globl Kgetpid_dup
Kgetpid_dup:
	; --- result space (2 bytes) ---
	pea 0
	ldx #0x0903
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kgetppid(i32) -> i16
; toolset 3, func 0x4003
	.section .text.Kgetppid,"ax"
	.globl Kgetppid
Kgetppid:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	ldx #0x4003
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kwait(i32, i32) -> i16
; toolset 3, func 0x1703
	.section .text.Kwait,"ax"
	.globl Kwait
Kwait:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	ldx #0x1703
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; K_execve(i32, i32, i32) -> i16
; toolset 3, func 0x1D03
	.section .text.K_execve,"ax"
	.globl K_execve
K_execve:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	; --- arg2 (4B) ---
	lda 20, s
	pha
	lda 20, s
	pha
	ldx #0x1D03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ksignal(i16, i32, i32) -> i32
; toolset 3, func 0x1603
	.section .text.Ksignal,"ax"
	.globl Ksignal
Ksignal:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (4 bytes) ---
	pea 0
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	; --- arg2 (4B) ---
	lda 20, s
	pha
	lda 20, s
	pha
	ldx #0x1603
	jsl 0xe10008
	pla              ; result lo -> A
	plx              ; result hi -> X
	rtl

; Kalarm(i32, i32) -> i32
; toolset 3, func 0x1E03
	.section .text.Kalarm,"ax"
	.globl Kalarm
Kalarm:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (4 bytes) ---
	pea 0
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x1E03
	jsl 0xe10008
	pla              ; result lo -> A
	plx              ; result hi -> X
	rtl

; Kalarm10(i32, i32) -> i32
; toolset 3, func 0x4203
	.section .text.Kalarm10,"ax"
	.globl Kalarm10
Kalarm10:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (4 bytes) ---
	pea 0
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x4203
	jsl 0xe10008
	pla              ; result lo -> A
	plx              ; result hi -> X
	rtl

; Ksigpause(i32, i32) -> i16
; toolset 3, func 0x2103
	.section .text.Ksigpause,"ax"
	.globl Ksigpause
Ksigpause:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	ldx #0x2103
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ksigsetmask(i32, i32) -> i32
; toolset 3, func 0x1B03
	.section .text.Ksigsetmask,"ax"
	.globl Ksigsetmask
Ksigsetmask:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (4 bytes) ---
	pea 0
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x1B03
	jsl 0xe10008
	pla              ; result lo -> A
	plx              ; result hi -> X
	rtl

; Ksigblock(i32, i32) -> i32
; toolset 3, func 0x1C03
	.section .text.Ksigblock,"ax"
	.globl Ksigblock
Ksigblock:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (4 bytes) ---
	pea 0
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x1C03
	jsl 0xe10008
	pla              ; result lo -> A
	plx              ; result hi -> X
	rtl

; Kscreate(i16, i32) -> i16
; toolset 3, func 0x0F03
	.section .text.Kscreate,"ax"
	.globl Kscreate
Kscreate:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x0F03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kswait(i16, i32) -> i16
; toolset 3, func 0x0D03
	.section .text.Kswait,"ax"
	.globl Kswait
Kswait:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x0D03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kssignal(i16, i32) -> i16
; toolset 3, func 0x0E03
	.section .text.Kssignal,"ax"
	.globl Kssignal
Kssignal:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x0E03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kdup(i16, i32) -> i16
; toolset 3, func 0x2203
	.section .text.Kdup,"ax"
	.globl Kdup
Kdup:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x2203
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kdup2(i16, i16, i32) -> i16
; toolset 3, func 0x2303
	.section .text.Kdup2,"ax"
	.globl Kdup2
Kdup2:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (2B) ---
	lda 8, s
	pha
	; --- arg2 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x2303
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kpipe(i32, i32) -> i16
; toolset 3, func 0x2403
	.section .text.Kpipe,"ax"
	.globl Kpipe
Kpipe:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	ldx #0x2403
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kioctl(i16, i32, i32, i32) -> i16
; toolset 3, func 0x2603
	.section .text.Kioctl,"ax"
	.globl Kioctl
Kioctl:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	; --- arg2 (4B) ---
	lda 18, s
	pha
	lda 18, s
	pha
	; --- arg3 (4B) ---
	lda 26, s
	pha
	lda 26, s
	pha
	ldx #0x2603
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kstat(i32, i32, i32) -> i16
; toolset 3, func 0x2703
	.section .text.Kstat,"ax"
	.globl Kstat
Kstat:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	; --- arg2 (4B) ---
	lda 20, s
	pha
	lda 20, s
	pha
	ldx #0x2703
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kfstat(i16, i32, i32) -> i16
; toolset 3, func 0x2803
	.section .text.Kfstat,"ax"
	.globl Kfstat
Kfstat:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	; --- arg2 (4B) ---
	lda 18, s
	pha
	lda 18, s
	pha
	ldx #0x2803
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Klstat(i32, i32, i32) -> i16
; toolset 3, func 0x2903
	.section .text.Klstat,"ax"
	.globl Klstat
Klstat:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	; --- arg2 (4B) ---
	lda 20, s
	pha
	lda 20, s
	pha
	ldx #0x2903
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kgetuid(i32) -> i16
; toolset 3, func 0x2A03
	.section .text.Kgetuid,"ax"
	.globl Kgetuid
Kgetuid:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	ldx #0x2A03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kgetgid(i32) -> i16
; toolset 3, func 0x2B03
	.section .text.Kgetgid,"ax"
	.globl Kgetgid
Kgetgid:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	ldx #0x2B03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kgeteuid(i32) -> i16
; toolset 3, func 0x2C03
	.section .text.Kgeteuid,"ax"
	.globl Kgeteuid
Kgeteuid:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	ldx #0x2C03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kgetegid(i32) -> i16
; toolset 3, func 0x2D03
	.section .text.Kgetegid,"ax"
	.globl Kgetegid
Kgetegid:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	ldx #0x2D03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ksetuid(i16, i32) -> i16
; toolset 3, func 0x2E03
	.section .text.Ksetuid,"ax"
	.globl Ksetuid
Ksetuid:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x2E03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ksetgid(i16, i32) -> i16
; toolset 3, func 0x2F03
	.section .text.Ksetgid,"ax"
	.globl Ksetgid
Ksetgid:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x2F03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ktcnewpgrp(i16, i32) -> i16
; toolset 3, func 0x1803
	.section .text.Ktcnewpgrp,"ax"
	.globl Ktcnewpgrp
Ktcnewpgrp:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x1803
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ksettpgrp(i16, i32) -> i16
; toolset 3, func 0x1903
	.section .text.Ksettpgrp,"ax"
	.globl Ksettpgrp
Ksettpgrp:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x1903
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ktctpgrp(i16, i16, i32) -> i16
; toolset 3, func 0x1A03
	.section .text.Ktctpgrp,"ax"
	.globl Ktctpgrp
Ktctpgrp:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (2B) ---
	lda 8, s
	pha
	; --- arg2 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x1A03
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; K_getpgrp(i16, i32) -> i16
; toolset 3, func 0x2503
	.section .text.K_getpgrp,"ax"
	.globl K_getpgrp
K_getpgrp:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 10, s
	pha
	lda 10, s
	pha
	ldx #0x2503
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ksetpgrp(i16, i16, i32) -> i16
; toolset 3, func 0x3403
	.section .text.Ksetpgrp,"ax"
	.globl Ksetpgrp
Ksetpgrp:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (2B) ---
	lda 8, s
	pha
	; --- arg2 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x3403
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kkvm_open(i32) -> i16
; toolset 3, func 0x1103
	.section .text.Kkvm_open,"ax"
	.globl Kkvm_open
Kkvm_open:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	ldx #0x1103
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Kkvm_close(i32, i32) -> i16
; toolset 3, func 0x1203
	.section .text.Kkvm_close,"ax"
	.globl Kkvm_close
Kkvm_close:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (2 bytes) ---
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 12, s
	pha
	lda 12, s
	pha
	ldx #0x1203
	jsl 0xe10008
	pla              ; result lo -> A
	rtl

; Ktimes(i32, i32) -> i32
; toolset 3, func 0x3503
	.section .text.Ktimes,"ax"
	.globl Ktimes
Ktimes:
	; --- stash arg0 (in A/X) ---
	sta 0xE0
	stx 0xE2
	; --- result space (4 bytes) ---
	pea 0
	pea 0
	; --- arg0 ---
	lda 0xE2
	pha
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 14, s
	pha
	lda 14, s
	pha
	ldx #0x3503
	jsl 0xe10008
	pla              ; result lo -> A
	plx              ; result hi -> X
	rtl

; KSetGNOQuitRec(i16, i32, i16, i32) -> void
; toolset 3, func 0x4103
	.section .text.KSetGNOQuitRec,"ax"
	.globl KSetGNOQuitRec
KSetGNOQuitRec:
	; --- stash arg0 (in A) ---
	sta 0xE0
	; --- arg0 ---
	lda 0xE0
	pha
	; --- arg1 (4B) ---
	lda 8, s
	pha
	lda 8, s
	pha
	; --- arg2 (2B) ---
	lda 14, s
	pha
	; --- arg3 (4B) ---
	lda 20, s
	pha
	lda 20, s
	pha
	ldx #0x4103
	jsl 0xe10008
	rtl
