How does it write to the port? What is the exact code?
If your application writes characters to LPT1, then assuming you are on Windows you can redirect LPT1 to your USB printer.
But if you use assembly to put characters directly to port 0x378 then there is nothing you can do but install a parallel port card in the PC and connect a parallel printer.