split is a command line based tool to split files to multiple chunks.
It is also possible to join these splitted chunks together so that the original file is restored.
split -split  -- split file into parts
split -join  -- join file parts into original file
split -verify -- verify a split file
is the large file you wish to split
is the base path and name to assign to the split files
is the optional split size, in MB (100MB is the default)
is the name of the .split generated with -split
is the name of the file to output (defaults to original name)
Street Fighter II Turbo - Hyper Fighting (Jpn, Alt)
<rom name="shvc-ti-0.p1.u1" size="1048576" crc="85e15c3f" sha1="01c00cfd47296e4fca7ca6ef631b561a444538c2"/>
<rom name="shvc-ti-0.p2.u2" size="1048576" crc="20ace25a" sha1="55757c35bb51cb5974586cea4e732e74de7988a0"/>
Street Fighter II Turbo - Hyper Fighting (J) [o1].smc
split -split "Street Fighter II Turbo - Hyper Fighting (J) [o1].smc" shvc-ti-0 1MB
Splitting file shvc-ti-0 into chunks of 1MB...
Reading part 0... writing shvc-ti-0.000... done
Reading part 1... writing shvc-ti-0.001... done
Reading part 2... writing shvc-ti-0.002... done
Reading part 3...File split successfully
Just rename the first 2 splitted parts:
shvc-ti-0.000 = shvc-ti-0.p1.u1
shvc-ti-0.001 = shvc-ti-0.p2.u2
PS: If you need a custom split, like 2097152 bytes for the first ROM and 1048576 bytes for the second ROM you have to split the original ROM (3145728 bytes)in 3 parts (each 1MB).
Use now the -join parameter to merge the files.
As first you have to edit the generated shvc-ti-0.split file because it seems, a custom merge with the split file is not possible.
Delete the line: hash=EC0879560A81DA9588337907A58C5789296EEAD1 file=shvc-ti-0.002
So the hashes for the first 2 parts are avaiable now.
split -join shvc-ti-0.split ROM1