mirror of
https://github.com/open-goal/jak-project
synced 2026-05-27 16:14:18 -04:00
2a315419de
* tests: Move all files to new directories * scripts: Update decomp scripts * tests: Remove hard-coded list for offline tests * linting
55 lines
1.4 KiB
Common Lisp
55 lines
1.4 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; definition of type draw-node
|
|
(deftype draw-node (drawable)
|
|
((child-count uint8 :offset 6)
|
|
(flags uint8 :offset 7)
|
|
(child uint32 :offset 8)
|
|
(distance float :offset 12)
|
|
)
|
|
:method-count-assert 18
|
|
:size-assert #x20
|
|
:flag-assert #x1200000020
|
|
)
|
|
|
|
;; definition for method 3 of type draw-node
|
|
(defmethod inspect draw-node ((obj draw-node))
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~Tid: ~D~%" (-> obj id))
|
|
(format #t "~Tbsphere: ~`vector`P~%" (-> obj bsphere))
|
|
(format #t "~Tchild-count: ~D~%" (-> obj child-count))
|
|
(format #t "~Tflags: ~D~%" (-> obj flags))
|
|
(format #t "~Tchild: #x~X~%" (-> obj child))
|
|
(format #t "~Tdistance: #x~X~%" (-> obj distance))
|
|
obj
|
|
)
|
|
|
|
;; type drawable-inline-array-node is defined here, but it is unknown to the decompiler
|
|
|
|
;; definition of type draw-node-dma
|
|
(deftype draw-node-dma (structure)
|
|
((banka draw-node 32 :inline :offset-assert 0)
|
|
(bankb draw-node 32 :inline :offset-assert 1024)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x800
|
|
:flag-assert #x900000800
|
|
)
|
|
|
|
;; definition for method 3 of type draw-node-dma
|
|
(defmethod inspect draw-node-dma ((obj draw-node-dma))
|
|
(format #t "[~8x] ~A~%" obj 'draw-node-dma)
|
|
(format #t "~Tbanka[32] @ #x~X~%" (-> obj banka))
|
|
(format #t "~Tbankb[32] @ #x~X~%" (-> obj bankb))
|
|
obj
|
|
)
|
|
|
|
;; failed to figure out what this is:
|
|
(let ((v0-3 0))
|
|
)
|
|
|
|
|
|
|
|
|