Amstrad/Schneider Printer Character Sets

From CPCWiki - THE Amstrad CPC encyclopedia!
Revision as of 08:22, 4 September 2010 by Nocash (Talk | contribs) (Created page with "== Character Set ROMs == Here are some Draft and NLQ charsets extracted from the EPROMs. In case of the DMP2000/DMP3000, additional Draft characters are probably contained in th...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Character Set ROMs

Here are some Draft and NLQ charsets extracted from the EPROMs. In case of the DMP2000/DMP3000, additional Draft characters are probably contained in the CPUs on-chip ROM.

NLQ401 fonts

  • Draft font: 232 characters at EPROM offset 16A6h..209Dh; ASCII characters and CPC symbols
  • NLQ font: 103 characters, at EPROM offset 209Eh..3FFFh (pass1+pass2); ASCII characters

Encoding: 11 bytes per Draft character (same as Epson chars, but without prefix byte), 39 bytes per NLQ pass (in super-high horizontal resolution). In lack of prefix flags, underlengths are defined by software (at ROM address 090Eh..091Ch).
Mechanical Restrictions: After drawing a draft pixel, the next ONE pixel (in the same row) must be white. After a NLQ pixel, the next THREE must be white.

DMP2000/2160 fonts

  • Draft font: probably somewhere in uUD7811 ROM (not dumped)
  • NLQ font: 128 characters, at EPROM offset 3400h..39FFh (pass1) and 3A00h..3FFFh (pass2); ASCII characters

Encoding: 12 bytes per char (one prefix, plus eleven 8bit columns; the prefix contains underlength flag, and proportional char width info; same format as with ESC "&" command), 2-pass NLQ characters are defined identically as two draft characters (the prefix byte is having the same value in both definitions)
Mechanical Restrictions: After drawing a draft pixel, the next ONE pixel (in the same row) must be white. There is no such restriction for NLQ pixels (because they are defined in a lousy resolution).

DMP3000 fonts

  • Draft font: ASCII chars probably somewhere in uUD7811 ROM (not dumped), IBM chars at EPROM offset 5000h..5xxxh
  • NLQ font: circa 330 characters, at EPROM offset 5C00h..6BFFh (pass1) and 6C00h..7BFFh (pass2); ASCII, Italics, IBM characters

Encoding/Mechanics: Same as DMP2000/2160, see there.

International Characters

23h 24h 40h 5Bh 5Ch 5Dh 5Eh 60h 7Bh 7Ch 7Dh 7Eh
0 - USA # $ @ [ \ ] ^ ` { | } ~
1 - France # $ à ° ç § ^ ` é ù è ¨
2 - Germany # $ § Ä Ö Ü ^ ` ä ö ü ß
3 - UK £ $ @ [ \ ] ^ ` { | } ~
4 - Denmark # $ @ Æ Ø Å ^ ` æ ø å ~
5 - Sweden # ¤ É Ä Ö Å Ü é ä ö å ü
6 - Italy # $ @ ° \ é ^ ù / ` à ò è ì
7 - Spain Pt $ @ ¡ Ñ ¿ ^ ` ¨ ñ } ~
8 - Japan # $ @ [ ¥ ] ^ ` { | } ~

Italian chr(60h) is "`" (DMP1), or "ù" (DMP2xxx/3xxx). Japan (Yen symbol) is software selectable on DMP2xxx/3xxx only. All other chars are same for all DMP versions.