Well, I know about the patches and loaders. I don't really plan to start a similar project, however, i like tweaking executables files and I like fallout...
If I find some interesting hacks I'll let the community know.
About, the pipboy problem, I had a look at the right place and I think it might be easier than I thought at first to check if a global var is set, i'm going to test this idea right now...
EDIT: well, it's easy to change the prog to check for a gvar instead of wether or not the video has been played.
Here's how it's done: the prog calls a function that checks if a video has been played, the function receives as an argument the id of the video. So, all you have to change is the function called (now we call a function which returns the value of a gvar) and the argument passed (the number of the gvar).
So, here are the patching instructions:
to change the function called, the two bytes at the offset 0xaff02 must be: 62 41
the variable number must be set at the offset 0xafefd, a four bytes integer, and, because the x86 is a little endia processor, you must reverse byte order.
For example, if you use the gvar n° 695, the hex value for 695 is: 0x2b7, with four bytes, it gives 00 00 02 b7, so at the offset 0xafefd you must have b7 02 00 00.
Once you have patched it correctly, you'll have pipboy enabled when the gvar is set.
with fvp, remove the pipboy line and add this in [US]:
func1= 4BFB02:1: 62
func2= 4BFB03:1: 41
gvarn1= 4BFAFD:1: B7
gvarn2= 4BFAFE:1: 02
gvarn3= 4BFAFF:1: 00
gvarn4= 4BFB00:1: 00
of course, for gvarn, replace with the number of the gvar you want to use.