[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference 7.286::atarist

Title:Atari ST, TT, & Falcon
Notice:Please read note 1.0 and its replies before posting!
Moderator:FUNYET::ANDERSON
Created:Mon Apr 04 1988
Last Modified:Tue May 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:1433
Total number of notes:10312

1224.0. "Disable/enable of keyboard?" by IJSAPL::KDEVRIES (Kees de Vries) Mon Dec 30 1991 04:59

Hi,
I have a requirement to temporary disable ALL keyboard input.
I need this because I am calling a PD subroutine in my programs to play 
some music.
This PD subroutine works only correct as long as nobody hits a key 
during the playback. I don't have the sources of this subroutine.

Writing a 0 to address FFFC00 (Keyboard ACIA Control Register) does
the trick, every input is disabled (including mouse and joystick) and 
the current program continues.

The problem I have is to enable manual input again. 
Restoring the old contents of FFFC00 does NOT work.

Does someboday know the exact layout of the bits in the Keyboard Control
Register?
Or does somebody know a better way of doing this, preferable prgramming
language independent?

Kees de Vries.
T.RTitleUserPersonal
Name
DateLines
1224.1USE $484RIGI::BOLLIGERMon Dec 30 1991 06:3220
    			( use CONTERM )
    
    the Adress $484 (Hexa) contains some Bits you could use
    
    the BITS are:
    
    bit 0 = key Klick on/off
    bit 1 = key repeat on/off
    bit 2 = bell on/off
    bit 3 = extended kbshift
    
    so if you don't like that the Key klick disturb your SOUND so
    just CLEAR the BIT 0 of adr. 484 (hexa)
    
    in Assembler use  BCLR #0,$484   BSET #0,$484
    
    					FRED
    
    
    
1224.26850 register bits are different on READPRNSYS::LOMICKAJJeffrey A. LomickaMon Dec 30 1991 12:386
1224.3dis/enable keyboard.IJSAPL::KDEVRIESKees de VriesMon Jan 06 1992 05:5611
*.1 and *.2 put me on the right track.

The ACIA control register contains a lot more bits.
After some experiments I figured out that communications
between ST and keyboard processor is 8 bits, no parity , 1 stop bit,
speed :64.

To disable keyboard 0x16 to 0xfffc00. (including mouse , joystick)
To enable keyboard  0x96 to 0xfffc00.

Kees de Vries.
1224.4PRNSYS::LOMICKAJJeffrey A. LomickaTue Jan 07 1992 15:122
Glad you got it figured out.  When I went back to reply with real
numbers, the conference got weird and I didn't get back in until today.