From 210a658e0806f28224dcfb357033b669de502695 Mon Sep 17 00:00:00 2001 From: Emanuele <84565620+Emayeah@users.noreply.github.com> Date: Tue, 3 Jun 2025 12:59:05 +0200 Subject: [PATCH 1/6] Update buildguide.rst --- dev/buildguide.rst | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/dev/buildguide.rst b/dev/buildguide.rst index 5c8b26b..d81ce9a 100644 --- a/dev/buildguide.rst +++ b/dev/buildguide.rst @@ -140,10 +140,19 @@ Arch Fedora """""" -.. code-block:: bash +* Fedora 41 and newer (DNF5) - $ sudo dnf groupinstall "C Development Tools and Libraries" - $ sudo dnf install cmake extra-cmake-modules pkg-config ninja-build freetype-devel SDL2-devel libatomic libpng-devel libslirp-devel libXi-devel openal-soft-devel rtmidi-devel fluidsynth-devel libsndfile-devel libserialport-devel qt5-linguist qt5-qtconfiguration-devel qt5-qtbase-private-devel qt5-qtbase-static wayland-devel libevdev-devel libxkbcommon-x11-devel zlib-ng-compat-static + .. code-block:: bash + + $ sudo dnf group install c-development + $ sudo dnf install cmake extra-cmake-modules pkg-config ninja-build freetype-devel SDL2-devel libatomic libpng-devel libslirp-devel libXi-devel openal-soft-devel rtmidi-devel fluidsynth-devel libsndfile-devel libserialport-devel qt5-linguist qt5-qtconfiguration-devel qt5-qtbase-private-devel qt5-qtbase-static wayland-devel libevdev-devel libxkbcommon-x11-devel zlib-ng-compat-static + +* Fedora 40 and older (DNF4) + + .. code-block:: bash + + $ sudo dnf groupinstall "C Development Tools and Libraries" + $ sudo dnf install cmake extra-cmake-modules pkg-config ninja-build freetype-devel SDL2-devel libatomic libpng-devel libslirp-devel libXi-devel openal-soft-devel rtmidi-devel fluidsynth-devel libsndfile-devel libserialport-devel qt5-linguist qt5-qtconfiguration-devel qt5-qtbase-private-devel qt5-qtbase-static wayland-devel libevdev-devel libxkbcommon-x11-devel zlib-ng-compat-static macOS (Homebrew) From e92ac02f36e97683902391b4d67f3f14d1d7b5df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= <13226155+dhrdlicka@users.noreply.github.com> Date: Mon, 25 Aug 2025 01:25:29 +0200 Subject: [PATCH 2/6] Update macOS ROMs folder instructions Added a warning about hidden extensions for the roms folder on macOS. --- usage/roms.rst | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/usage/roms.rst b/usage/roms.rst index cf838d1..f566000 100644 --- a/usage/roms.rst +++ b/usage/roms.rst @@ -36,9 +36,11 @@ This usually resolves to ``~/.local/share/86Box/roms``, ``/usr/local/share/86Box .. rubric:: macOS +.. warning:: If 86Box cannot find any ROMs even after you extracted the ROM set into one of the supported directories, please make sure that the ``roms`` folder name does not contain a hidden extension. This can be fixed via the terminal, or by selecting the folder in Finder, choosing **Get Info** in the context menu or the **File** menu, and checking the *Name & Extension* section in the information window. Downloading ROM sets for stable 86Box releases from GitHub in particular may be affected by extension hiding in the Finder due to the file name format used for these. + The following locations are searched on macOS: -1. ``~/Library/Application Support/net.86box.86Box/roms`` -2. ``/Library/Application Support/net.86box.86Box/roms`` +1. ``~/Library/Application Support/86Box/roms`` +2. ``/Library/Application Support/86Box/roms`` .. tip:: The list of all paths searched when loading ROMs is printed to the log and standard output when 86Box starts. From 3de4cb449983f9f2176c0fa8dde9ebe0a2168e87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= <13226155+dhrdlicka@users.noreply.github.com> Date: Mon, 25 Aug 2025 01:42:04 +0200 Subject: [PATCH 3/6] Update manager documentation with disable option details Added information on disabling the manager and configuration file locations for different platforms. --- usage/manager.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/usage/manager.rst b/usage/manager.rst index c78bf16..8aaafcc 100644 --- a/usage/manager.rst +++ b/usage/manager.rst @@ -6,6 +6,11 @@ Opening 86Box will start the **virtual machine manager**, which allows for creat .. note:: * This manager is currently a preview, with a limited feature set expanding upon the previous standalone `86Box Manager `_ app. Other managers with more features can still be used. * Running 86Box directly no longer creates or starts an emulated machine in the current folder like on previous versions. The ``-P``/``--vmpath`` command line option can be used to start a machine directly instead. + * The manager can be fully disabled (restoring the behavior of previous 86Box versions when launched without specifying a virtual machine path on the command line) by adding ``vmm_disabled = 1`` to the global configuration file, which is stored at one of the following locations based on the platform: + + * **Windows**: ``C:\Users\[username]\AppData\Local\86Box\86box_global.cfg`` + * **Linux**: ``~/.config/86Box/86box_global.cfg`` + * **macOS**: ``~/Library/Preferences/86Box/86box_global.cfg`` Machine list ------------ From cc17963bc1147144145a3622527614cd64e59ece Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= <13226155+dhrdlicka@users.noreply.github.com> Date: Mon, 25 Aug 2025 02:02:52 +0200 Subject: [PATCH 4/6] Fix formatting in roms.rst --- usage/roms.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/usage/roms.rst b/usage/roms.rst index f566000..68fd749 100644 --- a/usage/roms.rst +++ b/usage/roms.rst @@ -18,6 +18,8 @@ The emulator utilizes a search path mechanism to locate ROMs. By default, the fo A custom location can be specified by using the ``-R`` or ``--rompath`` command line argument, which then precedes any other considered locations. +.. tip:: The list of all paths searched when loading ROMs is printed to the log and standard output when 86Box starts. + .. rubric:: Windows The following locations are searched on Windows: @@ -36,11 +38,9 @@ This usually resolves to ``~/.local/share/86Box/roms``, ``/usr/local/share/86Box .. rubric:: macOS -.. warning:: If 86Box cannot find any ROMs even after you extracted the ROM set into one of the supported directories, please make sure that the ``roms`` folder name does not contain a hidden extension. This can be fixed via the terminal, or by selecting the folder in Finder, choosing **Get Info** in the context menu or the **File** menu, and checking the *Name & Extension* section in the information window. Downloading ROM sets for stable 86Box releases from GitHub in particular may be affected by extension hiding in the Finder due to the file name format used for these. +.. note:: If 86Box cannot find any ROM dumps even after you extracted the set into one of the supported directories, please make sure that the ``roms`` folder name does not contain a hidden extension. This can be fixed via the terminal, or by selecting the folder in Finder, choosing *Get Info* in the context menu or the *File* menu, and checking the *Name & Extension* section in the information window. Downloading ROM sets for stable 86Box releases from GitHub in particular may be affected by extension hiding in the Finder due to the file name format used for these. The following locations are searched on macOS: 1. ``~/Library/Application Support/86Box/roms`` 2. ``/Library/Application Support/86Box/roms`` - -.. tip:: The list of all paths searched when loading ROMs is printed to the log and standard output when 86Box starts. From d783e6eff938763666d9ca75622b46f40026349c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Hrdli=C4=8Dka?= <13226155+dhrdlicka@users.noreply.github.com> Date: Mon, 25 Aug 2025 03:08:06 +0200 Subject: [PATCH 5/6] Update note on hidden extensions for ROM folders --- usage/roms.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usage/roms.rst b/usage/roms.rst index 68fd749..7672712 100644 --- a/usage/roms.rst +++ b/usage/roms.rst @@ -38,9 +38,9 @@ This usually resolves to ``~/.local/share/86Box/roms``, ``/usr/local/share/86Box .. rubric:: macOS -.. note:: If 86Box cannot find any ROM dumps even after you extracted the set into one of the supported directories, please make sure that the ``roms`` folder name does not contain a hidden extension. This can be fixed via the terminal, or by selecting the folder in Finder, choosing *Get Info* in the context menu or the *File* menu, and checking the *Name & Extension* section in the information window. Downloading ROM sets for stable 86Box releases from GitHub in particular may be affected by extension hiding in the Finder due to the file name format used for these. - The following locations are searched on macOS: 1. ``~/Library/Application Support/86Box/roms`` 2. ``/Library/Application Support/86Box/roms`` + +.. note:: If 86Box cannot find any ROM dumps even after you extracted the set into one of the directories listed above, please make sure that the ``roms`` folder name does not contain a hidden extension. This can be fixed by selecting the folder in Finder, choosing *Get Info* in the context menu or the *File* menu, and renaming the folder in the *Name & Extension* section of the information window. From 651bc6ae109aafbe614300560e86c2de02192125 Mon Sep 17 00:00:00 2001 From: Jose Phillips Date: Wed, 27 Aug 2025 03:21:11 -0500 Subject: [PATCH 6/6] Added OPL2Board external documentation --- hardware/externalopl.rst | 19 +++++++++++++++++++ settings/sound.rst | 3 +++ 2 files changed, 22 insertions(+) create mode 100644 hardware/externalopl.rst diff --git a/hardware/externalopl.rst b/hardware/externalopl.rst new file mode 100644 index 0000000..19950af --- /dev/null +++ b/hardware/externalopl.rst @@ -0,0 +1,19 @@ +External OPL Audio Support +========================== + +86Box now supports the **OPL2Board** as an external audio device. +This allows users to connect a real OPL2 (YM3812) chip through the board and use it alongside the emulator for authentic FM synthesis output. + +Usage +----- + +1. Connect your OPL2Board to the host system. +2. Select the sound card **[ISA] OPL2Board [External Device]**. +3. In the **Configure** button, select the serial port to which the board is connected. + +Notes for OPL2Board +------------------- + +- You need an **Arduino Nano** and an **OPL2Board** from Cheerful Electronic. +- Follow the **instructions from the manufacturer** and upload ``SerialPassthrough.ino`` to the Arduino Nano. +- If you want **PCM audio**, you can add an **additional sound card** and disable the OPL output. \ No newline at end of file diff --git a/settings/sound.rst b/settings/sound.rst index 643b975..0bfcb28 100644 --- a/settings/sound.rst +++ b/settings/sound.rst @@ -16,6 +16,9 @@ The *Configure* button opens a new window with settings specific to the selected Emulation for the Yamaha OPL series of synthesizers (used by many of the emulated cards) is provided by a modified `Nuked OPL3 `_ or `ymfm `_ library, per the :ref:`selection below `. MOS Technology 6581 SID emulation for the Innovation SSI-2001 and The Entertainer is provided by the reSIDfp component of the `libsidplayfp `_ library. General Instrument AY-3-8913 emulation for the Mindscape Music Board is provided by the `Ayumi `_ library. +You can also select an external OPL sound card by choosing the sound cards that have **(External Device)** at the end of their name. +See more information in the :ref:`External OPL audio device documentation `. + MIDI Out Device ---------------