mirror of
https://github.com/open-goal/jak-project
synced 2026-06-28 19:21:06 -04:00
45318be063
* decomp: mostly finish `cam-master` * decomp/scripts: lots of work in cam-states * stash * Merge remote-tracking branch 'water111/master' into decomp/camera-master Updated submodule third-party/googletest * decompiler: Add support for non power of 2 offsets for inline arr access * decomp: mostly finish `cam-states` need to fix a macro issue * blocked: `cam-master` decompiler crash when adding casts * decomp: finish `cam-states-dbg` * decomp: mostly finish `pov-camera` with the exception of joint-related code * decomp: `cam-debug` finished decompiling, no way does this compile yet though * decomp: considerable work done in `cam-layout` * decomp: `cam-layout` almost done! * decomp: `pov-camera` finished, TC tests will fail for now * decomp: working on resolving issues * decomp: cam-layout decompiling * fixing more issues in cam-master...one event handler remains * skip problematic function in `cam-master` for now * gsrc: update res macros * decomp: finish `cam-states` * decomp: giving up on `cam-debug` * tests: allow skipping state handlers in ref tests * decomp: working through cam-layout bugs * decomp: allow for shifting non-integers * decomp: finalize `cam-layout` and `cam-master` * decomp: finalize `cam-states` * cleanup: bi-annual formatting of the casting files * formatting * address feedback - leave the float labels alone for now * address feedback * linting/formatting * update gsrc and ref tests Co-authored-by: ManDude <7569514+ManDude@users.noreply.github.com>
78 lines
3.1 KiB
Common Lisp
Vendored
78 lines
3.1 KiB
Common Lisp
Vendored
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; definition for function cam-stop
|
|
;; INFO: Return type mismatch (state camera-slave) vs state.
|
|
(defun cam-stop ()
|
|
(kill-by-name 'camera-master *active-pool*)
|
|
(kill-by-name 'camera-slave *active-pool*)
|
|
(kill-by-name 'camera-combiner *active-pool*)
|
|
(set! *camera* #f)
|
|
(set! *camera-combiner* #f)
|
|
(let ((v0-3 cam-string))
|
|
(set! *camera-base-mode* v0-3)
|
|
(the-as state v0-3)
|
|
)
|
|
)
|
|
|
|
;; definition for function cam-start
|
|
;; INFO: Return type mismatch int vs none.
|
|
(defun cam-start ((arg0 symbol))
|
|
(cam-stop)
|
|
(let ((s5-0 (get-process *camera-dead-pool* camera-combiner #x4000)))
|
|
(when s5-0
|
|
(let ((t9-2 (method-of-type camera-combiner activate)))
|
|
(t9-2
|
|
(the-as camera-combiner s5-0)
|
|
*camera-pool*
|
|
'camera-combiner
|
|
(the-as pointer #x70004000)
|
|
)
|
|
)
|
|
(run-now-in-process s5-0 cam-combiner-init)
|
|
(-> s5-0 ppointer)
|
|
)
|
|
)
|
|
(let ((s5-1 (get-process *camera-master-dead-pool* camera-master #x4000)))
|
|
(set! *camera* (the-as camera-master (ppointer->process (when s5-1
|
|
(let
|
|
((t9-5
|
|
(method-of-type
|
|
camera-master
|
|
activate
|
|
)
|
|
)
|
|
)
|
|
(t9-5
|
|
(the-as
|
|
camera-master
|
|
s5-1
|
|
)
|
|
*camera-pool*
|
|
'camera-master
|
|
(the-as
|
|
pointer
|
|
#x70004000
|
|
)
|
|
)
|
|
)
|
|
(run-next-time-in-process
|
|
s5-1
|
|
cam-master-init
|
|
)
|
|
(-> s5-1 ppointer)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(if arg0
|
|
(reset-cameras)
|
|
)
|
|
0
|
|
(none)
|
|
)
|
|
|
|
;; failed to figure out what this is:
|
|
(cam-start #f)
|