• Please review our updated Terms and Rules here

Duplex printing in DOS

Syntho

Experienced Member
Joined
Feb 23, 2022
Messages
83
I've got a couple older laser printers that I use for network printing. They work fine, and thankfully there's a parallel port on them too so I'll use my extra one to print from my DOS machine. i haven't printed something in DOS since about 1995 so I'm a little rusty. Would I need some sort of driver? There is no official one for DOS for the HP2300. Do I just configure the software I'm printing from to work with my printer? I'm mostly curious about duplex printing. I don't know if that's going to work in DOS, and if it does it's probably a specific setting in the programs I'll be printing from. Not sure how many DOS programs have a duplex print feature.
 
One thing everyone forgets about DOS is that there are no OS level printer drivers. Each application sends its data stream directly to the printer port and so needs to understand how to code escape sequences etc. So it may be the case that WordStar can talk to your printer, but WordPerfect cannot. So yes you need to configure each program for the printer.
 
I'm wondering if the software back then had duplex printing capabilities. I read just now that duplexing goes back to 1987, but not sure how much 90s DOS software had duplex printing capabilities.
 
Wordperfect 5.1 for DOS had drivers that could handle duplex printing; see http://www.columbia.edu/~em36/wpdos/51printers.html I believe MS Word 4 and 5 for DOS could as well but couldn't find a quick reference for proof. Even Locoscript claimed to have duplex printing capability, so I expect most of the high end DOS word processors and desktop publishers sold in the early 90s to be able to do it. The search engine popped up a snippet of the 1989 Ventura Publisher showing "double sided printing."

With some DOS wordprocessors, it will be necessary to tweak the printer driver to improve results with newer printers. MS Word's PRD printer definitions are complex and the manual for modifying them is poor. I never tried creating printer drivers for other DOS software so I have no knowledge of the complexity involved.

Note that the printer will need a lot of memory for duplex printing, especially if Postscript files are involved. The HP LJ 5si manual suggests that 22 MB are required for 11" by 17" duplex printing. Even some of the last printers with parallel ports needed a memory upgrade to succeed.
 
Last edited:
You can do manual duplex by printing page 1 then putting the paper back in for refeed and print 2 or you could turn on duplex in the printer menu but then all print jobs go duplex. I haven't printed with DOS in over 30 yrs so other than knowing that the software had the drivers rather than the OS I'm stumped on what other option you might have. When I was using DOS before Windows 3.1 I really only printed to my dot matrix and that of course had no duplex.
 
Same for daisywheel. I've got a few old programs that I occasionally use running under DOS emulation on Linux. I have them do a print-to-file of, say, a LaserJet configuration, then use Ghostscript to convert that output to PDF, then print the PDF as either multi-page and/or duplex. All handled with a shell script.
 
That reminds me, I have an old Smith-Corona daisywheel serial printer in my storage I should get out and test then do maintenance on it and decide to keep it or FeeBay it.
 
If its a HP printer, you can likely force the printer to duplex by feeding the printer the appropiate PJL commands before the start of a job.

Code:
@PJL SET DUPLEX=ON
 
I haven't yet tried duplex printing, only single-page printing. I'm not sure if this is a software-level thing or if it's a setting in my printer, but when I print something in DOS I see my printer saying "DATA RECEIVED" and then "READY". It stays at that stage until I've hit the checkmark button on the front of my HP printer, then it prints fine.

I don't remember having to hit any button on the printer itself to get it to print after receiving data in DOS, but that was 25+ years ago. When I print from XP, OS7, OSX etc it receives the data and automatically starts printing. Is this normal?
 
I haven't yet tried duplex printing, only single-page printing. I'm not sure if this is a software-level thing or if it's a setting in my printer, but when I print something in DOS I see my printer saying "DATA RECEIVED" and then "READY". It stays at that stage until I've hit the checkmark button on the front of my HP printer, then it prints fine.

When you say “print something in DOS” what do you mean? Are you literally just piping text to the printer ar the command line, or are you talking about some particular program? Because, as mentioned, there are no “system level” printer drivers in DOS itself; if you want sophisticated print formatting inside a program you have to set up a driver in every program you use.

DOS itself only has a very rudimentary idea of printers; printers means “line printers” that spit out text line after line on continuous paper. Laser (and modern inkjet printers) are “page printers” that don’t commit print to paper until certain conditions are met. If you’re just throwing raw unformatted text at an HP-compatible laser you’ll need to send it a form feed command to get it to spit out a page; DOS doesn’t automatically do this.
 
Laser or ink jet printers will not spit out a page until the text you send it reaches the bottom of the page, OR you send the form feed character (ASCII 0x0C). Commercial software handles this no problem. Hitting "print screen" does not send any form feeds.
 
PCL printers have no problem printing raw text on power up and act as stated. Postscript printers do not print raw text, although there are short programs out there that can emulate a "dumb" line printer. Many PS printers also have line printer emulation modes built in. The LaserWriters offered Diablo 630 emulation for example.
 
Ah, OK. For PCL printers, the PJL commands handle it. For Postscript, usually its a bit of coding with the setpagedevice command.

Code:
<< /Duplex true >> setpagedevice

The printer's PPD usually defines what the command is for a specific model, but the above seems to be applicable to most printers.
 
Back
Top