source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Src/StringsCompressed.asm@ 493

Last change on this file since 493 was 492, checked in by gregli@…, 12 years ago

Removed the dependency between MODULE_BOOT_MENU and MODULE_HOTKEYS. With these changes, 0, 1, or 2 of them can be included in a build. This change also means that the hotkeys don't work while the menu is up. But the most important hotkey there was for Rom Boot, and that has been added to the menu as a choice proper. Lots of changes across the board in the hotkeys code - even if we eventually back this change out (becaue, for example we want hotkeys to work in the menu) we should probably start from this base and add that functionality back in, as these changes results in approximately 120 bytes of savings and includes new functionality, such as the Rom Boot menu item and the Com Detect hotkey.

File size: 29.4 KB
RevLine 
[186]1;;;======================================================================
2;;;
3;;; This file is generated by StringsCompress.pl from source in Strings.asm
[252]4;;; DO NOT EDIT DIRECTLY - See the makefile for how to rebuild this file.
[186]5;;; This file only needs to be rebuilt if Strings.asm is changed.
6;;;
7;;;======================================================================
8
[334]9%ifdef STRINGSCOMPRESSED_STRINGS
10
[186]11; Project name : XTIDE Universal BIOS
12; Description : Strings and equates for BIOS messages.
13
[376]14;
[491]15; XTIDE Universal BIOS and Associated Tools
[376]16; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team.
17;
18; This program is free software; you can redistribute it and/or modify
19; it under the terms of the GNU General Public License as published by
20; the Free Software Foundation; either version 2 of the License, or
21; (at your option) any later version.
[491]22;
[376]23; This program is distributed in the hope that it will be useful,
24; but WITHOUT ANY WARRANTY; without even the implied warranty of
25; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26; GNU General Public License for more details.
[491]27; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
28;
[376]29
[186]30%ifdef MODULE_STRINGS_COMPRESSED_PRECOMPRESS
31%include "Display.inc"
32%endif
33
34; Section containing code
35SECTION .text
36
[334]37; The following strings are used by DetectPrint_StartDetectWithMasterOrSlaveStringInCXandIdeVarsInCSBP
38; To support an optimization in that code, these strings must start on the same 256 byte page,
39; which is checked at assembly time below.
40;
41g_szDetectStart:
42g_szDetectMaster: ; db "Master",NULL
43 ; db 4dh, 61h, 73h, 74h, 65h, 72h, 00h ; uncompressed
44 db 53h, 67h, 79h, 7ah, 6bh, 0b8h ; compressed
45
46g_szDetectSlave: ; db "Slave ",NULL
47 ; db 53h, 6ch, 61h, 76h, 65h, 20h, 00h ; uncompressed
48 db 59h, 72h, 67h, 7ch, 6bh, 00h ; compressed
49
50g_szDetectOuter: ; db "%s at %s: ",NULL
51 ; db 25h, 73h, 20h, 61h, 74h, 20h, 25h, 73h, 3ah, 20h, 00h ; uncompressed
[488]52 db 3dh, 20h, 67h, 0fah, 3dh, 40h, 00h ; compressed
[334]53
[415]54%ifdef MODULE_SERIAL
[491]55g_szDetectCOM: ; db "COM%c%s",NULL
56 ; db 43h, 4fh, 4dh, 25h, 63h, 25h, 73h, 00h ; uncompressed
57 db 49h, 55h, 53h, 3ch, 1dh ; compressed
[334]58
59g_szDetectCOMAuto: ; db " Detect",NULL
60 ; db 20h, 44h, 65h, 74h, 65h, 63h, 74h, 00h ; uncompressed
61 db 20h, 4ah, 6bh, 7ah, 6bh, 69h, 0bah ; compressed
62
63g_szDetectCOMSmall: ; db "/%u%u00",NULL ; IDE Master at COM1/9600:
64 ; db 2fh, 25h, 75h, 25h, 75h, 30h, 30h, 00h ; uncompressed
[488]65 db 2ah, 35h, 35h, 33h, 13h ; compressed
[334]66
67g_szDetectCOMLarge: ; db "/%u.%uK",NULL ; IDE Master at COM1/19.2K:
68 ; db 2fh, 25h, 75h, 2eh, 25h, 75h, 4bh, 00h ; uncompressed
[488]69 db 2ah, 35h, 29h, 35h, 91h ; compressed
[334]70
[415]71%endif
[334]72g_szDetectEnd:
[491]73g_szDetectPort: ; db "%x",NULL ; IDE Master at 1F0h:
[334]74 ; db 25h, 78h, 00h ; uncompressed
[488]75 db 17h ; compressed
[334]76
77
78%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
79%if ((g_szDetectEnd-$$) & 0xff00) <> ((g_szDetectStart-$$) & 0xff00)
[491]80%error "g_szDetect* strings must start on the same 256 byte page, required by DetectPrint_StartDetectWithMasterOrSlaveStringInCXandIdeVarsInCSBP. Please move this block up or down within Strings.asm"
[334]81%endif
82%endif
83
[415]84
[491]85; POST drive detection strings
86g_szDashForZero: ; db "- ",NULL ; Required by Display Library
87 ; db 2dh, 20h, 00h ; uncompressed
88 db 28h, 00h ; compressed
89
90g_szRomAt: ; db LF,CR
91 ; db 0ah, 0dh ; uncompressed
92 db 39h ; compressed
93
94 ; db "%s @ %x",LF,CR ; -=XTIDE ... =- @ Segment
95 ; db 25h, 73h, 20h, 40h, 20h, 25h, 78h, 0ah, 0dh ; uncompressed
96 db 3dh, 20h, 0c6h, 37h, 39h ; compressed
97
98 ; db "%s",LF,CR ; version string
99 ; db 25h, 73h, 0ah, 0dh ; uncompressed
100 db 3dh, 39h ; compressed
101
102 ; db "Released under GNU GPL v2",LF,CR
103 ; db 52h, 65h, 6ch, 65h, 61h, 73h, 65h, 64h, 20h, 75h, 6eh, 64h, 65h, 72h, 20h, 47h, 4eh, 55h, 20h, 47h, 50h, 4ch, 20h, 76h, 32h, 0ah, 0dh ; uncompressed
104 db 58h, 6bh, 72h, 6bh, 67h, 79h, 6bh, 0eah, 7bh, 74h, 6ah, 6bh, 0f8h, 4dh, 54h, 0dbh, 4dh, 56h, 0d2h, 7ch, 2ch, 39h ; compressed
105
106 ; db LF,CR,NULL
107 ; db 0ah, 0dh, 00h ; uncompressed
108 db 19h ; compressed
109
110%ifdef MODULE_BOOT_MENU
111g_szBootMenuTitle: ; db "%s%c",LF,CR ; -=XTIDE ... =- and null (eaten)
112 ; db 25h, 73h, 25h, 63h, 0ah, 0dh ; uncompressed
113 db 3dh, 3ch, 39h ; compressed
114
115 ; db "%s",NULL ; version string
116 ; db 25h, 73h, 00h ; uncompressed
117 db 1dh ; compressed
118
119%endif
120g_szDriveName: ; db "%z",LF,CR,NULL
121 ; db 25h, 7ah, 0ah, 0dh, 00h ; uncompressed
122 db 3eh, 19h ; compressed
123
124
125
[415]126; Boot loader strings
127g_szTryToBoot: ; db "Booting %c",ANGLE_QUOTE_RIGHT,"%c",LF,CR,NULL
128 ; db 42h, 6fh, 6fh, 74h, 69h, 6eh, 67h, 20h, 25h, 63h, 0afh, 25h, 63h, 0ah, 0dh, 00h ; uncompressed
[488]129 db 48h, 75h, 75h, 7ah, 6fh, 74h, 0edh, 3ch, 24h, 3ch, 19h ; compressed
[415]130
[492]131g_szBootSectorNotFound: ; db "Boot sector " ; String fall through...
[415]132 ; db 42h, 6fh, 6fh, 74h, 20h, 73h, 65h, 63h, 74h, 6fh, 72h, 20h ; uncompressed
133 db 48h, 75h, 75h, 0fah, 79h, 6bh, 69h, 7ah, 75h, 0f8h ; compressed
134
135g_szNotFound: ; db "not found",LF,CR,NULL
136 ; db 6eh, 6fh, 74h, 20h, 66h, 6fh, 75h, 6eh, 64h, 0ah, 0dh, 00h ; uncompressed
[488]137 db 74h, 75h, 0fah, 6ch, 75h, 7bh, 74h, 6ah, 19h ; compressed
[415]138
139g_szReadError: ; db "Error %x!",LF,CR,NULL
140 ; db 45h, 72h, 72h, 6fh, 72h, 20h, 25h, 78h, 21h, 0ah, 0dh, 00h ; uncompressed
[488]141 db 4bh, 78h, 78h, 75h, 0f8h, 37h, 25h, 19h ; compressed
[415]142
143
144
145%ifdef MODULE_HOTKEYS
146; Hotkey Bar strings
[492]147g_szFDD: ; db "FDD [%c]",NULL ; "FDD [A]"
148 ; db 46h, 44h, 44h, 20h, 5bh, 25h, 63h, 5dh, 00h ; uncompressed
149 db 4ch, 4ah, 0cah, 61h, 3ch, 0a3h ; compressed
[415]150
[492]151g_szHDD: ; db "HDD [%c]",NULL ; "HDD [C]"
152 ; db 48h, 44h, 44h, 20h, 5bh, 25h, 63h, 5dh, 00h ; uncompressed
153 db 4eh, 4ah, 0cah, 61h, 3ch, 0a3h ; compressed
[415]154
[492]155%ifdef MODULE_BOOT_MENU
156g_szBootMenu: ; db "BootMnu%c",NULL ; "BootMnu", location of %c doesn't matter
157 ; db 42h, 6fh, 6fh, 74h, 4dh, 6eh, 75h, 25h, 63h, 00h ; uncompressed
158 db 48h, 75h, 75h, 7ah, 53h, 74h, 7bh, 1ch ; compressed
[415]159
[492]160%endif ; MODULE_BOOT_MENU
161g_szHotkey: ; db "%A%c%c%A%s%A ",NULL ; "C»HDD [A] ", "F2BootMnu " or "F8RomBoot "
162 ; db 25h, 41h, 25h, 63h, 25h, 63h, 25h, 41h, 25h, 73h, 25h, 41h, 20h, 00h ; uncompressed
163 db 3bh, 3ch, 3ch, 3bh, 3dh, 3bh, 00h ; compressed
[415]164
[492]165%ifdef MODULE_SERIAL
166g_szHotComDetect: ; db "ComDtct%c",NULL ; "ComDtct", location of %c doesn't matter
167 ; db 43h, 6fh, 6dh, 44h, 74h, 63h, 74h, 25h, 63h, 00h ; uncompressed
168 db 49h, 75h, 73h, 4ah, 7ah, 69h, 7ah, 1ch ; compressed
[415]169
[492]170%endif ; MODULE_SERIAL
171%endif ; MODULE_HOTKEYS
[415]172
[492]173%ifdef MODULE_BOOT_MENU
174g_szRomBootDash: ; db " - " ; String fall through to g_szRomBoot
175 ; db 20h, 2dh, 20h, 20h ; uncompressed
176 db 20h, 28h, 20h, 20h ; compressed
[415]177
[492]178%endif
179%ifdef MODULE_HOTKEYS OR MODULE_BOOT_MENU
180g_szRomBoot: ; db "Rom%cBoot", NULL ; "RomBoot" or "Rom Boot"
181 ; db 52h, 6fh, 6dh, 25h, 63h, 42h, 6fh, 6fh, 74h, 00h ; uncompressed
182 db 58h, 75h, 73h, 3ch, 48h, 75h, 75h, 0bah ; compressed
[415]183
[492]184%endif
185
186
[415]187%ifdef MODULE_BOOT_MENU
[334]188; Boot Menu Floppy Disk strings
189;
190; The following strings are used by BootMenuPrint_RefreshInformation
191; To support optimizations in that code, these strings must start on the same 256 byte page,
192; which is checked at assembly time below.
193;
194g_szFddStart:
[491]195g_szFddUnknown: ; db "Unknown",NULL
196 ; db 55h, 6eh, 6bh, 6eh, 6fh, 77h, 6eh, 00h ; uncompressed
197 db 5bh, 74h, 71h, 74h, 75h, 7dh, 0b4h ; compressed
[334]198
[491]199g_szFddSizeOr: ; db "5",ONE_QUARTER,QUOTATION_MARK," or 3",ONE_HALF,QUOTATION_MARK," DD",NULL
200 ; db 35h, 0ach, 22h, 20h, 6fh, 72h, 20h, 33h, 0abh, 22h, 20h, 44h, 44h, 00h ; uncompressed
201 db 2eh, 21h, 26h, 20h, 75h, 0f8h, 2dh, 22h, 26h, 20h, 4ah, 8ah ; compressed
[334]202
[491]203g_szFddSize: ; db "%s",QUOTATION_MARK,", %u kiB",NULL ; 3½", 1440 kiB
204 ; db 25h, 73h, 22h, 2ch, 20h, 25h, 75h, 20h, 6bh, 69h, 42h, 00h ; uncompressed
205 db 3dh, 26h, 27h, 20h, 35h, 20h, 71h, 6fh, 88h ; compressed
[334]206
[491]207g_szFddThreeHalf: ; db "3",ONE_HALF,NULL
208 ; db 33h, 0abh, 00h ; uncompressed
209 db 2dh, 02h ; compressed
[334]210
211g_szFddEnd:
[491]212g_szFddFiveQuarter: ; db "5",ONE_QUARTER,NULL
213 ; db 35h, 0ach, 00h ; uncompressed
214 db 2eh, 01h ; compressed
[334]215
216
217%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
218%if ((g_szFddStart-$$) & 0xff00) <> ((g_szFddEnd-$$) & 0xff00)
[491]219%error "g_szFdd* strings must start on the same 256 byte page, required by the BootMenuPrint_RefreshInformation routines for floppy drives. Please move this block up or down within Strings.asm"
[334]220%endif
221%endif
222
[322]223
224g_szAddressingModes:
[421]225g_szNORMAL: ; db "NORMAL",NULL
226 ; db 4eh, 4fh, 52h, 4dh, 41h, 4ch, 00h ; uncompressed
227 db 54h, 55h, 58h, 53h, 47h, 92h ; compressed
[322]228
[421]229g_szLARGE: ; db "LARGE ",NULL
230 ; db 4ch, 41h, 52h, 47h, 45h, 20h, 00h ; uncompressed
231 db 52h, 47h, 58h, 4dh, 4bh, 00h ; compressed
[322]232
[421]233g_szLBA: ; db "LBA ",NULL
234 ; db 4ch, 42h, 41h, 20h, 20h, 20h, 00h ; uncompressed
235 db 52h, 48h, 0c7h, 20h, 00h ; compressed
[322]236
[421]237g_szAddressingModes_Displacement equ (g_szLARGE - g_szAddressingModes)
[322]238;
239; Ensure that addressing modes are correctly spaced in memory
240;
241%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
[421]242%if g_szNORMAL <> g_szAddressingModes
[322]243%error "g_szAddressingModes Displacement Incorrect 1"
244%endif
[421]245%if g_szLARGE <> g_szNORMAL + g_szAddressingModes_Displacement
[322]246%error "g_szAddressingModes Displacement Incorrect 2"
247%endif
[421]248%if g_szLBA <> g_szLARGE + g_szAddressingModes_Displacement
[322]249%error "g_szAddressingModes Displacement Incorrect 3"
250%endif
251%endif
252
[491]253
[473]254g_szDeviceTypeValues:
[491]255g_szDeviceTypeValues_16bit: ; db " 16",NULL
256 ; db 20h, 31h, 36h, 00h ; uncompressed
257 db 20h, 2bh, 0fh ; compressed
[186]258
[491]259g_szDeviceTypeValues_32bit: ; db " 32",NULL
260 ; db 20h, 33h, 32h, 00h ; uncompressed
261 db 20h, 2dh, 0ch ; compressed
[417]262
[491]263g_szDeviceTypeValues_8bit: ; db " 8",NULL
264 ; db 20h, 20h, 38h, 00h ; uncompressed
265 db 20h, 20h, 10h ; compressed
[486]266
[491]267g_szDeviceTypeValues_XTIDEr1: ; db "D8 ",NULL ; Dual 8-bit
268 ; db 44h, 38h, 20h, 00h ; uncompressed
269 db 4ah, 30h, 00h ; compressed
[186]270
[491]271g_szDeviceTypeValues_XTIDEr2: ; db "X8 ",NULL ; A0<->A3 swapped 8-bit
272 ; db 58h, 38h, 20h, 00h ; uncompressed
273 db 5eh, 30h, 00h ; compressed
[186]274
[491]275g_szDeviceTypeValues_XTCFpio8: ; db "T8 ",NULL ; True 8-bit
276 ; db 54h, 38h, 20h, 00h ; uncompressed
277 db 5ah, 30h, 00h ; compressed
[186]278
[491]279g_szDeviceTypeValues_XTCFdma: ; db "8MA",NULL ; DMA 8-bit
280 ; db 38h, 4dh, 41h, 00h ; uncompressed
281 db 30h, 53h, 87h ; compressed
[186]282
[491]283g_szDeviceTypeValues_XTCFmem: ; db "M8 ",NULL ; Memory Mapped 8-bit
284 ; db 4dh, 38h, 20h, 00h ; uncompressed
285 db 53h, 30h, 00h ; compressed
[186]286
[491]287g_szDeviceTypeValues_JrIde: ; db "M8 ",NULL
288 ; db 4dh, 38h, 20h, 00h ; uncompressed
289 db 53h, 30h, 00h ; compressed
[285]290
[491]291g_szDeviceTypeValues_Serial: ; db "SER",NULL
292 ; db 53h, 45h, 52h, 00h ; uncompressed
293 db 59h, 4bh, 98h ; compressed
[473]294
295
296g_szDeviceTypeValues_Displacement equ (g_szDeviceTypeValues_32bit - g_szDeviceTypeValues)
[186]297;
[473]298; Ensure that device type strings are correctly spaced in memory
[186]299;
[252]300%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
[473]301%if g_szDeviceTypeValues_16bit <> g_szDeviceTypeValues
302%error "g_szDeviceTypeValues Displacement Incorrect 1"
[186]303%endif
[486]304%if g_szDeviceTypeValues_32bit <> g_szDeviceTypeValues_16bit + g_szDeviceTypeValues_Displacement
[473]305%error "g_szDeviceTypeValues Displacement Incorrect 2"
[186]306%endif
[486]307%if g_szDeviceTypeValues_8bit <> g_szDeviceTypeValues_32bit + g_szDeviceTypeValues_Displacement
308%error "g_szDeviceTypeValues Displacement Incorrect 2"
309%endif
310%if g_szDeviceTypeValues_XTIDEr1 <> g_szDeviceTypeValues_8bit + g_szDeviceTypeValues_Displacement
[473]311%error "g_szDeviceTypeValues Displacement Incorrect 3"
[186]312%endif
[473]313%if g_szDeviceTypeValues_XTIDEr2 <> g_szDeviceTypeValues_XTIDEr1 + g_szDeviceTypeValues_Displacement
314%error "g_szDeviceTypeValues Displacement Incorrect 4"
[186]315%endif
[473]316%if g_szDeviceTypeValues_XTCFpio8 <> g_szDeviceTypeValues_XTIDEr2 + g_szDeviceTypeValues_Displacement
317%error "g_szDeviceTypeValues Displacement Incorrect 5"
[186]318%endif
[473]319%if g_szDeviceTypeValues_XTCFdma <> g_szDeviceTypeValues_XTCFpio8 + g_szDeviceTypeValues_Displacement
320%error "g_szDeviceTypeValues Displacement Incorrect 6"
[194]321%endif
[473]322%if g_szDeviceTypeValues_XTCFmem <> g_szDeviceTypeValues_XTCFdma + g_szDeviceTypeValues_Displacement
323%error "g_szDeviceTypeValues Displacement Incorrect 7"
[194]324%endif
[473]325%if g_szDeviceTypeValues_JrIde <> g_szDeviceTypeValues_XTCFmem + g_szDeviceTypeValues_Displacement
326%error "g_szDeviceTypeValues Displacement Incorrect 8"
[285]327%endif
[473]328%if g_szDeviceTypeValues_Serial <> g_szDeviceTypeValues_JrIde + g_szDeviceTypeValues_Displacement
329%error "g_szDeviceTypeValues Displacement Incorrect 9"
330%endif
331%endif
[186]332
[332]333
[491]334g_szSelectionTimeout: ; db DOUBLE_BOTTOM_LEFT_CORNER,DOUBLE_LEFT_HORIZONTAL_TO_SINGLE_VERTICAL,"%ASelection in %2-u s",NULL
335 ; db 0c8h, 0b5h, 25h, 41h, 53h, 65h, 6ch, 65h, 63h, 74h, 69h, 6fh, 6eh, 20h, 69h, 6eh, 20h, 25h, 32h, 2dh, 75h, 20h, 73h, 00h ; uncompressed
336 db 31h, 32h, 3bh, 59h, 6bh, 72h, 6bh, 69h, 7ah, 6fh, 75h, 0f4h, 6fh, 0f4h, 3ah, 20h, 0b9h ; compressed
[332]337
338
339
[277]340; Boot Menu information strings
341g_szCapacity: ; db "Capacity : %s",NULL
342 ; db 43h, 61h, 70h, 61h, 63h, 69h, 74h, 79h, 20h, 3ah, 20h, 25h, 73h, 00h ; uncompressed
[488]343 db 49h, 67h, 76h, 67h, 69h, 6fh, 7ah, 0ffh, 0c0h, 1dh ; compressed
[277]344
345g_szCapacityNum: ; db "%5-u.%u %ciB",NULL
346 ; db 25h, 35h, 2dh, 75h, 2eh, 25h, 75h, 20h, 25h, 63h, 69h, 42h, 00h ; uncompressed
[488]347 db 36h, 29h, 35h, 20h, 3ch, 6fh, 88h ; compressed
[277]348
349g_szInformation: ; db "%s",LF,CR
350 ; db 25h, 73h, 0ah, 0dh ; uncompressed
[488]351 db 3dh, 39h ; compressed
[277]352
[491]353 ; db "Addr. ",SINGLE_VERTICAL,"Block",SINGLE_VERTICAL,"Bus",SINGLE_VERTICAL,"IRQ",SINGLE_VERTICAL,"Reset",LF,CR
[421]354 ; db 41h, 64h, 64h, 72h, 2eh, 20h, 0b3h, 42h, 6ch, 6fh, 63h, 6bh, 0b3h, 42h, 75h, 73h, 0b3h, 49h, 52h, 51h, 0b3h, 52h, 65h, 73h, 65h, 74h, 0ah, 0dh ; uncompressed
[488]355 db 47h, 6ah, 6ah, 78h, 29h, 20h, 23h, 48h, 72h, 75h, 69h, 71h, 23h, 48h, 7bh, 79h, 23h, 4fh, 58h, 57h, 23h, 58h, 6bh, 79h, 6bh, 7ah, 39h ; compressed
[277]356
[491]357 ; db "%s",SINGLE_VERTICAL,"%5-u",SINGLE_VERTICAL,"%s",SINGLE_VERTICAL," %2-I",SINGLE_VERTICAL,"%5-x",NULL
358 ; db 25h, 73h, 0b3h, 25h, 35h, 2dh, 75h, 0b3h, 25h, 73h, 0b3h, 20h, 25h, 32h, 2dh, 49h, 0b3h, 25h, 35h, 2dh, 78h, 00h ; uncompressed
359 db 3dh, 23h, 36h, 23h, 3dh, 23h, 20h, 34h, 23h, 18h ; compressed
[277]360
361
[415]362
[334]363; Boot Menu menuitem strings
364;
365; The following strings are used by BootMenuPrint_* routines.
366; To support optimizations in that code, these strings must start on the same 256 byte page,
[332]367; which is checked at assembly time below.
368;
[492]369g_szDriveNumSpace: ; db " " ; leading space, used if drive number is less than 0fh
370 ; db 20h ; uncompressed
371 db 20h ; compressed
372
373; must come immediately before g_szDriveNum!
[334]374g_szBootMenuPrintStart:
375g_szDriveNum: ; db "%x %s",NULL
376 ; db 25h, 78h, 20h, 25h, 73h, 00h ; uncompressed
[488]377 db 37h, 20h, 1dh ; compressed
[332]378
[492]379g_szDriveNumBNSpace: ; db " " ; leading space, used if drive number is less than 0fh
380 ; db 20h ; uncompressed
381 db 20h ; compressed
382
383; must come immediately before g_szDriveNumBOOTNFO!
[334]384g_szDriveNumBOOTNFO: ; db "%x %z",NULL
385 ; db 25h, 78h, 20h, 25h, 7ah, 00h ; uncompressed
[488]386 db 37h, 20h, 1eh ; compressed
[332]387
[334]388g_szFloppyDrv: ; db "Floppy Drive %c",NULL
389 ; db 46h, 6ch, 6fh, 70h, 70h, 79h, 20h, 44h, 72h, 69h, 76h, 65h, 20h, 25h, 63h, 00h ; uncompressed
[488]390 db 4ch, 72h, 75h, 76h, 76h, 0ffh, 4ah, 78h, 6fh, 7ch, 0ebh, 1ch ; compressed
[332]391
[334]392g_szBootMenuPrintEnd:
393g_szForeignHD: ; db "Foreign Hard Disk",NULL
394 ; db 46h, 6fh, 72h, 65h, 69h, 67h, 6eh, 20h, 48h, 61h, 72h, 64h, 20h, 44h, 69h, 73h, 6bh, 00h ; uncompressed
395 db 4ch, 75h, 78h, 6bh, 6fh, 6dh, 0f4h, 4eh, 67h, 78h, 0eah, 4ah, 6fh, 79h, 0b1h ; compressed
[332]396
397
398%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
[334]399%if ((g_szBootMenuPrintStart-$$) & 0xff00) <> ((g_szBootMenuPrintEnd-$$) & 0xff00)
[491]400%error "g_szBootMenuPrint* strings must start on the same 256 byte page, required by the BootMenuPrint_* routines. Please move this block up or down within Strings.asm"
[332]401%endif
[492]402%if g_szDriveNumSpace+1 != g_szDriveNum || g_szDriveNumBNSpace+1 != g_szDriveNumBOOTNFO
403%error "g_szDriveNumSpace or g_szDriveNumBNSpace are out of position"
[332]404%endif
[492]405%endif
[332]406
[415]407%endif ; MODULE_BOOT_MENU
408
409
[197]410;------------------------------------------------------------------------------------------
[252]411;
[197]412; Tables for StringsCompress.pl
413;
[488]414; Items can be added and removed from this table as needed, with the following rules:
415; * Formats follow the special characters. But other than that, order makes no difference.
416; * Some of the formats require "even" and "odd" numbering. Even tells the code that
417; it is a "number-" format, otherwise it doesn't interpret a number first. The easiest
418; way to maintain this is to move one of the "n/a" items to/from the front of the format
419; list to maintain the even/odd.
420; * Values do not need to remain consistent across versions. This table is only used
421; internally to this file.
422; * There can only be 32 of these (0-31).
423; * Keeping the list short is good - this translates to a table in the compressed version.
[491]424; An error will be reported if a character or format is no longer being used by any
[488]425; strings above.
426; * Please keep items sequential for ease of further editing.
427;
[197]428;$translate{ord(' ')} = 0; [StringsCompress Processed]
429;$translate{172} = 1; # ONE_QUARTER [StringsCompress Processed]
430;$translate{171} = 2; # ONE_HALF [StringsCompress Processed]
431;$translate{179} = 3; # SINGLE_VERTICAL [StringsCompress Processed]
432;$translate{175} = 4; # ANGLE_QUOTE_RIGHT [StringsCompress Processed]
433;$translate{ord('!')} = 5; [StringsCompress Processed]
434;$translate{ord('"')} = 6; [StringsCompress Processed]
435;$translate{ord(',')} = 7; [StringsCompress Processed]
436;$translate{ord('-')} = 8; [StringsCompress Processed]
437;$translate{ord('.')} = 9; [StringsCompress Processed]
438;$translate{ord('/')} = 10; [StringsCompress Processed]
[252]439;$translate{ord('1')} = 11; [StringsCompress Processed]
[197]440;$translate{ord('2')} = 12; [StringsCompress Processed]
441;$translate{ord('3')} = 13; [StringsCompress Processed]
[488]442;$translate{ord('5')} = 14; [StringsCompress Processed]
443;$translate{ord('6')} = 15; [StringsCompress Processed]
444;$translate{ord('8')} = 16; [StringsCompress Processed]
445;$translate{200} = 17; # DOUBLE_BOTTOM_LEFT_CORNER [StringsCompress Processed]
446;$translate{181} = 18; # DOUBLE_LEFT_HORIZONTAL_TO_SINGLE_VERTICAL [StringsCompress Processed]
447;$translate{ord('0')} = 19; [StringsCompress Processed]
[197]448;
449; Formats begin immediately after the last Translated character (they are in the same table)
450;
[488]451;$format_begin = 20; [StringsCompress Processed]
[197]452;
[488]453;$format{"2-I"} = 20; # must be even [StringsCompress Processed]
454;$format{"u"} = 21; # must be odd [StringsCompress Processed]
455;$format{"5-u"} = 22; # must be even [StringsCompress Processed]
456;$format{"x"} = 23; # must be odd [StringsCompress Processed]
457;$format{"5-x"} = 24; # must be even [StringsCompress Processed]
458;$format{"nl"} = 25; # n/a [StringsCompress Processed]
459;$format{"2-u"} = 26; # must be even [StringsCompress Processed]
460;$format{"A"} = 27; # n/a [StringsCompress Processed]
461;$format{"c"} = 28; # n/a [StringsCompress Processed]
462;$format{"s"} = 29; # n/a, normal string from DS [StringsCompress Processed]
463;$format{"z"} = 30; # n/a, boot string from BDA [StringsCompress Processed]
[197]464;
465; NOTE: The last $format cannot exceed 31 (stored in a 5-bit quantity).
466;
467; Starting point for the "normal" range, typically around 0x40 to cover upper and lower case
[252]468; letters. If lower case 'z' is not used, 0x3a can be a good choice as it adds ':' to the
[197]469; front end.
470;
471;$normal_base = 0x3a; [StringsCompress Processed]
472;
473; End of StringsCompress.pl information
474;
475;;; end of input stream
476
[334]477%endif ; STRINGSCOMPRESSED_STRINGS
478
479%ifdef STRINGSCOMPRESSED_TABLES
480
[189]481StringsCompressed_NormalBase equ 58
482
[488]483StringsCompressed_FormatsBegin equ 20
[189]484
[186]485StringsCompressed_TranslatesAndFormats:
486 db 32 ; 0
487 db 172 ; 1
488 db 171 ; 2
489 db 179 ; 3
490 db 175 ; 4
491 db 33 ; 5
492 db 34 ; 6
493 db 44 ; 7
494 db 45 ; 8
495 db 46 ; 9
496 db 47 ; 10
497 db 49 ; 11
498 db 50 ; 12
499 db 51 ; 13
[488]500 db 53 ; 14
501 db 54 ; 15
502 db 56 ; 16
503 db 200 ; 17
504 db 181 ; 18
505 db 48 ; 19
506 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_I) ; 20
507 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_u) ; 21
508 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_u) ; 22
509 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_x) ; 23
510 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_x) ; 24
511 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_nl) ; 25
512 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_u) ; 26
513 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_A) ; 27
514 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_c) ; 28
515 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_s) ; 29
516 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_z) ; 30
[186]517
[194]518%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
[189]519%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_2_I || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_I > 255
520%error "DisplayFormatCompressed_Format_2_I is out of range of DisplayFormatCompressed_BaseFormatOffset"
521%endif
522%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_u || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_u > 255
523%error "DisplayFormatCompressed_Format_u is out of range of DisplayFormatCompressed_BaseFormatOffset"
524%endif
525%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_5_u || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_u > 255
526%error "DisplayFormatCompressed_Format_5_u is out of range of DisplayFormatCompressed_BaseFormatOffset"
527%endif
528%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_x || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_x > 255
529%error "DisplayFormatCompressed_Format_x is out of range of DisplayFormatCompressed_BaseFormatOffset"
530%endif
531%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_5_x || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_x > 255
532%error "DisplayFormatCompressed_Format_5_x is out of range of DisplayFormatCompressed_BaseFormatOffset"
533%endif
534%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_nl || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_nl > 255
535%error "DisplayFormatCompressed_Format_nl is out of range of DisplayFormatCompressed_BaseFormatOffset"
536%endif
537%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_2_u || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_u > 255
538%error "DisplayFormatCompressed_Format_2_u is out of range of DisplayFormatCompressed_BaseFormatOffset"
539%endif
540%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_A || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_A > 255
541%error "DisplayFormatCompressed_Format_A is out of range of DisplayFormatCompressed_BaseFormatOffset"
542%endif
[488]543%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_c || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_c > 255
544%error "DisplayFormatCompressed_Format_c is out of range of DisplayFormatCompressed_BaseFormatOffset"
545%endif
[233]546%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_s || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_s > 255
547%error "DisplayFormatCompressed_Format_s is out of range of DisplayFormatCompressed_BaseFormatOffset"
[194]548%endif
[241]549%if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_z || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_z > 255
550%error "DisplayFormatCompressed_Format_z is out of range of DisplayFormatCompressed_BaseFormatOffset"
[233]551%endif
[241]552%endif
[189]553
554;; translated usage stats
[241]555;; 33:1
[492]556;; 32:34
[241]557;; 181:1
558;; 53:2
559;; 48:2
560;; 200:1
561;; 46:3
562;; 179:8
563;; 44:1
[421]564;; 50:2
[241]565;; 51:3
[252]566;; 47:2
[241]567;; 172:2
568;; 34:3
569;; 49:1
[486]570;; 56:7
[492]571;; 45:2
[241]572;; 175:1
573;; 171:2
574;; 54:1
[488]575;; total translated: 20
[189]576
[186]577;; format usage stats
578;; A:4
579;; 2-u:1
[241]580;; 5-u:2
[392]581;; x:5
[492]582;; s:14
[186]583;; 5-x:1
[489]584;; nl:12
[197]585;; 2-I:1
[488]586;; u:6
[492]587;; c:13
[489]588;; z:2
[241]589;; total format: 11
[186]590
591;; alphabet usage stats
[334]592;; 58,::2
[186]593;; 59,;:
594;; 60,<:
595;; 61,=:
596;; 62,>:
597;; 63,?:
598;; 64,@:1
[473]599;; 65,A:5
[492]600;; 66,B:9
601;; 67,C:3
602;; 68,D:11
[421]603;; 69,E:3
[473]604;; 70,F:3
[421]605;; 71,G:3
606;; 72,H:2
[334]607;; 73,I:1
[186]608;; 74,J:
[233]609;; 75,K:1
[334]610;; 76,L:4
[473]611;; 77,M:7
[421]612;; 78,N:2
613;; 79,O:2
614;; 80,P:1
[186]615;; 81,Q:1
[421]616;; 82,R:7
617;; 83,S:3
[473]618;; 84,T:1
[334]619;; 85,U:2
[186]620;; 86,V:
621;; 87,W:
622;; 88,X:1
623;; 89,Y:
624;; 90,Z:
[392]625;; 91,[:2
[186]626;; 92,\:
[392]627;; 93,]:2
[186]628;; 94,^:
629;; 95,_:
630;; 96,`:
[262]631;; 97,a:7
[186]632;; 98,b:
[492]633;; 99,c:6
[334]634;; 100,d:6
635;; 101,e:15
[392]636;; 102,f:1
[186]637;; 103,g:2
638;; 104,h:
[334]639;; 105,i:9
[186]640;; 106,j:
641;; 107,k:4
[262]642;; 108,l:5
[492]643;; 109,m:2
[392]644;; 110,n:11
[492]645;; 111,o:20
[186]646;; 112,p:3
647;; 113,q:
[392]648;; 114,r:11
[334]649;; 115,s:7
[492]650;; 116,t:15
[392]651;; 117,u:4
[334]652;; 118,v:3
[186]653;; 119,w:1
654;; 120,x:
655;; 121,y:2
[473]656;; alphabet used count: 45
[334]657%endif ; STRINGSCOMPRESSED_TABLES
658
Note: See TracBrowser for help on using the repository browser.