Files
jak-project/test/decompiler/reference/jak2/engine/level/region-h_REF.gc
T
Hat Kid fc43870d85 decompiler: obj -> this, set-time! and time-elapsed? macros (#3026)
This renames the method object in `defmethod`s to `this` and adds
detection for the `set-time!` and `time-elapsed?` macros.

Definitely my biggest PR yet...
2023-09-26 15:17:00 +01:00

280 lines
8.1 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 ((this region))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this 'region)
(format #t "~1Tid: ~D~%" (-> this id))
(format #t "~1Ton-enter: ~A~%" (-> this on-enter))
(format #t "~1Ton-inside: ~A~%" (-> this on-inside))
(format #t "~1Ton-exit: ~A~%" (-> this on-exit))
(label cfg-4)
this
)
;; 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 ((this region-array))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tlength: ~D~%" (-> this length))
(format #t "~1Tallocated-length: ~D~%" (-> this allocated-length))
(format #t "~1Tdata[0] @ #x~X~%" (-> this data))
(label cfg-4)
this
)
;; 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 ((this drawable-region-prim))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tid: ~D~%" (-> this id))
(format #t "~1Tbsphere: ~`vector`P~%" (-> this bsphere))
(format #t "~1Tregion: #<region @ #x~X>~%" (-> this region))
(label cfg-4)
this
)
;; 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 ((this drawable-tree-region-prim))
(when (not this)
(set! this this)
(goto cfg-7)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tid: ~D~%" (-> this id))
(format #t "~1Tbsphere: ~`vector`P~%" (-> this bsphere))
(format #t "~1Tlength: ~D~%" (-> this length))
(format #t "~1Tdata[0] @ #x~X~%" (-> this data2))
(dotimes (s5-0 (-> this length))
(format #t "~T [~D]~1Tdata: ~A~%" s5-0 (-> this data2 s5-0))
)
(format #t "~1Tname: ~A~%" (-> this name))
(label cfg-7)
this
)
;; 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 ((this drawable-region-sphere))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tid: ~D~%" (-> this id))
(format #t "~1Tbsphere: ~`vector`P~%" (-> this bsphere))
(format #t "~1Tregion: #<region @ #x~X>~%" (-> this region))
(label cfg-4)
this
)
;; 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 ((this region-face-data))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this 'region-face-data)
(format #t "~1Tnormal: #<vector @ #x~X>~%" (-> this normal))
(format #t "~1Tnormal-offset: ~f~%" (-> this normal w))
(format #t "~1Tnum-points: ~D~%" (-> this num-points))
(format #t "~1Tpoints[0] @ #x~X~%" (-> this points))
(label cfg-4)
this
)
;; 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 ((this drawable-region-face))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tid: ~D~%" (-> this id))
(format #t "~1Tbsphere: ~`vector`P~%" (-> this bsphere))
(format #t "~1Tregion: #<region @ #x~X>~%" (-> this region))
(format #t "~1Tdata: #<region-face-data @ #x~X>~%" (-> this data))
(label cfg-4)
this
)
;; definition of type region-face-array
(deftype region-face-array (inline-array-class)
((data drawable-region-face :inline :dynamic :offset 16)
(pad0 uint8 4 :offset-assert 16)
)
:method-count-assert 9
:size-assert #x14
:flag-assert #x900000014
)
;; definition for method 3 of type region-face-array
(defmethod inspect region-face-array ((this region-face-array))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tlength: ~D~%" (-> this length))
(format #t "~1Tallocated-length: ~D~%" (-> this allocated-length))
(format #t "~1Tdata[0] @ #x~X~%" (-> this data))
(label cfg-4)
this
)
;; 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 ((this drawable-region-volume))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this (-> this type))
(format #t "~1Tid: ~D~%" (-> this id))
(format #t "~1Tbsphere: ~`vector`P~%" (-> this bsphere))
(format #t "~1Tregion: #<region @ #x~X>~%" (-> this region))
(format #t "~1Tfaces: ~A~%" (-> this faces))
(label cfg-4)
this
)
;; 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 ((this region-prim-list))
(when (not this)
(set! this this)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" this 'region-prim-list)
(format #t "~1Tnum-items: ~D~%" (-> this num-items))
(format #t "~1Titems[320] @ #x~X~%" (-> this items))
(label cfg-4)
this
)
;; failed to figure out what this is:
0