Changes

no edit summary
Line 183: Line 183:     
This emulator supports arguments with argc/argv, when launched officially zero [[Loader_services#SetProgramArgument|arguments]] are passed for this (unless [[Loader_services#SetProgramArgument|SetProgramArgument]] is used manually prior to launching). The emulator will also load arguments from RomFs "/default_cmd.txt" when argc==1, otherwise it loads arguments from a filepath loaded elsewhere. Hence, when not launched with arguments with an official launch, "/default_cmd.txt" is not used. Some of the supported arguments are:
 
This emulator supports arguments with argc/argv, when launched officially zero [[Loader_services#SetProgramArgument|arguments]] are passed for this (unless [[Loader_services#SetProgramArgument|SetProgramArgument]] is used manually prior to launching). The emulator will also load arguments from RomFs "/default_cmd.txt" when argc==1, otherwise it loads arguments from a filepath loaded elsewhere. Hence, when not launched with arguments with an official launch, "/default_cmd.txt" is not used. Some of the supported arguments are:
* "--card-uncompressed": See [[#Savedata]].
+
 
* ...
+
{| class="wikitable"
 +
|-
 +
! Argument !! Description
 +
|-
 +
| --volume=<0..100> || Set sound volume (default: 100).
 +
|-
 +
| --disable-file-cache || Disable file cache if supported by the platform.
 +
|-
 +
| --no-dol-hash || Do not calculate DOL hash (unsafe)
 +
|-
 +
| --screenshot-period=<value>, -sp || Takes screenshots every n frame
 +
|-
 +
| --screenshot-write-queue-thread-count=<0..n> || Change the number of threads allocated to the screenshot write queue, 0 to disable (default: 1).
 +
|-
 +
| --delete-after-load || Delete save state after a successful load.
 +
|-
 +
| --listen-port=<port> || Specify the service port to listen to (default: 1234).
 +
|-
 +
| --card-uncompressed || Do not compress card.
 +
|-
 +
| --sync-guest-none || Don't synchronize emulation, run as fast as possible.
 +
|-
 +
| --gecko-patch=<name> || Apply Gecko patch <name>
 +
|-
 +
| --log=<file> || Log to file instead of stdout. Defaults to stdout
 +
|-
 +
| --rootdir=<path>, -r<path> || Set the root directory
 +
|-
 +
| --no-patch || Do not apply standard patch
 +
|-
 +
| --stop-failed-test[=<number>] || Stop subtests after <number> differences (default 10).
 +
|-
 +
| --exit=<value>, -e || Exit after n frames
 +
|-
 +
| --help, -h || Print usage and exit.
 +
|-
 +
| --mute || Start ROM with mute sound.
 +
|-
 +
| --sync-guest-with-wall || Synchronize emulation with wall time.
 +
|-
 +
| --sync-guest-with-host || Synchronize emulation with host.
 +
|-
 +
| --test=<filename>, -t || Starts emulator in unit test mode.
 +
|-
 +
| --no-pip || Don't use pipeline database.
 +
|-
 +
| --play-input || Play previously recorded input
 +
|-
 +
| --command=<file> || Use file as the contents of the command line (one arg per line).
 +
|-
 +
| --dim-screen-after=<s> || Dim screen after <s> seconds of inactivity.
 +
|-
 +
| --random-inputs-period=<0..n> || Change the random inputs period in number of frames (default: 10).
 +
|-
 +
| --config=<filename>, -cfg || Gives path to the config file
 +
|-
 +
| --ask, -a || Ask for a rom and execute it.
 +
|-
 +
| --load-state-slot=<index>, -lss<index> || Load save state by index.
 +
|-
 +
| --load-state-file=<filename>, -lsf<filename> || Load save state by filename.
 +
|-
 +
| --generatetest=<directory>, -gt || Starts emulator in unit test mode and generate output files inside the given directory.
 +
|-
 +
| --waitcontroller, -wc || Stop CPU until controller 0 has been detected
 +
|-
 +
| --card-format=<size_in_Mbits> || Format card using given size in MBits (default 4, possible 8, 16, 32, 64, 128).
 +
|-
 +
| --card-force-copy || Force card copy from read-only support to read-write support (on supported platforms).
 +
|-
 +
| --screenshot-output-format=[png|ppm] || Change the format of the screenshots when using the generic screenshot capture code (default: png).
 +
|-
 +
| --config-override || Use a specific config override filename.
 +
|-
 +
| --random-inputs || Use random inputs instead of values from physical controllers.
 +
|-
 +
| --log-unit-test || Enable log in unit test mode.
 +
|-
 +
| --break-on-start, -bos || Break at the start of the rom.
 +
|-
 +
| --record-input || Record input
 +
|-
 +
| --screenshot-write-queue-capacity=<1..n> || Change the capacity of the screenshot queue (default: thread-count * 2 + 1).
 +
|-
 +
| --random-inputs-seed=<0..n> || Change the random inputs seed value (default: 0).
 +
|-
 +
| --listen-address=<address> || Specify the service address to listen to (default: 0.0.0.0).
 +
|-
 +
| --gui, -gui || Use the GUI mode
 +
|-
 +
| --break-on-start-dsp, -bosd || Break at the start of the dsp program.
 +
|-
 +
| --no-db-config || Do not use the ROM DB config override.
 +
|-
 +
| --features || Print features and exit.
 +
|-
 +
|}
    
This emulator uses various hashes, SHA-1 is used for this.
 
This emulator uses various hashes, SHA-1 is used for this.
Line 281: Line 377:  
** /nro/05_UNSMJ3.002.nro
 
** /nro/05_UNSMJ3.002.nro
 
** /nro/EmuSystemJITPlugin.nro
 
** /nro/EmuSystemJITPlugin.nro
 +
*** This appears to be just a rebuild. A func called by _fini/etc was updated, nothing else specific to the plugin was changed in .text. The .nrs build filepath was also changed.
 
** /nro/NROBuilder.nro
 
** /nro/NROBuilder.nro
 
** /.nrr/04_UNSMJ3.002.nrr
 
** /.nrr/04_UNSMJ3.002.nrr
 
** /.nrr/EmuAppNX64.nrr
 
** /.nrr/EmuAppNX64.nrr
 
** /Pipeline.cache
 
** /Pipeline.cache
** /rom/Stardust_JP/00_UNSMJ3.002.meta
+
** "/rom/Stardust_JP/00_UNSMJ3.002.meta" Newlines now use LF instead of CRLF.
** /rom/Stardust_JP/02_UNSMJ3.002.cfg
+
** "/rom/Stardust_JP/02_UNSMJ3.002.cfg" Newlines now use LF instead of CRLF. The content of the "Comment" entries under "SpecialInst" had the string characters replaced with '*' (for redacting the string). The Lua hook entries were updated under "SpecialInst". The "Comment" entries under "VertexHack" were redacted the same way, nothing else changed under "VertexHack".
 
** /rom/Stardust_JP/04_UNSMJ3.002.nrr
 
** /rom/Stardust_JP/04_UNSMJ3.002.nrr
 
** /rom/Stardust_JP/05_UNSMJ3.002.nro
 
** /rom/Stardust_JP/05_UNSMJ3.002.nro
** /rom/Stardust_JP/06_UNSMJ3.002.lua
+
** "/rom/Stardust_JP/06_UNSMJ3.002.lua" Newlines now use LF instead of CRLF. Comments were redacted, see above. HookFunc_AfterInst was updated for handling the updated hooks mentioned above.
 
* SuperMarioSunshine:
 
* SuperMarioSunshine:
** "/data/database/config/MarioSunshine.config" updated
+
** "/data/database/config/MarioSunshine.config" The config entries for "KeyPadAxisTriggerLeft"/"KeyPadAxisTriggerRight" were updated.
 
** "/data/gekko/MarioSunshine/nx/MarioSunshine.nrolz" updated
 
** "/data/gekko/MarioSunshine/nx/MarioSunshine.nrolz" updated
 
** The following files were added under "/data/lazy_texture_replace/MarioSunshine/":
 
** The following files were added under "/data/lazy_texture_replace/MarioSunshine/":
Line 298: Line 395:  
*** 5323227429978722713_lod3.png
 
*** 5323227429978722713_lod3.png
 
*** 5323227429978722713.png
 
*** 5323227429978722713.png
** "/hagi-override.config" updated
+
** "/hagi-override.config" Formatting was adjusted.
 
** "/MarioSunshine/Super_Mario_Sunshine_Stardust-trimmed.gcm" updated
 
** "/MarioSunshine/Super_Mario_Sunshine_Stardust-trimmed.gcm" updated
 
** "/.nrr/Hagi.nrr" updated
 
** "/.nrr/Hagi.nrr" updated
** "/rom.json" updated
+
** "/rom.json" The DolHash was updated.
 
* SuperMarioGalaxy: The only change was removing the following files from "/StationedData/":
 
* SuperMarioGalaxy: The only change was removing the following files from "/StationedData/":
 
** DEBUG.arc
 
** DEBUG.arc
Line 311: Line 408:     
DeltaFragment NCAs were also added.
 
DeltaFragment NCAs were also added.
 +
 +
== v1.1.1 ==
 +
ExeFs:
 +
* NPDMs for all Programs only had the usual update (see [[#v1.0.1]]).
 +
* The only other change was updating the main-codebin for SuperMario64.
 +
 +
RomFs: ...
    
= Savedata =
 
= Savedata =
Line 324: Line 428:  
** "B1317A6632265CF763766CF6339AC8D1.cache": This is probably graphics pipeline related?(RomFs has an identical file)
 
** "B1317A6632265CF763766CF6339AC8D1.cache": This is probably graphics pipeline related?(RomFs has an identical file)
 
* "/MarioGalaxy/GameData.bin": The savedata for SuperMarioGalaxy.
 
* "/MarioGalaxy/GameData.bin": The savedata for SuperMarioGalaxy.
 +
 +
= Other Applications =
 +
See also [[Nintendo_64_-_Nintendo_Switch_Online|N64-NSO]].
 +
 +
hagi is also used by the following:
 +
* "Pikmin 1" and "Pikmin 2" (Wii emulation)