Heh wow. I had to search a bit, but in the end, the actual hack is incredibly easy.
See, when no command line parameter is given, the 'default' language is set to "5" so it automatically overflows (valid languages are 0-4) and gives the language selection screen.
All you need to do is change that 5 to the language you want. In my 3-language setup that's the byte at location 70A0

Languages are 0=ENG 1=FRE 2=GER 3=ITA 4=SPA, though of course we only got strings files for the first three.
Also note that while you force a default language this way, people can still change it by giving the correct command line parameter. And by giving an illegal language parameter, you can even force it to show the normal language selection menu again.
This is kinda what their original code must've looked like in C language... well besides the blatantly wrong string compares, and not checking the length of the command line parameters string (paramStr)

if (paramStr[1] != "")
{
languageID=0
while (languageID<5 && (langStrings[languageID] != paramStr[1]))
{
languageID++;
}
}
else
{
languageID=5;
}
if (languageID>=5)
{
showLanguageMenu();
}
SaveLanguage();
The part we replace is the
else { languageID=5; }