TronicBrain did you sort this out yet?

I dug through some of my old examples and found this - not sure if it works but it might get ou in the right direction. I haven't played with pics in a long time so bit rusty.

Code:
ReportDescriptor1
    RETLW 0x05  
    RETLW 0x01                      ; USAGE_PAGE (Generic Desktop)
    RETLW 0x09  
    RETLW 0x04                      ; USAGE (Joystick)
    RETLW 0xa1  
    RETLW 0x01                      ; COLLECTION (Application)
    RETLW 0x09  
    RETLW 0x01                      ;   USAGE (Pointer)
    RETLW 0xa1  
    RETLW 0x00                      ;   COLLECTION (Physical)
    RETLW 0x95  
    RETLW 0x02                      ;     REPORT_COUNT (2)
    RETLW 0x75  
    RETLW 0x08                      ;     REPORT_SIZE (8)
    RETLW 0x15  
    RETLW 0x00                      ;     LOGICAL_MINIMUM (0)
    RETLW 0x26  
    RETLW 0xff  
    RETLW 0x00              	    ;     LOGICAL_MAXIMUM (255)
    RETLW 0x35  
    RETLW 0x00                      ;     PHYSICAL_MINIMUM (0)
    RETLW 0x46  
    RETLW 0xff  
    RETLW 0x00                      ;     PHYSICAL_MAXIMUM (255)
    RETLW 0x09  
    RETLW 0x30                      ;     USAGE (X)
    RETLW 0x09  
    RETLW 0x31                      ;     USAGE (Y)
    RETLW 0x81  
    RETLW 0x02                      ;     INPUT (Data Var Abs)
    RETLW 0xc0                            ;     END_COLLECTION
    RETLW 0xc0                            ; END_COLLECTION
EndReportDescriptor1