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

📄 kdfro.asm

📁 [随书类]Dos6.0源代码
💻 ASM
📖 第 1 页 / 共 3 页
字号:
          IFF NUM_STATE,NOT            ;;
              XLATT NUMERIC_PAD        ;;
          ENDIFF                       ;;
;;***BD END OF ADDITION
;*******************************************
          XLATT NON_ALPHA_UPPER        ;;
          IFF CAPS_STATE               ;;
              XLATT ALPHA_LOWER        ;;
;;              XLATT NON_ALPHA_LOWER    ;;
          ELSEF                        ;;
              XLATT ALPHA_UPPER        ;;
;;              XLATT NON_ALPHA_UPPER    ;;
          ENDIFF                       ;;
      ELSEF                            ;;
;******************************************
;;***BD ADDED FOR NUMERIC PAD
          IFF NUM_STATE                ;;
              XLATT NUMERIC_PAD        ;;
          ENDIFF                       ;;
;;***BD END OF ADDITION
;******************************************
          XLATT NON_ALPHA_LOWER        ;;
          IFF CAPS_STATE               ;;
             XLATT ALPHA_UPPER         ;;
;;             XLATT NON_ALPHA_UPPER     ;;
          ELSEF                        ;;
             XLATT ALPHA_LOWER         ;;
;;             XLATT NON_ALPHA_LOWER     ;;
          ENDIFF                       ;;
      ENDIFF                           ;;
   ELSEF                               ;;
      IFF EITHER_SHIFT,NOT             ;;
          IFKBD XT_KB+AT_KB      ;;
              IFF  EITHER_CTL          ;;
              ANDF ALT_SHIFT           ;;
                  XLATT THIRD_SHIFT    ;;
              ENDIFF                   ;;
          ELSEF                        ;;
              IFF EITHER_CTL,NOT       ;;
              ANDF R_ALT_SHIFT         ;;
                  XLATT THIRD_SHIFT    ;;
              ENDIFF                   ;;
          ENDIFF                       ;;
      IFKBD AT_KB+XT_KB          ;;
        IFF EITHER_CTL                 ;;
        ANDF ALT_SHIFT                 ;;
          XLATT ALT_CASE               ;;
        ENDIFF                         ;;
      ENDIFF                           ;;
      IFKBD G_KB+P12_KB                ;;
        IFF EITHER_CTL                 ;;
        ANDF ALT_SHIFT                 ;;
          IFF R_ALT_SHIFT,NOT             ;;
            XLATT ALT_CASE                ;;
          ENDIFF                          ;;
        ENDIFF                            ;;
      ENDIFF                              ;;
     ENDIFF                               ;;
   ENDIFF                                 ;;
;IFF EITHER_SHIFT,NOT                     ;;
   IFKBD AT_KB+XT_KB                ;;
     IFF EITHER_CTL,NOT                   ;;
       IFF ALT_SHIFT                      ;; ALT - case
         XLATT ALT_CASE                   ;;
       ENDIFF                             ;;
     ELSEF                                ;;
         XLATT CTRL_CASE                  ;;
     ENDIFF                               ;;
   ENDIFF                                 ;;
                                          ;;
   IFKBD G_KB+P12_KB                      ;;
     IFF EITHER_CTL,NOT                   ;;
       IFF ALT_SHIFT                      ;; ALT - case
       ANDF R_ALT_SHIFT,NOT               ;;
         XLATT ALT_CASE                   ;;
       ENDIFF                             ;;
     ELSEF                                ;;
       IFF EITHER_ALT,NOT                 ;;
         XLATT CTRL_CASE                  ;;
       ENDIFF                             ;;
     ENDIFF                               ;;
     IFF EITHER_CTL                       ;;
     ANDF ALT_SHIFT                       ;;
     ANDF R_ALT_SHIFT,NOT                 ;;
        XLATT ALT_CASE                    ;;
     ENDIFF                               ;;
   ENDIFF                                 ;;
                                          ;;
   EXIT_STATE_LOGIC                       ;;
                                          ;;
LOGIC_END:                                ;;
                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;**********************************************************************
;; HU Common Translate Section
;; This section contains translations for the lower 128 characters
;; only since these will never change from code page to code page.
;; Some common Characters are included from 128 - 165 where appropriate.
;; In addition the dead key "Set Flag" tables are here since the
;; dead keys are on the same keytops for all code pages.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
 PUBLIC RO_COMMON_XLAT                 ;;
RO_COMMON_XLAT:                        ;;
                                       ;;
   DW     COMMON_XLAT_END-$            ;; length of section
   DW     -1                           ;;
                                       ;;
                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: COMMON
;; STATE: low shift Dead_lower
;; KEYBOARD TYPES: G
;; TABLE TYPE: Flag Table
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
;  DW    COM_RO_LO_END-$               ;; length of state section
;  DB    DEAD_LOWER                    ;; State ID
;  DW    ANY_KB                          ;; Keyboard Type
;  DB    -1,-1                         ;; Buffer entry for error character
;                                      ;; Set Flag Table
;  DW    1                             ;; number of entries
;  DB    41                            ;;
;  FLAG  OGONEK                        ;;
                                       ;;
;COM_RO_LO_END:                        ;;
                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: COMMON
;; STATE: low shift Dead_UPPER
;; KEYBOARD TYPES: G
;; TABLE TYPE: Flag Table
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
;  DW    COM_RO_UP_END-$               ;; length of state section
;  DB    DEAD_UPPER                    ;; State ID
;  DW    ANY_KB                          ;; Keyboard Type
;  DB    -1,-1                         ;; Buffer entry for error character
;                                      ;; Set Flag Table
;  DW    1                             ;; number of entries
;  DB    41                            ;;
;  FLAG  OVERDOT                       ;;
;                                      ;;
;COM_RO_UP_END:                        ;;
                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: COMMON
;; STATE: Third Shift Dead Key
;; KEYBOARD TYPES: G
;; TABLE TYPE: Flag Table
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
   DW    COM_RO_TH_END-$               ;; length of state section
   DB    DEAD_THIRD                    ;; State ID
   DW    ANY_KB                          ;; Keyboard Type
   DB    -1,-1                         ;; Buffer entry for error character
                                       ;; Set Flag Table
   DW    10                            ;; number of entries
;; DB    2                             ;; TILDE IS NOT AN ACCENT KEY
;; FLAG  TILDE                         ;;
   DB    3                             ;;
   FLAG  CARON                         ;;
   DB    4                             ;;
   FLAG  CIRCUMFLEX                    ;;
   DB    5                             ;;
   FLAG  BREVE                         ;;
   DB    6                             ;;
   FLAG  OVERCIRCLE                    ;;
   DB    7                             ;;
   FLAG  OGONEK                        ;;
;;   DB    8                             ;; GRAVE IS NOT AN ACCENT KEY (YST)
;;   FLAG  GRAVE                         ;;
   DB    9                             ;;
   FLAG  OVERDOT                       ;;
   DB    10                            ;;
   FLAG  ACUTE                         ;;
   DB    11                            ;;
   FLAG  DOUBLEACUTE                   ;;
   DB    12                            ;;
   FLAG  DIARESIS                      ;;
   DB    13                            ;;
   FLAG  CEDILLA                       ;;
                                       ;;
COM_RO_TH_END:                         ;;
                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;******************************
;;***BD - ADDED FOR NUMERIC PAD (DECIMAL SEPERATOR)
;;******************************
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: COMMON
;; STATE: Numeric Key Pad
;; KEYBOARD TYPES: ANY_KB
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
   DW    COM_PAD_K1_END-$              ;; length of state section
   DB    NUMERIC_PAD                   ;; State ID
   DW    ANY_KB                          ;; Keyboard Type
   DB    -1,-1                         ;; Buffer entry for error character
                                       ;;
   DW    COM_PAD_K1_T1_END-$           ;; Size of xlat table
   DB    STANDARD_TABLE                ;; xlat options:
   DB    1                             ;; number of entries
   DB    83,','                        ;; decimal seperator = ,
COM_PAD_K1_T1_END:                     ;;
                                       ;;
   DW    0                             ;; Size of xlat table - null table
                                       ;;
COM_PAD_K1_END:                        ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;******************************
;;***BD - ADDED FOR ALT CASE
;;******************************
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: COMMON
;; STATE: Alt Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
   DW    COM_ALT_K1_END-$              ;; length of state section
   DB    ALT_CASE                      ;; State ID
   DW    ANY_KB                          ;; Keyboard Type
   DB    -1,-1                         ;; Buffer entry for error character
                                       ;;
   DW    COM_ALT_K1_T1_END-$           ;; Size of xlat table
   DB    TYPE_2_TAB                    ;; xlat options:
   DB    3                             ;; number of entries
   DB    21,0,2CH                      ;;
   DB    44,0,15H                      ;;
   DB    53,0,82H                      ;;
COM_ALT_K1_T1_END:                     ;;
                                       ;;
    DW    0                            ;; Size of xlat table - null table
                                       ;;
COM_ALT_K1_END:                        ;;
                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: COMMON
;; STATE: Ctrl Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
   DW    COM_CTRL_K2_END-$             ;; length of state section
   DB    CTRL_CASE                     ;; State ID
   DW    ANY_KB                          ;; Keyboard Type
   DB    -1,-1                         ;; Buffer entry for error character
                                       ;;
   DW    COM_CTRL_K2_T1_END-$          ;; Size of xlat table
   DB    TYPE_2_TAB                    ;; xlat options:
   DB    3                             ;; number of entries
   DB    21,01AH,2CH                   ;;
   DB    44,019H,15H                   ;;
   DB    53,01FH,0CH                   ;;
COM_CTRL_K2_T1_END:                    ;;
                                       ;;
   DW    0                             ;; Size of xlat table - null table
                                       ;;
COM_CTRL_K2_END:                       ;;
                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CODE PAGE: COM
;; STATE: Alpha Lower Case
;; KEYBOARD TYPES: G
;; TABLE TYPE: Translate
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                                       ;;
   DW    COM_AL_LO_K1_END-$            ;; length of state section
   DB    ALPHA_LOWER                   ;; State ID
   DW    ANY_KB                          ;; Keyboard Type
   DB    -1,-1                         ;; Buffer entry for error character
                                       ;;
   DW    COM_AL_LO_K1_T1_END-$         ;; Size of xlat table
   DB    TYPE_2_TAB                    ;; xlat options:
   DB    2                             ;; number of entries
;;   DB    11,"

⌨️ 快捷键说明

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