Reconstructed DDFX driver source                     John Elliott, 2025-09-07
=============================================================================

  This is an attempt at reconstructing the source code for the three GSX 
Epson printer drivers:
* DDFXHR8.PRL: High resolution, 8-bit parallel port 
* DDFXLR8.PRL: Low resolution,  8-bit parallel port
* DDFXLR7.PRL: Low resolution,  7-bit parallel port

starting with the MX-80 source code supplied in the GSX source.

  To the best of my knowledge and belief, GSX is covered by the CP/M open 
source licence:

; "Let this paragraph represent a right to use, distribute, modify, enhance, 
; and otherwise make available in a nonexclusive manner CP/M and its 
; derivatives. This right comes from the company, DRDOS, Inc.'s purchase of 
; Digital Research, the company and all assets, dating back to the mid-1990's. 
; DRDOS, Inc. and I, Bryan Sparks, President of DRDOS, Inc. as its 
; representative, is the owner of CP/M and the successor in interest of 
; Digital Research assets."

How to build
============

  Under CP/M, run BUILD.SUB. You will need a large (by CP/M standards) disk
drive, say 1800k, to hold all the files generated by the build.

  Under UNIX, you will need ZXCC installed with the Digital Research 
assembler, linker and librarian (RMAC, LIB and LINK) on the CP/M search path;
then you should be able to type 'make' in the normal way.

Notes
=====
  The main differences I have observed between the MX80 driver source and the
FX80 drivers are:

* The MX80 driver uses 7 pins (like DDFXLR7) rather than 8. However the 
 MX80 driver does not attempt to limit the escape codes it sends to 7-bit
 ASCII.
* Robustness. The FX80 drivers seem to take more care over parameter 
 validation, checking lower limits as well as upper and, in some cases, 
 underflow into negative numbers.
* The MX80 driver does not support write modes, colour selection or filled 
 areas.

