Mercurial > public > hwos_code
annotate src/text_multilang.asm @ 635:9a64914a8fca
3.10 re-release addressing some minor issues and language fixes
| author | heinrichsweikamp |
|---|---|
| date | Thu, 07 May 2020 09:12:59 +0200 |
| parents | 4050675965ea |
| children | 8c1f1f334275 |
| rev | line source |
|---|---|
| 0 | 1 ;============================================================================= |
| 2 ; | |
| 634 | 3 ; File text_multilang.asm * combined next generation V3.09.4k |
| 0 | 4 ; |
| 5 ; Implementation text in various selectable languages. | |
| 6 ; | |
| 7 ; Copyright (c) 2011, JD Gascuel, HeinrichsWeikamp, all right reserved. | |
| 8 ;============================================================================= | |
| 9 ; HISTORY | |
| 604 | 10 ; 2011-06-12 : [jDG] Creation |
| 0 | 11 |
| 604 | 12 #include "hwos.inc" |
| 0 | 13 #include "text_multilang.inc" |
| 14 | |
| 634 | 15 |
| 16 ; Because multi-lingual texts are indexed using a FSR register and a FSR | |
| 17 ; register only holds 12 bit, the texts need to be aligned to a 4 kB block | |
| 18 ; in program memory. That is, they need to start at an address 0xXX000. | |
| 19 | |
| 20 | |
| 21 | |
| 22 ; fast hack **ONLY** for **CHANGING** languages ( en / de / fr / it ) | |
| 23 | |
|
635
9a64914a8fca
3.10 re-release addressing some minor issues and language fixes
heinrichsweikamp
parents:
634
diff
changeset
|
24 ;#undefine _language_1 |
|
9a64914a8fca
3.10 re-release addressing some minor issues and language fixes
heinrichsweikamp
parents:
634
diff
changeset
|
25 ;#define _language_1 fr |
|
9a64914a8fca
3.10 re-release addressing some minor issues and language fixes
heinrichsweikamp
parents:
634
diff
changeset
|
26 ;; |
|
9a64914a8fca
3.10 re-release addressing some minor issues and language fixes
heinrichsweikamp
parents:
634
diff
changeset
|
27 ;#undefine _language_2 |
|
9a64914a8fca
3.10 re-release addressing some minor issues and language fixes
heinrichsweikamp
parents:
634
diff
changeset
|
28 ;#define _language_2 it |
| 634 | 29 |
| 30 | |
| 31 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| 32 ; LANGUAGE 1 | |
| 33 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| 34 | |
| 0 | 35 |
| 36 ;============================================================================= | |
| 634 | 37 text_1_base CODE 0x09000 ; ! DO NOT CHANGE ! *** Index Table *** |
| 38 ;============================================================================= | |
| 39 | |
| 604 | 40 global text_1_base |
| 448 | 41 text_1_base: |
| 634 | 42 |
| 604 | 43 tcode_idx set 0 |
| 44 LANG set 0 | |
| 45 #define TCODE TCODE_1 | |
| 0 | 46 |
| 604 | 47 IF _language_1==en |
| 613 | 48 MESSG "1st Language: English" |
| 604 | 49 #include "text_english.inc" |
| 50 ELSE | |
| 51 IF _language_1==de | |
| 613 | 52 MESSG "1st Language: German" |
| 604 | 53 #include "text_german.inc" |
| 54 ELSE | |
| 55 IF _language_1==fr | |
| 613 | 56 MESSG "1st Language: French" |
| 604 | 57 #include "text_french.inc" |
| 58 ELSE | |
| 59 IF _language_1==it | |
| 613 | 60 MESSG "1st Language: Italian" |
| 61 #include "text_italian.inc" | |
| 604 | 62 ELSE |
| 613 | 63 MESSG "1st Language: Default (English)" |
| 604 | 64 #include "text_english.inc" |
| 65 ENDIF | |
| 66 ENDIF | |
| 67 ENDIF | |
| 68 ENDIF | |
| 69 | |
| 70 #undefine TCODE | |
| 71 | |
| 634 | 72 |
| 73 ;============================================================================= | |
| 74 text_1_text CODE_PACK ; *** Text Table *** | |
| 75 ;============================================================================= | |
| 76 | |
| 77 global text_1_text | |
| 78 text_1_text: | |
| 79 | |
| 604 | 80 tcode_idx set 0 |
| 81 #define TCODE TCODE_2 | |
| 82 | |
| 83 IF _language_1==en | |
| 84 #include "text_english.inc" | |
| 85 ELSE | |
| 86 IF _language_1==de | |
| 87 #include "text_german.inc" | |
| 88 ELSE | |
| 89 IF _language_1==fr | |
| 90 #include "text_french.inc" | |
| 91 ELSE | |
| 92 IF _language_1==it | |
| 613 | 93 #include "text_italian.inc" |
| 604 | 94 ELSE |
| 95 #include "text_english.inc" | |
| 96 ENDIF | |
| 97 ENDIF | |
| 98 ENDIF | |
| 99 ENDIF | |
| 100 | |
| 101 #undefine TCODE | |
| 0 | 102 |
| 634 | 103 |
| 104 | |
| 105 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| 106 ; LANGUAGE 2 | |
| 107 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| 560 | 108 |
| 634 | 109 IF _language_2 != none |
| 110 | |
| 111 | |
| 112 ;============================================================================= | |
| 113 text_2_base CODE 0x09400 ; ! DO NOT CHANGE ! *** Index Table *** | |
| 114 ;============================================================================= | |
| 560 | 115 |
| 604 | 116 global text_2_base |
| 448 | 117 text_2_base: |
| 634 | 118 |
| 604 | 119 tcode_idx set 0 |
| 120 LANG set 1 | |
| 121 #define TCODE TCODE_1 | |
| 0 | 122 |
| 604 | 123 IF _language_2==en |
| 613 | 124 MESSG "2nd Language: English" |
| 604 | 125 #include "text_english.inc" |
| 126 ELSE | |
| 127 IF _language_2==de | |
| 613 | 128 MESSG "2nd Language: German" |
| 604 | 129 #include "text_german.inc" |
| 130 ELSE | |
| 131 IF _language_2==fr | |
| 613 | 132 MESSG "2nd Language: French" |
| 604 | 133 #include "text_french.inc" |
| 134 ELSE | |
| 135 IF _language_2==it | |
| 613 | 136 MESSG "2nd Language: Italian" |
| 137 #include "text_italian.inc" | |
| 604 | 138 ELSE |
| 613 | 139 MESSG "2nd Language: Default (English)" |
| 604 | 140 #include "text_english.inc" |
| 141 ENDIF | |
| 142 ENDIF | |
| 143 ENDIF | |
| 144 ENDIF | |
| 145 | |
| 146 #undefine TCODE | |
| 0 | 147 |
| 634 | 148 |
| 149 ;============================================================================= | |
| 150 text_2_text CODE_PACK ; *** Text Table *** | |
| 151 ;============================================================================= | |
| 152 | |
| 153 global text_2_text | |
| 154 text_2_text: | |
| 155 | |
| 604 | 156 tcode_idx set 0 |
| 157 #define TCODE TCODE_2 | |
| 0 | 158 |
| 604 | 159 IF _language_2==en |
| 160 #include "text_english.inc" | |
| 161 ELSE | |
| 162 IF _language_2==de | |
| 163 #include "text_german.inc" | |
| 164 ELSE | |
| 165 IF _language_2==fr | |
| 166 #include "text_french.inc" | |
| 167 ELSE | |
| 168 IF _language_2==it | |
| 613 | 169 #include "text_italian.inc" |
| 604 | 170 ELSE |
| 171 #include "text_english.inc" | |
| 172 ENDIF | |
| 173 ENDIF | |
| 174 ENDIF | |
| 175 ENDIF | |
| 176 | |
| 177 #undefine TCODE | |
| 178 | |
| 634 | 179 ENDIF ; _language_2 |
| 0 | 180 |
| 634 | 181 ;----------------------------------------------------------------------------- |
| 0 | 182 |
| 604 | 183 END |
