Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[GSoC 2020] Python Game API #123

Open
wants to merge 46 commits into
base: feature_savestates
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
c75161a
[temp] Enable debug logging by default
garbear Oct 6, 2015
4338002
[temp] Import controller add-ons
garbear Oct 8, 2021
c389bae
[temp] Don't disable preinstalled game add-ons
garbear Oct 25, 2017
d603324
[temp] Don't configure add-ons at startup on Linux
garbear Oct 14, 2021
40d37e6
[temp] Android: Clean up jenkins nodes after build
garbear Sep 15, 2018
57c3707
[temp] Set bootstrap repo to kodi-game
garbear Apr 7, 2017
243ea4a
[temp] Add repository for IARL
garbear Sep 25, 2015
c454e8e
[temp] Import repository for Steam add-on
garbear Aug 3, 2021
d53e01b
[temp] Import service.games.discord.richpresence
garbear Oct 11, 2021
e4c2c32
[temp] Add repositories for libretro buildbot cores
garbear Oct 14, 2021
04f0a76
[temp] Package add-ons:
garbear Mar 9, 2020
3c0e486
[temp] Add Readme for RetroPlayer
garbear Mar 31, 2017
fe7f6b7
[PR 18537] [TEMP][JENKINS][C++17 Torture] Done this to torture jenkin…
AlwinEsch Oct 7, 2020
6dbd295
[PR 19875] [tools/depends][native] Update cmake to 3.20.3
Jun 12, 2021
ff61d6a
[PR 19875] [xcode] fixes to allow xcode 10+ "new" build system to work
Jun 12, 2021
57f1ea8
[PR 19875] [tools/depends][target] mariadb fix cmake 3.20 build error
Jun 12, 2021
223ef44
[PR 20075] [GSoC 2020] Set hasWidth to true when assigned value to Width
cool-pants Jun 1, 2020
a96cafe
[PR 20075] Fix compiler warning in PeripheralJoystick.cpp
garbear Aug 12, 2020
41a0578
[PR 20075] Game API: Fix grammar in comment
garbear May 31, 2021
eed3891
[PR 20075] Games: Fix typo
garbear May 31, 2021
f13fb8d
[PR 20113] [cmake][osx] Partial revert - xcode variable usage
fuzzard Sep 6, 2021
96c35a0
[PR 20208] [cmake][osx] support detection of buildsystem for generate…
Sep 30, 2021
4b8ce16
[PR 20208] [cmake][osx] Remove uneccessary code from osx macro
Sep 30, 2021
cd18dcd
[PR 20366] [addons] fix sorting and avoid crash due to non-determinis…
howie-f Oct 22, 2021
07ac437
[PR 20408] Controllers: Refactor dialog XML into new file
garbear Oct 15, 2021
04c8e8f
[PR 20408] Controllers: Refactor CControllerPort into its own file
garbear Oct 16, 2021
f026147
[PR 20408] Controllers: Shorten CControllerPortNode to CPortNode
garbear Oct 17, 2021
ba45958
[PR 20408] Controllers: Refactor ControllerTree.h classes into new files
garbear Oct 17, 2021
55344c9
[PR 20408] Controllers: Refactor input code into new subdir
garbear Oct 23, 2021
e8e66f3
[PR 20408] Controllers: Fix typo in comment
garbear Oct 22, 2021
d229db1
[PR 20408] Controllers: Fix getting child port by address
garbear Oct 18, 2021
ea5c3c2
[PR 20408] Controllers: Fix segfault during development when unregist…
garbear Oct 27, 2021
0aad225
[PR 20408] Game add-ons: Fix controller connection/disconnection for …
garbear Oct 22, 2021
d27fb0b
[PR 20408] Game API v2.2.0: Add option to allow disconnecting control…
garbear Oct 27, 2021
9d23ce3
[PR 20445] [addons][games] fix uninitalized value within kodi::addon:…
AlwinEsch Nov 1, 2021
9bf945d
Addons: Separate code and fix IDE error
garbear Aug 24, 2021
586449a
Game add-ons: Persist port settings
garbear Oct 23, 2021
4cfc4ba
Controllers: Add dialog for controller ports
garbear Oct 15, 2021
4a6f9c4
Pictures: Make GetScale and ScaleImage public, add pixel format param…
NikosSiak Aug 13, 2020
6c8a77a
GUIDialogSelect: Refactor to enable subclass access
garbear Oct 12, 2020
4c904ab
RetroPlayer Savestate Manager
NikosSiak Oct 14, 2020
bff4ab6
Game API v3.0.0: RCheevos functions
NikosSiak Aug 23, 2020
7346fd6
Game Settings: Add login to RetroAchievements
NikosSiak Aug 23, 2020
026388d
RetroPlayer: Cheevos subsystem
NikosSiak Nov 6, 2021
4160cbf
Add RA login status indicator/action to settings
garbear Aug 30, 2020
546eb97
Set Game metadata to Player class
NikosSiak Sep 17, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
130 changes: 46 additions & 84 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,84 +1,46 @@
![Kodi Logo](docs/resources/banner.png)

<p align="center">
<strong>
<a href="https://kodi.tv/">website</a>
<a href="https://kodi.wiki/view/Main_Page">docs</a>
<a href="https://forum.kodi.tv/">community</a>
<a href="https://kodi.tv/addons">add-ons</a>
</strong>
</p>

<p align="center">
<a href="LICENSE.md"><img alt="License" src="https://img.shields.io/badge/license-GPLv2-blue.svg?style=flat-square"></a>
<a href="http://hits.dwyl.io/xbmc/xbmc"><img alt="HitCount" src="http://hits.dwyl.io/xbmc/xbmc.svg"></a>
<a href="https://docs.kodi.tv/"><img alt="Documentation" src="https://img.shields.io/badge/code-documented-brightgreen.svg?style=flat-square"></a>
<a href="https://github.com/xbmc/xbmc/pulls"><img alt="PRs Welcome" src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square"></a>
<a href="#how-to-contribute"><img alt="Contributions Welcome" src="https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat-square"></a>
<a href="http://jenkins.kodi.tv/"><img alt="Build" src="https://img.shields.io/badge/CI-jenkins-brightgreen.svg?style=flat-square"></a>
<a href="https://github.com/xbmc/xbmc/commits/master"><img alt="Commits" src="https://img.shields.io/github/commits-since/xbmc/xbmc/latest.svg?style=flat-square"></a>
</p>

<a href="https://play.google.com/store/apps/details?id=org.xbmc.kodi" target="_blank">
<img src="https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png" height="80"/>
</a>

<h1 align="center">
Welcome to Kodi Home Theater Software!
</h1>

Kodi is an award-winning **free and open source** software media player and entertainment hub for digital media. Available as a native application for **Android, Linux, BSD, macOS, iOS, tvOS and Windows operating systems**, Kodi runs on most common processor architectures.

Created in 2003 by a group of like minded programmers, Kodi is a non-profit project run by the XBMC Foundation and developed by volunteers located around the world. More than 500 software developers have contributed to Kodi to date, and 100-plus translators have worked to expand its reach, making it available in more than 70 languages.

While Kodi functions very well as a standard media player application for your computer, it has been designed to be the perfect companion for your HTPC. With its **beautiful interface and powerful skinning engine**, Kodi feels very natural to use from the couch with a remote control and is the ideal solution for your home theater.

## Give your media the love it deserves
Kodi can be used to play almost all popular audio and video formats around. It was designed for network playback, so you can stream your multimedia from anywhere in the house or directly from the internet using practically any protocol available.

Point Kodi to your media and watch it **scan and automagically create a personalized library** complete with box covers, descriptions, and fanart. There are playlist and slideshow functions, a weather forecast feature and many audio visualizations. Once installed, your computer or HTPC will become a fully functional multimedia jukebox.

<p align="center">
<img src="docs/resources/kodi.gif" alt="Kodi">
</p>

## Getting Started
Kodi's developers work hard to make it support a large range of devices and operating systems. We provide final as well as development builds. To get started, head over to the **[downloads section](https://kodi.tv/download)** and simply select the platform that you want to install it on. A **[quick start guide](https://kodi.wiki/view/quick_start_guide)** to help you get acquainted with Kodi is available in our wiki.

## How to Contribute
Kodi is created by users for users and **we welcome every contribution**. There are no highly paid developers or poorly paid support personnel on the phones ready to take your call. There are only users who have seen a problem and done their best to fix it. This means Kodi will always need the contributions of users like you. How can you get involved?

* **Coding:** Developers can help Kodi by **[fixing a bug](https://github.com/xbmc/xbmc/issues)**, adding new features, making our technology smaller and faster and making development easier for others. Kodi's codebase consists mainly of C++ with small parts written in a variety of coding languages. Our add-ons mainly consist of python and XML. For more information, please have a look at our **[contributing guide](docs/CONTRIBUTING.md)**.
* **Helping users:** Our support process relies on enthusiastic contributors like you to help others get the most out of Kodi. The #1 priority is always answering questions in our **[support forums](https://forum.kodi.tv/)**. Everyday new people discover Kodi, and everyday they are virtually guaranteed to have questions.
* **Localization:** Translate **[Kodi](https://kodi.weblate.cloud/projects/kodi-core/kodi-main/)**, **[add-ons, skins etc.](https://kodi.weblate.cloud/)** into your native language.
* **Add-ons:** **[Add-ons](https://kodi.tv/addons)** are what make Kodi the most extensible and customizable entertainment hub available. **[Get started building an add-on](https://kodi.tv/create-an-addon)**.
* **Documentation:** Kodi's **[wiki pages](https://kodi.wiki/)** are the hub for information about Kodi and surrounding ecosystem. Help make our documentation better by writing new content or correcting existing material.

**Not enough free time?** No problem! There are other ways to help Kodi.

* **Spread the word:** Share Kodi with the world! Tell your friends and family about how Kodi creates an amazing entertainment experience. Stay up to date on the latest stories about Kodi reading our **[news](https://kodi.tv/blog)** section, follow us on **[Twitter](https://twitter.com/koditv)** and **[Facebook](https://www.facebook.com/XBMC/)**, or **star Kodi's repo** if you want to follow development.
* **Donate:** We are always happy to receive a **[donation](https://kodi.tv/contribute/donate)**. Donations are typically used for travel to attend conferences, any necessary paperwork and legal fees, and the yearly XBMC Foundation Developers Conference, where a great deal of coding and planning for the following year occurs. Donations may also be used to purchase necessary hardware and licenses for developers, along with t-shirts, stickers, and other accessories for conferences.
* **Buy Kodi merchandise:** Purchasing Kodi gear helps just as much as a donation, and you get something in return! Checkout our **[store](https://kodi.tv/store)** for Kodi branded gear. We regularly add new products so check back often.

## Building
Kodi uses CMake as its building system but instructions are highly dependent on your operating system and target platform. Fortunately **[we've got you covered](docs/README.md)**.

## Acknowledgements
Kodi couldn't exist without

* All the **[contributors](https://github.com/xbmc/xbmc/graphs/contributors)**. Big or small a change, it does make a difference.
* All the developers that write the fantastic **software and libraries** that Kodi uses. We stand on the shoulders of giants.
* Our **[fantastic community](https://forum.kodi.tv/)** for the never ending support, inspiration, feedback, and for keeping us on our toes when we screw up!
* **[Our sponsors](https://kodi.tv/sponsors)**. Without them, keeping a huge project like this alive would be next to impossible.

## License
Kodi is **[GPLv2 licensed](LICENSE.md)**. You may use, distribute and copy it under the license terms.

<a href="https://github.com/xbmc/xbmc/graphs/contributors"><img src="https://forthebadge.com/images/badges/built-by-developers.svg" height="25"></a>
<a href="https://github.com/xbmc/xbmc"><img src="https://forthebadge.com/images/badges/certified-cousin-terio.svg" height="25"></a>
<a href="https://github.com/xbmc/xbmc"><img src="https://forthebadge.com/images/badges/approved-by-george-costanza.svg" height="25"></a>
<a href="https://kodi.tv/download"><img src="https://forthebadge.com/images/badges/check-it-out.svg" height="25"></a>
<a href="https://github.com/xbmc/xbmc"><img src="https://forthebadge.com/images/badges/winter-is-coming.svg" height="25"></a>
<a href="http://www.youtube.com/watch?feature=player_embedded&v=Moh67r0iBGA
" target="_blank"><img src="http://img.youtube.com/vi/Moh67r0iBGA/0.jpg"
alt="retroplayer" width="240" height="180" border="10"/></a>

# Overview

RetroPlayer is a new player core for Kodi Entertainment Center. It is similar to the video and audio players, but it plays games instead of movies and music.

# Design and Components

**RetroPlayer:** Player core that plays games on the virtual file system (VFS) using game add-ons. Despite its name, it can play all types of games, not just retro ones. It borrows many ideas from the video player. Games can be paused, fast-forwarded, and rewound in realtime (watch little Mario run backwards!). Instead of bookmarks, save states are created and allow for quick browsing of the game's play history.

**Game Add-ons:** Standalone games, emulators and game streamers. From day one, RetroPlayer has been compatible with the [libretro](http://www.libretro.com/) ecosystem.

**Peripheral Add-ons:** Add-ons that expose hardware devices to Kodi. Communication with devices takes place over a bus. The peripheral add-on API is a virtual bus, alongside USB and PCI, that allows third parties to expose hardware devices to Kodi.

**Joystick input:** Various joystick APIs (DirectX, XInput, SDL, etc.) provide access to raw hardware events, like button presses and axis positions. The joystick input system maps these to physical elements on the controller, such as the X button, left trigger or right analog stick. The gesture recognition from touch input has been converted to monitor holding, double-pressing, analog stick rotation and (someday) accelerometer gestures.

**Media readers:** Plugging a cartridge into [Retrode](http://www.retrode.org/)-like devices can display game metadata and automatically launch the game. Removing a cartridge from the media reader can take a save-state so that the next time the game is inserted, gameplay begins from where it left off. Games can be cached indefinitely, so there is no need to insert the cartridge a second time (although it's possibly quicker than browsing for the cached game!). Game filenames aren't available, so game metadata is extracted from the ROM itself using [PyRomInfo](https://github.com/garbear/pyrominfo).

Many of these features are still works-in-progress, so fork the code and help out!

# Building Kodi and games

Build Kodi per usual. If you are developing binary add-ons using a local prefix, specifying it during the `cmake` step:

```
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$HOME/kodi
make -j8
```

Joystick support is now provided through a binary add-on. Follow the out-of-tree instructions at https://github.com/xbmc/peripheral.joystick.

Game add-ons are hosted separately at https://github.com/kodi-game. If you would like to compile all game add-ons in one fell swoop, create a build directory out-of-tree and run the following commands:

```
cmake -DADDONS_TO_BUILD=game.* \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_INSTALL_PREFIX=$HOME/workspace/kodi/addons \
-DPACKAGE_ZIP=1 \
$HOME/workspace/kodi/cmake/addons
make
```

where `$HOME/workspace/kodi` symlinks to the directory you cloned Kodi into.
26 changes: 26 additions & 0 deletions addons/game.controller.3do.gamegun/addon.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="game.controller.3do.gamegun"
name="3DO Gamegun"
version="1.0.11"
provider-name="Team Kodi">
<extension point="kodi.game.controller" library="resources/layout.xml"/>
<extension point="xbmc.addon.metadata">
<platform>all</platform>
<assets>
<icon>resources/icon.png</icon>
</assets>
<summary lang="da_DK">3DO Gamegun</summary>
<summary lang="en_GB">3DO Gamegun</summary>
<summary lang="ru_RU">3DO пистолет</summary>
<summary lang="zh_CN">3DO 游戏枪</summary>
<description lang="da_DK">Gamegun blev udgivet til 3DO i 1994 af American Laser Games.</description>
<description lang="en_GB">The Gamegun was released for the 3DO in 1994 by American Laser Games.</description>
<description lang="ru_RU">Пистолет для 3DO выпущен в 1994 компанией American Laser Games.</description>
<description lang="zh_CN">游戏枪于1994年由美国激光游戏公司为 3DO 发布。</description>
<disclaimer lang="da_DK">Kildeangivelse: Wikipedia (wikipedia.org)</disclaimer>
<disclaimer lang="en_GB">Image credit: Wikipedia (wikipedia.org)</disclaimer>
<disclaimer lang="es_ES">Créditos de la imagen: Wikipedia (wikipedia.org)</disclaimer>
<disclaimer lang="ru_RU">Источник изображения: Wikipedia (wikipedia.org)</disclaimer>
<disclaimer lang="zh_CN">图片来源:维基百科(Wikipedia.org)</disclaimer>
</extension>
</addon>
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Kodi Media Center language file
# Addon Name: 3DO Gamegun
# Addon id: game.controller.3do.gamegun
# Addon Provider: Team Kodi
msgid ""
msgstr ""
"Project-Id-Version: game.controller.3do.gamegun\n"
"Report-Msgid-Bugs-To: alanwww1@xbmc.org\n"
"POT-Creation-Date: 2014-05-30 17:00+8\n"
"PO-Revision-Date: 2014-05-30 17:00+8\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: af_za\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"

msgctxt "Addon Summary"
msgid "3DO Gamegun"
msgstr ""

msgctxt "Addon Description"
msgid "The Gamegun was released for the 3DO in 1994 by American Laser Games."
msgstr ""

msgctxt "Addon Disclaimer"
msgid "Image credit: Wikipedia (wikipedia.org)"
msgstr ""

msgctxt "#30000"
msgid "3DO Gamegun"
msgstr ""

msgctxt "#30001"
msgid "Trigger"
msgstr ""

msgctxt "#30002"
msgid "Crosshair"
msgstr ""
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Kodi Media Center language file
# Addon Name: 3DO Gamegun
# Addon id: game.controller.3do.gamegun
# Addon Provider: Team Kodi
msgid ""
msgstr ""
"Project-Id-Version: game.controller.3do.gamegun\n"
"Report-Msgid-Bugs-To: alanwww1@xbmc.org\n"
"POT-Creation-Date: 2014-05-30 17:00+8\n"
"PO-Revision-Date: 2014-05-30 17:00+8\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: am_et\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"

msgctxt "Addon Summary"
msgid "3DO Gamegun"
msgstr ""

msgctxt "Addon Description"
msgid "The Gamegun was released for the 3DO in 1994 by American Laser Games."
msgstr ""

msgctxt "Addon Disclaimer"
msgid "Image credit: Wikipedia (wikipedia.org)"
msgstr ""

msgctxt "#30000"
msgid "3DO Gamegun"
msgstr ""

msgctxt "#30001"
msgid "Trigger"
msgstr ""

msgctxt "#30002"
msgid "Crosshair"
msgstr ""
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Kodi Media Center language file
# Addon Name: 3DO Gamegun
# Addon id: game.controller.3do.gamegun
# Addon Provider: Team Kodi
msgid ""
msgstr ""
"Project-Id-Version: game.controller.3do.gamegun\n"
"Report-Msgid-Bugs-To: alanwww1@xbmc.org\n"
"POT-Creation-Date: 2014-05-30 17:00+8\n"
"PO-Revision-Date: 2014-05-30 17:00+8\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: ar_dz\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"

msgctxt "Addon Summary"
msgid "3DO Gamegun"
msgstr ""

msgctxt "Addon Description"
msgid "The Gamegun was released for the 3DO in 1994 by American Laser Games."
msgstr ""

msgctxt "Addon Disclaimer"
msgid "Image credit: Wikipedia (wikipedia.org)"
msgstr ""

msgctxt "#30000"
msgid "3DO Gamegun"
msgstr ""

msgctxt "#30001"
msgid "Trigger"
msgstr ""

msgctxt "#30002"
msgid "Crosshair"
msgstr ""
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Kodi Media Center language file
# Addon Name: 3DO Gamegun
# Addon id: game.controller.3do.gamegun
# Addon Provider: Team Kodi
msgid ""
msgstr ""
"Project-Id-Version: game.controller.3do.gamegun\n"
"Report-Msgid-Bugs-To: alanwww1@xbmc.org\n"
"POT-Creation-Date: 2014-05-30 17:00+8\n"
"PO-Revision-Date: 2014-05-30 17:00+8\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: ar_sa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"

msgctxt "Addon Summary"
msgid "3DO Gamegun"
msgstr ""

msgctxt "Addon Description"
msgid "The Gamegun was released for the 3DO in 1994 by American Laser Games."
msgstr ""

msgctxt "Addon Disclaimer"
msgid "Image credit: Wikipedia (wikipedia.org)"
msgstr ""

msgctxt "#30000"
msgid "3DO Gamegun"
msgstr ""

msgctxt "#30001"
msgid "Trigger"
msgstr ""

msgctxt "#30002"
msgid "Crosshair"
msgstr ""
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Kodi Media Center language file
# Addon Name: 3DO Gamegun
# Addon id: game.controller.3do.gamegun
# Addon Provider: Team Kodi
msgid ""
msgstr ""
"Project-Id-Version: game.controller.3do.gamegun\n"
"Report-Msgid-Bugs-To: alanwww1@xbmc.org\n"
"POT-Creation-Date: 2014-05-30 17:00+8\n"
"PO-Revision-Date: 2014-05-30 17:00+8\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: ast_es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"

msgctxt "Addon Summary"
msgid "3DO Gamegun"
msgstr ""

msgctxt "Addon Description"
msgid "The Gamegun was released for the 3DO in 1994 by American Laser Games."
msgstr ""

msgctxt "Addon Disclaimer"
msgid "Image credit: Wikipedia (wikipedia.org)"
msgstr ""

msgctxt "#30000"
msgid "3DO Gamegun"
msgstr ""

msgctxt "#30001"
msgid "Trigger"
msgstr ""

msgctxt "#30002"
msgid "Crosshair"
msgstr ""