; ; File generated by cc65 v 2.19 - Git ab8bb268 ; .fopt compiler,"cc65 v 2.19 - Git ab8bb268" .setcpu "6502" .smart on .autoimport on .case on .debuginfo off .importzp sp, sreg, regsave, regbank .importzp tmp1, tmp2, tmp3, tmp4, ptr1, ptr2, ptr3, ptr4 .macpack longbranch .import _peekbsys .import _pokebsys .import _clrscr .import _cputsxy .import _revers .import _textcolor .import _bgcolor .import _cvlinexy .import _cclearxy .import _screensize .import _mouse_hide .import _mouse_show .import _mouse_move .import _mouse_buttons .import _mouse_info .export _pen_calibrate .segment "RODATA" S0004: .byte $C6,$49,$4E,$49,$53,$48,$20,$42,$59,$20,$43,$4C,$49,$43,$4B,$49 .byte $4E,$47,$20,$4F,$46,$46,$20,$42,$41,$52,$2E,$00 S0002: .byte $C1,$44,$4A,$55,$53,$54,$20,$42,$59,$20,$43,$4C,$49,$43,$4B,$49 .byte $4E,$47,$20,$4F,$4E,$20,$4C,$49,$4E,$45,$2E,$00 ; --------------------------------------------------------------- ; void __near__ __fastcall__ pen_calibrate (unsigned char *XOffset) ; --------------------------------------------------------------- .segment "CODE" .proc _pen_calibrate: near .segment "CODE" jsr pushax lda #$06 jsr _bgcolor jsr pusha lda #$0F jsr _textcolor jsr pusha lda #$01 jsr _revers jsr pusha ldx #$D8 lda #$27 jsr _peekbsys jsr pusha ldy #$0A jsr subysp lda #$09 jsr leaa0sp jsr pushax lda #$09 jsr leaa0sp jsr _screensize ldy #$09 lda (sp),y lsr a dey sta (sp),y dey lda (sp),y lsr a lsr a dey sta (sp),y asl a asl a asl a dey sta (sp),y jsr _clrscr lda #$00 jsr pusha ldy #$07 lda (sp),y jsr pusha ldy #$08 lda (sp),y jsr pusha0 ldy #$0D lda (sp),y jsr tosumula0 jsr _cclearxy ldy #$08 lda (sp),y jsr pusha ldy #$07 lda (sp),y clc adc #$01 jsr pusha ldy #$08 lda (sp),y sec sbc #$02 jsr _cvlinexy lda #$00 jsr _revers ldy #$08 ldx #$00 lda (sp),y ldy #$0E jsr decaxy jsr pusha ldy #$08 lda (sp),y lsr a clc adc #$01 jsr pusha lda #<(S0002) ldx #>(S0002) jsr _cputsxy ldy #$08 ldx #$00 lda (sp),y ldy #$0E jsr decaxy jsr pusha ldy #$08 lda (sp),y lsr a clc adc #$03 jsr pusha lda #<(S0004) ldx #>(S0004) jsr _cputsxy ldx #$D8 lda #$27 jsr pushax lda #$0C jsr _pokebsys jsr _mouse_show ldy #$08 ldx #$00 lda (sp),y jsr shlax3 jsr pushax ldy #$07 ldx #$00 lda (sp),y lsr a jsr _mouse_move L0005: jsr _mouse_buttons and #$10 bne L0005 L0007: lda sp ldx sp+1 jsr _mouse_info ldy #$04 lda (sp),y and #$10 beq L0007 dey jsr ldaxysp ldy #$05 cmp (sp),y txa sbc #$00 bvc L0013 eor #$80 L0013: bmi L0003 jsr pushwysp ldy #$07 ldx #$00 lda (sp),y asl a bcc L0012 inx L0012: jsr tosicmp bpl L0003 ldy #$0F jsr ldaxysp jsr pushax sta ptr1 stx ptr1+1 ldx #$00 lda (ptr1,x) jsr pusha0 ldy #$07 jsr pushwysp ldy #$0E ldx #$00 lda (sp),y jsr shlax3 jsr incax4 jsr tossubax jsr pushax lda #$02 jsr tosdiva0 jsr tosaddax ldy #$00 jsr staspidx jmp L0005 L0003: jsr _mouse_buttons and #$10 bne L0003 jsr _mouse_hide ldx #$D8 lda #$27 jsr pushax ldy #$0C lda (sp),y jsr _pokebsys ldy #$0B lda (sp),y jsr _revers ldy #$0C lda (sp),y jsr _textcolor ldy #$0D lda (sp),y jsr _bgcolor jsr _clrscr ldy #$10 jmp addysp .endproc