Skip to content

Commit

Permalink
Merge pull request #938 from Jaffacakelover/master
Browse files Browse the repository at this point in the history
New GUI pages, pages split out, some cleanup
  • Loading branch information
fpscan committed May 27, 2024
2 parents 4abf9fb + 345576f commit 2f7225b
Show file tree
Hide file tree
Showing 59 changed files with 529 additions and 155 deletions.
58 changes: 58 additions & 0 deletions docs/guides/disc-swapping.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@

# Disc swapping
Some games in the 32-bit generation were spread over multiple CDs, and at a certain point in the game they ask the user to swap one disc out for another, while the console is still powered on.

To manage discs, libretro has a concept of a disc index (like a multi-disc CD player).

If a Sony PlayStation core or Sega Saturn core is loaded, then a `Disc Control` option is added to the [Quick Menu](quick-menu.md).


## Using 'Eject/Load disc'

`Load New Disc` ejects the current (virtual) disc and opens the File Browser, where you can select a new disc image to be loaded.

When you select `Eject Disc`, three new options appear:

* `Insert Disc`: Opens the File Browser, to find a disc image and load it into the Disc Index (CD list).
* `Current Disc Index`: Displays a list of the current discs in the "CD changer", and lets you select which disc is "in use".
* `Load New Disc`: Opens the File Browser, to find another disc image and load it into the Disc Index (CD list).

## Using 'Disc Image Append'
If you don't or can't use a playlist, you can append a disk image to the list on the fly using `Disc Image Append`. In this case, you use the File Browser to look for a disk image, and then add it to the internal disk image list. The `Disc Index` list is updated appropriately, and you can make your selection then return to the game.


## Using M3U playlists

Multi-CD images are typically handled with an .m3u playlist file. In this case, you can swap disks by cycling through the `Disc Index` setting.

You can start a game by loading its M3U file, through `Load Content` or Playlists (This will have to be added manually to your Playlists, as scanning for content will not do so).

### Making an M3U playlist file
You can make an M3U playlist file using a simple text editor.
* Put all of your content's disc files into a single folder.
* Create a new text file in the same folder as your content. Name it the same as your content.
* Add the full names of each disc into the text file (including the file extension), 1 filename per row.
* If your discs are BIN/CUE files, only list the '.cue' files in the document.
* If your discs are CHD files, list the '.chd' files in the document.
* Save and close the text file.
* Rename the file extension from '.txt' to '.m3u'.

#### Example

Contents of folder (`ROMS/Metal Gear Solid/`):
***
Metal Gear Solid (USA) (Disc 1).bin <br> Metal Gear Solid (USA) (Disc 1).cue <br> Metal Gear Solid (USA) (Disc 2).bin <br> Metal Gear Solid (USA) (Disc 2).cue <br> Metal Gear Solid (USA).m3u
***

Contents of M3U file (`Metal Gear Solid (USA).m3u`):
***
Metal Gear Solid (USA) (Disc 1).cue <br> Metal Gear Solid (USA) (Disc 2).cue
***

## Issues and workarounds
Replacing the disk inside RGUI is "physically" speaking the same as ejecting, swapping disks and closing the tray instantaneously. Some games will not work with this approach: Notably *Metal Gear Solid* needs to detect an actual "eject" taking place.

To work around this, set `Disk Index` to `No Disk`, and exit RGUI. The game will pick up that the tray has been ejected/missing disk after half a second or so. Now you can go back to RGUI, pick the correct disk index and return to the game.



47 changes: 47 additions & 0 deletions docs/guides/glui.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# GLUI (GUI)

**GLUI** (formerly known as **MaterialUI**) is RetroArch's mobile interface for smartphones. This interface is designed around touchscreen and pointer devices like a mouse/trackball. It is based on Android's "Material UI" designs.

GLUI was overhauled in RetroArch 1.6.6.

![GLUI startup screen](../image/retroarch/glui/glui-main.png)

## Menu structure
Content is displayed in a single column. The menus are organized into three tabs: Main Menu, Playlists, and Settings.


![GLUI thumbnails screen](../image/retroarch/glui/glui-3-tabs.png)

*The three tabs of GLUI, side by side.*

### Navigating the menus
GLUI is designed primarily for touchscreen use, although a gamepad can also be connected via Bluetooth or USB.

Swipe left or right (or tap on the icons at the bottom of the screen) to switch between the three columns. Swipe up or down to scroll through menus. Tap on a line once to select it and enter its submenu. Tap once on the 'back arrow' icon in the top left to go back a step.

Tap once on an entry in a playlist to open the quick menu, from which you can launch the content.

*See [Input and Controls](input-and-controls.md)*

## Input

Content is controlled using Gamepad Overlays on the device's touchscreen. A gamepad can also be connected via Bluetooth or USB.

*See [Overlays](libretro-overlays.md) and [Input and Controls](input-and-controls.md)*

![GLUI gameplay with the default gamepad overlay](../image/retroarch/glui/glui-gamepad-overlay.png)

*GLUI gameplay with the default gamepad overlay*

### Thumbnails
By default, 2 thumbnails are displayed for each entry in a playlist. The left thumbnail is the boxart, while the right thumbnail is a gameplay screenshot.
Hold on a thumbnail for 1 second then release to view the thumbnails full-screen (then tap once to close the popup).

![GLUI thumbnails screen](../image/retroarch/glui/glui-thumbnails.png)

## Themes
GLUI has a range of colour schemes built in. Go to `Settings > User Interface > Appearance > Color Theme` to browse the themes and select one.

GLUI does not support OS-level light/dark mode switching at this time.

![A few GLUI color schemes](../image/retroarch/glui/glui-themes3.png)
14 changes: 14 additions & 0 deletions docs/guides/gui.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# The User Interface

RetroArch currently has 4 different "Menu Drivers" to choose from for its Graphical User Interface:

* **[Ozone](ozone.md)**: The default skin for many host systems.
* **[XMB](xmb.md)**: The "old" default skin.
* **[GLUI](glui.md)**: The smartphone/touchscreen skin.
* **[RGUI](rgui.md)**: The "basic" skin.

The Menu Driver can be changed under `Settings> User Interface> Menu`. A restart of RetroArch will be required.

![Clockwise from top left: Ozone, XMS, GLUI, RGUI.](../image/retroarch/4_guis.jpg)

*Clockwise from top: Ozone, XMB, GLUI, RGUI.*
30 changes: 18 additions & 12 deletions docs/guides/navigating.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Navigating

Navigating on RetroArch is as easy as you can imagine. Depending on the device you have, the control scheme is determined automatically. For example, if you are going to use it on a computer, the basic key combinations of the keyboard will apply. You move with the arrow keys and select with the Enter key, and you return with the Backspace key. If you plug a controller, you can also move with the D-Pad keys.
Navigating on RetroArch is as easy as you can imagine. Depending on the device you have, the control scheme is determined automatically. For example, if you are going to use it on a computer, the basic key combinations of the keyboard will apply. You move with the arrow keys and select with the *Enter* key, and you return with the *Backspace* key. If you plug a controller, you can also move with the D-Pad buttons.

The default [GUI](GUI) for RetroArch is [Ozone](ozone.md). While the "skin" may differ on certain platforms, basic layout and navigation remains broadly the same.

## PC

Expand All @@ -10,58 +12,62 @@ Using the *left* and *right* arrow keys, you move to a different tab, each tab w

To advance in the menu press *Enter* (or *Return*). To go back to the previous menu push *Backspace*.

Whilst in a game use the *F1* key [MOVE TO ANOTHER PAGE]
Whilst in a game use the *F1* key to open the [Quick Menu](quick-menu.md).

Pushing *Esc* twice will quit the program
Pushing *Esc* twice will quit the program.

### Main Menu

![Main Menu](../image/retroarch/ozone/first_run.webp)
![Ozone's Main Menu](../image/retroarch/ozone/first_run.webp)

Welcome to the main menu. This is where you will launch games, download and update cores, and have access to freely available content. *Load Core*, *Load Content* and the *Online Updater* are the menu items you will probably be using the most.

Welcome to the main menu this is where you will launch games, download and update cores and have access to freely available content. *Load Core*, *Load Content* and the *Online Updater* are the menu items you will probably be using the most.
*See [Starting a Game](starting-a-game.md)*

### Settings

![Settings](../image/retroarch/ozone/settings.png)

Here you will find all the options available to configure RetroArch, from Graphics, Input, Sound and everything else.

### Favourites
### Favorites

![Favorites](../image/retroarch/ozone/favorites.png)

Favourites allow you to maintain a short list of your favourite games. You can add the content you want to add to your favorites from the Quick Menu or before launching it. So you can quickly access your favorite content.
Favorites allow yous to maintain a short list of games for quick access. You can add content to this playlist from the [Quick Menu](quick-menu.md) or before launching it.

### History

![History](../image/retroarch/ozone/history.png)

The content you recently run will be added here, the content you run last will be at the top.
Recently launched content will be added to this Playlist. The content you ran last will be at the top.

### Image, Music and Video

These tabs will handle all your media. Images will contain any screenshots you've made.

### Netplay

RetroArch relies on peer-to-peer networking to reduce network latency and ensure the best possible experience. Allows multi-player over the internet. Host or join a network gaming session. Rediscover the joy of multiplayer games using RetroArch's builtin netplay lobby. You can also use the spectator mode to watch others play.
RetroArch relies on peer-to-peer networking to reduce network latency and ensure the best possible experience. It allows multiplayer over the internet. The user can host or join a network gaming session, or use the Spectator mode to watch others play. RetroArch has a built-in netplay lobby.

### Import content

![import-content](../image/retroarch/ozone/import-content.png)

Either you scan automatically so that your content that matches the last database will add to the playlists or you scan manually without being dependent on the database so you can freely add your contents to playlists.
Either you scan automatically, so that any content that matches the internal database will be added to Playlists, or you scan manually, not being dependent on the database so you can freely add your content to Playlists.

## Mobile

The mobile interface is much more minimalistic compared to the PC's interface. Touch is the default input, although depending on device other options may be available. There are three different tabs, which can be switched at the bottom of the menu.
The mobile interface, [GLUI](glui.md), is more minimalistic compared to the PC's interface. Touch is the default input, although depending on device other options may be available. There are three different tabs, which can be switched at the bottom of the menu.

### Main Menu

![Main Menu](../image/retroarch/materialui/GUI-MaterialUI-main-menu.jpg)
![GLUI's Main Menu](../image/retroarch/glui/glui-main.png)

The main menu will be where you launch games, download and update cores, start or join netplay sessions and pretty much anything to do with gaming.

*See [Starting a Game](starting-a-game.md)*

### Playlists

Handles anything to do with creating and maintaining playlists. It gives you scanning options to recognise your game collection. It also provides access to your images, music and videos.
Expand Down
77 changes: 77 additions & 0 deletions docs/guides/navigating.md.backup
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Navigating

Navigating on RetroArch is as easy as you can imagine. Depending on the device you have, the control scheme is determined automatically. For example, if you are going to use it on a computer, the basic key combinations of the keyboard will apply. You move with the arrow keys and select with the *Enter* key, and you return with the *Backspace* key. If you plug a controller, you can also move with the D-Pad buttons.

The default [GUI](GUI) for RetroArch is [Ozone](ozone.md). While the "skin" may differ on certain platforms, basic layout and navigation remains broadly the same.

## PC

By default the keyboard should be ready to use.

Using the *left* and *right* arrow keys, you move to a different tab, each tab will relate to an aspect of the RetroArch experience (main menu for game loading, settings for settings etc.). Once the desired tab is selected, use the *up* and *down* arrow to move to an option.

To advance in the menu press *Enter* (or *Return*). To go back to the previous menu push *Backspace*.

Whilst in a game use the *F1* key to open the [Quick Menu](quick-menu.md).

Pushing *Esc* twice will quit the program.

### Main Menu

![Ozone's Main Menu](../image/retroarch/ozone/first_run.webp)

Welcome to the main menu. This is where you will launch games, download and update cores, and have access to freely available content. *Load Core*, *Load Content* and the *Online Updater* are the menu items you will probably be using the most.

*See [Starting a Game](starting-a-game.md)*

### Settings

![Settings](../image/retroarch/ozone/settings.png)

Here you will find all the options available to configure RetroArch, from Graphics, Input, Sound and everything else.

### Favorites

![Favorites](../image/retroarch/ozone/favorites.png)

Favorites allow yous to maintain a short list of games for quick access. You can add content to this playlist from the [Quick Menu](quick-menu.md) or before launching it.

### History

![History](../image/retroarch/ozone/history.png)

Recently launched content will be added to this Playlist. The content you ran last will be at the top.

### Image, Music and Video

These tabs will handle all your media. Images will contain any screenshots you've made.

### Netplay

RetroArch relies on peer-to-peer networking to reduce network latency and ensure the best possible experience. It allows multiplayer over the internet. The user can host or join a network gaming session, or use the Spectator mode to watch others play. RetroArch has a built-in netplay lobby.

### Import content

![import-content](../image/retroarch/ozone/import-content.png)

Either you scan automatically, so that any content that matches the internal database will be added to Playlists, or you scan manually, not being dependent on the database so you can freely add your content to Playlists.

## Mobile

The mobile interface, [GLUI](glui.md), is much more minimalistic compared to the PC's interface. Touch is the default input, although depending on device other options may be available. There are three different tabs, which can be switched at the bottom of the menu.

### Main Menu

![GLUI's Main Menu](../image/retroarch/glui/glui-main.png)

The main menu will be where you launch games, download and update cores, start or join netplay sessions and pretty much anything to do with gaming.

*See [Starting a Game](starting-a-game.md)*

### Playlists

Handles anything to do with creating and maintaining playlists. It gives you scanning options to recognise your game collection. It also provides access to your images, music and videos.

### Settings

Here you will find all the options available to configure RetroArch, from Graphics, Input, Sound and everything else.
Loading

0 comments on commit 2f7225b

Please sign in to comment.