home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / boot / i386 / root / usr / share / sax / profile / FGLRX_DualHead_DriverOptions.pl < prev    next >
Perl Script  |  2006-11-29  |  3KB  |  117 lines

  1. #!/usr/bin/perl
  2.  
  3. use lib '/usr/share/sax/profile';
  4.  
  5. use strict;
  6. use Profile;
  7.  
  8. #====================================
  9. # Profile name...
  10. #------------------------------------
  11. my $name = "FGLRX_DualHead_DriverOptions";
  12.  
  13. #====================================
  14. # Init profile script
  15. #------------------------------------
  16. my $profile = ProfileInitScript();
  17.  
  18. #====================================
  19. # Do the profile adaptions...
  20. #------------------------------------
  21. if (ProfileIsNoteBookHardware()) {
  22.     open (FD,">",$profile) ||
  23.         die "$name: Can't open $profile: $!";
  24.     my $id = 55;
  25.     my $dt = '"Device->[X]->Raw->".$id++."->Option"';
  26.     my $dx = eval $dt;
  27.     print FD "SaXMeta->[X]->SAX_NO_CDB_CHECK=1\n";
  28.     print FD "Device->[X]->Option=SaXDualHead\n";
  29.     print FD "$dx=\"DesktopSetup\" \"Clone\"\n";
  30.     $dx = eval $dt;
  31.     print FD "$dx=\"ForceMonitors\" \"auto,crt1\"\n";
  32.     $dx = eval $dt;
  33.     print FD "$dx=\"SaXDualOrientation\" \"LeftOf\"\n";
  34.     $dx = eval $dt;
  35.     print FD "$dx=\"SaXDualMode\" \"Clone\"\n";
  36.     $dx = eval $dt;
  37.     print FD "$dx=\"Mode2\" \"1024x768\"\n";
  38.     $dx = eval $dt;
  39.     print FD "$dx=\"HSync2\" \"31-48\"\n";
  40.     $dx = eval $dt;
  41.     print FD "$dx=\"VRefresh2\" \"50-60\"\n";
  42.     $dx = eval $dt;
  43.     print FD "$dx=\"SaXDualHSync\" \"31-48\"\n";
  44.     $dx = eval $dt;
  45.     print FD "$dx=\"SaXDualVSync\" \"50-60\"\n";
  46.     $dx = eval $dt;
  47.     print FD "$dx=\"SaXDualResolution\" \"1024x768\"\n";
  48.     $dx = eval $dt;
  49.     print FD "$dx=\"SaXDualMonitorVendor\" \"__VESA__\"\n";
  50.     $dx = eval $dt;
  51.     print FD "$dx=\"SaXDualMonitorModel\" \"1024X768\@60HZ\"\n";
  52.     close FD;
  53. } else {
  54.     #====================================
  55.     # check secondary DDC data
  56.     #------------------------------------
  57.     open (FD,">>",$profile) ||
  58.         die "$name: Can't open $profile: $!";
  59.     my %data   = ProfileGetDDC2Data();
  60.     my $id = 55;
  61.     my $dt = '"Device->[X]->Raw->".$id++."->Option"';
  62.     my $dx = eval $dt;
  63.     print FD "$dx=\"DesktopSetup\" \"Clone\"\n";
  64.     $dx = eval $dt;
  65.     print FD "$dx=\"ForceMonitors\" \"auto,crt1\"\n";
  66.     $dx = eval $dt;
  67.     print FD "$dx=\"SaXDualOrientation\" \"LeftOf\"\n";
  68.     $dx = eval $dt;
  69.     print FD "$dx=\"SaXDualMode\" \"Clone\"\n";
  70.     $dx = eval $dt;
  71.     foreach my $key (keys %data) {
  72.         my $val = $data{$key};
  73.         SWITCH: for ($key) {
  74.             /^Model/      && do {
  75.                 $id = 66;
  76.                 $dx = eval $dt;
  77.                 print FD "$dx=\"SaXDualMonitorModel\" \"$val\"\n";
  78.                 last SWITCH;
  79.             };
  80.             /^Vendor/     && do {
  81.                 $id = 65;
  82.                 $dx = eval $dt;
  83.                 print FD "$dx=\"SaXDualMonitorVendor\" \"$val\"\n";
  84.                 last SWITCH;
  85.             };
  86.             /^Resolution/ && do {
  87.                 $id = 59;
  88.                 $dx = eval $dt;
  89.                 print FD "$dx=\"Mode2\" \"$val\"\n";
  90.                 $id = 64;
  91.                 $dx = eval $dt;
  92.                 print FD "$dx=\"SaXDualResolution\" \"$val\"\n";
  93.                 last SWITCH;
  94.             };
  95.             /^Hsync/      && do {
  96.                 $id = 60;
  97.                 $dx = eval $dt;
  98.                 print FD "$dx=\"HSync2\" \"$val\"\n";
  99.                 $id = 62;
  100.                 $dx = eval $dt;
  101.                 print FD "$dx=\"SaXDualHSync\" \"$val\"\n";
  102.                 last SWITCH;
  103.             };
  104.             /^Vsync/      && do {
  105.                 $id = 61;
  106.                 $dx = eval $dt;
  107.                 print FD "$dx=\"VRefresh2\" \"$val\"\n";
  108.                 $id = 63;
  109.                 $dx = eval $dt;
  110.                 print FD "$dx=\"SaXDualVSync\" \"$val\"\n";
  111.                 last SWITCH;
  112.             };
  113.         }
  114.     }
  115.     close FD;
  116. }
  117.