mirror of
https://github.com/open-goal/jak-project
synced 2026-08-02 00:34:13 -04:00
da5aef8d60
Almost done: - `target-handler` (`(none)` event handler casts and CFG error) - `target2` (`(none)` event handler casts) - `powerups` (`cloud-track` does some weird stuff with `handle`s) - `gun-states` (CFG error) Some progress in: - `water-flow` Additionally: - Clean up the two year old Jak 3 config file and add a config skeleton (disassembling seems to not have worked, but I was able to dump obj files and the `all_scripts` file) - Fix automatic skelgroup detection and `defskelgroup` macro for Jak 2 (closes #1950) - When a function decompiles without any major errors, a warning is generated with the op id for each unresolved load and store that will likely fail to compile (closes #1933)
279 lines
8.0 KiB
Common Lisp
Vendored
Generated
279 lines
8.0 KiB
Common Lisp
Vendored
Generated
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; definition of type region
|
|
(deftype region (structure)
|
|
((id uint32 :offset-assert 0)
|
|
(on-enter pair :offset-assert 4)
|
|
(on-inside pair :offset-assert 8)
|
|
(on-exit pair :offset-assert 12)
|
|
)
|
|
:method-count-assert 10
|
|
:size-assert #x10
|
|
:flag-assert #xa00000010
|
|
(:methods
|
|
(region-method-9 (_type_ vector) symbol 9)
|
|
)
|
|
)
|
|
|
|
;; definition for method 3 of type region
|
|
(defmethod inspect region ((obj region))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj 'region)
|
|
(format #t "~1Tid: ~D~%" (-> obj id))
|
|
(format #t "~1Ton-enter: ~A~%" (-> obj on-enter))
|
|
(format #t "~1Ton-inside: ~A~%" (-> obj on-inside))
|
|
(format #t "~1Ton-exit: ~A~%" (-> obj on-exit))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; definition of type region-array
|
|
(deftype region-array (inline-array-class)
|
|
((data region :inline :dynamic :offset-assert 16)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x10
|
|
:flag-assert #x900000010
|
|
)
|
|
|
|
;; definition for method 3 of type region-array
|
|
(defmethod inspect region-array ((obj region-array))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~1Tlength: ~D~%" (-> obj length))
|
|
(format #t "~1Tallocated-length: ~D~%" (-> obj allocated-length))
|
|
(format #t "~1Tdata[0] @ #x~X~%" (-> obj data))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; failed to figure out what this is:
|
|
(set! (-> region-array heap-base) (the-as uint 16))
|
|
|
|
;; definition of type drawable-region-prim
|
|
(deftype drawable-region-prim (drawable)
|
|
((region region :offset 8)
|
|
)
|
|
:method-count-assert 20
|
|
:size-assert #x20
|
|
:flag-assert #x1400000020
|
|
(:methods
|
|
(debug-draw-region (_type_ int) none 17)
|
|
(track-region (_type_ region-prim-area) symbol 18)
|
|
(within-area? (_type_ region-prim-area) symbol 19)
|
|
)
|
|
)
|
|
|
|
;; definition for method 3 of type drawable-region-prim
|
|
(defmethod inspect drawable-region-prim ((obj drawable-region-prim))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~1Tid: ~D~%" (-> obj id))
|
|
(format #t "~1Tbsphere: ~`vector`P~%" (-> obj bsphere))
|
|
(format #t "~1Tregion: #<region @ #x~X>~%" (-> obj region))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; definition of type drawable-tree-region-prim
|
|
(deftype drawable-tree-region-prim (drawable-tree)
|
|
((name basic :offset 8)
|
|
(data2 drawable-inline-array :dynamic :offset 32)
|
|
)
|
|
:method-count-assert 19
|
|
:size-assert #x20
|
|
:flag-assert #x1300000020
|
|
(:methods
|
|
(drawable-tree-region-prim-method-17 (_type_ vector) symbol 17)
|
|
(debug-print (_type_ vector object) none 18)
|
|
)
|
|
)
|
|
|
|
;; definition for method 3 of type drawable-tree-region-prim
|
|
(defmethod inspect drawable-tree-region-prim ((obj drawable-tree-region-prim))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-7)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~1Tid: ~D~%" (-> obj id))
|
|
(format #t "~1Tbsphere: ~`vector`P~%" (-> obj bsphere))
|
|
(format #t "~1Tlength: ~D~%" (-> obj length))
|
|
(format #t "~1Tdata[0] @ #x~X~%" (-> obj data2))
|
|
(dotimes (s5-0 (-> obj length))
|
|
(format #t "~T [~D]~1Tdata: ~A~%" s5-0 (-> obj data2 s5-0))
|
|
)
|
|
(format #t "~1Tname: ~A~%" (-> obj name))
|
|
(label cfg-7)
|
|
obj
|
|
)
|
|
|
|
;; definition of type drawable-inline-array-region-prim
|
|
(deftype drawable-inline-array-region-prim (drawable-inline-array)
|
|
((data drawable-region-prim 1 :inline :offset-assert 32)
|
|
(pad uint8 4 :offset-assert 64)
|
|
)
|
|
:method-count-assert 17
|
|
:size-assert #x44
|
|
:flag-assert #x1100000044
|
|
)
|
|
|
|
;; definition of type drawable-region-sphere
|
|
(deftype drawable-region-sphere (drawable-region-prim)
|
|
()
|
|
:method-count-assert 20
|
|
:size-assert #x20
|
|
:flag-assert #x1400000020
|
|
)
|
|
|
|
;; definition for method 3 of type drawable-region-sphere
|
|
(defmethod inspect drawable-region-sphere ((obj drawable-region-sphere))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~1Tid: ~D~%" (-> obj id))
|
|
(format #t "~1Tbsphere: ~`vector`P~%" (-> obj bsphere))
|
|
(format #t "~1Tregion: #<region @ #x~X>~%" (-> obj region))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; definition of type region-face-data
|
|
(deftype region-face-data (structure)
|
|
((normal vector :inline :offset-assert 0)
|
|
(normal-offset float :offset 12)
|
|
(num-points uint32 :offset-assert 16)
|
|
(points vector :inline :dynamic :offset-assert 32)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x20
|
|
:flag-assert #x900000020
|
|
)
|
|
|
|
;; definition for method 3 of type region-face-data
|
|
(defmethod inspect region-face-data ((obj region-face-data))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj 'region-face-data)
|
|
(format #t "~1Tnormal: #<vector @ #x~X>~%" (-> obj normal))
|
|
(format #t "~1Tnormal-offset: ~f~%" (-> obj normal w))
|
|
(format #t "~1Tnum-points: ~D~%" (-> obj num-points))
|
|
(format #t "~1Tpoints[0] @ #x~X~%" (-> obj points))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; definition of type drawable-region-face
|
|
(deftype drawable-region-face (drawable-region-prim)
|
|
((data region-face-data :offset 12)
|
|
)
|
|
:method-count-assert 20
|
|
:size-assert #x20
|
|
:flag-assert #x1400000020
|
|
)
|
|
|
|
;; definition for method 3 of type drawable-region-face
|
|
(defmethod inspect drawable-region-face ((obj drawable-region-face))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~1Tid: ~D~%" (-> obj id))
|
|
(format #t "~1Tbsphere: ~`vector`P~%" (-> obj bsphere))
|
|
(format #t "~1Tregion: #<region @ #x~X>~%" (-> obj region))
|
|
(format #t "~1Tdata: #<region-face-data @ #x~X>~%" (-> obj data))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; definition of type region-face-array
|
|
(deftype region-face-array (inline-array-class)
|
|
((data region-face-data :dynamic :offset 20)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x14
|
|
:flag-assert #x900000014
|
|
)
|
|
|
|
;; definition for method 3 of type region-face-array
|
|
(defmethod inspect region-face-array ((obj region-face-array))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~1Tlength: ~D~%" (-> obj length))
|
|
(format #t "~1Tallocated-length: ~D~%" (-> obj allocated-length))
|
|
(format #t "~1Tdata[0] @ #x~X~%" (-> obj data))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; failed to figure out what this is:
|
|
(set! (-> region-face-array heap-base) (the-as uint 32))
|
|
|
|
;; definition of type drawable-region-volume
|
|
(deftype drawable-region-volume (drawable-region-prim)
|
|
((faces region-face-array :offset 12)
|
|
)
|
|
:method-count-assert 20
|
|
:size-assert #x20
|
|
:flag-assert #x1400000020
|
|
)
|
|
|
|
;; definition for method 3 of type drawable-region-volume
|
|
(defmethod inspect drawable-region-volume ((obj drawable-region-volume))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj (-> obj type))
|
|
(format #t "~1Tid: ~D~%" (-> obj id))
|
|
(format #t "~1Tbsphere: ~`vector`P~%" (-> obj bsphere))
|
|
(format #t "~1Tregion: #<region @ #x~X>~%" (-> obj region))
|
|
(format #t "~1Tfaces: ~A~%" (-> obj faces))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; definition of type region-prim-list
|
|
(deftype region-prim-list (structure)
|
|
((num-items int32 :offset-assert 0)
|
|
(items drawable-region-prim 320 :offset-assert 4)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x504
|
|
:flag-assert #x900000504
|
|
)
|
|
|
|
;; definition for method 3 of type region-prim-list
|
|
(defmethod inspect region-prim-list ((obj region-prim-list))
|
|
(when (not obj)
|
|
(set! obj obj)
|
|
(goto cfg-4)
|
|
)
|
|
(format #t "[~8x] ~A~%" obj 'region-prim-list)
|
|
(format #t "~1Tnum-items: ~D~%" (-> obj num-items))
|
|
(format #t "~1Titems[320] @ #x~X~%" (-> obj items))
|
|
(label cfg-4)
|
|
obj
|
|
)
|
|
|
|
;; failed to figure out what this is:
|
|
0
|