]> git.sur5r.net Git - cc65/blob - libsrc/geos-common/drivers/mcbdefault.s
Only for jumps, the lib uses named asm labels in branches
[cc65] / libsrc / geos-common / drivers / mcbdefault.s
1 ;
2 ; Mouse callbacks for GEOS.
3 ;
4 ; GEOS has a built-in mouse architecture.  Half of this file does nothing
5 ; -- it exists merely to allow portable programs to link and run.
6 ;
7 ; 2.7.2001, Maciej 'YTM/Elysium' Witkowiak
8 ; 2004-03-20, Ullrich von Bassewitz
9 ; 2004-09-24, Greg King
10 ;
11
12 ;       .constructor    init_pointer
13         .export         _mouse_def_callbacks
14
15 ;       .include        "mouse-kernel.inc"
16 ;       .include        "const.inc"
17 ;       .include        "geossym.inc"
18         .include        "jumptab.inc"
19
20 ;       .macpack        generic
21
22 ; The functions below must be interrupt-safe,
23 ; because they might be called from an interrupt-handler.
24
25 ; --------------------------------------------------------------------------
26 ; Hide the mouse pointer. Always called with interrupts disabled.
27
28 hide := MouseOff
29
30 ; --------------------------------------------------------------------------
31 ; Show the mouse pointer. Always called with interrupts disabled.
32
33 show := MouseUp
34
35 ; --------------------------------------------------------------------------
36 ; Prepare to move the mouse pointer. Always called with interrupts disabled.
37
38 prep:
39         ; Fall through
40
41 ; --------------------------------------------------------------------------
42 ; Draw the mouse pointer. Always called with interrupts disabled.
43
44 draw:
45         ; Fall through
46
47 ; --------------------------------------------------------------------------
48 ; Move the mouse pointer X position to the value in .XA. Always called with
49 ; interrupts disabled.
50
51 movex:
52         ; Fall through
53
54 ; --------------------------------------------------------------------------
55 ; Move the mouse pointer Y position to the value in .XA. Always called with
56 ; interrupts disabled.
57
58 movey:
59         rts
60
61 ; --------------------------------------------------------------------------
62 ; Callback structure
63
64 .rodata
65
66 _mouse_def_callbacks:
67         .addr   hide
68         .addr   show
69         .addr   prep
70         .addr   draw
71         .addr   movex
72         .addr   movey