本发明涉及一种扩充键盘功能键的方法,特别是一种使键盘上的标准 键码(包括A、B、C、…Z;1、2、3、…9;F1、F2、…F12… 等按键)配合IBM特殊键的E0码,以形成定义扩充IBM的扩充码,并且 通过视窗(Windows)软件程序的控制,来扩充键盘上功能键的用途。 虽然一般计算机系统(如:IBM)的标准键盘可设定按键的内定码有 128个,然而,扣除在各国语种中使用的按键数和系统命令码以外,则最多 可使用的按键码数只有8个,所以,无形中限制了扩充功能键(Hot Key) 的用途。 也有针对特殊按键(如:Insert、Home、Page Up、Page Down… 等)定义它们的扩充码,该方法主要是配合特殊按键的“E0”码,并结合 标准码,以形成一扩充码。 这种方法虽不必动用少数仅存的键码就可扩充功能键(Hot Key)的 用途,但在扩充码中,由于IBM目前仅定义标准键盘上少数的特殊键,倘 若要在标准键盘中再扩充其它的功能键,则不管是否使用仅存的键码还是 扩充码,都不能被计算机系统所接受。 有鉴于此,本发明的发明人根据这类缺点并依靠多年来从事制造相关 产品的经验,经悉心观察并研究,终于开发设计出一种扩充键盘功能键的 方法,使其可延伸扩充定义IBM的扩充码,并可配合视窗(Windows)软 件程序的执行,来扩充键盘上功能键的用途。 本发明的目的是提供一种扩充键盘扩充码的方法,它使键盘上的标准 键码(包括A、B、C、…Z;1、2、3、…9;F1、F2、…F12… 等按键)配合IBM特殊键的E0码,以形成定义扩充IBM的扩充码,并且 通过视窗(Windows)软件程序的控制,来扩充键盘上功能键的用途,使 键盘的键码除了与IBM PC完全相容外,还避免了因操作系统(OS)扩充 标准键码(例如:Win-L、Win-R及Application)的使用范围时,造成的 冲突。 本发明的目的是这样实现的,即提供一种扩充键盘功能键的方法,包 括下列步骤: (a)首先,使键盘上的标准键码(Key Code)配合IBM特殊键的E0码, 以形成定义扩充IBM的扩充码; (b)键盘控制器接收键盘传送的键码,并将其转换成另一种内定码; (c)键盘驱动器接收来自键盘控制器的内定码,并送入系统信息队列 (System Message Queue); (d)系统信息队列将该内定的键码送出; (e)视窗的应用程序判断该内定的键码是否为扩充码?若是扩充码,则 根据键码功能定义,执行相关程序,待执行完毕后,再清除该键盘码;若 不是扩充码,则将键盘传送至下一个键盘扫描程序或释放该键码; (f)采用这种方法,通过定义形成的扩充码,配合视窗的应用程序,扩 充键盘的功能键的用途。 为了能对本发明的目的、特征及其功效作进一步的认识和了解,在此 结合附图详细说明实施例如下,其中: 图1为本发明给键盘产生扩充码的流程图。 图2为本发明对视窗(Windows)的应用程序处理的流程图。 请参阅图1所示的本发明的一种”扩充键盘功能键的方法”,它使键盘 上的标准键(包括A、B、C、…Z;1、2、3、…9;F1、F2、… F12…等按键)配合IBM特殊键的E0码,以形成定义扩充IBM的扩充码, 它产生扩充码的方法如下所述: 首先,该键盘的操作系统(OS)在待机状态后,会开始扫描键盘上的 键码10,及监测操作者是否在键盘上按压标准键11? 若在键盘上没有按压标准键,则回到待机后的状态,并继续扫描键盘 上的键码10;若在键盘上有按压标准键,则会送出内定的标准键码(Make Code)或结束键码(Break Code)12; 若送出的是标准键码(Make Code),则再判断是否按压了功能键 (Hot Key)?121;若按压了功能键(Hot Key),则会送E0码+内定 的标准键码(Make Code)1211;若没有按压功能键(Hot Key),则会送 出标准键码(Make Code)1212; 若送出的是结束键码(Break Code),则再判断是否按压了功能键 (Hot Key)?122;若按压了功能键(Hot Key),则会送E0码+内定 的结束键码(Break Code)1221;若没有按压功能键(Hot Key),则会 送出结束键码(Break Code)1222; 如此,即可使键盘上的标准键码(Key Code)配合IBM特殊键的E0 码,以形成定义扩充IBM的扩充码。 请参阅图2所示的视窗(Windows)的应用程序将形成的定义扩充IBM 的扩充码作进一步处理的流程图,其中: 位于计算机内的键盘控制器25会接收自键盘20送来的键码,并将该 键码转换成另一种内定码; 键盘驱动器(Keyboard Device Driver)30则截收键盘控制器中的键 码,并将该键码传送至系统信息队列(System message Queue)35; 之后,该系统信息队列(System message Queue)35将包括该键码在 内的系统信息依序送出; 接着,通过拦截程序(Hook)截收系统信息队列35的信息,用于判 断是否有扩充码信息50? 若是扩充码,则根据键码功能定义,执行相关程序70,待执行完毕后, 再清除该键码80;若不是扩充码,则将系统信息传送至下一个拦截程序40 或释放该系统信息60供系统使用; 如此,即可通过形成定义扩充IBM的扩充码,配合视窗软件的应用程 序,扩充键盘的功能键的用途。 在这里举一实施例并结合以上描述详加说明如下: 若操作者在键盘上按压标准键“A”时,此时,根据图1所示,该键 盘会送出内定的标准键码(Make Code)或结束键码(Break Code),其中 该标准键码(Make Code)设定的内定码为22;结束键码(Break Code) 设定的值为A2; 之后,若操作者按压功能键(Hot Key,如PLAY),则键盘会送出扩 充码E0+22及E0+A2; 然后,键盘控制器25会接收并转换成另一种内定码,通过驱动器30 传送至系统信息队列35,拦截程序40会收到其相对的内定码(Make Code “011E”或Break Code“011E”); 同时,该程序会判断该内定码是否是扩充码,并根据“PLAY”键内 定的功能,执行相关的程序,并清除该扩充码;若不是扩充码,则释放出 该键码,或将该键码传送至下一个程序来作进一步处理。 综上所述,本发明不仅可与IBM PC完全相容外,还可定义扩充IBM 的扩充码,使其配合视窗软件应用程序的执行,这样,即可扩充键盘的功 能键的用途。因此,本发明的确能提高产业上的利用率。 如上所述,仅为本发明的一最佳具体实施例,但本发明的特征并不局 限于此,在本发明的领域内的任何熟悉此技术的人员,能轻易考虑到的变 化和修饰都属于本发明所附权利要求所规定的范围内。