zuldan wrote on 2025-02-11, 07:27:
Command & Conquer (and other games I mount the ISO for over the network via NETDRIVE) complains about the CD not being present if odipkt is used. SHSUCDX loads the ISO and mounts the drive with the C&C files, everything appears to be working. There must be some weird conflict between SHSUCDX and odipkt.
Ah, that's a completely different problem - and I'm afraid it may be impossible to solve without total rewrite of all the involved tools.
It's all described there - DOS/SMB/Mounting images
In short: don't expect SHSUCDHD+SHSUCDX to work correctly with an ISO image located on a remote drive.
It didn't work for me with Microsoft Network Client 3.0, and it probably can't work for you with NetDrive.
If using NetDrive, the workaround may be:
- don't use SHSUCDHD+SHSUCDX
- don't use ISO images
- use FAT disk images instead: copy all the files from an ISO image into a FAT image, and mount the FAT image on the DOS machine using NetDrive
- you may need some CD-ROM emulation utility to prevent games complaining that the NetDrive disk is not a CD
Would you be able to explain the changes you made to net.cfg
1.
Added support for ETHERNET_II frame type.
Now it supports two frame types, and two "logical boards":
1. (ODIPKT numbers it 0) ETHERNET_802.3 - like before, used by IPX, ODIPKT doesn't touch these frames
2. (ODIPKT numbers it 1) ETHERNET_II - this logical board is handled by ODIPKT, which provides it via INT 0x63 to Packet Driver applications, and they use it for TCP/IP
2.
Added the "Link Support" section, as recommended by the ODIPKT documentation.
WARNING!
For some hardware configurations, "Buffers 6 1600" may be not enough - try changing it to "Buffers 16 1600".
Sometimes it may improve performance, but I don't think it can solve the problem with SHSUCDHD+SHSUCDX.
how odipkt is different to the packet driver I was using.
Packet Driver directly handles the physical NIC.
And so does the ODI driver - therefore they conflict with each other.
ODIPKT doesn't touch the physical NIC.
It only handles one of the "logical boards", ie. frame types - passed to it by the LSL + ODI driver.
That means Frame Ethernet_802.3 is not compatible with packet drivers, and that’s the frame type I’m using. I’ll change to Ethernet_II and see what happens.
Again: you need both.
Ethernet_802.3 for IPX multiplayer games.
Ethernet_II for PD-based TCP/IP software.
Kiełbasa smakuje najlepiej, gdy przysmażysz ją laserem!