对CCBIOS2.13H的改进

Author: 甘肃 任绥海 李顺启 Date: 1992-07-03

        (1)首先找到组合键(ALT+F10)的出入口地址:
        C>DEBUG CCCC.COM
        -SO A000 80 FC 71
        XXXX:9C2A
        -U9C2A
        XXXX:9C2A CMP AH,71
        XXXX:9C2D JNZ 9C90
        ……    ……     ……
        XXXX:9C32 XOR BYTE PTR [9639].FF
        入口地址在9C2F处、出口地址是9C90,设置/取消联想的开关单元是[9639]。
        (2)修改[9639]单元的参数,使它处于常开状态:
        -E9639
        XXXX:9639 00.FF
        (3)修改9C2A处的比较指令,使之无条件指向9C90:
        -A 9C2A
        XXXX:9C2A JMP 9C90
        也可把从9C2A_9C8F的单元都填成一字节空操作指令NOP的机器码90:
        -F9C2A 908F 90
        经过这样修改以后,你不管用哪种方案录入汉字,都有联想功能。
        (1)另外,汉语中最多的是双字词,多次联想无多大意义,所以将多次联想改成单次联想。
        C>DEBUG CCCC.COM
        -U A650
        XXXX:A650 JMP A590
        ……
        -A A650
        XXXX:A650 RET
        XXXX:A651
        (2)用“-”和“=”来代替“,”、“。”实现翻页。“,”键的ASCII码是2CH。“。”键的ASCII码是2EH,差别这两个键的指令及在CCCC.COM文件中对应地址如下:
        CMP AL .2C CMP AL.2E
        9D51 9D55
        A4F6    A512
        A7C0  A7C4
        把前三个指令中的2C全改成“-”的ASCII码2D,把后三个指令中的2E全改成“=”的ASCII码3D,就可以用“-”、“=”键来前后翻页了。