]> git.sur5r.net Git - cc65/blobdiff - asminc/joy-kernel.inc
Made the code that logs indirect-goto referals be a little more efficient.
[cc65] / asminc / joy-kernel.inc
index 20dfa58dd951ed8c291e497814b449f36acd7b1d..ef729fe3c351fed314487f8e6859d91a088d4b29 100644 (file)
@@ -6,10 +6,10 @@
 ;/*                                                                           */
 ;/*                                                                           */
 ;/*                                                                           */
-;/* (C) 2002      Ullrich von Bassewitz                                       */
-;/*               Wacholderweg 14                                             */
-;/*               D-70597 Stuttgart                                           */
-;/* EMail:        uz@musoftware.de                                            */
+;/* (C) 2002-2006, Ullrich von Bassewitz                                      */
+;/*                Römerstraße 52                                             */
+;/*                D-70794 Filderstadt                                        */
+;/* EMail:         uz@cc65.org                                                */
 ;/*                                                                           */
 ;/*                                                                           */
 ;/* This software is provided 'as-is', without any expressed or implied       */
 ; Driver header stuff
 
 .struct JOY_HDR
-       ID      .byte   3       ; $6A, $6F, $79 ("joy")
-       VERSION .byte   1       ; Interface version
-       MASKS   .byte   8       ; Joystick state mask array
-       JUMPTAB .struct
-           INSTALL     .word   ; INSTALL routine
-           UNINSTALL   .word   ; UNINSTALL routine
-           COUNT       .word   ; COUNT routine
-           READ        .word   ; READ routine
-       .endstruct
+        ID      .byte   3       ; $6A, $6F, $79 ("joy")
+        VERSION .byte   1       ; Interface version
+        LIBREF  .addr           ; Library reference
+        JUMPTAB .struct
+            INSTALL     .addr   ; INSTALL routine
+            UNINSTALL   .addr   ; UNINSTALL routine
+            COUNT       .addr   ; COUNT routine
+            READ        .addr   ; READ routine
+        .endstruct
 .endstruct
 
 ;------------------------------------------------------------------------------
 ; The JOY API version, stored in JOY_HDR::VERSION
 
-JOY_API_VERSION         = $00
+JOY_API_VERSION         = $05
 
 ;------------------------------------------------------------------------------
 ; Variables
 
-               .global _joy_drv                        ; Pointer to driver
+        .global _joy_drv                        ; Pointer to driver
+        .global _joy_masks
 
 ;------------------------------------------------------------------------------
 ; Driver entry points
@@ -70,11 +71,13 @@ JOY_API_VERSION         = $00
         .global joy_read
 
 ;------------------------------------------------------------------------------
-; ASM functions
-
-               .global _joy_install
-               .global _joy_uninstall
-               .global _joy_count
-               .global _joy_read
+; C callable functions
 
+        .global _joy_load_driver
+        .global _joy_unload
+        .global _joy_install
+        .global _joy_uninstall
+        .global _joy_count
+        .global _joy_read
 
+        .global _joy_clear_ptr