File: mcbdefault.s

package info (click to toggle)
cc65 2.19-2
  • links: PTS
  • area: main
  • in suites: forky, sid, trixie
  • size: 20,268 kB
  • sloc: ansic: 117,151; asm: 66,339; pascal: 4,248; makefile: 1,009; perl: 607
file content (60 lines) | stat: -rw-r--r-- 1,586 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
;
; Default mouse callbacks for the CX16
;
; 2020-01-10, Greg King
;

        .export         _mouse_def_callbacks

        .import         MOUSE_GET, SPRITE_SET_POSITION
        .include        "cx16.inc"


; --------------------------------------------------------------------------
; Hide the mouse pointer.

hide:   ldx     #%10000000
        stx     gREG::r0H
        bra     mse

; --------------------------------------------------------------------------
; Show the mouse pointer.

show:   ldx     #gREG::r0
        jsr     MOUSE_GET
mse:    lda     #$00                    ; mouse sprite
        jmp     SPRITE_SET_POSITION

; --------------------------------------------------------------------------
; Prepare to move the mouse pointer.

prep:   ; Fall through

; --------------------------------------------------------------------------
; Draw the mouse pointer.

draw:   ; Fall through

; --------------------------------------------------------------------------
; Move the mouse pointer X position to the value in .XA .

movex:                                  ; Already done by Kernal
        ; Fall through

; --------------------------------------------------------------------------
; Move the mouse pointer Y position to the value in .XA .

movey:  rts                             ; Already done by Kernal

; --------------------------------------------------------------------------
; Callback structure

.rodata

_mouse_def_callbacks:
        .addr   hide
        .addr   show
        .addr   prep
        .addr   draw
        .addr   movex
        .addr   movey