mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 21:27:52 -04:00
52 lines
1.7 KiB
Common Lisp
52 lines
1.7 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: generic-vu1-h.gc
|
|
;; name in dgo: generic-vu1-h
|
|
;; dgos: GAME, ENGINE
|
|
|
|
;; "pris" refers to foreground drawing, with normals.
|
|
(deftype pris-mtx (structure)
|
|
((data float 32 :offset 0)
|
|
(vector vector 8 :inline :offset 0)
|
|
(t-mtx matrix :inline :offset 0) ;; transformation matrix (including perspective)
|
|
(n-mtx matrix3 :inline :offset 64) ;; rotation matrix for the normals
|
|
(scale vector :inline :offset 112) ;; not sure this is used... merc doesn't do it this way.
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x80
|
|
:flag-assert #x900000080
|
|
)
|
|
|
|
;; ??
|
|
(deftype generic-pris-mtx-save (structure)
|
|
((loc-mtx pris-mtx :inline :offset-assert 0)
|
|
(par-mtx pris-mtx :inline :offset-assert 128)
|
|
(dif-mtx pris-mtx :inline :offset-assert 256)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #x180
|
|
:flag-assert #x900000180
|
|
)
|
|
|
|
;; VU1 constants for the generic renderer.
|
|
(deftype generic-constants (structure)
|
|
((fog vector :inline :offset-assert 0)
|
|
(adgif gs-gif-tag :inline :offset-assert 16) ;; was qword
|
|
(giftag gs-gif-tag :inline :offset-assert 32) ;; was qword
|
|
(hvdf-offset vector :inline :offset-assert 48)
|
|
(hmge-scale vector :inline :offset-assert 64)
|
|
(invh-scale vector :inline :offset-assert 80)
|
|
(guard vector :inline :offset-assert 96)
|
|
(adnop qword :inline :offset-assert 112)
|
|
(flush qword :inline :offset-assert 128)
|
|
(stores qword :inline :offset-assert 144)
|
|
)
|
|
:method-count-assert 9
|
|
:size-assert #xa0
|
|
:flag-assert #x9000000a0
|
|
)
|
|
|
|
(defun-extern generic-init-buf dma-buffer int gs-zbuf none)
|
|
|