Identify 'moved' output byte from DRAG

This commit is contained in:
Joshua Bell 2017-09-24 21:02:13 -07:00
parent fa98ed8445
commit 574d59072b
4 changed files with 8 additions and 2 deletions

View File

@ -209,7 +209,7 @@ A2D_GET_INPUT := $2A
A2D_UNK_2B := $2B ; Unknown - possibly "reset drawing state"
;; (no parameters; pass $0000 as address)
;; $2C used in DeskTop but not DAs
;; $2C used in DeskTop but not DAs - icon drag
;; (input length 0 bytes)
A2D_SET_INPUT := $2D ; Set pending input state (mouse or keyboard)
@ -292,6 +292,7 @@ A2D_DRAG_WINDOW := $44
;; .byte id window
;; .word xcoord mouse coords
;; .word ycoord
;; .byte moved high bit set if moved, clear if not
A2D_DRAG_RESIZE := $45
;; (input length 5 bytes)

View File

@ -168,6 +168,7 @@ clienty := * + 7
id := *
xcoord := * + 1 ; aligns with input_state::xcoord
ycoord := * + 3 ; aligns with input_state::ycoord
moved := * + 5 ; ignored
.endproc
.proc input_state_params

View File

@ -173,6 +173,7 @@ clienty := * + 7
id := *
xcoord := * + 1 ; aligns with input_state::xcoord
ycoord := * + 3 ; aligns with input_state::ycoord
moved := * + 5 ; ignored
.endproc
.proc input_state_params

View File

@ -149,6 +149,9 @@ check_window_pos:
;; following memory space is re-used so x/y overlap
.proc drag_window_params
id := * + 0
xcoord := * + 1 ; x overlap
ycoord := * + 3 ; y overlap
moved := * + 5 ; ignored
.endproc
.proc map_coords_params