The secrets of video_ts.ifo
Regional Area:
The region(s) which a dvd is restriced to, is stored at byte offset 35 (0x23).
Here's a list of possibilities and their byte values in hex (and decimal):
Region1: FE (254)
Region2: FD (253)
Region3: FB (251)
Region4: F7 (247)
Region5: EF (239)
Region6: DF (223)
Region1 + 2: FC (252)
Region2 + 6: DD (221)
Region1 + 3: FA (250)
Region3 + 4: F3 (243)
Region1 + 4: F6 (246)
Region3 + 5: EB (235)
Region1 + 5: EE (238)
Region3 + 6: DB (219)
Region1 + 6: DE (222)
Region4 + 5: E7 (231)
Region2 + 3: F9 (249)
Region4 + 6: D7 (215)
Region2 + 4: F5 (245)
Region5 + 6: CF (207)
Region2 + 5: ED (237)
Region1 + 2 + 3: F8 (248)
Region2 + 3 + 5: E9 (233)
Region1 + 2 + 4: F4 (244)
Region2 + 3 + 6: D9 (217)
Region1 + 2 + 5: EC (236)
Region3 + 4 + 5: E3 (227)
Region1 + 2 + 6: DC (220)
Region3 + 4 + 6: D3 (211)
Region2 + 3 + 4: F1 (241)
Region4 + 5 + 6: C7 (199)
There are of course several other possibilities, but I'll give
you the chance to generate those yourself.
You might be wondering how to generate them, and here it goes:
There are 8 different regions, but only 6 are in use at the moment.
So let's put up 8 bits (which is, as you know, one byte):
11111110 = 0 + 2 + 4 + 8 + 16 + 32 + 64 + 128 = 254 = FE (hex) = Region 1
11111101 = 1 + 0 + 4 + 8 + 16 + 32 + 64 + 128 = 253 = FD (hex) = Region 2
Figured the system out yet? No? What? ;)
Set bit 1 to 0 if you want region 1. Set bit 2 to 0 if you want region 2. Etc, etc.
Here's another example, let's say we want a region 3 & region 6 DVD.
11111011 = 1 + 2 + 0 + 8 + 16 + 32 + 64 + 128 = 251 = FB (hex) = Region 3
*AND
11011111 = 1 + 2 + 4 + 8 + 16 + 0 + 64 + 128 = 223 = DF (hex) = Region 6
=
11011011 = 1 + 2 + 0 + 8 + 16 + 0 + 64 + 128 = 219 = DB (hex) = Region 3 + 6
* AND is an assembly instruction, which is very easy to explain. 1 & 1 = 1, anything else is 0.