diff --git a/kernel/country.asm b/kernel/country.asm index 5676452..65269bf 100644 --- a/kernel/country.asm +++ b/kernel/country.asm @@ -41,7 +41,7 @@ db 0FFh,"COUNTRY",0,0,0,0,0,0,0,0,1,0,1 ; reserved and undocumented values dd ent ; first entry -ent dw 162; number of entries - don't forget to update when adding a new country +ent dw 171; number of entries - don't forget to update when adding a new country ; entries ; (size, country, codepage, reserved(2), offset) @@ -256,6 +256,24 @@ __bg_850 dw 12,359,850,0,0 dd _bg_850 __bg_858 dw 12,359,858,0,0 dd _bg_858 +__bg_866 dw 12,359,866,0,0 + dd _bg_866 +__bg_808 dw 12,359,808,0,0 + dd _bg_808 +__bg_849 dw 12,359,849,0,0 + dd _bg_849 +__bg_1131 dw 12,359,1131,0,0 + dd _bg_1131 +__bg_30033 dw 12,359,30033,0,0 + dd _bg_30033 +__by_849 dw 12,375,849,0,0 + dd _by_849 +__by_1131 dw 12,375,1131,0,0 + dd _by_1131 +__by_850 dw 12,375,850,0,0 + dd _by_850 +__by_858 dw 12,375,858,0,0 + dd _by_858 __ua_848 dw 12,380,848,0,0 dd _ua_848 __ua_1125 dw 12,380,1125,0,0 @@ -1944,6 +1962,155 @@ _bg_858 dw 7 dd dbcs_empty dw 6,35 dd bg_yn +_bg_866 dw 8 + dw 6,1 + dd bg_866 + dw 6,2 + dd ucase_866 + dw 6,3 + dd lcase_866 + dw 6,4 + dd ucase_866 + dw 6,5 + dd fchar + dw 6,6 + dd bg_collate_866 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd bg_yn_866 +_bg_808 dw 8 + dw 6,1 + dd bg_808 + dw 6,2 + dd ucase_808 + dw 6,3 + dd lcase_808 + dw 6,4 + dd ucase_808 + dw 6,5 + dd fchar + dw 6,6 + dd bg_collate_808 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd bg_yn_808 +_bg_849 dw 8 + dw 6,1 + dd bg_849 + dw 6,2 + dd ucase_849 + dw 6,3 + dd lcase_849 + dw 6,4 + dd ucase_849 + dw 6,5 + dd fchar + dw 6,6 + dd bg_collate_849 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd bg_yn_849 +_bg_1131 dw 8 + dw 6,1 + dd bg_1131 + dw 6,2 + dd ucase_1131 + dw 6,3 + dd lcase_1131 + dw 6,4 + dd ucase_1131 + dw 6,5 + dd fchar + dw 6,6 + dd bg_collate_1131 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd bg_yn_1131 +_bg_30033 dw 8 + dw 6,1 + dd bg_30033 + dw 6,2 + dd ucase_30033 + dw 6,3 + dd lcase_30033 + dw 6,4 + dd ucase_30033 + dw 6,5 + dd fchar + dw 6,6 + dd bg_collate_30033 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd bg_yn_30033 +_by_849 dw 8 + dw 6,1 + dd by_849 + dw 6,2 + dd ucase_849 + dw 6,3 + dd lcase_849 + dw 6,4 + dd ucase_849 + dw 6,5 + dd fchar + dw 6,6 + dd by_collate_849 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd by_yn_849 +_by_1131 dw 8 + dw 6,1 + dd by_1131 + dw 6,2 + dd ucase_1131 + dw 6,3 + dd lcase_1131 + dw 6,4 + dd ucase_1131 + dw 6,5 + dd fchar + dw 6,6 + dd by_collate_1131 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd by_yn_1131 +_by_850 dw 7 + dw 6,1 + dd by_850 + dw 6,2 + dd ucase_850 + dw 6,4 + dd ucase_850 + dw 6,5 + dd fchar + dw 6,6 + dd by_collate_850 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd by_yn +_by_858 dw 7 + dw 6,1 + dd by_858 + dw 6,2 + dd ucase_858 + dw 6,4 + dd ucase_858 + dw 6,5 + dd fchar + dw 6,6 + dd by_collate_858 + dw 6,7 + dd dbcs_empty + dw 6,35 + dd by_yn _ua_848 dw 8 dw 6,1 dd ua_848 @@ -2952,10 +3119,19 @@ pt_858 cnf 351,858,DMY,0D5h, 0,0,0,0,".",",","-",":",0,2,_24; Portugal fi_850 cnf 358,850,DMY,"E","U","R",0,0," ",",",".",".",3,2,_24; Finland Wolf fi_858 cnf 358,858,DMY,0D5h, 0,0,0,0," ",",",".",".",3,2,_24; Finland fi_437 cnf 358,437,DMY,"E","U","R",0,0," ",",",".",".",3,2,_24; -bg_855 cnf 359,855,DMY,0D0h,0EBh,0,0,0," ",",",".",",",3,2,_24; Bulgaria Lucho -bg_872 cnf 359,872,DMY,0D0h,0EBh,0,0,0," ",",",".",",",3,2,_24; Bulgaria Lucho -bg_850 cnf 359,850,DMY,"B","G","L",0,0," ",",",".",",",3,2,_24; Bulgaria -bg_858 cnf 359,858,DMY,"B","G","L",0,0," ",",",".",",",3,2,_24; Bulgaria +bg_855 cnf 359,855,DMY,0D0h,0EBh,".",0,0," ",",",".",",",3,2,_24; Bulgaria Lucho&RDPK7 +bg_872 cnf 359,872,DMY,0D0h,0EBh,".",0,0," ",",",".",",",3,2,_24; Bulgaria Lucho&RDPK7 +bg_850 cnf 359,850,DMY,"B","G","N",0,0," ",",",".",",",3,2,_24; Bulgaria RDPK7 +bg_858 cnf 359,858,DMY,"B","G","N",0,0," ",",",".",",",3,2,_24; Bulgaria RDPK7 +bg_866 cnf 359,866,DMY,0ABh,0A2h,".",0,0," ",",",".",",",3,2,_24; Bulgaria +bg_808 cnf 359,808,DMY,0ABh,0A2h,".",0,0," ",",",".",",",3,2,_24; Bulgaria +bg_849 cnf 359,849,DMY,0ABh,0A2h,".",0,0," ",",",".",",",3,2,_24; Bulgaria +bg_1131 cnf 359,1131,DMY,0ABh,0A2h,".",0,0," ",",",".",",",3,2,_24; Bulgaria +bg_30033 cnf 359,30033,DMY,0ABh,0A2h,".",0,0," ",",",".",",",3,2,_24; Bulgaria RDPK7 +by_849 cnf 375,849,DMY,0E0h,0E3h,0A1h,".",0," ",",",".",":",3,2,_24;Belarus +by_1131 cnf 375,1131,DMY,0E0h,0E3h,0A1h,".",0," ",",",".",":",3,2,_24; Belarus +by_850 cnf 375,850,DMY,"B","Y","R",0,0," ",",",".",",",3,2,_24; Belarus +by_858 cnf 375,858,DMY,"B","Y","R",0,0," ",",",".",",",3,2,_24; Belarus ua_848 cnf 380,848,DMY,0A3h,0E0h,0ADh,".",0," ",",",".",":",3,2,_24;Ukraine Oleg ua_1125 cnf 380,1125,DMY,0A3h,0E0h,0ADh,".",0," ",",",".",":",3,2,_24; Ukraine sr_855 cnf 381,855,DMY,0A7h,0B7h,0D4h,0,0,".",",",".",":",3,2,_24; Serbia @@ -2984,7 +3160,6 @@ me_858 cnf 785,858,DMY,0CFh, 0,0,0,0,".",",","/",":",3,3,_12; Middle East il_862 cnf 972,862,DMY,99h, 0,0,0,0,",","."," ",":",2,2,_24; Israel il_850 cnf 972,850,DMY,"N","I","S",0,0,",","."," ",":",2,2,_24; Israel il_858 cnf 972,858,DMY,"N","I","S",0,0,",","."," ",":",2,2,_24; Israel - es_ES_850 cnf 40034,850,DMY,"E","U","R",0,0,".",",","/",":",0,2,_24; Spain: es_ES_858 cnf 40034,858,DMY,0D5h, 0,0,0,0,".",",","/",":",0,2,_24; Spanish es_ES_437 cnf 40034,437,DMY,"E","U","R",0,0,".",",","/",":",0,2,_24 @@ -3212,6 +3387,25 @@ db 248, 259, 250, 252, 252, 253, 254, 255 ucase_872 equ ucase_855 +ucase_30033 db 0FFh,"UCASE " ; MIK codepage + dw 128 +db 128, 129, 130, 131, 132, 133, 134, 135 +db 136, 137, 138, 139, 140, 141, 142, 143 +db 144, 145, 146, 147, 148, 149, 150, 151 +db 152, 153, 154, 155, 156, 157, 158, 159 +db 128, 129, 130, 131, 132, 133, 134, 135 +db 136, 137, 138, 139, 140, 141, 142, 143 +db 144, 145, 146, 147, 148, 149, 150, 151 +db 152, 153, 154, 155, 156, 157, 158, 159 +db 192, 193, 194, 195, 196, 197, 198, 199 +db 200, 201, 202, 203, 204, 205, 206, 207 +db 208, 209, 210, 211, 212, 213, 214, 215 +db 216, 217, 218, 219, 220, 221, 222, 223 +db 224, 225, 226, 227, 228, 229, 230, 231 +db 232, 233, 234, 235, 236, 237, 238, 239 +db 240, 241, 242, 243, 244, 245, 246, 247 +db 248, 249, 250, 251, 252, 253, 254, 255 + ucase_869 db 0FFh,"UCASE " dw 128 db 128, 129, 130, 131, 132, 133, 134, 135 @@ -3293,6 +3487,27 @@ db 248, 248, 250, 251, 252, 253, 254, 255 ucase_1125 equ ucase_848 +ucase_849 db 0FFh,"UCASE " + dw 128 +db 128, 129, 130, 131, 132, 133, 134, 135 +db 136, 137, 138, 139, 140, 141, 142, 143 +db 144, 145, 146, 147, 148, 149, 150, 151 +db 152, 153, 154, 155, 156, 157, 158, 159 +db 128, 129, 130, 131, 132, 133, 134, 135 +db 136, 137, 138, 139, 140, 141, 142, 143 +db 176, 177, 178, 179, 180, 181, 182, 183 +db 184, 185, 186, 187, 188, 189, 190, 191 +db 192, 193, 194, 195, 196, 197, 198, 199 +db 200, 201, 202, 203, 204, 205, 206, 207 +db 208, 209, 210, 211, 212, 213, 214, 215 +db 216, 217, 218, 219, 220, 221, 222, 223 +db 144, 145, 146, 147, 148, 149, 150, 151 +db 152, 153, 154, 155, 156, 157, 158, 159 +db 240, 240, 242, 242, 244, 244, 246, 246 +db 248, 248, 250, 251, 252, 252, 254, 255 + +ucase_1131 equ ucase_849 + ucase_862 db 0FFh,"UCASE " dw 128 db 128, 129, 130, 131, 132, 133, 134, 135 @@ -3390,6 +3605,78 @@ db 249, 249, 250, 251, 252, 253, 254, 255 lcase_1125 equ lcase_848 +lcase_849 db 0FFh,"LCASE " + dw 256 +db 0, 1, 2, 3, 4, 5, 6, 7 +db 8, 9, 10, 11, 12, 13, 14, 15 +db 16, 17, 18, 19, 20, 21, 22, 23 +db 24, 25, 26, 27, 28, 29, 30, 31 +db 32, 33, 34, 35, 36, 37, 38, 39 +db 40, 41, 42, 43, 44, 45, 46, 47 +db 48, 49, 50, 51, 52, 53, 54, 55 +db 56, 57, 58, 59, 60, 61, 62, 63 +db 64, 97, 98, 99, 100, 101, 102, 103 +db 104, 105, 106, 107, 108, 109, 110, 111 +db 112, 113, 114, 115, 116, 117, 118, 119 +db 120, 121, 122, 91, 92, 93, 94, 95 +db 96, 97, 98, 99, 100, 101, 102, 103 +db 104, 105, 106, 107, 108, 109, 110, 111 +db 112, 113, 114, 115, 116, 117, 118, 119 +db 120, 121, 122, 123, 124, 125, 126, 127 +db 160, 161, 162, 163, 164, 165, 166, 167 +db 168, 169, 170, 171, 172, 173, 174, 175 +db 224, 225, 226, 227, 228, 229, 230, 231 +db 232, 233, 234, 235, 236, 237, 238, 239 +db 160, 161, 162, 163, 164, 165, 166, 167 +db 168, 169, 170, 171, 172, 173, 174, 175 +db 176, 177, 178, 179, 180, 181, 182, 183 +db 184, 185, 186, 187, 188, 189, 190, 191 +db 192, 193, 194, 195, 196, 197, 198, 199 +db 200, 201, 202, 203, 204, 205, 206, 207 +db 208, 209, 210, 211, 212, 213, 214, 215 +db 216, 217, 218, 219, 220, 221, 222, 223 +db 224, 225, 226, 227, 228, 229, 230, 231 +db 232, 233, 234, 235, 236, 237, 238, 239 +db 241, 241, 243, 243, 245, 245, 247, 247 +db 249, 249, 250, 251, 253, 253, 254, 255 + +lcase_1131 equ lcase_849 + +lcase_30033 db 0FFh,"LCASE " + dw 256 +db 0, 1, 2, 3, 4, 5, 6, 7 +db 8, 9, 10, 11, 12, 13, 14, 15 +db 16, 17, 18, 19, 20, 21, 22, 23 +db 24, 25, 26, 27, 28, 29, 30, 31 +db 32, 33, 34, 35, 36, 37, 38, 39 +db 40, 41, 42, 43, 44, 45, 46, 47 +db 48, 49, 50, 51, 52, 53, 54, 55 +db 56, 57, 58, 59, 60, 61, 62, 63 +db 64, 97, 98, 99, 100, 101, 102, 103 +db 104, 105, 106, 107, 108, 109, 110, 111 +db 112, 113, 114, 115, 116, 117, 118, 119 +db 120, 121, 122, 91, 92, 93, 94, 95 +db 96, 97, 98, 99, 100, 101, 102, 103 +db 104, 105, 106, 107, 108, 109, 110, 111 +db 112, 113, 114, 115, 116, 117, 118, 119 +db 120, 121, 122, 123, 124, 125, 126, 127 +db 160, 161, 162, 163, 164, 165, 166, 167 +db 168, 169, 170, 171, 172, 173, 174, 175 +db 176, 177, 178, 179, 180, 181, 182, 183 +db 184, 185, 186, 187, 188, 189, 190, 191 +db 160, 161, 162, 163, 164, 165, 166, 167 +db 168, 169, 170, 171, 172, 173, 174, 175 +db 176, 177, 178, 179, 180, 181, 182, 183 +db 184, 185, 186, 187, 188, 189, 190, 191 +db 192, 193, 194, 195, 196, 197, 198, 199 +db 200, 201, 202, 203, 204, 205, 206, 207 +db 208, 209, 210, 211, 212, 213, 214, 215 +db 216, 217, 218, 219, 220, 221, 222, 223 +db 224, 225, 226, 227, 228, 229, 230, 231 +db 232, 233, 234, 235, 236, 237, 238, 239 +db 240, 241, 242, 243, 244, 245, 246, 247 +db 248, 249, 250, 251, 252, 253, 254, 255 + ; Filename terminator table ;------------------------------------------------------------------------------ fchar db 0FFh,"FCHAR " ; Same as kernel's hardcoded @@ -4119,11 +4406,6 @@ ru_collate_850 equ en_collate_850 ; Russian CP850 ru_collate_858 equ en_collate_858 ; Russian CP858 ru_collate_437 equ en_collate_437 ; Russian CP437 -bg_collate_855 equ ru_collate_855 ; Bulgarian, CP855 -bg_collate_872 equ ru_collate_872 ; Bulgarian, CP872 -bg_collate_850 equ en_collate_850 ; Bulgarian CP850 -bg_collate_858 equ en_collate_858 ; Bulgarian CP858 - gr_collate_869 db 0FFh,"COLLATE" ; Greek, CP869 (with Euro) dw 256 db 0, 1, 2, 3, 4, 5, 6, 7 @@ -4433,6 +4715,89 @@ db 232, 233, 234, 235, 236, 237, 238, 239 db 240, 241, 242, 243, 244, 245, 246, 247 db 248, 249, 250, 251, 252, 253, 254, 255 +by_collate_849 db 0FFh,"COLLATE" ; Belarusian, CP849 + dw 256 +db 0, 1, 2, 3, 4, 5, 6, 7 +db 8, 9, 10, 11, 12, 13, 14, 15 +db 16, 17, 18, 19, 20, 21, 22, 23 +db 24, 25, 26, 27, 28, 29, 30, 31 +db 32, 33, 34, 35, 36, 37, 38, 39 +db 40, 41, 42, 43, 44, 45, 46, 47 +db 48, 49, 50, 51, 52, 53, 54, 55 +db 56, 57, 58, 59, 60, 61, 62, 63 +db 64, 65, 66, 67, 68, 69, 70, 71 +db 72, 73, 74, 75, 76, 77, 78, 79 +db 80, 81, 82, 83, 84, 85, 86, 87 +db 88, 89, 90, 91, 92, 93, 94, 95 +db 96, 65, 66, 67, 68, 69, 70, 71 +db 72, 73, 74, 75, 76, 77, 78, 79 +db 80, 81, 82, 83, 84, 85, 86, 87 +db 88, 89, 90, 123, 124, 125, 126, 127 +db 128, 129, 130, 131, 133, 134, 137, 138 +db 141, 142, 143, 144, 145, 146, 147, 148 +db 149, 150, 151, 152, 154, 155, 156, 157 +db 158, 159, 160, 161, 162, 163, 164, 165 +db 128, 129, 130, 131, 133, 134, 137, 138 +db 141, 142, 143, 144, 145, 146, 147, 148 +db 176, 177, 178, 179, 180, 181, 182, 183 +db 184, 185, 186, 187, 188, 189, 190, 191 +db 192, 193, 194, 195, 196, 197, 198, 199 +db 200, 201, 201, 203, 204, 205, 206, 207 +db 208, 209, 210, 211, 212, 213, 214, 215 +db 216, 217, 218, 219, 220, 221, 222, 223 +db 149, 150, 151, 152, 154, 155, 156, 157 +db 158, 159, 160, 161, 162, 163, 164, 165 +db 136, 136, 135, 135, 140, 140, 153, 153 +db 139, 139, 250, 251, 132, 132, 254, 255 + +by_collate_1131 equ by_collate_849 ; Belarusian, CP1131 +by_collate_850 equ en_collate_850 ; Belarusian CP850 +by_collate_858 equ en_collate_858 ; Belarusian CP858 + +bg_collate_30033 db 0FFh,"COLLATE" ; Bulgarian, MIK codepage + dw 256 +db 0, 1, 2, 3, 4, 5, 6, 7 +db 8, 9, 10, 11, 12, 13, 14, 15 +db 16, 17, 18, 19, 20, 21, 22, 23 +db 24, 25, 26, 27, 28, 29, 30, 31 +db 32, 33, 34, 35, 36, 37, 38, 39 +db 40, 41, 42, 43, 44, 45, 46, 47 +db 48, 49, 50, 51, 52, 53, 54, 55 +db 56, 57, 58, 59, 60, 61, 62, 63 +db 64, 65, 66, 67, 68, 69, 70, 71 +db 72, 73, 74, 75, 76, 77, 78, 79 +db 80, 81, 82, 83, 84, 85, 86, 87 +db 88, 89, 90, 91, 92, 93, 94, 95 +db 96, 65, 66, 67, 68, 69, 70, 71 +db 72, 73, 74, 75, 76, 77, 78, 79 +db 80, 81, 82, 83, 84, 85, 86, 87 +db 88, 89, 90, 123, 124, 125, 126, 127 +db 128, 129, 130, 131, 132, 133, 134, 135 +db 136, 137, 138, 139, 140, 141, 142, 143 +db 144, 145, 146, 147, 148, 149, 150, 151 +db 152, 153, 154, 155, 156, 157, 158, 159 +db 128, 129, 130, 131, 132, 133, 134, 135 +db 136, 137, 138, 139, 140, 141, 142, 143 +db 144, 145, 146, 147, 148, 149, 150, 151 +db 152, 153, 154, 155, 156, 157, 158, 159 +db 192, 193, 194, 195, 196, 197, 198, 199 +db 200, 201, 202, 203, 204, 205, 206, 207 +db 208, 209, 210, 211, 212, 213, 214, 215 +db 216, 217, 218, 219, 220, 221, 222, 223 +db 224, 225, 226, 227, 228, 229, 230, 231 +db 232, 233, 234, 235, 236, 237, 238, 239 +db 240, 241, 242, 243, 244, 245, 246, 247 +db 248, 249, 250, 251, 252, 253, 254, 255 + +bg_collate_855 equ ru_collate_855 ; Bulgarian, CP855 +bg_collate_872 equ ru_collate_872 ; Bulgarian, CP872 +bg_collate_850 equ en_collate_850 ; Bulgarian CP850 +bg_collate_858 equ en_collate_858 ; Bulgarian CP858 +bg_collate_866 equ ru_collate_866 ; Bulgarian CP866 +bg_collate_808 equ ru_collate_808 ; Bulgarian CP808 +bg_collate_849 equ by_collate_849 ; Bulgarian CP849 +bg_collate_1131 equ by_collate_1131 ; Bulgarian CP1131 + ua_collate_848 db 0FFh,"COLLATE" ; Ukrainian, CP848 dw 256 db 0, 1, 2, 3, 4, 5, 6, 7 @@ -4651,11 +5016,20 @@ ru_yn db 0FFh,"YESNO " dw 4 db 'D',0,'N',0 ; Russian Latin +by_yn_849 equ ru_yn_866 ; Belarusian +by_yn_1131 equ ru_yn_866 +by_yn equ ru_yn ; Belarusian Latin + ua_yn_848 equ ru_yn_866 ; Ukrainian ua_yn_1125 equ ru_yn_866 bg_yn_855 equ ru_yn_855 ; Bulgarian CP855 bg_yn_872 equ ru_yn_872 ; Bulgarian CP872 +bg_yn_866 equ ru_yn_866 ; Bulgarian CP866 +bg_yn_808 equ ru_yn_808 ; Bulgarian CP808 +bg_yn_849 equ by_yn_849 ; Bulgarian CP849 +bg_yn_1131 equ by_yn_1131 ; Bulgarian CP1131 +bg_yn_30033 equ bg_yn_866 ; Bulgarian MIK bg_yn equ ru_yn ; Bulgarian Latin hu_yn db 0FFh,"YESNO "