summaryrefslogtreecommitdiffstatshomepage
path: root/docs/source/plugins/index.rst
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2021-10-24 05:48:05 +1100
committer Vas Crabb <vas@vastheman.com>2021-10-24 05:48:05 +1100
commit669b1f6adecfd940d5ae8b97150dc73db04894c5 (patch)
tree3b32a4f2d55f558be04294ebe818c8f35135ef8b /docs/source/plugins/index.rst
parent3a11f9168703f33f2f066c3e9d0f6905f2c95453 (diff)
-docs: Started documenting plugins.
* Also added a couple of missing command-line options, and added a local table of contents to the (rather long) command line options page. -Added a separate CI target for localisation updates that produces an artefact, and removed the message catalogs from the trigger paths for the Linux CI build.
Diffstat (limited to 'docs/source/plugins/index.rst')
-rw-r--r--docs/source/plugins/index.rst72
1 files changed, 72 insertions, 0 deletions
diff --git a/docs/source/plugins/index.rst b/docs/source/plugins/index.rst
new file mode 100644
index 00000000000..5fbc501eec8
--- /dev/null
+++ b/docs/source/plugins/index.rst
@@ -0,0 +1,72 @@
+.. _plugins:
+
+Plugins
+=======
+
+.. contents:: :local:
+
+
+.. _plugins-intro:
+
+Introduction
+------------
+
+MAME supports plugins that can provide additional functionality. Plugins
+have been written to communicate with external programs, play games
+automatically, display internal game structures like hitboxes, provide alternate
+user interfaces, and automatically test emulation. See :ref:`luaengine` for
+more information about MAME’s Lua API.
+
+
+.. _plugins-using:
+
+Using plugins
+-------------
+
+To enable plugins, you need to turn on the
+:ref:`plugins option <mame-commandline-plugins>`, and make sure the
+:ref:`pluginspath option <mame-commandline-pluginspath>` includes the folder
+where your plugins are stored. You can set the plugins option in an INI file
+or on the command line. You can set the pluginspath option by selecting
+**Configure Options** from the system selection menu, then selecting
+**Configure Directories**, and then selecting **Plugins** (you can also set it
+in an INI file or on the command line).
+
+Many plugins need to store settings and/or data. The
+:ref:`homepath option <mame-commandline-homepath>` sets the folder where plugins
+should save data (defaults to the working directory). You can change this by
+selecting **Configure Options** from the system selection menu, thens selecting
+**Configure Directories**, and then selecting **Plugin Data**.
+
+To turn individual plugins on or off, first make sure plugins are enabled, then
+select **Configure Options** from the system selection menu, and then select
+**Plugins**. You will need to completely exit MAME and start it again for
+changes to the enabled plugins to take effect. You can also use the
+:ref:`plugin option <mame-commandline-plugin>` on the command line, or change
+the settings in the **plugin.ini** file.
+
+If an enabled plugin needs additional configuration, or if it needs to show
+information, a **Plugin Options** item will appear in the main menu (accessed by
+pressing **Tab** during emulation by default).
+
+
+.. _plugins-included:
+
+Included plugins
+----------------
+
+MAME includes several plugins providing useful functionality, and serving as
+sample code that you can use as a starting point when writing your own plugins.
+
+.. toctree::
+ :titlesonly:
+
+ autofire
+ console
+ data
+ discord
+ dummy
+ gdbstub
+ hiscore
+ layout
+ timer