;--------------------------------------------------------------------- .macpack generic .import _ctk_mouse_joyx, _ctk_mouse_joyy .import _ctk_mouse_firebutton .export _ctk_mouse_joy ;--------------------------------------------------------------------- .bss lastjoydy: .res 1 lastjoydx: .res 1 joydycnt: .res 1 joydxcnt: .res 1 ;--------------------------------------------------------------------- .code ;--------------------------------------------------------------------- _ctk_mouse_joy: ldy $dc02 lda #0 sta $dc02 lda $dc00 sty $dc02 ldy #0 ldx #0 lsr bcs nodey dey nodey: lsr bcs noiny iny noiny: lsr bcs nodex dex nodex: lsr bcs noinx inx noinx: and #1 eor #1 ora _ctk_mouse_firebutton sta _ctk_mouse_firebutton cpy lastjoydy sty lastjoydy bne noydy tya pha inc joydycnt lda joydycnt cmp #$1f bmi nostajoydycnt lda #$20 sta joydycnt nostajoydycnt: lsr lsr lsr lsr tay pla asldeyloop: asl dey bpl asldeyloop tay jmp ydy noydy: lda #0 sta joydycnt ydy: tya clc adc _ctk_mouse_joyy cmp #240 bcc :+ lda #0 : cmp #200 bcc :+ lda #199 : sta _ctk_mouse_joyy cpx lastjoydx stx lastjoydx bne noxdx txa pha inc joydxcnt lda joydxcnt cmp #$1f bmi nostajoydxcnt lda #$20 sta joydxcnt nostajoydxcnt: lsr lsr lsr lsr tax pla asldexloop: asl dex bpl asldexloop tax jmp xdx noxdx: lda #0 sta joydxcnt xdx: txa clc adc _ctk_mouse_joyx sta _ctk_mouse_joyx php lda #$ff cpx #0 bmi nolda02 lda #0 nolda02: plp adc _ctk_mouse_joyx+1 sta _ctk_mouse_joyx+1 rts