I've only a few things to add to this discussion about printing in USB -- most 
everything has already been said.  But, I will summarize. USB support in the 
BIOS (for computers that even still have a BIOS) is usually limited to some 
subset of mouse, keyboard, and/or mass storage (disk drives).  Some BIOSs will 
support all three, others only one or two.  Most BIOSs also do NOT support 
"live" connects or disconnects of the USB devices --- the devices must be 
plugged in when you boot the computer or they will not be recognized by the 
BIOS at all.  The same problem also exists with most (if not all) DOS USB 
drivers except mine.  BTW, supporting live connections and disconnections in 
DOS is a pretty significant feature in itself -- DOS was never designed to 
support it and it's far from trivial to implement. I have never seen a BIOS 
that supports USB printers, serial ports, Ethernet NICs, joysticks, etc.  I've 
also never seen a BIOS that has a way to "extend" it to add new types of USB 
devices or features.  My driver architecture provides a way to add new types of 
USB devices. Specifically regarding printing, I do provide a USB print driver.  
But what it does is virtualize the printer port (usually LPT1) so that anything 
that DOS normally sends to LPT1 gets sent instead directly to the USB-attached 
printer.  It does not do any type of protocol conversion -- it acts just like 
your printer is attached to a parallel centronics port.  As has been noted, a 
lot of modern printers can't handle regular text being sent to them -- they 
don't know what to do with that.  You have to send the data to the printer in a 
format the printer can understand.  As has also already been noted, other than 
plain ASCII text the most common types of printer commands that some of the 
more "sophisticated" DOS programs can send out are Epson ESC/P, HP PCL3, and 
PostScript.  Most modern printers won't accept any of those (including modern 
Epson and HP printers).  Modern Brother printers are usually pretty good about 
accepting these "old" protocols, as may a few other brands, but that is far 
from universal. The other thing with USB is that it is pretty much an "all or 
nothing" scenario when it comes to BIOS support.  That is, for each USB Host 
Controller, only one piece of software can be controlling it -- it must either 
be the BIOS or it must be an OS-specific driver.  When you boot, the BIOS will 
normally be controlling the keyboard, mouse, and/or disks.  If you have any 
other USB devices besides those (including printers), the BIOS completely 
ignores them and you cannot use them in DOS.  You can install drivers for those 
other devices if drivers are available.  But in order to install the DOS 
driver, you need to disconnect the BIOS.  The good thing is that you can do 
this for each individual host controller.  So, you can leave your mouse and 
keyboard and disks plugged into the host controller(s) that are being 
controlled by the BIOS and plug the other devices (printers or joysticks or 
whatever) into the host controller(s) that are not controlled by the BIOS. I 
also provide mouse and keyboard and disk drivers (though the disk driver 
admittedly doesn't work all that well) so you don't need to let the BIOS 
control anything if you don't want to.  The problem with that scenario is that 
if your keyboard is being controlled by the BIOS, when you install a DOS driver 
for the host controller that keyboard is plugged into your keyboard will stop 
working (because it has been disconnected from the BIOS).  So, you can't 
install the keyboard driver using the keyboard because you keyboard has stopped 
working.  As mentioned earlier in this thread, the way around this is to run 
some sort of "LOADUSB.BAT" batch file that will install everything you need 
(including the USB keyboard driver) without ever needing to type anything on 
the keyboard.  This is the way I need to set up my computers for testing. USB 
in DOS is challenging, but possible.

____________________________________________________________
Choose to be safer online.
Opt-in to Cyber Safety with NortonLifeLock.
Plans starting as low as $6.95 per month.*
https://store.netzero.net/account/showService.do?serviceId=nz-nLifeLock&utm_source=mktg&utm_medium=taglines&utm_campaign=nzlifelk_launch&utm_content=tag995&promoCode=A23457
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to