353 lines
4.7 KiB
Plaintext
353 lines
4.7 KiB
Plaintext
Array::new:
|
|
link $1
|
|
pushSelf
|
|
class Array
|
|
eq?
|
|
bnt code_00c7
|
|
ldi $0
|
|
ret
|
|
|
|
code_00c7: pushi $8d ; 141, new
|
|
push0
|
|
super Obj, $4
|
|
bnot
|
|
sat temp[$0]
|
|
pushi $71 ; 113, 'q', data
|
|
push1
|
|
lap param[$0]
|
|
bnt code_00e5
|
|
pushi $3 ; z
|
|
push0
|
|
lsp param[$1]
|
|
pTos type
|
|
callk kernel_91, $6
|
|
bnot
|
|
jmp code_00fe
|
|
|
|
code_00e5: pToa data
|
|
bnt code_00f3
|
|
push2
|
|
pushi $8 ; fixPriority
|
|
push
|
|
callk kernel_91, $4
|
|
bnot
|
|
jmp code_00fe
|
|
|
|
code_00f3: pushi $3 ; z
|
|
push0
|
|
pushi $a ; 10, inTop
|
|
pTos type
|
|
callk kernel_91, $6
|
|
bnot
|
|
code_00fe: push
|
|
lat temp[$0]
|
|
send $6
|
|
bnot
|
|
lat temp[$0]
|
|
ret
|
|
|
|
Array::with:
|
|
link $1
|
|
pushi $8d ; 141, new
|
|
push1
|
|
lsp param[$0]
|
|
self $6
|
|
bnot
|
|
sat temp[$0]
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
push0
|
|
&rest $1
|
|
send $6
|
|
bnot
|
|
lat temp[$0]
|
|
ret
|
|
|
|
Array::newWith:
|
|
link $1
|
|
pushi $8d ; 141, new
|
|
push1
|
|
push2
|
|
lsp param[$0]
|
|
ldi $1
|
|
sub
|
|
push
|
|
lsp param[$1]
|
|
calle export60025_3, $4
|
|
bnot
|
|
push
|
|
self $6
|
|
bnot
|
|
sat temp[$0]
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
push0
|
|
&rest $2
|
|
send $6
|
|
bnot
|
|
lat temp[$0]
|
|
ret
|
|
|
|
Array::at:
|
|
lsp param[$0]
|
|
ldi $1
|
|
eq?
|
|
bnt code_015b
|
|
pushi $3 ; z
|
|
push2
|
|
pTos data
|
|
lsp param[$1]
|
|
callk kernel_91, $6
|
|
bnot
|
|
ret
|
|
|
|
code_015b: pushi $3 ; z
|
|
dup
|
|
pTos data
|
|
lsp param[$1]
|
|
&rest $2
|
|
callk kernel_91, $6
|
|
bnot
|
|
selfID
|
|
ret
|
|
|
|
Array::copyToFrom:
|
|
pushi $6 ; maxScale
|
|
dup
|
|
pTos data
|
|
lsp param[$1]
|
|
push2
|
|
pushi $9 ; inLeft
|
|
lsp param[$2]
|
|
callk kernel_91, $4
|
|
bnot
|
|
push
|
|
lsp param[$3]
|
|
lsp param[$4]
|
|
callk kernel_91, $c
|
|
bnot
|
|
selfID
|
|
ret
|
|
|
|
Array::copy:
|
|
pushi $96 ; 150, isClass
|
|
push0
|
|
self $4
|
|
bnot
|
|
bnt code_01a0
|
|
pushi $d3 ; 211, copy
|
|
push1
|
|
lsp param[$1]
|
|
pushi $8d ; 141, new
|
|
push0
|
|
self $4
|
|
bnot
|
|
send $6
|
|
bnot
|
|
jmp code_01b7
|
|
|
|
code_01a0: pushi $d2 ; 210, copyToFrom
|
|
pushi $4 ; scaleX
|
|
push0
|
|
push2
|
|
pushi $9 ; inLeft
|
|
lsp param[$1]
|
|
callk kernel_91, $4
|
|
bnot
|
|
push
|
|
push0
|
|
pushi $ff ; 255, asInteger
|
|
self $c
|
|
bnot
|
|
code_01b7: ret
|
|
|
|
Array::move:
|
|
pushi $d2 ; 210, copyToFrom
|
|
pushi $4 ; scaleX
|
|
lsp param[$1]
|
|
pushSelf
|
|
lsp param[$2]
|
|
lsp param[$3]
|
|
self $c
|
|
bnot
|
|
ret
|
|
|
|
Array::compToFrom:
|
|
pushi $6 ; maxScale
|
|
pushi $7 ; priority
|
|
pTos data
|
|
lsp param[$1]
|
|
push2
|
|
pushi $9 ; inLeft
|
|
lsp param[$2]
|
|
callk kernel_91, $4
|
|
bnot
|
|
push
|
|
lsp param[$3]
|
|
lsp param[$4]
|
|
callk kernel_91, $c
|
|
bnot
|
|
not
|
|
ret
|
|
|
|
Array::compare:
|
|
pushi $5a ; 90, 'Z', size
|
|
push0
|
|
self $4
|
|
bnot
|
|
push
|
|
push2
|
|
push1
|
|
push2
|
|
pushi $9 ; inLeft
|
|
lsp param[$1]
|
|
callk kernel_91, $4
|
|
bnot
|
|
push
|
|
callk kernel_91, $4
|
|
bnot
|
|
ne?
|
|
bnt code_0203
|
|
ldi $0
|
|
jmp code_021a
|
|
|
|
code_0203: pushi $d4 ; 212, compToFrom
|
|
pushi $4 ; scaleX
|
|
push0
|
|
push2
|
|
pushi $9 ; inLeft
|
|
lsp param[$1]
|
|
callk kernel_91, $4
|
|
bnot
|
|
push
|
|
push0
|
|
pushi $ff ; 255, asInteger
|
|
self $c
|
|
bnot
|
|
code_021a: ret
|
|
|
|
Array::fill:
|
|
pushi $5 ; scaleY
|
|
dup
|
|
pTos data
|
|
lsp param[$1]
|
|
lsp param[$2]
|
|
lsp param[$0]
|
|
ldi $3 ; z
|
|
eq?
|
|
bnt code_022f
|
|
lap param[$3]
|
|
jmp code_0231
|
|
|
|
code_022f: ldi $0
|
|
code_0231: push
|
|
callk kernel_91, $a
|
|
bnot
|
|
ret
|
|
|
|
Array::init:
|
|
pushi $d6 ; 214, fill
|
|
pushi $3 ; z
|
|
push0
|
|
pushi $ff ; 255, asInteger
|
|
lap param[$0]
|
|
bnt code_0248
|
|
lap param[$1]
|
|
jmp code_024a
|
|
|
|
code_0248: ldi $0
|
|
code_024a: push
|
|
self $a
|
|
bnot
|
|
ret
|
|
|
|
Array::size:
|
|
push2
|
|
push1
|
|
pTos data
|
|
callk kernel_91, $4
|
|
bnot
|
|
ret
|
|
|
|
Array::dispose:
|
|
pToa data
|
|
bnt code_0264
|
|
push2
|
|
pushi $4 ; scaleX
|
|
push
|
|
callk kernel_91, $4
|
|
bnot
|
|
code_0264: pushi $95 ; 149, dispose
|
|
push0
|
|
super Obj, $4
|
|
bnot
|
|
ret
|
|
|
|
Array::indexOf:
|
|
link $2
|
|
pushi $5a ; 90, 'Z', size
|
|
push0
|
|
self $4
|
|
bnot
|
|
sat temp[$1]
|
|
lsp param[$0]
|
|
ldi $1
|
|
gt?
|
|
bnt code_02a4
|
|
lap param[$2]
|
|
bnt code_02a4
|
|
-at temp[$1]
|
|
sat temp[$0]
|
|
code_0286: lst temp[$0]
|
|
ldi $0
|
|
ge?
|
|
bnt code_02c4
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
lst temp[$0]
|
|
self $6
|
|
bnot
|
|
push
|
|
lap param[$1]
|
|
eq?
|
|
bnt code_029e
|
|
lat temp[$0]
|
|
ret
|
|
|
|
code_029e: -at temp[$0]
|
|
jmp code_0286
|
|
|
|
jmp code_02c4
|
|
|
|
code_02a4: ldi $0
|
|
sat temp[$0]
|
|
code_02a8: lst temp[$0]
|
|
lat temp[$1]
|
|
lt?
|
|
bnt code_02c4
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
lst temp[$0]
|
|
self $6
|
|
bnot
|
|
push
|
|
lap param[$1]
|
|
eq?
|
|
bnt code_02c0
|
|
lat temp[$0]
|
|
ret
|
|
|
|
code_02c0: +at temp[$0]
|
|
jmp code_02a8
|
|
|
|
code_02c4: ldi $ff ; 255, asInteger
|
|
ret
|
|
|
|
Array::callKernel:
|
|
push0
|
|
&rest $1
|
|
callk kernel_91, $0
|
|
bnot
|
|
ret
|
|
|