RiptOPL DOCS

SMB (network share)

Load PS2 (and PS1) games directly from a shared folder on a Windows PC, Linux Samba server, or NAS over your local network. RiptOPL speaks SMBv1 by default and can be switched to SMB2 with the SMB Version row in Device Settings. No USB drive required โ€” the PS2 mounts the share and reads ISOs straight off it.

โ„น SMB and Network Boot share the same adapter
The PS2 has one Ethernet port and one network driver. SMB (ETH) and Network Boot (UDPBD/UDPFS) are mutually exclusive โ€” enabling one in Device Settings disables the other. If you switch, you must save and restart for the change to take effect. See Network Boot for the UDPBD/UDPFS alternative.

What you need

โ„น Recommended on Windows: PS2 Servers
RiptOPL no longer embeds a PC SMB server. Open PS2-Servers.url from the release package or visit PS2 Servers, choose its SMBv1 server, select your games folder and follow the protocol-specific IP, port, share and credential values the launcher displays. It implements the OPL-compatible SMBv1 subset directly and does not require you to enable Windows' built-in SMB1 feature. Because it serves SMBv1 only, leave Device Settings โ†’ SMB Version on SMBv1 when you use it โ€” set to SMB2 it lists no games at all. Samba/NAS users staying on SMBv1 may need min protocol = NT1 if their server defaults have been tightened; that line is not needed when you run OPL on SMB2.

1. Set up the SMB server and share

PS2 Servers: download its packaged app, choose SMBv1 server (RiptOPL), select your games folder and click Start. Use the exact connection settings shown by the launcher, and keep SMB Version on SMBv1. The manual share instructions below are for Samba, a NAS, or another already-configured SMB server.

Create a folder

Create a folder to act as the OPL root โ€” e.g. C:\PS2SMB on Windows or /srv/ps2smb on Linux. Give it the standard OPL subfolder layout (OPL will create missing folders automatically on first connect, but it helps to have them ready):

PS2SMB\
  CD\       โ† PS2 CD-ROM games (blue-bottom discs, <700 MB ISOs)
  DVD\      โ† PS2 DVD5 / DVD9 ISOs
  POPS\     โ† PS1 *.VCD files + POPSTARTER.ELF (for PS1 games)
  ART\      โ† cover art
  CFG\      โ† per-game config files
  VMC\      โ† Virtual Memory Card images
  THM\      โ† themes
  CHT\      โ† cheat files
  APPS\     โ† homebrew ELFs

Share the folder with full read/write access

OPL needs full read and write permissions on the share so it can create the sub-folders above and write per-game config files during gameplay.

Linux / Samba: add a share block to /etc/samba/smb.conf โ€” for example:

[PS2SMB]
   path = /srv/ps2smb
   browseable = yes
   writable = yes
   guest ok = yes
   min protocol = NT1

Then run sudo systemctl restart smbd. If you use a password, set up a Samba user with sudo smbpasswd -a <username> instead of using guest ok = yes.

The min protocol = NT1 line above is only there to let a modern Samba still answer SMBv1. If you set SMB Version to SMB2 in Device Settings, drop that line and leave Samba at its own defaults.

Place your game ISOs

Copy PS2 ISOs into DVD\ (for DVD games) or CD\ (for CD-ROM games). USBExtreme/USB Advance split-format games (ul.*) work too, but single-file ISOs are simpler over a network. There is no per-file size limit on the SMB path โ€” DVD9 dual-layer ISOs (~8 GB) are fine.

2. Configure Network Settings in OPL

In RiptOPL, go to Settings โ†’ Network Settings. This dialog has two sections: the PS2's own network identity, and the share address.

PS2 IP address

FieldDescription
IP address typeStatic or DHCP. Static is recommended โ€” it avoids re-needing to update the settings when your router assigns a different lease.
IP AddressThe PS2's IP address (e.g. 192.168.0.10). Grayed out when DHCP is selected.
Subnet MaskTypically 255.255.255.0 for a home /24 network.
GatewayYour router's IP (e.g. 192.168.0.1).
DNS ServerUsually the same as the gateway, or your ISP/public DNS. Not required for SMB itself (which connects by IP), but needed if DHCP negotiation touches DNS.
Eth. Link ModeLeave on Auto unless your switch forces a specific speed/duplex. Options: Auto, 100Mbps Full-Duplex, 100Mbps Half-Duplex, 10Mbps Full-Duplex, 10Mbps Half-Duplex.

Share address and credentials

FieldDescription
Address TypeIP Address or NetBIOS. For most setups use IP address โ€” it connects directly without name resolution. NetBIOS lets you type a Windows machine name (e.g. MYPC) but requires the PS2 to resolve the name first; if the name lookup fails, OPL cannot connect at all.
AddressEither the server's IPv4 address (e.g. 192.168.0.5) or its NetBIOS name (up to 15 characters, e.g. MYPC), depending on Address Type.
PortRiptOPL defaults to 1111, but the client and server must match. PS2 Servers currently defaults to 1445; enter the value its launcher displays. Standard Samba/native SMB commonly uses port 445. Network Settings opens with advanced options on, so the Port field is always visible and editable.
ShareThe share name, e.g. PS2SMB. This is the name you gave the share on the server โ€” not a path. Default is PS2SMB.
UserThe username to log on with. Default is GUEST. For a guest/public share leave this as-is. For a password-protected share enter the correct account name.
PasswordLeave empty for no-password shares. For password-protected shares OPL first asks the loaded SMB driver to pre-hash the password. The SMBv1 driver does that and sends the hash; the SMB2 driver declines, because its own NTLMSSP exchange wants the password verbatim โ€” so OPL hands it over as-is and the driver still turns it into an NTLM response rather than putting it on the wire in the clear.
โ„น Subfolder prefix (ETH Prefix)
If your share contains more than one OPL layout โ€” for example you have multiple consoles sharing one NAS share โ€” you can point OPL at a subfolder inside the share. Set ETH Prefix Path under Settings โ†’ General Settings โ†’ Prefix Paths (config key eth_prefix) to the subfolder name. OPL will prepend that path to every read/write inside the share. Leave it empty to use the share root directly.

Saving and connecting

After filling in the fields, press OK to save. The dialog also has a Reconnect button: it saves and immediately retries the SMB connection without a full restart. If anything changed on the server (new files, credentials updated), Reconnect refreshes the game list without rebooting.

3. Enable SMB in Device Settings

Network Settings stores the how (address, credentials). Device Settings stores the whether โ€” open Settings โ†’ Device Settings. The network block is four separate rows, not one combined picker. For SMB you set the first row to Manual or Auto, the second to SMB, and the third to the dialect your server speaks:

RowValuesWhat it does
Network ProtocolOff / Manual / AutoThe network start mode, using the same three options as every other device. Off loads no network transport at all and greys out the three rows below it. Manual registers the ETH Games tab and connects when you navigate into it โ€” boot stays fast and you only pay the connection cost on entry. Auto brings the stack up during startup instead.
ProtocolSMB / UDPFS / UDPBDWhich transport owns the single Ethernet adapter. SMB is the network-share client documented on this page; UDPFS and UDPBD select Network Boot instead โ€” see Network Boot.
SMB VersionSMBv1 / SMB2Which SMB dialect to speak. SMBv1 is the default. Live only while Protocol is SMB, and greyed out otherwise โ€” but the value is kept, so detouring through UDPFS and back does not silently reset you to SMBv1. See SMB Version below.
AccessFiles / IMGOnly meaningful for UDPFS. Under SMB it is locked to Files and greyed out; under UDPBD it is locked to IMG. You never need to touch it for an SMB setup.
โ„น SMB is interlocked with Network Boot
Because Protocol is one exclusive picker, SMB and Network Boot (UDPBD/UDPFS) are mutually exclusive by construction: selecting SMB rules out UDPBD/UDPFS, and selecting either UDP transport rules out SMB. Both require the PS2's single Ethernet adapter; only one can be active at a time. The interlock is enforced both in the UI and at runtime in ethsupport.c, which refuses to bring up the SMB stack while UDPBD holds the adapter.

SMB Version โ€” SMBv1 or SMB2

The SMB Version row picks the dialect for the whole SMB session. It is not a browse-only or an in-game-only setting โ€” selecting SMB2 swaps both halves of the SMB path:

HalfSMBv1 (default)SMB2
Browsing the share in the menu (the ETH Games tab)PS2SDK's smbman.irxRiptOPL's smb2man.irx, built on libsmb2
Reading the disc image in-gameThe SMB1 reader inside cdvdmanThe SMB2 reader inside cdvdman

Both drivers register the same smb0: device name, so every path elsewhere in OPL โ€” the folder layout, the ETH prefix, the config keys โ€” is identical whichever one is loaded. Only one is ever resident at a time.

โš  An SMBv1-only server lists no games under SMB2
The whole session is one dialect; there is no negotiation down. If you set SMB Version to SMB2 and your server only speaks SMBv1 โ€” which includes the bundled PS2 Servers SMBv1 server โ€” the ETH Games tab comes up completely empty. That looks like a broken build but it is a configuration mismatch: put the row back on SMBv1, or run a server that speaks SMB2. OPL pops a message box saying as much each time you change the row to SMB2.
โš  Changing the dialect needs a restart if the network stack is already up
Each network transport loads its IOP module chain once per boot, and the in-game reader latches its dialect when cdvdman starts. If a network stack has already been brought up this session, switching between SMBv1 and SMB2 (or changing Protocol) does nothing until you restart OPL โ€” OPL shows the same restart notice it uses for a protocol change. From a cold boot the new dialect applies straight away.
โ„น SMB3 is deliberately not offered
SMB3 exists as a reserved value in the code but is not selectable: it mandates packet signing, which this tree does not implement. Offering it would be a picker that silently did something else. The row lists exactly two choices, and an unrecognised saved value is clamped back to SMBv1.
โ„น Share browsing behaves differently on SMB2
If you leave the Share field empty, OPL asks the driver to enumerate the server's shares and lists those on the ETH tab so you can pick one instead of games. The SMB2 driver does not implement share enumeration yet and reports zero shares, so under SMB2 that list comes up empty. On SMB2, fill in the Share name exactly as the server publishes it.

4. Game and folder layout

OPL uses the same folder structure on an SMB share as on USB or MMCE:

FolderContents
CD\PS2 CD-ROM games (ISOs under ~700 MB โ€” blue-bottom discs)
DVD\PS2 DVD5 and DVD9 ISOs (up to ~8.5 GB โ€” FAT32 4 GB limit does not apply over SMB)
POPS\PS1 *.VCD files + POPSTARTER.ELF (see PS1 over SMB below)
ART\Cover art images
CFG\Per-game configuration files
VMC\Virtual Memory Card images (.bin)
THM\Themes
CHT\PS2RD cheat files
APPS\Homebrew ELFs

Note that SMB paths use backslashes (\) internally โ€” OPL handles this automatically; your folder names on the server should just be plain ASCII without special characters.

5. PS1 games over SMB

The L3 VCD view works on SMB just like USB: press L3 on the ETH Games page to toggle between your PS2 disc list and your PS1 *.VCD list. Place your VCDs (and POPSTARTER.ELF) in the POPS\ subfolder of the share.

Launching a PS1 game over SMB has one extra requirement: POPSTARTER needs its own copy of the network configuration and its SMB modules on the memory card โ€” it cannot read them from the share at launch time.

Copy the SMB modules to the memory card

The release package ships a POPSTARTER/ folder containing the four network IRX modules POPSTARTER needs for SMB: smbman.irx, ps2ip.irx, ps2smap.irx, and ps2dev9.irx. Copy them to mc0:/POPSTARTER/ (or mc1:/POPSTARTER/). OPL checks for all four on one card before an SMB VCD launch and warns you rather than hanging if any are missing. OPL does not install them for you.

Write the POPSTARTER network config

Enable Settings โ†’ Network Settings โ†’ Write POPSTARTER Network Config (off by default). When you save Network Settings with this enabled, OPL mirrors the IP address and share values you just entered directly into mc?:/POPSTARTER/IPCONFIG.DAT and mc?:/POPSTARTER/SMBCONFIG.DAT, in the exact format POPSTARTER expects. You do not need to edit those files by hand.

The write is free-space-gated and truncation-safe โ€” it will not corrupt the memory card even if the card is nearly full. If writing fails, OPL shows an error message.

โš  The PS1 leg is SMBv1 regardless of the SMB Version row
The SMB Version setting governs OPL's own browsing and its in-game reader. It does not reach POPSTARTER: the module set OPL checks for on the memory card is the SMBv1 one (smbman.irx), and POPSTARTER reads its own SMBCONFIG.DAT, not OPL's dialect choice. So a PS1 VCD launched over SMB still needs a server that answers SMBv1, even if you have set OPL to SMB2 for PS2 games. If your server is SMB2-only, PS2 games over SMB will work and PS1 VCDs over SMB will not.

For deeper PS1 coverage โ€” cover art by PS1 disc ID, the Default game view lock, and BDMA module equipping for exFAT โ€” see PS1 Games (VCD).

Does the BDMA exFAT equip apply to SMB?

No. The BDMA equip copies block-device driver modules for POPSTARTER to use when reading an exFAT drive. SMB is a pure network path โ€” there is no block device involved. The BDMA Mode and BDMA Source settings in General Settings have no effect on an SMB VCD launch. The only prerequisite for PS1 over SMB is the four network IRX modules above plus the POPSTARTER network config files.

6. SMB vs. Network Boot โ€” the NIC interlock

The PS2's DEV9 expansion bay contains the Ethernet adapter (SMAP). There is only one, and only one network driver stack can own it at a time.

To switch from SMB to Network Boot (or vice versa), go to Device Settings, change the Protocol row, save, and restart OPL. You do not need to change any hardware.

The two approaches serve different use cases: SMB lets any device on the LAN (NAS, always-on PC, server) host your library with no special server software beyond a standard file share; Network Boot via UDPBD/UDPFS requires a dedicated server process running on a PC during play but streams the disc image at block-device level (Neutrino handles the disc emulation, not OPL's loader core). See Network Boot (UDPBD/UDPFS) for details.

7. Common problems

SymptomLikely cause & fix
OPL shows "Network startup error: CONN" or similar The PS2 cannot reach the server. Check: server IP is correct, server is on and reachable, the server answers the dialect selected in SMB Version, no firewall is blocking the configured port, and the PS2 IP is valid. With PS2 Servers, copy the protocol-specific IP and port shown by its launcher rather than assuming RiptOPL's default 1111.
OPL shows "LOGON" error Wrong username or password. Try GUEST / empty password for a guest share, or confirm the account credentials. Check that the Samba user (if Linux) has been added with smbpasswd.
OPL shows "SHARE" error (open share failed) The share name does not match. Verify the exact share name on the server (case-sensitive on Linux). The default OPL share name is PS2SMB.
Game list is empty even after connecting Check that ISOs are in the correct subfolder (DVD\ or CD\) and that the user has read access to those folders. On Windows, NTFS permissions and share permissions are separate โ€” verify both.
ETH Games tab lists nothing at all after switching to SMB2 Almost always a dialect mismatch: the server only speaks SMBv1. The session does not negotiate down, so nothing is listed. Set Device Settings โ†’ SMB Version back to SMBv1 (required for the bundled PS2 Servers SMBv1 server), or point OPL at a server that speaks SMB2. If you just changed the row and nothing moved at all, restart OPL โ€” see below.
Changing SMB Version appears to do nothing The SMB module chain loads once per boot and the in-game reader latches its dialect when the game starts, so the new dialect only applies after a restart if a network stack was already up this session. OPL shows a restart notice in that case; save and restart OPL.
Games load slowly or stutter Wired Ethernet is strongly recommended. If using a media bridge or powerline adapter, test with a direct cable run first. Neither dialect compresses or caches on OPL's side; all disc reads go across the wire in real time.
DHCP fails / no IP assigned OPL waits up to 30 seconds for a valid DHCP lease. If it times out, it logs "Unable to get valid IP address via DHCP." Switch to a static IP if your DHCP server is slow or if the PS2's MAC is not being offered a lease.
PS1 VCD launch fails or hangs Check that the four SMB IRX modules (smbman.irx, ps2ip.irx, ps2smap.irx, ps2dev9.irx) are present in mc?:/POPSTARTER/, and that the network config files (IPCONFIG.DAT, SMBCONFIG.DAT) have been written. Use the Write POPSTARTER Network Config toggle in Network Settings. Note that this leg is SMBv1 whatever SMB Version is set to, so the server must still answer SMBv1 for PS1 VCDs.
Windows: share works from PC but PS2 cannot connect Use PS2 Servers instead of enabling Windows' built-in SMB1 feature, and match the IP, port, share and credentials shown by its launcher. Confirm its firewall rule allows the selected SMB port on your private LAN.

8. Config file keys

The PS2's network identity and the share address are stored in conf_network.cfg (saved alongside settings_riptopl.cfg). You can edit it directly for values the on-screen number-spinner makes tedious to enter:

KeyDescription
ps2_ip_use_dhcp0 = static, 1 = DHCP
ps2_ip_addrPS2 static IP address
ps2_netmaskSubnet mask
ps2_gatewayDefault gateway
ps2_dnsDNS server
eth_linkmode0 = Auto, 1โ€“4 = 100M FDX / 100M HDX / 10M FDX / 10M HDX
smb_share_use_nbns0 = IP address mode, 1 = NetBIOS name mode
smb_share_nb_addrNetBIOS name of the server (used when smb_share_use_nbns=1)
smb_ipServer IP address (used when smb_share_use_nbns=0)
smb_portSMB TCP port (default 1111)
smb_shareShare name (default PS2SMB)
smb_userLogin username (default GUEST)
smb_passPassword (empty for no-password shares)

Two more keys affect SMB but live in settings_riptopl.cfg rather than conf_network.cfg, because they belong to OPL's own settings rather than to the share address:

KeyDescription
smb_dialectThe SMB Version row. 0 = SMBv1 (default), 1 = SMB2. 2 is reserved for SMB3 and is not selectable; any value other than 0 or 1 is clamped back to SMBv1 on load.
eth_prefixThe ETH Prefix Path subfolder inside the share โ€” see below.
What about eth_prefix / ETH Prefix?

The eth_prefix key (set via General Settings โ†’ Prefix Paths โ†’ ETH Prefix Path) is stored in settings_riptopl.cfg, not in conf_network.cfg. When non-empty, OPL appends it (plus a backslash) between the share root and every path it constructs โ€” so smb0:PS2\DVD\game.iso instead of smb0:DVD\game.iso. Use this if the share hosts multiple setups and OPL's root is not the share root.

See also