[decomp] Partial implementation of tie (#1916)

Some stuff isn't working fully yet:
- fog color
- time of day
- draw order for multiple passes (currently all draws in the default tie
bucket)
- possibly settings for transparent stuff (untested, but might work)
- the "vanish" effect (we might not want this anyway?)
- environment mapping/etie completely not implemented.


![image](https://user-images.githubusercontent.com/48171810/192154314-2cc8ac51-9dad-474f-a84b-3a1d98973215.png)

![image](https://user-images.githubusercontent.com/48171810/192154316-457a7ee0-b5a4-4a40-b48e-8863114da735.png)
This commit is contained in:
water111
2022-09-25 12:50:51 -04:00
committed by GitHub
parent a53c06fe2b
commit b5705bde96
26 changed files with 7998 additions and 397 deletions
+151 -142
View File
@@ -2725,75 +2725,75 @@
(tex-l0-tfrag 7) ;; level 0 tex
(tfrag-l0-tfrag 8) ;; tfrag
(bucket-9 9) ;; tie
(bucket-10 10) ;; tie
(tie-l0-tfrag 9) ;; tie
(etie-l0-tfrag 10) ;; tie
(tfrag-s-l0-tfrag 11) ;; tfrag
(bucket-12 12) ;; tie
(bucket-13 13) ;; tie
(tie-s-l0-tfrag 12) ;; tie
(etie-s-l0-tfrag 13) ;; tie
(merc-l0-tfrag 14) ;; merc
(emerc-l0-tfrag 15) ;; emerc
(bucket-16 16) ;; mercneric
(bucket-17 17) ;; tie
(tie-v-l0-tfrag 17) ;; tie
(tex-l1-tfrag 18) ;; tex
(tfrag-l1-tfrag 19) ;; tfrag
(bucket-20 20) ;; tie
(bucket-21 21) ;; tie
(tie-l1-tfrag 20) ;; tie
(etie-l1-tfrag 21) ;; tie
(tfrag-s-l1-tfrag 22) ;; tfrag
(bucket-23 23) ;; tie
(bucket-24 24) ;; tie
(tie-s-l1-tfrag 23) ;; tie
(etie-s-l1-tfrag 24) ;; tie
(merc-l1-tfrag 25) ;; merc
(emerc-l1-tfrag 26) ;; emerc
(bucket-27 27) ;; mercneric
(bucket-28 28) ;; tie
(tie-v-l1-tfrag 28) ;; tie
(tex-l2-tfrag 29) ;; tex
(tfrag-l2-tfrag 30) ;; tfrag
(bucket-31 31) ;; tie
(bucket-32 32) ;; tie
(tie-l2-tfrag 31) ;; tie
(etie-l2-tfrag 32) ;; tie
(tfrag-s-l2-tfrag 33) ;; tfrag
(bucket-34 34) ;; tie
(bucket-35 35) ;; tie
(tie-s-l2-tfrag 34) ;; tie
(etie-s-l2-tfrag 35) ;; tie
(merc-l2-tfrag 36) ;; merc
(emerc-l2-tfrag 37) ;; emerc
(bucket-38 38) ;; mercneric
(bucket-39 39) ;; tie
(tie-v-l2-tfrag 39) ;; tie
(tex-l3-tfrag 40) ;; tex
(tfrag-l3-tfrag 41) ;; tfrag
(bucket-42 42) ;; tie
(bucket-43 43) ;; tie
(tie-l3-tfrag 42) ;; tie
(etie-l3-tfrag 43) ;; tie
(tfrag-s-l3-tfrag 44) ;; tfrag
(bucket-45 45) ;; tie
(bucket-46 46) ;; tie
(tie-s-l3-tfrag 45) ;; tie
(etie-s-l3-tfrag 46) ;; tie
(merc-l3-tfrag 47) ;; merc
(emerc-l3-tfrag 48) ;; emerc
(bucket-49 49) ;; mercneric
(bucket-50 50) ;; tie
(tie-v-l3-tfrag 50) ;; tie
(tex-l4-tfrag 51) ;; tex
(tfrag-l4-tfrag 52) ;; tfrag
(bucket-53 53) ;; tie
(bucket-54 54) ;; tie
(tie-l4-tfrag 53) ;; tie
(etie-l4-tfrag 54) ;; tie
(tfrag-s-l4-tfrag 55) ;; tfrag
(bucket-56 56) ;; tie
(bucket-57 57) ;; tie
(tie-s-l4-tfrag 56) ;; tie
(etie-s-l4-tfrag 57) ;; tie
(merc-l4-tfrag 58) ;; merc
(emerc-l4-tfrag 59) ;; emerc
(bucket-60 60) ;; mercneric
(bucket-61 61) ;; tie
(tie-v-l4-tfrag 61) ;; tie
(tex-l5-tfrag 62) ;; tex
(tfrag-l5-tfrag 63) ;; tfrag
(bucket-64 64) ;; tie
(bucket-65 65) ;; tie
(tie-l5-tfrag 64) ;; tie
(etie-l5-tfrag 65) ;; tie
(tfrag-s-l5-tfrag 66) ;; tfrag
(bucket-67 67) ;; tie
(bucket-68 68) ;; tie
(tie-s-l5-tfrag 67) ;; tie
(etie-s-l5-tfrag 68) ;; tie
(merc-l5-tfrag 69) ;; merc
(emerc-l5-tfrag 70) ;; emerc
(bucket-71 71) ;; mercneric
(bucket-72 72) ;; tie
(tie-v-l5-tfrag 72) ;; tie
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; All levels with shrub tpage
@@ -2861,69 +2861,69 @@
(tex-l0-alpha 127) ;; tex
(tfrag-t-l0-alpha 128) ;; tfrag
(bucket-129 129) ;; tie
(bucket-130 130) ;; tie
(tie-t-l0-alpha 129) ;; tie
(etie-t-l0-alpha 130) ;; tie
(merc-l0-alpha 131) ;; merc
(emerc-l0-alpha 132) ;; emerc
(bucket-133 133) ;; mercneric
(tfrag-st-l0-alpha 134) ;; tfrag
(bucket-135 135) ;; tie
(bucket-136 136) ;; tie
(tie-st-l0-alpha 135) ;; tie
(etie-st-l0-alpha 136) ;; tie
(tex-l1-alpha 137) ;; tex
(tfrag-t-l1-alpha 138) ;; tfrag
(bucket-139 139) ;; tie
(bucket-140 140) ;; tie
(tie-t-l1-alpha 139) ;; tie
(etie-t-l1-alpha 140) ;; tie
(merc-l1-alpha 141) ;; merc
(emerc-l1-alpha 142) ;; emerc
(bucket-143 143) ;; mercneric
(tfrag-st-l1-alpha 144) ;; tfrag
(bucket-145 145) ;; tie
(bucket-146 146) ;; tie
(tie-st-l1-alpha 145) ;; tie
(etie-st-l1-alpha 146) ;; tie
(tex-l2-alpha 147) ;; tex
(tfrag-t-l2-alpha 148) ;; tfrag
(bucket-149 149) ;; tie
(bucket-150 150) ;; tie
(tie-t-l2-alpha 149) ;; tie
(etie-t-l2-alpha 150) ;; tie
(merc-l2-alpha 151) ;; merc
(emerc-l2-alpha 152) ;; emerc
(bucket-153 153) ;; mercneric
(tfrag-st-l2-alpha 154) ;; tfrag
(bucket-155 155) ;; tie
(bucket-156 156) ;; tie
(tie-st-l2-alpha 155) ;; tie
(etie-st-l2-alpha 156) ;; tie
(tex-l3-alpha 157) ;; tex
(tfrag-t-l3-alpha 158) ;; tfrag
(bucket-159 159) ;; tie
(bucket-160 160) ;; tie
(tie-t-l3-alpha 159) ;; tie
(etie-t-l3-alpha 160) ;; tie
(merc-l3-alpha 161) ;; merc
(emerc-l3-alpha 162) ;; emerc
(bucket-163 163) ;; mercneric
(tfrag-st-l3-alpha 164) ;; tfrag
(bucket-165 165) ;; tie
(bucket-166 166) ;; tie
(tie-st-l3-alpha 165) ;; tie
(etie-st-l3-alpha 166) ;; tie
(tex-l4-alpha 167) ;; tex
(tfrag-t-l4-alpha 168) ;; tfrag
(bucket-169 169) ;; tie
(bucket-170 170) ;; tie
(tie-t-l4-alpha 169) ;; tie
(etie-t-l4-alpha 170) ;; tie
(merc-l4-alpha 171) ;; merc
(emerc-l4-alpha 172) ;; emerc
(bucket-173 173) ;; mercneric
(tfrag-st-l4-alpha 174) ;; tfrag
(bucket-175 175) ;; tie
(bucket-176 176) ;; tie
(tie-st-l4-alpha 175) ;; tie
(etie-st-l4-alpha 176) ;; tie
(tex-l5-alpha 177) ;; tex
(tfrag-t-l5-alpha 178) ;; tfrag
(bucket-179 179) ;; tie
(bucket-180 180) ;; tie
(tie-t-l5-alpha 179) ;; tie
(etie-t-l5-alpha 180) ;; tie
(merc-l5-alpha 181) ;; merc
(emerc-l5-alpha 182) ;; emerc
(bucket-183 183) ;; mercneric
(tfrag-st-l5-alpha 184) ;; tfrag
(bucket-185 185) ;; tie
(bucket-186 186) ;; tie
(tie-st-l5-alpha 185) ;; tie
(etie-st-l5-alpha 186) ;; tie
(tex-lcom-tfrag 187) ;; tex
(merc-lcom-tfrag 188) ;; merc
@@ -3011,61 +3011,61 @@
(merc-l0-water 253) ;; merc
(bucket-254 254) ;; mercneric
(tfrag-w-l0-water 255) ;; tfrag
(bucket-256 256)
(bucket-257 257)
(bucket-258 258)
(tie-w-l0-water 256)
(etie-w-l0-water 257)
(tie-sw-l0-water 258)
(tfrag-ws-l0-water 259) ;; tfrag
(bucket-260 260)
(etie-sw-l0-water 260)
(tex-l1-water 261) ;; tex
(merc-l1-water 262) ;; merc
(bucket-263 263) ;; mercneric
(tfrag-w-l1-water 264) ;; tfrag
(bucket-265 265)
(bucket-266 266)
(bucket-267 267)
(tie-w-l1-water 265)
(etie-w-l1-water 266)
(tie-sw-l1-water 267)
(tfrag-ws-l1-water 268) ;; tfrag
(bucket-269 269)
(etie-sw-l1-water 269)
(tex-l2-water 270) ;; tex
(merc-l2-water 271) ;; merc
(bucket-272 272) ;; mercneric
(tfrag-w-l2-water 273) ;; tfrag
(bucket-274 274)
(bucket-275 275)
(bucket-276 276)
(tie-w-l2-water 274)
(etie-w-l2-water 275)
(tie-sw-l2-water 276)
(tfrag-ws-l2-water 277) ;; tfrag
(bucket-278 278)
(tie-esw-l2-water 278)
(tex-l3-water 279) ;; tex
(merc-l3-water 280) ;; merc
(bucket-281 281) ;; mercneric
(tfrag-w-l3-water 282) ;; tfrag
(bucket-283 283)
(bucket-284 284)
(bucket-285 285)
(tie-w-l3-water 283)
(etie-w-l3-water 284)
(tie-sw-l3-water 285)
(tfrag-ws-l3-water 286) ;; tfrag
(bucket-287 287)
(etie-sw-l3-water 287)
(tex-l4-water 288) ;; tex
(merc-l4-water 289) ;; merc
(bucket-290 290) ;; mercneric
(tfrag-w-l4-water 291) ;; tfrag
(bucket-292 292)
(bucket-293 293)
(bucket-294 294)
(tie-w-l4-water 292)
(etie-w-l4-water 293)
(tie-sw-l4-water 294)
(tfrag-ws-l4-water 295) ;; tfrag
(bucket-296 296)
(etie-sw-l4-water 296)
(tex-l5-water 297) ;; tex
(merc-l5-water 298) ;; merc
(bucket-299 299) ;; mercneric
(tfrag-w-l5-water 300) ;; tfrag
(bucket-301 301)
(bucket-302 302)
(bucket-303 303)
(tie-w-l5-water 301)
(etie-w-l5-water 302)
(tie-sw-l5-water 303)
(tfrag-ws-l5-water 304) ;; tfrag
(bucket-305 305)
(etie-sw-l5-water 305)
(tex-lcom-water 306) ;; tex
(merc-lcom-water 307) ;; merc
@@ -4032,7 +4032,7 @@
((word uint32 4 :offset-assert 0)
(quad uint128 :offset 0)
(data uint64 :offset 0)
(cmds uint64 :offset 8)
(cmds gs-reg64 :offset 8)
(cmd uint8 :offset 8)
(x uint32 :offset 0)
(y uint32 :offset 4)
@@ -7510,6 +7510,21 @@
(tfragment-color 6)
(tfragment-debug 7)
(tie-fragment 9)
(tie-gif 10)
(tie-points 11)
(tie-colors 12)
(tie-draw-points 13)
(tie-debug 14)
(tie-generic 17)
(instance-tie 18)
(instance-tie-colors0 19)
(instance-tie-colors1 20)
(instance-tie-colors2 21)
(instance-tie-colors3 22)
(inst-tie-colors* 23)
(entity 43)
(camera 44)
@@ -23202,37 +23217,35 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype tie-consts (structure)
((data uint32 40 :offset-assert 0) ;; guessed by decompiler
(vector vector 10 :offset-assert 0) ;; guessed by decompiler
(quads uint128 10 :offset-assert 0) ;; guessed by decompiler
(adgif qword :inline :offset-assert 0) ;; gs-gif-tag :inline
(strgif qword :inline :offset-assert 16) ;; gs-gif-tag :inline
(extra qword :inline :offset-assert 32) ;; vector :inline
(gifbufs qword :inline :offset-assert 48) ;; vector :inline
(clrbufs qword :inline :offset-assert 64)
(misc qword :inline :offset-assert 80)
(atestgif qword :inline :offset-assert 96) ;; gs-gif-tag :inline
(alpha qword :inline :offset-assert 112)
(atest ad-cmd 2 :offset-assert 128) ;; guessed by decompiler
(atest-tra gs-adcmd :inline :offset-assert 128) ;; ad-cmd :inline
(atest-def gs-adcmd :inline :offset-assert 144) ;; ad-cmd :inline
((data uint32 40 :offset 0 :score -2) ;; guessed by decompiler
(vector vector 10 :offset 0 :score -2) ;; guessed by decompiler
(quads uint128 10 :offset 0 :score -2) ;; guessed by decompiler
(adgif gs-gif-tag :inline :offset 0) ;; gs-gif-tag :inline
(strgif gs-gif-tag :inline :offset 16) ;; gs-gif-tag :inline
(extra vector :inline :offset 32) ;; vector :inline
(gifbufs vector :inline :offset 48) ;; vector :inline
(clrbufs qword :inline :offset 64)
(misc qword :inline :offset 80)
(atestgif gs-gif-tag :inline :offset 96) ;; gs-gif-tag :inline
(alpha gs-adcmd :inline :offset 112)
(atest gs-adcmd 2 :inline :offset 128 :score -1) ;; guessed by decompiler
(atest-tra gs-adcmd :inline :offset 128) ;; ad-cmd :inline
(atest-def gs-adcmd :inline :offset 144) ;; ad-cmd :inline
)
:method-count-assert 9
:size-assert #xa0
:flag-assert #x9000000a0
)
|#
;; (define-extern tie-vu1-block object) ;; vu-function
;; (define-extern tie-init-consts function) ;; (function tie-consts int none)
;; (define-extern tie-init-engine function) ;; (function dma-buffer gs-test int none)
;; (define-extern tie-end-buffer function) ;; (function dma-buffer none)
;; (define-extern tie-int-reg function) ;; (function int string)
;; (define-extern tie-float-reg function) ;; (function int string)
;; (define-extern tie-ints function) ;; (function none)
;; (define-extern tie-floats function) ;; (function none)
(define-extern tie-vu1-block vu-function)
(define-extern tie-init-consts (function tie-consts gs-alpha gs-test gs-test none))
(define-extern tie-init-engine (function dma-buffer gs-alpha gs-test gs-test none))
(define-extern tie-end-buffer (function dma-buffer none))
(define-extern tie-int-reg (function int string))
(define-extern tie-float-reg (function int string))
(define-extern tie-ints (function none))
(define-extern tie-floats (function none))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; etie-vu1 ;;
@@ -23273,8 +23286,8 @@
;; (define-extern etie-vu1-block object)
;; (define-extern etie-magic function)
;; (define-extern etie-init-consts function)
;; (define-extern etie-init-engine function)
;; (define-extern etie-end-buffer function)
(define-extern etie-init-engine (function dma-buffer none))
(define-extern etie-end-buffer (function dma-buffer none))
;; (define-extern etie-float-reg-bp function)
;; (define-extern etie-float-reg function)
;; (define-extern etie-floats function)
@@ -23351,8 +23364,8 @@
;; (define-extern etn-vu1-block object)
;; (define-extern etn-magic function)
;; (define-extern etn-init-consts function)
;; (define-extern etn-init-engine function)
;; (define-extern etn-end-buffer function)
(define-extern etn-init-engine (function dma-buffer none))
(define-extern etn-end-buffer (function dma-buffer none))
;; (define-extern etn-float-reg-calc function)
;; (define-extern etn-float-reg function)
;; (define-extern etn-floats function)
@@ -23387,9 +23400,9 @@
;; (define-extern tie-near-vu1-block object) ;; vu-function
;; (define-extern tie-near-init-consts function) ;; (function tie-near-consts int none)
;; (define-extern tie-near-init-engine function) ;; (function dma-buffer gs-test int none)
;; (define-extern tie-near-end-buffer function) ;; (function dma-buffer none)
(define-extern tie-scissor-make-perspective-matrix (function object object none))
(define-extern tie-near-init-engine (function dma-buffer gs-test int none))
(define-extern tie-near-end-buffer (function dma-buffer none))
(define-extern tie-scissor-make-perspective-matrix (function matrix matrix none))
;; (define-extern tie-near-int-reg function) ;; (function int string)
;; (define-extern tie-near-float-reg function) ;; (function int string)
@@ -23404,7 +23417,6 @@
;; tie-methods ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#|
(deftype tie-debug (structure)
((max-instance uint32 :offset-assert 0)
(min-instance uint32 :offset-assert 4)
@@ -23415,46 +23427,43 @@
:size-assert #x10
:flag-assert #x900000010
)
|#
#|
(deftype tie-init-data (structure)
((tie-bucket int32 :offset-assert 0)
(tie-scissor-bucket int32 :offset-assert 4)
(tie-envmap-bucket int32 :offset-assert 8)
(tie-envmap-scissor-bucket int32 :offset-assert 12)
(tie-vanish-bucket int32 :offset-assert 16)
(tie-trans-bucket int32 :offset-assert 20)
(tie-scissor-trans-bucket int32 :offset-assert 24)
(tie-envmap-trans-bucket int32 :offset-assert 28)
(tie-envmap-scissor-trans-bucket int32 :offset-assert 32)
(tie-water-bucket int32 :offset-assert 36)
(tie-scissor-water-bucket int32 :offset-assert 40)
(tie-envmap-water-bucket int32 :offset-assert 44)
(tie-envmap-scissor-water-bucket int32 :offset-assert 48)
((tie-bucket bucket-id :offset-assert 0)
(tie-scissor-bucket bucket-id :offset-assert 4)
(tie-envmap-bucket bucket-id :offset-assert 8)
(tie-envmap-scissor-bucket bucket-id :offset-assert 12)
(tie-vanish-bucket bucket-id :offset-assert 16)
(tie-trans-bucket bucket-id :offset-assert 20)
(tie-scissor-trans-bucket bucket-id :offset-assert 24)
(tie-envmap-trans-bucket bucket-id :offset-assert 28)
(tie-envmap-scissor-trans-bucket bucket-id :offset-assert 32)
(tie-water-bucket bucket-id :offset-assert 36)
(tie-scissor-water-bucket bucket-id :offset-assert 40)
(tie-envmap-water-bucket bucket-id :offset-assert 44)
(tie-envmap-scissor-water-bucket bucket-id :offset-assert 48)
)
:method-count-assert 9
:size-assert #x34
:flag-assert #x900000034
)
|#
;; (define-extern *tie* object) ;; tie-instance-debug
;; (define-extern tie-debug-between function) ;; (function uint uint uint)
;; (define-extern tie-debug-one function) ;; (function uint uint uint)
;; (define-extern tie-debug-frag-between function)
;; (define-extern tie-debug-frag-one function)
;; (define-extern walk-tie-generic-prototypes function) ;; (function none)
;; (define-extern *pke-hack* object) ;; vector
;; (define-extern draw-inline-array-instance-tie function) ;; (function pointer (inline-array instance-tie) int dma-buffer none)
;; (define-extern draw-inline-array-prototype-tie-asm function) ;; (function dma-buffer int prototype-array-tie none)
;; (define-extern instance-tie-patch-buckets function)
(define-extern *tie* tie-debug)
(define-extern tie-debug-between (function uint uint uint))
(define-extern tie-debug-one (function uint uint uint))
(define-extern tie-debug-frag-between (function uint uint uint))
(define-extern tie-debug-frag-one (function uint uint uint))
(define-extern walk-tie-generic-prototypes (function none))
(define-extern *pke-hack* vector)
(define-extern draw-inline-array-instance-tie (function pointer (inline-array instance-tie) int dma-buffer none))
(define-extern draw-inline-array-prototype-tie-asm (function dma-buffer int prototype-array-tie none))
(define-extern instance-tie-patch-buckets (function dma-buffer level object))
(define-extern draw-drawable-tree-instance-tie (function drawable-tree-instance-tie level none))
;; (define-extern tie-init-scissor-buf function)
;; (define-extern tie-init-buf function)
;; (define-extern tie-init-envmap-buf function)
;; (define-extern tie-init-envmap-scissor-buf function)
;; (define-extern *tie-init-table* object)
(define-extern tie-init-scissor-buf (function bucket-id gs-alpha gs-test gs-test none))
(define-extern tie-init-buf (function bucket-id gs-alpha gs-test gs-test none))
(define-extern tie-init-envmap-buf (function bucket-id gs-alpha int int none))
(define-extern tie-init-envmap-scissor-buf (function bucket-id gs-alpha int int none))
(define-extern *tie-init-table* (inline-array tie-init-data))
(define-extern tie-vu1-init-buffers (function none))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+2 -1
View File
@@ -290,7 +290,8 @@
"start-perf-stat-collection": [26],
"end-perf-stat-collection": [0],
"upload-vis-bits": [2, 6, 3, 0],
"set-background-regs!":[4, 3]
"set-background-regs!":[4, 3],
"draw-drawable-tree-instance-tie": [21, 23, 31, 33]
},
// Sometimes the game might use format strings that are fetched dynamically,
+4 -2
View File
@@ -189,8 +189,8 @@
["L896", "(pointer uint64)", 1],
["L897", "(pointer uint64)", 1]
],
"nav-mesh": [["L347", "(inline-array vector)", 2]],
"tfrag-methods": [["L119", "(inline-array tfrag-init-data)", 6]],
"nav-mesh": [["L347", "(inline-array vector)", 2]],
"progress": [
["L879", "uint64", true],
["L880", "uint64", true],
@@ -250,5 +250,7 @@
["L790", "uint64", true],
["L791", "uint64", true]
],
"target-gun": [["L595", "uint64", true]]
"target-gun": [["L595", "uint64", true]],
"tie-methods": [["L328", "(inline-array tie-init-data)", 6]],
"nav-mesh": [["L347", "(inline-array vector)", 2]]
}
+89
View File
@@ -2409,6 +2409,95 @@
[[128, 152], "a2", "dma-packet"],
[[157, 162], "a1", "dma-packet"]
],
"tfrag-scissor-vu1-init-buf": [
[[25, 34], "v1", "dma-packet"],
[[61, 66], "v1", "dma-packet"],
[69, "v1", "(pointer uint32)"]
],
"(method 9 tie-fragment)": [
[21, "a2", "(pointer int32)"],
[26, "a3", "(pointer int32)"],
[[1, 70], "s5", "adgif-shader"]
],
"tie-init-engine": [
[[11, 25], "a0", "dma-packet"],
[[37, 45], "a0", "dma-packet"],
[[47, 54], "a0", "dma-packet"],
[[57, 64], "v1", "vector"],
[[65,72], "v1", "(pointer vif-tag)"]
],
"tie-end-buffer": [
[[1, 8], "a1", "dma-packet"],
[[10, 17], "a1", "gs-gif-tag"],
[21, "a1", "(pointer gs-test)"],
[23, "a1", "(pointer gs-reg64)"],
[[27, 34], "a1", "dma-packet"],
[38, "a0", "(pointer vif-tag)"],
[40, "a0", "(pointer vif-tag)"],
[42, "a0", "(pointer vif-tag)"],
[44, "a0", "(pointer vif-tag)"],
[[45, 49], "a0", "(pointer int32)"]
],
"tie-ints": [
[17, "v1", "(pointer uint32)"],
[21, "v1", "(pointer uint32)"]
],
"(method 13 drawable-tree-instance-tie)": [
[[51, 70], "t1", "tie-fragment"],
[[102, 120], "a3", "tie-fragment"],
[[160, 178], "t1", "tie-fragment"],
[[211, 229], "a3", "tie-fragment"],
[[266, 286], "t1", "tie-fragment"],
[[320, 340], "a1", "tie-fragment"],
[[381, 400], "t1", "tie-fragment"],
[[432, 450], "a3", "tie-fragment"],
[[487, 507], "t1", "tie-fragment"],
[[541, 561], "a1", "tie-fragment"],
[[598, 616], "t1", "tie-fragment"],
[[649, 667], "a3", "tie-fragment"],
[[703, 723], "t1", "tie-fragment"],
[[756, 776], "a1", "tie-fragment"]
],
"draw-drawable-tree-instance-tie": [
[[23, 37], "v1", "drawable-inline-array-node"],
[25, "a0", "drawable-inline-array-node"],
[120, "s2", "drawable-inline-array-instance-tie"],
[132, "v1", "int"],
[132, "a0", "int"]
],
"instance-tie-patch-buckets": [
[39, "a0", "(pointer uint64)"],
[152, "a0", "(pointer uint64)"],
[265, "a0", "(pointer uint64)"],
[378, "a0", "(pointer uint64)"],
[491, "a0", "(pointer uint64)"],
[605, "a0", "(pointer uint64)"],
[719, "a0", "(pointer uint64)"],
[833, "a0", "(pointer uint64)"],
[947, "a0", "(pointer uint64)"],
[1061, "a0", "(pointer uint64)"],
[1175, "a0", "(pointer uint64)"],
[1289, "a0", "(pointer uint64)"],
[1403, "a0", "(pointer uint64)"],
[[51, 57], "a0", "dma-packet"],
[[164, 170], "a0", "dma-packet"]
],
"tie-floats": [[[3, 73], "gp", "(pointer uint32)"]],
"tie-init-buf": [
[[24, 31], "a0", "dma-packet"],
[[33, 40], "a0", "gs-gif-tag"],
[44, "a0", "(pointer gs-zbuf)"],
[46, "a0", "(pointer gs-reg64)"],
[[49, 59], "v1", "dma-packet"],
[[84, 90], "v1", "dma-packet"],
[92, "v1", "(pointer int32)"]
],
"tie-init-envmap-buf": [
[[23, 33], "v1", "dma-packet"],
[[58, 64], "v1", "dma-packet"],
[66, "v1", "(pointer int32)"]
],
"(enter othercam-running)": [[[50, 60], "gp", "process-drawable"]],
"(code othercam-running)": [[[2, 65], "s2", "process-drawable"]],
"(method 10 progress)": [[45, "t9", "(function progress none)"]],