Files
jak-project/test/decompiler/reference/jak2/engine/collide/collide-frag-h_REF.gc
T
water111 f7bd0752f8 [decomp] Decompile first batch of files in engine (#1787)
* wip

* getting stuff set up so we can actually run test cases

* better handle block entry stuff

* types2 working on gstring

* comments

* math ref working

* up to first stack stuff

* stack fixes

* bounding box

* math stuff is working

* float fixes

* temp debug for (method 9 profile-array)

* stupid stupid bug

* debugging

* everything is broken

* some amount of type stuff works

* bitfield

* texture bitfields not working

* temp

* types

* more stuff

* type check

* temp

* float related fixes for light and res problems

* revisit broken files, fix bugs

* more types

* vector debug

* bug fixes for decompiler crashes in harder functions

* update goal_src
2022-08-24 00:29:51 -04:00

131 lines
3.9 KiB
Common Lisp
Vendored
Generated

;;-*-Lisp-*-
(in-package goal)
;; definition of type collide-frag-vertex
(deftype collide-frag-vertex (vector)
()
:method-count-assert 9
:size-assert #x10
:flag-assert #x900000010
)
;; definition for method 3 of type collide-frag-vertex
;; INFO: Used lq/sq
(defmethod inspect collide-frag-vertex ((obj collide-frag-vertex))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj 'collide-frag-vertex)
(format #t "~1Tdata[4] @ #x~X~%" (&-> obj x))
(format #t "~1Tx: ~f~%" (-> obj x))
(format #t "~1Ty: ~f~%" (-> obj y))
(format #t "~1Tz: ~f~%" (-> obj z))
(format #t "~1Tw: ~f~%" (-> obj w))
(format #t "~1Tquad: ~D~%" (-> obj quad))
(label cfg-4)
obj
)
;; definition of type collide-frag-mesh
(deftype collide-frag-mesh (basic)
((packed-data uint32 :offset-assert 4)
(pat-array uint32 :offset-assert 8)
(strip-data-len uint16 :offset-assert 12)
(poly-count uint16 :offset-assert 14)
(base-trans vector4w :inline :offset-assert 16)
(vertex-count uint8 :offset 28)
(vertex-data-qwc uint8 :offset 29)
(total-qwc uint8 :offset 30)
(unused uint8 :offset 31)
)
:method-count-assert 9
:size-assert #x20
:flag-assert #x900000020
)
;; definition for method 3 of type collide-frag-mesh
(defmethod inspect collide-frag-mesh ((obj collide-frag-mesh))
(when (not obj)
(set! obj obj)
(goto cfg-4)
)
(format #t "[~8x] ~A~%" obj (-> obj type))
(format #t "~1Tpacked-data: #x~X~%" (-> obj packed-data))
(format #t "~1Tpat-array: #x~X~%" (-> obj pat-array))
(format #t "~1Tstrip-data-len: ~D~%" (-> obj strip-data-len))
(format #t "~1Tpoly-count: ~D~%" (-> obj poly-count))
(format #t "~1Tbase-trans: #<vector4w @ #x~X>~%" (-> obj base-trans))
(format #t "~1Tvertex-count: ~D~%" (-> obj vertex-count))
(format #t "~1Tvertex-data-qwc: ~D~%" (-> obj vertex-data-qwc))
(format #t "~1Ttotal-qwc: ~D~%" (-> obj total-qwc))
(format #t "~1Tunused: ~D~%" (-> obj unused))
(label cfg-4)
obj
)
;; definition of type collide-fragment
(deftype collide-fragment (drawable)
((mesh collide-frag-mesh :offset 8)
(collide-new basic :offset 12)
)
:method-count-assert 17
:size-assert #x20
:flag-assert #x1100000020
)
;; definition for method 3 of type collide-fragment
(defmethod inspect collide-fragment ((obj collide-fragment))
(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 "~1Tmesh: ~A~%" (-> obj mesh))
(format #t "~1Tcollide-new: ~A~%" (-> obj collide-new))
(label cfg-4)
obj
)
;; definition of type drawable-inline-array-collide-fragment
(deftype drawable-inline-array-collide-fragment (drawable-inline-array)
((data collide-fragment 1 :inline :offset-assert 32)
(pad uint32 :offset-assert 64)
)
:method-count-assert 17
:size-assert #x44
:flag-assert #x1100000044
)
;; definition for method 3 of type drawable-inline-array-collide-fragment
(defmethod inspect drawable-inline-array-collide-fragment ((obj drawable-inline-array-collide-fragment))
(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 "~1Tlength: ~D~%" (-> obj length))
(format #t "~1Tdata[1] @ #x~X~%" (-> obj data))
(label cfg-4)
obj
)
;; definition of type drawable-tree-collide-fragment
(deftype drawable-tree-collide-fragment (drawable-tree)
()
:method-count-assert 17
:size-assert #x20
:flag-assert #x1100000020
)
;; failed to figure out what this is:
0