flat assembler
Message board for the users of flat assembler.

Index > OS Construction > Old Printers

Thread Post new topic Reply to topic

Joined: 14 Jan 2005
Posts: 382
Location: California, USA
THEWizardGenius 05 Jul 2005, 21:43
After reading a few books and online docs, I decided to put together a few documents pertaining to printer control; particularly, the languages used to control printers. So far I haven't found much about the newer languages, like ESC/P2 and PCL, but I do have ESC/P covered, along with CaPSL and the languages used by the old Diablo and Qume daisywheel printers. Mostly obsolete stuff Confused I have no idea if this will be useful or not, but I think you folks will like it anyways.
If anyone knows where to find out about PCL and the graphics language that is built in to PCL, GL or GL-2, I'd appreciate it. Incidentally, does anyone know of docs for PostScript? PostScript printers are ubiquitous but PS is a very complex language.

I created it with a Windows text editor (QuickEdit), so tables and lists may not show up properly in monospaced-font programs like the DOS EDIT program or in any Linux editors such as emacs or vi. If this is the case, sorry! However, I tried to make it easy to read and understand. This may or may not be useful if you are writing a driver (i.e., for your OS or for an OS which does not have a driver for these, such as DOS). Tell me if they are of any help to you.

BTW, I thought of an idea for implementing print drivers such that they could easily be used by any application, no matter what type of printer is being used:

An application would convert whatever internal file format they use, or call a system call to convert it, to a XML-based language that is printer-independent. It would be the job of the individual drivers to convert this standard language to the printer for which they are driving, and send the
result to the printer. Of course, the in-between language would have tags
for accessing model-, manufacturer-, or print-language-specific features.
This way applications can use their own internal format, the printer can use its' own format, neither cares about the format used by the other one. The application converts it's file to the in-between format and makes a system call.
The OS knows which driver the printer needs (the user has presumably set this up beforehand), and calls that driver. The driver converts the markup language to codes the printer understands, and sends them to the printer, adding any extra codes which the driver wants to add. The printer then prints it.

Does anyone think this is a good idea? Would it be better not to base the in-between language on XML, since this might slow things down (XML parsers can be pretty slow, and we want the whole process to be quick and transparent to the user)?

Description: ANSI Control Codes, Diablo & Qume, CaPSL, and ESC/P documents. I hope to add more if I can find out about other languages.
Filename: Printer Languages.zip
Filesize: 8.8 KB
Downloaded: 312 Time(s)

FASM Rules!
OS Dev is fun!
Pepsi tastes nasty!
Some ants toot!
It's over!
Post 05 Jul 2005, 21:43
View user's profile Send private message AIM Address Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum

Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.