Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Appendix describing the character sets in ROM #249

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ first.
* [Appendix F: The 65C816 Processor](X16%20Reference%20-%20Appendix%20F%20-%2065C816%20Processor.md#appendix-f-the-65c816-processor)
* [Appendix G: ZSM File Format](X16%20Reference%20-%20Appendix%20G%20-%20ZSM%20File%20Format.md#appendix-g-zsm-file-format)
* [Appendix H: Onboard Upgrade Guide](X16%20Reference%20-%20Appendix%20H%20-%20Onboard%20Upgrade%20Guide.md#appendix-h-how-to-update-your-x16-to-latest-release)
* [Appendix I: Character Sets](X16%20Reference%20-%20Appendix%20I%20-%20Character%20Sets.md#appendix-i-character-sets)

## External Links

Expand Down
2 changes: 2 additions & 0 deletions X16 Reference - 05 - KERNAL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2567,6 +2567,8 @@ Registers affected: .A, .X, .Y
| 11 | Eastern ISO (thin) (since r47) |
| 12 | Katakana (thin) (since r48) |

See [Appendix I](X16%20Reference%20-%20Appendix%20I%20-%20Character%20Sets.md#appendix-i-character-sets)

If .A is zero, .X (lo) and .Y (hi) contain a pointer to a 2 KB RAM area that gets uploaded as the new 8x8 character set. The data has to consist of 256 characters of 8 bytes each, top to bottom, with the MSB on the left, set bits (1) represent the foreground colored pixels.

**EXAMPLE:**
Expand Down
55 changes: 55 additions & 0 deletions X16 Reference - Appendix I - Character Sets.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Appendix I: Character Sets

From ROM version R48 there are a total of 12 character sets build in. The different character sets are listed below with a short description of their history and/or use cases.

## Index

1) [ISO](#iso)
2) [PET Uppercase / Graphics](#pet-uppercase--graphics)
3) [PET Uppercase / Lowercase](#pet-uppercase--lowercase)
4) [PET Uppercase / Graphis (thin)](#pet-uppercase--graphics-thin)
5) [PET Uppercase / Lowercase (thin)](#pet-uppercase--lowercase-thin)
6) [ISO (thin)](#iso-thin)
7) [CP437](#cp437)
8) [Cyrillic ISO](#cyrillic-iso)
9) [Cyrillic ISO (thin)](#cyrillic-iso-thin)
10) [Eastern Latin ISO](#eastern-latin-iso)
11) [Eastern ISO (thin)](#eastern-iso-thin)
12) [Katakana (thin)](#katakana-thin)

# ISO
![ISO](images/Appendix_I/01ISO.png)
Added to the kernal early on to provide a characterset with international letters and glyphs.
# PET Uppercase / Graphics
![PET upper/graphic](images/Appendix_I/02PETupper-graph.png)
The default character set of the Commodore 64 and Commander X16, usually referred to as PETSCII. It provides only uppercase letters along with glyphs that can be used for doing simple text based drawings.
# PET Uppercase / Lowercase
![PET upper/lower](images/Appendix_I/03PETupper-lower.png)
This character set is also present in the Commodore 64 kernal and provides both upper- and lowercase letters at the expense of some of the glyphs used for text based drawing.
# PET Uppercase / Graphics (thin)
![PET upper/graphic (thin)](images/Appendix_I/04PETupper-graph-thin.png)
The default PETSCII character set, but with thinner characters to give a different aesthetic.
# PET Uppercase / Lowercase (thin)
![PET upper/lower (thin)](images/Appendix_I/05PETupper-lower-thin.png)
The standard upper- and lowercase PETSCII character set made thin for a different aesthetic.
# ISO (thin)
![ISO (thin)](images/Appendix_I/06ISOthin.png)
The ISO character set with thin characters for a different aesthetic.
# CP437
![CP437](images/Appendix_I/07CP437.png)
Added in ROM version R47. This is the character set of the original IBM PC, sometimes referred to as the ANSI character set. It is useful for displaying text created on a PC for example when connecting to BBS'es.
# Cyrillic ISO
![Cyrillic ISO](images/Appendix_I/08CyrillicISO.png)
Added in ROM version R47. Provides Cyrillic letters used in languages such as Bulgarian, Belarusian, Russian, Serbian and Macedonian. Also known as ISO-8859-5.
# Cyrillic ISO (thin)
![Cyrillic ISO (thin)](images/Appendix_I/09CyrillicISOthin.png)
Added in ROM version R47. Thin version of the Cyrillic character set.
# Eastern Latin ISO
![Eastern Latin ISO](images/Appendix_I/10EasternLatinISO.png)
Added in ROM version R47. Provides eastern european letters used in languages such as Albanian, Croatian, Hungarian, Polish, Romanian, Serbian and Slovenian, but also French, German and Italian. Also known as ISO-8859-16.
# Eastern ISO (thin)
![Eastern ISO (thin)](images/Appendix_I/11EasternISOthin.png)
Added in ROM version R47. Thin version of the Eastern Latin ISO character set.
# Katakana (thin)
![Katakana (thin)](images/Appendix_I/12Katakana-thin.png)
Added in ROM version R48. Provides katakana characters for the Japanese and Ainu languages.
Binary file added images/Appendix_I/01ISO.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/02PETupper-graph.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/03PETupper-lower.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/04PETupper-graph-thin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/05PETupper-lower-thin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/06ISOthin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/07CP437.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/08CyrillicISO.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/09CyrillicISOthin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/10EasternLatinISO.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/11EasternISOthin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/Appendix_I/12Katakana-thin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.