home *** CD-ROM | disk | FTP | other *** search
-
- Programmierung 2-Mercury P-64 unter MS-DOS:
-
-
- 1. spdual.exe aufrufen, um 2. Karte zu initialisieren.
- ( erzeugt 'v7ini.dat' in GDC-Verzeichnis ).
-
- 2. Bevor Applikation gestartet wird, 'v7vmode2.exe' aufrufen,
- um 2. Karte zu enablen ( PCI ) und Videomode zu programmieren.
- Parameter fuer 'v7vmode2.exe' mit -? erhaeltlich.
-
- 3. Immer,
- ------
- wenn fuer die 1. Karte der Interrupt 10h (Set Videomode (Graphic))
- aufgerufen wird, muss das Register 0x46e8 nach 0x3c3 gemapped
- werden mit (z.B. in C):
-
- s3_map_46e8()
- {
- // outpw( 0x3d4, 0xa039 ); eventuell unlock S3-Reg.
- outp( 0x3d4, 0x65 );
- outp( 0x3d5, inp( 0x3d5 ) | 0x04 );
- // outpw( 0x3d4, 0x0039 ); eventuell lock S3-Reg.
- }
-
-
-
- 3. Nun kann in der Applikation mit folgender Funktion ( z.B. in C )
- zwischen den zwei Karten hin-und hergeschaltet werden:
-
-
- s3_select_card( int card )
- {
- if( card )
- {
- outp( 0x46e8, 0x10 );
- outp( 0x102, 0x0 );
- outp( 0x46e8, 0x0 ); /* disabled 1. Karte */
-
- outp( 0x3c3, 0x10 );
- outp( 0x102, 0x1 );
- outp( 0x3c3, 0x8 ); /* enabled 2. Karte */
- }
- else
- {
- outp( 0x3c3, 0x10 );
- outp( 0x102, 0x0 );
- outp( 0x3c3, 0x0 ); /* disabled 2. Karte */
-
- outp( 0x46e8, 0x10 );
- outp( 0x102, 0x1 );
- outp( 0x46e8, 0x8 ); /* enabled 1. Karte */
- }
- }
-
-
-
-