It's debatable if this is even on topic here, vs say retrocomputing.
That said, the registers of PC parallel ports are mostly standardized, and what differs is the base address. So for example your typical first port at base address 0x378 has its data register at base+0, its status at base+1, etc.
The same pattern would hold true for other base addresses. From memory, the most common were 0x378, 0x3bc and 0x278 - however there is not anything preventing someone from building a port with an address decoder that puts it at any other address not conflicting with something else in that particular system, as long as they can build the hardware and convince software to use it.
Worth noting that the pattern of having multiple similar peripherals with the same (or nearly so) register structure repeating from different base addresses is very common in modern microcontrollers as well (with the slight difference that they are memory mapped, vs. being in the special I/O address space the 8086 inherits from earlier Intel processors).