;;-*-Lisp-*-
(in-package goal)

;; definition for function adjust-pos
(defun adjust-pos ((arg0 int) (arg1 int))
  (if (< arg0 arg1)
      0
      (- arg0 arg1)
      )
  )

;; definition for method 24 of type progress
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod draw-fuel-cell-screen progress ((obj progress) (arg0 int))
  (local-vars
    (sv-112 int)
    (sv-128 int)
    (sv-144 int)
    (sv-160 (function trsqv float quaternion))
    (sv-176 trsqv)
    (sv-192 int)
    (sv-208 int)
    (sv-224 (function string float font-context int none))
    )
  (hide-progress-icons)
  (let ((s5-0 (-> *level-task-data* arg0)))
    (if (and (= *cheat-mode* 'debug) (cpad-hold? 0 l3))
        (format *stdcon* "fcd:~d~%" (-> *game-info* fuel-cell-deaths))
        )
    (set! (-> *progress-process* 0 particles 14 init-pos x) -320.0)
    (set! (-> *progress-process* 0 particles 15 init-pos x) -320.0)
    (set! (-> *progress-process* 0 icons 4 icon-x) -320)
    (when (and (!= s5-0 #f) (= (-> *game-info* level-opened arg0) 1))
      (set! sv-112 (- (-> *task-egg-starting-x* (-> s5-0 nb-of-tasks)) (-> obj left-x-offset)))
      (set! sv-128 (the int (* 47.0 (-> obj transition-percentage-invert))))
      0
      (let ((s0-0 6)
            (s2-0 0)
            (s4-1 (if (= (-> obj level-transition) 1)
                      (- (-> obj transition-offset))
                      (-> obj transition-offset)
                      )
                  )
            (f30-0 (-> obj transition-percentage-invert))
            (s1-0 0)
            (s3-0 #f)
            )
        (when (-> obj stat-transition)
          (set! sv-128 47)
          (set! s2-0 (if (!= (-> obj display-state) (-> obj next-display-state))
                         (- (-> obj transition-offset))
                         (-> obj transition-offset)
                         )
                )
          (set! s4-1 0)
          (set! f30-0 1.0)
          )
        (set! sv-144 0)
        (while (< sv-144 4)
          (let ((a0-18 (-> obj icons sv-144 icon 0 root)))
            (set! sv-176 a0-18)
            (set! sv-160 (method-of-object sv-176 set-yaw-angle-clear-roll-pitch!))
            (let ((a1-2 (+ (y-angle a0-18) (* 182.04445 (* 0.5 (-> *display* time-adjust-ratio))))))
              (sv-160 sv-176 a1-2)
              )
            )
          (set! sv-144 (+ sv-144 1))
          )
        (set! sv-192 (+ sv-112 (/ (- (* 47 (-> s5-0 nb-of-tasks)) (* sv-128 (-> s5-0 nb-of-tasks))) 2)))
        (set! sv-208 0)
        (while (< sv-208 (-> s5-0 nb-of-tasks))
          (let ((v0-4 (get-task-status (-> s5-0 task-info sv-208 task-id)))
                (v1-59 -1)
                (a0-25 #f)
                )
            (set! (-> obj particle-state s0-0) 2)
            (cond
              ((or (= v0-4 (task-status need-hint)) (= v0-4 (task-status unknown)))
               (if (= *kernel-boot-message* 'play)
                   (set! (-> obj particle-state s0-0) 1)
                   )
               )
              ((= v0-4 (task-status invalid))
               (set! v1-59 (-> s5-0 task-info sv-208 text-index-when-resolved))
               (set! (-> obj particle-state s0-0) 3)
               (set! a0-25 #t)
               )
              ((= v0-4 (task-status need-introduction))
               (set! v1-59 0)
               )
              ((= v0-4 (task-status need-reminder-a))
               (set! v1-59 0)
               )
              ((= v0-4 (task-status need-reminder))
               (set! v1-59 1)
               )
              ((= v0-4 (task-status need-reward-speech))
               (set! v1-59 2)
               )
              ((= v0-4 (task-status need-resolution))
               (set! v1-59 2)
               )
              )
            (if (and (!= *kernel-boot-message* 'play) (= v1-59 -1))
                (set! v1-59 0)
                )
            (set! (-> obj particles s0-0 init-pos x) (the float (+ sv-192 s2-0)))
            (set! (-> obj particles s0-0 init-pos y) (the float (+ s4-1 204)))
            (+! s0-0 1)
            (when (= sv-208 (-> obj task-index))
              (set! s1-0 v1-59)
              (set! s3-0 a0-25)
              (set! (-> obj particles 5 init-pos x) (the float (+ sv-192 s2-0)))
              (set! (-> obj particles 5 init-pos y) (the float (+ s4-1 204)))
              )
            )
          (set! sv-192 (+ sv-192 sv-128))
          (set! sv-208 (+ sv-208 1))
          )
        (dotimes (v1-77 (- 8 (-> s5-0 nb-of-tasks)))
          (set! (-> *progress-process* 0 particles s0-0 init-pos x) (the float (+ s2-0 -320)))
          (set! (-> obj particles s0-0 init-pos y) (the float (+ s4-1 194)))
          (+! s0-0 1)
          )
        (when *common-text*
          (when (and (!= s1-0 -1)
                     (> (-> s5-0 nb-of-tasks) 0)
                     (>= (-> obj task-index) 0)
                     (< (-> obj task-index) (-> s5-0 nb-of-tasks))
                     )
            (let ((s0-1 (new
                          'stack
                          'font-context
                          *font-default-matrix*
                          (- (+ s2-0 32) (-> obj left-x-offset))
                          (+ (/ s4-1 2) 125)
                          8325000.0
                          (font-color yellow-orange)
                          (font-flags shadow kerning)
                          )
                        )
                  )
              (let ((v1-91 s0-1))
                (set! (-> v1-91 width) (the float 328))
                )
              (let ((v1-92 s0-1))
                (set! (-> v1-92 height) (the float 50))
                )
              (let ((v1-93 s0-1))
                (set! (-> v1-93 scale) 0.7)
                )
              (set! (-> s0-1 flags) (font-flags shadow kerning middle left large))
              (set! sv-224 print-game-text-scaled)
              (let ((a0-47 (lookup-text! *common-text* (-> s5-0 task-info (-> obj task-index) task-name s1-0) #f))
                    (a1-57 f30-0)
                    (a2-15 s0-1)
                    (a3-2 (the int (* 128.0 f30-0)))
                    )
                (sv-224 a0-47 a1-57 a2-15 a3-2)
                )
              (when s3-0
                (set! (-> s0-1 origin x) (the float (- (+ s2-0 32) (-> obj left-x-offset))))
                (set! (-> s0-1 origin y) (the float (+ (/ s4-1 2) 175)))
                (let ((a0-49 s0-1))
                  (set! (-> a0-49 color) (font-color lighter-lighter-blue))
                  )
                (let ((v1-104 s0-1))
                  (set! (-> v1-104 height) (the float 15))
                  )
                (let ((v1-105 s0-1))
                  (set! (-> v1-105 scale) 0.5)
                  )
                (print-game-text-scaled
                  (lookup-text! *common-text* (game-text-id task-completed) #f)
                  f30-0
                  s0-1
                  (the int (* 128.0 f30-0))
                  )
                )
              )
            )
          )
        )
      )
    )
  0
  (none)
  )

;; definition for method 25 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-money-screen progress ((obj progress) (arg0 int))
  (hide-progress-icons)
  (let* ((v1-1 (/ (-> obj transition-offset) 16))
         (s4-0 (if (= (-> obj level-transition) 1)
                   (- (-> obj transition-offset))
                   (-> obj transition-offset)
                   )
               )
         (f30-0 (-> obj transition-percentage-invert))
         (s3-0 (- v1-1))
         )
    (when (-> obj stat-transition)
      (set! v1-1 (if (!= (-> obj display-state) (-> obj next-display-state))
                     (- (-> obj transition-offset))
                     (-> obj transition-offset)
                     )
            )
      (set! s3-0 v1-1)
      (set! s4-0 0)
      (set! f30-0 1.0)
      )
    (set! (-> obj particles 15 init-pos x) (the float (- (+ v1-1 150) (-> obj left-x-offset))))
    (set! (-> obj particles 15 init-pos y) (the float (+ s4-0 214)))
    (set! (-> obj icons 4 icon-x) (- (+ v1-1 148) (-> obj left-x-offset)))
    (set! (-> obj icons 4 icon-y) (+ (-> obj big-orb-y-offset) s4-0))
    (let ((a0-15 (-> obj icons 4 icon 0 root)))
      (set-yaw-angle-clear-roll-pitch!
        a0-15
        (- (y-angle a0-15) (* 182.04445 (* 4.0 (-> *display* time-adjust-ratio))))
        )
      )
    (let ((s4-1
            (new
              'stack
              'font-context
              *font-default-matrix*
              (- (+ s3-0 200) (-> obj left-x-offset))
              (+ (/ s4-0 2) 96)
              8325000.0
              (font-color default)
              (font-flags shadow kerning)
              )
            )
          )
      (let ((v1-19 s4-1))
        (set! (-> v1-19 width) (the float 328))
        )
      (let ((v1-20 s4-1))
        (set! (-> v1-20 height) (the float 70))
        )
      (set! (-> s4-1 flags) (font-flags shadow kerning large))
      (let ((s3-1 print-game-text-scaled))
        (format
          (clear *temp-string*)
          "~D/~D"
          (-> *game-info* money-per-level arg0)
          (-> *game-counts* data arg0 money-count)
          )
        (s3-1 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0)))
        )
      (let ((v1-26 s4-1))
        (set! (-> v1-26 width) (the float 428))
        )
      (set! (-> s4-1 origin x) (+ -220.0 (-> s4-1 origin x)))
      (set! (-> s4-1 origin y) (+ 40.0 (-> s4-1 origin y)))
      (set! (-> s4-1 flags) (font-flags shadow kerning middle large))
      (print-game-text-scaled
        (lookup-text! *common-text* (game-text-id total-collected) #f)
        (* 0.7 f30-0)
        s4-1
        (the int (* 128.0 f30-0))
        )
      (set! (-> s4-1 origin y) (+ 15.0 (-> s4-1 origin y)))
      (let ((s5-2 print-game-text-scaled))
        (format (clear *temp-string*) "~D/~D" (the int (-> *game-info* money-total)) (-> obj total-nb-of-orbs))
        (s5-2 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0)))
        )
      )
    )
  0
  (none)
  )

;; definition for method 26 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-buzzer-screen progress ((obj progress) (arg0 int))
  (hide-progress-icons)
  (let* ((v1-2 (-> *level-task-data* arg0))
         (a0-3 (/ (-> obj transition-offset) 16))
         (s4-0 (if (= (-> obj level-transition) 1)
                   (- (-> obj transition-offset))
                   (-> obj transition-offset)
                   )
               )
         (f30-0 (-> obj transition-percentage-invert))
         (s3-0 (- a0-3))
         )
    (when (-> obj stat-transition)
      (set! a0-3 (if (!= (-> obj display-state) (-> obj next-display-state))
                     (- (-> obj transition-offset))
                     (-> obj transition-offset)
                     )
            )
      (set! s3-0 a0-3)
      (set! s4-0 0)
      (set! f30-0 1.0)
      )
    (set! (-> obj particles 14 init-pos x) (the float (- (+ a0-3 150) (-> obj left-x-offset))))
    (set! (-> obj particles 14 init-pos y) (the float (+ s4-0 214)))
    (let ((s2-0 0))
      (let ((a1-8 (-> v1-2 buzzer-task-index)))
        (if (!= a1-8 -1)
            (set! s2-0 (buzzer-count *game-info* (-> v1-2 task-info a1-8 task-id)))
            )
        )
      (let ((s4-1
              (new
                'stack
                'font-context
                *font-default-matrix*
                (- (+ s3-0 200) (-> obj left-x-offset))
                (+ (/ s4-0 2) 96)
                8325000.0
                (font-color default)
                (font-flags shadow kerning)
                )
              )
            )
        (let ((v1-9 s4-1))
          (set! (-> v1-9 width) (the float 328))
          )
        (let ((v1-10 s4-1))
          (set! (-> v1-10 height) (the float 70))
          )
        (set! (-> s4-1 flags) (font-flags shadow kerning large))
        (let ((s3-1 print-game-text-scaled))
          (format (clear *temp-string*) "~D/~D" s2-0 (-> *game-counts* data arg0 buzzer-count))
          (s3-1 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0)))
          )
        (let ((v1-14 s4-1))
          (set! (-> v1-14 width) (the float 428))
          )
        (set! (-> s4-1 origin x) (+ -220.0 (-> s4-1 origin x)))
        (set! (-> s4-1 origin y) (+ 40.0 (-> s4-1 origin y)))
        (set! (-> s4-1 flags) (font-flags shadow kerning middle large))
        (print-game-text-scaled
          (lookup-text! *common-text* (game-text-id total-collected) #f)
          (* 0.7 f30-0)
          s4-1
          (the int (* 128.0 f30-0))
          )
        (set! (-> s4-1 origin y) (+ 15.0 (-> s4-1 origin y)))
        (let ((s5-2 print-game-text-scaled))
          (format (clear *temp-string*) "~D/~D" (the int (-> *game-info* buzzer-total)) (-> obj total-nb-of-buzzers))
          (s5-2 *temp-string* f30-0 s4-1 (the int (* 128.0 f30-0)))
          )
        )
      )
    )
  0
  (none)
  )

;; definition for method 35 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-storage-error progress ((obj progress) (arg0 font-context))
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.55)
    )
  (let ((v1-1 arg0))
    (set! (-> v1-1 width) (the float 265))
    )
  (let ((v1-2 arg0))
    (set! (-> v1-2 height) (the float 55))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (let ((s4-0 (game-text-id memcard-not-formatted-title)))
    (case (-> obj display-state)
      (((progress-screen memcard-no-space))
       (set! s4-0 (game-text-id memcard-no-space))
       )
      (((progress-screen memcard-not-inserted))
       (set! s4-0 (game-text-id memcard-not-inserted))
       )
      )
    (let ((s3-0 print-game-text-scaled))
      (format (clear *temp-string*) (lookup-text! *common-text* s4-0 #f) 1)
      (s3-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
      )
    )
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 70.0)
  (let ((v1-12 arg0))
    (set! (-> v1-12 width) (the float 350))
    )
  (let ((v1-13 arg0))
    (set! (-> v1-13 height) (the float 40))
    )
  (let ((s4-1 print-game-text-scaled))
    (format
      (clear *temp-string*)
      (lookup-text! *common-text* (game-text-id memcard-space-requirement1) #f)
      (if (-> obj card-info)
          (-> obj card-info mem-required)
          0
          )
      )
    (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  (set! (-> arg0 origin y) 115.0)
  (let ((v1-17 arg0))
    (set! (-> v1-17 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id memcard-space-requirement2) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (let ((v1-19 arg0))
    (set! (-> v1-19 scale) 0.65)
    )
  (set! (-> arg0 origin y) 160.0)
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id continue?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 49 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-format progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin y) 35.0)
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.55)
    )
  (let ((v1-1 arg0))
    (set! (-> v1-1 width) (the float 265))
    )
  (let ((v1-2 arg0))
    (set! (-> v1-2 height) (the float 55))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (let ((s4-0 print-game-text-scaled))
    (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id memcard-not-formatted-title) #f) 1)
    (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 105.0)
  (let ((v1-7 arg0))
    (set! (-> v1-7 width) (the float 360))
    )
  (let ((v1-8 arg0))
    (set! (-> v1-8 height) (the float 40))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id memcard-not-formatted-msg) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (let ((v1-10 arg0))
    (set! (-> v1-10 scale) 0.65)
    )
  (set! (-> arg0 origin y) 138.0)
  (let ((v1-11 arg0))
    (set! (-> v1-11 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id format?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 36 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-data-exists progress ((obj progress) (arg0 font-context))
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.65)
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 55.0)
  (let ((v1-4 arg0))
    (set! (-> v1-4 width) (the float 365))
    )
  (let ((v1-5 arg0))
    (set! (-> v1-5 height) (the float 75))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id save-data-already-exists) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin y) 140.0)
  (let ((v1-7 arg0))
    (set! (-> v1-7 width) (the float 360))
    )
  (let ((v1-8 arg0))
    (set! (-> v1-8 height) (the float 40))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id overwrite?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 37 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-no-data progress ((obj progress) (arg0 font-context))
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.65)
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 40.0)
  (let ((v1-4 arg0))
    (set! (-> v1-4 width) (the float 365))
    )
  (let ((v1-5 arg0))
    (set! (-> v1-5 height) (the float 75))
    )
  (let ((s4-0 print-game-text-scaled))
    (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id no-save-data) #f) 1)
    (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  (set! (-> arg0 origin y) 130.0)
  (let ((v1-7 arg0))
    (set! (-> v1-7 width) (the float 360))
    )
  (let ((v1-8 arg0))
    (set! (-> v1-8 height) (the float 40))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id create-save-data?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 38 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-accessing progress ((obj progress) (arg0 font-context))
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 1.0)
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 35.0)
  (let ((v1-4 arg0))
    (set! (-> v1-4 width) (the float 365))
    )
  (let ((v1-5 arg0))
    (set! (-> v1-5 height) (the float 75))
    )
  (when (or (< (mod (-> *display* real-frame-counter) 300) 150) (!= (-> obj transition-percentage-invert) 1.0))
    (let ((a1-1 (game-text-id loading-data)))
      (case (-> obj display-state)
        (((progress-screen memcard-saving))
         (set! a1-1 (game-text-id saving-data))
         )
        (((progress-screen memcard-formatting))
         (set! a1-1 (game-text-id formatting))
         )
        (((progress-screen memcard-creating))
         (set! a1-1 (game-text-id creating-save-data))
         )
        )
      (print-game-text-scaled (lookup-text! *common-text* a1-1 #f) (-> obj transition-percentage-invert) arg0 128)
      )
    )
  (let ((v1-18 arg0))
    (set! (-> v1-18 scale) 0.65)
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 100.0)
  (let ((v1-22 arg0))
    (set! (-> v1-22 width) (the float 370))
    )
  (let ((v1-23 arg0))
    (set! (-> v1-23 height) (the float 75))
    )
  (let ((s4-1 print-game-text-scaled))
    (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id memcard-do-not-remove) #f) 1)
    (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  0
  (none)
  )

;; definition for method 39 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-insert progress ((obj progress) (arg0 font-context))
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.65)
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 35.0)
  (let ((v1-4 arg0))
    (set! (-> v1-4 width) (the float 310))
    )
  (let ((v1-5 arg0))
    (set! (-> v1-5 height) (the float 110))
    )
  (let ((s4-0 print-game-text-scaled))
    (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id insert-memcard) #f) 1)
    (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  (let ((v1-7 arg0))
    (set! (-> v1-7 scale) 0.65)
    )
  (set! (-> arg0 origin y) 130.0)
  (let ((v1-8 arg0))
    (set! (-> v1-8 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id back?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 40 of type progress
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-file-select progress ((obj progress) (arg0 font-context))
  (local-vars
    (sv-16 (function _varargs_ object))
    (sv-32 (function _varargs_ object))
    (sv-48 (function _varargs_ object))
    (sv-64 (function _varargs_ object))
    (sv-80 (function _varargs_ object))
    (sv-96 (function _varargs_ object))
    (sv-112 (function _varargs_ object))
    (sv-128 (function _varargs_ object))
    (sv-144 (function _varargs_ object))
    )
  (let ((s4-0 (* (+ (-> obj transition-offset) -256) 2)))
    (if (< s4-0 0)
        (set! s4-0 0)
        )
    (if (< 500 s4-0)
        (set! s4-0 700)
        )
    (set! (-> obj particles 19 init-pos x) (the float (- (- 202 (adjust-pos s4-0 150)) (-> obj left-x-offset))))
    (set! (-> obj particles 20 init-pos x) (the float (- (+ (adjust-pos s4-0 100) 202) (-> obj left-x-offset))))
    (set! (-> obj particles 21 init-pos x) (the float (- (- 202 (adjust-pos s4-0 50)) (-> obj left-x-offset))))
    (set! (-> obj particles 22 init-pos x) (the float (- (+ s4-0 202) (-> obj left-x-offset))))
    )
  (cond
    ((= (-> *setting-control* current video-mode) 'pal)
     (set! (-> obj particles 21 init-pos y) 256.0)
     (set! (-> obj particles 22 init-pos y) 338.0)
     )
    (else
      (set! (-> obj particles 21 init-pos y) 255.0)
      (set! (-> obj particles 22 init-pos y) 336.0)
      )
    )
  (let ((f0-13 (* 2.0 (+ -0.5 (-> obj transition-percentage-invert)))))
    128
    (if (< f0-13 0.0)
        (set! f0-13 0.0)
        )
    (let ((s4-1 (the int (* 128.0 f0-13))))
      (let ((v1-29 arg0))
        (set! (-> v1-29 scale) 0.5)
        )
      (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
      (set! (-> arg0 origin x) (the float (- 102 (-> obj left-x-offset))))
      (set! (-> arg0 origin y) 5.0)
      (let ((v1-33 arg0))
        (set! (-> v1-33 width) (the float 200))
        )
      (let ((v1-34 arg0))
        (set! (-> v1-34 height) (the float 20))
        )
      (print-game-text
        (lookup-text!
          *common-text*
          (the-as game-text-id (if (= (-> obj display-state) (progress-screen load-game))
                                   321
                                   320
                                   )
                  )
          #f
          )
        arg0
        #f
        s4-1
        22
        )
      (set! (-> arg0 origin y) 26.0)
      (let ((v1-37 arg0))
        (set! (-> v1-37 height) (the float 20))
        )
      (let ((s3-3 (-> obj card-info))
            (s2-0 23)
            )
        (dotimes (s1-0 4)
          (set! (-> arg0 origin x) (the float (- 41 (-> obj left-x-offset))))
          (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
          (let ((a0-17 arg0))
            (set! (-> a0-17 color) (font-color default))
            )
          (let ((v1-42 arg0))
            (set! (-> v1-42 width) (the float 320))
            )
          (cond
            ((and s3-3 (= (-> s3-3 formatted) 1) (= (-> s3-3 inited) 1) (= (-> s3-3 file s1-0 present) 1))
             (set! (-> obj particles s2-0 init-pos x) (the float (- 66 (-> obj left-x-offset))))
             (let ((v1-57 arg0))
               (set! (-> v1-57 scale) 0.6)
               )
             (if (and (< (-> s3-3 file s1-0 level-index) (length *level-task-data-remap*))
                      (> (-> s3-3 file s1-0 level-index) 0)
                      )
                 (print-game-text
                   (lookup-text!
                     *common-text*
                     (-> *level-task-data* (-> *level-task-data-remap* (+ (-> s3-3 file s1-0 level-index) -1)) level-name-id)
                     #f
                     )
                   arg0
                   #f
                   s4-1
                   22
                   )
                 (print-game-text "OLD SAVE GAME" arg0 #f s4-1 22)
                 )
             (let ((a0-28 arg0))
               (set! (-> a0-28 color) (font-color blue-white))
               )
             (cond
               ((or (>= (seconds 2) (- (-> *display* real-frame-counter) (-> obj last-option-index-change)))
                    (or (< (mod (- (-> *display* real-frame-counter) (-> obj last-option-index-change)) 1200) 600)
                        (!= (-> obj option-index) s1-0)
                        (-> obj in-transition)
                        )
                    )
                (let ((v1-87 arg0))
                  (set! (-> v1-87 scale) 0.5)
                  )
                (set! (-> arg0 origin y) (+ 16.0 (-> arg0 origin y)))
                (set! (-> arg0 flags) (font-flags shadow kerning middle large))
                (set! (-> arg0 origin x) (the float (- -73 (-> obj left-x-offset))))
                (let ((v1-91 arg0))
                  (set! (-> v1-91 width) (the float 350))
                  )
                (let ((s0-2 print-game-text))
                  (set! sv-16 format)
                  (let ((a0-40 (clear *temp-string*))
                        (a1-13 "~D")
                        (a2-5 (the int (-> s3-3 file s1-0 fuel-cell-count)))
                        )
                    (sv-16 a0-40 a1-13 a2-5)
                    )
                  (s0-2 *temp-string* arg0 #f s4-1 22)
                  )
                (set! (-> arg0 origin x) (the float (- 1 (-> obj left-x-offset))))
                (let ((s0-3 print-game-text))
                  (set! sv-32 format)
                  (let ((a0-44 (clear *temp-string*))
                        (a1-15 "~D")
                        (a2-7 (the int (-> s3-3 file s1-0 money-count)))
                        )
                    (sv-32 a0-44 a1-15 a2-7)
                    )
                  (s0-3 *temp-string* arg0 #f s4-1 22)
                  )
                (set! (-> arg0 origin x) (the float (- 79 (-> obj left-x-offset))))
                (let ((s0-4 print-game-text))
                  (set! sv-48 format)
                  (let ((a0-48 (clear *temp-string*))
                        (a1-17 "~D")
                        (a2-9 (the int (-> s3-3 file s1-0 buzzer-count)))
                        )
                    (sv-48 a0-48 a1-17 a2-9)
                    )
                  (s0-4 *temp-string* arg0 #f s4-1 22)
                  )
                (set! (-> arg0 origin y) (+ 1.0 (-> arg0 origin y)))
                (let ((v1-108 arg0))
                  (set! (-> v1-108 scale) 1.0)
                  )
                (set! (-> arg0 flags) (font-flags shadow kerning right large))
                (set! (-> arg0 origin x) (the float (- 352 (-> obj left-x-offset))))
                (let ((s0-5 print-game-text))
                  (set! sv-64 format)
                  (let ((a0-52 (clear *temp-string*))
                        (a1-19 "~D%")
                        (a2-11 (the int (-> s3-3 file s1-0 completion-percentage)))
                        )
                    (sv-64 a0-52 a1-19 a2-11)
                    )
                  (s0-5 *temp-string* arg0 #f s4-1 22)
                  )
                (let ((v1-116 arg0))
                  (set! (-> v1-116 scale) 0.5)
                  )
                (set! (-> arg0 origin y) (+ 9.0 (-> arg0 origin y)))
                (set! (-> arg0 flags) (font-flags shadow kerning large))
                (set! (-> arg0 origin x) (the float (- 85 (-> obj left-x-offset))))
                (let ((s0-6 print-game-text))
                  (set! sv-80 format)
                  (let ((a0-56 (clear *temp-string*))
                        (a1-21 "/~D")
                        (a2-17 (if (< 100 (the int (-> s3-3 file s1-0 fuel-cell-count)))
                                   (-> obj total-nb-of-power-cells)
                                   100
                                   )
                               )
                        )
                    (sv-80 a0-56 a1-21 a2-17)
                    )
                  (s0-6 *temp-string* arg0 #f s4-1 22)
                  )
                (set! (-> arg0 origin x) (the float (- 150 (-> obj left-x-offset))))
                (let ((s0-7 print-game-text))
                  (set! sv-96 format)
                  (let ((a0-60 (clear *temp-string*))
                        (a1-23 "/~D")
                        (a2-19 (-> obj total-nb-of-orbs))
                        )
                    (sv-96 a0-60 a1-23 a2-19)
                    )
                  (s0-7 *temp-string* arg0 #f s4-1 22)
                  )
                (set! (-> arg0 origin x) (the float (- 238 (-> obj left-x-offset))))
                (let ((s0-8 print-game-text))
                  (set! sv-112 format)
                  (let ((a0-64 (clear *temp-string*))
                        (a1-25 "/~D")
                        (a2-21 (-> obj total-nb-of-buzzers))
                        )
                    (sv-112 a0-64 a1-25 a2-21)
                    )
                  (s0-8 *temp-string* arg0 #f s4-1 22)
                  )
                (set! (-> arg0 origin y) (+ 15.0 (-> arg0 origin y)))
                )
               (else
                 (set! (-> arg0 origin y) (+ 18.0 (-> arg0 origin y)))
                 (set! (-> arg0 origin x) (the float (- 28 (-> obj left-x-offset))))
                 (let ((v1-131 arg0))
                   (set! (-> v1-131 scale) 0.8)
                   )
                 (set! (-> arg0 flags) (font-flags shadow kerning middle large))
                 (let ((v1-133 arg0))
                   (set! (-> v1-133 width) (the float 350))
                   )
                 (cond
                   ((= (scf-get-territory) 1)
                    (let ((s0-10 print-game-text))
                      (set! sv-128 format)
                      (let ((a0-69 (clear *temp-string*))
                            (a1-27 "~X/~X/20~2X   ~2X:~2X")
                            (a2-23 (-> s3-3 file s1-0 day))
                            (a3-10 (-> s3-3 file s1-0 month))
                            (t0-10 (-> s3-3 file s1-0 year))
                            (t1-0 (-> s3-3 file s1-0 hour))
                            (t2-0 (-> s3-3 file s1-0 minute))
                            )
                        (sv-128 a0-69 a1-27 a2-23 a3-10 t0-10 t1-0 t2-0)
                        )
                      (s0-10 *temp-string* arg0 #f s4-1 22)
                      )
                    )
                   (else
                     (let ((s0-11 print-game-text))
                       (set! sv-144 format)
                       (let ((a0-72 (clear *temp-string*))
                             (a1-29 "~X/~X/20~2X   ~2X:~2X")
                             (a2-25 (-> s3-3 file s1-0 month))
                             (a3-12 (-> s3-3 file s1-0 day))
                             (t0-12 (-> s3-3 file s1-0 year))
                             (t1-1 (-> s3-3 file s1-0 hour))
                             (t2-1 (-> s3-3 file s1-0 minute))
                             )
                         (sv-144 a0-72 a1-29 a2-25 a3-12 t0-12 t1-1 t2-1)
                         )
                       (s0-11 *temp-string* arg0 #f s4-1 22)
                       )
                     )
                   )
                 (set! (-> obj particles s2-0 init-pos x) -320.0)
                 (set! (-> arg0 origin y) (+ 23.0 (-> arg0 origin y)))
                 )
               )
             )
            (else
              (set! (-> obj particles s2-0 init-pos x) -320.0)
              (set! (-> arg0 origin y) (+ 12.0 (-> arg0 origin y)))
              (let ((v1-173 arg0))
                (set! (-> v1-173 scale) 0.7)
                )
              (print-game-text (lookup-text! *common-text* (game-text-id empty) #f) arg0 #f s4-1 22)
              (set! (-> arg0 origin y) (+ 29.0 (-> arg0 origin y)))
              )
            )
          (+! s2-0 1)
          )
        )
      )
    )
  0
  (none)
  )

;; definition for method 41 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-auto-save-error progress ((obj progress) (arg0 font-context))
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.6)
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (set! (-> arg0 origin x) (the float (- 70 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 5.0)
  (let ((v1-4 arg0))
    (set! (-> v1-4 width) (the float 265))
    )
  (let ((v1-5 arg0))
    (set! (-> v1-5 height) (the float 35))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id error-saving) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 34.0)
  (let ((v1-9 arg0))
    (set! (-> v1-9 width) (the float 360))
    )
  (let ((v1-10 arg0))
    (set! (-> v1-10 height) (the float 50))
    )
  (let ((s4-1 print-game-text-scaled))
    (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id check-memcard) #f) 1)
    (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  (set! (-> arg0 origin y) 89.0)
  (let ((v1-12 arg0))
    (set! (-> v1-12 width) (the float 360))
    )
  (let ((v1-13 arg0))
    (set! (-> v1-13 height) (the float 20))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id autosave-disabled-title) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin y) 118.0)
  (let ((v1-15 arg0))
    (set! (-> v1-15 width) (the float 360))
    )
  (let ((v1-16 arg0))
    (set! (-> v1-16 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id autosave-disabled-msg) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (let ((v1-18 arg0))
    (set! (-> v1-18 scale) 0.65)
    )
  (set! (-> arg0 origin y) 160.0)
  (let ((v1-19 arg0))
    (set! (-> v1-19 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id continue?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 42 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-removed progress ((obj progress) (arg0 font-context))
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.6)
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (set! (-> arg0 origin x) (the float (- 70 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 10.0)
  (let ((v1-4 arg0))
    (set! (-> v1-4 width) (the float 265))
    )
  (let ((v1-5 arg0))
    (set! (-> v1-5 height) (the float 55))
    )
  (let ((s4-0 print-game-text-scaled))
    (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id memcard-removed) #f) 1)
    (s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 78.0)
  (let ((v1-9 arg0))
    (set! (-> v1-9 width) (the float 360))
    )
  (let ((v1-10 arg0))
    (set! (-> v1-10 height) (the float 20))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id autosave-disabled-title) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin y) 112.0)
  (let ((v1-12 arg0))
    (set! (-> v1-12 width) (the float 360))
    )
  (let ((v1-13 arg0))
    (set! (-> v1-13 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id autosave-disabled-msg) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (let ((v1-15 arg0))
    (set! (-> v1-15 scale) 0.65)
    )
  (set! (-> arg0 origin y) 160.0)
  (let ((v1-16 arg0))
    (set! (-> v1-16 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id continue?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 43 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-memcard-error progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin y) 15.0)
  (let ((v1-0 arg0))
    (set! (-> v1-0 scale) 0.7)
    )
  (let ((v1-1 arg0))
    (set! (-> v1-1 width) (the float 265))
    )
  (let ((v1-2 arg0))
    (set! (-> v1-2 height) (the float 55))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (let ((s4-0 (game-text-id error-loading)))
    (case (-> obj display-state)
      (((progress-screen memcard-error-saving))
       (set! s4-0 (game-text-id error-saving))
       )
      (((progress-screen memcard-error-formatting))
       (set! s4-0 (game-text-id error-formatting))
       )
      (((progress-screen memcard-error-creating))
       (set! s4-0 (game-text-id error-creating-data))
       )
      )
    (let ((s3-0 print-game-text-scaled))
      (format (clear *temp-string*) (lookup-text! *common-text* s4-0 #f) 1)
      (s3-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
      )
    )
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 80.0)
  (let ((v1-13 arg0))
    (set! (-> v1-13 width) (the float 360))
    )
  (let ((v1-14 arg0))
    (set! (-> v1-14 height) (the float 70))
    )
  (let ((s4-1 print-game-text-scaled))
    (format (clear *temp-string*) (lookup-text! *common-text* (game-text-id check-memcard-and-retry) #f) 1)
    (s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128)
    )
  (let ((v1-16 arg0))
    (set! (-> v1-16 scale) 0.65)
    )
  (set! (-> arg0 origin y) 155.0)
  (let ((v1-17 arg0))
    (set! (-> v1-17 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id continue?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 50 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-auto-save progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin x) (the float (- 35 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 18.0)
  (let ((v1-2 arg0))
    (set! (-> v1-2 scale) 0.6)
    )
  (let ((v1-3 arg0))
    (set! (-> v1-3 width) (the float 330))
    )
  (let ((v1-4 arg0))
    (set! (-> v1-4 height) (the float 60))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id autosave-warn-title) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 110.0)
  (let ((v1-9 arg0))
    (set! (-> v1-9 width) (the float 370))
    )
  (let ((v1-10 arg0))
    (set! (-> v1-10 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id autosave-warn-msg) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (let ((v1-12 arg0))
    (set! (-> v1-12 scale) 0.65)
    )
  (set! (-> arg0 origin y) 175.0)
  (let ((v1-13 arg0))
    (set! (-> v1-13 height) (the float 20))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id continue?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> *progress-process* 0 particles 31 init-pos y) (the float (if (= (get-aspect-ratio) 'aspect16x9)
                                                                         170
                                                                         180
                                                                         )
                                                               )
        )
  (set! (-> *progress-process* 0 particles 31 init-pos x)
        (the float
             (- (if (or (< (mod (-> *display* real-frame-counter) 300) 270) (!= (-> obj transition-percentage-invert) 1.0))
                    205
                    -320
                    )
                (-> obj left-x-offset)
                )
             )
        )
  0
  (none)
  )

;; definition for method 54 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-pal-change-to-60hz progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 20.0)
  (let ((v1-2 arg0))
    (set! (-> v1-2 scale) 0.6)
    )
  (let ((v1-3 arg0))
    (set! (-> v1-3 width) (the float 300))
    )
  (let ((v1-4 arg0))
    (set! (-> v1-4 height) (the float 40))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id screen-change-to-60hz) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin x) (the float (- 15 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 60.0)
  (let ((v1-9 arg0))
    (set! (-> v1-9 width) (the float 370))
    )
  (let ((v1-10 arg0))
    (set! (-> v1-10 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id screen-60hz-warn-support) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin y) 120.0)
  (let ((v1-12 arg0))
    (set! (-> v1-12 height) (the float 50))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id screen-60hz-warn-timer) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (let ((v1-14 arg0))
    (set! (-> v1-14 scale) 0.65)
    )
  (set! (-> arg0 origin y) 175.0)
  (let ((v1-15 arg0))
    (set! (-> v1-15 height) (the float 20))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id continue?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 56 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-no-disc progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 50.0)
  (let ((v1-2 arg0))
    (set! (-> v1-2 scale) 0.6)
    )
  (let ((v1-3 arg0))
    (set! (-> v1-3 width) (the float 300))
    )
  (let ((v1-4 arg0))
    (set! (-> v1-4 height) (the float 40))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id no-disc-title) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 90.0)
  (let ((v1-9 arg0))
    (set! (-> v1-9 width) (the float 360))
    )
  (let ((v1-10 arg0))
    (set! (-> v1-10 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id no-disc-msg) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (when (is-cd-in?)
    (let ((v1-13 arg0))
      (set! (-> v1-13 scale) 0.65)
      )
    (set! (-> arg0 origin y) 155.0)
    (let ((v1-14 arg0))
      (set! (-> v1-14 height) (the float 20))
      )
    (print-game-text-scaled
      (lookup-text! *common-text* (game-text-id continue?) #f)
      (-> obj transition-percentage-invert)
      arg0
      128
      )
    )
  0
  (none)
  )

;; definition for method 57 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-bad-disc progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 50.0)
  (let ((v1-2 arg0))
    (set! (-> v1-2 scale) 0.6)
    )
  (let ((v1-3 arg0))
    (set! (-> v1-3 width) (the float 300))
    )
  (let ((v1-4 arg0))
    (set! (-> v1-4 height) (the float 40))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id bad-disc-title) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 90.0)
  (let ((v1-9 arg0))
    (set! (-> v1-9 width) (the float 360))
    )
  (let ((v1-10 arg0))
    (set! (-> v1-10 height) (the float 60))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id bad-disc-msg) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (let ((v1-12 arg0))
    (set! (-> v1-12 scale) 0.65)
    )
  (set! (-> arg0 origin y) 155.0)
  (let ((v1-13 arg0))
    (set! (-> v1-13 height) (the float 20))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id continue?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 58 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-quit progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 70.0)
  (let ((v1-2 arg0))
    (set! (-> v1-2 scale) 0.6)
    )
  (let ((v1-3 arg0))
    (set! (-> v1-3 width) (the float 300))
    )
  (let ((v1-4 arg0))
    (set! (-> v1-4 height) (the float 40))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id quit?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 55 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-pal-now-60hz progress ((obj progress) (arg0 font-context))
  (set! (-> arg0 origin x) (the float (- 50 (-> obj left-x-offset))))
  (set! (-> arg0 origin y) 45.0)
  (let ((v1-2 arg0))
    (set! (-> v1-2 scale) 0.6)
    )
  (let ((v1-3 arg0))
    (set! (-> v1-3 width) (the float 300))
    )
  (let ((v1-4 arg0))
    (set! (-> v1-4 height) (the float 50))
    )
  (set! (-> arg0 flags) (font-flags shadow kerning middle left large))
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id screen-now-60hz) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  (set! (-> arg0 origin y) 95.0)
  (let ((v1-7 arg0))
    (set! (-> v1-7 height) (the float 50))
    )
  (print-game-text-scaled
    (lookup-text! *common-text* (game-text-id screen-60hz-keep?) #f)
    (-> obj transition-percentage-invert)
    arg0
    128
    )
  0
  (none)
  )

;; definition for method 27 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-notice-screen progress ((obj progress))
  (hide-progress-icons)
  (when *common-text*
    (let ((a1-1 (new
                  'stack
                  'font-context
                  *font-default-matrix*
                  (- 70 (-> obj left-x-offset))
                  10
                  0.0
                  (font-color default)
                  (font-flags shadow kerning)
                  )
                )
          )
      (case (-> obj display-state)
        (((progress-screen memcard-format))
         (draw-memcard-format obj a1-1)
         )
        (((progress-screen memcard-no-space)
          (progress-screen memcard-not-inserted)
          (progress-screen memcard-not-formatted)
          )
         (draw-memcard-storage-error obj a1-1)
         )
        (((progress-screen memcard-data-exists))
         (draw-memcard-data-exists obj a1-1)
         )
        (((progress-screen memcard-no-data))
         (draw-memcard-no-data obj a1-1)
         )
        (((progress-screen memcard-loading)
          (progress-screen memcard-saving)
          (progress-screen memcard-formatting)
          (progress-screen memcard-creating)
          )
         (draw-memcard-accessing obj a1-1)
         )
        (((progress-screen memcard-insert))
         (draw-memcard-insert obj a1-1)
         )
        (((progress-screen load-game) (progress-screen save-game) (progress-screen save-game-title))
         (draw-memcard-file-select obj a1-1)
         )
        (((progress-screen memcard-auto-save-error))
         (draw-memcard-auto-save-error obj a1-1)
         )
        (((progress-screen memcard-removed))
         (draw-memcard-removed obj a1-1)
         )
        (((progress-screen memcard-error-loading)
          (progress-screen memcard-error-saving)
          (progress-screen memcard-error-formatting)
          (progress-screen memcard-error-creating)
          )
         (draw-memcard-error obj a1-1)
         )
        (((progress-screen auto-save))
         (draw-auto-save obj a1-1)
         )
        (((progress-screen pal-change-to-60hz))
         (draw-pal-change-to-60hz obj a1-1)
         )
        (((progress-screen pal-now-60hz))
         (draw-pal-now-60hz obj a1-1)
         )
        (((progress-screen no-disc))
         (draw-no-disc obj a1-1)
         )
        (((progress-screen bad-disc))
         (draw-bad-disc obj a1-1)
         )
        (((progress-screen quit))
         (draw-quit obj a1-1)
         )
        )
      )
    )
  0
  (none)
  )

;; definition for function draw-percent-bar
;; INFO: Return type mismatch int vs none.
(defun draw-percent-bar ((arg0 int) (arg1 int) (arg2 float) (arg3 rgba))
  (let* ((s2-0 (-> *display* frames (-> *display* on-screen) frame global-buf))
         (gp-0 (-> s2-0 base))
         )
    (draw-sprite2d-xy s2-0 arg0 arg1 255 14 (new 'static 'rgba :a #x60))
    (draw-sprite2d-xy s2-0 arg0 (+ arg1 2) (the int (* 255.0 arg2)) 10 arg3)
    (let ((a3-3 (-> s2-0 base)))
      (let ((v1-3 (the-as dma-packet (-> s2-0 base))))
        (set! (-> v1-3 dma) (new 'static 'dma-tag :id (dma-tag-id next)))
        (set! (-> v1-3 vif0) (new 'static 'vif-tag))
        (set! (-> v1-3 vif1) (new 'static 'vif-tag))
        (set! (-> s2-0 base) (&+ (the-as pointer v1-3) 16))
        )
      (dma-bucket-insert-tag
        (-> *display* frames (-> *display* on-screen) frame bucket-group)
        (bucket-id sprite)
        gp-0
        (the-as (pointer dma-tag) a3-3)
        )
      )
    )
  0
  (none)
  )

;; definition for function print-language-name
(defun print-language-name ((arg0 int) (arg1 font-context) (arg2 int) (arg3 symbol))
  (let ((s5-0 (if arg3
                  arg2
                  (- arg2)
                  )
              )
        )
    (+! (-> arg1 origin x) (the float s5-0))
    (let ((f30-0 (- 1.0 (* 0.0033333334 (the float arg2)))))
      (print-game-text-scaled
        (lookup-text! *common-text* (-> *language-name-remap* arg0) #f)
        f30-0
        arg1
        (the int (* 128.0 f30-0))
        )
      )
    (set! (-> arg1 origin x) (- (-> arg1 origin x) (the float s5-0)))
    )
  (set! (-> arg1 color) (font-color default))
  arg1
  )

;; definition for method 28 of type progress
;; INFO: Used lq/sq
;; INFO: Return type mismatch int vs none.
(defmethod draw-options progress ((obj progress) (arg0 int) (arg1 int) (arg2 float))
  (local-vars
    (sv-112 font-context)
    (sv-128 int)
    (sv-144 int)
    (sv-160 (function _varargs_ object))
    (sv-176 string)
    (sv-192 string)
    (sv-208 string)
    (sv-224 (function _varargs_ object))
    (sv-240 string)
    (sv-256 string)
    (sv-272 string)
    (sv-288 (function string font-context symbol int int float))
    (sv-304 (function _varargs_ object))
    (sv-320 (function _varargs_ object))
    (sv-336 string)
    (sv-352 string)
    (sv-368 string)
    (sv-384 (function _varargs_ object))
    (sv-400 string)
    (sv-416 string)
    (sv-432 string)
    (sv-448 uint)
    (sv-464 int)
    (sv-480 int)
    (sv-496 int)
    (sv-512 int)
    (sv-528 (function _varargs_ object))
    (sv-544 string)
    (sv-560 string)
    (sv-576 string)
    (sv-592 (function _varargs_ object))
    (sv-608 string)
    (sv-624 string)
    (sv-640 string)
    (sv-656 (function _varargs_ object))
    (sv-672 string)
    (sv-688 string)
    (sv-704 string)
    (sv-720 (function _varargs_ object))
    (sv-736 string)
    (sv-752 string)
    (sv-768 string)
    (sv-784 (function _varargs_ object))
    (sv-800 string)
    (sv-816 string)
    (sv-832 string)
    (sv-848 (function _varargs_ object))
    (sv-864 string)
    (sv-880 string)
    (sv-896 string)
    (sv-912 string)
    )
  (let ((s3-0 (-> *options-remap* (-> obj display-state))))
    (when s3-0
      (let ((s2-1 (- arg0 (/ (* arg1 (length s3-0)) 2)))
            (s1-0 0)
            )
        27
        0
        (set! sv-112
              (new 'stack 'font-context *font-default-matrix* 0 0 0.0 (font-color default) (font-flags shadow kerning))
              )
        (let ((v1-11 sv-112))
          (set! (-> v1-11 width) (the float 350))
          )
        (let ((v1-12 sv-112))
          (set! (-> v1-12 height) (the float 25))
          )
        (set! (-> sv-112 flags) (font-flags shadow kerning middle left large))
        (dotimes (s0-0 (length s3-0))
          (set! sv-912 (the-as string #f))
          (set! sv-128 27)
          (set! sv-144 s2-1)
          (let ((v1-18 (-> s3-0 s0-0 option-type)))
            (cond
              ((= v1-18 (game-option-type yes-no))
               (cond
                 ((-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify)))
                  (set! sv-160 format)
                  (set! sv-176 (clear *temp-string*))
                  (set! sv-192 "~30L~S~0L ~S")
                  (set! sv-208 (lookup-text! *common-text* (game-text-id yes) #f))
                  (let ((a3-2 (lookup-text! *common-text* (game-text-id no) #f)))
                    (sv-160 sv-176 sv-192 sv-208 a3-2)
                    )
                  (set! sv-912 *temp-string*)
                  sv-912
                  )
                 (else
                   (set! sv-224 format)
                   (set! sv-240 (clear *temp-string*))
                   (set! sv-256 "~0L~S ~30L~S~1L")
                   (set! sv-272 (lookup-text! *common-text* (game-text-id yes) #f))
                   (let ((a3-3 (lookup-text! *common-text* (game-text-id no) #f)))
                     (sv-224 sv-240 sv-256 sv-272 a3-3)
                     )
                   (set! sv-912 *temp-string*)
                   sv-912
                   )
                 )
               )
              ((or (= v1-18 (game-option-type menu)) (= v1-18 (game-option-type button)))
               (cond
                 ((nonzero? (-> s3-0 s0-0 name))
                  (set! sv-912 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f))
                  sv-912
                  )
                 (else
                   (set! sv-912 (the-as string #f))
                   (the-as symbol sv-912)
                   )
                 )
               )
              ((and (-> obj selected-option) (= (-> obj option-index) s0-0))
               (let ((a0-19 sv-112))
                 (set! (-> a0-19 color) (font-color default))
                 )
               (set! (-> sv-112 origin x) (the float (- sv-128 (-> obj left-x-offset))))
               (case (-> s3-0 s0-0 option-type)
                 (((game-option-type center-screen))
                  (set! (-> sv-112 origin y) (the float (+ s2-1 -20)))
                  )
                 (else
                   (set! (-> sv-112 origin y) (the float (+ s2-1 -8)))
                   )
                 )
               (let ((v1-64 sv-112))
                 (set! (-> v1-64 scale) 0.6)
                 )
               (set! sv-288 print-game-text)
               (let ((a0-23 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f))
                     (a1-11 sv-112)
                     (a2-10 #f)
                     (a3-4 128)
                     (t0-1 22)
                     )
                 (sv-288 a0-23 a1-11 a2-10 a3-4 t0-1)
                 )
               (case (-> s3-0 s0-0 option-type)
                 (((game-option-type center-screen))
                  (set! sv-144 (+ s2-1 3))
                  sv-144
                  )
                 (else
                   (set! sv-144 (+ s2-1 7))
                   sv-144
                   )
                 )
               (case (-> s3-0 s0-0 option-type)
                 (((game-option-type slider))
                  (let* ((v1-82 (the-as uint #x8000ffff))
                         (f0-12 (* 0.01 (-> (the-as (pointer float) (-> s3-0 s0-0 value-to-modify)))))
                         (a0-34 (logior (logand v1-82 -256) (shr (shl (the int (+ 64.0 (* 191.0 f0-12))) 56) 56)))
                         (a3-5 (logior (logand a0-34 -65281) (shr (shl (shr (shl a0-34 56) 56) 56) 48)))
                         )
                    (draw-percent-bar (- 75 (-> obj left-x-offset)) (+ s2-1 8) f0-12 (the-as rgba a3-5))
                    )
                  (set! sv-304 format)
                  (let ((a0-42 (clear *temp-string*))
                        (a1-13 "~D")
                        (a2-12 (the int (-> (the-as (pointer float) (-> s3-0 s0-0 value-to-modify)))))
                        )
                    (sv-304 a0-42 a1-13 a2-12)
                    )
                  (set! sv-912 *temp-string*)
                  (set! sv-128 (+ (the int (* 2.5 (-> (the-as (pointer float) (-> s3-0 s0-0 value-to-modify))))) -100))
                  sv-128
                  )
                 (((game-option-type on-off))
                  (cond
                    ((-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify)))
                     (set! sv-320 format)
                     (set! sv-336 (clear *temp-string*))
                     (set! sv-352 "~30L~S~0L ~S")
                     (set! sv-368 (lookup-text! *common-text* (game-text-id on) #f))
                     (let ((a3-6 (lookup-text! *common-text* (game-text-id off) #f)))
                       (sv-320 sv-336 sv-352 sv-368 a3-6)
                       )
                     (set! sv-912 *temp-string*)
                     sv-912
                     )
                    (else
                      (set! sv-384 format)
                      (set! sv-400 (clear *temp-string*))
                      (set! sv-416 "~0L~S ~30L~S~1L")
                      (set! sv-432 (lookup-text! *common-text* (game-text-id on) #f))
                      (let ((a3-7 (lookup-text! *common-text* (game-text-id off) #f)))
                        (sv-384 sv-400 sv-416 sv-432 a3-7)
                        )
                      (set! sv-912 *temp-string*)
                      sv-912
                      )
                    )
                  )
                 (((game-option-type language))
                  (set! sv-512 (the-as int (-> obj language-selection)))
                  (set! sv-448 (-> (the-as (pointer uint64) (-> s3-0 s0-0 value-to-modify))))
                  (if (and (zero? (scf-get-territory))
                           (not (and (= *progress-cheat* 'language) (cpad-hold? 0 l2) (cpad-hold? 0 r2)))
                           )
                      (set! sv-464 5)
                      (set! sv-464 6)
                      )
                  (if (-> obj language-transition)
                      (seekl! (-> obj language-x-offset) 200 (the int (* 10.0 (-> *display* time-adjust-ratio))))
                      )
                  (when (>= (-> obj language-x-offset) 100)
                    (set! (-> obj language-selection) (the-as language-enum sv-448))
                    (set! sv-512 (the-as int sv-448))
                    (set! (-> obj language-transition) #f)
                    (set! (-> obj language-x-offset) 0)
                    0
                    )
                  (set! (-> sv-112 origin y) (the float (+ s2-1 3)))
                  (let ((a0-62 sv-112))
                    (set! (-> a0-62 color) (font-color lighter-lighter-blue))
                    )
                  0
                  (set! sv-480 (mod (+ sv-512 1) sv-464))
                  (let ((a0-66 (mod (+ sv-464 -1 sv-512) sv-464))
                        (v1-153 (mod (+ sv-512 2) sv-464))
                        )
                    (set! sv-496 (mod (+ sv-464 -2 sv-512) sv-464))
                    (cond
                      ((-> obj language-direction)
                       (let ((a2-22 (- 200 (+ (-> obj language-x-offset) 100))))
                         (print-language-name a0-66 sv-112 a2-22 #f)
                         )
                       (let ((a2-23 (+ (-> obj language-x-offset) 100)))
                         (cond
                           ((< a2-23 150)
                            (let ((t9-27 print-language-name)
                                  (a1-30 sv-112)
                                  (a3-9 #t)
                                  )
                              (t9-27 sv-480 a1-30 a2-23 a3-9)
                              )
                            )
                           (else
                             (let ((a2-24 (- 200 (-> obj language-x-offset)))
                                   (t9-28 print-language-name)
                                   (a1-31 sv-112)
                                   (a3-10 #f)
                                   )
                               (t9-28 sv-496 a1-31 a2-24 a3-10)
                               )
                             )
                           )
                         )
                       )
                      (else
                        (let ((a2-25 (+ (-> obj language-x-offset) 100)))
                          (cond
                            ((< a2-25 150)
                             (print-language-name a0-66 sv-112 a2-25 #f)
                             )
                            (else
                              (let ((a2-26 (- 200 (-> obj language-x-offset))))
                                (print-language-name v1-153 sv-112 a2-26 #t)
                                )
                              )
                            )
                          )
                        (let ((a2-27 (- 200 (+ (-> obj language-x-offset) 100))))
                          (print-language-name sv-480 sv-112 a2-27 #t)
                          )
                        )
                      )
                    )
                  (when (not (-> obj language-transition))
                    (let ((a0-75 sv-112))
                      (set! (-> a0-75 color) (font-color yellow-green-2))
                      )
                    )
                  (let ((t9-32 print-language-name)
                        (a1-37 sv-112)
                        (a2-28 (-> obj language-x-offset))
                        (a3-14 (-> obj language-direction))
                        )
                    (t9-32 sv-512 a1-37 a2-28 a3-14)
                    )
                  )
                 (((game-option-type center-screen))
                  (set! sv-912 (lookup-text! *common-text* (game-text-id move-dpad) #f))
                  sv-912
                  )
                 (((game-option-type aspect-ratio))
                  (cond
                    ((= (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) 'aspect4x3)
                     (set! sv-528 format)
                     (set! sv-544 (clear *temp-string*))
                     (set! sv-560 "~30L~S~0L ~S")
                     (set! sv-576 (lookup-text! *common-text* (game-text-id 4x3) #f))
                     (let ((a3-15 (lookup-text! *common-text* (game-text-id 16x9) #f)))
                       (sv-528 sv-544 sv-560 sv-576 a3-15)
                       )
                     (set! sv-912 *temp-string*)
                     sv-912
                     )
                    (else
                      (set! sv-592 format)
                      (set! sv-608 (clear *temp-string*))
                      (set! sv-624 "~0L~S ~30L~S~1L")
                      (set! sv-640 (lookup-text! *common-text* (game-text-id 4x3) #f))
                      (let ((a3-16 (lookup-text! *common-text* (game-text-id 16x9) #f)))
                        (sv-592 sv-608 sv-624 sv-640 a3-16)
                        )
                      (set! sv-912 *temp-string*)
                      sv-912
                      )
                    )
                  )
                 (((game-option-type video-mode))
                  (cond
                    ((= (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify))) 'ntsc)
                     (set! sv-656 format)
                     (set! sv-672 (clear *temp-string*))
                     (set! sv-688 "~0L~S ~30L~S~1L")
                     (set! sv-704 (lookup-text! *common-text* (game-text-id 50hz) #f))
                     (let ((a3-17 (lookup-text! *common-text* (game-text-id 60hz) #f)))
                       (sv-656 sv-672 sv-688 sv-704 a3-17)
                       )
                     (set! sv-912 *temp-string*)
                     sv-912
                     )
                    (else
                      (set! sv-720 format)
                      (set! sv-736 (clear *temp-string*))
                      (set! sv-752 "~30L~S~0L ~S")
                      (set! sv-768 (lookup-text! *common-text* (game-text-id 50hz) #f))
                      (let ((a3-18 (lookup-text! *common-text* (game-text-id 60hz) #f)))
                        (sv-720 sv-736 sv-752 sv-768 a3-18)
                        )
                      (set! sv-912 *temp-string*)
                      sv-912
                      )
                    )
                  )
                 )
               )
              (else
                (case (-> s3-0 s0-0 option-type)
                  (((game-option-type slider)
                    (game-option-type center-screen)
                    (game-option-type aspect-ratio)
                    (game-option-type video-mode)
                    )
                   (set! sv-912 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f))
                   sv-912
                   )
                  (((game-option-type on-off))
                   (set! sv-784 format)
                   (set! sv-800 (clear *temp-string*))
                   (set! sv-816 "~S: ~S")
                   (set! sv-832 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f))
                   (let ((a3-19 (if (-> (the-as (pointer uint32) (-> s3-0 s0-0 value-to-modify)))
                                    (lookup-text! *common-text* (game-text-id on) #f)
                                    (lookup-text! *common-text* (game-text-id off) #f)
                                    )
                                )
                         )
                     (sv-784 sv-800 sv-816 sv-832 a3-19)
                     )
                   (set! sv-912 *temp-string*)
                   sv-912
                   )
                  (((game-option-type language))
                   (set! sv-848 format)
                   (set! sv-864 (clear *temp-string*))
                   (set! sv-880 "~S: ~S")
                   (set! sv-896 (lookup-text! *common-text* (-> s3-0 s0-0 name) #f))
                   (let ((a3-20 (lookup-text!
                                  *common-text*
                                  (-> *language-name-remap* (-> (the-as (pointer uint64) (-> s3-0 s0-0 value-to-modify))))
                                  #f
                                  )
                                )
                         )
                     (sv-848 sv-864 sv-880 sv-896 a3-20)
                     )
                   (set! sv-912 *temp-string*)
                   sv-912
                   )
                  )
                )
              )
            )
          (when sv-912
            (let ((f0-23 (-> obj transition-percentage-invert)))
              (let ((v1-235 sv-112))
                (set! (-> v1-235 color)
                      (the-as font-color (if (and (= s0-0 (-> obj option-index)) (not (-> obj in-transition)))
                                             30
                                             0
                                             )
                              )
                      )
                )
              (set! (-> sv-112 origin x) (the float (- sv-128 (-> obj left-x-offset))))
              (set! (-> sv-112 origin y) (the float (the int (* (the float sv-144) (if (-> s3-0 s0-0 scale)
                                                                                       f0-23
                                                                                       1.0
                                                                                       )
                                                                )
                                                         )
                                              )
                    )
              (let ((v1-246 sv-112))
                (set! (-> v1-246 scale) (* arg2 f0-23))
                )
              (let ((t9-60 print-game-text)
                    (a1-64 sv-112)
                    (a2-50 #f)
                    (a3-21 (the int (* 128.0 f0-23)))
                    (t0-2 22)
                    )
                (t9-60 sv-912 a1-64 a2-50 a3-21 t0-2)
                )
              )
            )
          (+! s2-1 arg1)
          (+! s1-0 1)
          )
        )
      )
    )
  0
  (none)
  )

;; definition for method 17 of type progress
;; INFO: Return type mismatch int vs none.
(defmethod draw-progress progress ((obj progress))
  (let ((f30-0 (+ -409.0 (-> obj particles 2 init-pos x) (* 0.8 (the float (-> obj left-x-offset)))))
        (s5-0 (if (or (-> obj stat-transition) (nonzero? (-> obj level-transition)))
                  0
                  (-> obj transition-offset)
                  )
              )
        )
    (let ((f28-0 (if (or (-> obj stat-transition) (nonzero? (-> obj level-transition)))
                     1.0
                     (-> obj transition-percentage-invert)
                     )
                 )
          )
      (let* ((s3-0 (-> *display* frames (-> *display* on-screen) frame global-buf))
             (s4-0 (-> s3-0 base))
             )
        (let ((s2-0 draw-string-xy))
          (format (clear *temp-string*) "~D" (the int (+ 0.5 (-> *target* game money))))
          (s2-0
            *temp-string*
            s3-0
            (the int (+ 428.0 (the float s5-0) f30-0))
            (- 12 (the int (* 0.16666667 f30-0)))
            (font-color default)
            (font-flags shadow kerning large)
            )
          )
        (let ((s2-1 draw-string-xy))
          (format (clear *temp-string*) "~D" (the int (+ 0.5 (-> *target* game fuel))))
          (s2-1
            *temp-string*
            s3-0
            (the int (+ 456.0 (the float (adjust-pos s5-0 50)) f30-0))
            (- 48 (the int (* 0.125 f30-0)))
            (font-color default)
            (font-flags shadow kerning large)
            )
          )
        (let ((s2-2 draw-string-xy))
          (format (clear *temp-string*) "~D" (the int (+ 0.5 (-> *target* fact-info-target buzzer))))
          (s2-2
            *temp-string*
            s3-0
            (the int (+ 469.0 (the float (adjust-pos s5-0 100)) f30-0))
            89
            (font-color default)
            (font-flags shadow kerning large)
            )
          )
        (let ((a3-4 (-> s3-0 base)))
          (let ((v1-20 (the-as object (-> s3-0 base))))
            (set! (-> (the-as dma-packet v1-20) dma) (new 'static 'dma-tag :id (dma-tag-id next)))
            (set! (-> (the-as dma-packet v1-20) vif0) (new 'static 'vif-tag))
            (set! (-> (the-as dma-packet v1-20) vif1) (new 'static 'vif-tag))
            (set! (-> s3-0 base) (&+ (the-as pointer v1-20) 16))
            )
          (dma-bucket-insert-tag
            (-> *display* frames (-> *display* on-screen) frame bucket-group)
            (bucket-id debug)
            s4-0
            (the-as (pointer dma-tag) a3-4)
            )
          )
        )
      (let ((s4-2
              (new
                'stack
                'font-context
                *font-default-matrix*
                (the int (+ (- 423.0 (the float (/ (-> obj left-x-offset) 2))) f30-0 (the float (adjust-pos s5-0 150))))
                131
                0.0
                (font-color default)
                (font-flags shadow kerning)
                )
              )
            )
        (let ((v1-29 s4-2))
          (set! (-> v1-29 width) (the float 100))
          )
        (let ((v1-30 s4-2))
          (set! (-> v1-30 height) (the float 15))
          )
        (let ((v1-31 s4-2))
          (set! (-> v1-31 scale) 0.5)
          )
        (set! (-> s4-2 flags) (font-flags shadow kerning large))
        (print-game-text (lookup-text! *common-text* (game-text-id options) #f) s4-2 #f 128 22)
        (let ((v1-34 s4-2))
          (set! (-> v1-34 width) (the float 160))
          )
        (let ((v1-35 s4-2))
          (set! (-> v1-35 height) (the float 22))
          )
        (let ((v1-36 s4-2))
          (set! (-> v1-36 scale) 1.3)
          )
        (let ((a0-31 s4-2))
          (set! (-> a0-31 color) (font-color another-light-blue))
          )
        (set! (-> s4-2 origin x)
              (+ (- 435.0 (the float (if (< (-> *progress-process* 0 completion-percentage) 10.0)
                                         93
                                         80
                                         )
                               )
                    )
                 f30-0
                 )
              )
        (set! (-> s4-2 origin y) 180.0)
        (set! (-> s4-2 flags) (font-flags shadow kerning middle left large))
        (let ((s3-3 print-game-text))
          (format (clear *temp-string*) "~2D%" (the int (-> *progress-process* 0 completion-percentage)))
          (s3-3 *temp-string* s4-2 #f (the int (* 128.0 f28-0)) 22)
          )
        )
      )
    0.0
    (let ((f28-1 (+ -94.0 (-> obj particles 2 init-pos x)))
          (s3-4 90)
          (s4-3 224)
          (s2-5 (/ s5-0 5))
          (f26-3 (-> obj button-scale))
          )
      (let ((f24-0 (* 182.04445 (- (/ -36.0 f26-3) (the float s2-5)))))
        (set! (-> obj particles 27 init-pos x) (the float (+ s3-4 (the int (* f28-1 (cos f24-0))))))
        (set! (-> obj particles 27 init-pos y) (the float (+ s4-3 (the int (* f28-1 (sin f24-0))))))
        )
      (let ((f24-2 (* 182.04445 (- (/ -21.0 f26-3) (the float (adjust-pos s2-5 10))))))
        (set! (-> obj particles 28 init-pos x) (the float (+ s3-4 (the int (* f28-1 (cos f24-2))))))
        (set! (-> obj particles 28 init-pos y) (the float (+ s4-3 (the int (* f28-1 (sin f24-2))))))
        )
      (let ((f24-4 (* 182.04445 (- (/ -6.0 f26-3) (the float (adjust-pos s2-5 15))))))
        (set! (-> obj particles 29 init-pos x) (the float (+ s3-4 (the int (* f28-1 (cos f24-4))))))
        (set! (-> obj particles 29 init-pos y) (the float (+ s4-3 (the int (* f28-1 (sin f24-4))))))
        )
      (let ((f26-5 (* 182.04445 (- (/ 9.0 f26-3) (the float (adjust-pos s2-5 20))))))
        (set! (-> obj particles 30 init-pos x) (the float (+ s3-4 (the int (* f28-1 (cos f26-5))))))
        (set! (-> obj particles 30 init-pos y) (the float (+ s4-3 (the int (* f28-1 (sin f26-5))))))
        )
      )
    (when *cheat-mode*
      (let ((a0-46 "AUTO SAVE OFF"))
        (if (-> *setting-control* current auto-save)
            (set! a0-46 "AUTO SAVE ON")
            )
        (let* ((s3-5 (-> *display* frames (-> *display* on-screen) frame global-buf))
               (s4-4 (-> s3-5 base))
               )
          (draw-string-xy
            a0-46
            s3-5
            (the int (+ 430.0 f30-0))
            200
            (font-color blue-white)
            (font-flags shadow kerning middle)
            )
          (let ((a3-9 (-> s3-5 base)))
            (let ((v1-81 (the-as object (-> s3-5 base))))
              (set! (-> (the-as dma-packet v1-81) dma) (new 'static 'dma-tag :id (dma-tag-id next)))
              (set! (-> (the-as dma-packet v1-81) vif0) (new 'static 'vif-tag))
              (set! (-> (the-as dma-packet v1-81) vif1) (new 'static 'vif-tag))
              (set! (-> s3-5 base) (&+ (the-as pointer v1-81) 16))
              )
            (dma-bucket-insert-tag
              (-> *display* frames (-> *display* on-screen) frame bucket-group)
              (bucket-id debug)
              s4-4
              (the-as (pointer dma-tag) a3-9)
              )
            )
          )
        )
      )
    (let ((a0-52 (-> obj icons 5 icon 0 root)))
      (set-yaw-angle-clear-roll-pitch!
        a0-52
        (- (y-angle a0-52) (* 182.04445 (* 4.0 (-> *display* time-adjust-ratio))))
        )
      )
    (let* ((f28-2 (* 0.00024414062 (the float (-> *progress-process* 0 in-out-position))))
           (f30-1 (* 300.0 f28-2))
           )
      (set! (-> obj particles 18 init-pos x)
            (the float (+ (the int (the float (adjust-pos s5-0 50))) 394 (the int f30-1) (-> obj right-x-offset)))
            )
      (set! (-> obj particles 18 init-pos y) (the float (- 40 (the int (* 80.0 f28-2)))))
      (set! (-> obj icons 5 icon-x)
            (+ (the int (the float (adjust-pos s5-0 50))) 393 (the int f30-1) (-> obj right-x-offset))
            )
      (set! (-> obj icons 5 icon-y) (- (-> obj small-orb-y-offset) (the int (* 80.0 f28-2))))
      (set! (-> obj particles 16 init-pos x)
            (the float (+ (the int (the float (adjust-pos s5-0 100))) 425 (the int f30-1) (-> obj right-x-offset)))
            )
      (set! (-> obj particles 16 init-pos y) (the float (- 112 (the int (* 60.0 f28-2)))))
      (set! (-> obj particles 17 init-pos x) (the float (+ (the int (the float (adjust-pos s5-0 150)))
                                                           442
                                                           (the int f30-1)
                                                           (the int (* 0.7 (the float (-> obj right-x-offset))))
                                                           )
                                                  )
            )
      )
    )
  (set! (-> obj particles 17 init-pos y) 193.0)
  0
  (none)
  )
