Last modified on 5 September 2010, at 18:07

Amstrad/Schneider Printer Character Sets

Revision as of 18:07, 5 September 2010 by Nocash (Talk | contribs) (International Characters)

DMP4000 Mechanics.jpg


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; about 3-4 times better than the later DMP2000..3000 models). 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 uPD7811 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 uPD7811 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.

IBM Character Set (DMP3000/3160)

IBM Characters (DMP3000/DMP3160 in "IBM" Mode only)
+0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F
80h Ç ü é â ä à å ç ê ë è ï î ì Ä Å
90h É æ Æ ô ö ò û ù ÿ Ö Ü ct. £ ¥ pt ƒ
A0h á í ó ú ñ Ñ ª º ¿ xx ¬ ½ ¼ ¡ «   »
B0h BLK BLK BLK lin lin lin lin lin lin lin lin lin lin lin lin lin
C0h lin lin lin lin lin lin lin lin lin lin lin lin lin lin lin lin
D0h lin lin lin lin lin lin lin lin lin lin lin BLK BLK BLK BLK BLK
E0h alp ß xx xx xx xx µ xx xx xx xx xx xx xx xx
F0h xx ± >= <= xx xx ÷ xx ° xx xx xx ² xx