A few things I'm noticing with printing and was trying to figure out with the CMD command:
a) Not sure if this is intended but "InitPrinter" is initializing twice:
InitPrinter() doesn't initialize much. It just creates the ANSI "reset" code, and that is it:
Write(file,"\x1b#1\n",4)
This is, essentially, InitPrinter. (Hear, AmgiaOs source code public. (-;)). Everything else is up to the printer driver which takes this ANSI code and generates the printer-specific verson of it. This generate a bunch of CSI codes that are created both by the aRIS command (which is the nice name of this reset sequence), and the generic initialization of the printer that installs the page margins etc from the preferences.
c) Also, the HP 932C printer is strange in that after the Init sequence or even with a normal echo >prt: "test", I get a"Resume" light blinking on the printer -- though seems like i can safely ignore that. I was trying 2 drivers in Pagestream. This is the end of the output. Pagestream drivers issues a Reset and system printer driver issues a form feed. For Pagesteam driver, I don't get the resume light blinking.
The problem is that the amiga printer model is that of a line printer. You print a line, you are done. Unfortunately, this printer model is not adequate for today. Your hp is a page printer, that is, it needs an entire page at once. The reason why it is blinking is that it misses the form feed to indicate that the page has been transmitted completely, but this never comes. The problem is that we cannot simply send this when closing PRT: since that doesn't fit the model of the line printer either. There is no problem with a program opening and closing PRT: every line - this is acceptable behaviour. Even worse, if we would create a form feed at the end of a text output, it would be no longer possible to mix graphics and text on the same page. We had all this during beta testing, but there is no good solution to the problem. You can eject the page manually, you can create a form feed by software and send it to PRT:, all of this is fine.
So, in essence, I had the choice to either print some output incorrectly (by injecting always form feed when closing the device) or by leaving an inconvenience at the user. I believe what we settled at is to create the formfeed after printing graphics output, but not after text output. This is the best I can offer with the aged "page model" the Amiga has.