How does PCSXR deal with region requests?
Solution 1:
For those aspects of 'regions' that do not actually affect the physical functioning of the hardware (I.e. those regions that are just labels arbitrarily assigned), there is no problem with emulators. Why?
Emulators simply don't use this region-locking "feature". They don't read the 'special section' of the disc. And since the game is unaware of its existence as a 'safety feature', this DRM is ironically its own undoing. There's no way for the game to query or know what its own region is, when all the regions behave the same.
Some emulators also have 'fast-boot' support that skips this phase of the boot process, also nullifying region checks further.
So as emulators don't need the region information, they just imitate the real thing: It's never available. Hence custom checks that fail if region information is available past boot will succeed on properly behaved, read; most popular, emulators.
There is one aspect that is different though: PAL versus NTSC. The latter is used in Japan, Canada, the USA, Mexico. The former is used in the rest of the world. These two standards have different framerates. That is something the game can access, and thus games that are created for PAL might crash or quit themselves if loaded on an NTSC BIOS and vice versa due to custom checks, as you noticed. But since the emulator controls the BIOS subsystem, it can simply be instructed by the user to load the correct one for the game. When using fastboot, the emulator might also infer the correct display standard from the game itself and set itself up accordingly.
Side note: It might behoove the user to locate PAL versions of any NTSC game they have originally developed in the US or Japan: NTSC conversions are typically of poor quality, game developers usually took the route of slowing the whole game down by ~17%, which tends to affect the experience negatively: Even though 60fps PAL is a thing, support for more TV sets and/or lack of knowledge overrode the decision to implement it properly.
You can read more about it here. Or check out the source code of an emulator to see how video mode switching works. (This is PCSX2, but it also supports PS1 games).