155 lines
2.1 KiB
Plaintext
155 lines
2.1 KiB
Plaintext
DPath::init:
|
|
link $1
|
|
lsp param[$0]
|
|
ldi $1
|
|
sub
|
|
sat temp[$0]
|
|
push
|
|
ldi $2
|
|
mod
|
|
bnt code_00b8
|
|
-at temp[$0]
|
|
-ap param[$0]
|
|
lat temp[$0]
|
|
lapi param[$2]
|
|
aTop caller
|
|
pushi $8000 ; -32768
|
|
lat temp[$0]
|
|
sapi param[$2]
|
|
code_00b8: pToa points
|
|
bnt code_00c3
|
|
pushi $95 ; 149, dispose
|
|
push0
|
|
send $4
|
|
bnot
|
|
code_00c3: pushi $d1 ; 209, newWith
|
|
push2
|
|
lst temp[$0]
|
|
ldi $1
|
|
add
|
|
push
|
|
&rest $3 ; z
|
|
lsp param[$2]
|
|
class IntArray
|
|
send $8
|
|
bnot
|
|
aTop points
|
|
pushi $4b ; 75, 'K', at
|
|
push2
|
|
lst temp[$0]
|
|
ldi $1
|
|
sub
|
|
push
|
|
pushi $8000 ; -32768
|
|
pToa points
|
|
send $8
|
|
bnot
|
|
pushi $157 ; 343, setTarget
|
|
push0
|
|
self $4
|
|
bnot
|
|
pushi $94 ; 148, init
|
|
push0
|
|
super MoveTo, $4
|
|
bnot
|
|
ret
|
|
|
|
DPath::dispose:
|
|
pToa points
|
|
bnt code_0104
|
|
pushi $95 ; 149, dispose
|
|
push0
|
|
send $4
|
|
bnot
|
|
code_0104: pushi $95 ; 149, dispose
|
|
push0
|
|
super MoveTo, $4
|
|
bnot
|
|
ret
|
|
|
|
DPath::setTarget:
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
pTos value
|
|
pToa points
|
|
send $6
|
|
bnot
|
|
push
|
|
ldi $8000 ; -32768
|
|
ne?
|
|
bnt code_0139
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
pTos value
|
|
pToa points
|
|
send $6
|
|
bnot
|
|
aTop x
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
ipToa value
|
|
push
|
|
pToa points
|
|
send $6
|
|
bnot
|
|
aTop y
|
|
ipToa value
|
|
code_0139: ret
|
|
|
|
DPath::moveDone:
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
pTos value
|
|
pToa points
|
|
send $6
|
|
bnot
|
|
push
|
|
ldi $8000 ; -32768
|
|
eq?
|
|
bnt code_0154
|
|
pushi $64 ; 100, 'd', moveDone
|
|
push0
|
|
super MoveTo, $4
|
|
bnot
|
|
jmp code_015b
|
|
|
|
code_0154: pushi $94 ; 148, init
|
|
push0
|
|
self $4
|
|
bnot
|
|
code_015b: ret
|
|
|
|
RelDPath::setTarget:
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
pTos value
|
|
pToa points
|
|
send $6
|
|
bnot
|
|
push
|
|
ldi $8000 ; -32768
|
|
ne?
|
|
bnt code_018f
|
|
pTos x
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
pTos value
|
|
pToa points
|
|
send $6
|
|
bnot
|
|
add
|
|
aTop x
|
|
ipToa value
|
|
pTos y
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
pTos value
|
|
pToa points
|
|
send $6
|
|
bnot
|
|
add
|
|
aTop y
|
|
ipToa value
|
|
code_018f: ret
|
|
|