Extension Protocol - quinton-ashley/nostlan GitHub Wiki
This extensions protocol is NOT implemented yet.
System object
name
the short name for the systemfullName
the full name for the systememus
array of emu ids of emulator that can play games made for this systemmediaType
can be 'disc', `pcb' (printed circuit board), or 'cart' (cartridge)gameExts
array of file type extensions commonly used for games made for this systemgameFolders
boolean for whether games for this system are typically stored in folders
Emulator object
name
the official full name of the emulator, can have capital letters and spacessys
the system id of the system this emulator is associated withsite
the official website for the apppatreon
the app developer's Patreon pagegamesDir
the default games folder (if the emulator has one) relative to the folder the app is inimagesDir
the default image folder (if the emulator has one) relative to the folder the app is injsEmu
a boolean signifying if the emulator is a jsEmu (false by default)latestVersion
the latest version number of the appdev
a boolean for running the app in developer mode or not (if possible) (false by default)mute
a boolean for whether the app should run with sound or not (if possible) (false by default)volume
a number 0-100 representing the emulated sound output volumekeyboard
custom key mappings (more info will be added soon)
The following properties of emu objects must be objects with OS property names: 'linux', 'mac', or 'win'
app
string with the app pathappDirs
array with the default directories the application could be installed toappRegex
a Regular Expression that can match the name of the emulator appcmd
the command line arguments needed to run the app
This property have an object with OS + architecture property names: 'linux-x64', 'mac-x64', 'mac-arm64', or 'win-x64'
install
'prereq', 'jsEmu', 'installer', 'portable', 'standalone'