|
|
|
@ -1,22 +1,33 @@ |
|
|
|
|
|
|
|
( a simple button ) |
|
|
|
|
|
|
|
|
|
|
|
|00 @System &vector $2 &expansion $2 &wst $1 &rst $1 &metadata $2 &r $2 &g $2 &b $2 &debug $1 &state $1 |
|
|
|
|00 @System &vector $2 &expansion $2 &wst $1 &rst $1 &metadata $2 &r $2 &g $2 &b $2 &debug $1 &state $1 |
|
|
|
|20 @Screen &vector $2 &width $2 &height $2 &auto $1 &pad $1 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1 |
|
|
|
|20 @Screen &vector $2 &width $2 &height $2 &auto $1 &pad $1 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1 |
|
|
|
|80 @Controller &vector $2 &button $1 &key $1 |
|
|
|
|80 @Controller &vector $2 &button $1 &key $1 |
|
|
|
|90 @Mouse &vector $2 &x $2 &y $2 &state $1 &chord $1 &pad $4 &scrolly &scrolly-hb $1 &scrolly-lb $1 |
|
|
|
|90 @Mouse &vector $2 &x $2 &y $2 &state $1 &chord $1 &pad $4 &scrolly &scrolly-hb $1 &scrolly-lb $1 |
|
|
|
|
|
|
|
|
|
|
|
|0100 |
|
|
|
|100 |
|
|
|
|
|
|
|
|
|
|
|
@on-reset ( -> ) |
|
|
|
@on-reset ( -> ) |
|
|
|
#5c0f .System/r DEO2 |
|
|
|
;meta #06 DEO2 |
|
|
|
#6d0f .System/g DEO2 |
|
|
|
( | theme ) |
|
|
|
#6d0f .System/b DEO2 |
|
|
|
#5c0f DUP2 .System/r DEO2 |
|
|
|
#0038 DUP2 .Screen/width DEO2 |
|
|
|
DUP2 .System/g DEO2 |
|
|
|
|
|
|
|
.System/b DEO2 |
|
|
|
|
|
|
|
( | size ) |
|
|
|
|
|
|
|
#0058 DUP2 .Screen/width DEO2 |
|
|
|
.Screen/height DEO2 |
|
|
|
.Screen/height DEO2 |
|
|
|
;on-mouse .Mouse/vector DEO2 |
|
|
|
;on-mouse .Mouse/vector DEO2 |
|
|
|
;button-chr <draw-button> |
|
|
|
;button-chr <draw-button> |
|
|
|
BRK |
|
|
|
BRK |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@meta $1 |
|
|
|
|
|
|
|
( name ) "Button 0a |
|
|
|
|
|
|
|
( desc ) "A 20 "Simple 20 "Button 0a |
|
|
|
|
|
|
|
( auth ) "By 20 "Devine 20 "Lu 20 "Linvega 0a |
|
|
|
|
|
|
|
( date ) "15 20 "Jan 20 "2025 $2 |
|
|
|
|
|
|
|
|
|
|
|
@on-frame ( -> ) |
|
|
|
@on-frame ( -> ) |
|
|
|
[ LIT2 18 &time 00 ] INCk ,&time STR |
|
|
|
[ LIT2 18 &time $1 ] INCk ,&time STR |
|
|
|
EQU ?{ BRK } |
|
|
|
EQU ?{ BRK } |
|
|
|
#0000 .Screen/vector DEO2 |
|
|
|
#0000 .Screen/vector DEO2 |
|
|
|
;button-chr/up <draw-button> |
|
|
|
;button-chr/up <draw-button> |
|
|
|
@ -24,53 +35,65 @@ |
|
|
|
BRK |
|
|
|
BRK |
|
|
|
|
|
|
|
|
|
|
|
@on-mouse ( -> ) |
|
|
|
@on-mouse ( -> ) |
|
|
|
[ LIT2 00 -Mouse/state ] DEI NEQ #42 ADD ;pointer-icn <update-pointer> |
|
|
|
<draw-cursor-touch> |
|
|
|
.Mouse/state DEI ?{ BRK } |
|
|
|
.Mouse/state DEI ?{ BRK } |
|
|
|
.Mouse/x DEI2 .Mouse/y DEI2 within-button ?{ BRK } |
|
|
|
.Mouse/x DEI2 .Mouse/y DEI2 within-button ?{ BRK } |
|
|
|
;button-chr/down <draw-button> |
|
|
|
;button-chr/down <draw-button> |
|
|
|
;on-frame .Screen/vector DEO2 |
|
|
|
;on-frame .Screen/vector DEO2 |
|
|
|
#10 ;on-frame/time STA |
|
|
|
#10 ;on-frame/time STA |
|
|
|
[ LIT2 00 -Mouse/state ] DEO |
|
|
|
|
|
|
|
BRK |
|
|
|
BRK |
|
|
|
|
|
|
|
|
|
|
|
@within-button ( x* y* -- f ) |
|
|
|
@within-button ( x* y* -- f ) |
|
|
|
#0010 SUB2 #0018 LTH2 STH |
|
|
|
#0020 SUB2 #0018 LTH2 STH |
|
|
|
#0010 SUB2 #0018 LTH2 STHr AND JMP2r |
|
|
|
#0020 SUB2 #0018 LTH2 STHr AND JMP2r |
|
|
|
|
|
|
|
|
|
|
|
( |
|
|
|
( |
|
|
|
@|drawing ) |
|
|
|
@|drawing ) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@<draw-button> ( addr* -- ) |
|
|
|
@<draw-button> ( addr* -- ) |
|
|
|
[ LIT2 26 -Screen/auto ] DEO |
|
|
|
[ LIT2 26 -Screen/auto ] DEO |
|
|
|
#0010 DUP2 .Screen/x DEO2 |
|
|
|
#0020 DUP2 .Screen/x DEO2 |
|
|
|
.Screen/y DEO2 |
|
|
|
.Screen/y DEO2 |
|
|
|
.Screen/addr DEO2 |
|
|
|
.Screen/addr DEO2 |
|
|
|
[ LIT2 81 -Screen/sprite ] DEOk DEOk DEO |
|
|
|
[ LIT2 81 -Screen/sprite ] DEOk DEOk DEO |
|
|
|
JMP2r |
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
|
|
@<update-pointer> ( color addr* -- ) |
|
|
|
@<draw-cursor-touch> ( -- ) |
|
|
|
[ LIT2 00 -Screen/auto ] DEO |
|
|
|
#c5 ;touch-chr .Mouse/state DEI ?{ #0040 ADD2 } |
|
|
|
;fill-icn .Screen/addr DEO2 |
|
|
|
;fill-icn .Screen/addr DEO2 |
|
|
|
#40 <draw-pointer> |
|
|
|
#40 <draw-cursor> |
|
|
|
.Mouse/x DEI2 ,<draw-pointer>/x STR2 |
|
|
|
|
|
|
|
.Mouse/y DEI2 ,<draw-pointer>/y STR2 |
|
|
|
|
|
|
|
.Screen/addr DEO2 |
|
|
|
.Screen/addr DEO2 |
|
|
|
|
|
|
|
.Mouse/x DEI2 #0004 SUB2 ,<draw-cursor>/x STR2 |
|
|
|
|
|
|
|
.Mouse/y DEI2 #0005 SUB2 ,<draw-cursor>/y STR2 |
|
|
|
|
|
|
|
( >> ) |
|
|
|
|
|
|
|
|
|
|
|
@<draw-pointer> ( color -- ) |
|
|
|
@<draw-cursor> ( color -- ) |
|
|
|
|
|
|
|
[ LIT2 16 -Screen/auto ] DEO |
|
|
|
[ LIT2 &x $2 ] .Screen/x DEO2 |
|
|
|
[ LIT2 &x $2 ] .Screen/x DEO2 |
|
|
|
[ LIT2 &y $2 ] .Screen/y DEO2 |
|
|
|
[ LIT2 &y $2 ] .Screen/y DEO2 |
|
|
|
.Screen/sprite DEO |
|
|
|
.Screen/sprite DEOk DEO |
|
|
|
JMP2r |
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
|
|
( |
|
|
|
( |
|
|
|
@|assets ) |
|
|
|
@|assets ) |
|
|
|
|
|
|
|
|
|
|
|
@fill-icn [ ffff ffff ffff ffff ] |
|
|
|
@fill-icn [ |
|
|
|
|
|
|
|
ffff ffff ffff ffff ffff ffff ffff ffff |
|
|
|
|
|
|
|
ffff ffff ffff ffff ffff ffff ffff ffff ] |
|
|
|
|
|
|
|
|
|
|
|
@pointer-icn [ 80c0 e0f0 f8e0 1000 ] |
|
|
|
@touch-chr [ |
|
|
|
|
|
|
|
0000 0000 0000 0817 0000 0000 0000 0008 |
|
|
|
|
|
|
|
0000 0000 0000 00c0 0000 0000 0000 0000 |
|
|
|
|
|
|
|
1010 2010 1008 0700 0f0f 1f0f 0f07 0000 |
|
|
|
|
|
|
|
2010 1010 2020 c000 c0e0 e0e0 c0c0 0000 |
|
|
|
|
|
|
|
0000 0000 0814 1417 0000 0000 0008 0808 |
|
|
|
|
|
|
|
0000 0000 0000 00c0 0000 0000 0000 0000 |
|
|
|
|
|
|
|
1010 2010 1008 0700 0f0f 1f0f 0f07 0000 |
|
|
|
|
|
|
|
2010 1010 2020 c000 c0e0 e0e0 c0c0 0000 ] |
|
|
|
|
|
|
|
|
|
|
|
@button-chr |
|
|
|
@button-chr |
|
|
|
&up [ |
|
|
|
&up [ |
|
|
|
0000 1f3f 3f3f 3f3f 001f 3f7f 7f7f 7f7f |
|
|
|
0000 1f3f 3f3f 3f3f 001f 3f7f 7f7f 7f7f |
|
|
|
0000 ffff ffff ffff 00ff ffff ffff ffff |
|
|
|
0000 ffff ffff ffff 00ff ffff ffff ffff |
|
|
|
0000 f8fc fcfc fcfc 00f8 fcfe fefe fefe |
|
|
|
0000 f8fc fcfc fcfc 00f8 fcfe fefe fefe |
|
|
|
@ -79,8 +102,8 @@ |
|
|
|
fcfc fcfc fcfc fcfc fefe fefe fefe fefe |
|
|
|
fcfc fcfc fcfc fcfc fefe fefe fefe fefe |
|
|
|
3f3f 3f3f 3f1f 0000 7f7f 7f5f 4020 1f00 |
|
|
|
3f3f 3f3f 3f1f 0000 7f7f 7f5f 4020 1f00 |
|
|
|
ffff ffff ffff 0000 ffff ffff 0000 ff00 |
|
|
|
ffff ffff ffff 0000 ffff ffff 0000 ff00 |
|
|
|
fcfc fcfc fcf8 0000 fefe fefa 0204 f800 ] |
|
|
|
fcfc fcfc fcf8 0000 fefe fefa 0204 f800 ] |
|
|
|
&down [ |
|
|
|
&hover [ |
|
|
|
0000 001f 3f3f 3f3f 0000 1f3f 7f7f 7f7f |
|
|
|
0000 001f 3f3f 3f3f 0000 1f3f 7f7f 7f7f |
|
|
|
0000 00ff ffff ffff 0000 ffff ffff ffff |
|
|
|
0000 00ff ffff ffff 0000 ffff ffff ffff |
|
|
|
0000 00f8 fcfc fcfc 0000 f8fc fefe fefe |
|
|
|
0000 00f8 fcfc fcfc 0000 f8fc fefe fefe |
|
|
|
@ -90,4 +113,14 @@ |
|
|
|
3f3f 3f3f 3f1f 0000 7f7f 7f7f 5f20 1f00 |
|
|
|
3f3f 3f3f 3f1f 0000 7f7f 7f7f 5f20 1f00 |
|
|
|
ffff ffff ffff 0000 ffff ffff ff00 ff00 |
|
|
|
ffff ffff ffff 0000 ffff ffff ff00 ff00 |
|
|
|
fcfc fcfc fcf8 0000 fefe fefe fa04 f800 ] |
|
|
|
fcfc fcfc fcf8 0000 fefe fefe fa04 f800 ] |
|
|
|
|
|
|
|
&down [ |
|
|
|
|
|
|
|
0000 001f 3f3f 3f3f 0000 1f20 405f 7f7f |
|
|
|
|
|
|
|
0000 00ff ffff ffff 0000 ff00 00ff ffff |
|
|
|
|
|
|
|
0000 00f8 fcfc fcfc 0000 f804 02fa fefe |
|
|
|
|
|
|
|
3f3f 3f3f 3f3f 3f3f 7f7f 7f7f 7f7f 7f7f |
|
|
|
|
|
|
|
ffff ffff ffff ffff ffff ffe7 e7e7 81c3 |
|
|
|
|
|
|
|
fcfc fcfc fcfc fcfc fefe fefe fefe fefe |
|
|
|
|
|
|
|
3f3f 3f3f 3f1f 0000 7f7f 7f7f 7f3f 1f00 |
|
|
|
|
|
|
|
ffff ffff ffff 0000 e7ff ffff ffff ff00 |
|
|
|
|
|
|
|
fcfc fcfc fcf8 0000 fefe fefe fefc f800 ] |
|
|
|
|
|
|
|
|
|
|
|
|