diff options
| author | 2024-04-25 21:24:10 +0100 | |
|---|---|---|
| committer | 2024-04-25 22:32:27 +0000 | |
| commit | 2d04cacc5322951f187bb17e017c12920ac8ebe2 (patch) | |
| tree | 80ee017efa878dfd5344b44249e6a241f2a7f6e2 /v4.0/src/DEV/KEYBOARD/KDFNOW.ASM | |
| parent | Merge pull request #430 from jpbaltazar/typoptbr (diff) | |
| download | ms-dos-main.tar.gz ms-dos-main.tar.xz ms-dos-main.zip | |
Diffstat (limited to 'v4.0/src/DEV/KEYBOARD/KDFNOW.ASM')
| -rw-r--r-- | v4.0/src/DEV/KEYBOARD/KDFNOW.ASM | 507 |
1 files changed, 507 insertions, 0 deletions
diff --git a/v4.0/src/DEV/KEYBOARD/KDFNOW.ASM b/v4.0/src/DEV/KEYBOARD/KDFNOW.ASM new file mode 100644 index 0000000..ac2ea78 --- /dev/null +++ b/v4.0/src/DEV/KEYBOARD/KDFNOW.ASM | |||
| @@ -0,0 +1,507 @@ | |||
| 1 | |||
| 2 | |||
| 3 | PAGE ,132 | ||
| 4 | TITLE DOS - Keyboard Definition File | ||
| 5 | |||
| 6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 7 | ;; DOS - - NLS Support - Keyboard Definition File | ||
| 8 | ;; (c) Copyright 1988 Microsoft | ||
| 9 | ;; | ||
| 10 | ;; This the file header and table pointers ONLY. | ||
| 11 | ;; The actual tables are contained in seperate source files. | ||
| 12 | ;; These are: | ||
| 13 | ;; KDFSP.ASM - Spanish | ||
| 14 | ;; KDFPO.ASM - Portuguese | ||
| 15 | ;; KDFGR.ASM - German | ||
| 16 | ;; KDFIT142.ASM - Italian | ||
| 17 | ;; KDFIT.ASM - Italian | ||
| 18 | ;; KDFFR189.ASM - French | ||
| 19 | ;; KDFFR.ASM - French | ||
| 20 | ;; KDFSG.ASM - Swiss German | ||
| 21 | ;; KDFSF.ASM - Swiss French | ||
| 22 | ;; KDFDK.ASM - Danish | ||
| 23 | ;; KDFUK168.ASM - English | ||
| 24 | ;; KDFUK.ASM - English | ||
| 25 | ;; KDFBE.ASM - Belgium | ||
| 26 | ;; KDFNL.ASM - Netherlands | ||
| 27 | ;; KDFNO.ASM - Norway | ||
| 28 | ;; KDFLA.ASM - Latin American | ||
| 29 | ;; KDFSV.ASM - SWEDEN -----> This moddule is used for both Sweden | ||
| 30 | ;; and Finland - exact same template | ||
| 31 | ;; KDFSU.ASM - Finland -----> Same module as Sweden eliminated | ||
| 32 | ;; Dummy US - US | ||
| 33 | ;; Linkage Instructions: | ||
| 34 | ;; The following instructions are contained in KDFLINK.BAT: | ||
| 35 | ;; | ||
| 36 | ;; LINK KDF+KDFSP+KDFGE+KDFFR+KDFIT+KDFPO+KDFUK+KDFSG+KDFDK+KDFEOF; | ||
| 37 | ;; EXE2BIN KDF.EXE KEYBOARD.SYS | ||
| 38 | ;; | ||
| 39 | ;; DCL, March 8, 1988 - swapped 437/850 to 850/437 for SG & SF | ||
| 40 | ;; DCL, March 8, 1988 - uncommented SU(finland)& swapped 437/850 to 850/437 | ||
| 41 | ;; as the Finnish want 850/437 vs. 437/850 for Sweden | ||
| 42 | ;; did not alter the pointer to kbid 153 to Sweden | ||
| 43 | ;; CNS April 14 1988 - swapped 437/850 to 850/437 for SP & LA | ||
| 44 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 45 | ;; | ||
| 46 | ;; | ||
| 47 | CODE SEGMENT PUBLIC 'CODE' ;; | ||
| 48 | ASSUME CS:CODE,DS:CODE ;; | ||
| 49 | ;; | ||
| 50 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 51 | ;;*************************************** | ||
| 52 | ;; File Header | ||
| 53 | ;;*************************************** | ||
| 54 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 55 | ;; | ||
| 56 | DB 0FFh,'KEYB ' ;; signature | ||
| 57 | DB 8 DUP(0) ;; reserved | ||
| 58 | DW 650 ;; maximum size of Common Xlat Sect | ||
| 59 | DW 350 ;; max size of Specific Xlat Sect | ||
| 60 | DW 400 ;; max size of State Logic | ||
| 61 | DW 0 ;;AC000;reserved | ||
| 62 | DW 19 ;;AC000 number of IDs | ||
| 63 | DW 17 ;;AC000 number of languages | ||
| 64 | DB 'GR' ;; LANGUAGE CODE TABLE | ||
| 65 | DW OFFSET GE_LANG_ENT,0 ;; | ||
| 66 | DB 'SP' ;; | ||
| 67 | DW OFFSET SP_LANG_ENT,0 ;; | ||
| 68 | DB 'PO' ;; | ||
| 69 | DW OFFSET PO_LANG_ENT,0 ;; | ||
| 70 | DB 'FR' ;; | ||
| 71 | DW OFFSET FR2_LANG_ENT,0 ;; | ||
| 72 | DB 'DK' ;; | ||
| 73 | DW OFFSET DK_LANG_ENT,0 ;; | ||
| 74 | DB 'SG' ;; | ||
| 75 | DW OFFSET SG_LANG_ENT,0 ;; | ||
| 76 | DB 'IT' ;; | ||
| 77 | DW OFFSET IT2_LANG_ENT,0 ;; | ||
| 78 | DB 'UK' ;; | ||
| 79 | DW OFFSET UK2_LANG_ENT,0 ;; | ||
| 80 | DB 'SF' ;; | ||
| 81 | DW OFFSET SF_LANG_ENT,0 ;; | ||
| 82 | DB 'BE' ;; | ||
| 83 | DW OFFSET BE_LANG_ENT,0 ;; | ||
| 84 | DB 'NL' ;; | ||
| 85 | DW OFFSET NL_LANG_ENT,0 ;; | ||
| 86 | DB 'NO' ;; | ||
| 87 | DW OFFSET NO_LANG_ENT,0 ;; | ||
| 88 | DB 'CF' ;; | ||
| 89 | DW OFFSET CF_LANG_ENT,0 ;; | ||
| 90 | DB 'SV' ;; | ||
| 91 | DW OFFSET SV_LANG_ENT,0 ;; | ||
| 92 | DB 'SU' ;; | ||
| 93 | DW OFFSET Su_LANG_ENT,0 ;; | ||
| 94 | DB 'LA' ;; | ||
| 95 | DW OFFSET LA_LANG_ENT,0 ;; | ||
| 96 | DB 'US' ;; | ||
| 97 | DW OFFSET DUMMY_ENT,0 ;; | ||
| 98 | DW 172 ;;AN000;ID CODE TABLE *************************** | ||
| 99 | DW OFFSET SP_LANG_ENT,0 ;;AN000; | ||
| 100 | DW 163 ;;AN000; | ||
| 101 | DW OFFSET PO_LANG_ENT,0 ;;AN000; | ||
| 102 | DW 120 ;;AN000; | ||
| 103 | DW OFFSET FR1_LANG_ENT,0 ;;AN000; | ||
| 104 | DW 189 ;;AN000; | ||
| 105 | DW OFFSET FR2_LANG_ENT,0 ;;AN000; | ||
| 106 | DW 159 ;;AN000; | ||
| 107 | DW OFFSET DK_LANG_ENT,0 ;;AN000; | ||
| 108 | DW 000 ;;AN000; | ||
| 109 | DW OFFSET SG_LANG_ENT,0 ;;AN000; | ||
| 110 | DW 129 ;;AN000; | ||
| 111 | DW OFFSET GE_LANG_ENT,0 ;;AN000; | ||
| 112 | DW 142 ;;AN000; | ||
| 113 | DW OFFSET IT1_LANG_ENT,0 ;;AN000; | ||
| 114 | DW 141 ;;AN000; | ||
| 115 | DW OFFSET IT2_LANG_ENT,0 ;;AN000; | ||
| 116 | DW 168 ;;AN000; | ||
| 117 | DW OFFSET UK1_LANG_ENT,0 ;;AN000; | ||
| 118 | DW 166 ;;AN000; | ||
| 119 | DW OFFSET UK2_LANG_ENT,0 ;;AN000; | ||
| 120 | DW 150 ;;AN000; | ||
| 121 | DW OFFSET SF_LANG_ENT,0 ;;AN000; | ||
| 122 | DW 120 ;;AN000; | ||
| 123 | DW OFFSET BE_LANG_ENT,0 ;;AN000; | ||
| 124 | DW 143 ;;AN000; | ||
| 125 | DW OFFSET NL_LANG_ENT,0 ;;AN000; | ||
| 126 | DW 155 ;;AN000; | ||
| 127 | DW OFFSET NO_LANG_ENT,0 ;;AN000; | ||
| 128 | DW 058 ;;AN000; | ||
| 129 | DW OFFSET CF_LANG_ENT,0 ;;AN000; | ||
| 130 | DW 153 ;;AN000; | ||
| 131 | DW OFFSET SV_LANG_ENT,0 ;;AN000; | ||
| 132 | DW 171 ;;AN000; | ||
| 133 | DW OFFSET LA_LANG_ENT,0 ;;AN000; | ||
| 134 | DW 103 ;;AN000; | ||
| 135 | DW OFFSET DUMMY_ENT,0 ;;AN000; | ||
| 136 | ; ;; | ||
| 137 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 138 | ;;*************************************** | ||
| 139 | ;; Language Entries | ||
| 140 | ;;*************************************** | ||
| 141 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 142 | ;; | ||
| 143 | EXTRN SP_LOGIC:NEAR ;; | ||
| 144 | EXTRN SP_437_XLAT:NEAR ;; | ||
| 145 | EXTRN SP_850_XLAT:NEAR ;; | ||
| 146 | ;; | ||
| 147 | SP_LANG_ENT: ;; language entry for SPANISH | ||
| 148 | DB 'SP' ;; | ||
| 149 | DW 172 ;; AN000;ID entry (ID CODE) | ||
| 150 | DW OFFSET SP_LOGIC,0 ;; pointer to LANG kb table | ||
| 151 | DB 1 ;; AN000;number of IDs | ||
| 152 | DB 2 ;; number of code pages | ||
| 153 | DW 850 ;; code page | ||
| 154 | DW OFFSET SP_850_XLAT,0 ;; table pointer | ||
| 155 | DW 437 ;; code page | ||
| 156 | DW OFFSET SP_437_XLAT,0 ;; table pointer | ||
| 157 | ;; | ||
| 158 | ;***************************************************************************** | ||
| 159 | EXTRN FR1_LOGIC:NEAR ;;AN000; | ||
| 160 | EXTRN FR1_437_XLAT:NEAR ;;AN000; | ||
| 161 | EXTRN FR1_850_XLAT:NEAR ;;AN000; | ||
| 162 | ;; | ||
| 163 | FR1_LANG_ENT: ;;AN000; language entry for FRANCE | ||
| 164 | DB 'FR' ;;AN000; SECONDARY KEYBOARD ID VALUE | ||
| 165 | DW 120 ;;AN000; ID entry | ||
| 166 | DW OFFSET FR1_LOGIC,0 ;;AN000; pointer to LANG kb table | ||
| 167 | DB 2 ;;AN000; number of code pages | ||
| 168 | DB 2 ;;AN000; number of ids | ||
| 169 | DW 437 ;;AN000; code page | ||
| 170 | DW OFFSET FR1_437_XLAT,0 ;;AN000; table pointer | ||
| 171 | DW 850 ;;AN000; code page | ||
| 172 | DW OFFSET FR1_850_XLAT,0 ;;AN000; table pointer | ||
| 173 | ;;AN000; | ||
| 174 | ;***************************************************************************** | ||
| 175 | EXTRN FR2_LOGIC:NEAR ;;AC000; | ||
| 176 | EXTRN FR2_437_XLAT:NEAR ;;AC000; | ||
| 177 | EXTRN FR2_850_XLAT:NEAR ;;AC000; | ||
| 178 | ;; | ||
| 179 | FR2_LANG_ENT: ;; language entry for FRANCE | ||
| 180 | DB 'FR' ;; PRIMARY KEYBOARD ID VALUE | ||
| 181 | DW 189 ;;AC000; ID entry | ||
| 182 | DW OFFSET FR2_LOGIC,0 ;;AC000; pointer to LANG kb table | ||
| 183 | DB 1 ;;AC000; number of ids | ||
| 184 | DB 2 ;;AC000; number of code pages | ||
| 185 | DW 437 ;;AC000; code page | ||
| 186 | DW OFFSET FR2_437_XLAT,0 ;;AC000; table pointer | ||
| 187 | DW 850 ;;AC000; code page | ||
| 188 | DW OFFSET FR2_850_XLAT,0 ;;AC000; table pointer | ||
| 189 | ;; | ||
| 190 | ;**************************************************************************** | ||
| 191 | EXTRN PO_LOGIC:NEAR ;;AC000; | ||
| 192 | EXTRN PO_850_XLAT:NEAR ;;AC000; | ||
| 193 | EXTRN PO_860_XLAT:NEAR ;;AC000; | ||
| 194 | ;; | ||
| 195 | PO_LANG_ENT: ;; language entry for PORTUGAL | ||
| 196 | DB 'PO' ;; | ||
| 197 | DW 163 ;;AN000; ID entry | ||
| 198 | DW OFFSET PO_LOGIC,0 ;; pointer to LANG kb table | ||
| 199 | DB 1 ;;AC000; number of ids | ||
| 200 | DB 2 ;;AC000; number of code pages | ||
| 201 | DW 850 ;;AC000; code page | ||
| 202 | DW OFFSET PO_850_XLAT,0 ;;AC000; table pointer | ||
| 203 | DW 860 ;;AC000; code page | ||
| 204 | DW OFFSET PO_860_XLAT,0 ;;AC000; table pointer | ||
| 205 | ;; | ||
| 206 | ;***************************************************************************** | ||
| 207 | EXTRN DK_LOGIC:NEAR ;; | ||
| 208 | EXTRN DK_850_XLAT:NEAR ;;AC000; | ||
| 209 | EXTRN DK_865_XLAT:NEAR ;;AC000; | ||
| 210 | ;; | ||
| 211 | DK_LANG_ENT: ;; language entry for DENMARK | ||
| 212 | DB 'DK' ;; | ||
| 213 | DW 159 ;;AN000; ID entry | ||
| 214 | DW OFFSET DK_LOGIC,0 ;; pointer to LANG kb table | ||
| 215 | DB 1 ;;AN000;number of ids | ||
| 216 | DB 2 ;;AC000; number of code pages | ||
| 217 | DW 850 ;;AC000; code page | ||
| 218 | DW OFFSET DK_850_XLAT,0 ;;AC000; table pointer | ||
| 219 | DW 865 ;;AC000; code page | ||
| 220 | DW OFFSET DK_865_XLAT,0 ;;AC000; table pointer | ||
| 221 | ;; | ||
| 222 | ;***************************************************************************** | ||
| 223 | EXTRN SG_LOGIC:NEAR ;; | ||
| 224 | EXTRN SG_850_XLAT:NEAR ;; | ||
| 225 | EXTRN SG_437_XLAT:NEAR ;; | ||
| 226 | ;; | ||
| 227 | SG_LANG_ENT: ;; language entry for SWISS GERMAN | ||
| 228 | DB 'SG' ;; | ||
| 229 | DW 000 ;;AN001; ID entry | ||
| 230 | DW OFFSET SG_LOGIC,0 ;; pointer to LANG kb table | ||
| 231 | DB 1 ;;AN000; number of ids | ||
| 232 | DB 2 ;;AC000; number of code pages | ||
| 233 | DW 850 ;; code page ;;;dcl 850 now default March 8, 1988 | ||
| 234 | DW OFFSET SG_850_XLAT,0 ;; table pointer | ||
| 235 | DW 437 ;; code page | ||
| 236 | DW OFFSET SG_437_XLAT,0 ;; table pointer | ||
| 237 | ;; | ||
| 238 | ;***************************************************************************** | ||
| 239 | EXTRN SF_LOGIC:NEAR ;; | ||
| 240 | EXTRN SF_850_XLAT:NEAR ;; | ||
| 241 | EXTRN SF_437_XLAT:NEAR ;; | ||
| 242 | ;; | ||
| 243 | SF_LANG_ENT: ;; language entry for SWISS FRENCH | ||
| 244 | DB 'SF' ;; | ||
| 245 | DW 150 ;;AN000; ID entry | ||
| 246 | DW OFFSET SF_LOGIC,0 ;; pointer to LANG kb table | ||
| 247 | DB 1 ;;AN000; number of ids | ||
| 248 | DB 2 ;;AC000; number of code pages | ||
| 249 | DW 850 ;; code page ;;;dcl 850 now default March 8, 1988 | ||
| 250 | DW OFFSET SF_850_XLAT,0 ;; table pointer | ||
| 251 | DW 437 ;; code page | ||
| 252 | DW OFFSET SF_437_XLAT,0 ;; table pointer | ||
| 253 | ;; | ||
| 254 | ;***************************************************************************** | ||
| 255 | EXTRN GE_LOGIC:NEAR ;; | ||
| 256 | EXTRN GE_437_XLAT:NEAR ;; | ||
| 257 | EXTRN GE_850_XLAT:NEAR ;; | ||
| 258 | ;; | ||
| 259 | GE_LANG_ENT: ;; language entry for GERMANY | ||
| 260 | DB 'GR' ;; | ||
| 261 | DW 129 ;;AN000; ID entry | ||
| 262 | DW OFFSET GE_LOGIC,0 ;; pointer to LANG kb table | ||
| 263 | DB 1 ;;AN000; number of ids | ||
| 264 | DB 2 ;;AC000; number of code pages | ||
| 265 | DW 437 ;; code page | ||
| 266 | DW OFFSET GE_437_XLAT,0 ;; table pointer | ||
| 267 | DW 850 ;; code page | ||
| 268 | DW OFFSET GE_850_XLAT,0 ;; table pointer | ||
| 269 | ;; | ||
| 270 | ;***************************************************************************** | ||
| 271 | EXTRN IT1_LOGIC:NEAR ;;AN000; | ||
| 272 | EXTRN IT1_437_XLAT:NEAR ;;AN000; | ||
| 273 | EXTRN IT1_850_XLAT:NEAR ;;AN000; | ||
| 274 | ;; | ||
| 275 | IT1_LANG_ENT: ;;AN000; language entry for ITALY | ||
| 276 | DB 'IT' ;;AN000; SECONDARY KEYBOARD ID VALUE | ||
| 277 | DW 142 ;;AN000; ID entry | ||
| 278 | DW OFFSET IT1_LOGIC,0 ;;AN000; pointer to LANG kb table | ||
| 279 | DB 2 ;;AN000;number of ids | ||
| 280 | DB 2 ;;AN000; number of code pages | ||
| 281 | DW 437 ;;AN000; code page | ||
| 282 | DW OFFSET IT1_437_XLAT,0 ;;AN000; table pointer | ||
| 283 | DW 850 ;;AN000; code page | ||
| 284 | DW OFFSET IT1_850_XLAT,0 ;;AN000; table pointer | ||
| 285 | ;; | ||
| 286 | ;***************************************************************************** | ||
| 287 | EXTRN IT2_LOGIC:NEAR ;; | ||
| 288 | EXTRN IT2_437_XLAT:NEAR ;; | ||
| 289 | EXTRN IT2_850_XLAT:NEAR ;; | ||
| 290 | ;; | ||
| 291 | IT2_LANG_ENT: ;;AC000; language entry for ITALY | ||
| 292 | DB 'IT' ;;AC000; PRIMARY KEYBOARD ID VALUE | ||
| 293 | DW 141 ;;AN000; ID entry | ||
| 294 | DW OFFSET IT2_LOGIC,0 ;;AN000; pointer to LANG kb table | ||
| 295 | DB 1 ;;AC000; number of ids | ||
| 296 | DB 2 ;;AC000; number of code pages | ||
| 297 | DW 437 ;;AC000; code page | ||
| 298 | DW OFFSET IT2_437_XLAT,0 ;;AC000; table pointer | ||
| 299 | DW 850 ;;AC000; code page | ||
| 300 | DW OFFSET IT2_850_XLAT,0 ;;AC000; table pointer | ||
| 301 | ;; | ||
| 302 | ;***************************************************************************** | ||
| 303 | EXTRN UK1_LOGIC:FAR ;;AN000; | ||
| 304 | EXTRN UK1_437_XLAT:FAR ;;AN000; | ||
| 305 | EXTRN UK1_850_XLAT:FAR ;;AN000; | ||
| 306 | ;; | ||
| 307 | UK1_LANG_ENT: ;;AN000; language entry for UNITED KINGDOM | ||
| 308 | DB 'UK' ;;AN000; SECONDARY KEYBOARD ID VALUE | ||
| 309 | DW 168 ;;AN000; ID entry | ||
| 310 | DW OFFSET UK1_LOGIC,0 ;;AN000; pointer to LANG kb table | ||
| 311 | DB 2 ;;AN000; number of ids | ||
| 312 | DB 2 ;;AN000; number of code pages | ||
| 313 | DW 437 ;;AN000; code page | ||
| 314 | DW OFFSET UK1_437_XLAT,0 ;;AN000; table pointer | ||
| 315 | DW 850 ;;AN000; code page | ||
| 316 | DW OFFSET UK1_850_XLAT,0 ;;AN000; table pointer | ||
| 317 | ;; | ||
| 318 | ;***************************************************************************** | ||
| 319 | EXTRN UK2_LOGIC:FAR ;;AC000; | ||
| 320 | EXTRN UK2_437_XLAT:FAR ;;AC000; | ||
| 321 | EXTRN UK2_850_XLAT:FAR ;;AC000; | ||
| 322 | ;; | ||
| 323 | UK2_LANG_ENT: ;;AN000; language entry for UNITED KINGDOM | ||
| 324 | DB 'UK' ;;AC000; PRIMARY KEYBOARD ID VALUE | ||
| 325 | DW 166 ;;AC000; ID entry | ||
| 326 | DW OFFSET UK2_LOGIC,0 ;;AC000; pointer to LANG kb table | ||
| 327 | DB 1 ;; AN000;number of ids | ||
| 328 | DB 2 ;;AN000; number of code pages | ||
| 329 | DW 437 ;;AC000; code page | ||
| 330 | DW OFFSET UK2_437_XLAT,0 ;;AC000; table pointer | ||
| 331 | DW 850 ;;AC000; code page | ||
| 332 | DW OFFSET UK2_850_XLAT,0 ;;AC000; table pointer | ||
| 333 | ;; | ||
| 334 | ;***************************************************************************** | ||
| 335 | EXTRN BE_LOGIC:NEAR ;; | ||
| 336 | EXTRN BE_437_XLAT:NEAR ;; | ||
| 337 | EXTRN BE_850_XLAT:NEAR ;; | ||
| 338 | ;; | ||
| 339 | BE_LANG_ENT: ;; language entry for BELGIUM | ||
| 340 | DB 'BE' ;; | ||
| 341 | DW 120 ;;AN000; ID entry | ||
| 342 | DW OFFSET BE_LOGIC,0 ;; pointer to LANG kb table | ||
| 343 | DB 1 ;;AN000; number of ids | ||
| 344 | DB 2 ;;AN000; number of code pages | ||
| 345 | DW 850 ;; code page ;; default to 850 - same as country.sys | ||
| 346 | DW OFFSET BE_850_XLAT,0 ;; table pointer | ||
| 347 | DW 437 ;; code page | ||
| 348 | DW OFFSET BE_437_XLAT,0 ;; table pointer | ||
| 349 | ;; | ||
| 350 | ;***************************************************************************** | ||
| 351 | ;***************************************************************************** | ||
| 352 | EXTRN NL_LOGIC:NEAR ;; | ||
| 353 | EXTRN NL_437_XLAT:NEAR ;; | ||
| 354 | EXTRN NL_850_XLAT:NEAR ;; | ||
| 355 | ;; | ||
| 356 | NL_LANG_ENT: ;; language entry for NETHERLANDS | ||
| 357 | DB 'NL' ;; | ||
| 358 | DW 143 ;;AN000; ID entry | ||
| 359 | DW OFFSET NL_LOGIC,0 ;; pointer to LANG kb table | ||
| 360 | DB 1 ;;AN000; number of ids | ||
| 361 | DB 2 ;;AN000; number of code pages | ||
| 362 | DW 437 ;; code page | ||
| 363 | DW OFFSET NL_437_XLAT,0 ;; table pointer | ||
| 364 | DW 850 ;; code page | ||
| 365 | DW OFFSET NL_850_XLAT,0 ;; table pointer | ||
| 366 | ;; | ||
| 367 | ;***************************************************************************** | ||
| 368 | ;***************************************************************************** | ||
| 369 | EXTRN NO_LOGIC:NEAR ;; | ||
| 370 | EXTRN NO_850_XLAT:NEAR ;;AC000; | ||
| 371 | EXTRN NO_865_XLAT:NEAR ;;AC000; | ||
| 372 | ;; | ||
| 373 | NO_LANG_ENT: ;; language entry for NORWAY | ||
| 374 | DB 'NO' ;; | ||
| 375 | DW 155 ;;AN000; ID entry | ||
| 376 | DW OFFSET NO_LOGIC,0 ;; pointer to LANG kb table | ||
| 377 | DB 1 ;;AN000; number of ids | ||
| 378 | DB 2 ;;AN000; number of code pages | ||
| 379 | DW 850 ;;AC000; code page | ||
| 380 | DW OFFSET NO_850_XLAT,0 ;;AC000; table pointer | ||
| 381 | DW 865 ;;AC000; code page | ||
| 382 | DW OFFSET NO_865_XLAT,0 ;;AC000; table pointer | ||
| 383 | ;; | ||
| 384 | ;***************************************************************************** | ||
| 385 | ;***************************************************************************** | ||
| 386 | EXTRN SV_LOGIC:NEAR ;; | ||
| 387 | EXTRN SV_437_XLAT:NEAR ;; | ||
| 388 | EXTRN SV_850_XLAT:NEAR ;; | ||
| 389 | ;; | ||
| 390 | SV_LANG_ENT: ;; language entry for SWEDEN | ||
| 391 | DB 'SV' ;; | ||
| 392 | DW 153 ;;AN000; ID entry | ||
| 393 | DW OFFSET SV_LOGIC,0 ;; pointer to LANG kb table | ||
| 394 | DB 1 ;;AN000; number of ids | ||
| 395 | DB 2 ;;AN000; number of code pages | ||
| 396 | DW 437 ;; code page | ||
| 397 | DW OFFSET SV_437_XLAT,0 ;; table pointer | ||
| 398 | DW 850 ;; code page | ||
| 399 | DW OFFSET SV_850_XLAT,0 ;; table pointer | ||
| 400 | ;; | ||
| 401 | ;***************************************************************************** | ||
| 402 | ;***************************************************************************** | ||
| 403 | ;; Already declared external above | ||
| 404 | ;; EXTRN Sv_LOGIC:NEAR ;; Finland & Sweden have same layout, | ||
| 405 | ;; EXTRN Sv_437_XLAT:NEAR ;; but different code page defaults, | ||
| 406 | ;; EXTRN Sv_850_XLAT:NEAR ;; use Sweden data for Finland | ||
| 407 | ;; | ||
| 408 | SU_LANG_ENT: ;; language entry for FINLAND | ||
| 409 | DB 'SU' ;; | ||
| 410 | DW 153 ;; ID entry | ||
| 411 | DW OFFSET Sv_LOGIC,0 ;; pointer to LANG kb table | ||
| 412 | DB 1 ;; number of ids | ||
| 413 | DB 2 ;; number of code pages | ||
| 414 | DW 850 ;; code page ;;;dcl 850 now default, March 8, 1988 | ||
| 415 | DW OFFSET Sv_850_XLAT,0 ;; table pointer | ||
| 416 | DW 437 ;; code page | ||
| 417 | DW OFFSET Sv_437_XLAT,0 ;; table pointer | ||
| 418 | ;; | ||
| 419 | ;***************************************************************************** | ||
| 420 | ;***************************************************************************** | ||
| 421 | EXTRN CF_LOGIC:NEAR ;; | ||
| 422 | EXTRN CF_863_XLAT:NEAR ;; | ||
| 423 | EXTRN CF_850_XLAT:NEAR ;; | ||
| 424 | ;; | ||
| 425 | CF_LANG_ENT: ;; language entry for Canadian-French | ||
| 426 | DB 'CF' ;; | ||
| 427 | DW 058 ;; ID entry | ||
| 428 | DW OFFSET CF_LOGIC,0 ;; pointer to LANG kb table | ||
| 429 | DB 1 ;; number of ids | ||
| 430 | DB 2 ;; number of code pages | ||
| 431 | DW 863 ;; code page | ||
| 432 | DW OFFSET CF_863_XLAT,0 ;; table pointer | ||
| 433 | DW 850 ;; code page | ||
| 434 | DW OFFSET CF_850_XLAT,0 ;; table pointer | ||
| 435 | ;; | ||
| 436 | ;***************************************************************************** | ||
| 437 | EXTRN LA_LOGIC:NEAR ;; | ||
| 438 | EXTRN LA_850_XLAT:NEAR ;; | ||
| 439 | EXTRN LA_437_XLAT:NEAR ;; | ||
| 440 | ;; | ||
| 441 | LA_LANG_ENT: ;; language entry for LATIN AMERICAN | ||
| 442 | DB 'LA' ;; | ||
| 443 | DW 171 ;;AN000; ID entry | ||
| 444 | DW OFFSET LA_LOGIC,0 ;; pointer to LANG kb table | ||
| 445 | DB 1 ;;AN000; number of ids | ||
| 446 | DB 2 ;;AN000; number of code pages | ||
| 447 | DW 850 ;; code page | ||
| 448 | DW OFFSET LA_850_XLAT,0 ;; table pointer | ||
| 449 | DW 437 ;; code page ; default to 437 -same as country.sys | ||
| 450 | DW OFFSET LA_437_XLAT,0 ;; table pointer | ||
| 451 | ;; | ||
| 452 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 453 | ;; | ||
| 454 | DUMMY_ENT: ;; language entry | ||
| 455 | DB 'XX' ;; | ||
| 456 | DW 103 ;;AC000; ID entry | ||
| 457 | DW OFFSET DUMMY_LOGIC,0 ;; pointer to LANG kb table | ||
| 458 | DB 1 ;;AC000; number of ids | ||
| 459 | DB 5 ;;AC000; number of code pages | ||
| 460 | DW 437 ;; code page | ||
| 461 | DW OFFSET DUMMY_XLAT_437,0 ;; table pointer | ||
| 462 | DW 850 ;; code page | ||
| 463 | DW OFFSET DUMMY_XLAT_850,0 ;; table pointer | ||
| 464 | DW 860 ;; code page | ||
| 465 | DW OFFSET DUMMY_XLAT_860,0 ;; table pointer | ||
| 466 | DW 863 ;; code page | ||
| 467 | DW OFFSET DUMMY_XLAT_863,0 ;; table pointer | ||
| 468 | DW 865 ;; code page | ||
| 469 | DW OFFSET DUMMY_XLAT_865,0 ;; table pointer | ||
| 470 | ;; | ||
| 471 | DUMMY_LOGIC: ;; | ||
| 472 | DW LOGIC_END-$ ;; length | ||
| 473 | DW 0 ;; special features | ||
| 474 | DB 92H,0,0 ;; EXIT_STATE_LOGIC_COMMAND | ||
| 475 | LOGIC_END: ;; | ||
| 476 | ;; | ||
| 477 | DUMMY_XLAT_437: ;; | ||
| 478 | DW 6 ;; length of section | ||
| 479 | DW 437 ;; code page | ||
| 480 | DW 0 ;; LAST STATE | ||
| 481 | ;; | ||
| 482 | DUMMY_XLAT_850: ;; | ||
| 483 | DW 6 ;; length of section | ||
| 484 | DW 850 ;; code page | ||
| 485 | DW 0 ;; LAST STATE | ||
| 486 | ;; | ||
| 487 | DUMMY_XLAT_860: ;; | ||
| 488 | DW 6 ;; length of section | ||
| 489 | DW 860 ;; code page | ||
| 490 | DW 0 ;; LAST STATE | ||
| 491 | ;; | ||
| 492 | DUMMY_XLAT_865: ;; | ||
| 493 | DW 6 ;; length of section | ||
| 494 | DW 865 ;; code page | ||
| 495 | DW 0 ;; LAST STATE | ||
| 496 | ;; | ||
| 497 | DUMMY_XLAT_863: ;; | ||
| 498 | DW 6 ;; length of section | ||
| 499 | DW 863 ;; code page | ||
| 500 | DW 0 ;; LAST STATE | ||
| 501 | ;; | ||
| 502 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 503 | ;***************************************************************************** | ||
| 504 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||
| 505 | ;; | ||
| 506 | CODE ENDS ;; | ||
| 507 | END ;; | ||