Skip to content

ESC/P 2: Fix behaviour on Windows 1.03#6782

Merged
OBattler merged 2 commits into
86Box:masterfrom
Lili1228:master
Feb 6, 2026
Merged

ESC/P 2: Fix behaviour on Windows 1.03#6782
OBattler merged 2 commits into
86Box:masterfrom
Lili1228:master

Conversation

@Lili1228

@Lili1228 Lili1228 commented Feb 6, 2026

Copy link
Copy Markdown
Contributor

Summary

This is an alt text for the image at the end.

This PR changes three things, related to how printing works on Windows 1.03:

  • A switch Auto LF is introduced, which is a DIP switch in Epsons. I thought this was the issue with how nothing could be printed but it seemed not to be the case - letters in a line had 1/6" vertical holes in the middle caused by erroneous LFs.
  • European paper sizes were set as exactly as the double type allows. A4 was too large.
  • Set margins to 1/36" from each side, which is the least common multiple of 1/180" (24-pin) and 1/216" (9-pin).

The way this version of Windows handles pages is, instead of using FF (0x12) at the end of the page like Epson recommends, spamming ESC J until it thinks it goes out of page. It misses a bit (vertical position ends up on 11.680(5)" instead of around 11.693"), so, to help a bit, I set the tiniest margins so it ends at 11.736", which causes the printer to finish a page.

The text above, printed in Helv font from Windows 1.03.

Checklist

  • Closes #xxx
  • I have tested my changes locally and validated that the functionality works as intended
  • I have discussed this with core contributors already
  • This pull request requires changes to the ROM set
  • This pull request requires changes to the asset set

@OBattler OBattler merged commit d3d86d4 into 86Box:master Feb 6, 2026
44 of 45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants