;;-*-Lisp-*- (in-package goal) ;; definition for symbol generic-vu1-block, type vu-function (define generic-vu1-block (new 'static 'vu-function :length #x446 :qlength #x223)) ;; definition for function generic-setup-constants ;; INFO: Return type mismatch int vs none. ;; Used lq/sq (defun generic-setup-constants ((arg0 generic-constants) (arg1 int)) (let ((a2-0 *math-camera*)) (set-vector! (-> arg0 fog) (-> a2-0 pfog0) (-> a2-0 fog-min) (-> a2-0 fog-max) 3071.0) ) (set! (-> arg0 adgif tag) (new 'static 'gif-tag64 :nloop #x7 :nreg #x1)) (set! (-> arg0 adgif regs) (new 'static 'gif-tag-regs :regs0 (gif-reg-id a+d))) (set! (-> arg0 giftag tag) (new 'static 'gif-tag64 :pre #x1 :nreg #x3 :prim (new 'static 'gs-prim :prim (gs-prim-type tri-strip) :iip #x1 :tme #x1 :fge #x1 :abe arg1) ) ) (set! (-> arg0 giftag regs) (new 'static 'gif-tag-regs :regs0 (gif-reg-id st) :regs1 (gif-reg-id rgbaq) :regs2 (gif-reg-id xyzf2)) ) (set! (-> arg0 hvdf-offset quad) (-> *math-camera* hvdf-off quad)) (set! (-> arg0 hmge-scale quad) (-> *math-camera* hmge-scale quad)) (set! (-> arg0 invh-scale quad) (-> *math-camera* inv-hmge-scale quad)) (set! (-> arg0 guard quad) (-> *math-camera* guard quad)) (set! (-> arg0 adnop dword 0) (the-as uint #x5026b)) (set! (-> arg0 adnop dword 1) (the-as uint 71)) (set! (-> arg0 flush dword 0) (the-as uint #x3f80000080808080)) (set! (-> arg0 flush dword 1) (the-as uint 1)) (none) ) ;; definition for function generic-add-constants ;; INFO: Return type mismatch pointer vs none. (defun generic-add-constants ((arg0 dma-buffer) (arg1 int)) (let* ((a2-0 10) (v1-0 arg0) (a0-1 (the-as dma-packet (-> v1-0 base))) ) (set! (-> a0-1 dma) (new 'static 'dma-tag :id (dma-tag-id cnt) :qwc a2-0)) (set! (-> a0-1 vif0) (new 'static 'vif-tag :imm #x404 :cmd (vif-cmd stcycl))) (set! (-> a0-1 vif1) (new 'static 'vif-tag :imm #x381 :cmd (vif-cmd unpack-v4-32) :num a2-0)) (set! (-> v1-0 base) (the-as pointer (&+ a0-1 16))) ) (generic-setup-constants (the-as generic-constants (-> arg0 base)) arg1) (&+! (-> arg0 base) 160) (none) ) ;; definition for function generic-init-buf ;; INFO: Return type mismatch int vs none. (defun generic-init-buf ((arg0 dma-buffer) (arg1 int) (arg2 gs-zbuf)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask generic)) (dma-buffer-add-vu-function arg0 generic-vu1-block 1) (let* ((v1-3 arg0) (a0-2 (the-as dma-packet (-> v1-3 base))) ) (set! (-> a0-2 dma) (new 'static 'dma-tag :qwc #x3 :id (dma-tag-id cnt))) (set! (-> a0-2 vif0) (new 'static 'vif-tag)) (set! (-> a0-2 vif1) (new 'static 'vif-tag :imm #x3 :cmd (vif-cmd direct) :msk #x1)) (set! (-> v1-3 base) (the-as pointer (&+ a0-2 16))) ) (let* ((v1-4 arg0) (a0-4 (the-as gs-gif-tag (-> v1-4 base))) ) (set! (-> a0-4 tag) (new 'static 'gif-tag64 :nloop #x1 :eop #x1 :nreg #x2)) (set! (-> a0-4 regs) (new 'static 'gif-tag-regs :regs0 (gif-reg-id a+d) :regs1 (gif-reg-id a+d) :regs2 (gif-reg-id a+d) :regs3 (gif-reg-id a+d) :regs4 (gif-reg-id a+d) :regs5 (gif-reg-id a+d) :regs6 (gif-reg-id a+d) :regs7 (gif-reg-id a+d) :regs8 (gif-reg-id a+d) :regs9 (gif-reg-id a+d) :regs10 (gif-reg-id a+d) :regs11 (gif-reg-id a+d) :regs12 (gif-reg-id a+d) :regs13 (gif-reg-id a+d) :regs14 (gif-reg-id a+d) :regs15 (gif-reg-id a+d) ) ) (set! (-> v1-4 base) (the-as pointer (&+ a0-4 16))) ) (let* ((v1-5 arg0) (a0-6 (-> v1-5 base)) ) (set! (-> (the-as (pointer gs-test) a0-6) 0) (new 'static 'gs-test :ate #x1 :atst (gs-atest greater-equal) :aref #x26 :afail #x1 :zte #x1 :ztst (gs-ztest greater-equal) ) ) (set! (-> (the-as (pointer uint64) a0-6) 1) (the-as uint (gs-reg test-1))) (set! (-> (the-as (pointer gs-zbuf) a0-6) 2) arg2) (set! (-> (the-as (pointer uint64) a0-6) 3) (the-as uint (gs-reg zbuf-1))) (set! (-> v1-5 base) (&+ a0-6 32)) ) (generic-add-constants arg0 arg1) (let* ((v1-6 arg0) (a0-9 (the-as dma-packet (-> v1-6 base))) ) (set! (-> a0-9 dma) (new 'static 'dma-tag :qwc #x2 :id (dma-tag-id cnt))) (set! (-> a0-9 vif0) (new 'static 'vif-tag :cmd (vif-cmd mscalf) :msk #x1)) (set! (-> a0-9 vif1) (new 'static 'vif-tag :cmd (vif-cmd stmod))) (set! (-> v1-6 base) (the-as pointer (&+ a0-9 16))) ) (let ((v1-7 (the-as (pointer int32) (-> arg0 base)))) (set! (-> (the-as (pointer vif-tag) v1-7) 0) (new 'static 'vif-tag :cmd (vif-cmd base))) (set! (-> (the-as (pointer vif-tag) v1-7) 1) (new 'static 'vif-tag :cmd (vif-cmd offset))) (set! (-> (the-as (pointer vif-tag) v1-7) 2) (new 'static 'vif-tag)) (set! (-> (the-as (pointer vif-tag) v1-7) 3) (new 'static 'vif-tag :cmd (vif-cmd strow) :msk #x1)) (set! (-> v1-7 4) 0) (set! (-> v1-7 5) 0) (set! (-> v1-7 6) 0) (set! (-> v1-7 7) 0) (set! (-> arg0 base) (&+ (the-as pointer v1-7) 32)) ) ) 0 (none) ) ;; definition for function generic-reset-buffers ;; INFO: Return type mismatch int vs none. (defun generic-reset-buffers ((arg0 dma-buffer) (arg1 int) (arg2 int)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask generic)) (let ((a3-0 (new 'static 'vector4w :x #x345 :y #x363)) (v1-3 (new 'static 'vector4w :y #x117 :z #x22e)) ) (let* ((t0-0 arg0) (t1-0 (the-as object (-> t0-0 base))) ) (set! (-> (the-as dma-packet t1-0) dma) (new 'static 'dma-tag :qwc #x2 :id (dma-tag-id cnt))) (set! (-> (the-as dma-packet t1-0) vif0) (new 'static 'vif-tag :imm #x404 :cmd (vif-cmd stcycl))) (set! (-> (the-as dma-packet t1-0) vif1) (new 'static 'vif-tag :imm #x38a :num #x1 :cmd (vif-cmd unpack-v4-32)) ) (set! (-> t0-0 base) (the-as pointer (the-as dma-packet (&+ (the-as pointer t1-0) 16)))) ) (let ((t0-1 (-> arg0 base))) (set! (-> (the-as (pointer int32) t0-1)) 0) (s.w! (+ t0-1 4) 0) (let ((a1-3 (-> (the-as (pointer int32) (+ (the-as uint a3-0) (* arg1 4)))))) (s.w! (+ t0-1 8) a1-3) ) (let ((v1-5 (-> (the-as (pointer int32) (+ (the-as uint v1-3) (* arg2 4)))))) (s.w! (+ t0-1 12) v1-5) ) (s.w! (+ t0-1 16) 0) (s.w! (+ t0-1 20) 0) (s.w! (+ t0-1 24) 0) (let ((v1-6 #x1500000c)) (s.w! (+ t0-1 28) v1-6) ) (set! (-> arg0 base) (&+ t0-1 32)) ) ) ) 0 (none) )