From c0e46594f0f74207c20e810bb450107e9ae4df9c Mon Sep 17 00:00:00 2001 From: cuz Date: Thu, 17 Aug 2006 19:22:53 +0000 Subject: [PATCH] Mouse driver fixes by Oliver Schmidt. git-svn-id: svn://svn.cc65.org/cc65/trunk@3758 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- libsrc/apple2/apple2-stdmou.s | 34 +++++++++++++++++++++++++++++----- libsrc/apple2/apple2.inc | 15 ++++++++++++--- 2 files changed, 41 insertions(+), 8 deletions(-) diff --git a/libsrc/apple2/apple2-stdmou.s b/libsrc/apple2/apple2-stdmou.s index 1f76efe82..13b6c3ee3 100644 --- a/libsrc/apple2/apple2-stdmou.s +++ b/libsrc/apple2/apple2-stdmou.s @@ -6,6 +6,7 @@ .include "zeropage.inc" .include "mouse-kernel.inc" + .include "apple2.inc" ; ------------------------------------------------------------------------ @@ -136,6 +137,7 @@ next: inc ptr1+1 ; Convert to and save slot number and #$0F + sei sta slot ; Convert to and patch I/O register index @@ -144,14 +146,32 @@ next: inc ptr1+1 asl asl sta yparam+1 - - ; Apple II Mouse TechNote #1, Interrupt Environment with the Mouse: - ; "Disable interrupts when calling any mouse routine." - sei + + .ifdef __APPLE2ENH__ + ; Save LC read state + ldx #127 if 80 column video enabled + +; Character set switches CLRALTCHAR := $C00E ; Normal Apple II char set SETALTCHAR := $C00F ; Norm/inv LC, no flash ALTCHARSET := $C01E ; >127 if alt charset switched in -RD80VID := $C01F ; >127 if 80 column video enabled -; Video soft switches +; Language card switches +RDLCBNK2 := $C011 ; >127 if LC bank 2 in use +RDLCRAM := $C012 ; >127 if LC is read enabled +ROMIN := $C081 ; Swap in D000-FFFF ROM +LCBANK2 := $C083 ; Swap in LC bank 2 +LCBANK1 := $C08B ; Swap in LC bank 1 + +; Video mode switches MIXCLR := $C052 ; Disable 4 lines of text MIXSET := $C053 ; Enable 4 lines of text LOWSCR := $C054 ; Page 1