mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 21:27:52 -04:00
96 lines
2.6 KiB
Scheme
96 lines
2.6 KiB
Scheme
;-*-Scheme-*-
|
|
|
|
;; This file is loaded as part of goal-lib.gc.
|
|
;; It should generate no code.
|
|
|
|
;; This is used to extern define all C Kernel functions and types.
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;; Forward declare C Kernel Fixed Syms
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;; '()
|
|
|
|
;; booleans
|
|
(define-extern #f boolean)
|
|
(define-extern #t boolean)
|
|
|
|
;; types
|
|
(define-extern function type)
|
|
(define-extern symbol type)
|
|
(define-extern basic type)
|
|
(define-extern string 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)
|
|
|
|
;; functions
|
|
(defun-extern nothing () none)
|
|
;; del basic
|
|
(define-extern static symbol)
|
|
(define-extern global object)
|
|
;;(define-extern debug kheap)
|
|
(define-extern loading-level symbol)
|
|
(define-extern loading-package symbol)
|
|
(define-extern process-level-heap symbol)
|
|
(define-extern stack symbol)
|
|
(define-extern scratch symbol)
|
|
|
|
;;(define-extern *scratch-top* pointer)
|
|
(defun-extern zero-func () int32)
|
|
(defun-extern method-set! ((x type) (y integer) (z function)) object)
|
|
;; todo - change allocation to a kheap
|
|
(defun-extern dgo-load ((name string) (allocation object) (flag integer) (buffer-size integer)) none)
|
|
|
|
(defun-extern *listener-function* () object)
|
|
(define-extern *enable-method-set* int32)
|
|
;; asizeo-of-bsic
|
|
;; copy-basic
|
|
;; level
|
|
;; art group
|
|
;; tx page dir
|
|
;; tx page
|
|
;; sound
|
|
;; dgo
|
|
;; top level
|
|
|
|
(defun-extern string->symbol ((x string)) symbol)
|
|
(defun-extern print ((x object)) object)
|
|
(defun-extern inspect ((x object)) object)
|
|
(define-extern test-function function)
|
|
(define-extern _format function)
|
|
;; for the compiler
|
|
(define-extern format function)
|
|
;; TODO - some others...
|
|
(define-extern *kernel-boot-message* symbol)
|
|
(define-extern *debug-segment* boolean)
|
|
|
|
;; for use by the compiler.
|
|
(defun-extern malloc ((allocation symbol) (size integer)) pointer) |