CAPS LOCK

 BBS: Inland Empire Archive
Date: 03-17-92 (18:39)             Number: 197
From: TOM HAMMOND                  Refer#: NONE
  To: MATT GLOVER                   Recvd: NO  
Subj: CAPS LOCK                      Conf: (2) Quik_Bas
MG>does anybody know how to manipulate the CAPS LOCK key from good old
MG>        QB4.5??

Matt - I hope this helps...  Good Luck...   Tom Hammond     N0SS

              旼컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴커
                BEFORE executing any of these commands  
                issue the following command:            
                                                        
                             DEF SEG = 0                
                                                        
                And when exiting from the routine,      
                issue the following command:            
                                                        
                             DEF SEG                    
                                                        
              읕컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴켸


UPPER/LOWER CASE

PEEK(1047) AND 64               0 if L/C, 64 if U/C
POKE 1047, PEEK(1047) AND 191   Force L/C
POKE 1047, PEEK(1047) OR 64     Force U/C
POKE 1047, PEEK(1047) XOR 64    Toggle U/C and L/C


NUMLOCK

PEEK(1047) AND 32               0 if NumLock OFF, 32 if NumLock ON
POKE 1047, PEEK(1047) AND 223   Force NumLock OFF
POKE 1047, PEEK(1047) OR 32     Force NumLock ON
POKE 1047, PEEK(1047) XOR 32    Toggle CURSOR-CONTROL and NumLock


INSERT

PEEK(1047) AND 128              0 if Ins OFF, 128 if Ins ON
POKE 1047, PEEK(1047) AND 127   Force Ins OFF
POKE 1047, PEEK(1047) OR 128    Force Ins ON
POKE 1047, PEEK(1047) XOR 128   Toggle Ins ON/OFF


SCROLL LOCK

PEEK(1047) AND 16               0 if Scroll OFF, 16 if Scroll ON
POKE 1047, PEEK(1047) AND 239   Force Scroll OFF
POKE 1047, PEEK(1047) OR 16     Force Scroll ON
POKE 1047, PEEK(1047) XOR 16    Toggle Scroll ON/OFF


MISC. VALUES

PEEK(1047) AND 8                8 if Alt pressed, 0 if not pressed
PEEK(1047) AND 4                4 if Ctrl pressed, 0 if not pressed
PEEK(1047) AND 2                2 if L-Shift pressed, 0 if not pressed
PEEK(1047) AND 1                1 if R-Shift pressed, 0 if not pressed
PEEK(1047) AND 3                3 if EITHER Shift pressed
PEEK(1048) AND 4                2 if Sys Req pressed (AT only)
POKE 1050, PEEK(1052)           Clears keyboard buffer


--- WM v2.00/91-0231
 * Origin: The Modem Zone BBS (314) 893-5106 (1:289/2)
Outer Court
Echo Basic Postings

Books at Amazon:

Back to BASIC: The History, Corruption, and Future of the Language

Hackers: Heroes of the Computer Revolution (including Tiny BASIC)

Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution

The Advent of the Algorithm: The Idea that Rules the World

Moths in the Machine: The Power and Perils of Programming

Mastering Visual Basic .NET