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
K (N64-Logo)
KKeine Bearbeitungszusammenfassung
 
(43 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Datei:Nintendo 64 Logo.svg|rechts|100px]]
[[Datei:Nintendo 64 Logo.svg|rechts|100px|link=|alt=Nintendo 64 Logo]]
{{Stub}}
{{Stub}}
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).
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.
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).


{| class="wikitable" | width="100%"
{| class="wikitable" | width="100%"
Zeile 14: 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 20: Zeile 22:
* '''0''': Kein Rumble-Pack
* '''0''': Kein Rumble-Pack
* '''1''': Rumble-Pack emuliert
* '''1''': Rumble-Pack emuliert
| Legt fest, ob ein Rumble-Pack emuliert werden soll. Hat nur einen Effekt bei Spielen, welches dies unterstützen.
| 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.
|-
|-
| <code>UseTimer</code>
| <code>UseTimer</code>
Zeile 42: Zeile 44:
* '''4K''': 4 KB
* '''4K''': 4 KB
* '''16K''': 16 KB
* '''16K''': 16 KB
| Legt die Größe des Backup-Speichers fest. Besonders bei Spielen mit Anti-Piraterie-Erkennung 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 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 56: 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.
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 63: 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?
| 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>
|
* '''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.
|-
| <code>MemPak</code>
|
* '''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.
|-
| <code>TLBMissEnable</code>
| '''true''' / '''false''' (?)
| [http://en64.shoutwiki.com/wiki/N64_TLB Erklärung zu TLB] - GoldenEye und Perfect Dark werden dies wahrscheinlich benötigen. Einige andere wahrscheinlich auch.
|-
! colspan="3" | [Cheat]
|-
| <code>Cheat0</code>
| '''0,1,2'''
| Unbekannt. Meist 0.
|-
| <code>Cheat0_Addr</code>
| '''Hex-Adresse''' (z.B. 0x12345678)
| Selbsterklärend; Die RAM-Adresse die verändert werden soll.
|-
| <code>Cheat0_Value</code>
| '''0x00''' - '''0xFF'''
| Erzwungener Wert für das entsprechende Byte im RAM
|-
| <code>Cheat0_Bytes</code>
| '''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.
|-
|-
! colspan="3" | [Render]
! colspan="3" | [Render]
|-
|-
| <code>CalculateLOD</code>
| <code>CalculateLOD</code>
|
|  
* '''0''': [https://gliden64.blogspot.com/2013/09/hardware-lod.html Hardware '''L'''evel '''o'''f '''D'''etail] deaktivieren
* '''0''': [https://gliden64.blogspot.com/2013/09/hardware-lod.html Hardware '''L'''evel '''o'''f '''D'''etail] deaktivieren
* '''1''': [https://gliden64.blogspot.com/2013/09/hardware-lod.html Hardware '''L'''evel '''o'''f '''D'''etail] aktivieren
* '''1''': [https://gliden64.blogspot.com/2013/09/hardware-lod.html Hardware '''L'''evel '''o'''f '''D'''etail] aktivieren
| Nur in Zusammenhang mit Super Mario 64 verwendet, Objekte werden nach weniger Abstand als sonst nicht mehr gerendert, wenn dieser Wert auf 0 ist.
|-
|-
| <code>bForce720P</code>
| <code>bForce720P</code>
Zeile 80: Zeile 118:
* '''0''': Rendert das Spiel in 1080p
* '''0''': Rendert das Spiel in 1080p
* '''1''': Rendert das Spiel in 720p
* '''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.
|-
|-
| <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.
| Ü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 ==
{{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!'''
'''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>-->


== 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.