d/jak2: update related gsrc code as well

This commit is contained in:
Tyler Wilding
2022-10-09 23:13:34 -04:00
parent 5df3eaa18a
commit a409f9064e
14 changed files with 1027 additions and 1067 deletions
@@ -47,7 +47,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
gp-0
(the-as (pointer dma-tag) a3-3)
)
@@ -623,7 +623,7 @@
(let ((a0-1 4))
(when (and v1-0 (= (-> v1-0 formatted) 1) (= (-> v1-0 inited) 1))
(dotimes (a1-5 a0-1)
(set! s5-0 (logior (the-as game-secrets s5-0) (-> v1-0 file a1-5 secrets)))
(set! s5-0 (logior s5-0 (-> v1-0 file a1-5 secrets)))
)
)
)
@@ -1710,7 +1710,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s1-1
(the-as (pointer dma-tag) a3-5)
)
@@ -1793,7 +1793,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s1-1
(the-as (pointer dma-tag) a3-5)
)
@@ -1893,7 +1893,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s1-1
(the-as (pointer dma-tag) a3-5)
)
@@ -1979,7 +1979,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s1-1
(the-as (pointer dma-tag) a3-5)
)
@@ -2089,7 +2089,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s1-1
(the-as (pointer dma-tag) a3-5)
)
@@ -2248,7 +2248,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s2-4
(the-as (pointer dma-tag) a3-14)
)
@@ -2322,7 +2322,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s2-5
(the-as (pointer dma-tag) a3-32)
)
@@ -3757,7 +3757,7 @@
(set! sv-48 0)
(while (< sv-48 s4-0)
(set! sv-64 print-game-text)
(let ((a0-4 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options sv-48 box 0 min x)) #f))
(let ((a0-4 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 sv-48 text)) #f))
(a1-16 arg1)
(a2-4 #t)
(a3-3 44)
@@ -3768,55 +3768,54 @@
(set! sv-48 (+ sv-48 1))
)
(let ((s0-1 (- s0-0 (the int f28-0)))
(f28-1
(cond
((< (-> arg0 sliding-height) 0.0)
(set! sv-112 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s4-0 box 0 min x)) #f))
0.0
(set! sv-80 print-game-text)
(set! sv-96 format)
(let ((a0-7 (clear *temp-string*))
(a1-18 "~S")
)
(sv-96 a0-7 a1-18 sv-112)
)
(let* ((a0-8 *temp-string*)
(a1-19 arg1)
(a2-7 #t)
(a3-4 44)
(t0-4 320)
(f0-16 (sv-80 a0-8 a1-19 a2-7 a3-4 t0-4))
(f28-1 (cond
((< (-> arg0 sliding-height) 0.0)
(set! sv-112 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 s4-0 text)) #f))
0.0
(set! sv-80 print-game-text)
(set! sv-96 format)
(let ((a0-7 (clear *temp-string*))
(a1-18 "~S")
)
(sv-96 a0-7 a1-18 sv-112)
)
(* (-> arg0 sliding-height) f0-16)
)
)
(else
(set! sv-160 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options (+ s4-0 -1) box 0 min x)) #f))
0.0
(set! sv-128 print-game-text)
(set! sv-144 format)
(let ((a0-11 (clear *temp-string*))
(a1-21 "~S")
(let* ((a0-8 *temp-string*)
(a1-19 arg1)
(a2-7 #t)
(a3-4 44)
(t0-4 320)
(f0-16 (sv-80 a0-8 a1-19 a2-7 a3-4 t0-4))
)
(* (-> arg0 sliding-height) f0-16)
)
(sv-144 a0-11 a1-21 sv-160)
)
(let* ((a0-12 *temp-string*)
(a1-22 arg1)
(a2-10 #t)
(a3-5 44)
(t0-5 320)
(f0-18 (sv-128 a0-12 a1-22 a2-10 a3-5 t0-5))
)
(else
(set! sv-160 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 (+ s4-0 -1) text)) #f))
0.0
(set! sv-128 print-game-text)
(set! sv-144 format)
(let ((a0-11 (clear *temp-string*))
(a1-21 "~S")
)
(sv-144 a0-11 a1-21 sv-160)
)
(* (-> arg0 sliding-height) f0-18)
)
)
)
)
(let* ((a0-12 *temp-string*)
(a1-22 arg1)
(a2-10 #t)
(a3-5 44)
(t0-5 320)
(f0-18 (sv-128 a0-12 a1-22 a2-10 a3-5 t0-5))
)
(* (-> arg0 sliding-height) f0-18)
)
)
)
)
)
(set! (-> arg1 origin y) (the float (+ s0-1 (the int f28-1))))
(while (< s3-0 (length s2-0))
(set! sv-176 print-game-text)
(let* ((a0-14 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0 min x)) #f))
(let* ((a0-14 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 s3-0 text)) #f))
(a1-24 arg1)
(a2-12 #t)
(a3-6 44)
@@ -3843,7 +3842,7 @@
)
)
(set! sv-224 print-game-text)
(let ((a0-23 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 options s3-0 box 0 min x)) #f))
(let ((a0-23 (lookup-text! *common-text* (the-as game-text-id (-> s2-0 s3-0 text)) #f))
(a1-28 arg1)
(a2-16 #f)
(a3-7 44)
@@ -7212,7 +7211,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
s0-2
(the-as (pointer dma-tag) a3-3)
)
@@ -7255,7 +7254,7 @@
)
(dma-bucket-insert-tag
(-> *display* frames (-> *display* on-screen) bucket-group)
(bucket-id bucket-313)
(bucket-id particles)
gp-1
(the-as (pointer dma-tag) a3-7)
)
@@ -15,7 +15,7 @@
(define-extern *progress-process* (pointer progress))
(define-extern activate-progress (function process symbol none))
(define-extern memcard-unlocked-secrets? "TODO - returns a bitfield" (function symbol int))
(define-extern memcard-unlocked-secrets? (function symbol game-secrets))
(define-extern progress-selected (function int int :behavior progress))
(define-extern get-num-highscores (function int))
(define-extern get-next-highscore (function int int))
@@ -192,9 +192,8 @@
(deftype menu-memcard-slot-option (menu-option)
((sprites hud-sprite 5 :inline :offset-assert 48)
(something-hud-related basic :offset 112)
(pad uint8 32 :offset-assert 368)
((sprites hud-sprite 5 :inline :offset-assert 48)
(pad uint8 32 :offset-assert 368)
)
:method-count-assert 12
:size-assert #x190
File diff suppressed because it is too large Load Diff
+44 -41
View File
@@ -852,7 +852,7 @@
(set! (-> obj current-options) *save-options-title*)
)
(('select-save-title-hero)
(logior! (-> *game-info* purchase-secrets) #x8000)
(logior! (-> *game-info* purchase-secrets) (game-secrets hero-mode))
(logior! (-> *game-info* secrets) (game-secrets hero-mode))
(set! (-> obj current-options) *save-options-title*)
)
@@ -1334,21 +1334,6 @@
0
)
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
;; WARN: Stack slot offset 148 signed mismatch
(defbehavior progress-post progress ()
(local-vars (sv-144 font-context) (sv-148 int) (sv-152 hud-box) (sv-156 symbol))
(when (-> self current-options)
@@ -1503,17 +1488,17 @@
(defstate idle (progress)
:virtual #t
:event (behavior ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block))
(let ((v1-0 arg2))
:event (behavior ((proc process) (arg1 int) (event-type symbol) (event event-message-block))
(let ((v1-0 event-type))
(the-as
object
(when (= v1-0 'notify)
(cond
((= (-> arg3 param 0) 'done)
((= (-> event param 0) 'done)
(let ((t9-0 format)
(a0-3 #t)
(a1-1 "DONE NOTIFY: ~S ~S~%")
(v1-3 (the-as mc-status-code (-> arg3 param 1)))
(v1-3 (the-as mc-status-code (-> event param 1)))
)
(t9-0
a0-3
@@ -1586,7 +1571,7 @@
((= (-> self state-stack 0) 'title)
(let ((gp-1 (-> *setting-control* user-default auto-save)))
(sound-volume-off)
(let ((v0-0 (progress-intro-start (logtest? (-> *game-info* purchase-secrets) #x8000))))
(let ((v0-0 (progress-intro-start (logtest? (-> *game-info* purchase-secrets) (game-secrets hero-mode)))))
(set! (-> *setting-control* user-default auto-save) gp-1)
v0-0
)
@@ -1608,11 +1593,11 @@
)
)
)
((= (-> arg3 param 0) 'error)
((= (-> event param 0) 'error)
(let ((t9-7 format)
(a0-18 #t)
(a1-5 "ERROR NOTIFY: ~S ~S ~S~%")
(v1-19 (the-as mc-status-code (-> arg3 param 1)))
(v1-19 (the-as mc-status-code (-> event param 1)))
)
(t9-7
a0-18
@@ -1680,7 +1665,7 @@
(-> self next)
)
)
(case (-> arg3 param 1)
(case (-> event param 1)
((14)
(set-next-state self 'insufficient-space 0)
)
@@ -2139,7 +2124,7 @@
)
)
((= (-> obj name) (game-text-id progress-continue-without-saving))
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) #x8000))
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) (game-secrets hero-mode)))
)
((= (-> obj next-state) 'back)
(progress-method-30 arg0)
@@ -2157,7 +2142,7 @@
(defmethod respond-progress menu-unlocked-menu-option ((obj menu-unlocked-menu-option) (arg0 progress) (arg1 object))
"Handle progress menu navigation logic."
(let ((s4-0 (memcard-unlocked-secrets? #t)))
(set! (-> *game-info* purchase-secrets) (logand -32769 (-> *game-info* purchase-secrets)))
(logclear! (-> *game-info* purchase-secrets) (game-secrets hero-mode))
(logclear! (-> *game-info* secrets) (game-secrets hero-mode))
(when (not (-> *progress-state* secrets-unlocked))
(set! (-> *progress-state* secrets-unlocked) #f)
@@ -2169,7 +2154,9 @@
(logclear! (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons confirm))
(logclear! (-> *cpad-list* cpads 0 button0-rel 0) (pad-buttons confirm))
(cond
((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook)) (logtest? s4-0 512))
((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook))
(logtest? s4-0 (game-secrets scrap-book-1))
)
(sound-play "generic-beep")
(cond
((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 1)
@@ -2183,7 +2170,9 @@
)
)
)
((and (= (-> obj name) (game-text-id progress-main-secrets-mega-scrapbook)) (logtest? s4-0 1024))
((and (= (-> obj name) (game-text-id progress-main-secrets-mega-scrapbook))
(logtest? s4-0 (game-secrets scrap-book-2))
)
(sound-play "generic-beep")
(cond
((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 2)
@@ -2197,7 +2186,9 @@
)
)
)
((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook-3)) (logtest? s4-0 2048))
((and (= (-> obj name) (game-text-id progress-main-secrets-scrapbook-3))
(logtest? s4-0 (game-secrets scrap-book-3))
)
(sound-play "generic-beep")
(cond
((send-event (handle->process (-> *game-info* controller 0)) 'scrap-book 3)
@@ -2211,30 +2202,40 @@
)
)
)
((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1)) (logtest? s4-0 32))
((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-1))
(logtest? s4-0 (game-secrets scene-player-1))
)
(set! (-> *progress-state* scene-player-act) 1)
(sound-play "generic-beep")
(progress-method-29 arg0)
(set-next-state arg0 'select-scene 0)
)
((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2)) (logtest? s4-0 64))
((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-2))
(logtest? s4-0 (game-secrets scene-player-2))
)
(set! (-> *progress-state* scene-player-act) 2)
(sound-play "generic-beep")
(progress-method-29 arg0)
(set-next-state arg0 'select-scene 0)
)
((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3)) (logtest? s4-0 128))
((and (= (-> obj name) (game-text-id progress-main-secrets-sceneplayer-3))
(logtest? s4-0 (game-secrets scene-player-3))
)
(set! (-> *progress-state* scene-player-act) 3)
(sound-play "generic-beep")
(progress-method-29 arg0)
(set-next-state arg0 'select-scene 0)
)
((and (= (-> obj name) (game-text-id progress-main-secrets-hero-mode)) (logtest? s4-0 #x8000))
((and (= (-> obj name) (game-text-id progress-main-secrets-hero-mode))
(logtest? s4-0 (game-secrets hero-mode))
)
(sound-play "generic-beep")
(progress-method-29 arg0)
(set-next-state arg0 'select-save-title-hero 0)
)
((and (= (-> obj name) (game-text-id progress-main-secrets-levelselect)) (logtest? s4-0 256))
((and (= (-> obj name) (game-text-id progress-main-secrets-levelselect))
(logtest? s4-0 (game-secrets level-select))
)
(sound-play "generic-beep")
(progress-method-29 arg0)
(set-next-state arg0 'select-start 0)
@@ -2395,7 +2396,7 @@
((= (-> arg0 state-stack 0) 'title)
(sound-play "generic-beep")
(sound-volume-off)
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) #x8000))
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) (game-secrets hero-mode)))
)
(else
(sound-play "generic-beep")
@@ -2462,11 +2463,13 @@
(let ((a1-9 'select-save-title-hero))
'select-save
(cond
((and (= (-> *progress-state* starting-state) 'main) (zero? (logand (-> *game-info* purchase-secrets) #x8000)))
((and (= (-> *progress-state* starting-state) 'main)
(zero? (logand (-> *game-info* purchase-secrets) (game-secrets hero-mode)))
)
(set! a1-9 'select-save)
)
((and (= (-> *progress-state* starting-state) 'title)
(zero? (logand (-> *game-info* purchase-secrets) #x8000))
(zero? (logand (-> *game-info* purchase-secrets) (game-secrets hero-mode)))
)
(set! a1-9 'select-save-title)
)
@@ -2489,7 +2492,7 @@
((= (-> arg0 state-stack 0) 'title)
(sound-play "generic-beep")
(sound-volume-off)
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) #x8000))
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) (game-secrets hero-mode)))
)
(else
(sound-play "generic-beep")
@@ -2856,7 +2859,7 @@
((= (-> arg0 state-stack 0) 'title)
(sound-play "generic-beep")
(sound-volume-off)
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) #x8000))
(progress-intro-start (logtest? (-> *game-info* purchase-secrets) (game-secrets hero-mode)))
)
(else
(sound-play "generic-beep")
@@ -3035,10 +3038,10 @@
(set! *display-profile* s3-2)
)
(set! (-> *game-info* mode) 'play)
(let ((s5-1 (-> s4-0 options (-> obj task-index))))
(let ((s5-1 (-> s4-0 (-> obj task-index))))
(set! (-> *game-info* demo-state) (the-as uint 100))
(logior! (-> *game-info* secrets) (game-secrets scene-player-1))
(process-spawn scene-player :init scene-player-init (-> s5-1 unknown) #t (-> s5-1 scale))
(process-spawn scene-player :init scene-player-init (-> s5-1 info) #t (-> s5-1 continue))
)
(set-master-mode 'game)
)