Dieser Artikel betrifft die Nintendo Wii U

Wii U N64 VC patch.ini: Unterschied zwischen den Versionen

Aus WiiDatabase Wiki
Zur Navigation springenZur Suche springen
(noch nicht getestet aber es sollte alles gehen ich mache mich sofort ans testen.)
KKeine Bearbeitungszusammenfassung
 
(23 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 5: Zeile 5:
Diese Seite versucht alle möglichen Optionen dieser Dateien zu dokumentieren, um es so möglich zu machen die VC, für bestimmte Injects nutzbar zu machen.
Diese Seite versucht alle möglichen Optionen dieser Dateien zu dokumentieren, um es so möglich zu machen die VC, für bestimmte Injects nutzbar zu machen.


'''Wenn etwas nicht funktioniert probiere es bitte mit einem neueren Build der Virtual Console. Der aktuellste Build der VC ist SVN 2428, mit ihm sollten alle hier gelisteten Optionen gehen.'''
Alle hier gelisteten Optionen sind in der aktuellen Build der Virtual Console enthalten, welche mit F-Zero X ausgeliefert wird (Stand: 22.06.2018).


{| class="wikitable" | width="100%"
{| class="wikitable" | width="100%"
Zeile 16: Zeile 16:
| <code>PlayerNum</code>
| <code>PlayerNum</code>
| '''1''' - '''4'''
| '''1''' - '''4'''
| Legt fest wie viele Controller angemeldet sein können während die VC läuft.. Diese Option ist zwar in offizieller VC auskommentiert, scheint aber trotz allem immer mit der Anzahl der maximalen Spieler des Spiels konfiguriert zu sein.
| Legt fest, wie viele Controller angemeldet sein können während die VC läuft. Diese Option ist zwar in offizieller VC auskommentiert, scheint aber trotz allem immer mit der Anzahl der maximalen Spieler des Spiels konfiguriert zu sein.<br>
|-
|-
| <code>Rumble</code>
| <code>Rumble</code>
Zeile 45: Zeile 45:
* '''16K''': 16 KB
* '''16K''': 16 KB
| Legt die Größe des Backup-Speichers fest. Besonders bei Spielen mit Anti-Piraterie-Erkennung via Speichergröße wichtig.
| Legt die Größe des Backup-Speichers fest. Besonders bei Spielen mit Anti-Piraterie-Erkennung via Speichergröße wichtig.
'''Da keine 32K Option existiert werden Spiele wie die PAL-Version von Super Smash Bros. wahrscheinlich nicht funktionieren.'''
Wenn ein 32 KB großer Speicher benötigt wird, müssen weder <code>BackupType</code> noch <code>BackupSize</code> angegeben werden. Die Virtual Console wird versuchen den Speichertypen selbst zu erkennen und anschließend einen 32 KB Speicher erstellen.<ref>TODO: Testen wie es sich auf z.B: Flash/128K (Pokémon Stadium, etc.) bezieht.</ref>
|-
|-
| <code>PDFURL</code>
| <code>PDFURL</code>
Zeile 58: Zeile 58:
* '''0x400000''': 4 MB, kein Expansion Pak
* '''0x400000''': 4 MB, kein Expansion Pak
* '''0x800000''': 8 MB, Expansion Pak installiert
* '''0x800000''': 8 MB, Expansion Pak installiert
| Legt fest ob ein Memory Expansion Pak installiert ist.
| Legt fest, ob ein Memory Expansion Pak installiert ist.
Muss '''0x800000''' für Donkey Kong 64, Perfekt Dark und Zelda: Majoras Mask sein da diese das Expansion Pak zwingend benötigen. Auch Spiele die das Expansion Pak nicht benötigen können davon profitieren.<ref>''Todo: Testen ob auch Werte über 0x800000 funktionieren, da dies helfen könnte, Hacks zum laufen zu bringen welche Memory Patches haben. Ideal: Werte für 12 MB & 16 MB testen da viele Hacks mit Memory Patch entweder 12 bzw. 16 MB nutzen.''</ref>
Muss '''0x800000''' für Donkey Kong 64, Perfekt Dark und Zelda: Majoras Mask sein da diese das Expansion Pak zwingend benötigen. Auch Spiele die das Expansion Pak nicht benötigen können davon profitieren.<ref>''TODO: Testen ob auch Werte über 0x800000 funktionieren, da dies helfen könnte, Hacks zum laufen zu bringen welche Memory Patches haben. Ideal: Werte für 12 MB & 16 MB testen da viele Hacks mit Memory Patch entweder 12 bzw. 16 MB nutzen. Es sollte von der VC erwartet werden können das sie es kann, da selbst ein unmodifiziertes N64 16 MB RAM während des Boots initialisieren kann. ''</ref>
|-
|-
| <code>TrueBoot</code>
| <code>TrueBoot</code>
Zeile 65: Zeile 65:
* '''0''': Blackscreen
* '''0''': Blackscreen
* '''1''': Normaler Boot
* '''1''': Normaler Boot
| Eventuell: Bestimmt ob das emulierte N64 während des Boots ein Cartidge eingelegt hat oder emuliert den CIC-Lockout Chip.
| Eventuell: Bestimmt ob der emulierte N64 während des Boots eine Cartidge eingelegt hat oder emuliert den CIC-Lockout Chip.
|-
|-
| <code>EEROMInitValue</code>
| <code>EEROMInitValue</code>
| '''0x00''' - '''0xFF'''
| '''0x00''' - '''0xFF'''
| Der Wert jedes Bytes im emulierten EEPROM bevor auf ihm gespeichert wurde. Sollte entweder 0x00 oder 0xFF sein.
| Der Wert jedes Byte im emulierten EEPROM, bevor auf ihm gespeichert wurde. Sollte entweder 0x00 oder 0xFF sein.
|-
|-
| <code>TPak</code>
| <code>TPak</code>
Zeile 75: Zeile 75:
* '''0''': Kein Transferpak
* '''0''': Kein Transferpak
* '''1''': Emuliert ein Transferpak
* '''1''': Emuliert ein Transferpak
| Da keine Game-Boy-ROM festgelegt werden kann, ziemlich nutzlos. Rumble oder MemPak können nicht verwendet werden während dies aktiviert ist.
| Nutzlos, da keine Game-Boy-ROM festgelegt werden kann. Rumble oder MemPak können nicht verwendet werden während dies aktiviert ist.
|-
|-
| <code>MemPak</code>
| <code>MemPak</code>
Zeile 81: Zeile 81:
* '''0''': Kein Memory Pak
* '''0''': Kein Memory Pak
* '''1''': Memory Pak im Controller von Spieler 1
* '''1''': Memory Pak im Controller von Spieler 1
| Emuliert ein Memory Pak im Controller von Spieler 1. Sehr fehlerbehaftet und kann zu Abstürzen führen. Kann nicht genutzt werden während TPak oder Rumble auf 1 gesetzt sind.
| Emuliert ein Memory Pak im Controller von Spieler 1. Sehr fehlerbehaftet und kann zu Abstürzen führen. Kann nicht genutzt werden, während TPak oder Rumble auf 1 gesetzt sind.
|-
|-
| <code>TLBMissEnable</code>
| <code>TLBMissEnable</code>
Zeile 122: Zeile 122:
| <code>FirstFrameAt</code>
| <code>FirstFrameAt</code>
| '''[[w:Integer_(Datentyp)#Maximaler_Wertebereich_von_Integer|Unsigned Integer]]''' (z.B. 1000)
| '''[[w:Integer_(Datentyp)#Maximaler_Wertebereich_von_Integer|Unsigned Integer]]''' (z.B. 1000)
| Überspringt das Rendern aller Frames vor diesem Wert. Kann helfen wenn das Spiel ein Grafikcommand verwendet welches vom Emulator nicht verstanden wird. Unter anderem in der JP Version von Super Smash Bros. verwendet.
| Überspringt das Rendern aller Frames vor diesem Wert. Kann helfen, wenn das Spiel ein Grafik-Kommando verwendet, welches vom Emulator nicht verstanden wird. Unter anderem in der japanischen Version von Super Smash Bros. verwendet.
|-
| <code>NeedPreParse</code>
| '''0''', '''1'''
| Behebt Stottern der Grafik (Renderfehler wenn keine Skybox da ist?)
|}
|}


== GameShark Cheatcodes verwenden ==
<!---== GameShark-Cheatcodes verwenden ==
Gameshark Codes sind glücklicherweise so strukturiert das du sie fast ohne extra arbeit in der Virtual Console verwenden kannst. Hier kannst du nachlesen wie du deinen GameShark Code für die VC fit machst.  
{{Achtung|Dieser Abschnitt ist noch ungetestet und braucht mehr Informationen}}
 
(Suche ein Spiel auf dem eshop welches auf jedenfall mit den GameSharks im Internet läuft, sprich keine seltsammen v1.2er wie Ocarina of Time. Wenn du eines kennst bitte bescheid geben --EnterpriseFreak)
 
Gameshark-Codes sind so strukturiert, dass sie fast ohne extra Arbeit in der Virtual Console verwenden werden können. Diese sehen üblicherweise so aus:
 
<pre>NNXXXXXX YYYY</pre>
 
'''NN''' ist der Code-Typ, '''XXXXXX''' die Speicheradresse, die geändert werden soll und '''YYYY''' der neue Wert.<ref>http://ngemu.com/threads/creating-codes.103421/#post-1341216</ref><ref>https://web.archive.org/web/20100616165707/http://thegshi.org/faqs/hackv500c.html</ref>
 
'''Wer keine Lust hat sich die Codes selbst umzuwandeln kann [https://github.com/EnterpriseFreak/gs2vc/releases/latest dieses] Tool nutzen!'''


Los gehts!
'''Beispiel für das Spiel "The Legend of Zelda: Ocarina of Time" (US) (v1.0 (Gold Cart)):'''
 
Folgender Code kann verwendet werden, wenn alle goldenen Skulltulas als "getötet" markiert werden sollen: <code>8011A6A1 00FF</code><ref>https://www.zeldaxtreme.com/ocarina-of-time/gameshark-codes-version-1.0/</ref> So wird dieser für die Virtual Console umgewandelt:
 
# Es ist wichtig, zu wissen, dass Zahlen im Hexadezimalsystem immer mit "0x" anfangen
# Die Zeichen im Code hinter dem Leerzeichen geben an, welcher Wert festgelegt wird. Damit ist: <code>Cheat0_Value = 0x00FF</code>
# Diese Bytes müssen nun gezählt werden - in diesem Falle sind es zwei. Einfach die Stellen hinter dem Code zählen und anschließend durch zwei dividieren. Damit ist: <code>Cheat0_Bytes = 2</code>
# Damit die VC weiß, welcher Wert im Speicher geändert werden soll, muss noch die Adresse festgelegt werden - das sind die Zeichen vor der Leerstelle. An diesen Wert muss "0x" vorangestellt werden. Damit gilt: <code>Cheat0_Address = 0x8011A6A1</code>-->


Sagen wir einmal du spielst Zelda: Ocarina of Time in der US Version auf deiner Wii U und hast keine Lust alle Skulltulas zu finden, hier kann dir der Code <code>8011A6A1 00FF</code> helfen da er den RAM des Spiels so manipuliert, dass das Spiel denkt das du 255 Skulltulas getötet hättest Also wie wandelst du diesen Code nun für die VC um? Wirf zunächst einmal einen blick auf die Stellen nach dem Leerzeichen im Code, das ist der Wert der festgelegt wird du kannst also schon einmal sagen das <code>Cheat0_Value = 0x00 0xFF</code> sein wird. Zähle nun wie viele Zeichen nach dem Leerzeichen stehen und teile dies durch 2 nun weißt du im Falle von Ocarina of Time das <code>Cheat0_Bytes = 2</code> sein wird. Du nun bist fast fertig! Jetzt muss nur noch <code>Cheat0_Address</code> festgelegt werden und dieser ist der Teil des Codes vor dem Leerzeichen also im Falle Ocarina of Time <code>Cheat0_Address = 0x8011A6A1</code>.
== Weblinks ==
== Weblinks ==
* [https://wiki.gbatemp.net/wiki/WiiU_VC_N64_inject_compatibility_list%5CIni_Template INI-Template auf WikiTemp]
* [https://wiki.gbatemp.net/wiki/WiiU_VC_N64_inject_compatibility_list%5CIni_Template INI-Template auf WikiTemp]
== Einzelnachweise ==
<references />


{{Top Icon Wii U}}
{{Top Icon Wii U}}
[[Kategorie:Nintendo Wii U]]

Aktuelle Version vom 17. März 2019, 19:31 Uhr

Nintendo 64 Logo
Icon Unvollstaendig.svg Dieser Artikel ist unvollständig. Du kannst uns helfen, indem du die fehlenden Informationen ergänzt.

Die [Name der ROM].ini befindet sich im Ordner "content/config" der Nintendo 64 Virtual Console und stellt den Emulator für das jeweilige Spiel korrekt ein (z.B. die Größe des Backup-Speichers).

Diese Seite versucht alle möglichen Optionen dieser Dateien zu dokumentieren, um es so möglich zu machen die VC, für bestimmte Injects nutzbar zu machen.

Alle hier gelisteten Optionen sind in der aktuellen Build der Virtual Console enthalten, welche mit F-Zero X ausgeliefert wird (Stand: 22.06.2018).

Einstellung Mögliche Werte Beschreibung
[RomOption]
PlayerNum 1 - 4 Legt fest, wie viele Controller angemeldet sein können während die VC läuft. Diese Option ist zwar in offizieller VC auskommentiert, scheint aber trotz allem immer mit der Anzahl der maximalen Spieler des Spiels konfiguriert zu sein.
Rumble
  • 0: Kein Rumble-Pack
  • 1: Rumble-Pack emuliert
Legt fest, ob ein Rumble-Pack emuliert werden soll. Hat nur einen Effekt bei Spielen, welches dies unterstützen. Kann nicht verwendet werden während TPak oder MemPak 1 ist.
UseTimer
  • 0: Deaktiviert
  • 1: Aktiviert
Begrenzt möglicherweise die Emulationsgeschwindigkeit. Ansonsten unbekannt.
BackupType
  • 0: Automatische Auswahl
  • 1: SRAM Backup-Speicher
  • 2: Flashspeicher
  • 3: EEPROM
Legt den Typ des emulierten Backup-Speichers fest. Besonders wichtig bei Spielen mit Anti-Piraterie-Erkennung via Backup-Speicher-Typ/-Größe.
BackupSize
  • 512: 0,5 KB
  • 2048: 2 KB
  • 4K: 4 KB
  • 16K: 16 KB
Legt die Größe des Backup-Speichers fest. Besonders bei Spielen mit Anti-Piraterie-Erkennung via Speichergröße wichtig.

Wenn ein 32 KB großer Speicher benötigt wird, müssen weder BackupType noch BackupSize angegeben werden. Die Virtual Console wird versuchen den Speichertypen selbst zu erkennen und anschließend einen 32 KB Speicher erstellen.[1]

PDFURL URL zu einem PDF-Scan einer Bedienungsanleitung Offizielle URLs sind so aufgebaut:

Für Super Mario 64 demzufolge:

RamSize
  • 0x400000: 4 MB, kein Expansion Pak
  • 0x800000: 8 MB, Expansion Pak installiert
Legt fest, ob ein Memory Expansion Pak installiert ist.

Muss 0x800000 für Donkey Kong 64, Perfekt Dark und Zelda: Majoras Mask sein da diese das Expansion Pak zwingend benötigen. Auch Spiele die das Expansion Pak nicht benötigen können davon profitieren.[2]

TrueBoot
  • 0: Blackscreen
  • 1: Normaler Boot
Eventuell: Bestimmt ob der emulierte N64 während des Boots eine Cartidge eingelegt hat oder emuliert den CIC-Lockout Chip.
EEROMInitValue 0x00 - 0xFF Der Wert jedes Byte im emulierten EEPROM, bevor auf ihm gespeichert wurde. Sollte entweder 0x00 oder 0xFF sein.
TPak
  • 0: Kein Transferpak
  • 1: Emuliert ein Transferpak
Nutzlos, da keine Game-Boy-ROM festgelegt werden kann. Rumble oder MemPak können nicht verwendet werden während dies aktiviert ist.
MemPak
  • 0: Kein Memory Pak
  • 1: Memory Pak im Controller von Spieler 1
Emuliert ein Memory Pak im Controller von Spieler 1. Sehr fehlerbehaftet und kann zu Abstürzen führen. Kann nicht genutzt werden, während TPak oder Rumble auf 1 gesetzt sind.
TLBMissEnable true / false (?) Erklärung zu TLB - GoldenEye und Perfect Dark werden dies wahrscheinlich benötigen. Einige andere wahrscheinlich auch.
[Cheat]
Cheat0 0,1,2 Unbekannt. Meist 0.
Cheat0_Addr Hex-Adresse (z.B. 0x12345678) Selbsterklärend; Die RAM-Adresse die verändert werden soll.
Cheat0_Value 0x00 - 0xFF Erzwungener Wert für das entsprechende Byte im RAM
Cheat0_Bytes 1 - 4 Bestimmt wie viele Bytes im RAM mit Cheat0_Value verändert werden sollen. Beispiel: Mit Cheat0_Bytes auf 4 und Cheat0_Addr auf 0x00000000 könnten 0x00000000, 0x00000001, 0x00000002 und 0x00000003 verändert werden.
[Render]
CalculateLOD Nur in Zusammenhang mit Super Mario 64 verwendet, Objekte werden nach weniger Abstand als sonst nicht mehr gerendert, wenn dieser Wert auf 0 ist.
bForce720P
  • 0: Rendert das Spiel in 1080p
  • 1: Rendert das Spiel in 720p
Mit 1080p und 720p ist die 4:3 Variante der Auflösungen gemeint also z.B. bei 720p 960x720 und nicht 1280x720.
FirstFrameAt Unsigned Integer (z.B. 1000) Überspringt das Rendern aller Frames vor diesem Wert. Kann helfen, wenn das Spiel ein Grafik-Kommando verwendet, welches vom Emulator nicht verstanden wird. Unter anderem in der japanischen Version von Super Smash Bros. verwendet.
NeedPreParse 0, 1 Behebt Stottern der Grafik (Renderfehler wenn keine Skybox da ist?)


Weblinks

Einzelnachweise

  1. TODO: Testen wie es sich auf z.B: Flash/128K (Pokémon Stadium, etc.) bezieht.
  2. TODO: Testen ob auch Werte über 0x800000 funktionieren, da dies helfen könnte, Hacks zum laufen zu bringen welche Memory Patches haben. Ideal: Werte für 12 MB & 16 MB testen da viele Hacks mit Memory Patch entweder 12 bzw. 16 MB nutzen. Es sollte von der VC erwartet werden können das sie es kann, da selbst ein unmodifiziertes N64 16 MB RAM während des Boots initialisieren kann.