home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 April (Special) / Chip-Special_1997-04_cd.bin / spea / mercury / v7vmode2 / dualkit.exe / DUAL.TXT next >
Text File  |  1996-01-22  |  2KB  |  58 lines

  1.  
  2. Programmierung 2-Mercury P-64 unter MS-DOS:
  3.  
  4.  
  5. 1. spdual.exe aufrufen, um 2. Karte zu initialisieren.
  6.    ( erzeugt 'v7ini.dat' in GDC-Verzeichnis ).
  7.  
  8. 2. Bevor Applikation gestartet wird, 'v7vmode2.exe' aufrufen,
  9.    um 2. Karte zu enablen ( PCI ) und Videomode zu programmieren. 
  10.    Parameter fuer 'v7vmode2.exe' mit -? erhaeltlich.
  11.  
  12. 3. Immer,
  13.    ------
  14.    wenn fuer die 1. Karte der Interrupt 10h (Set Videomode (Graphic))
  15.    aufgerufen wird, muss das Register 0x46e8 nach 0x3c3 gemapped
  16.    werden mit (z.B. in C):
  17.  
  18.      s3_map_46e8()
  19.      {
  20.          // outpw( 0x3d4, 0xa039 ); eventuell unlock S3-Reg.
  21.          outp( 0x3d4, 0x65 );
  22.          outp( 0x3d5, inp( 0x3d5 ) | 0x04 );
  23.          // outpw( 0x3d4, 0x0039 ); eventuell lock S3-Reg.
  24.      }
  25.  
  26.      
  27.  
  28. 3. Nun kann in der Applikation mit folgender Funktion ( z.B. in C )
  29.    zwischen den zwei Karten hin-und hergeschaltet werden:
  30.  
  31.  
  32.    s3_select_card( int card )
  33.    {
  34.         if( card )
  35.         {
  36.            outp( 0x46e8, 0x10 );
  37.            outp( 0x102, 0x0 );
  38.            outp( 0x46e8, 0x0 );   /* disabled 1. Karte */
  39.  
  40.            outp( 0x3c3, 0x10 );
  41.            outp( 0x102, 0x1 );
  42.            outp( 0x3c3, 0x8 );   /* enabled 2. Karte */
  43.         }
  44.         else
  45.         {
  46.            outp( 0x3c3, 0x10 );
  47.            outp( 0x102, 0x0 );
  48.            outp( 0x3c3, 0x0 );   /* disabled 2. Karte */
  49.  
  50.            outp( 0x46e8, 0x10 );
  51.            outp( 0x102, 0x1 );
  52.            outp( 0x46e8, 0x8 );   /* enabled 1. Karte */
  53.         }
  54.    }
  55.  
  56.  
  57.  
  58.