The problem described below is now solved, if not entirely cured (in the OPL coding).
It was the USB drivers that were not properly cleaned out before a launch over SMB, causing a conflict with all versions of the IOPRP function libraries newer than IOPRP234 (appx). This same conflict also causes similar problems when launching games on USB drives, though that was not the main topic of this thread. There is more information on this problem further on in this thread. The remainder of this post, below this edited block, remains as I wrote it before resolving the problem.
Recently I have been focusing on testing the use of VMC when running games through SMB core, and thus also using SMB for the VMC files. And I soon discovered that results on my v15 and v18 consoles were consistently different from what others have reported on older console models for a large group of games.
But when I tried to test this using my own v7 console, this resulted in ALL games freezing when trying to use VMC over SMB, even for games that could do this on my other consoles. From this I have drawn the conclusion that some part of the VMC code is 'allergic' to my DMS4proSE chip in that v7 console, much like all OPL versions before v0.7 would crash on that console due to such a modchip 'allergy'. So my v7 is worthless for testing VMC over SMB.
But I gather from results reported by some others that on an unmodded fat PS2 model the usage of VMC over SMB works fine for the large majority of games, regardless of age.
But for my v15 and v18 consoles that is not at all the case. For them all games tested to work properly with VMC over SMB have IOPRP files no later than IOPRP234 (many years old), and all games that have IOPRP240 or newer consistently fail to use VMC over SMB, always freezing in a very peculiar stage of the booting, during the 2nd bright yellow screen.
As far as I can tell this is shortly after the main elf load, as the launched elf begins to initialize, with the IOPRP usage being one of the first things to be done.
NB: The reason for the 'gap' above between IOPRP234 and IOPRP240 is because I haven't found intermediate versions in my games.
Now there are two things I'd like others to do, in order to help clarify this situation.
1: People with unmodded fat PS2 consoles should please check whether those are able to use VMC over SMB regardless of the version of the IOPRP files, both below IOPRP234 and above IOPRP240. The expected result (from hearsay) of such testing is that this should work, but we need definite confirmation.
2: People with unmodded slim consoles of models v14 == SCPH-770xx or later should please check whether those are able to use VMC over SMB regardless of IOPRP version too, or if they will see the same freezing problem that I get for all games with IOPRP240 or newer. For these tests I expect such freezing, but as yet I seem to be the only one who has reported it, so this definitely needs more confirmation.
And if it should just be due to some unique error at my end, then I need help finding this out ASAP, as that could invalidate all my testing.
All reports on these matters should mention the full SCPH-xxxxx product code of the console, as well as the product code of each game reported on, together with a mention of the specific IOPRPxxx file which was the latest one on that game disc (some games have several IOPRP files, and here we are mainly concerned with the newest ones).
NB: Game ISOs that were installed with DNAS/IOPRP patching by USBUtil, or game ISOs which were at any time subjected to 'IOPRP injection' by older tools, these must not be used in reports on these matters, except where clearly stated to be such and used only for comparison with results for a normal game ISO.
In testing these things you need to be aware of one peciliarity about IOPRP filenames, as Sony have been inconsistent about suppressing final zeroes in the version number part of the filenames. So IOPRP230 is normally named "IOPRP23.IMG" and IOPRP240 is likewise mostly named "IOPRP24.IMG", but IOPRP300 is always named "IOPRP300.IMG" (as far as I know).
And another thing to remember is that some games use no numbers at all in the IOPRP filename, like "Dirge of Cerberus", which simply names its IOPRP230 file "IOPRP.IMG". For such cases you need to look inside the file, using a hex editor, to find the four digit version numbers of the internal modules, with the first three digits normally matching the IOPRP file itself.
Best regards: dlanor