Free Hero Mesh

Check-in [5979352e00]
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.
Overview
Comment:Improve code page documentation
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 5979352e00ca45eaed9b9babb2c3c6150d795d73
User & Date: user on 2021-06-10 05:37:40
Other Links: manifest | tags
Context
2021-06-10
18:36
Do not try to access levels past beginning or end when skipping levels check-in: b9447d4488 user: user tags: trunk
05:37
Improve code page documentation check-in: 5979352e00 user: user tags: trunk
02:24
Add a document describing the code page file and code page numbers. check-in: fc010bde3f user: user tags: trunk
Changes

Modified TODO from [123e22dc1f] to [6e6172910e].

32
33
34
35
36
37
38


  * Level 232 of SUPERHRO puzzle set (the Lava shouldn't expand? why?)
* Display solution comments/timestamp
* VCR mode
* Command-line switch for batch import/export levels
* SQL
  * Implement the GROUP column in the CLASSES table
  * Allow multiple SQL statements in one binding









>
>
32
33
34
35
36
37
38
39
40
  * Level 232 of SUPERHRO puzzle set (the Lava shouldn't expand? why?)
* Display solution comments/timestamp
* VCR mode
* Command-line switch for batch import/export levels
* SQL
  * Implement the GROUP column in the CLASSES table
  * Allow multiple SQL statements in one binding
* Large fonts (width 8 or 16, height 8-32)

Modified codepage.doc from [52bd5520ab] to [de8e448f75].

9
10
11
12
13
14
15



16
17
18
19
20
21
22
23
24
25
26






















27
28
29
30
31
32
33
* IBM and Microsoft code page numbers can be used.

* If IBM and Microsoft use the same code page number for a different
character set, or if they use different code page numbers for the same
character set/encoding, then IBM takes precedence. However, if Microsoft
uses the code page number for a strict superset of IBM's definition,
then Microsoft's definition will be used.




* The areas designated as private use areas by IBM (57344-61439 and
65280-65533) may be defined in future by myself (or others, with my
approval). Some ranges may also later be reserved as user-defined or
application-specific areas.

Note that not all of the code page numbers according to the above are
actually used in Free Hero Mesh; Free Hero Mesh only uses ASCII-based
code pages with 8-bit characters. The full set of code page numbers may
still be useful for other applications, though.
























=== File format ===

The codepage.har file is a Hamster archive containing one lump for each
code page, named by the code page number in decimal. Code page 437 need
not be included in this file; pcfont.h is used instead.








>
>
>











>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
* IBM and Microsoft code page numbers can be used.

* If IBM and Microsoft use the same code page number for a different
character set, or if they use different code page numbers for the same
character set/encoding, then IBM takes precedence. However, if Microsoft
uses the code page number for a strict superset of IBM's definition,
then Microsoft's definition will be used.

* Extensions of FreeDOS are used if they do not conflict with IBM and
are not already present as official IBM code pages.

* The areas designated as private use areas by IBM (57344-61439 and
65280-65533) may be defined in future by myself (or others, with my
approval). Some ranges may also later be reserved as user-defined or
application-specific areas.

Note that not all of the code page numbers according to the above are
actually used in Free Hero Mesh; Free Hero Mesh only uses ASCII-based
code pages with 8-bit characters. The full set of code page numbers may
still be useful for other applications, though.


=== List of code page numbers ===

In the below list, "=" means that it is already included in the provided
codepage.har file, and "-" means it isn't included (it might or might not
be included in future).

   437 = default PC character set
   850 = PC-like Western Latin
   852 - PC-like Central European
   858 - PC-like Western Latin including Euro currency
   860 - PC-like Portuguese
   861 - PC-like Icelandic
   865 = PC-like Nordic
   866 = DOS Cyrillic Russian
  1041 - Katakana (Japanese)
  1125 = DOS Cyrillic Ukrainian/Belarusian
  1250 - Windows Central Europe
  1251 - Windows Cyrillic
  1252 - Windows Western
  1254 - Windows Turkish


=== File format ===

The codepage.har file is a Hamster archive containing one lump for each
code page, named by the code page number in decimal. Code page 437 need
not be included in this file; pcfont.h is used instead.

57
58
59
60
61
62
63
64
65
scanline that is changed, with the data to be replaced with.

The second byte is omitted if no scanlines are copied from the base
character (the first byte is zero). If it is less than the current
character code, it is copied from the current code page; if equal or
greater than the current character code, it is copied from the default
code page (pcfont.h).










<
82
83
84
85
86
87
88
89

scanline that is changed, with the data to be replaced with.

The second byte is omitted if no scanlines are copied from the base
character (the first byte is zero). If it is less than the current
character code, it is copied from the current code page; if equal or
greater than the current character code, it is copied from the default
code page (pcfont.h).