home *** CD-ROM | disk | FTP | other *** search
- ALTKEY: USING THE ALT KEY TO PROGRAM THE KEYBOARD
- "_IS EIGHT PROGRAMABLE FUNCTIONS KEY ENOUGH FOR YOU? IF THE"
- "ANSWER IS NO, READ ON. THIS PROGRAM ALLOWS YOU TO REDEFINE"
- "APPROXIMATLY 62 KEYS TO BE USE LIKE THE PROGRAMABLE FUNCTIONS KEYS"
- "ON THE C-128."
- "^USING THE PROGRAM"
- "^ TYPE DLOAD"ALTKEY.V1/0" THEN TYPE RUN. THE PROGRAM"
- "ASKS YOU FOR A FILENAME IF IT IS THE FIRST TIME RUNNING THE"
- "PROGRAM JUST PRESS RETURN. IF NOT, ENTER THE FILENAME YOU WISH"
- "TO EDIT. IF YOU ENTER NO FILENAME AT THE LAST PROMPT, THE"
- "PROGRAM WILL TELL YOU IT IS CREATING A NEW FILE AND ASK FOR THE"
- "FILENAME OF THE NEW FILE."
- "_NOW YOU SHOULD SEE THE PROMPT "PRESS KEY TO BE REDEFINED""
- "WHEN YOU PRESS A KEY YOU WILL SEE THE CHARACTER CODE AND"
- "THE CHARACTER PRINTED INSIDE QUOTE MARKS. IF THE KEY HAS A CURRENT"
- "DEFINITION IT WILL BE DISPLAY INSIDE QUOTES ON THE NEXT LINE."
- "IF THERE IS NO CURRENT DEFINITION TWO QUOTE MARKS WILL BE"
- "DISPLAY SIDE BY SIDE. THEN THE PROGRAM DISPLAYS THE AVAILABLE"
- "COMMANDS. THEY ARE:"
- "^ E - EDIT THIS DEFINITION"
- "_S - SAVE THIS SET OF DEFINITIONS"
- "_Q - EXIT THE PROGRAM WITH NO SAVE"
- "_P - PASS THIS KEY RETURNS YOU TO THE "PRESS KEY" PROMPT."
- "^EDITING A DEFINITION"
- "^ TO EDIT A DEFINITION PRESS "E" AND THE CURSOR WILL BE"
- "PLACED ON THE CURRENT DEFINITION."
- "IF YOU WANT TO USE ANY CURSOR CONTROL KEY IN YOUR DEFINITION"
- "YOU NEED TO ENCLOSE THE DEFINITION IN QUOTES. TO ENTER A QUOTE IN"
- "IN THE DEFINITION USE THE UP ARROW (NEXT TO THE RESTORE KEY)."
- "A CARRIAGE RETURN CAN BE PLACE AT THE END OF THE DEFINITION"
- "BY USING THE BACK ARROW (UPPER LEFT CORNER). THE DEFINITION"
- "MAY CONSIST OF ANY CHARACTER OF THE KEYBOARD. THE DEFINITION"
- "IS LIMITED TO 160 CHARACTERS BUT BE CAREFUL YOU ONLY HAVE"
- "ABOUT 900 BYTES FOR DEFINITIONS."
- "^SAVING THE DEFINITIONS"
- "^ TO SAVE THE DEFINITIONS PRESS "S". THE PROGRAM WILL"
- "DISPLAY THE CURRENT FILENAME AND ASK IF YOU WISH TO SAVE"
- "WITH THIS NAME. IF YOU ANSWER YES THE CURRENT PROGRAM ON"
- "DISK IS SCRATCHED AND THE NEW DEFINITIONS ARE SAVED UNDER THIS"
- "NAME. IF YOU ANSWER NO THE PROGRAM ASKS FOR A NEW FILENAME"
- "AND THE SAVE CONTINUES. WHEN TO SAVE IS COMPLETE THE PROGRAM"
- "ENDS. THE SAVE CREATES A PROGRAM FILE ON DISK."
- "^LOADING AND USING THE DEFINITIONS"
- "^ TO USE THE DEFINITIONS JUST LOAD THE DEFINITIONS WITH"
- "BLOAD"FILENAME",B0,P4864 AND SYS4864. TO CALL A DEFINITION"
- "PRESS AND HOLD THE ALT KEY AND PRESS THE KEY YOU WANT."
- "IF NO DEFINITION IS PRESENT FOR THAT KEY NOTHING IS DISPLAYED."
- "IF PRESENT THE DEFINITION IS DISPLAY AND EXECUTED IF A CARRIAGE"
- "RETURN IS PRESENT. IF NOT THE CURSOR IS PLACED AT THE END OF"
- "THE LINE."
- "^HOW THE PROGRAM WORKS"
- "^ THE PROGRAM WORKS BY WEDGING ITSELF INTO THE KEYSCAN"
- "ROUTINE OF THE OPERATING SYSTEM. THIS IS DONE EASLY BECAUSE"
- "OF THE TWO INDIRECT RAM VECTORS USED BY THE KEYSCAN ROUTINE."
- "THESE VECTORS ARE KEYVEC ($033A) AND KEYCHK ($033C). KEYVEC"
- "IS USED WHEN KEY PRESS IS DETECTED, BEFORE THE KEY IS DECODED."
- "THE KEYCODE IS IN REGISTER A AT THIS POINT. KEYCHK IS USED"
- "AFTER THE KEY IS DECODED, THIS IS WHERE THE PROGRAM WEDGES"
- "ITSELF. WHEN CONTROL IS PASSED TO KEYCHK THE REGISTERS CONTAIN"
- "THE FOLLOWING INFORMATION:"
- "^ A = CHARCTER CODE FOR THE KEY PRESS"
- "_Y = KEYCODE OF THE KEY PRESS"
- "_X = SHIFT PATTERN (SHIFT,COMMODORE,ALT,CAPS,CNTRL)."
- "^ AT THIS POINT THE WEDGE IS CALLED. IT CHECKS THE X REGISTER TO"
- "SEE IF THE ALT KEY IS PRESSED. IF THE ALT KEY IS NOT PRESSED"
- "THE WEDGE SENDS CONTROL TO THE NORMAL OS ROUTINE. IF IT IS THE WEDGE"
- "PASSES CONTROL TO DECODING PART OF THE WEDGE."
- "_THE DECODING ROUTINE PULLS THE LENGTH OF THE PROGRAMMED"
- "STRING. IF THE LENGTH IS ZERO, NOTHING IS PRINTED AND CONTROL"
- "IS PASSED BACK TO THE OPERATING SYSTEM. IF THE LENGTH IS"
- "GREATER THAN ZERO, THE ROUTINE CALCULATES THE STARTING"
- "ADDRESS OF THE PROGRAMMED STRING BY ADDING THE LENGTHS OF"
- "THE KEYS BEFORE IT IN THE LENGTH TABLE AT $1800 AND ADDS THIS VALUE"
- "TO $1858, THE BEGIN OF THE STRING TABLE. THE STRING IS THEN"
- "PRINTED TO SCREEN UNTIL A ZERO OR A CARRAGE RETURN IS FOUND."
- "IF A CARRAGE RETURN IS FOUND IT IS PLACED IN THE"
- "KEYBROAD BUFFER AT $034A AND THE BUFFER INDEX AT $D0 IS"
- "CHANGE TO A ONE. (NOTE: IF ANY CHARACTERS ARE IN THE BUFFER"
- "WHEN IS CARRAGE RETURN IS DETECTED, THEY ARE LOST.)"
- "_NORMALLY KEYCHK IS POINTING TO THE ROUTINE AT ADDRESS $C6AD IN"
- "BANK 15. THIS ROUTINE DECODES THE PROGRAMMABLE FUNCTION"
- "KEYS OF THE 128."
- END
-