International Versions
We normally develop software on machines configured to run English
language versions of Windows. There are one or two issues if you
are using the software under different versions of Windows or with different
languages activated.
Languages and Character Sets
Most of the characters we use come from the ASCII character set and these
are normally consistent whatever code page is used (a code page is used
to map special language specific characters to the upper 126 characters
of an 8-bit ANSI character set). However, we have used a few characters
found in the Latin-1 code page to simulate some of the mathematical symbols
on the keypad. If you use a code page other than Latin-1 (for example
Hebrew, Greek or Eastern European) some or all of these characters are
not available, regardless of whether they exist in the currently selected
font.
We have two solutions to this. Depending on the code page you
are using, the software will change button legends to use available characters.
This may mean that the legends for the multiply and divide buttons or some
of the exponential functions may not exactly match the documentation.
For example the square root button may be labelled "sqrt".
Sometimes, despite the use of a non-Latin-1 codepage, the correct characters are available.
In this case you can override this behaviour to force
Calc98 to use symbol legends,
by checking "Use Symbols" in the setup pages for the main keypad and for the
function keypad.
This particular check box will only be visible for codepages other than Latin-1.
A second solution is to use a version of Calc98 which supports Unicode.
The Unicode character set removes the problem of mapping code pages
by having a very large multilingual character set.
We have a Unicode
version for Windows, but Unicode is only supported on WindowsNT (4 and
higher), Windows2000 and WindowsXP. It is not supported on
Windows95, 98 or ME. All the versions for WindowsCE (Pocket PC)
devices use Unicode also.
If your operating system supports Unicode you
can use the Unicode version of the software. You should then be able
to see all the correct button legends regardless of your language settings
provided your fonts contain the appropriate glyphs. You may need
to select an appropriate font, e.g. Arial, for the keypads using the Options/View
tab.
Unfortunately, even if you use Unicode, it is still possible to have problems.
Not all software supports Unicode properly and sometimes either the software
or a language support utility map different character glyphs to the character
positions corresponding to the upper 126 ANSI characters
according to an ANSI codepage, even though Unicode is being used.
Or a utility may simply install a font with non-Unicode glyphs
substituted directly into the font positions according to the desired ANSI codepage.
This may make applications which do not support Unicode properly appear
to work correctly, but also breaks the Unicode mechanism,
because the Unicode characters which would normally occupy these positions
are no longer accessible.
If the Unicode character mapping has been broken in this way,
you will get local characters instead of some or all of the multiply, divide, power and
root symbols. You can get
Calc98 to use substitute button legends, as on systems with ANSI codepage mapping,
by unchecking "Use Symbols" in the setup pages for the main keypad and for the
function keypad.
This particular check box will only be visible for codepages other than Latin-1.
Decimal and thousands separator symbols
You can change the decimal point character from the Options/Display tab.
When the software is first run, it takes a default value for the decimal
character depending on your locale. Subsequently it will retain
whatever value you set it to. If you have previously run the software
(including an earlier version) the value for the decimal character will
be retained from this earlier version (from the registry). This may
mean that you have to set the value manually.
The thousands separator can also be selected in the same way, but by
default it is set to "none" so that there is no digit grouping.