mirror of
https://github.com/open-goal/jak-project
synced 2026-08-17 21:43:27 -04:00
89ccb8cbc7
* cleanup `main` * whitespace * start `progress` decomp pt1 * fill in more stuff * Update label_types.jsonc * run cheats * clang * make most of `progress` decompile * `progress` pt 2 * [decompiler] support dynamic format strings * Make `progress-draw` decompile and almost all `progress` * make clang shut up * fix unhandled format string * fix `progress-draw` * Update DecompilerTypeSystem.cpp * fix? * fixes * fix a few functions * make `language-enum` * warn on weird floats * fix minor pad bug * dump stuff in `progress` * make `progress-screen` enum * progress progress * update refs and fix stupid bug * trying to get it to work * it works!? * disable sound functions * fixes * final touches * tests * tests * add process allocations * use the right register for windows * another try for windows, counting is hard * one more try * use process allocations Co-authored-by: water <awaterford111445@gmail.com>
95 lines
3.1 KiB
Common Lisp
95 lines
3.1 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: sprite-h.gc
|
|
;; name in dgo: sprite-h
|
|
;; dgos: GAME, ENGINE
|
|
|
|
;; definition of type sprite-vec-data-2d
|
|
(deftype sprite-vec-data-2d (structure)
|
|
((x-y-z-sx vector :inline :offset-assert 0)
|
|
(flag-rot-sy vector :inline :offset-assert 16)
|
|
(r-g-b-a vector :inline :offset-assert 32)
|
|
(x float :offset 0)
|
|
(y float :offset 4)
|
|
(z float :offset 8)
|
|
(sx float :offset 12)
|
|
(sy float :offset 28)
|
|
(rot float :offset 24)
|
|
(flag int32 :offset 16)
|
|
(matrix int32 :offset 20)
|
|
(warp-turns int32 :offset 16)
|
|
(r float :offset 32)
|
|
(g float :offset 36)
|
|
(b float :offset 40)
|
|
(a float :offset 44)
|
|
(trans vector3s :inline :offset 0)
|
|
(color rgbaf :inline :offset 32)
|
|
(data uint128 1 :offset 0)
|
|
(data64 uint64 6 :offset 0)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x30
|
|
:flag-assert #x900000030
|
|
)
|
|
|
|
(deftype sprite-array-2d (basic)
|
|
((num-sprites int32 2 :offset-assert 4)
|
|
(num-valid int32 2 :offset-assert 12)
|
|
(vec-data pointer :offset-assert 20)
|
|
(adgif-data (inline-array adgif-shader) :offset-assert 24)
|
|
(pad uint128 4 :offset-assert 32)
|
|
(data uint128 1 :offset-assert 96)
|
|
)
|
|
(:methods
|
|
(new (symbol type int int) _type_ 0)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x70
|
|
:flag-assert #x900000070
|
|
)
|
|
|
|
(deftype sprite-vec-data-3d (structure)
|
|
((x-y-z-sx vector :inline :offset-assert 0)
|
|
(qx-qy-qz-sy vector :inline :offset-assert 16)
|
|
(r-g-b-a vector :inline :offset-assert 32)
|
|
(x float :offset 0)
|
|
(y float :offset 4)
|
|
(z float :offset 8)
|
|
(sx float :offset 12)
|
|
(sy float :offset 28)
|
|
(qx float :offset 16)
|
|
(qy float :offset 20)
|
|
(qz float :offset 24)
|
|
(r float :offset 32)
|
|
(g float :offset 36)
|
|
(b float :offset 40)
|
|
(a float :offset 44)
|
|
(trans vector3s :inline :offset 0)
|
|
(rot vector3s :inline :offset 16)
|
|
(color rgbaf :inline :offset 32)
|
|
(data uint128 1 :offset 0)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x30
|
|
:flag-assert #x900000030
|
|
)
|
|
|
|
(deftype sprite-array-3d (basic)
|
|
((num-sprites int32 2 :offset-assert 4)
|
|
(num-valid int32 2 :offset-assert 12)
|
|
(vec-data pointer :offset-assert 20)
|
|
(adgif-data (inline-array adgif-shader) :offset-assert 24)
|
|
(data uint128 1 :offset-assert 32)
|
|
)
|
|
(:methods
|
|
(new (symbol type int int) _type_ 0)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x30
|
|
:flag-assert #x900000030
|
|
)
|
|
(define-extern sprite-init-distorter (function dma-buffer uint none))
|
|
(define-extern sprite-draw-distorters (function dma-buffer none))
|
|
(define-extern sprite-vu1-block vu-function)
|