[decomp] game-info (#779)

* support more process stuff

* more of game info

* add ref file

* progress on save
This commit is contained in:
water111
2021-08-22 20:12:47 -04:00
committed by GitHub
parent 30d1e1d6c9
commit 403bb5f4de
117 changed files with 6234 additions and 2243 deletions
+10 -27
View File
@@ -1953,10 +1953,7 @@
(*
0.0625
(cos
(the
float
(* 4000 (the-as int (-> *display* integral-frame-counter)))
)
(the float (* 4000 (-> *display* integral-frame-counter)))
)
)
)
@@ -1967,12 +1964,7 @@
)
(*
0.125
(cos
(the
float
(* 1500 (the-as int (-> *display* integral-frame-counter)))
)
)
(cos (the float (* 1500 (-> *display* integral-frame-counter))))
)
)
)
@@ -3298,11 +3290,11 @@
(when (and *target* (= (-> *target* next-state name) 'target-continue))
(set!
(-> (the-as (pointer int64) s4-0) 0)
(the-as int (+ (-> *display* base-frame-counter) -10000))
(+ (-> *display* base-frame-counter) -10000)
)
(set!
(-> (the-as (pointer int64) s4-0) 1)
(the-as int (+ (-> *display* base-frame-counter) -10000))
(+ (-> *display* base-frame-counter) -10000)
)
)
(update-mood-fog arg0 arg1)
@@ -3376,7 +3368,7 @@
float
(-
(-> *display* base-frame-counter)
(the-as uint (-> (the-as (pointer int64) s4-0) 1))
(-> (the-as (pointer int64) s4-0) 1)
)
)
)
@@ -3419,7 +3411,7 @@
(else
(set!
(-> (the-as (pointer int64) s4-0) 1)
(the-as int (-> *display* base-frame-counter))
(-> *display* base-frame-counter)
)
)
)
@@ -3431,7 +3423,7 @@
float
(-
(-> *display* base-frame-counter)
(the-as uint (-> (the-as (pointer int64) s4-0) 0))
(-> (the-as (pointer int64) s4-0) 0)
)
)
)
@@ -3465,7 +3457,7 @@
(set! (-> *time-of-day-proc* 0 frame) 0)
(set!
(-> (the-as (pointer int64) s4-0) 0)
(the-as int (-> *display* base-frame-counter))
(-> *display* base-frame-counter)
)
(dotimes (v1-72 8)
(set! (-> arg0 sky-times v1-72) 0.0)
@@ -3665,13 +3657,7 @@
(*
0.125
(cos
(the
float
(*
4000
(the-as int (-> *display* integral-frame-counter))
)
)
(the float (* 4000 (-> *display* integral-frame-counter)))
)
)
)
@@ -3685,10 +3671,7 @@
(*
0.25
(cos
(the
float
(* 1500 (the-as int (-> *display* integral-frame-counter)))
)
(the float (* 1500 (-> *display* integral-frame-counter)))
)
)
)
+38 -24
View File
@@ -35,26 +35,44 @@
(-> s5-0 ppointer)
)
)
(let* ((s5-1 (get-process *camera-master-dead-pool* camera-master #x4000))
(v1-5 (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)
)
)
((the-as (function process object function) set-to-run)
(the-as process (-> s5-1 main-thread))
cam-master-init
)
(-> s5-1 ppointer)
)
)
)
(set! *camera* (the-as camera-master (if v1-5
(-> v1-5 0 self)
(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
)
)
)
((the-as
(function process object function)
set-to-run
)
(the-as
process
(->
s5-1
main-thread
)
)
cam-master-init
)
(-> s5-1 ppointer)
)
)
)
)
@@ -68,7 +86,3 @@
;; failed to figure out what this is:
(cam-start #f)
@@ -9,7 +9,7 @@
(transv-out vector :inline :offset-assert 48)
(local-normal vector :inline :offset-assert 64)
(surface-normal vector :inline :offset-assert 80)
(time uint64 :offset-assert 96)
(time int64 :offset-assert 96)
(status uint64 :offset-assert 104)
(pat pat-surface :offset-assert 112)
(reaction-flag uint32 :offset-assert 116)
+1 -1
View File
@@ -63,7 +63,7 @@
((name basic :offset-assert 4)
(length int16 :offset-assert 8)
(allocated-length int16 :offset-assert 10)
(engine-time uint64 :offset-assert 16)
(engine-time int64 :offset-assert 16)
(alive-list connectable :inline :offset-assert 32)
(alive-list-end connectable :inline :offset-assert 48)
(dead-list connectable :inline :offset-assert 64)
+19 -16
View File
@@ -107,21 +107,21 @@
;; definition of type fact-info
(deftype fact-info (basic)
((process process :offset-assert 4)
(pickup-type pickup-type :offset-assert 8)
(pickup-amount float :offset-assert 12)
(pickup-spawn-amount float :offset-assert 16)
(options uint64 :offset-assert 24)
(fade-time uint64 :offset-assert 32)
((process process-drawable :offset-assert 4)
(pickup-type pickup-type :offset-assert 8)
(pickup-amount float :offset-assert 12)
(pickup-spawn-amount float :offset-assert 16)
(options uint64 :offset-assert 24)
(fade-time uint64 :offset-assert 32)
)
:method-count-assert 12
:size-assert #x28
:flag-assert #xc00000028
(:methods
(new (symbol type process pickup-type float) _type_ 0)
(new (symbol type process-drawable pickup-type float) _type_ 0)
(TODO-RENAME-9 (_type_ symbol process-tree fact-info int) uint 9)
(reset! (_type_ symbol) none 10)
(dummy-11 (_type_) float 11)
(pickup-collectable! (_type_ pickup-type float handle) float 11)
)
)
@@ -150,7 +150,7 @@
(eco-pill float :offset-assert 80)
(eco-pill-max float :offset-assert 84)
(health-pickup-time uint64 :offset-assert 88)
(eco-source uint64 :offset-assert 96)
(eco-source handle :offset-assert 96)
(eco-source-time uint64 :offset-assert 104)
(money-pickup-time uint64 :offset-assert 112)
(buzzer-pickup-time uint64 :offset-assert 120)
@@ -161,7 +161,7 @@
:size-assert #x90
:flag-assert #xc00000090
(:methods
(new (symbol type process pickup-type float) _type_ 0)
(new (symbol type process-drawable pickup-type float) _type_ 0)
)
)
@@ -208,7 +208,7 @@
:size-assert #x44
:flag-assert #xc00000044
(:methods
(new (symbol type process pickup-type float) _type_ 0)
(new (symbol type process-drawable pickup-type float) _type_ 0)
)
)
@@ -238,7 +238,7 @@
fact-info
((allocation symbol)
(type-to-make type)
(proc process)
(proc process-drawable)
(pkup-type pickup-type)
(pkup-amount float)
)
@@ -343,7 +343,10 @@
)
;; definition for method 11 of type fact-info
(defmethod dummy-11 fact-info ((obj fact-info))
(defmethod
pickup-collectable!
fact-info
((obj fact-info) (arg0 pickup-type) (arg1 float) (arg2 handle))
0.0
)
@@ -353,7 +356,7 @@
fact-info-enemy
((allocation symbol)
(type-to-make type)
(arg0 process)
(arg0 process-drawable)
(arg1 pickup-type)
(arg2 float)
)
@@ -482,7 +485,7 @@
fact-info-target
((allocation symbol)
(type-to-make type)
(arg0 process)
(arg0 process-drawable)
(arg1 pickup-type)
(arg2 float)
)
@@ -494,7 +497,7 @@
)
)
)
(set! (-> obj eco-source) (the-as uint #f))
(set! (-> obj eco-source) (the-as handle #f))
(reset! obj #f)
obj
)
+2 -2
View File
@@ -197,7 +197,7 @@
(death-movie-tick int32 :offset-assert 264)
(want-auto-save symbol :offset-assert 268)
(auto-save-proc handle :offset-assert 272)
(auto-save-status uint32 :offset-assert 280)
(auto-save-status mc-status-code :offset-assert 280)
(auto-save-card int32 :offset-assert 284)
(auto-save-which int32 :offset-assert 288)
(pov-camera-handle handle :offset-assert 296)
@@ -225,7 +225,7 @@
(seen-text? (_type_ game-text-id) symbol 21)
(mark-text-as-seen (_type_ game-text-id) none 22)
(got-buzzer? (_type_ game-task int) symbol 23)
(dummy-24 () none 24)
(save-game! (_type_ game-save string) none 24)
(load-game! (_type_ game-save) game-save 25)
(clear-text-seen! (_type_ game-text-id) none 26)
(get-death-count (_type_ symbol) int 27)
File diff suppressed because it is too large Load Diff
+5 -50
View File
@@ -64,56 +64,11 @@
(format #t "~Tscreeny: ~D~%" (-> obj screeny))
(format #t "~Tvibration: ~A~%" (-> obj vibration))
(format #t "~Tplay-hints: ~A~%" (-> obj play-hints))
(let ((t9-12 format)
(a0-13 #t)
(a1-12 "~Tmovie: ~A~%")
(v1-0 (-> obj movie))
)
(t9-12 a0-13 a1-12 (if v1-0
(-> v1-0 0 self)
)
)
)
(let ((t9-13 format)
(a0-14 #t)
(a1-13 "~Ttalking: ~A~%")
(v1-2 (-> obj talking))
)
(t9-13 a0-14 a1-13 (if v1-2
(-> v1-2 0 self)
)
)
)
(let ((t9-14 format)
(a0-15 #t)
(a1-14 "~Tspooling: ~A~%")
(v1-4 (-> obj spooling))
)
(t9-14 a0-15 a1-14 (if v1-4
(-> v1-4 0 self)
)
)
)
(let ((t9-15 format)
(a0-16 #t)
(a1-15 "~Thint: ~A~%")
(v1-6 (-> obj hint))
)
(t9-15 a0-16 a1-15 (if v1-6
(-> v1-6 0 self)
)
)
)
(let ((t9-16 format)
(a0-17 #t)
(a1-16 "~Tambient: ~A~%")
(v1-8 (-> obj ambient))
)
(t9-16 a0-17 a1-16 (if v1-8
(-> v1-8 0 self)
)
)
)
(format #t "~Tmovie: ~A~%" (ppointer->process (-> obj movie)))
(format #t "~Ttalking: ~A~%" (ppointer->process (-> obj talking)))
(format #t "~Tspooling: ~A~%" (ppointer->process (-> obj spooling)))
(format #t "~Thint: ~A~%" (ppointer->process (-> obj hint)))
(format #t "~Tambient: ~A~%" (ppointer->process (-> obj ambient)))
(format #t "~Tvideo-mode: ~A~%" (-> obj video-mode))
(format #t "~Taspect-ratio: ~A~%" (-> obj aspect-ratio))
(format #t "~Tsound-flava: ~D~%" (-> obj sound-flava))
+1 -8
View File
@@ -42,14 +42,7 @@
(zero?
(logand (-> *kernel-context* prevent-from-run) (process-mask progress))
)
(let ((v1-18 (get-process conn))
(a0-22 *progress-process*)
)
(= v1-18 (if a0-22
(-> a0-22 0 self)
)
)
)
(= (get-process conn) (ppointer->process *progress-process*))
)
(case (the-as symbol (-> conn param1))
(('rel)
@@ -9,8 +9,8 @@
(num-success-before-killing int8 :offset-assert 13)
(num-attempts int8 :offset-assert 14)
(num-success int8 :offset-assert 15)
(start-time uint64 :offset-assert 16)
(last-time-called uint64 :offset-assert 24)
(start-time int64 :offset-assert 16)
(last-time-called int64 :offset-assert 24)
)
:method-count-assert 9
:size-assert #x20
@@ -344,13 +344,9 @@
)
(when v1-0
(when *hint-semaphore*
(let ((v1-3 *hint-semaphore*))
(set! v1-0 (dummy-15 (the-as level-hint (if v1-3
(-> v1-3 0 self)
)
)
)
)
(set!
v1-0
(dummy-15 (the-as level-hint (ppointer->process *hint-semaphore*)))
)
0
)
@@ -358,9 +354,9 @@
(and
v1-0
(<
(the-as
int
(- (-> *display* base-frame-counter) (-> *game-info* hint-play-time))
(-
(-> *display* base-frame-counter)
(the-as int (-> *game-info* hint-play-time))
)
30
)
@@ -377,7 +373,7 @@
(not (-> *setting-control* current hint))
(not (-> *setting-control* current ambient))
(>=
(the-as int (-> *display* base-frame-counter))
(-> *display* base-frame-counter)
(the-as int (-> *game-info* blackout-time))
)
)
@@ -401,11 +397,7 @@
)
(v1-21 #t)
)
(if
(and
(= (-> gp-1 num-attempts-before-playing) 1)
(< (the-as int a0-24) 30)
)
(if (and (= (-> gp-1 num-attempts-before-playing) 1) (< a0-24 30))
(+! (-> gp-1 start-time) a0-24)
)
(cond
@@ -413,10 +405,7 @@
(!= (-> gp-1 num-attempts-before-playing) 1)
(nonzero? (-> gp-1 last-time-called))
(<
(the-as
int
(- (-> *display* base-frame-counter) (-> gp-1 last-time-called))
)
(- (-> *display* base-frame-counter) (-> gp-1 last-time-called))
150
)
)
@@ -428,7 +417,7 @@
(when (nonzero? (-> gp-1 delay-before-playing))
(if
(<
(the-as int (-> gp-1 start-time))
(-> gp-1 start-time)
(the-as int (-> gp-1 delay-before-playing))
)
(set! v1-21 #f)
@@ -470,8 +459,8 @@
(let ((v1-2 (length (-> *game-info* hint-control))))
(dotimes (a0-1 v1-2)
(let ((a1-2 (-> *game-info* hint-control a0-1)))
(set! (-> a1-2 start-time) (the-as uint 0))
(set! (-> a1-2 last-time-called) (the-as uint 0))
(set! (-> a1-2 start-time) 0)
(set! (-> a1-2 last-time-called) 0)
(set! (-> a1-2 num-attempts) 0)
(set! (-> a1-2 num-success) 0)
)
+16 -16
View File
@@ -173,22 +173,22 @@
(last-screen int32 :offset-assert 564)
(frames virtual-frame 6 :inline :offset-assert 568)
(bg-clear-color rgba 4 :offset-assert 760)
(real-frame-counter uint64 :offset-assert 776)
(base-frame-counter uint64 :offset-assert 784)
(game-frame-counter uint64 :offset-assert 792)
(integral-frame-counter uint64 :offset-assert 800)
(real-integral-frame-counter uint64 :offset-assert 808)
(actual-frame-counter uint64 :offset-assert 816)
(real-actual-frame-counter uint64 :offset-assert 824)
(part-frame-counter uint64 :offset-assert 832)
(old-real-frame-counter uint64 :offset-assert 840)
(old-base-frame-counter uint64 :offset-assert 848)
(old-game-frame-counter uint64 :offset-assert 856)
(old-integral-frame-counter uint64 :offset-assert 864)
(old-real-integral-frame-counter uint64 :offset-assert 872)
(old-actual-frame-counter uint64 :offset-assert 880)
(old-real-actual-frame-counter uint64 :offset-assert 888)
(old-part-frame-counter uint64 :offset-assert 896)
(real-frame-counter int64 :offset-assert 776)
(base-frame-counter int64 :offset-assert 784)
(game-frame-counter int64 :offset-assert 792)
(integral-frame-counter int64 :offset-assert 800)
(real-integral-frame-counter int64 :offset-assert 808)
(actual-frame-counter int64 :offset-assert 816)
(real-actual-frame-counter int64 :offset-assert 824)
(part-frame-counter int64 :offset-assert 832)
(old-real-frame-counter int64 :offset-assert 840)
(old-base-frame-counter int64 :offset-assert 848)
(old-game-frame-counter int64 :offset-assert 856)
(old-integral-frame-counter int64 :offset-assert 864)
(old-real-integral-frame-counter int64 :offset-assert 872)
(old-actual-frame-counter int64 :offset-assert 880)
(old-real-actual-frame-counter int64 :offset-assert 888)
(old-part-frame-counter int64 :offset-assert 896)
(time-ratio float :offset-assert 904)
(seconds-per-frame float :offset-assert 908)
(frames-per-second float :offset-assert 912)
+8 -8
View File
@@ -185,12 +185,12 @@
)
(set-draw-env (-> disp draw0) psm w h ztest zpsm 384)
(set-draw-env (-> disp draw1) psm w h ztest zpsm 320)
(set! (-> disp base-frame-counter) (the-as uint #x493e0))
(set! (-> disp game-frame-counter) (the-as uint #x493e0))
(set! (-> disp real-frame-counter) (the-as uint #x493e0))
(set! (-> disp part-frame-counter) (the-as uint #x493e0))
(set! (-> disp integral-frame-counter) (the-as uint #x493e0))
(set! (-> disp real-integral-frame-counter) (the-as uint #x493e0))
(set! (-> disp base-frame-counter) #x493e0)
(set! (-> disp game-frame-counter) #x493e0)
(set! (-> disp real-frame-counter) #x493e0)
(set! (-> disp part-frame-counter) #x493e0)
(set! (-> disp integral-frame-counter) #x493e0)
(set! (-> disp real-integral-frame-counter) #x493e0)
(set! (-> disp old-base-frame-counter) (+ (-> disp base-frame-counter) -1))
(set! (-> disp old-game-frame-counter) (+ (-> disp game-frame-counter) -1))
(set! (-> disp old-real-frame-counter) (+ (-> disp real-frame-counter) -1))
@@ -455,12 +455,12 @@
(or
(<
75
(the-as int (- (-> *display* real-frame-counter) (-> obj cache-time)))
(- (-> *display* real-frame-counter) (the-as int (-> obj cache-time)))
)
(>= end-time (the-as int (-> worst-time-cache (/ bar-pos 10))))
)
(set! (-> worst-time-cache (/ bar-pos 10)) (the-as uint end-time))
(set! (-> obj cache-time) (-> *display* real-frame-counter))
(set! (-> obj cache-time) (the-as uint (-> *display* real-frame-counter)))
)
(cond
(*profile-ticks*
+11 -2
View File
@@ -70,7 +70,13 @@
(defun ripple-update-waveform-offs ((arg0 ripple-wave-set))
(let
((f0-1
(the float (- (-> *display* integral-frame-counter) (-> arg0 frame-save)))
(the
float
(-
(-> *display* integral-frame-counter)
(the-as int (-> arg0 frame-save))
)
)
)
)
(when (!= f0-1 0.0)
@@ -80,7 +86,10 @@
(set! (-> a1-4 offs) (the float (logand (the int (-> a1-4 offs)) #xffff)))
)
)
(set! (-> arg0 frame-save) (-> *display* integral-frame-counter))
(set!
(-> arg0 frame-save)
(the-as uint (-> *display* integral-frame-counter))
)
)
)
0
@@ -141,19 +141,19 @@
;; definition of type sparticle-launch-group
(deftype sparticle-launch-group (basic)
((length int16 :offset-assert 4)
(duration uint16 :offset-assert 6)
(linger-duration uint16 :offset-assert 8)
(flags uint16 :offset-assert 10)
(name basic :offset-assert 12)
(launcher uint32 :offset-assert 16)
(bounds sphere :inline :offset-assert 32)
((length int16 :offset-assert 4)
(duration uint16 :offset-assert 6)
(linger-duration uint16 :offset-assert 8)
(flags uint16 :offset-assert 10)
(name basic :offset-assert 12)
(launcher sparticle-group-item :offset-assert 16)
(bounds sphere :inline :offset-assert 32)
)
:method-count-assert 10
:size-assert #x30
:flag-assert #xa00000030
(:methods
(dummy-9 (_type_ process) _type_ 9)
(create-launch-control (_type_ process) sparticle-launch-control 9)
)
)
@@ -188,8 +188,8 @@
(:methods
(dummy-9 () none 9)
(dummy-10 () none 10)
(dummy-11 () none 11)
(dummy-12 () none 12)
(dummy-11 (_type_ vector) none 11)
(deactivate (_type_) none 12)
(dummy-13 () none 13)
)
)
+2 -2
View File
@@ -226,8 +226,8 @@
(none)
)
;; definition for symbol *dgo-time*, type uint
(define *dgo-time* (the-as uint 0))
;; definition for symbol *dgo-time*, type int
(define *dgo-time* 0)
;; definition for function dgo-load-begin
;; Used lq/sq
+17 -44
View File
@@ -939,11 +939,7 @@
(set! (-> obj preload-stream name) arg0)
(set! (-> obj preload-stream parts) arg1)
(set! (-> obj preload-stream priority) arg3)
(let ((v1-8 (if arg2
(-> arg2 ppointer)
)
)
)
(let ((v1-8 (process->ppointer arg2)))
(set!
(-> obj preload-stream owner)
(new 'static 'handle
@@ -1010,11 +1006,7 @@
(set! (-> obj rec 0 name) arg0)
(set! (-> obj rec 0 parts) arg1)
(set! (-> obj rec 0 priority) arg3)
(let ((v1-34 (if arg2
(-> arg2 ppointer)
)
)
)
(let ((v1-34 (process->ppointer arg2)))
(set!
(-> obj rec 0 owner)
(new 'static 'handle
@@ -1029,12 +1021,7 @@
(set! (-> obj rec 1 name) arg0)
(set! (-> obj rec 1 parts) arg1)
(set! (-> obj rec 1 priority) arg3)
(let* ((a0-18 arg2)
(v1-40 (if a0-18
(-> a0-18 ppointer)
)
)
)
(let ((v1-40 (process->ppointer arg2)))
(set!
(-> obj rec 1 owner)
(new 'static 'handle
@@ -1048,12 +1035,7 @@
(set! (-> obj rec 2 name) arg0)
(set! (-> obj rec 2 parts) arg1)
(set! (-> obj rec 2 priority) arg3)
(let* ((a0-22 arg2)
(v1-44 (if a0-22
(-> a0-22 ppointer)
)
)
)
(let ((v1-44 (process->ppointer arg2)))
(set!
(-> obj rec 2 owner)
(new 'static 'handle
@@ -1101,18 +1083,13 @@
(set! sv-56 0)
(set! spool-sound (new-sound-id))
(dummy-17 *load-state* (-> arg0 command-list))
(let* ((a0-2 *setting-control*)
(t9-2 (method-of-object a0-2 set-setting!))
(a1-2 self)
(a2-1 'spooling)
(v1-6 self)
)
(t9-2 a0-2 a1-2 a2-1 (the-as symbol (if v1-6
(-> v1-6 ppointer)
)
)
0.0 0
)
(set-setting!
*setting-control*
self
'spooling
(the-as symbol (process->ppointer self))
0.0
0
)
(logior! (-> self skel status) 7)
(kill-current-level-hint '() '() 'die)
@@ -1168,11 +1145,7 @@
)
)
)
(let ((v1-46 (if self
(-> self ppointer)
)
)
)
(let ((v1-46 (process->ppointer self)))
(set!
(-> *art-control* spool-lock)
(new 'static 'handle
@@ -1181,7 +1154,7 @@
)
)
)
(set! sv-48 (the-as int (-> *display* base-frame-counter)))
(set! sv-48 (-> *display* base-frame-counter))
(while (< spool-part (-> arg0 parts))
(let* ((a0-27 *art-control*)
(t9-13 (method-of-object a0-27 spool-push))
@@ -1286,7 +1259,7 @@
)
)
(set! sv-72 (current-str-pos spool-sound))
(set! sv-40 (the-as int (-> *display* base-frame-counter)))
(set! sv-40 (-> *display* base-frame-counter))
(until (>= (the float v0-39) f28-0)
(if (= (-> self skel root-channel 0) (-> self skel channel))
(logior! (-> self skel status) 32)
@@ -1296,7 +1269,7 @@
(arg3 self)
(and
(<= sv-72 0)
(>= (the-as int (- (-> *display* base-frame-counter) sv-40)) 1200)
(>= (- (-> *display* base-frame-counter) sv-40) 1200)
)
(and (< 300 sv-56) (<= sv-72 0))
)
@@ -1338,14 +1311,14 @@
)
)
)
(set! sv-40 (the-as int (-> *display* base-frame-counter)))
(set! sv-40 (-> *display* base-frame-counter))
)
(else
0
)
)
(set! sv-32 sv-72)
(set! sv-48 (the-as int (-> *display* base-frame-counter)))
(set! sv-48 (-> *display* base-frame-counter))
(suspend)
(let
((f0-14 (* (- (the float (current-str-pos spool-sound)) sv-24) f30-0))
+1 -1
View File
@@ -47,7 +47,7 @@
(rotv vector :inline :offset-assert 80)
(scalev vector :inline :offset-assert 96)
(dir-targ quaternion :inline :offset-assert 112)
(angle-change-time uint64 :offset-assert 128)
(angle-change-time int64 :offset-assert 128)
(old-y-angle-diff float :offset-assert 136)
)
:method-count-assert 28
+3 -6
View File
@@ -76,12 +76,9 @@
(or
(and (< saturated-yaw 0.0) (< old-diff 0.0))
(>=
(the-as
int
(-
(-> *display* base-frame-counter)
(-> obj angle-change-time)
)
(-
(-> *display* base-frame-counter)
(-> obj angle-change-time)
)
60
)
+1 -1
View File
@@ -93,7 +93,7 @@
(defun show-mc-info ((dma-buf dma-buffer))
(let ((info (new 'stack-no-clear 'mc-slot-info)))
(dotimes (slot-idx 2)
(mc-get-slot-info slot-idx)
(mc-get-slot-info slot-idx info)
(cond
((zero? (-> info known))
(format (clear *temp-string*) "SLOT ~D: EXAMINING SLOT~%" slot-idx)
+6 -12
View File
@@ -50,10 +50,10 @@
(align uint8 6 :offset-assert 88)
(direct uint8 6 :offset-assert 94)
(buzz-val uint8 2 :offset-assert 100)
(buzz-time uint64 2 :offset-assert 104)
(buzz-time int64 2 :offset-assert 104)
(buzz basic :offset-assert 120)
(buzz-act int32 :offset-assert 124)
(change-time uint64 :offset-assert 128)
(change-time int64 :offset-assert 128)
)
:method-count-assert 9
:size-assert #x88
@@ -122,7 +122,7 @@
)
(dotimes (v1-17 2)
(set! (-> pad buzz-val 0) (the-as uint 0))
(set! (-> pad buzz-time 0) (the-as uint 0))
(set! (-> pad buzz-time 0) 0)
)
pad
)
@@ -214,10 +214,7 @@
((= buzz-amount (-> pad buzz-val buzz-idx))
(set!
(-> pad buzz-time buzz-idx)
(max
(the-as int (-> pad buzz-time buzz-idx))
(the-as int (+ (get-current-time) duration))
)
(max (-> pad buzz-time buzz-idx) (+ (get-current-time) duration))
)
)
((< (-> pad buzz-val buzz-idx) (the-as uint buzz-amount))
@@ -247,10 +244,7 @@
(cond
((and
(-> pad buzz)
(<
(the-as int (get-current-time))
(the-as int (-> pad buzz-time buzz-idx))
)
(< (get-current-time) (-> pad buzz-time buzz-idx))
(= *master-mode* 'game)
)
(let ((v1-10 buzz-idx))
@@ -261,7 +255,7 @@
(logand
(ash
(-> pad buzz-val buzz-idx)
(- (the-as int (logand (get-integral-current-time) 7)))
(- (logand (get-integral-current-time) 7))
)
1
)
+3 -3
View File
@@ -764,9 +764,9 @@
(playing-id sound-id :offset-assert 8)
(trans vector :inline :offset-assert 16)
(name sound-name :offset-assert 32)
(play-time uint64 :offset-assert 48)
(time-base uint64 :offset-assert 56)
(time-random uint64 :offset-assert 64)
(play-time int64 :offset-assert 48)
(time-base int64 :offset-assert 56)
(time-random int64 :offset-assert 64)
(volume int32 :offset-assert 72)
(pitch int32 :offset-assert 76)
(falloff-near int32 :offset-assert 80)
+11 -18
View File
@@ -797,15 +797,15 @@
(sv-48
(set!
(-> obj time-base)
(the-as uint (the int (* 300.0 (-> sv-48 0))))
(the int (* 300.0 (-> sv-48 0)))
)
(set!
(-> obj time-random)
(the-as uint (the int (* 300.0 (-> sv-48 1))))
(the int (* 300.0 (-> sv-48 1)))
)
)
(else
(set! (-> obj time-base) (the-as uint -1))
(set! (-> obj time-base) -1)
)
)
(set! (-> obj trans quad) (-> arg1 quad))
@@ -830,19 +830,16 @@
((-> obj spec)
(when
(or
(< (the-as int (-> obj time-base)) 0)
(>=
(the-as int (-> *display* base-frame-counter))
(the-as int (-> obj play-time))
)
(< (-> obj time-base) 0)
(>= (-> *display* base-frame-counter) (-> obj play-time))
)
(when (>= (the-as int (-> obj time-base)) 0)
(when (>= (-> obj time-base) 0)
(set!
(-> obj play-time)
(+
(-> *display* base-frame-counter)
(-> obj time-base)
(rand-vu-int-count (the-as int (-> obj time-random)))
(rand-vu-int-count (-> obj time-random))
)
)
(set! (-> obj playing-id) (new-sound-id))
@@ -869,7 +866,7 @@
)
(return 0)
)
(when (and *debug-effect-control* (>= (the-as int (-> obj time-base)) 0))
(when (and *debug-effect-control* (>= (-> obj time-base) 0))
(format
#t
"(~5D) effect sound ~A ~G "
@@ -895,7 +892,7 @@
)
)
)
((< (the-as int (-> obj time-base)) 0)
((< (-> obj time-base) 0)
(set!
(-> obj playing-id)
(sound-play-by-name
@@ -910,11 +907,7 @@
)
)
(else
(when
(>=
(the-as int (-> *display* base-frame-counter))
(the-as int (-> obj play-time))
)
(when (>= (-> *display* base-frame-counter) (-> obj play-time))
(set!
(-> obj playing-id)
(sound-play-by-name
@@ -932,7 +925,7 @@
(+
(-> *display* base-frame-counter)
(-> obj time-base)
(rand-vu-int-count (the-as int (-> obj time-random)))
(rand-vu-int-count (-> obj time-random))
)
)
)
+2 -11
View File
@@ -12,7 +12,7 @@
(trans vector :inline :offset-assert 64)
(quat quaternion :inline :offset-assert 80)
(scale vector :inline :offset-assert 96)
(notice-time uint64 :offset-assert 112)
(notice-time int64 :offset-assert 112)
(flex-blend float :offset-assert 120)
(blend float :offset-assert 124)
(max-dist meters :offset-assert 128)
@@ -295,16 +295,7 @@
)
)
(set! (-> obj notice-time) (-> *display* base-frame-counter))
(let ((v1-12 (if proc
(-> proc ppointer)
)
)
)
(set!
(-> last-try-to-look-at-data who)
(new 'static 'handle :process v1-12 :pid (-> v1-12 0 pid))
)
)
(set! (-> last-try-to-look-at-data who) (process->handle proc))
(if (< (-> last-try-to-look-at-data vert) (-> enemy-facts cam-vert))
(set! (-> last-try-to-look-at-data vert) (-> enemy-facts cam-vert))
)
@@ -3,13 +3,13 @@
;; definition of type smush-control
(deftype smush-control (structure)
((start-time uint64 :offset-assert 0)
(period float :offset-assert 8)
(duration float :offset-assert 12)
(amp float :offset-assert 16)
(damp-amp float :offset-assert 20)
(damp-period float :offset-assert 24)
(ticks float :offset-assert 28)
((start-time int64 :offset-assert 0)
(period float :offset-assert 8)
(duration float :offset-assert 12)
(amp float :offset-assert 16)
(damp-amp float :offset-assert 20)
(damp-period float :offset-assert 24)
(ticks float :offset-assert 28)
)
:method-count-assert 15
:size-assert #x20
+7 -11
View File
@@ -78,12 +78,12 @@
;; definition of type delayed-rand-float
(deftype delayed-rand-float (structure)
((min-time int32 :offset-assert 0)
(max-time int32 :offset-assert 4)
(max-val float :offset-assert 8)
(timer int32 :offset-assert 12)
(start-time uint64 :offset-assert 16)
(value float :offset-assert 24)
((min-time int32 :offset-assert 0)
(max-time int32 :offset-assert 4)
(max-val float :offset-assert 8)
(timer int32 :offset-assert 12)
(start-time int64 :offset-assert 16)
(value float :offset-assert 24)
)
:method-count-assert 11
:size-assert #x1c
@@ -173,7 +173,7 @@
(xz-max float :offset-assert 8)
(y-max float :offset-assert 12)
(timer int32 :offset-assert 16)
(start-time uint64 :offset-assert 24)
(start-time int64 :offset-assert 24)
(value vector :inline :offset-assert 32)
)
:method-count-assert 13
@@ -232,7 +232,3 @@
;; failed to figure out what this is:
0
+41 -27
View File
@@ -277,7 +277,10 @@
(period-float (the float period))
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -312,7 +315,10 @@
)
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -355,7 +361,10 @@
(period-float (the float period))
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -377,7 +386,10 @@
(max-phase 1.0)
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -401,7 +413,10 @@
(period-float (the float period))
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -434,7 +449,10 @@
(max-val 2.0)
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -468,7 +486,10 @@
(max-val 2.0)
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -529,7 +550,10 @@
(f0-1 2.0)
(f2-2
(+
(the float (mod (-> *display* base-frame-counter) v1-0))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) v1-0)
)
(-> obj offset)
)
)
@@ -569,7 +593,10 @@
(max-val 2.0)
(current-time
(+
(the float (mod (-> *display* base-frame-counter) period))
(the
float
(mod (the-as uint (-> *display* base-frame-counter)) period)
)
(-> obj offset)
)
)
@@ -620,7 +647,7 @@
(set! (-> obj min-time) min-tim)
(set! (-> obj max-time) max-time)
(set! (-> obj max-val) (* 0.5 max-times-two))
(set! (-> obj start-time) (the-as uint 0))
(set! (-> obj start-time) 0)
(set! (-> obj timer) 0)
(set! (-> obj value) 0.0)
(-> obj value)
@@ -629,10 +656,7 @@
;; definition for method 10 of type delayed-rand-float
(defmethod update! delayed-rand-float ((obj delayed-rand-float))
(when
(>=
(the-as int (- (-> *display* base-frame-counter) (-> obj start-time)))
(-> obj timer)
)
(>= (- (-> *display* base-frame-counter) (-> obj start-time)) (-> obj timer))
(set! (-> obj start-time) (-> *display* base-frame-counter))
(set! (-> obj timer) (rand-vu-int-range (-> obj min-time) (-> obj max-time)))
(set!
@@ -752,7 +776,7 @@
(set! (-> obj max-time) max-time)
(set! (-> obj xz-max) (* 0.5 xz-range))
(set! (-> obj y-max) (* 0.5 y-range))
(set! (-> obj start-time) (the-as uint 0))
(set! (-> obj start-time) 0)
(set! (-> obj timer) 0)
(vector-reset! (-> obj value))
(-> obj value)
@@ -780,10 +804,7 @@
;; definition for method 11 of type delayed-rand-vector
(defmethod update-with-delay! delayed-rand-vector ((obj delayed-rand-vector))
(if
(>=
(the-as int (- (-> *display* base-frame-counter) (-> obj start-time)))
(-> obj timer)
)
(>= (- (-> *display* base-frame-counter) (-> obj start-time)) (-> obj timer))
(update-now! obj)
)
(-> obj value)
@@ -795,10 +816,7 @@
delayed-rand-vector
((obj delayed-rand-vector))
(if
(>=
(the-as int (- (-> *display* base-frame-counter) (-> obj start-time)))
(-> obj timer)
)
(>= (- (-> *display* base-frame-counter) (-> obj start-time)) (-> obj timer))
(update-now! obj)
(vector-reset! (-> obj value))
)
@@ -865,7 +883,3 @@
)
(-> obj value)
)