⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ps2-key.asm

📁 MC68HC608JB8的固件例程源程序.zip
💻 ASM
📖 第 1 页 / 共 2 页
字号:
*****************************************************************************
*                                         Copyright (c) Motorola 1998		*
*  File Name:	PS2-KEY.ASM													*
*                        													*
*  Description:	Keyboard matrix definition for PS/2 mode					*
*				Function to return key number at location (row,column)		*
*                                                                          	*
*  Assembler:	CASM08Z	(P&E Microcomputer Systems Inc)						*
*  Version:		3.16							                        	*
*																			*
*  Current Revision:	0.1													*
*  Current Revision Release Date: 1998.05.11 by Derek Lau					*
*																			*
*  Updated History															*
*   Rev		YYYY.MM.DD  Author			Description of Change				*
*	---		----------- ------			---------------------				*
*	0.0		1998.05.11	Derek Lau		orginial release					*
*****************************************************************************
* This Program is a freeware to demonstrate the operation of Motorola		*
* Microcontroller. Motorola reserves the right to make changes without		*
* further notice to any product herein to improve reliability, function, or *
* design. Motorola does	not assume any liability arising out of the 		*
* application or use of any product, circuit, or software described herein; *
* neither does it convey any license under its patent rights nor the rights *
* of others. Motorola products are not designed, intended, or authorized 	*
* for use as components	in systems intended for surgical implant into the	*
* body, or other applications intended to support life, or for any other	*
* application in which the failure of the Motorola product could create a	*
* situation where personal injury or death may occur. Should Buyer purchase	*
* or use Motorola products for any such intended or unauthorized 			*
* application, Buyer shall indemnify and hold Motorola and its officers,	*
* employees, subsidiaries, affiliates, and distributors harmless against	*
* all claims, costs, damages, and expenses, and reasonable attorney fees	*
* arising out of, directly or indirectly, any claim of personal injury or	*
* death associated with such unintended or unauthorized use, even if such	*
* claim alleges that Motorola was negligent regarding the design or 		*
* manufacture of the part. Motorola	and the Motorola logo* are registered	*
* trademarks of Motorola Inc												*
*****************************************************************************

* ====== Table of Key Numbers ============================================
* PS/2 PC-AT Keyboard(Set 2)
PKEY_TIL 	equ   01          ; ` / ~
PKEY_1          equ   02          ; 1 / !
PKEY_2	        equ   03          ; 2 / @
PKEY_3	        equ   04          ; 3 / #
PKEY_4	        equ   05          ; 4 / $
PKEY_5	        equ   06          ; 5 / %
PKEY_6	        equ   07          ; 6 / ^
PKEY_7	        equ   08          ; 7 / &
PKEY_8  	equ   09          ; 8 / *
PKEY_9	        equ   10          ; 9 / (
* ------------------------------------------------------------------------
PKEY_0	        equ   11          ; 0 / )
PKEY_MIS        equ   12          ; - / _
PKEY_EQU        equ   13          ; = / +
PKEY_KAN3	equ   14	; Kanji key 3 (Yen)
*
PKEY_BSP        equ   15          ; <backspace>
PKEY_TAB        equ   16          ; <tab>
PKEY_q	        equ   17          ; q / Q
PKEY_w	        equ   18          ; w / W
PKEY_e	        equ   19          ; e / E
PKEY_r	        equ   20          ; r / R
* ------------------------------------------------------------------------
PKEY_t	        equ   21          ; t / T
PKEY_y	        equ   22          ; y / Y
PKEY_u	        equ   23          ; u / U
PKEY_i	        equ   24          ; i / I
PKEY_o	        equ   25          ; o / O
PKEY_p	        equ   26          ; p / P
PKEY_OQO        equ   27          ; [ / {
PKEY_EQO        equ   28          ; ] / }
PKEY_BSL        equ   29          ; \ / |
PKEY_CLK        equ   30          ; <CAPS lock>
* ------------------------------------------------------------------------
PKEY_a          equ   31          ; a / A
PKEY_s          equ   32          ; s / S
PKEY_d          equ   33          ; d / D
PKEY_f          equ   34          ; f / F
PKEY_g          equ   35          ; g / G
PKEY_h          equ   36          ; h / H
PKEY_j          equ   37          ; j / J
PKEY_k          equ   38          ; k / K
PKEY_l          equ   39          ; l / L
PKEY_COL        equ   40          ; ; / :
* ------------------------------------------------------------------------
PKEY_CC         equ   41          ; ' / "
PKEY_NUP	equ   42	; EURO KEY 1 (next to Enter key)
*
PKEY_RTN        equ   43          ; <ENTER>
PKEY_LSFT       equ   44          ; <left shift>
PKEY_NBS	equ   45	; EURO KEY 2 (between L-sft & Z)
*
PKEY_z          equ   46          ; z / Z
PKEY_x          equ   47          ; x / X
PKEY_c          equ   48          ; c / C
PKEY_v          equ   49          ; v / V
PKEY_b          equ   50          ; b / B
* ------------------------------------------------------------------------
PKEY_n          equ   51          ; n / N
PKEY_m          equ   52          ; m / M
PKEY_CMA        equ   53          ; , / <
PKEY_DOT        equ   54          ; . / >
PKEY_SL         equ   55          ; / / ?
PKEY_KAN1	equ   56	; Kanji key 1 (Ro)
*
PKEY_RSFT       equ   57          ; <right shift>
PKEY_LCTL       equ   58          ; <left ctrl>
*
PKEY_LALT       equ   60          ; <left alt>
* ------------------------------------------------------------------------
PKEY_SPC        equ   61          ; <space bar>
PKEY_RALT       equ   62          ; <right alt>
PKEY_RCTL       equ   64          ; <right ctrl>
* ------------------------------------------------------------------------
PKEY_INS        equ   75          ; <insert>
PKEY_DEL        equ   76          ; <delete>
*
PKEY_LGUI       equ   78          ; <left GUI>            [Win95]
PKEY_LFT        equ   79          ; <left arrow>
PKEY_HME        equ   80          ; <home>
* ------------------------------------------------------------------------
PKEY_END        equ   81          ; <end>
*
PKEY_UP         equ   83          ; <up arrow>
PKEY_DWN        equ   84          ; <down arrow>
PKEY_PUP        equ   85          ; <page up>
PKEY_PDN        equ   86          ; <page down>
PKEY_RGUI       equ   87          ; <right GUI>           [Win98]
PKEY_APP        equ   88          ; <application>         [Win98]
PKEY_RGT        equ   89          ; <right arrow>
PKEY_NLK        equ   90          ; <NUM lock>
* ------------------------------------------------------------------------
PKEY_N7         equ   91          ; 7 / <home>            [num pad]
PKEY_N4         equ   92          ; 4 / <left>            [num pad]
PKEY_N1         equ   93          ; 1 / <end>             [num pad]
*
PKEY_NSL        equ   95          ; /                     [num pad]
PKEY_N8         equ   96          ; 8 / <up>              [num pad]
PKEY_N5         equ   97          ; 5                     [num pad]
PKEY_N2         equ   98          ; 2 / <down>            [num pad]
PKEY_N0         equ   99          ; 0 / <ins>             [num pad]
PKEY_NMU        equ  100          ; *                     [num pad]
* ------------------------------------------------------------------------
PKEY_N9         equ  101          ; 9 / <PgUp>            [num pad]
PKEY_N6         equ  102          ; 6 / <right>           [num pad]
PKEY_N3         equ  103          ; 3 / <PgDn>            [num pad]
PKEY_NDT        equ  104          ; .                     [num pad]
PKEY_NMI        equ  105          ; -                     [num pad]
PKEY_NPL        equ  106          ; +                     [num pad]
PKEY_NCMA	equ  107	; NumPad Brazilian key
*
PKEY_NET        equ  108          ; <enter>               [num pad]
*
PKEY_ESC        equ  110          ; <esc>
* ------------------------------------------------------------------------
*
PKEY_F1         equ  112          ; <F1>
PKEY_F2         equ  113          ; <F2>
PKEY_F3         equ  114          ; <F3>
PKEY_F4         equ  115          ; <F4>
PKEY_F5   	equ  116          ; <F5>
PKEY_F6	        equ  117          ; <F6>
PKEY_F7	        equ  118          ; <F7>
PKEY_F8	        equ  119          ; <F8>
PKEY_F9         equ  120          ; <F9>
* ------------------------------------------------------------------------
PKEY_F10        equ  121          ; <F10>
PKEY_F11        equ  122          ; <F11>
PKEY_F12        equ  123          ; <F12>
PKEY_PSC        equ  124          ; <print screen>
PKEY_SLK        equ  125          ; <SCROLL lock>
PKEY_PSE        equ  126          ; <pause>

PS2KEY_WKE      equ  127          ; WIN98 (scancode may not be right)
PS2KEY_PWR      equ  128          ; WIN98 (scancode may not be right)
PS2KEY_SLP      equ  129          ; WIN98 (scancode may not be right)
*
PKEY_FN         equ  130        ; Function Key (scan code ???)
*
PKEY_KAN5	equ  131	; Kanji key 5 (Muhenkan)
PKEY_KAN4	equ  132	; Kanji key 4 (Henkan)
PKEY_KAN2	equ  133	; Kanji key 2 (Katakana/Hitagana)

PKEY_MUTE	equ  134	; Speaker Mute
PKEY_VLUP	equ  135	; Speaker Volume Up
PKEY_VLDN	equ  136	; Speaker Volume Down

PKEY_MAIL	equ  137	; E-Mail
PKEY_CALC	equ  138	; Calculator
PKEY_MYPC	equ  139	; My Computer

PKEY_WFND	equ  140	; WWW Search
PKEY_WHME	equ  141	; WWW Home
PKEY_WBCK	equ  142	; WWW Back
PKEY_WFRD	equ  143	; WWW Forward
PKEY_WSTP	equ  144	; WWW Stop
PKEY_WRFH	equ  145	; WWW Refresh
PKEY_WFVR	equ  146	; WWW Favorite

PKEY_NXTR	equ  147	; Media Next Track
PKEY_PRTR	equ  148	; Media Previous Track
PKEY_STOP	equ  149	; Media Stop
PKEY_PLAY	equ  150	; Media Play / Pause

PKEY_MEDIA	equ  151	; Media Select


PS2KEY_NA       equ  $00
PKEY_NA         equ  $00



.PAGE
* ====== Key Matrix Map ==================================================
* JB8 PCB version 0.1 and 0.2
* - for Win98 keyboard[Model# K280W]
$if KeyType0
PKEY_TABLE   equ   *
*
        db      PKEY_END,PKEY_HME,PKEY_LFT,CKEY_NA ; col 10 |  row 0-3
        db      PKEY_UP,PKEY_NET,CKEY_NA,PKEY_NPL   ; PTB0   |  row 4-7
*
        db      PKEY_9,PKEY_F8,PKEY_APP,PKEY_DOT     ; col 11 |  row 0-3
        db      CKEY_NA,PKEY_L,PKEY_F7,PKEY_O       ; PTB1   |  row 4-7
*
        db      PKEY_8,PKEY_EQU,CKEY_NA,PKEY_CMA    ; col 12 |  row 0-3
        db      PKEY_F6,PKEY_K,PKEY_EQO,PKEY_I      ; PTB2   |  row 4-7
*
        db      PKEY_7,PKEY_6,PKEY_N,PKEY_M          ; col 13 |  row 0-3
        db      PKEY_H,PKEY_J,PKEY_Y,PKEY_U          ; PTB3   |  row 4-7
*
        db      PKEY_4,PKEY_5,PKEY_B,PKEY_V          ; col 14 |  row 0-3
        db      PKEY_G,PKEY_F,PKEY_T,PKEY_R          ; PTB4   |  row 4-7
*
        db      PKEY_3,PKEY_F2,CKEY_NA,PKEY_C       ; col 15 |  row 0-3
        db      PKEY_F4,PKEY_D,PKEY_F3,PKEY_E        ; PTB5   |  row 4-7
*
        db      PKEY_2,PKEY_F1,CKEY_NA,PKEY_X       ; col 16 |  row 0-3
        db      CKEY_NA,PKEY_S,PKEY_CLK,PKEY_W      ; PTB6   |  row 4-7
*
        db      PKEY_1,PKEY_TIL,CKEY_NA,PKEY_Z      ; col 17 |  row 0-3
        db      PKEY_ESC,PKEY_A,PKEY_TAB,PKEY_Q      ; PTB7   |  row 4-7
*
        db      PKEY_PDN,PKEY_PUP,PKEY_NMI,PKEY_NMU  ; col 9  |  row 0-3
        db      PKEY_NDT,PKEY_N3,PKEY_N6,PKEY_N9     ; PTC0   |  row 4-7
*
        db      PS2KEY_SLP,PKEY_INS,PKEY_RGT,PKEY_NSL ; col 8  |  row 0-3
        db      PKEY_N0,PKEY_N2,PKEY_N5,PKEY_N8      ; PTC1   |  row 4-7
*
        db      PS2KEY_PWR,PKEY_DEL,PKEY_DWN,PKEY_NLK ; col 7  |  row 0-3
        db      PKEY_SPC,PKEY_N1,PKEY_N4,PKEY_N7     ; PTC2   |  row 4-7
*
        db      CKEY_NA,CKEY_NA,CKEY_NA,CKEY_NA  ; col 6  |  row 0-3
        db      CKEY_NA,PKEY_RSFT,PKEY_LSFT,PS2KEY_WKE; PTC3   |  row 4-7
*
        db      PKEY_PSC,CKEY_NA,PKEY_RALT,CKEY_NA ; col 3  |  row 0-3
        db      PKEY_LALT,CKEY_NA,CKEY_NA,PKEY_SLK ; PTC4   |  row 4-7
*
        db      PKEY_F5,PKEY_LCTL,CKEY_NA,PKEY_RCTL ; col 2  |  row 0-3
        db      CKEY_NA,CKEY_NA,CKEY_NA,PKEY_PSE  ; PTC5   |  row 4-7
*
        db      CKEY_NA,CKEY_NA,CKEY_NA,CKEY_NA  ; col 1  |  row 0-3
        db      CKEY_NA,CKEY_NA,PKEY_LGUI,CKEY_NA ; PTC6   |  row 4-7
*
        db      CKEY_NA,CKEY_NA,CKEY_NA,CKEY_NA  ; col 0  |  row 0-3
        db      CKEY_NA,PKEY_RGUI,CKEY_NA,CKEY_NA ; PTC7   |  row 4-7
*
        db      PKEY_0,PKEY_MIS,PKEY_SL,CKEY_NA     ; col 4  |  row 0-3
        db      PKEY_CC,PKEY_COL,PKEY_OQO,PKEY_P     ; PTE0   |  row 4-7
*
        db      PKEY_F10,PKEY_F9,PKEY_F12,PKEY_RTN   ; col 5  |  row 0-3
        db      PKEY_F11,PKEY_BSL,PKEY_BSP,CKEY_NA  ; PTE2   |  row 4-7
$endif


$if KeyType1
PKEY_TABLE   equ   *
*
*  Solid Year ACK-280 key matrix (with Multimedia Keys)
*
        db      PKEY_j,PKEY_k,PKEY_l,PKEY_COL               ;        |  row 0-3  |
        db      PKEY_RTN,PKEY_m,PKEY_DOT,PKEY_SL            ; PTB0   |  row 4-7  |
*
	db      PKEY_N7,PKEY_N8,PKEY_N9,PKEY_NMU	    ;        |  row 0-3
        db      PKEY_N4,PKEY_N5,PKEY_N6,PKEY_NMI	    ; PTB1   |  row 4-7
*
        db      PKEY_N1,PKEY_N2,PKEY_N3,PKEY_NPL	    ;        |  row 0-3
        db      PKEY_NET,PKEY_N0,PKEY_NDT,PKEY_NSL	    ; PTB2   |  row 4-7
*
        db      PKEY_LFT,PKEY_UP,PKEY_DWN,PKEY_RGT	    ;        |  row 0-3)
        db      PKEY_HME,PKEY_PUP,PKEY_PDN,PKEY_END	    ; PTB3   |  row 4-7
*
	db      PKEY_LCTL,PKEY_NA,PKEY_NA,PKEY_NA           ;        |  row 0-3)
        db      PKEY_RCTL,PS2kEY_PWR,PS2KEY_SLP,PS2KEY_WKE  ; PTB4   |  row 4-7
*

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -