689 lines
9.7 KiB
Plaintext
689 lines
9.7 KiB
Plaintext
ScrollableWindow::doit:
|
|
link $1
|
|
pToa scrollLeft
|
|
bnt code_00a7
|
|
dpToa scrollLeft
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $6 ; maxScale
|
|
self $6
|
|
bnot
|
|
code_00a7: pToa pChanged
|
|
bnt code_00b8
|
|
push2
|
|
pushi $14 ; 20, nsRight
|
|
pTos kWindow
|
|
callk kernel_76, $4
|
|
bnot
|
|
ldi $0
|
|
aTop pChanged
|
|
code_00b8: ret
|
|
|
|
ScrollableWindow::setSize:
|
|
ret
|
|
|
|
ScrollableWindow::draw:
|
|
pushi $75 ; 117, 'u', show
|
|
push0
|
|
self $4
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::contains:
|
|
link $1
|
|
lsp param[$0]
|
|
ldi $2
|
|
eq?
|
|
bnt code_00e5
|
|
pTos top
|
|
lap param[$2]
|
|
le?
|
|
bnt code_014c
|
|
pprev
|
|
pToa bottom
|
|
le?
|
|
bnt code_014c
|
|
pTos left
|
|
lap param[$1]
|
|
le?
|
|
bnt code_014c
|
|
pprev
|
|
pToa right
|
|
le?
|
|
jmp code_014c
|
|
|
|
code_00e5: pushi $99 ; 153, respondsTo
|
|
push1
|
|
push1
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
bnt code_0116
|
|
pushi $99 ; 153, respondsTo
|
|
push1
|
|
push2
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
bnt code_0116
|
|
pushi $a3 ; 163, contains
|
|
push2
|
|
push1
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
push2
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
self $8
|
|
bnot
|
|
jmp code_014c
|
|
|
|
code_0116: pTos top
|
|
pushi $89 ; 137, top
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
le?
|
|
bnt code_014c
|
|
pTos bottom
|
|
pushi $8a ; 138, bottom
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
ge?
|
|
bnt code_014c
|
|
pTos left
|
|
pushi $87 ; 135, left
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
le?
|
|
bnt code_014c
|
|
pTos right
|
|
pushi $88 ; 136, right
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
ge?
|
|
code_014c: ret
|
|
|
|
ScrollableWindow::init:
|
|
link $1
|
|
pushi $9f ; 159, add
|
|
push1
|
|
pushSelf
|
|
class GlobalDemons
|
|
send $6
|
|
bnot
|
|
pToa scrollSpeed
|
|
aTop seconds
|
|
lap param[$0]
|
|
bnt code_0192
|
|
push
|
|
ldi $1
|
|
eq?
|
|
bnt code_016d
|
|
lap param[$1]
|
|
aTop maxItems
|
|
jmp code_0192
|
|
|
|
code_016d: ldi $0
|
|
lapi param[$1]
|
|
aTop left
|
|
ldi $1
|
|
lapi param[$1]
|
|
aTop top
|
|
ldi $2
|
|
lapi param[$1]
|
|
aTop right
|
|
ldi $3 ; z
|
|
lapi param[$1]
|
|
aTop bottom
|
|
lsp param[$0]
|
|
ldi $4 ; scaleX
|
|
gt?
|
|
bnt code_0192
|
|
ldi $4 ; scaleX
|
|
lapi param[$1]
|
|
aTop maxItems
|
|
code_0192: pToa plane
|
|
not
|
|
bnt code_01c3
|
|
pushi $8d ; 141, new
|
|
push0
|
|
class Plane
|
|
send $4
|
|
bnot
|
|
aTop plane
|
|
pushi $6d ; 109, 'm', picture
|
|
push1
|
|
pushi $fe ; 254, strIndex
|
|
pushi $94 ; 148, init
|
|
push0
|
|
pToa plane
|
|
send $a
|
|
bnot
|
|
pushi $b5 ; 181, set
|
|
pushi $4 ; scaleX
|
|
pTos left
|
|
pTos top
|
|
pTos right
|
|
pTos bottom
|
|
pToa plane
|
|
send $c
|
|
bnot
|
|
code_01c3: pushi $3 ; z
|
|
push0
|
|
pushSelf
|
|
pTos maxItems
|
|
callk kernel_76, $6
|
|
bnot
|
|
aTop kWindow
|
|
pushi $8d ; 141, new
|
|
push0
|
|
class Rect
|
|
send $4
|
|
bnot
|
|
sat temp[$0]
|
|
pushi $e5 ; 229, sizeToStr
|
|
push2
|
|
lofsa string_004a ; "MMM"
|
|
push
|
|
pTos font
|
|
lat temp[$0]
|
|
send $8
|
|
bnot
|
|
pushi $e1 ; 225, height
|
|
push0
|
|
lat temp[$0]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $3 ; z
|
|
add
|
|
aTop lineHeight
|
|
pTos bottom
|
|
pToa top
|
|
sub
|
|
push
|
|
pushi $3 ; z
|
|
pushi $e1 ; 225, height
|
|
push0
|
|
lat temp[$0]
|
|
send $4
|
|
bnot
|
|
add
|
|
div
|
|
push
|
|
ldi $2
|
|
add
|
|
aTop numLines
|
|
pushi $95 ; 149, dispose
|
|
push0
|
|
lat temp[$0]
|
|
send $4
|
|
bnot
|
|
pushi $75 ; 117, 'u', show
|
|
push0
|
|
self $4
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::handleEvent:
|
|
link $1
|
|
pushi $2b ; 43, '+', type
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $4 ; scaleX
|
|
and
|
|
bnt code_0304
|
|
pushi $31 ; 49, '1', message
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $4700 ; 18176
|
|
eq?
|
|
bnt code_0256
|
|
pushi $50 ; 80, 'P', claimed
|
|
push1
|
|
push1
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $7 ; priority
|
|
self $6
|
|
bnot
|
|
jmp code_0304
|
|
|
|
code_0256: pushi $31 ; 49, '1', message
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $4900 ; 18688
|
|
eq?
|
|
bnt code_027a
|
|
pushi $50 ; 80, 'P', claimed
|
|
push1
|
|
push1
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $3 ; z
|
|
self $6
|
|
bnot
|
|
jmp code_0304
|
|
|
|
code_027a: pushi $31 ; 49, '1', message
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $4800 ; 18432
|
|
eq?
|
|
bnt code_029d
|
|
pushi $50 ; 80, 'P', claimed
|
|
push1
|
|
push1
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $5 ; scaleY
|
|
self $6
|
|
bnot
|
|
jmp code_0304
|
|
|
|
code_029d: pushi $31 ; 49, '1', message
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $5000 ; 20480
|
|
eq?
|
|
bnt code_02c0
|
|
pushi $50 ; 80, 'P', claimed
|
|
push1
|
|
push1
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $6 ; maxScale
|
|
self $6
|
|
bnot
|
|
jmp code_0304
|
|
|
|
code_02c0: pushi $31 ; 49, '1', message
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $5100 ; 20736
|
|
eq?
|
|
bnt code_02e3
|
|
pushi $50 ; 80, 'P', claimed
|
|
push1
|
|
push1
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $4 ; scaleX
|
|
self $6
|
|
bnot
|
|
jmp code_0304
|
|
|
|
code_02e3: pushi $31 ; 49, '1', message
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
push
|
|
ldi $4f00 ; 20224
|
|
eq?
|
|
bnt code_0304
|
|
pushi $50 ; 80, 'P', claimed
|
|
push1
|
|
push1
|
|
lap param[$1]
|
|
send $6
|
|
bnot
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $8 ; fixPriority
|
|
self $6
|
|
bnot
|
|
code_0304: pushi $50 ; 80, 'P', claimed
|
|
push0
|
|
lap param[$1]
|
|
send $4
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::show:
|
|
push2
|
|
pushi $10 ; 16, cel
|
|
pTos kWindow
|
|
callk kernel_76, $4
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::hide:
|
|
push2
|
|
pushi $f ; 15, loop
|
|
pTos kWindow
|
|
callk kernel_76, $4
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::addString:
|
|
link $7
|
|
lsp param[$0]
|
|
ldi $1
|
|
gt?
|
|
bnt code_0356
|
|
lap param[$2]
|
|
sat temp[$3]
|
|
lsp param[$0]
|
|
ldi $2
|
|
gt?
|
|
bnt code_034c
|
|
lap param[$3]
|
|
sat temp[$2]
|
|
lsp param[$0]
|
|
ldi $3 ; z
|
|
gt?
|
|
bnt code_0346
|
|
lap param[$4]
|
|
sat temp[$1]
|
|
jmp code_0362
|
|
|
|
code_0346: ldi $0
|
|
sat temp[$1]
|
|
jmp code_0362
|
|
|
|
code_034c: pToa mode
|
|
sat temp[$2]
|
|
ldi $0
|
|
sat temp[$1]
|
|
jmp code_0362
|
|
|
|
code_0356: ldi $0
|
|
sat temp[$1]
|
|
pToa fore
|
|
sat temp[$3]
|
|
pToa mode
|
|
sat temp[$2]
|
|
code_0362: pToa itemList
|
|
not
|
|
bnt code_0379
|
|
pushi $9f ; 159, add
|
|
push0
|
|
pushi $8d ; 141, new
|
|
push0
|
|
class List
|
|
send $4
|
|
bnot
|
|
aTop itemList
|
|
send $4
|
|
bnot
|
|
code_0379: pushi $5a ; 90, 'Z', size
|
|
push0
|
|
pToa itemList
|
|
send $4
|
|
bnot
|
|
push
|
|
pToa maxItems
|
|
eq?
|
|
bnt code_03a4
|
|
pushi $2d6 ; 726, deleteString
|
|
push1
|
|
pushi $4b ; 75, 'K', at
|
|
push1
|
|
push0
|
|
pToa itemList
|
|
send $6
|
|
bnot
|
|
sat temp[$0]
|
|
push
|
|
self $6
|
|
bnot
|
|
pushi $58 ; 88, 'X', delete
|
|
push1
|
|
lst temp[$0]
|
|
pToa itemList
|
|
send $6
|
|
bnot
|
|
code_03a4: pushi $9f ; 159, add
|
|
push1
|
|
pushi $7 ; priority
|
|
push1
|
|
pTos kWindow
|
|
lsp param[$1]
|
|
pTos font
|
|
lst temp[$3]
|
|
lst temp[$2]
|
|
lst temp[$1]
|
|
callk kernel_76, $e
|
|
bnot
|
|
push
|
|
pToa itemList
|
|
send $6
|
|
bnot
|
|
pushi $2d9 ; 729, scrollTo
|
|
push1
|
|
pushi $8 ; fixPriority
|
|
self $6
|
|
bnot
|
|
ldi $1
|
|
aTop pChanged
|
|
ret
|
|
|
|
ScrollableWindow::deleteString:
|
|
ldi $1
|
|
aTop pChanged
|
|
pushi $3 ; z
|
|
pushi $d ; 13, seenRect
|
|
pTos kWindow
|
|
lsp param[$1]
|
|
callk kernel_76, $6
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::modifyString:
|
|
ret
|
|
|
|
ScrollableWindow::insertString:
|
|
ldi $1
|
|
aTop pChanged
|
|
pushi $3 ; z
|
|
pushi $c ; 12, inBottom
|
|
pTos kWindow
|
|
lsp param[$1]
|
|
&rest $2
|
|
callk kernel_76, $6
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::erase:
|
|
push2
|
|
push2
|
|
pTos kWindow
|
|
callk kernel_76, $4
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::scrollTo:
|
|
lsp param[$1]
|
|
ldi $b ; 11, inRight
|
|
eq?
|
|
bnt code_0414
|
|
pushi $4 ; scaleX
|
|
pushi $b ; 11, inRight
|
|
pTos kWindow
|
|
lsp param[$2]
|
|
lsp param[$3]
|
|
callk kernel_76, $8
|
|
bnot
|
|
jmp code_041d
|
|
|
|
code_0414: push2
|
|
lsp param[$1]
|
|
pTos kWindow
|
|
callk kernel_76, $4
|
|
bnot
|
|
code_041d: ldi $1
|
|
aTop pChanged
|
|
ret
|
|
|
|
ScrollableWindow::move:
|
|
lsp param[$0]
|
|
ldi $2
|
|
gt?
|
|
bnt code_044b
|
|
lap param[$3]
|
|
bnt code_044b
|
|
pTos left
|
|
lap param[$1]
|
|
add
|
|
aTop left
|
|
pTos right
|
|
lap param[$1]
|
|
add
|
|
aTop right
|
|
pTos top
|
|
lap param[$2]
|
|
add
|
|
aTop top
|
|
pTos bottom
|
|
lap param[$2]
|
|
add
|
|
aTop bottom
|
|
jmp code_0467
|
|
|
|
code_044b: pTos right
|
|
lsp param[$1]
|
|
pToa left
|
|
sub
|
|
add
|
|
aTop right
|
|
pTos bottom
|
|
lsp param[$2]
|
|
pToa top
|
|
sub
|
|
add
|
|
aTop bottom
|
|
lap param[$1]
|
|
aTop left
|
|
lap param[$2]
|
|
aTop top
|
|
code_0467: pushi $3 ; z
|
|
pushi $9 ; inLeft
|
|
pTos kWindow
|
|
pushSelf
|
|
callk kernel_76, $6
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::resize:
|
|
lsp param[$0]
|
|
ldi $2
|
|
gt?
|
|
bnt code_048e
|
|
lap param[$3]
|
|
bnt code_048e
|
|
pTos right
|
|
lap param[$1]
|
|
add
|
|
aTop right
|
|
pTos bottom
|
|
lap param[$2]
|
|
add
|
|
aTop bottom
|
|
jmp code_04a4
|
|
|
|
code_048e: pTos left
|
|
lap param[$1]
|
|
add
|
|
push
|
|
ldi $ff ; 255, asInteger
|
|
add
|
|
aTop right
|
|
pTos top
|
|
lap param[$2]
|
|
add
|
|
push
|
|
ldi $ff ; 255, asInteger
|
|
add
|
|
aTop bottom
|
|
code_04a4: pushi $3 ; z
|
|
pushi $9 ; inLeft
|
|
pTos kWindow
|
|
pushSelf
|
|
callk kernel_76, $6
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::where:
|
|
pushi $3 ; z
|
|
pushi $a ; 10, inTop
|
|
pTos kWindow
|
|
lsp param[$1]
|
|
callk kernel_76, $6
|
|
bnot
|
|
ret
|
|
|
|
ScrollableWindow::dispose:
|
|
pushi $58 ; 88, 'X', delete
|
|
push1
|
|
pushSelf
|
|
class GlobalDemons
|
|
send $6
|
|
bnot
|
|
pToa itemList
|
|
bnt code_04d5
|
|
pushi $a6 ; 166, release
|
|
push0
|
|
pushi $95 ; 149, dispose
|
|
push0
|
|
send $8
|
|
bnot
|
|
code_04d5: push2
|
|
pushi $11 ; 17, bitmap
|
|
pTos kWindow
|
|
callk kernel_76, $4
|
|
bnot
|
|
pushi $95 ; 149, dispose
|
|
push0
|
|
super Obj, $4
|
|
bnot
|
|
ret
|
|
|