Rick Harris wrote:
> Hi all,
> 
> I recall some time back on the list talk of tools to report and strip the DVD 
> region encoding on a DVD.
> 
> One user came up with one to report the region encoding being used by a 
> particular DVD, located at http://busy-bee.net/files/show_region.txt
> 
> Last night I had the need to strip a DVD's region encoding and after scouring 
> the mail archives and Google, came up with none.
> 
> So this morning I wrote a very simple one (my first C++ program):
> 
> /* File: dvd_region_free.cpp
>    A tool to force a DVD to be region code free
>    Author: Rick Harris  [EMAIL PROTECTED]
> 
>    Installation: Run `g++ dvd_region_free.cpp -o dvd_region_free` to compile,
>                   then `cp dvd_region_free /usr/bin/dvd_region_free`
>    Usage: /usr/bin/dvd_region_free /path/to/VIDEO_TS.IFO
> */
> 
> #include <iostream>
> using namespace std;
> #include <fstream>
> 
> int main(int argc, char** argv) {
>     if( argc != 2 ) {
>         fprintf( stderr, "Usage: %s VIDEO_TS.IFO\n", argv[0] );
>         return -1;
>     }
> 
> fstream File (argv[1], ios::in | ios::out | ios::binary);
>    if(! File) {
>         cerr << "File does not exist!\n";
>         exit(EXIT_FAILURE);
>     }
>     File.seekp (35);            // Seek to region code byte ready to write
>     char buffer[1] = "";
>     File.write (buffer, 1);     // Zero the byte
>     File.close();
> }
> 
> 
> Or if your mail client wraps weirdly, can be downloaded here 
> http://mightylegends.org/dvd/dvd_region_free.cpp
> 
> Simply seeks to the 35th byte in VIDEO_TS.IFO and over-writes it with a zero 
> byte.
> Each of the 8-bits of the 35th byte represent one region, so if the user 
> really wants to modify this they could also use it to create their own region 
> encoded discs by flipping the relevant bits.
> 
> Hope someone finds it useful.

I posted this to the list a year or two ago:

 /* compile me:                        */
 /*   gcc -o region-zero region-zero.c */
 /* set my perms:                      */
 /*   chmod 0755 region-zero           */
 /* move me to someplace useful:       */
 /*   mv region-zero /usr/local/bin    */
 /* run me in directory VIDEO_TS       */                                

 #include <stdio.h>

 main() {
   FILE * fd;
   fd = fopen("VIDEO_TS.IFO","r+");
   fseek(fd,0x23,SEEK_SET); /* hex offset 0x23 is the region code byte */
   putc(0x0,fd);            /* zero all the region code bits */
 }   

The program I really want to see is the one that uses the
laser in a dvd burner to damage a commercial dvd in such
a way that it is deregionalized.

Reply via email to