]> git.sur5r.net Git - cc65/commitdiff
Added library reference mouse_libref to MOU interface.
authorOliver Schmidt <ol.sc@web.de>
Fri, 31 May 2013 22:53:17 +0000 (00:53 +0200)
committerOliver Schmidt <ol.sc@web.de>
Fri, 31 May 2013 22:53:17 +0000 (00:53 +0200)
12 files changed:
asminc/mouse-kernel.inc
libsrc/apple2/libref.s
libsrc/apple2/mou/a2.stdmou.s
libsrc/c128/libref.s
libsrc/c128/mou/c128-1351.s
libsrc/c128/mou/c128-joy.s
libsrc/c128/mou/c128-pot.s
libsrc/c64/libref.s
libsrc/c64/mou/c64-1351.s
libsrc/c64/mou/c64-joy.s
libsrc/c64/mou/c64-pot.s
libsrc/mouse/mouse-kernel.s

index 24a9f7632131886a1212e3897199265e448edecb..9db47fcb8ddee1bc8bd66557fbb34afc5b26e36f 100644 (file)
@@ -56,6 +56,7 @@
 .struct MOUSE_HDR
         ID              .byte   3       ; Contains 0x6D, 0x6F, 0x75 ("mou")
         VERSION         .byte   1       ; Interface version
+        LIBREF          .addr           ; Library reference
         JUMPTAB         .struct
             INSTALL     .addr
             UNINSTALL   .addr
@@ -96,7 +97,7 @@
 ;------------------------------------------------------------------------------
 ; The mouse API version, stored in MOUSE_HDR::VERSION
 
-MOUSE_API_VERSION       = $02
+MOUSE_API_VERSION       = $03
 
 ;------------------------------------------------------------------------------
 ; Bitmapped mouse driver flags, stored in MOUSE_HDR::FLAGS.
index 933eb59111704297253e229ff5a3411d04b1dc01..09bdb057c867ad5b930d98aac6e5cf6570234af2 100644 (file)
@@ -2,8 +2,9 @@
 ; Oliver Schmidt, 2013-05-31
 ;
 
-        .export         em_libref, joy_libref
+        .export         em_libref, joy_libref, mouse_libref
         .import         _exit
 
 em_libref       := _exit
 joy_libref      := _exit
+mouse_libref    := _exit
index 30ef85c54855fa419d12bbce20a4130b0be17e01..8414cde36aeba2882484accad8d29e763b6f6300 100644 (file)
@@ -34,7 +34,10 @@ status          := $0778
         .byte   $6D, $6F, $75           ; "mou"
         .byte   MOUSE_API_VERSION       ; Mouse driver API version number
 
-        ; Jump table.
+        ; Library reference
+        .addr   $0000
+
+        ; Jump table
         .addr   INSTALL
         .addr   UNINSTALL
         .addr   HIDE
index 933eb59111704297253e229ff5a3411d04b1dc01..09bdb057c867ad5b930d98aac6e5cf6570234af2 100644 (file)
@@ -2,8 +2,9 @@
 ; Oliver Schmidt, 2013-05-31
 ;
 
-        .export         em_libref, joy_libref
+        .export         em_libref, joy_libref, mouse_libref
         .import         _exit
 
 em_libref       := _exit
 joy_libref      := _exit
+mouse_libref    := _exit
index f7c74d3cb6a2a80b0b969833d379f5538addc981..f2a71647c39411dc2f16e31ba5d254763ee7fb40 100644 (file)
@@ -23,7 +23,11 @@ HEADER:
         .byte   $6d, $6f, $75           ; "mou"
         .byte   MOUSE_API_VERSION       ; Mouse driver API version number
 
-; Jump table.
+; Library reference
+
+        .addr   $0000
+
+; Jump table
 
         .addr   INSTALL
         .addr   UNINSTALL
index 3ac7b5ee3151f69324848d4546c6ef65ca265317..8c3bd779d53412c95660b8d7adb9a0fcc2408487 100644 (file)
@@ -22,7 +22,11 @@ HEADER:
         .byte   $6d, $6f, $75           ; "mou"
         .byte   MOUSE_API_VERSION       ; Mouse driver API version number
 
-; Jump table.
+; Library reference
+
+        .addr   $0000
+
+; Jump table
 
         .addr   INSTALL
         .addr   UNINSTALL
index 2713e3f4fd7f0179cf79521aba0d11da5d9e8914..ab69228968c655c075b89dfe133a520aba0d4d14 100644 (file)
@@ -23,7 +23,11 @@ HEADER:
         .byte   $6d, $6f, $75           ; "mou"
         .byte   MOUSE_API_VERSION       ; Mouse driver API version number
 
-; Jump table.
+; Library reference
+
+        .addr   $0000
+
+; Jump table
 
         .addr   INSTALL
         .addr   UNINSTALL
index 933eb59111704297253e229ff5a3411d04b1dc01..09bdb057c867ad5b930d98aac6e5cf6570234af2 100644 (file)
@@ -2,8 +2,9 @@
 ; Oliver Schmidt, 2013-05-31
 ;
 
-        .export         em_libref, joy_libref
+        .export         em_libref, joy_libref, mouse_libref
         .import         _exit
 
 em_libref       := _exit
 joy_libref      := _exit
+mouse_libref    := _exit
index 7ffc0510e4dc58161f620228c6f360d39dc562ec..ec053b0b2522be4ceabd2b02237511dc2bcde27a 100644 (file)
@@ -42,7 +42,11 @@ HEADER:
         .byte   $6d, $6f, $75           ; "mou"
         .byte   MOUSE_API_VERSION       ; Mouse driver API version number
 
-; Jump table.
+; Library reference
+
+        .addr   $0000
+
+; Jump table
 
         .addr   INSTALL
         .addr   UNINSTALL
index 8390aa37d1da6cb156a648d64dd06c943086fe51..05f0ce50e0f6019c30b7771cd62d1dde53f16410 100644 (file)
@@ -41,7 +41,11 @@ HEADER:
         .byte   $6d, $6f, $75           ; "mou"
         .byte   MOUSE_API_VERSION       ; Mouse driver API version number
 
-; Jump table.
+; Library reference
+
+        .addr   $0000
+
+; Jump table
 
         .addr   INSTALL
         .addr   UNINSTALL
index 8ee0266e7221be871b1d49208d63e44f47b92b0b..3eb977477fe18de0c4409e99b3019d7f68d43f99 100644 (file)
@@ -23,7 +23,11 @@ HEADER:
         .byte   $6d, $6f, $75           ; "mou"
         .byte   MOUSE_API_VERSION       ; Mouse driver API version number
 
-; Jump table.
+; Library reference
+
+        .addr   $0000
+
+; Jump table
 
         .addr   INSTALL
         .addr   UNINSTALL
index 598b61ea2c5ee6cbd9f116733ed40b6c2eec7a34..2fa5b5e2d4d9a8bca7cf3b37b17a5343e4830074 100644 (file)
@@ -4,7 +4,7 @@
 ; Common functions of the mouse driver API.
 ;
 
-        .import         return0, popsreg, incsp2
+        .import         return0, popsreg, incsp2, mouse_libref
         .importzp       sreg, ptr1, tmp1, tmp2
         .interruptor    mouse_irq               ; Export as IRQ handler
 
@@ -64,6 +64,15 @@ _mouse_install:
         dey
         bpl     @L0
 
+; Set the library reference
+
+        ldy     #MOUSE_HDR::LIBREF
+        lda     #<mouse_libref
+        sta     (ptr1),y
+        iny
+        lda     #>mouse_libref
+        sta     (ptr1),y
+
 ; Reset flags
 
         lda     #1