(script 99)

(string
    string_01ba "Speedy"
    string_01c1 "rm99"
    string_01c6 "zz"
    string_01c9 ""
)

(said
)

(local
    local0 = $0000
)

// 010e
(instance Speedy of Act
    (properties
        y $0
        x $0
        z $0
        heading $0
        yStep $2
        view $0
        loop $0
        cel $0
        priority $0
        underBits $0
        signal $0
        nsTop $0
        nsLeft $0
        nsBottom $0
        nsRight $0
        lsTop $0
        lsLeft $0
        lsBottom $0
        lsRight $0
        brTop $0
        brLeft $0
        brBottom $0
        brRight $0
        cycleSpeed $0
        script $0
        cycler $0
        timer $0
        illegalBits $8000
        xLast $0
        yLast $0
        xStep $3
        moveSpeed $0
        blocks $0
        baseSetter $0
        mover $0
        looper $0
        viewer $0
        avoider $0
    )
)

// 0172
(instance public rm99 of Rm
    (properties
        script $0
        number $0
        timer $0
        keep $0
        initialized $0
        picture $3e0
        style $6
        horizon $0
        controls $0
        north $0
        east $0
        south $0
        west $0
        curPic $0
        picAngle $0
        vanishingX $a0
        vanishingY $8ad0
        vertAngle $0
    )
    (method (init) // method_000c
  000c:76               push0 
  000d:45 03 00         callb procedure_0003 0 // HandsOff 

  0010:39 57            pushi 57 // $57 init
  0012:76               push0 
  0013:57 37 04         super Rm 4 

  0016:35 ff              ldi ff 
  0018:a0 00df            sag gDetailLevel 
  001b:89 10              lsg gPossibleScore 
  001d:35 01              ldi 1 
  001f:1c                 ne? 
  0020:31 14              bnt code_0036 
  0022:7a               push2 
  0023:38 0080          pushi 80 // $80 timeLeft
  0026:38 0383          pushi 383 // $383 sel_899
  0029:43 00 04         callk Load 4 

  002c:7a               push2 
  002d:38 008f          pushi 8f // $8f moveTo
  0030:38 0199          pushi 199 // $199 sel_409
  0033:45 15 04         callb procedure_0015 4 // LoadMany 


        code_0036
  0036:39 05            pushi 5 // $5 view
  0038:78               push1 
  0039:38 03df          pushi 3df // $3df sel_991
  003c:38 00c5          pushi c5 // $c5 posn
  003f:7a               push2 
  0040:39 14            pushi 14 // $14 brLeft
  0042:39 63            pushi 63 // $63 firstTrue
  0044:38 00dc          pushi dc // $dc setStep
  0047:7a               push2 
  0048:78               push1 
  0049:78               push1 
  004a:38 00d3          pushi d3 // $d3 setMotion
  004d:39 03            pushi 3 // $3 y
  004f:51 1d            class MoveTo 
  0051:36                push 
  0052:38 012c          pushi 12c // $12c surrogate
  0055:39 64            pushi 64 // $64 allTrue
  0057:39 7e            pushi 7e // $7e setCycle
  0059:78               push1 
  005a:51 16            class Fwd 
  005c:36                push 
  005d:39 57            pushi 57 // $57 init
  005f:76               push0 
  0060:72 00b1          lofsa $0114 // Speedy
  0063:4a 2a             send 2a 

  0065:38 00fd          pushi fd // $fd setSpeed
  0068:78               push1 
  0069:76               push0 
  006a:81 01              lag gGame 
  006c:4a 06             send 6 

  006e:48                 ret 
    )

    (method (doit) // method_006f
  006f:39 3c            pushi 3c // $3c doit
  0071:76               push0 
  0072:57 37 04         super Rm 4 

  0075:88 00df            lsg gDetailLevel 
  0078:35 ff              ldi ff 
  007a:1a                 eq? 
  007b:30 0089            bnt code_0107 
  007e:c8 00de            +sg global222 
  0081:35 01              ldi 1 
  0083:1a                 eq? 
  0084:31 09              bnt code_008f 
  0086:39 3c            pushi 3c // $3c doit
  0088:76               push0 
  0089:43 46 00         callk GetTime 0 

  008c:02                 add 
  008d:a3 00              sal local0 

        code_008f
  008f:8b 00              lsl local0 
  0091:76               push0 
  0092:43 46 00         callk GetTime 0 

  0095:22                 lt? 
  0096:31 6f              bnt code_0107 
  0098:88 00de            lsg global222 
  009b:35 28              ldi 28 
  009d:24                 le? 
  009e:31 07              bnt code_00a7 
  00a0:35 00              ldi 0 
  00a2:a0 00df            sag gDetailLevel 
  00a5:33 14              jmp code_00bb 

        code_00a7
  00a7:88 00de            lsg global222 
  00aa:35 46              ldi 46 
  00ac:24                 le? 
  00ad:31 07              bnt code_00b6 
  00af:35 01              ldi 1 
  00b1:a0 00df            sag gDetailLevel 
  00b4:33 05              jmp code_00bb 

        code_00b6
  00b6:35 02              ldi 2 
  00b8:a0 00df            sag gDetailLevel 

        code_00bb
  00bb:38 00fd          pushi fd // $fd setSpeed
  00be:78               push1 
  00bf:39 06            pushi 6 // $6 loop
  00c1:81 01              lag gGame 
  00c3:4a 06             send 6 

  00c5:76               push0 
  00c6:45 04 00         callb procedure_0004 0 // HandsOn 

  00c9:81 10              lag gPossibleScore 
  00cb:18                 not 
  00cc:31 20              bnt code_00ee 
  00ce:7a               push2 
  00cf:74 00f4          lofss $01c6 // zz
  00d2:89 1c              lsg gVersion 
  00d4:35 07              ldi 7 
  00d6:02                 add 
  00d7:36                push 
  00d8:43 49 04         callk StrCmp 4 

  00db:18                 not 
  00dc:31 10              bnt code_00ee 
  00de:39 7a            pushi 7a // $7a setScript
  00e0:78               push1 
  00e1:7a               push2 
  00e2:38 0199          pushi 199 // $199 sel_409
  00e5:76               push0 
  00e6:43 02 04         callk ScriptID 4 

  00e9:36                push 
  00ea:54 06             self 6 

  00ec:33 19              jmp code_0107 

        code_00ee
  00ee:38 00f8          pushi f8 // $f8 newRoom
  00f1:78               push1 
  00f2:89 10              lsg gPossibleScore 
  00f4:3c                 dup 
  00f5:35 01              ldi 1 
  00f7:1a                 eq? 
  00f8:31 04              bnt code_00fe 
  00fa:35 2c              ldi 2c 
  00fc:33 03              jmp code_0101 

        code_00fe
  00fe:34 019e            ldi 19e 

        code_0101
  0101:3a                toss 
  0102:36                push 
  0103:81 02              lag gCurRoom 
  0105:4a 06             send 6 


        code_0107
  0107:48                 ret 
    )

)



