From cacc4ce994f75cbf921fbae30e36cdcbc72bf599 Mon Sep 17 00:00:00 2001 From: Devine Lu Linvega Date: Tue, 28 Jun 2022 15:09:49 -0700 Subject: [PATCH] Trap mouse on menu --- src/manifest.tal | 31 +++++++++++++++++++++++++++++++ src/nasu.tal | 3 +++ 2 files changed, 34 insertions(+) diff --git a/src/manifest.tal b/src/manifest.tal index d71a8b6..270e9d6 100644 --- a/src/manifest.tal +++ b/src/manifest.tal @@ -38,6 +38,37 @@ 00 20 :option-zoom "Zoom $1 $1 +@trap-menu ( -> ) + + ;on-mouse-menu .Mouse/vector DEO2 + ;on-control-menu .Controller/vector DEO2 + +BRK + +@on-mouse-menu ( -> ) + + ( clear last cursor ) + .cursor/x LDZ2 .Screen/x DEO2 + .cursor/y LDZ2 .Screen/y DEO2 + #40 .Screen/sprite DEO + ( record mouse positions ) + .Mouse/x DEI2 DUP2 .cursor/x STZ2 .Screen/x DEO2 + .Mouse/y DEI2 DUP2 .cursor/y STZ2 .Screen/y DEO2 + ( draw new cursor ) + ;hand-icn .Screen/addr DEO2 + #42 .Mouse/state DEI #00 NEQ ADD .Screen/sprite DEO + + .Mouse/y DEI2 #0008 LTH2 ,&no-exit JCN + ;untrap JSR2 + &no-exit + +BRK + + +@on-control-menu ( -> ) + +BRK + @print-manifest ( -- ) ;manifest/name ;print-str JSR2 diff --git a/src/nasu.tal b/src/nasu.tal index 1d898d2..d1efef5 100644 --- a/src/nasu.tal +++ b/src/nasu.tal @@ -191,6 +191,8 @@ BRK ;draw-cursor JSR2 + .Mouse/y DEI2 #0008 LTH2 ;trap-menu JCN2 + .Mouse/state DEI #00 EQU ,&no-touch JCN .Mouse/x DEI2 .Mouse/y DEI2 .tileview ;within-rect JSR2 ;on-touch-tileview JCN2 .Mouse/x DEI2 .Mouse/y DEI2 .nametable ;within-rect JSR2 ;on-touch-nametable JCN2 @@ -1380,6 +1382,7 @@ JMP2r @bigpixel-icn f0f0 f0f0 0000 0000 @halftone-icn aa55 aa55 aa55 aa55 +@hand-icn 2020 20b8 7c7c 3838 @tool-brush 0070 6844 2211 0906 @tool-selector 0040 6070 787c 7008 @tool-zoom 0030 4884 8448 3402