2022-07-06 21:18:08 -04:00
|
|
|
;; kernel-defs.gc
|
|
|
|
;; everything defined in the C Kernel / runtime
|
|
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;;;; kscheme - InitHeapAndSymbol
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
|
2022-07-12 18:50:18 -04:00
|
|
|
(defenum kmalloc-flags
|
|
|
|
:bitfield #t
|
|
|
|
(align-16 4)
|
|
|
|
(align-64 6)
|
|
|
|
(align-256 8)
|
|
|
|
(memset 12)
|
|
|
|
(top 13)
|
|
|
|
)
|
|
|
|
|
|
|
|
(defenum link-flag
|
|
|
|
:bitfield #t
|
|
|
|
:type int32
|
|
|
|
(output-load-msg 0)
|
|
|
|
(output-load-true-msg 1)
|
|
|
|
(execute-login 2)
|
|
|
|
(print-login 3)
|
|
|
|
(force-debug 4)
|
|
|
|
(fast-link 5)
|
|
|
|
)
|
|
|
|
|
2022-08-24 00:29:51 -04:00
|
|
|
|
|
|
|
(defenum language-enum
|
|
|
|
:type int64
|
|
|
|
(english)
|
|
|
|
(french)
|
|
|
|
(german)
|
|
|
|
(spanish)
|
|
|
|
(italian)
|
|
|
|
(japanese)
|
|
|
|
(korean)
|
|
|
|
(uk-english)
|
|
|
|
)
|
|
|
|
|
2022-07-06 21:18:08 -04:00
|
|
|
;; fixed symbols
|
|
|
|
(define-extern #f symbol)
|
|
|
|
(define-extern #t symbol)
|
|
|
|
(define-extern function type)
|
|
|
|
(define-extern basic type)
|
|
|
|
(define-extern string type)
|
|
|
|
(define-extern symbol type)
|
|
|
|
(define-extern type type)
|
|
|
|
(define-extern object type)
|
|
|
|
(define-extern link-block type)
|
|
|
|
(define-extern integer type)
|
|
|
|
(define-extern sinteger type)
|
|
|
|
(define-extern uinteger type)
|
|
|
|
(define-extern binteger type)
|
|
|
|
(define-extern int8 type)
|
|
|
|
(define-extern int16 type)
|
|
|
|
(define-extern int32 type)
|
|
|
|
(define-extern int64 type)
|
|
|
|
(define-extern int128 type)
|
|
|
|
(define-extern uint8 type)
|
|
|
|
(define-extern uint16 type)
|
|
|
|
(define-extern uint32 type)
|
|
|
|
(define-extern uint64 type)
|
|
|
|
(define-extern uint128 type)
|
|
|
|
(define-extern float type)
|
|
|
|
(define-extern process-tree type)
|
|
|
|
(define-extern process type)
|
|
|
|
(define-extern thread type)
|
|
|
|
(define-extern structure type)
|
|
|
|
(define-extern pair type)
|
|
|
|
(define-extern pointer type)
|
|
|
|
(define-extern number type)
|
|
|
|
(define-extern array type)
|
|
|
|
(define-extern vu-function type)
|
|
|
|
(define-extern connectable type)
|
|
|
|
(define-extern stack-frame type)
|
|
|
|
(define-extern file-stream type)
|
|
|
|
(define-extern kheap type)
|
|
|
|
(define-extern nothing (function none))
|
|
|
|
(define-extern delete-basic (function basic none))
|
|
|
|
(define-extern static symbol)
|
|
|
|
(define-extern global kheap)
|
|
|
|
(define-extern debug kheap)
|
|
|
|
(define-extern loading-level kheap) ;; not a kheap at boot
|
|
|
|
(define-extern loading-package kheap) ;; not a kheap at boot
|
|
|
|
(define-extern process-level-heap kheap) ;; not a kheap at boot
|
|
|
|
(define-extern stack symbol)
|
|
|
|
(define-extern scratch symbol)
|
2022-09-02 18:13:38 -04:00
|
|
|
(define-extern *scratch-top* pointer)
|
2022-07-06 21:18:08 -04:00
|
|
|
(define-extern zero-func (function int))
|
|
|
|
|
2022-07-08 19:23:49 -04:00
|
|
|
;; InitHeapAndSymbol
|
|
|
|
(define-extern _format (function _varargs_ object))
|
|
|
|
(define-extern method-set! (function type int object none)) ;; may actually return function.
|
2022-07-12 18:50:18 -04:00
|
|
|
(define-extern kmemopen (function kheap string none))
|
|
|
|
(define-extern kmemclose (function none))
|
2022-07-08 19:23:49 -04:00
|
|
|
|
|
|
|
(define-extern *enable-method-set* int)
|
|
|
|
|
|
|
|
(define-extern *listener-function* (function object))
|
|
|
|
(define-extern *debug-segment* symbol)
|
|
|
|
|
2022-07-12 18:50:18 -04:00
|
|
|
(define-extern dgo-load (function string kheap link-flag int none))
|
|
|
|
(define-extern malloc (function symbol int pointer))
|
2022-09-02 18:13:38 -04:00
|
|
|
(define-extern loado (function string kheap object))
|
|
|
|
(define-extern link (function pointer pointer int kheap int pointer))
|
2022-07-08 19:23:49 -04:00
|
|
|
|
2022-07-12 18:50:18 -04:00
|
|
|
(declare-type cpad-info basic)
|
|
|
|
(define-extern cpad-open (function cpad-info int cpad-info))
|
|
|
|
(define-extern cpad-get-data (function cpad-info cpad-info))
|
2022-07-06 21:18:08 -04:00
|
|
|
|
2022-07-12 18:50:18 -04:00
|
|
|
(declare-type mouse-info basic)
|
|
|
|
(define-extern mouse-get-data (function mouse-info none))
|
|
|
|
|
|
|
|
|
|
|
|
(define-extern scf-get-territory (function int)) ;; not actually a scf function...
|
2022-08-28 16:13:26 -04:00
|
|
|
|
|
|
|
(define-extern scf-get-volume "Defined in the kernel" (function int))
|
|
|
|
(define-extern scf-get-language "Defined in the kernel" (function language-enum))
|
|
|
|
(define-extern scf-get-aspect "Defined in the kernel" (function uint))
|
|
|
|
(define-extern *boot-video-mode* "Defined in the kernel" int)
|
|
|
|
(define-extern *kernel-boot-message* symbol)
|
|
|
|
|
2022-07-12 18:50:18 -04:00
|
|
|
(define-extern __read-ee-timer (function uint))
|
|
|
|
(define-extern __mem-move (function pointer pointer uint none))
|
2022-09-05 20:29:12 -04:00
|
|
|
(define-extern __send-gfx-dma-chain (function object object none))
|
2022-07-12 18:50:18 -04:00
|
|
|
|
2022-08-22 18:53:51 -04:00
|
|
|
(define-extern file-stream-open (function file-stream string symbol file-stream))
|
2022-08-24 00:29:51 -04:00
|
|
|
(define-extern file-stream-close (function file-stream file-stream))
|
2022-07-12 18:50:18 -04:00
|
|
|
(define-extern file-stream-length (function file-stream int))
|
2022-08-24 00:29:51 -04:00
|
|
|
(define-extern file-stream-seek (function file-stream int int int))
|
|
|
|
(define-extern file-stream-read (function file-stream pointer int int))
|
|
|
|
(define-extern file-stream-write (function file-stream pointer uint uint))
|
|
|
|
|
|
|
|
(define-extern reset-path (function none))
|
|
|
|
|
|
|
|
(define-extern install-handler (function int function int))
|
|
|
|
(define-extern flush-cache (function int none))
|
|
|
|
(define-extern gs-store-image (function object object object))
|
|
|
|
(define-extern sync-path (function int int int))
|
|
|
|
|
|
|
|
(define-extern kmalloc (function kheap int kmalloc-flags string pointer))
|
2022-08-28 16:13:42 -04:00
|
|
|
|
|
|
|
(define-extern *kernel-boot-message* symbol)
|
|
|
|
|
2022-08-24 00:29:51 -04:00
|
|
|
(define-extern new-dynamic-structure (function symbol type int structure))
|
2022-07-08 19:23:49 -04:00
|
|
|
|
2022-08-24 00:29:51 -04:00
|
|
|
(define-extern mc-run (function none))
|
|
|
|
(define-extern mc-check-result (function int))
|
|
|
|
(declare-type mc-slot-info structure)
|
|
|
|
(define-extern mc-get-slot-info (function int mc-slot-info none))
|
|
|
|
(define-extern rpc-busy? (function int uint))
|
|
|
|
(define-extern rpc-call (function int uint uint uint int uint int uint))
|
|
|
|
(define-extern string->symbol (function string symbol))
|
2022-07-08 19:23:49 -04:00
|
|
|
|
2022-08-24 21:57:13 -04:00
|
|
|
(define-extern link-begin (function pointer (pointer uint8) int kheap link-flag int))
|
2022-09-16 20:42:33 -04:00
|
|
|
(define-extern link-reset (function none))
|
|
|
|
|
2022-08-24 21:57:13 -04:00
|
|
|
(define-extern kset-language (function language-enum int))
|
|
|
|
(define-extern syncv (function int int))
|
2022-08-26 18:03:48 -04:00
|
|
|
(define-extern __pc-get-mips2c (function string function))
|
2022-08-24 21:57:13 -04:00
|
|
|
|
2022-09-11 14:17:55 -04:00
|
|
|
(define-extern dma-sync (function pointer int int int))
|
|
|
|
|
|
|
|
(define-extern __pc-texture-upload-now (function object object none))
|
|
|
|
(define-extern __pc-texture-relocate (function object object object none))
|
2022-08-24 21:57:13 -04:00
|
|
|
|
2022-09-16 20:42:33 -04:00
|
|
|
(define-extern link-resume (function int))
|
|
|
|
(define-extern unload (function string none))
|
|
|
|
|
|
|
|
(define-extern reset-graph (function int int int int none))
|
|
|
|
|
|
|
|
|
2022-07-08 19:23:49 -04:00
|
|
|
;; PC stuff
|
|
|
|
(defenum pc-prof-event
|
|
|
|
(begin 0)
|
|
|
|
(end 1)
|
|
|
|
(instant 2)
|
|
|
|
)
|
|
|
|
(define-extern pc-prof (function string pc-prof-event none))
|
|
|
|
|
|
|
|
|