diff --git a/docs/concepts/game-folders.md b/docs/concepts/game-folders.md index f392fa14..cbd96b95 100644 --- a/docs/concepts/game-folders.md +++ b/docs/concepts/game-folders.md @@ -78,7 +78,7 @@ see [Game Paks on the higan website][gp]. What's in a game folder? ------------------------ -As mentioned [above](#what-is-a-game-folder), +As mentioned above, a game folder collects all the information relevant to emulating a particular game. Not all of the following files @@ -91,8 +91,7 @@ are expected to be useful to all emulators that support them: - `manifest.bml`: - The [manifest](#what-is-a-manifest) - for this game folder. + The [manifest](manifests.md) for this game folder. - `program.rom`: For most consoles, this contains diff --git a/docs/concepts/game-library.md b/docs/concepts/game-library.md index 522cdda8..a99e8d29 100644 --- a/docs/concepts/game-library.md +++ b/docs/concepts/game-library.md @@ -83,4 +83,4 @@ and telling higan where to find them. [icsettings]: ../interface/icarus.md#the-icarus-settings-dialog [fsbrowser]: ../interface/common.md#the-filesystem-browser [settingsmenu]: ../interface/higan.md#the-settings-menu -[advsettings]: ../interface/higan-config.md#advanced) +[advsettings]: ../interface/higan-config.md#advanced diff --git a/docs/concepts/manifests.md b/docs/concepts/manifests.md index 4cd0f712..40cf80c3 100644 --- a/docs/concepts/manifests.md +++ b/docs/concepts/manifests.md @@ -101,9 +101,9 @@ heuristics will always be needed as a fallback, but at least if the heuristics are wrong the can be overridden. -Manifests can be found inside -[game folders](game-folders.md), -but usually aren't. +Ignoring manifests +------------------ + Occasionally, a newly-dumped game will turn out to have a configuration that can't be expressed @@ -114,12 +114,26 @@ games with old-format manifests would break when played in emulators that supported the new format. Therefore, -icarus [defaults](#the-icarus-settings-dialog) +icarus [defaults](../interface/icarus.md#the-icarus-settings-dialog) to not writing out manifests when it imports games, -and higan [defaults](#the-configuration-dialog) +and higan [defaults](../interface/higan-config.md#advanced) to ignoring manifests that are present. Instead, when higan loads a game, it will ask icarus to generate a temporary manifest in the latest format, based on the files present in the game folder and how they are likely to go together. + +If the manifest that icarus generates +for some particular game +is broken or buggy, +you'll need to switch the manifest machinery back on +so you can fix the problem: + + - Turn "Create manifests" back on in icarus' settings + - Re-import the game in question, + to store the broken manifest + as `manifest.bml` in the game folder. + - Edit `manifest.bml` + - Turn "Ignore manifests" off in higan's settings + - Load the game in higan to check that your edit fixed the problem diff --git a/docs/guides/import.md b/docs/guides/import.md index 41a038d9..4361f381 100644 --- a/docs/guides/import.md +++ b/docs/guides/import.md @@ -21,16 +21,17 @@ like RAR or 7-zip are not supported. For most games that do not use special chips or co-processors, importing a game is straight-forward. -From [the Library menu](#the-library-menu) +From [the Library menu](../interface/higan.md#the-library-menu) choose "Load ROM File ..." -to open [a filesystem browser](#the-filesystem-browser), +to open [a filesystem browser](../interface/common.md#the-filesystem-browser), choose the game you want to play, and it will be imported into the library and loaded. To play the game again select the console the game runs on from -[the Library menu](#the-library-menu) -to open another [filesystem browser](#the-filesystem-browser) +[the Library menu](../interface/higan.md#the-library-menu) +to open another +[filesystem browser](../interface/common.md#the-filesystem-browser) that lists all the previously-imported games for that platform. Games with co-processor firmware @@ -194,7 +195,7 @@ but Pilotwings is a notable exception. If you try to import a game using the "Import ROM Files ..." option -in [the Library menu](#the-library-menu) +in [the Library menu](../interface/higan.md#the-library-menu) (or using icarus directly) but do not have the required firmware files in the correct place, @@ -209,16 +210,16 @@ and at least one firmware file that was missing or incorrect, like this: If you try to import a game using the "Load ROM File ..." option -in [the Library menu](#the-library-menu) +in [the Library menu](../interface/higan.md#the-library-menu) but do not have the required firmware files in the correct place, nothing will happen, and higan will just sit there with "No cartridge loaded" in -[the status bar](#the-status-bar). +[the status bar](../interface/higan.md#the-status-bar). Once a game with co-processor firmware is imported, -you can play it just like any [regular game](#importing-and-playing-regular-games). +you can play it just like any [regular game](#regular-games). Satellaview games ----------------- @@ -254,7 +255,7 @@ were sold in retail stores containing extra content for specific games. Importing a game that has a slot for a memory pak -is just like [importing a regular game](#importing-and-playing-regular-games). +is just like [importing a regular game](#regular-games). Importing a memory pak is like importing a regular game, but the name of the memory pak file *must* end in `.bs` @@ -273,7 +274,7 @@ Playing a game that has a slot for a memory pak is just like playing a regular game, but after you have selected which game you want to play higan will open another -[filesystem browser](#the-filesystem-browser) +[filesystem browser](../interface/common.md#the-filesystem-browser) to let you pick which previously-imported memory pak you want to insert into the game. If you press "Cancel" at this point, @@ -318,7 +319,7 @@ but some games can make use of additional data from a game in slot B. Importing the Sufami Turbo cartridge -is just like [importing a regular game](#importing-and-playing-regular-games). +is just like [importing a regular game](#regular-games). Importing a mini-cartridge is like importing a regular game, but the name of the memory pak file *must* end in `.st` @@ -336,7 +337,7 @@ Rename the file and it should work beautifully. To play a Sufami Turbo game, load the Sufami Turbo cartridge like any other game. higan will open another -[filesystem browser](#the-filesystem-browser) +[filesystem browser](../interface/common.md#the-filesystem-browser) to let you pick which previously-imported mini-cartridge you want to insert into slot A. If you press "Cancel" at this point, @@ -407,12 +408,12 @@ To import the SGB base cartridge, you must copy the required firmware file into the same directory. Then you may import it just like -[a regular game](#importing-and-playing-regular-games). +[a regular game](#regular-games). To play a Game Boy game in Super Game Boy mode, load the Super Game Boy cartridge like any other game. higan will open another -[filesystem browser](#the-filesystem-browser) +[filesystem browser](../interface/common.md#the-filesystem-browser) to let you pick which previously-imported Game Boy game you want to insert into the Super Game Boy. If you press "Cancel" at this point, @@ -426,7 +427,7 @@ and hence the Super Game Boy; see [Playing Game Boy Colour games in Game Boy mode][blackcarts] for details. -[blackcarts]: #playing-game-boy-color-games-in-game-boy-mode +[blackcarts]: ../notes.md#playing-game-boy-color-games-in-game-boy-mode MSU-1 games ----------- @@ -482,7 +483,7 @@ To import an MSU-1 game: instead of these instructions. 2. Otherwise, import the Super Famicom ROM with icarus, - [like a regular game](#importing-and-playing-regular-games). + [like a regular game](#regular-games). - If this is a homebrew game with MSU-1 support, there will probably be an ordinary ROM whose name ends in `.sfc`, @@ -495,7 +496,8 @@ To import an MSU-1 game: then import the patched file. - If there's "hardware" and "emulator" versions of the patch, see "One thing to be aware of..." above. - 3. Find the game folder in [the game library](#the-game-library) + 3. Find the game folder in + [the game library](../concepts/game-library.md) that icarus created when it imported the game. 4. Copy the MSU-1 data file into the game folder. - This should be named `msu1.rom` @@ -525,7 +527,7 @@ To import an MSU-1 game: Once the game folder is set up, playing an MSU-1 game is just like -[a regular game](#importing-and-playing-regular-games). +[a regular game](#regular-games). [sd2snes]: https://sd2snes.de/ [flips]: http://www.romhacking.net/utilities/1040/ @@ -554,7 +556,7 @@ you will need to use a patcher to apply it yourself, creating a new, patched copy of the game. Then you can import and play the patched game just like -[a regular game](#importing-and-playing-regular-games). +[a regular game](#regular-games). [rhdn]: http://www.romhacking.net/ diff --git a/docs/index.md b/docs/index.md index 10683713..6080ef15 100644 --- a/docs/index.md +++ b/docs/index.md @@ -48,7 +48,7 @@ It also includes some level of support for GNU/Linux and macOS. If you want to install higan and try it out, -see the [Quick Start](#quick-start) section below. +see the [Quick Start](qs.md) section below. higan is officially spelled with a lowercase "h", not a capital. @@ -81,14 +81,14 @@ Unofficial higan resources collects shaders that higan can use to add special effects like TV scanlines to its video output, or smarter algorithms for scaling up to modern PC resolutions. - See [Installing custom shaders][shaders] below for details. + See [Using video shaders][shaders] below for details. - [Mercurial Magic](https://github.com/hex-usr/Mercurial-Magic/) is a tool for converting MSU-1 games and mods into a format higan can use. - See [Importing MSU-1 games][msu1] below for details. + See [Importing MSU-1 games][msu1] for details. -[shaders]: #installing-custom-shaders -[msu1]: #importing-msu-1-games +[shaders]: guides/shaders.md +[msu1]: guides/import.md#msu-1-games There are also other projects based on current or older versions of higan, diff --git a/docs/interface/higan-config.md b/docs/interface/higan-config.md index e402970b..5819038e 100644 --- a/docs/interface/higan-config.md +++ b/docs/interface/higan-config.md @@ -168,7 +168,7 @@ Input This tab controls which PC inputs are used for which emulated controllers. The exact PC inputs that can be mapped -depend on [the input driver](#drivers). +depend on [the input driver](../guides/drivers.md#input). General input settings: @@ -314,7 +314,7 @@ instead of for the emulated console. - **Power Cycle** turns the emulated console off and back on, (a "hard reset"), just like the "Power Cycle" menu item - in [the console menu](#the-console-menu). + in [the console menu](higan.md#the-console-menu). - **Rotate Display** will toggle the display of the Game Boy Advance and WonderSwan (Color) @@ -359,10 +359,11 @@ with the [Game Library](../concepts/game-library.md). looks for games to load. See [Moving the Game Library](../concepts/game-library.md#moving-the-game-library) for more information. - - **Ignore Manifests** makes higan ignore the manifest file - in the a loaded game's + - **Ignore Manifests** makes higan ignore + the [manifest](../concepts/manifests.md) file + in the loaded game's [game folder](../concepts/game-folders.md) in favour of asking icarus to guess a manifest on the fly. - See [What is a manifest?](../concepts/game-folders#what-is-a-manifest) + See [Ignoring manifests](../concepts/manifests.md#ignoring-manifests) for details. diff --git a/docs/interface/higan.md b/docs/interface/higan.md index fdef2609..295771b6 100644 --- a/docs/interface/higan.md +++ b/docs/interface/higan.md @@ -42,24 +42,24 @@ and the list defaults to "Auto". To add a new game to your library, choose "Load ROM File ..." from the Library menu. -A [filesystem browser](#the-filesystem-browser) will appear, +A [filesystem browser](common.md#the-filesystem-browser) will appear, allowing you to pick any ROM image for any supported system, with any of the most common file extensions. It also allows loading ROM images from `.zip` archives, if the archive contains a single ROM image. **Note:** Some games require extra steps to import correctly; -see [the Game Library](#the-game-library) for details. +see [Importing and playing games](../guides/import.md) for details. To add many games at once, run icarus, or choose "Import ROM Files ..." from the Library menu (which just runs icarus anyway). -See [the icarus interface](#the-icarus-interface) +See [the icarus interface](icarus.md) for more information about bulk-importing. For more information about the higan game library, -see [The Game Library](#the-game-library) below. +see [The Game Library](../concepts/game-library.md). The console menu --------------- @@ -85,7 +85,7 @@ but few consoles have all of them. to connect different emulated controllers to the first controller port, if there is one. - - See [the Configuration dialog](#the-configuration-dialog) + - See [higan's Input settings](higan-config.md#input) for information about configuring which host controller inputs are used for the emulated controllers. @@ -98,7 +98,7 @@ but few consoles have all of them. to connect different emulated controllers to the second controller port, if there is one. - - See [the Configuration dialog](#the-configuration-dialog) + - See [higan's Input settings](higan-config.md#input) for information about configuring which host controller inputs are used for the emulated controllers. @@ -164,7 +164,7 @@ that aren't specific to any particular console. is scaled up to suit modern high-resolution displays. The availability of items in this submenu depends on which video driver higan is using, - so see [Drivers](#drivers) for more information. + so see [Choosing drivers](../guides/drivers.md) for more information. - "None" draws each output pixel according to the colour of the single nearest input pixel, sometimes called "nearest neighbour" scaling. @@ -173,10 +173,10 @@ that aren't specific to any particular console. averaging the colours of the four nearest input pixels, sometimes called "bilinear" scaling. This produces unnaturally blurry images. - - When using the OpenGL [driver](#drivers), + - When using the OpenGL driver, an additional item appears in this menu for each installed Quark shader. - See [Installing custom shaders](#installing-custom-shaders) + See [Using video shaders](../guides/shaders.md) for details. - **Synchronize Audio** causes higan to wait for audio playback to complete @@ -195,18 +195,17 @@ that aren't specific to any particular console. This option has no effect in full-screen mode. See [The status bar](#the-status-bar) for more information. - **Video ...** - opens the Video tab of [the Configuration dialog][cfgdlg]. + opens [higan's Video settings](higan-config.md#video). - **Audio ...** - opens the Audio tab of [the Configuration dialog][cfgdlg]. + opens [higan's Audio settings](higan-config.md#audio). - **Input ...** - opens the Input tab of [the Configuration dialog][cfgdlg]. - - **Hotkey ...** - opens the Hotkeys tab of [the Configuration dialog][cfgdlg]. + opens [higan's Input settings](higan-config.md#input). + - **Hotkeys ...** + opens [higan's Hotkeys settings](higan-config.md#hotkeys). - **Advanced ...** - opens the Advanced tab of [the Configuration dialog][cfgdlg]. + opens [higan's Advanced settings](higan-config.md#advanced). [svsa]: #why-do-synchronize-video-and-synchronize-audio-conflict -[cfgdlg]: #the-configuration-dialog The Tools menu -------------- @@ -217,17 +216,17 @@ contains features for manipulating the emulated console. - **Save Quick State** stores the current state of the emulated console into one of the quick state slots. - See [Save States](#save-states) for more information. + See [Save States](../concepts/save-states.md) for more information. - **Load Quick State** restores the emulated console to a state previously saved to one of the quick state slots. - See [Save States](#save-states) for more information. + See [Save States](../concepts/save-states.md) for more information. - **Cheat Editor** - opens [the Cheat Editor window](#the-cheat-editor) + opens [the Cheat Editor window](higan-tools.md#the-cheat-editor) - **State Manager** - opens [the State Manager window](#the-state-manager) + opens [the State Manager window](higan-tools.md#the-state-manager) - **Manifest Viewer** - opens [the Manifest Viewer window](#the-manifest-viewer) + opens [the Manifest Viewer window](higan-tools.md#the-manifest-viewer) The Help menu ------------- @@ -261,15 +260,15 @@ for NTSC and most portable consoles the ideal speed is 60 FPS, but the WonderSwan runs at 75 FPS. If the number is too low, you may need a faster computer, -or a faster [video driver](#drivers). +or a faster [video driver](../guides/drivers.md#video). If the number is too high, you may need to [Synchronize Audio](#the-settings-menu), -or you may have pressed the "turbo" [hotkey](#the-configuration-dialog). +or you may have pressed the "turbo" [hotkey](higan-config.md#hotkeys). The status bar displays "Paused" -if you have pressed the "pause" [hotkey](#the-configuration-dialog), +if you have pressed the "pause" [hotkey](higan-config.md#hotkeys), or if "When focus is lost: Pause Emulation" is ticked -in [the Input tab of the Configuration dialog](#the-configuration-dialog) +in [higan's Input settings](higan-config.md#input) and the main higan window is not the foreground window. To resume emulation, make sure the main higan window is in the foreground, @@ -293,7 +292,7 @@ or when you press the "Load Quick State" hotkey while the current Quick State slot has not had a save-state saved to it, The status bar briefly displays "Power cycled" -when you choose "Power Cycle" from [the console menu](#the-console menu), +when you choose "Power Cycle" from [the console menu](#the-console-menu), or press the "Power Cycle" hotkey. The status bar briefly displays "Display rotation not supported" diff --git a/docs/interface/icarus.md b/docs/interface/icarus.md index 8d61f475..b1389355 100644 --- a/docs/interface/icarus.md +++ b/docs/interface/icarus.md @@ -38,17 +38,13 @@ The icarus Settings dialog contains the following settings: See [Moving the Game Library][movgamelib] for details. - **Create Manifests** causes icarus - to write out a manifest file describing - each imported game - to that game's [game folder](../concepts/game-folders.md). - This means that higan doesn't have to regenerate - the manifest each time an imported game is loaded, - but it means that a future version of higan - with an incompatible manifest format - may be unable to play these games. - Note that higan also has an "Ignore Manifests" option - in its - [Advanced settings](../interface/higan-config#advanced). + to include + [a manifest file](../concepts/manifests.md) + inside + [the game folder](../concepts/game-folders.md) + for each imported game. + See [Ignoring manifests](../concepts/manifests.md#ignoring-manifests) + for details. - **Use Database** causes icarus to use manifest information from its database of known-good manifests, if it's importing a game it recognises. diff --git a/docs/notes.md b/docs/notes.md index f83e1598..52da23db 100644 --- a/docs/notes.md +++ b/docs/notes.md @@ -116,8 +116,8 @@ to a Mega Drive calibrated to a different scale [vol]: https://board.byuu.org/viewtopic.php?p=42482#p42482 [va6]: https://board.byuu.org/viewtopic.php?p=42195#p42195 -Playing Game Boy Colour games in Game Boy mode ----------------------------------------------- +Playing Game Boy Color games in Game Boy mode +--------------------------------------------- Games for the original Game Boy came in solid grey cartridges,