Changes

128 bytes removed ,  03:36, 20 July 2008
some updates with latest english
Line 1: Line 1:  
=Quellcode Ausschnitte=
 
=Quellcode Ausschnitte=
 
==Video-System-Autoerkennungs-Routine==
 
==Video-System-Autoerkennungs-Routine==
Bitte binde eine automatische Erkennungsroutine ((VIDEO_GetCurrentTVMode()) ein um HDTV/EDTV zu erkennen und setze den dazugehörigen Video-Modus.
+
Die libogc von DevkitPPC r15 setzt den Video-Modus automatisch durch einen Funktionsaufruf.
 
  −
Die aktuelle automatische Erkennungsroutine arbeitet nicht mit PAL60 ((480i @ 60 Hz bei einer PAL Wii), die das offizielle Nintendo RGB-Kabel nutzt.
      
Hier ist die Video-Erkennungsroutine aus dem DivKitPro Wii-Beispiel.
 
Hier ist die Video-Erkennungsroutine aus dem DivKitPro Wii-Beispiel.
   −
    switch(VIDEO_GetCurrentTvMode())
  −
    {
  −
        case VI_NTSC:
  −
            rmode = &TVNtsc480IntDf;
  −
        break;
  −
        case VI_PAL:
  −
            rmode = &TVPal528IntDf;
  −
        break;
  −
        case VI_MPAL:
  −
            rmode = &TVMpal480IntDf;
  −
        break;
  −
        default:
  −
            rmode = &TVNtsc480IntDf;
  −
        break;
  −
    }
  −
    VIDEO_Configure(rmode);
  −
  −
==Wii Neustarten==
  −
Es wäre eine gute Idee in jeder Homebrew die Möglichkeit einzubauen die Wii neuzustartn. Hier ist der Quellcode dafür.
   
<source lang="c">
 
<source lang="c">
void Reboot()
+
rmode = VIDEO_GetPreferredMode(NULL);
{
+
VIDEO_Configure(rmode);
// Thanks to hell_hibou
  −
int fd = IOS_Open("/dev/stm/immediate", 0);
  −
IOS_Ioctl(fd, 0x2001, NULL, 0, NULL, 0);
  −
IOS_Close(fd);
  −
}
   
</source>
 
</source>
   Line 39: Line 13:  
Es wäre eine gute Ideen eine Zurückspringen zum "loader" zu ermöglichen. Ansonsten müsste man die Wii neustarten um die Homebrew zu beenden.
 
Es wäre eine gute Ideen eine Zurückspringen zum "loader" zu ermöglichen. Ansonsten müsste man die Wii neustarten um die Homebrew zu beenden.
    +
<source lang="c">
 
     // Binde einfach die unistd.h-Headerdatei ein und rufe die ''exit()'' Funktion auf, um zum loader zurück zu kommen
 
     // Binde einfach die unistd.h-Headerdatei ein und rufe die ''exit()'' Funktion auf, um zum loader zurück zu kommen
 
     // Das Returnen aus der main Funktin funktioniert ebenso
 
     // Das Returnen aus der main Funktin funktioniert ebenso
Line 44: Line 19:  
     // ....
 
     // ....
 
     exit(0);
 
     exit(0);
 +
</source>
    
Anmerkkung: Der __crtmain-Code ist fehlerhaft, da er standardmäßig nicht exit aufruft. Kann man selbst verbessern. Zusätzlich ruft es nicht die Konstruktoren der globalen Objekte in C++ auf. Das kommt davon wenn man unsauber zusammengestrickte Einzeiler verwendet.
 
Anmerkkung: Der __crtmain-Code ist fehlerhaft, da er standardmäßig nicht exit aufruft. Kann man selbst verbessern. Zusätzlich ruft es nicht die Konstruktoren der globalen Objekte in C++ auf. Das kommt davon wenn man unsauber zusammengestrickte Einzeiler verwendet.
 +
 +
==Wii Neustarten==
 +
Es wäre eine gute Idee in jeder Homebrew die Möglichkeit einzubauen die Wii neuzustarten. Hier ist der Quellcode dafür.
 +
<source lang="c">
 +
SYS_ResetSystem(SYS_RESTART,0,0);
 +
</source>
 +
Oder rufe mit SYS_RETURNTOMENU die HOME-Menü wieder aufzurufen, SYS_POWEROFF die Wii auszuschalten (automatisch bei entsprechender Schlaff oder Standby-Modus, je nachdem die WC24-Einstellung). Der Modus wird genau anzugegeben mit SYS_POWEROFF_STANDBY oder SYS_POWEROFF_IDLE, indem kannst du gegen die Einstellung vorgehen.
 +
 +
==Wiimote Abfragen==
 +
A separate article is available: [[How to use the Wiimote]].
    
=Debugging Tipp=
 
=Debugging Tipp=
Line 99: Line 85:     
[[Category:German Pages]]
 
[[Category:German Pages]]
 +
{{Languages|Developer_Tips}}
316

edits