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 (PDFURL)
KKeine Bearbeitungszusammenfassung
 
(58 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Datei:Nintendo 64 Logo.svg|rechts|100px|link=|alt=Nintendo 64 Logo]]
{{Stub}}
{{Stub}}
Eine Patch Ini für die N64 Virtual Console der Wii U ist eine spezielle INI-Datei im Ordner content/config welche fehlerhafte Funktionen des Emulators patchen kann oder bestimmte Einstellungen (zb. Größe des Backupspeichers) für die ROM vornehmen kann.
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.


{| width="100%" border="1px"
Alle hier gelisteten Optionen sind in der aktuellen Build der Virtual Console enthalten, welche mit F-Zero X ausgeliefert wird (Stand: 22.06.2018).
!width="33%"|Einstellung
 
!width="33%"|Mögliche Werte
{| class="wikitable" | width="100%"
!width="33%"|Beschreibung
! width="33%" | Einstellung
! width="33%" | Mögliche Werte
! width="33%" | Beschreibung
|-
! colspan="3" | [RomOption]
|-
| <code>PlayerNum</code>
| '''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.<br>
|-
| <code>Rumble</code>
|
* '''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.
|-
| <code>UseTimer</code>
|
* '''0''': Deaktiviert
* '''1''': Aktiviert
| Begrenzt möglicherweise die Emulationsgeschwindigkeit. Ansonsten unbekannt.
|-
| <code>BackupType</code>
|
* '''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.
|-
| <code>BackupSize</code>
|
* '''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 <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>
| '''URL''' zu einem PDF-Scan einer Bedienungsanleitung
| Offizielle URLs sind so aufgebaut:
* <code>http://m1.nintendo.net/docvc/[System]/[Region]/[Spiel]/[Spiel]_[Sprache].pdf</code>
Für Super Mario 64 demzufolge:
* <code>http://m1.nintendo.net/docvc/NUS/EUR/NSMP/NSMP_G.pdf</code> (G = German)
|-
| <code>RamSize</code>
|
* '''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.<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>
|
* '''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.
|-
| <code>EEROMInitValue</code>
| '''0x00''' - '''0xFF'''
| 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]
|-
|-
|BackupType
| <code>Cheat0</code>
|0 für automatische Erkennung<br> 1 für SRAM Backup Speicher<br> 2 für Flashspeicher<br>3 für EEPROM
| '''0,1,2'''
|Legt den Typ des emulierten Backup Speichers fest. Wichtig, gerade bei Spielen mit Raubkopie Erkennung via. Backup Speicher Typ/Größe.
| Unbekannt. Meist 0.
|-
|-
|BackupSize
| <code>Cheat0_Addr</code>
|512 für 0.5 KB Backupspeicher<br> 2048 für 2 KB Backupspeicher<br> 4K für 4 KB Backupspeicher<br> 16K für 16 KB Backupspeicher
| '''Hex-Adresse''' (z.B. 0x12345678)
|Legt fest wie viel Platz der emulierte Backup Speicher hat. Genau wie bei BackupType wegen Raubkopie Erkennung wichtig.
| Selbsterklärend; Die RAM-Adresse die verändert werden soll.
|-
|-
|Rumble
| <code>Cheat0_Value</code>
|0 um kein Rumblepack zu emulieren.<br> 1 um ein Rumblepack zu emulieren.
| '''0x00''' - '''0xFF'''
|Legt fest ob ein Rumblepack emuliert werden soll, hat nur einen Effekt bei Spielen mit Rumblepack unterstützung
| Erzwungener Wert für das entsprechende Byte im RAM
|-
|-
|UseTimer
| <code>Cheat0_Bytes</code>
|0 wenn die Option nicht genutzt werden soll.<br> 1 wenn die Option genutzt werden soll.
| '''1''' - '''4'''
|Diese Option muss noch erforscht werden.
| 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.
|-
|-
|CalculateLOD
! colspan="3" | [Render]
|0 um das Level of Detail(?) nicht zu errechnen.<br> 0 um das Level of Detail(?) zu errechnen.
|Berechnet wahrscheinlich das Level of Detail.
|-
|-
|PDFURL
| <code>CalculateLOD</code>
|URL zu einer PDF
|  
|Die URL zur Orginalanleitung
* '''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
| 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>
|
* '''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.
|-
| <code>FirstFrameAt</code>
| '''[[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 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?)
|}
|}


[[Kategorie:Wii U]]
<!---== 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 ==
* [https://wiki.gbatemp.net/wiki/WiiU_VC_N64_inject_compatibility_list%5CIni_Template INI-Template auf WikiTemp]
 
== Einzelnachweise ==
<references />
 
{{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.