ascii-photobooth/epson5kp-dipsettings.md

3.6 KiB

Epson DFX-5000+ DIP switch settings for ASCII Photobooth

Recommended physical DIP switch positions for running the DFX-5000+ with this project, matching printer.conf.epsondfx5kp.bak (PRINTER_A4=false, PRINTER_MAX_LINES=0, PRINTER_MAX_COLS=136 — continuous fanfold paper, parallel port, no fixed page length) and how txt2printr.sh talks to the printer:

  • Writes raw ESC/P to /dev/lp0 (a parallel connection).
  • Sends ESC @ to reset the printer, then the ascii-art body with each line explicitly terminated \r\n (CR+LF), then a form feed to clear the print for tear-off.
  • Treats the printer as continuous/roll stock with no software concept of a page boundary — it never relies on the printer stopping mid-job at a perforation.

Reference: Epson DFX-5000 Product Information sheet (9-Pin Printers, 12/12/88), "Setting the DIP Switches".

DIP switch 1

Switch Position Function Why
1-1 OFF Normal (not condensed) pitch Matches PRINTER_MAX_COLS=136, which is the datasheet's 10 cpi column count. Forcing condensed mode here would silently pack more (narrower) characters per line than the config expects.
1-2 OFF Zero not slashed Ascii-art density maps can use 0 as a shading character; an unslashed zero keeps its shape closer to what the art conversion intended.
1-3 OFF Italics character table Doesn't affect output — the art only ever uses printable US-ASCII (0x20-0x7E), never the high-bit code page this switch selects between. Left at the printer's factory default.
1-4 OFF Input buffer enabled Lets the printer accept the whole raw write from txt2printr.sh without the host blocking on printer-speed backpressure.
1-5 OFF Draft quality NLQ is roughly 5x slower (80-96 cps vs. 480-533 cps per the datasheet's speed table) for characters that are already a coarse ascii-art novelty print, not a document — draft keeps photobooth turnaround fast.
1-6, 1-7, 1-8 ON, ON, ON USA international character set Every other character set in the DIP table remaps one or more of # $ [ \ ] ^ \ { | } ~` to an accented/local character. Ascii-art density maps commonly use several of those symbols, so USA is the only setting guaranteed not to corrupt the art.

DIP switch 2

Switch Position Function Why
2-1 OFF 11-inch page length Matches standard letter-width continuous fanfold stock. Mostly moot since PRINTER_MAX_LINES=0 means the software never treats this printer as page-bounded, but it keeps the printer's own top-of-form tracking sane if you ever use its front-panel form-feed.
2-2 OFF High-speed draft Fastest print speed on the datasheet's table (533 cps at 10 cpi) — same "keep photobooth turnaround fast" reasoning as 1-5.
2-3 OFF Skip-over-perforation disabled The printed art is a continuous strip with no page concept on the software side; if this were ON, the printer would silently insert an extra line-feed gap wherever a perforation falls mid-image, splitting the art.
2-4 OFF Auto line feed disabled txt2printr.sh already appends an explicit CR and LF to every line (sed 's/$/\r/' before the trailing \n). If this switch were ON, the printer would add its own extra line feed on top of that, double-spacing the entire print.
2-5, 2-6 OFF, OFF Parallel interface txt2printr.sh writes to /dev/lp0, a parallel port device. The serial/parity combinations on this switch pair don't apply.
2-7, 2-8 Baud rate (don't care) Only meaningful in serial mode; ignored once 2-5/2-6 select Parallel. Leave at factory default.