Compare commits

...

No commits in common. "v4.0.8" and "main" have entirely different histories.
v4.0.8 ... main

148 changed files with 19815 additions and 14753 deletions

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
text=auto eol=lf

42
.github/workflows/latest.yml vendored Normal file
View File

@ -0,0 +1,42 @@
name: Make Latest Folder On EmulatorJS CDN
on:
push:
branches: ["main"]
workflow_dispatch:
permissions:
contents: read
jobs:
run:
if: github.repository == 'EmulatorJS/EmulatorJS'
runs-on: emulatorjs-server
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set Permissions
run: |
cd /mnt/HDD/public
chmod -R 775 .EmulatorJS/
- name: Update Latest
run: |
cd /mnt/HDD/public/.EmulatorJS/
git fetch --all
git reset --hard origin/main
git pull
- name: Minify Files
run: |
cd /mnt/HDD/public/.EmulatorJS/
npm i
npm run minify
- name: Zip Minified Files
run: |
cd /mnt/HDD/public/.EmulatorJS/data/
zip emulator.min.zip emulator.min.js emulator.min.css
- name: Copy to nightly folder
run: |
cd /mnt/HDD/public/
rsync -auv --exclude .EmulatorJS/data/cores/ .EmulatorJS/ nightly/
- name: Clean Up Minify
run: |
cd /mnt/HDD/public/.EmulatorJS/
rm -f "minify/package-lock.json"
rm -rf "minify/node_modules/" "./node_modules"

View File

@ -1,28 +0,0 @@
name: Minify Code
on:
push:
paths:
- 'data/*.js'
- 'data/*.css'
jobs:
minify:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.BOT_ACCESS_TOKEN }}
- uses: actions/setup-node@v3
with:
node-version: '16'
- name: Install NodeJS modules
run: cd data/minify && npm install
- name: Minify code
run: cd data/minify && npm run build
- uses: EndBug/add-and-commit@v9
with:
default_author: github_actions

42
.github/workflows/newlines.yml vendored Normal file
View File

@ -0,0 +1,42 @@
name: Check for Newline at End of Files
on:
pull_request:
types:
- opened
- synchronize
- reopened
jobs:
check-newlines:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Check for missing newlines
run: |
files=$(git ls-files)
newline_error=0
for file in $files; do
if file --mime "$file" | grep -q "binary"; then
#echo "Skipping binary file: $file"
continue
fi
last_char=$(tail -c 1 "$file" | xxd -p)
if [[ "$last_char" != "0a" ]]; then
echo "File $file does not end with a newline!"
newline_error=1
fi
done
if [[ $newline_error -eq 1 ]]; then
echo "One or more files do not end with a newline."
exit 1
else
echo "All files end with a newline."
fi

67
.github/workflows/npm.yml vendored Normal file
View File

@ -0,0 +1,67 @@
name: Publish Package to npmjs
on:
release:
types: [published]
workflow_dispatch:
jobs:
build:
if: github.repository == 'EmulatorJS/EmulatorJS'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20.x'
registry-url: 'https://registry.npmjs.org'
- name: Get latest release tag (if workflow_dispatch)
if: ${{ github.event_name == 'workflow_dispatch' }}
run: |
LATEST_TAG=$(curl -s https://api.github.com/repos/${{ github.repository }}/releases/latest | jq -r '.tag_name')
echo "LATEST_TAG=$LATEST_TAG" >> $GITHUB_ENV
- name: Download cores
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
TAG_NAME=${{ github.event.release.tag_name || env.LATEST_TAG }}
TRIMMED_TAG=${TAG_NAME#v}
echo "TRIMMED_TAG=$TRIMMED_TAG" >> $GITHUB_ENV
gh release download "$TAG_NAME" \
--repo ${{ github.repository }} \
--pattern "$TRIMMED_TAG.7z"
- name: Extract cores
run: |
7z x -y "$TRIMMED_TAG.7z" "data/cores/*" -o./
rm "$TRIMMED_TAG.7z"
- run: npm i
- name: Make @emulatorjs/emulatorjs
run: |
node build.js --npm=emulatorjs
npm ci
npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Get cores list
run: |
echo "CORES=$(node build.js --npm=get-cores | jq -r '. | join(" ")')" >> $GITHUB_ENV
- name: Setup cores
run: |
node build.js --npm=cores
- name: Publish each core
run: |
cd data/cores
for core in $CORES; do
echo "Processing core: $core"
cd $core
npm publish --access public
cd ..
done
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Make @emulatorjs/cores
run: |
cd data/cores
npm i
npm ci
npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

69
.github/workflows/stable.yml vendored Normal file
View File

@ -0,0 +1,69 @@
name: Make Stable Folder On EmulatorJS CDN
on:
release:
types: [published]
workflow_dispatch:
permissions:
contents: read
jobs:
run:
if: github.repository == 'EmulatorJS/EmulatorJS'
runs-on: emulatorjs-server
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set Variables
run: |
cd /mnt/HDD/public/
wget -q "https://api.github.com/repos/EmulatorJS/EmulatorJS/releases/latest" -O .tmp.json
version=$(jq -r '.tag_name' .tmp.json)
download_url=$(jq -r '.assets[0].browser_download_url' .tmp.json)
name=$(jq -r '.assets[0].name' .tmp.json)
old_version=$(jq -r '.github' versions.json)
v_version="$version"
if [[ $version == v* ]]; then
version="${version:1}"
fi
rm .tmp.json
echo "VERSION=$version" >> $GITHUB_ENV
echo "DOWNLOAD_URL=$download_url" >> $GITHUB_ENV
echo "NAME=$name" >> $GITHUB_ENV
echo "OLD_VERSION=$old_version" >> $GITHUB_ENV
echo "V_VERSION=$v_version" >> $GITHUB_ENV
- name: Download Stable
run: |
cd /mnt/HDD/public/
mkdir -p ".stable"
wget -q "$DOWNLOAD_URL" -O ".stable/$NAME"
- name: Extract Stable
run: |
cd /mnt/HDD/public/.stable/
7z x "$NAME"
- name: Move Versions
run: |
cd /mnt/HDD/public/
mv ".stable/$NAME" releases/
mv "$OLD_VERSION" "$VERSION"
mv stable "$OLD_VERSION"
mv .stable stable
jq --arg version "$VERSION" '.github = $version' versions.json | sponge versions.json
- name: Set Permissions
run: |
cd /mnt/HDD/public
chmod -R 775 stable/
- name: Update Stable Cores
run: |
rsync -a --delete /mnt/HDD/public/stable/data/cores/ /mnt/HDD/public/.EmulatorJS/data/cores/
- name: Zip Stable
run: |
cd /mnt/HDD/public/stable/data/
zip emulator.min.zip emulator.min.js emulator.min.css
- name: Update Version
run: |
cd /mnt/HDD/public/
jq --arg old_version "$OLD_VERSION" '.versions += {($old_version): ($old_version + "/")}' versions.json | sponge versions.json
- name: Clean Up
run: |
cd /mnt/HDD/public/
rm -f "$OLD_VERSION/data/emulator.min.zip"
rm -rf "$OLD_VERSION/node_modules/"

View File

@ -1,44 +0,0 @@
# Simple workflow for deploying static content to GitHub Pages
name: Deploy static content to Pages
on:
# Runs on pushes targeting the default branch
push:
branches: ["main"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
# Single deploy job since we're just deploying
deploy:
if: github.repository == 'EmulatorJS/EmulatorJS'
environment:
name: github-pages
url: "https://demo.emulatorjs.org"
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Pages
uses: actions/configure-pages@v3
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
# Upload entire repository
path: '.'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2

20
.gitignore vendored
View File

@ -1,6 +1,16 @@
**/node_modules/
*.db
roms/
yarn.lock
node_modules/
package-lock.json
.vscode/settings.json
yarn.lock
roms/
data/emulator.min.js
data/emulator.min.css
data/cores/*
!data/cores/README.md
!data/cores/core-README.md
!data/cores/package.json
!data/cores/.npmignore
.DS_Store
.vscode/*
*.tgz
dist/
jsdoc/

16
.npmignore Normal file
View File

@ -0,0 +1,16 @@
.git
dist/
node_modules/
package-lock.json
.github/
*.tgz
update.js
build.js
data/localization/translate.html
data/cores/*
!data/cores/README.md
!data/cores/package.json
minify/
.npmignore
.gitignore
roms/

View File

@ -1,6 +1,167 @@
# Changes
# 4.0.8
# 4.2.3
Bug fix release
- Redo image capture features (Thanks to [@allancoding](https://github.com/allancoding))
- Fix issue with invalid button names (Thanks to [@michael-j-green](https://github.com/michael-j-green))
- Fix issues with canvas size
- Update zh-CN translations (Thanks to [@incredibleIdea](https://github.com/incredibleIdea))
# 4.2.2 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/a796c4a3866652d1b6cb74a2b90e9552955c2b13)
- Prioritize gameName over gameUrl for the local storage identifier
- Fix CSS parsing when setting a background image (Thanks to [@kellenmace](https://github.com/kellenmace))
- Add `EJS_dontExtractBIOS` option (Thanks to [@pjft](https://github.com/pjft))
- Delete old screenshot file before saving a new one (Thanks to [@gantoine](https://github.com/gantoine))
- Add `saveSaveFiles` event for when save files are updated
- Add `saveDatabaseLoaded` event, for when the `/data/saves` directory has been mounted
- Add ability to set a system save interval
- Add the ability to hide settings from the settings menu with the `EJS_hideSettings` option
- Attempt to auto-detect system language and attempt to load that file.
- Add `EJS_disableAutoLang` option to disable auto language detection in `loader.js`
- Update Japanese translation file (Thanks to [@noel-forester](https://github.com/noel-forester))
- Add dropdown selection for gamepads
- Correct N64 virtual gamepad inputs
- Change path to `retroarch.cfg`
- Add `joystickInput` property for virtual gamepad buttons
- Removed `this.listeners`
- Update Korean translation file (Thanks to [@SooHyuck](https://github.com/SooHyuck))
- Redo touchscreen detection (Thanks to [@allancoding](https://github.com/allancoding))
- Redo toolbar visibility method (Thanks to [@allancoding](https://github.com/allancoding))
- Add `dosbox_pure` core (requires threading)
- Add toggle for direct keyboard input
- Redo scrolling in settings menu
- Redo about menu CSS
- Add setting to enable/disable mouse lock
- Properly handle failed save states
- Fix unknown axis events being discarded
- Write core settings file before loading the core (Some core settings are required to be loaded from here on startup)
- Add option to disable `alt` key when using direct keyboard input
- Cleanup famicom controls
- Fix setting gamepad axis to input values 16 to 23
- Rework internal method of getting user settings, add `this.getSettingValue` function
- Add Romanian translation file (Thanks to [@jurcaalexandrucristian](https://github.com/jurcaalexandrucristian))
- Fix build stack size when building cores
- Fix CHD support
# 4.2.1 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/13362ef0786990e93462f06505de772031cfc4c2)
This was a bug-fix only release.
- Core-fetch failsafe now fetches a pinned version (Thanks to [@gantoine](https://github.com/n-at))
- Fixes video rotation on the arcade core (Thanks to [@allancoding](https://github.com/allancoding))
- Updated French `af-FR` translation (Thanks to [@t3chnob0y](https://github.com/t3chnob0y))
- Fixes switching between cores.
- Change: Localstorage settings are now stored by game instead of by system.
- Fixed gamepad input for c-down.
- Fixed RetroArch always assuming save is `.srm`.
- Fixed EJS exit event
- Hide the "save/load save files" buttons if unsupported.
- Corrects the order of the core list.
- Corrects behaviour of the placement of bios/parent/patch files.
- Fixed rar decompression.
- Fixed picodrive core (`sega32x`)
- Fixed libretro-uae core (`amiga`)
# 4.2.0 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/8d42d53d4fdf0166f71eaa07529cadf93350b76e)
In my opinion, this is the most stable release we've had in a while. Many features added in this release were just side affects of fixing up some bugs.
- Let same_cdi core handle zipped bios file directly (Thanks to [@pastisme](https://github.com/pastisme))
- Fix audio sliders/mute button (Thanks to [@n-at](https://github.com/n-at))
- Add ability to rotate video (Thanks to [@allancoding](https://github.com/allancoding))
- Added persian `fa-AF` language (Thanks to [@iits-reza](https://github.com/iits-reza))
- Added more catches for a start-game error
- Fixed default webgl2 option
- Organized settings menu, by dividing entries into sub-menus
- Fixed the EmulatorJS exit button
- Added the ability to internally add configurable retroarch.cfg variables
- Fixed default settings being saved to localstorage
- Fixed in browser SRM saves (finally)
- Read save state from WebAssembly Memory
- Fixed an issue when loading PPSSPP assets
- Refactored the internal downloadFile function to be promised based instead of callback based
- Added checks if core requires threads or webgl2
- Added ability to switch between cores in the settings menu
- Added the ability to enable/disable threads if SharedArrayBuffer is defined
- Added a PSP controller scheme for the control settings menu
- Fixed the volume slider background height in firefox
- Added handling for lightgun devices
- Refactored the EmulatorJS `build-emulatorjs.sh` build script
- Added `ppsspp` core
# 4.1.1 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/4951a28de05e072acbe939f46147645a91664a07)
- Fixed 2xScaleHQ and 2xScaleHQ shaders (Thanks to [@n-at](https://github.com/n-at))
- Added Vietnamese (`vi-VN`) (Thanks to [@TimKieu](https://github.com/TimKieu))
- Disable CUE generation for the PUAE core (Thanks to [@michael-j-green](https://github.com/michael-j-green))
- Updated German translation (Thanks to [@jonas0b1011001](https://github.com/jonas0b1011001))
- Add missing calls to translate (Thanks to [@angelmarfil](https://github.com/angelmarfil))
- Added Turkish (`tr-TR`) (Thanks to [@iGoodie](https://github.com/iGoodie))
- Fixed Gamepad support for some older browsers (Thanks to [@ZhaoTonggang](https://github.com/ZhaoTonggang))
- Default to webgl1 on lower end cores.
- Added ability to switch between webgl1 and webgl2.
- Check core compatibility with EmulatorJS.
- Added core license to right-click menu.
- Removed usage of `replaceAll`.
- Added the ability to change settings on game start crash.
- Added `exit` button, to properly shutdown and save files.
- Fixed mouse on mobile devices.
- Modularized EmulatorJS.
- Fixed WHLoader hdf roms.
- Added support for `File` objects (Thanks to [@pastisme](https://github.com/pastisme)).
# 4.0.12 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/c3ba473d1afc278db136f8e1252d0456050d6047)
- Fix scroll bar css (Thanks to [@allancoding](https://github.com/allancoding))
- Flip the context menu instead of going off the page
- Add hooks for save files (Thanks to [@gantoine](https://github.com/gantoine))
- Add class for each virtual gamepad button
- Add `EJS_forceLegacyCores` option
- Add `EJS_noAutoFocus` (this is only for advanced developers, not likely an option you will use)
- Added supported Amiga file extensions (Thanks to [@michael-j-green](https://github.com/michael-j-green))
- Display the file name of the ROM/disk when using M3U lists (Thanks to [@michael-j-green](https://github.com/michael-j-green))
- Added vsync option
- Added advanced shader configuration support (Thanks to [@n-at](https://github.com/n-at))
# 4.0.11 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/cafd80d023afa9562c7054e89a4240f3381d64ff)
- Added the ability to disable localstorage using `EJS_disableLocalStorage`. (Thanks to [@n-at](https://github.com/n-at))
- Added the ability to trigger `EJS_emulator.displayMessage` with a duration. (Thanks to [@allancoding](https://github.com/allancoding))
- `EJS_emulator.gameManager.getState` now returns a Uint8Array instead of a promise.
- Fixed broken save states from the 4.0.10 release.
# 4.0.10 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/390605d2ab48db16c07c8fb4fc2815033af5c3a6)
- Fixed bug with duplicate control inputs.
- Fixed mobile settings menu positioning.
- Ability to load custom files into the wasm instance.
- Renamed the `mame2003` system to `mame`.
- Removed mame disclaimers on `mame2003` core.
- Added VICE cores for C64, C128, VIC20, Plus/4, and PET (Thanks to [@michael-j-green](https://github.com/michael-j-green))
- Added a padding between popup body and buttons.
- Added ability to disabled cached databases.
- Fixed screenshot for some cores.
- Fixed game element not being focused after fullscreening.
- Added missing Famicom controls.
- Fixed volume slider shadow. (Thanks to [@allancoding](https://github.com/allancoding))
# 4.0.9 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/ddb5c6092f12a63a46d74ea67e6469726665ebc2)
- Repository history rewrite - expect faster cloning times.
- Prevent Vice64 from creating cue files (Thanks to [@michael-j-green](https://github.com/michael-j-green))
- Chinese translation updated (Thanks to [@oyepriyansh](https://github.com/oyepriyansh))
- Added button to open context menu (Thanks to [@andrigamerita](https://github.com/andrigamerita))
- Fixed menu bar text placement for items on the right.
- Fixed a bug in safari where fullscreen would not resize the game element.
- Fixed a bug in safari where the bottom menu would be visible on initial page load.
- Fixed game rom filename showing as "game" when the game name is set.
- Added legacy nintendo 64 cores for browsers that don't support webgl2.
# 4.0.8 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/f579eb4c080f612723fd6a119b02173cafb37503)
- Fixed typo in virtual gamepad dpad.
- Added updated desmume core.
- Fixed key mapping (Thanks to [@allancoding](https://github.com/allancoding))
@ -14,6 +175,7 @@
- Added c64 core.
# 4.0.7 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/f579eb4c080f612723fd6a119b02173cafb37503)
- Added rewind (Thanks to [@n-at](https://github.com/n-at))
- Added slowdown (Thanks to [@n-at](https://github.com/n-at))
- Fixed "zone" object in front of settings menu.
@ -31,6 +193,7 @@
- Use keycodes instead of labels (Thanks to [@allancoding](https://github.com/allancoding))
# 4.0.6 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/5e338e7a888480cea331f6d4656bc8986a7d6b28)
- Fixed n64 on iOS safari
- virtual gamepads for atari2600, atari7800, lynx, jaguar, vb, 3do (Thanks to [@n-at](https://github.com/n-at))
- control buttons for gba, vb, 3do, atari2600, atari7800, lynx, jaguar (Thanks to [@n-at](https://github.com/n-at))
@ -38,6 +201,7 @@
- Added Fast Forward
# 4.0.5 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/5307e6294ed9df5daabd6958b2b307bae01f59f1)
- Added `pcsx_rearmed` core
- Made `pcsx_rearmed` core the default `psx` core (better compatibility)
- Added `fbneo` core
@ -52,20 +216,25 @@
- Add ***highly beta*** psp core - see readme
# 4.0.4 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/41491a738cf92ef9cee7d53f323aa2ab9732c053)
- Fix cheats "x" button
- Optimize memory usage
- Added ability to set urls to blob/arraybuffer/uint8array if needed
# 4.0.3 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/5219ab51227bc0fb60cbc7b60e476b0145c932c9)
- Remove RetroArch messages
- Center video at top
# 4.0.2 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/06fe386e780bb55ef6baa4fbc6addd486bee747a)
- Add link to RetroArch License on about page
- Fix gamepad support for legacy browsers
# 4.0.1 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/efbb9dd462ee0e4f2120a6947af312e02fcf657c)
Complete application re-write. Everything changed. Although some changes to note are:
- Optimization for smaller screens.
- No more dead code.
- Fix Gamepad for firefox.
@ -76,10 +245,12 @@ Complete application re-write. Everything changed. Although some changes to note
And much much more was changed...
# 3.1.5 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/f7fa5d41487a424233b40e903020455606d68fee)
- Fixed iOS bug for iPads
- Added netplay! (only working on old cores)
# 3.1.0 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/614f5cb55e2768199ba05b756b47d0ab7ab283fd)
- Added ability to drag and drop save states.
- Fixed some "update" and "cancel" and "close" button confustion
- Removed save state retroarch messages
@ -87,6 +258,7 @@ And much much more was changed...
- (Theoretically) fixed a bug that did not allow iOS devices to work
# 3.0.5 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/44c31371fb3c314cd8dea36ccbaad89fb3ab98e6)
- Fixed screen recording on devices that do not support getUserMedia api.
- Added C label buttons to nintendo 64 virtual gamepad.
- Fixed EJS_color bug.
@ -104,63 +276,79 @@ And much much more was changed...
- Added feature that will display the current downloaded size when the content length is not available.
# 2.3.9 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/088942083e44510f07133f2074a2d63a8af477cd)
- Fixed incorrect variable referencing when update bios download data callback.
- Fixed rom storage size limits.
- Fixed download percent not showing with some files.
# 2.3.8 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/5f176b963e4b2055983b82396378d1e3837a69c4)
- Remove broken shader.
- Add download percent message.
- Fixed UI "saving state" message not going away.
# 2.3.7 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/8b9607becfe0aaad42b8b8486c7d379821b72125)
- Add more shaders.
- Add bold fontsize option to custom virtual gamepad settings.
- No longer set "normalOptions" from localization file.
# 2.3.6 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/b2919bc2c3d2d4c9fe3ab4f4486790a376b7acfe)
- Remove default control mappings for gamepads.
- Upgraded invalid character regex to catch more characters.
# 2.3.5 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/a5a9916aba041e75ee73815376ed4fd2e22701bd)
- Use regex to detect and replace invalid characters in filename/gamename settings.
# 2.3.4 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/45d982b6362cfd29cb2eda9721066e03893ba0d8)
- Add new arcade core.
- Fix patch file game id set bug.
# 2.3.4 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/45d982b6362cfd29cb2eda9721066e03893ba0d8)
- Add new arcade core.
# 2.3.3 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/11bddd5a4277aa04f80b941f05cc024b3de58bfc)
- Make version in loader.js reasonable.
- Created function to return the game id to prevent unnecessary data stored.
# 2.3.2 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/e9e017435f2c41c6c2b127024cc88ac51bdf04d9)
- Fix reference error.
- Fix bug in custom virtual gamepad processor where if value is set to 0 it will see that as the value being missing.
# 2.3.1 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/0fd6d58e2011fa1a39bd2e11ba3d2f17773f0961)
- Use let instead of var.
# 2.3.0 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/2fd0f545285151524262cc799efef6d996d7c6c1)
- Added ability to customize virtual gamepad UI.
- Fixed bug where shader is not set on start.
# 2.2.9 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/018c39d4065b866487f8f18ca88c9488eab69a6d)
- Added feature to save save files to indexeddb every 5 minutes.
# 2.2.8 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/9860d662d02b56417044cca11937448041d9cf43)
- Re-write gamepad handler.
# 2.2.7 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/c03d18990b6536c1503bba2c640dbc13db982bb3)
- Removed un-needed FS proxy functions.
# 2.2.6 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/fd71b5dfc2bd44d8e1f0e7c6c7b3ee1a1127a696)
- Added fps counter.
- Fixed gba core aspect.
# 2.2.5 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/4b444ec23918149a6052807d778af82f79883c01)
- Added ability to set custom control mappings.
- Added ability to set custom default volume value.
- Fixed gamepad axis as button, gamepad varaible compared to incorrect value.
@ -168,16 +356,19 @@ And much much more was changed...
- Added ability to set game url to other data types.
# 2.2.3 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/41eed05677b4927bd114613040bfe4572c92c4b4)
- Fixed rar unarchiving function reference.
- Updated rar header detection.
- Removed netplay.
# 2.2.1 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/19980deb12c3f0790176db6fc7b8b2de4069bf4e)
- Added core menu options for new cores.
- Added new mame2003 core.
- Added support for debug emscripten setting for new cores.
# 2.0.1 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/a72222c39a793c4ff470ebb2b71c04829fee4b5e)
- Control mapping for beta cores.
- Updated beta cores.
- Beta cores now the default option!
@ -185,25 +376,30 @@ And much much more was changed...
- Fixed save state for new n64 core.
# 1.2.2 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/8ab7bb3f49da373ed5d291c5f72039bbabf2fbc8)
- Moved virtual gamepad menu button to the top left as 3 lines.
- Added screen orientation lock.
- Added beta n64 core!
# 1.2.1 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/638658e6202fd39cb5c94bedcfa00ccdf8b25840)
- Updated beta core files.
# 1.1.6 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/fa153ba76791184d978f9fb8b69991b05b161bc8)
- Replaced axios module with custom script.
- Added pause/play for beta cores.
- Sepperated css into its own file.
- Renamed emu-min.js to emulator.min.js.
# 1.1.5 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/2767c635b8a6e05c57e054d2f9d01ae0c4ff6d47)
- Cleaned up fetch error function.
- Cleaned up virtual gamepad event listeners.
- Add code of conduct.
# 1.1.2 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/64731dd8219931155b4e698aa98dbf65c2120038)
- Fixed error where mame files were misnamed.
- Fixed bug where variable referenced was not defined in loader.js.
- Added .gitignore
@ -215,6 +411,7 @@ And much much more was changed...
- Update nodejs buffer module.
# 1.1.0 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/715ded4ae23c2135bc9a8b9b7599f12c905393b3)
- Added minify feature.
- Added emulatorjs logo.
- Added beta nds and gb core.
@ -222,6 +419,7 @@ And much much more was changed...
- Added volume setting and cheats to beta cores.
# 1.0 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/fde44b095bb89e299daaaa4c8d7deebc79019865)
- Official release of the beta cores.
- Ability to use beta cores in production.
- Ability to use the old emulatorjs netplay server.
@ -230,6 +428,7 @@ And much much more was changed...
- Fixed virtual gamepad bug where a function was referenced to as an array.
# 0.4.26 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/0709829a11266b6ab4bbbf3e61d6dd6d3c372133)
- Sepperated emulator.js file into 2 files.
- Added support for a custom netplay server.
- Fixed netplay room password input bug.
@ -244,6 +443,7 @@ And much much more was changed...
- Update webrtc adapter.
# 0.4.25 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/ef3200ef87bffe57241e05ae9646cc201142ec46)
- Moved load state on start from loader.js file to emulator.js file.
- Moved data path function from loader.js file to emulator.js file.
- Added ability to set custom path to data through `EJS_pathtodata` variable.
@ -259,6 +459,7 @@ And much much more was changed...
- Created official emulatorjs website.
# 0.4.24 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/73ff641616bcd10f088a004002183760832a1afc)
- Deobsfocuted emulator.js and loader.js files to the most of my extent.
- Added quick save/load hotkeys.
- Added ability to use gamepad axis as button.
@ -274,6 +475,7 @@ And much much more was changed...
- Updated n64 core.
# 0.4.23-07 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/83e148c82cbc8b4e835a808dcf84456975f82a7c)
- Removed not needed code.
- Added reset button to control settings.
- Added clear button to control settings.
@ -282,27 +484,33 @@ And much much more was changed...
- Fixed RAR unarchiving.
# 0.4.23-05 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/018c787ccf6daca58c863d38fff61910f33f98ec)
- No longer cache games with the protocols of `file:`, and `chrome-extension:`.
- Changed default keymappings.
- Added screen recording button.
# 0.4.23-04 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/6464bbedc1cd58c023cd66656540fc174aedde8b)
- Added mame2003, snes2002, snes2005, snes2010, and vbanext cores.
- Added asmjs for all supported cores.
# 0.4.23-03 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/c883f267e1e56ed6b6472b891f78704c6e4b4c17)
- Start loader.js deobsfocuting.
- Deobsfocute extractzip.js.
- Added `EJS_gameName`, the ability to change the file name of save states.
# 0.4.23-02 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/5d97620b25a81e49c6ba313e586fb37a5ce66002)
- Start emulator.js deobsfocuting.
- Start emulator.js deobsfocuting.
# 0.4.23-01 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/42a7e129cfded266b72539e8d1b5978d5e4119d8)
- Added support for loading "blob:" urls.
- Added support for loading state on game start.
# 0.4.23 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/5f5cf5cbba29cfd772d525a4c73a4bc5ea26654c)
- Added update available message.
- Fixed a bug where the 'x' from the ad iframe was still visible on game start.
- Added a2600 and mame cores.
@ -310,9 +518,11 @@ And much much more was changed...
- Add rar extraction support.
# 0.4.19 [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/4fd22871663e5896bb5d0ce29a50ad508462387a)
- Added support for 32x, 3do, a7800, arcade, bluemsx, jaguar, lynx, ngp, pce, saturn, sega, segacd, and ws cores.
# Initial release [View Tree](https://github.com/EmulatorJS/EmulatorJS/tree/be2db16cba8bd85bf901cd89ca6de51414cea792)
- Support for unzipping zip files.
- Support for unzipping 7zip files.
- Support for vb, snes, psx, nes, nds, n64, gba, and gb systems. Only support for WASM.

View File

@ -2,10 +2,54 @@
There are several ways to contribute, be it directly to helping develop features for EmulatorJS, update the documentation, media assets or heading over to libretro and helping them develop the emulator cores that make the magic happen.
* EmulatorJS, take a look through the [issues](https://github.com/EmulatorJS/EmulatorJS/issues) on github and try to help out.
- EmulatorJS, take a look through the [issues](https://github.com/EmulatorJS/EmulatorJS/issues) on github and try to help out.
* Documentation [github page](https://github.com/EmulatorJS/emulatorjs.org).
- Documentation [github page](https://github.com/EmulatorJS/emulatorjs.org).
Just wanna donate? That'd help too!
[libretro](https://retroarch.com/index.php?page=donate)
[EmulatorJS](https://www.patreon.com/EmulatorJS)
Donate to: [EmulatorJS](https://www.patreon.com/EmulatorJS)
Donate to: [libretro](https://retroarch.com/index.php?page=donate)
## Project Scripts
The project has several scripts that can be used to help with updating and deploying the project.
### Build Script
Runs the build script, which will compresses the project in 7z and zip output in dist/ folder. Note: Make sure you have the compiled cores in the `data/cores` folder before running this script.
```bash
npm run build
```
### Update Script
Runs the update script, which updates dependencies and can change version number of project. It also will update the list of contributors.
```bash
npm run update # Just updates contributors list
npm run update -- --ejs_v=4.3.1 # Updates contributors list and sets version to 4.3.1
npm run update -- --deps=true # Updates contributors list and updates dependencies
npm run update -- --dev=true # Updates contributors list and enables dev mode
npm run update -- --dev=false # Updates contributors list and disables dev mode
```
## Attention Visual Studio Code Users
By default Visual Studio Code will apply formatting that is not consistent with the standard formatting used by this project.
Please disable the formatter *before* submitting a Pull Request.
The formatter can be disabled for this repo only (without affecting your own preferences) by creating a new file called `.vscode/settings.json` (if it doesn't already exist).
Add the following options to the settings.json file to disable the formatter while working on this repo:
```json
{
"diffEditor.ignoreTrimWhitespace": false,
"editor.formatOnPaste": false,
"editor.formatOnSave": false,
"editor.formatOnSaveMode": "modifications"
}
```

View File

@ -632,7 +632,7 @@ state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
EmulatorJS: RetroArch on the web
Copyright (C) 2023 Ethan O'Brien
Copyright (C) 2022-2024 Ethan O'Brien
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -652,7 +652,7 @@ Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
EmulatorJS Copyright (C) 2023 Ethan O'Brien
EmulatorJS Copyright (C) 2023-2025 Ethan O'Brien
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.

208
README.md
View File

@ -1,4 +1,3 @@
<div align = center>
<img width = 300 src = docs/Logo-light.png#gh-dark-mode-only>
@ -8,35 +7,33 @@
<br>
[![Badge License]][License]
Self-hosted **Javascript** emulation for various system.
Self-hosted **Javascript** emulation for various systems.
<br>
[![Button Website]][Website]
[![Button Website]][Website]
[![Button Usage]][Usage]<br>
[![Button Configurator]][Configurator]<br>
[![Button Demo]][Demo]
[![Button Legacy]][Legacy]
[![Button Contributors]][Contributors]
[![Button Demo]][Demo]<br>
[![Button Contributors]][Contributors]
Join our Discord server:
[![Join our Discord server!](https://invite.casperiv.dev/?inviteCode=6akryGkETU&format=svg)](https://discord.gg/6akryGkETU)
[![Join our Discord server!](https://invidget.switchblade.xyz/6akryGkETU)](https://discord.gg/6akryGkETU)
</div>
<br>
**As of EmulatorJS version 4.0, this project is no longer a reverse-engineered version of the emulatorjs.com project. It is now a complete re-write,**
> [!NOTE]
> **As of EmulatorJS version 4.0, this project is no longer a reverse-engineered version of the emulatorjs.com project. It is now a complete rewrite.**
<br>
> [!WARNING]
> As of version 4.0.9 cores and minified files are no longer included in the repository. You will need to get them separately. You can get it from [releases](https://github.com/EmulatorJS/EmulatorJS/releases) or the \* new CDN (see [this](#CDN) for more info). There is also a new version system that we will be using. (read [here](#Versioning) for more info).
**README BEFORE YOU UPDATE:** EmulatorJS Version 4.0 is a complete re-write of the application. At least some bugs are expected. If you did any communicating with the emulator, there is a 100% chance you will need to re-write your project, and to people with active branches of this project, I wish you luck with merge conflicts (I'm very sorry). The emulator object can be accessed through the `window.EJS_emulator` object.
It is **HIGHLY** suggested that you update to 4.0 ASAP.
> [!TIP]
> Cloning the repository is no longer recommended for production use. You should use [releases](https://github.com/EmulatorJS/EmulatorJS/releases) or the [CDN](https://cdn.emulatorjs.org/) instead.
<br>
@ -51,7 +48,6 @@ It is **HIGHLY** suggested that you update to 4.0 ASAP.
<br>
### Issues
*If something doesn't work, please consider opening an* ***[Issue]*** <br>
@ -59,25 +55,74 @@ It is **HIGHLY** suggested that you update to 4.0 ASAP.
<br>
### Extensions
### 3rd Party Projects
**[GameLibrary]**
EmulatorJS itself is built to be a plugin, rather than an entire website. This is why there is no docker container of this project. However, there are several projects you can use that use EmulatorJS!
*A library overview for your **ROM** folder.*
Looking for projects that integrate EmulatorJS? Check out https://emulatorjs.org/docs/3rd-party
<br>
### Versioning
There are three different version names that you need to be aware of:
1. **stable** - This will be the most stable version of the emulator both code and cores will be tested before release. It will be updated every time a new version is released on GitHub. This is the default version on the Demo.
2. **latest** - This will contain the latest code but use the stable cores. This will be updated every time the *main* branch is updated.
3. **nightly** - This will contain the latest code and the latest cores. The cores will be updated every day, so this is considered alpha.
<br>
### CDN
**EmulatorJS provides a CDN** at `https://cdn.emulatorjs.org/`, allowing access to any version of the emulator.
To use it, set `EJS_pathtodata` to `https://cdn.emulatorjs.org/<version>/data/`, replacing `<version>` with `stable`, `latest`, `nightly`, or another main release.
Be sure to also update the `loader.js` path to:
`https://cdn.emulatorjs.org/<version>/data/loader.js`
<br>
### Development:
*Run a local server with:*
```
npm i
npm start
```
1. Open a terminal inthe root of the project.
2. Install the dependencies with:
```sh
npm i
```
3. Start the minification with:
```sh
node start
```
4. Open your browser and go to `http://localhost:8080/` to see the demo page.
<br>
**>>When reporting bugs, please specify that you are using the old version**
<br>
#### Minifying
Before pushing the script files onto your production server it is recommended to minify them to save on load times as well as bandwidth.
Read the [minifying](minify/README.md) documentation for more info.
<br>
#### Localization
If you want to help with localization, please check out the [localization](data/localization/README.md) documentation.
<br>
**>>When reporting bugs, please specify what version you are using**
<br>
<br>
@ -112,7 +157,7 @@ npm start
**[Saturn][Sega Saturn]**|
**[32X][Sega 32X]**|
**[CD][Sega CD]**
<br>
<br>
@ -124,23 +169,45 @@ npm start
**[Lynx][Atari Lynx]**|
**[Jaguar][Atari Jaguar]**
<br>
<br>
### Commodore
**[Commodore 64]** |
**[Commodore 128]** |
**[Commodore Amiga]**
**[Commodore PET]** |
**[Commodore Plus/4]** |
**[Commodore VIC-20]**
<br>
<br>
### Other
**[PlayStation]**|
**[Arcade]**|
**[3DO]**|
**[MAME 2003]**
**[PlayStation Portable]**|
**[Arcade]**
**[3DO]** |
**[MAME 2003]** |
**[ColecoVision]**
</div>
<br>
***PSP is not yet supported***. Some of y'all may have seen that I pushed a "beta" ppsspp core, but this core is not ready for daily use. It still crashes randomly and any games that use 3d (so like, all of them) will just have a white screen (and might just crash). Do not open issues related to the "psp" core.
## Star History
<a href="https://star-history.com/#EmulatorJS/EmulatorJS&Date">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=EmulatorJS/EmulatorJS&type=Date&theme=dark" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=EmulatorJS/EmulatorJS&type=Date" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=EmulatorJS/EmulatorJS&type=Date" />
</picture>
</a>
<!-- 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 --->
@ -148,64 +215,67 @@ npm start
[Issue]: https://github.com/ethanaobrien/emulatorjs/issues
[patreon]: https://patreon.com/EmulatorJS
<!-- 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 Extensions 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 --->
[GameLibrary]: https://github.com/Ramaerel/emulatorjs-GameLibrary
<!-- 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 Quicklinks 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 --->
[Configurator]: https://emulatorjs.org/editor.html
[Contributors]: docs/Contributors.md
[Configurator]: https://emulatorjs.org/editor
[Contributors]: docs/contributors.md
[Website]: https://emulatorjs.org/
[Legacy]: https://coldcast.org/games/1/Super-Mario-Bros
[Usage]: https://emulatorjs.org/docs/
[Demo]: https://demo.emulatorjs.org/
<!-- 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 Systems 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 -->
[Nintendo Game Boy Advance]: docs/Systems/Nintendo%20Game%20Boy%20Advance.md
[Nintendo Game Boy]: docs/Systems/Nintendo%20Game%20Boy.md
[Nintendo 64]: docs/Systems/Nintendo%2064.md
[Nintendo DS]: docs/Systems/Nintendo%20DS.md
[Nintendo Game Boy Advance]: https://emulatorjs.org/docs/systems/nintendo-game-boy-advance
[Nintendo Game Boy]: https://emulatorjs.org/docs/systems/nintendo-game-boy
[Nintendo 64]: https://emulatorjs.org/docs/systems/nintendo-64
[Nintendo DS]: https://emulatorjs.org/docs/systems/nintendo-ds
[Sega Master System]: docs/Systems/Sega%20Master%20System.md
[Sega Mega Drive]: docs/Systems/Sega%20Mega%20Drive.md
[Sega Game Gear]: docs/Systems/Sega%20Game%20Gear.md
[Sega Saturn]: docs/Systems/Sega%20Saturn.md
[Sega 32X]: docs/Systems/Sega%2032X.md
[Sega CD]: docs/Systems/Sega%20CD.md
[Sega Master System]: https://emulatorjs.org/docs/systems/sega-master-system
[Sega Mega Drive]: https://emulatorjs.org/docs/systems/sega-mega-drive
[Sega Game Gear]: https://emulatorjs.org/docs/systems/sega-game-gear
[Sega Saturn]: https://emulatorjs.org/docs/systems/sega-saturn
[Sega 32X]: https://emulatorjs.org/docs/systems/sega-32x
[Sega CD]: https://emulatorjs.org/docs/systems/sega-cd
[Atari Jaguar]: docs/Systems/Atari%20Jaguar.md
[Atari Lynx]: docs/Systems/Atari%20Lynx.md
[Atari 7800]: docs/Systems/Atari%207800.md
[Atari 2600]: docs/Systems/Atari%202600.md
[Atari 5200]: docs/Systems/Atari%205200.md
[Atari Jaguar]: https://emulatorjs.org/docs/systems/atari-jaguar
[Atari Lynx]: https://emulatorjs.org/docs/systems/atari-lynx
[Atari 7800]: https://emulatorjs.org/docs/systems/atari-7800
[Atari 2600]: https://emulatorjs.org/docs/systems/atari-2600
[Atari 5200]: https://emulatorjs.org/docs/systems/atari-5200
[NES / Famicom]: docs/Systems/NES-Famicom.md
[SNES]: docs/Systems/SNES.md
[NES / Famicom]: https://emulatorjs.org/docs/systems/nes-famicom
[SNES]: https://emulatorjs.org/docs/systems/snes
[TurboGrafs-16 / PC Engine]: docs/Systems/TurboGrafs%2016-PC%20Engine.md
[WanderSwan / Color]: docs/Systems/WanderSwan-Color.md
[Neo Geo Poket]: docs/Systems/Neo%20Geo%20Poket.md
[PlayStation]: docs/Systems/PlayStation.md
[Virtual Boy]: docs/Systems/Virtual%20Boy.md
[Arcade]: docs/Systems/Arcade.md
[MSX]: docs/Systems/MSX.md
[3DO]: docs/Systems/3DO.md
[MAME 2003]: docs/Systems/MAME%202003.md
<!--
[TurboGrafs-16 / PC Engine]: https://emulatorjs.org/systems/TurboGrafx-16
[MSX]: https://emulatorjs.org/systems/MSX
[WanderSwan / Color]: https://emulatorjs.org/systems/WonderSwan
[Neo Geo Poket]: https://emulatorjs.org/systems/Neo%20Geo%20Pocket
--->
[PlayStation]: https://emulatorjs.org/docs/systems/playstation
[PlayStation Portable]: https://emulatorjs.org/docs/systems/psp
[Virtual Boy]: https://emulatorjs.org/docs/systems/virtual-boy
[Arcade]: https://emulatorjs.org/docs/systems/arcade
[3DO]: https://emulatorjs.org/docs/systems/3do
[MAME 2003]: https://emulatorjs.org/docs/systems/mame-2003
[ColecoVision]: https://emulatorjs.org/docs/systems/colecovision
[Commodore 64]: https://emulatorjs.org/docs/systems/commodore-64
[Commodore 128]: https://emulatorjs.org/docs/systems/commodore-128
[Commodore Amiga]: https://emulatorjs.org/docs/systems/commodore-amiga
[Commodore PET]: https://emulatorjs.org/docs/systems/commodore-pet
[Commodore Plus/4]: https://emulatorjs.org/docs/systems/commodore-plus4
[Commodore VIC-20]: https://emulatorjs.org/docs/systems/commodore-vic20
<!-- 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 Badges 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 🎮 --->
[Badge License]: https://img.shields.io/badge/License-GPLv3-blue.svg?style=for-the-badge
[Button Configurator]: https://img.shields.io/badge/Configurator-992cb3?style=for-the-badge
[Button Configurator]: https://img.shields.io/badge/Code%20Generator-992cb3?style=for-the-badge
[Button Contributors]: https://img.shields.io/badge/Contributors-54b7dd?style=for-the-badge
[Button Website]: https://img.shields.io/badge/Website-736e9b?style=for-the-badge
[Button Legacy]: https://img.shields.io/badge/Legacy-ab910b?style=for-the-badge
[Button Usage]: https://img.shields.io/badge/Usage-2478b5?style=for-the-badge
[Button Demo]: https://img.shields.io/badge/Demo-528116?style=for-the-badge
[Button Beta]: https://img.shields.io/badge/Beta-bb044f?style=for-the-badge

View File

@ -1 +0,0 @@
google.com, pub-8832864985153925, DIRECT, f08c47fec0942fa0

183
build.js Normal file
View File

@ -0,0 +1,183 @@
import fs from 'fs';
import path from 'path';
import Seven from 'node-7z';
let version;
try {
const packageJsonPath = path.resolve('package.json');
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
version = packageJson.version;
} catch(error) {
console.error("Error reading version from package.json:", error.message);
process.exit(1);
}
const args = process.argv.slice(2);
const npmArg = args.find(arg => arg.startsWith('--npm='));
const build_type = npmArg ? npmArg.split('=')[1] : process.env.npm;
if (!build_type) {
const progressData = {
'7z': 0,
'zip': 0
};
const progressInterval = setInterval(() => {
process.stdout.clearLine();
process.stdout.cursorTo(0);
if (progressData['7z'] < 100 && progressData['zip'] < 100) {
process.stdout.write(`7z Progress: ${progressData['7z']}% | Zip Progress: ${progressData['zip']}%`);
} else if (progressData['7z'] === 100) {
console.log(`${version}.7z created successfully!`);
process.stdout.write(`Zip Progress: ${progressData['zip']}%`);
progressData['7z'] = 101;
} else if (progressData['zip'] === 100) {
console.log(`${version}.zip created successfully!`);
process.stdout.write(`7z Progress: ${progressData['7z']}%`);
progressData['zip'] = 101;
} else if (progressData['zip'] >= 100 && progressData['7z'] >= 100) {
process.stdout.write(`All archives for EmulatorJS version: ${version} created successfully!`);
clearInterval(progressInterval);
console.log('\nArchives are in the dist/ folder.');
} else if (progressData['7z'] >= 100) {
process.stdout.write(`Zip Progress: ${progressData['zip']}%`);
} else if (progressData['zip'] >= 100) {
process.stdout.write(`7z Progress: ${progressData['7z']}%`);
}
}, 100);
console.log(`Creating archives for EmulatorJS version: ${version}`);
const npmIgnorePath = path.resolve('.npmignore');
if (!fs.existsSync('dist')) {
fs.mkdirSync('dist');
}
const distNpmIgnorePath = path.resolve('dist', '.ignore');
fs.copyFileSync(npmIgnorePath, distNpmIgnorePath);
const npmIgnoreContent = fs.readFileSync(npmIgnorePath, 'utf8');
const updatedNpmIgnoreContent = npmIgnoreContent.replace('data/cores/*', 'data/cores/core-README.md\ndata/cores/package.json');
fs.writeFileSync(distNpmIgnorePath, updatedNpmIgnoreContent, 'utf8');
Seven.add(`dist/${version}.7z`, './', {
$raw: ['-xr@dist/.ignore'],
$progress: true
}).on('progress', function (progress) {
progressData['7z'] = progress.percent;
}).on('end', function() {
progressData['7z'] = 100;
});
Seven.add(`dist/${version}.zip`, './', {
$raw: ['-xr@dist/.ignore'],
$progress: true
}).on('progress', function (progress) {
progressData['zip'] = progress.percent;
}).on('end', function() {
progressData['zip'] = 100;
});
} else if (build_type !== "emulatorjs" && build_type !== "cores" && build_type !== "get-cores") {
console.log("Invalid argument. Use --npm=emulatorjs, --npm=cores or --npm=get-cores.");
process.exit(1);
} else {
const removeLogo = () => {
const readmePath = path.resolve('README.md');
const readmeContent = fs.readFileSync(readmePath, 'utf8');
const updatedContent = readmeContent
.split('\n')
.filter(line => !line.includes('docs/Logo-light.png#gh-dark-mode-only>'))
.join('\n');
fs.writeFileSync(readmePath, updatedContent, 'utf8');
};
const getCores = async () => {
const coresJsonPath = path.resolve('data', 'cores', 'cores.json');
if (!fs.existsSync(coresJsonPath)) {
console.error(`Cores JSON file not found at ${coresJsonPath}`);
return;
}
return JSON.parse(fs.readFileSync(coresJsonPath, 'utf8'));
};
if (build_type === "emulatorjs") {
console.log(`Current EmulatorJS Version: ${version}`);
removeLogo();
console.log("Ready to build EmulatorJS!");
} else if (build_type === "get-cores") {
const cores = await getCores();
console.log(JSON.stringify(cores.map(coreName => coreName.name)));
} else if (build_type === "cores") {
console.log(`Current EmulatorJS Version: ${version}`);
console.log("Building cores...");
const allCores = await getCores();
console.log("Building EmulatorJS cores:");
const coreNames = allCores.map(coreName => coreName.name);
console.log(coreNames.join(', '));
if (!coreNames) {
console.error("No cores found.");
process.exit(1);
}
const coresPath = path.resolve('data', 'cores');
const coresFiles = fs.readdirSync(coresPath);
const dataFiles = coresFiles.filter(file => file.endsWith('.data') || file.endsWith('.zip'));
const cores = {};
for (const core of coreNames) {
const coreFiles = dataFiles.filter(file => file.startsWith(core + '-'));
if (!cores[core]) {
cores[core] = [];
}
cores[core].push(...coreFiles);
}
const packagePath = path.resolve('data', 'cores', 'package.json');
const packageContent = fs.readFileSync(packagePath, 'utf8');
const packageJson = JSON.parse(packageContent);
packageJson.dependencies = {
"@emulatorjs/emulatorjs": "latest"
};
fs.writeFileSync(packagePath, JSON.stringify(packageJson, null, 4), 'utf8');
for (const core in cores) {
if (!fs.existsSync(path.resolve('data', 'cores', core))) {
fs.mkdirSync(path.resolve('data', 'cores', core));
}
for (const file of cores[core]) {
const sourcePath = path.resolve('data', 'cores', file);
const destPath = path.resolve('data', 'cores', core, file);
fs.copyFileSync(sourcePath, destPath);
const reportsPath = path.resolve('data', 'cores', core, 'reports');
if (!fs.existsSync(reportsPath)) {
fs.mkdirSync(reportsPath);
}
}
const coreReportPath = path.resolve('data', 'cores', 'reports', `${core}.json`);
const coreReportDestPath = path.resolve('data', 'cores', core, 'reports', `${core}.json`);
fs.copyFileSync(coreReportPath, coreReportDestPath);
const corePackagePath = path.resolve('data', 'cores', 'package.json');
const corePackageDestPath = path.resolve('data', 'cores', core, 'package.json');
const corePackageContent = fs.readFileSync(corePackagePath, 'utf8');
const corePackageJson = JSON.parse(corePackageContent);
corePackageJson.name = `@emulatorjs/core-${core}`;
corePackageJson.description = `EmulatorJS Core: ${core}`;
corePackageJson.license = allCores.find(c => c.name === core).license;
corePackageJson.repository.url = allCores.find(c => c.name === core).repo + '.git';
corePackageJson.bugs.url = allCores.find(c => c.name === core).repo + '/issues';
corePackageJson.dependencies = {
"@emulatorjs/emulatorjs": "latest"
};
fs.writeFileSync(corePackageDestPath, JSON.stringify(corePackageJson, null, 4), 'utf8');
const coreReadmePath = path.resolve('data', 'cores', 'core-README.md');
const coreReadmeDestPath = path.resolve('data', 'cores', core, 'README.md');
const coreReadmeContent = fs.readFileSync(coreReadmePath, 'utf8');
const updatedCoreReadmeContent = coreReadmeContent
.replace(/<!-- EJS_CORE_NAME -->/g, `${core}`)
.replace(/<!-- EJS_CORE_REPO -->/g, allCores.find(c => c.name === core).repo);
fs.writeFileSync(coreReadmeDestPath, updatedCoreReadmeContent, 'utf8');
packageJson.dependencies[`@emulatorjs/core-${core}`] = "latest";
fs.writeFileSync(packagePath, JSON.stringify(packageJson, null, 4), 'utf8');
}
console.log("EmulatorJS cores built successfully!");
console.log("Ready to build EmulatorJS!");
}
}

View File

@ -1,345 +0,0 @@
class EJS_GameManager {
constructor(Module, EJS) {
this.EJS = EJS;
this.Module = Module;
this.FS = this.Module.FS;
this.functions = {
restart: this.Module.cwrap('system_restart', '', []),
getStateInfo: this.Module.cwrap('get_state_info', 'string', []), //these names are dumb
saveStateInfo: this.Module.cwrap('save_state_info', 'null', []),
loadState: this.Module.cwrap('load_state', 'number', ['string', 'number']),
screenshot: this.Module.cwrap('cmd_take_screenshot', '', []),
simulateInput: this.Module.cwrap('simulate_input', 'null', ['number', 'number', 'number']),
toggleMainLoop: this.Module.cwrap('toggleMainLoop', 'null', ['number']),
getCoreOptions: this.Module.cwrap('get_core_options', 'string', []),
setVariable: this.Module.cwrap('ejs_set_variable', 'null', ['string', 'string']),
setCheat: this.Module.cwrap('set_cheat', 'null', ['number', 'number', 'string']),
resetCheat: this.Module.cwrap('reset_cheat', 'null', []),
toggleShader: this.Module.cwrap('shader_enable', 'null', ['number']),
getDiskCount: this.Module.cwrap('get_disk_count', 'number', []),
getCurrentDisk: this.Module.cwrap('get_current_disk', 'number', []),
setCurrentDisk: this.Module.cwrap('set_current_disk', 'null', ['number']),
getSaveFilePath: this.Module.cwrap('save_file_path', 'string', []),
saveSaveFiles: this.Module.cwrap('cmd_savefiles', '', []),
supportsStates: this.Module.cwrap('supports_states', 'number', []),
loadSaveFiles: this.Module.cwrap('refresh_save_files', 'null', []),
toggleFastForward: this.Module.cwrap('toggle_fastforward', 'null', ['number']),
setFastForwardRatio: this.Module.cwrap('set_ff_ratio', 'null', ['number']),
toggleRewind: this.Module.cwrap('toggle_rewind', 'null', ['number']),
setRewindGranularity: this.Module.cwrap('set_rewind_granularity', 'null', ['number']),
toggleSlowMotion: this.Module.cwrap('toggle_slow_motion', 'null', ['number']),
setSlowMotionRatio: this.Module.cwrap('set_sm_ratio', 'null', ['number']),
getFrameNum: this.Module.cwrap('get_current_frame_count', 'number', [''])
}
this.mkdir("/home");
this.mkdir("/home/web_user");
this.mkdir("/home/web_user/retroarch");
this.mkdir("/home/web_user/retroarch/userdata");
this.mkdir("/home/web_user/retroarch/userdata/config");
this.mkdir("/home/web_user/retroarch/userdata/config/Beetle PSX HW");
this.FS.writeFile("/home/web_user/retroarch/userdata/config/Beetle PSX HW/Beetle PSX HW.opt", 'beetle_psx_hw_renderer = "software"\n');
this.mkdir("/data");
this.mkdir("/data/saves");
this.FS.writeFile("/home/web_user/retroarch/userdata/retroarch.cfg", this.getRetroArchCfg());
this.FS.mount(IDBFS, {}, '/data/saves');
this.FS.syncfs(true, () => {});
this.initShaders();
this.EJS.addEventListener(window, "beforeunload", () => {
this.saveSaveFiles();
this.FS.syncfs(() => {});
})
}
mkdir(path) {
try {
this.FS.mkdir(path);
} catch(e) {}
}
getRetroArchCfg() {
return "autosave_interval = 60\n" +
"screenshot_directory = \"/\"\n" +
"block_sram_overwrite = false\n" +
"video_gpu_screenshot = false\n" +
"audio_latency = 64\n" +
"video_top_portrait_viewport = true\n" +
"video_vsync = true\n" +
"video_smooth = false\n" +
"fastforward_ratio = 3.0\n" +
"slowmotion_ratio = 3.0\n" +
(this.EJS.rewindEnabled ? "rewind_enable = true\n" : "") +
(this.EJS.rewindEnabled ? "rewind_granularity = 6\n" : "") +
"savefile_directory = \"/data/saves\"\n";
}
initShaders() {
if (!window.EJS_SHADERS) return;
this.mkdir("/shader");
for (const shader in window.EJS_SHADERS) {
this.FS.writeFile('/shader/'+shader, window.EJS_SHADERS[shader]);
}
}
clearEJSResetTimer() {
if (this.EJS.resetTimeout) {
clearTimeout(this.EJS.resetTimeout);
delete this.EJS.resetTimeout;
}
}
restart() {
this.clearEJSResetTimer();
this.functions.restart();
}
getState() {
return new Promise(async (resolve, reject) => {
const stateInfo = (await this.getStateInfo()).split('|')
let state;
let size = stateInfo[0] >> 0;
if (size > 0) {
state = new Uint8Array(size);
let start = stateInfo[1] >> 0;
for (let i=0; i<size; i++) state[i] = this.Module.getValue(start + i);
}
resolve(state);
})
}
getStateInfo() {
this.functions.saveStateInfo();
return new Promise((resolve, reject) => {
let a;
let b = setInterval(() => {
a = this.functions.getStateInfo();
if (a) {
clearInterval(b);
resolve(a);
}
}, 50)
});
}
loadState(state) {
try {
this.FS.unlink('game.state');
} catch(e){}
this.FS.writeFile('/game.state', state);
this.clearEJSResetTimer();
this.functions.loadState("game.state", 0);
setTimeout(() => {
try {
this.FS.unlink('game.state');
} catch(e){}
}, 5000)
}
screenshot() {
this.functions.screenshot();
return this.FS.readFile('screenshot.png');
}
quickSave(slot) {
if (!slot) slot = 1;
(async () => {
let name = slot + '-quick.state';
try {
this.FS.unlink(name);
} catch (e) {}
let data = await this.getState();
this.FS.writeFile('/'+name, data);
})();
}
quickLoad(slot) {
if (!slot) slot = 1;
(async () => {
let name = slot + '-quick.state';
this.clearEJSResetTimer();
this.functions.loadState(name, 0);
})();
}
simulateInput(player, index, value) {
if (this.EJS.isNetplay) {
this.EJS.netplay.simulateInput(player, index, value);
return;
}
if ([24, 25, 26, 27, 28, 29].includes(index)) {
if (index === 24 && value === 1) {
const slot = this.EJS.settings['save-state-slot'] ? this.EJS.settings['save-state-slot'] : "1";
this.quickSave(slot);
this.EJS.displayMessage(this.EJS.localization("SAVED STATE TO SLOT")+" "+slot);
}
if (index === 25 && value === 1) {
const slot = this.EJS.settings['save-state-slot'] ? this.EJS.settings['save-state-slot'] : "1";
this.quickLoad(slot);
this.EJS.displayMessage(this.EJS.localization("LOADED STATE FROM SLOT")+" "+slot);
}
if (index === 26 && value === 1) {
let newSlot;
try {
newSlot = parseFloat(this.EJS.settings['save-state-slot'] ? this.EJS.settings['save-state-slot'] : "1") + 1;
} catch(e) {
newSlot = 1;
}
if (newSlot > 9) newSlot = 1;
this.EJS.displayMessage(this.EJS.localization("SET SAVE STATE SLOT TO")+" "+newSlot);
this.EJS.changeSettingOption('save-state-slot', newSlot.toString());
}
if (index === 27) {
this.functions.toggleFastForward(this.EJS.isFastForward ? !value : value);
}
if (index === 29) {
this.functions.toggleSlowMotion(this.EJS.isSlowMotion ? !value : value);
}
if (index === 28) {
if (this.EJS.rewindEnabled) {
this.functions.toggleRewind(value);
}
}
return;
}
this.functions.simulateInput(player, index, value);
}
getFileNames() {
if (this.EJS.getCore() === "picodrive") {
return ["bin", "gen", "smd", "md", "32x", "cue", "iso", "sms", "68k", "chd"];
} else {
return ["toc", "ccd", "exe", "pbp", "chd", "img", "bin", "iso"];
}
}
createCueFile(fileNames) {
try {
if (fileNames.length > 1) {
fileNames = fileNames.filter((item) => {
return this.getFileNames().includes(item.split(".").pop().toLowerCase());
})
fileNames = fileNames.sort((a, b) => {
if (isNaN(a.charAt()) || isNaN(b.charAt())) throw new Error("Incorrect file name format");
return (parseInt(a.charAt()) > parseInt(b.charAt())) ? 1 : -1;
})
}
} catch(e) {
if (fileNames.length > 1) {
console.warn("Could not auto-create cue file(s).");
return null;
}
}
for (let i=0; i<fileNames.length; i++) {
if (fileNames[i].split(".").pop().toLowerCase() === "ccd") {
console.warn("Did not auto-create cue file(s). Found a ccd.");
return null;
}
}
if (fileNames.length === 0) {
console.warn("Could not auto-create cue file(s).");
return null;
}
let baseFileName = fileNames[0].split("/").pop();
if (baseFileName.includes(".")) {
baseFileName = baseFileName.substring(0, baseFileName.length - baseFileName.split(".").pop().length - 1);
}
for (let i=0; i<fileNames.length; i++) {
const contents = " FILE \""+fileNames[i]+"\" BINARY\n TRACK 01 MODE1/2352\n INDEX 01 00:00:00";
FS.writeFile("/"+baseFileName+"-"+i+".cue", contents);
}
if (fileNames.length > 1) {
let contents = "";
for (let i=0; i<fileNames.length; i++) {
contents += "/"+baseFileName+"-"+i+".cue\n";
}
FS.writeFile("/"+baseFileName+".m3u", contents);
}
return (fileNames.length === 1) ? baseFileName+"-0.cue" : baseFileName+".m3u";
}
loadPpssppAssets() {
return new Promise(resolve => {
this.EJS.downloadFile('cores/ppsspp-assets.zip', (res) => {
this.EJS.checkCompression(new Uint8Array(res.data), this.EJS.localization("Decompress Game Data")).then((pspassets) => {
if (pspassets === -1) {
this.EJS.textElem.innerText = this.localization('Network Error');
this.EJS.textElem.style.color = "red";
return;
}
this.mkdir("/PPSSPP");
for (const file in pspassets) {
const data = pspassets[file];
const path = "/PPSSPP/"+file;
const paths = path.split("/");
let cp = "";
for (let i=0; i<paths.length-1; i++) {
if (paths[i] === "") continue;
cp += "/"+paths[i];
if (!FS.analyzePath(cp).exists) {
FS.mkdir(cp);
}
}
this.FS.writeFile(path, data);
}
resolve();
})
}, null, false, {responseType: "arraybuffer", method: "GET"});
})
}
toggleMainLoop(playing) {
this.functions.toggleMainLoop(playing);
}
getCoreOptions() {
return this.functions.getCoreOptions();
}
setVariable(option, value) {
this.functions.setVariable(option, value);
}
setCheat(index, enabled, code) {
this.functions.setCheat(index, enabled, code);
}
resetCheat() {
this.functions.resetCheat();
}
toggleShader(active) {
this.functions.toggleShader(active);
}
getDiskCount() {
return this.functions.getDiskCount();
}
getCurrentDisk() {
return this.functions.getCurrentDisk();
}
setCurrentDisk(disk) {
this.functions.setCurrentDisk(disk);
}
getSaveFilePath() {
return this.functions.getSaveFilePath();
}
saveSaveFiles() {
this.functions.saveSaveFiles();
this.FS.syncfs(false, () => {});
}
supportsStates() {
return !!this.functions.supportsStates();
}
getSaveFile() {
this.saveSaveFiles();
const exists = FS.analyzePath(this.getSaveFilePath()).exists;
return (exists ? FS.readFile(this.getSaveFilePath()) : null);
}
loadSaveFiles() {
this.clearEJSResetTimer();
this.functions.loadSaveFiles();
}
setFastForwardRatio(ratio) {
this.functions.setFastForwardRatio(ratio);
}
toggleFastForward(active) {
this.functions.toggleFastForward(active);
}
setSlowMotionRatio(ratio) {
this.functions.setSlowMotionRatio(ratio);
}
toggleSlowMotion(active) {
this.functions.toggleSlowMotion(active);
}
setRewindGranularity(value) {
this.functions.setRewindGranularity(value);
}
getFrameNum() {
return this.functions.getFrameNum();
}
}
window.EJS_GameManager = EJS_GameManager;

View File

@ -0,0 +1,11 @@
# Compression Libraries
<!-- ## Extract7z.js
## Extractzip.js -->
## Libunrar.js
Emscripten port of RARLab's open-source unrar library
Source: https://github.com/tnikolai2/libunrar-js

View File

@ -510,7 +510,7 @@ function ShowArcInfo(Flags) {
if (typeof process === 'object' && typeof require === 'function') { // NODE
module.exports = readRARContent
} else if (typeof define === 'function' && define.amd) { // AMD
define('readRARContent', [], function () { return readRARContent })
define('readRARContent', [], function() { return readRARContent })
} else if (typeof window === 'object') { // WEB
window['readRARContent'] = readRARContent
} else if (typeof importScripts === 'function') { // WORKER

3
data/cores/.npmignore Normal file
View File

@ -0,0 +1,3 @@
*
!README.md
!package.json

21
data/cores/README.md Normal file
View File

@ -0,0 +1,21 @@
# EmulatorJS Cores
This package contains the stable cores for EmulatorJS.
Lean more about EmulatorJS at https://emulatorjs.org
Cores are build using this repository:
https://github.com/EmulatorJS/build
## How to install
To install all cores, run the following command:
```bash
npm install @emulatorjs/cores
```
To install a specific core, run the following command:
```bash
npm install @emulatorjs/core-<core-name>
```

Binary file not shown.

Binary file not shown.

24
data/cores/core-README.md Normal file
View File

@ -0,0 +1,24 @@
# EmulatorJS Core: <!-- EJS_CORE_NAME -->
This package contains the stable EmulatorJS core: <!-- EJS_CORE_NAME -->
Lean more about EmulatorJS at https://emulatorjs.org
Core repository:
<!-- EJS_CORE_REPO -->
Core is build using this repository:
https://github.com/EmulatorJS/build
## How to install
To install core, run the following command:
```bash
npm install @emulatorjs/core-<!-- EJS_CORE_NAME -->
```
To install all cores, run the following command:
```bash
npm install @emulatorjs/cores
```

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

65
data/cores/package.json Normal file
View File

@ -0,0 +1,65 @@
{
"name": "@emulatorjs/cores",
"version": "4.2.3",
"type": "module",
"description": "EmulatorJS Cores",
"homepage": "https://emulatorjs.org",
"license": "GPL-3.0",
"repository": {
"type": "git",
"url": "https://github.com/EmulatorJS/EmulatorJS.git"
},
"bugs": {
"url": "https://github.com/EmulatorJS/EmulatorJS/issues"
},
"sideEffects": true,
"dependencies": {
"@emulatorjs/emulatorjs": "latest",
"@emulatorjs/core-81": "latest",
"@emulatorjs/core-mame2003": "latest",
"@emulatorjs/core-vice_x64": "latest",
"@emulatorjs/core-vice_x64sc": "latest",
"@emulatorjs/core-vice_x128": "latest",
"@emulatorjs/core-vice_xpet": "latest",
"@emulatorjs/core-vice_xplus4": "latest",
"@emulatorjs/core-vice_xvic": "latest",
"@emulatorjs/core-fceumm": "latest",
"@emulatorjs/core-nestopia": "latest",
"@emulatorjs/core-snes9x": "latest",
"@emulatorjs/core-gambatte": "latest",
"@emulatorjs/core-mgba": "latest",
"@emulatorjs/core-beetle_vb": "latest",
"@emulatorjs/core-mupen64plus_next": "latest",
"@emulatorjs/core-melonds": "latest",
"@emulatorjs/core-desmume2015": "latest",
"@emulatorjs/core-desmume": "latest",
"@emulatorjs/core-a5200": "latest",
"@emulatorjs/core-fbalpha2012_cps1": "latest",
"@emulatorjs/core-fbalpha2012_cps2": "latest",
"@emulatorjs/core-prosystem": "latest",
"@emulatorjs/core-stella2014": "latest",
"@emulatorjs/core-opera": "latest",
"@emulatorjs/core-genesis_plus_gx": "latest",
"@emulatorjs/core-yabause": "latest",
"@emulatorjs/core-handy": "latest",
"@emulatorjs/core-virtualjaguar": "latest",
"@emulatorjs/core-pcsx_rearmed": "latest",
"@emulatorjs/core-picodrive": "latest",
"@emulatorjs/core-fbneo": "latest",
"@emulatorjs/core-mednafen_psx_hw": "latest",
"@emulatorjs/core-mednafen_pce": "latest",
"@emulatorjs/core-mednafen_pcfx": "latest",
"@emulatorjs/core-mednafen_ngp": "latest",
"@emulatorjs/core-mednafen_wswan": "latest",
"@emulatorjs/core-gearcoleco": "latest",
"@emulatorjs/core-parallel_n64": "latest",
"@emulatorjs/core-mame2003_plus": "latest",
"@emulatorjs/core-puae": "latest",
"@emulatorjs/core-smsplus": "latest",
"@emulatorjs/core-fuse": "latest",
"@emulatorjs/core-cap32": "latest",
"@emulatorjs/core-crocods": "latest",
"@emulatorjs/core-prboom": "latest",
"@emulatorjs/core-ppsspp": "latest"
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,51 +1,82 @@
(async function() {
const folderPath = (path) => path.substring(0, path.length - path.split('/').pop().length);
const scripts = [
"emulator.js",
"nipplejs.js",
"shaders.js",
"storage.js",
"gamepad.js",
"GameManager.js",
"socket.io.min.js",
"compression.js"
];
const folderPath = (path) => path.substring(0, path.length - path.split("/").pop().length);
let scriptPath = (typeof window.EJS_pathtodata === "string") ? window.EJS_pathtodata : folderPath((new URL(document.currentScript.src)).pathname);
if (!scriptPath.endsWith('/')) scriptPath+='/';
if (!scriptPath.endsWith("/")) scriptPath += "/";
//console.log(scriptPath);
function loadScript(file) {
return new Promise(function (resolve, reject) {
let script = document.createElement('script');
return new Promise(function(resolve) {
let script = document.createElement("script");
script.src = function() {
if ('undefined' != typeof EJS_paths && typeof EJS_paths[file] === 'string') {
if ("undefined" != typeof EJS_paths && typeof EJS_paths[file] === "string") {
return EJS_paths[file];
} else if (file.endsWith("emulator.min.js")) {
return scriptPath + file;
} else {
return scriptPath+file;
return scriptPath + "src/" + file;
}
}();
script.onload = resolve;
script.onerror = () => {
filesmissing(file).then(e => resolve());
}
document.head.appendChild(script);
})
}
function loadStyle(file) {
return new Promise(function(resolve, reject) {
let css = document.createElement('link');
css.rel = 'stylesheet';
return new Promise(function(resolve) {
let css = document.createElement("link");
css.rel = "stylesheet";
css.href = function() {
if ('undefined' != typeof EJS_paths && typeof EJS_paths[file] === 'string') {
if ("undefined" != typeof EJS_paths && typeof EJS_paths[file] === "string") {
return EJS_paths[file];
} else {
return scriptPath+file;
return scriptPath + file;
}
}();
css.onload = resolve;
css.onerror = () => {
filesmissing(file).then(e => resolve());
}
document.head.appendChild(css);
})
}
if (('undefined' != typeof EJS_DEBUG_XX && true === EJS_DEBUG_XX)) {
await loadScript('emulator.js');
await loadScript('nipplejs.js');
await loadScript('shaders.js');
await loadScript('storage.js');
await loadScript('gamepad.js');
await loadScript('GameManager.js');
await loadScript('socket.io.min.js');
await loadStyle('emulator.css');
async function filesmissing(file) {
console.error("Failed to load " + file);
let minifiedFailed = file.includes(".min.") && !file.includes("socket");
console[minifiedFailed ? "warn" : "error"]("Failed to load " + file + " beacuse it's likly that the minified files are missing.\nTo fix this you have 3 options:\n1. You can download the zip from the latest release here: https://github.com/EmulatorJS/EmulatorJS/releases/latest - Stable\n2. You can download the zip from here: https://cdn.emulatorjs.org/latest/data/emulator.min.zip and extract it to the data/ folder. (easiest option) - Beta\n3. You can build the files by running `npm i && npm run build` in the data/minify folder. (hardest option) - Beta\nNote: you will probably need to do the same for the cores, extract them to the data/cores/ folder.");
if (minifiedFailed) {
console.log("Attempting to load non-minified files");
if (file === "emulator.min.js") {
for (let i = 0; i < scripts.length; i++) {
await loadScript(scripts[i]);
}
} else {
await loadStyle("emulator.css");
}
}
}
if (("undefined" != typeof EJS_DEBUG_XX && true === EJS_DEBUG_XX)) {
for (let i = 0; i < scripts.length; i++) {
await loadScript(scripts[i]);
}
await loadStyle("emulator.css");
} else {
await loadScript('emulator.min.js');
await loadStyle('emulator.min.css');
await loadScript("emulator.min.js");
await loadStyle("emulator.min.css");
}
const config = {};
config.gameUrl = window.EJS_gameUrl;
@ -73,6 +104,7 @@
config.gamePatchUrl = window.EJS_gamePatchUrl;
config.gameParentUrl = window.EJS_gameParentUrl;
config.netplayUrl = window.EJS_netplayServer;
config.netplayICEServers = window.EJS_netplayICEServers;
config.gameId = window.EJS_gameID;
config.backgroundImg = window.EJS_backgroundImage;
config.backgroundBlur = window.EJS_backgroundBlur;
@ -82,22 +114,77 @@
config.disableCue = window.EJS_disableCue;
config.startBtnName = window.EJS_startButtonName;
config.softLoad = window.EJS_softLoad;
if (typeof window.EJS_language === "string" && window.EJS_language !== "en-US") {
config.capture = window.EJS_screenCapture;
config.externalFiles = window.EJS_externalFiles;
config.dontExtractRom = window.EJS_dontExtractRom;
config.dontExtractBIOS = window.EJS_dontExtractBIOS;
config.disableDatabases = window.EJS_disableDatabases;
config.disableLocalStorage = window.EJS_disableLocalStorage;
config.forceLegacyCores = window.EJS_forceLegacyCores;
config.noAutoFocus = window.EJS_noAutoFocus;
config.videoRotation = window.EJS_videoRotation;
config.hideSettings = window.EJS_hideSettings;
config.browserMode = window.EJS_browserMode;
config.shaders = Object.assign({}, window.EJS_SHADERS, window.EJS_shaders ? window.EJS_shaders : {});
config.fixedSaveInterval = window.EJS_fixedSaveInterval;
config.disableAutoUnload = window.EJS_disableAutoUnload;
config.disableBatchBootup = window.EJS_disableBatchBootup;
let systemLang;
try {
systemLang = Intl.DateTimeFormat().resolvedOptions().locale;
} catch(e) {} //Ignore
const defaultLangs = ["en", "en-US"];
const isDefaultLang = (lang) => defaultLangs.includes(lang);
if ((typeof window.EJS_language === "string" && !isDefaultLang(window.EJS_language)) || (systemLang && window.EJS_disableAutoLang !== false)) {
const language = window.EJS_language || systemLang;
const autoLang = !window.EJS_language && typeof systemLang === "string";
try {
let path;
if ('undefined' != typeof EJS_paths && typeof EJS_paths[window.EJS_language] === 'string') {
path = EJS_paths[window.EJS_language];
let languagePath;
let fallbackPath = false;
console.log("Loading language", language);
if ("undefined" != typeof EJS_paths && typeof EJS_paths[language] === "string") {
languagePath = EJS_paths[language];
} else {
path = scriptPath+"localization/"+window.EJS_language+".json";
languagePath = scriptPath + "localization/" + language + ".json";
if (language.includes("-") || language.includes("_")) {
fallbackPath = scriptPath + "localization/" + language.split(/[-_]/)[0] + ".json";
}
}
config.language = language;
let langJson = {};
let missingLang = false;
if (!isDefaultLang(language)) {
if (autoLang) {
try {
let languageJson = await fetch(languagePath);
if (!languageJson.ok) throw new Error(`Missing language file: ${languageJson.status}`);
langJson = JSON.parse(await languageJson.text());
if (fallbackPath) {
let fallbackJson = await fetch(fallbackPath);
missingLang = !fallbackJson.ok;
if (!fallbackJson.ok) throw new Error(`Missing language file: ${fallbackJson.status}`);
langJson = { ...JSON.parse(await fallbackJson.text()), ...langJson };
}
} catch(e) {
config.language = language.split(/[-_]/)[0];
console.warn("Failed to load language:", language + ",", "trying default language:", config.language);
if (!missingLang) {
langJson = JSON.parse(await (await fetch(fallbackPath)).text());
}
}
} else {
langJson = JSON.parse(await (await fetch(languagePath)).text());
}
config.langJson = langJson;
}
config.language = window.EJS_language;
config.langJson = JSON.parse(await (await fetch(path)).text());
} catch(e) {
config.langJson = {};
console.log("Missing language:", language, "!!");
delete config.language;
delete config.langJson;
}
}
window.EJS_emulator = new EmulatorJS(EJS_player, config);
window.EJS_adBlocked = (url, del) => window.EJS_emulator.adBlocked(url, del);
if (typeof window.EJS_ready === "function") {
@ -107,9 +194,19 @@
window.EJS_emulator.on("start", window.EJS_onGameStart);
}
if (typeof window.EJS_onLoadState === "function") {
window.EJS_emulator.on("load", window.EJS_onLoadState);
window.EJS_emulator.on("loadState", window.EJS_onLoadState);
}
if (typeof window.EJS_onSaveState === "function") {
window.EJS_emulator.on("save", window.EJS_onSaveState);
window.EJS_emulator.on("saveState", window.EJS_onSaveState);
}
if (typeof window.EJS_onLoadSave === "function") {
window.EJS_emulator.on("loadSave", window.EJS_onLoadSave);
}
if (typeof window.EJS_onSaveSave === "function") {
window.EJS_emulator.on("saveSave", window.EJS_onSaveSave);
}
if (typeof window.EJS_onSaveUpdate === "function") {
window.EJS_emulator.on("saveUpdate", window.EJS_onSaveUpdate);
window.EJS_emulator.enableSaveUpdateEvent();
}
})();

View File

@ -0,0 +1,66 @@
# Localization
Supported languages
`en.json`: `en-US` - English (US)<br>
`pt.json`: `pt-BR` - Portuguese (Brazil)<br>
`es.json`: `es-419` - Spanish (Latin America)<br>
`el.json`: `el-GR` - Greek (Modern Greek)<br>
`ja.json`: `ja-JP` - Japanese (Japan)<br>
`zh.json`: `zh-CN` - Chinese (Simplified)<br>
`hi.json`: `hi-IN` - Hindi (India)<br>
`ar.json`: `ar-SA` - Arabic (Saudi Arabia)<br>
`jv.json`: `jv-ID` - Javanese (Indonesia)<br>
`bn.json`: `bn-BD` - Bengali (Bangladesh)<br>
`ru.json`: `ru-RU` - Russian (Russia)<br>
`de.json`: `de-DE` - German (Germany)<br>
`ko.json`: `ko-KR` - Korean (South Korea)<br>
`fr.json`: `fr-FR` - French (France)<br>
`it.json`: `it-IT` - Italian (Italy)<br>
`tr.json`: `tr-TR` - Turkish (Turkey)<br>
`fa.json`: `fa-AF` - Persian (Afghanistan)<br>
`ro.json`: `ro-RO` - Romanian (Romania)<br>
`vi.json`: `vi-VN` - Vietnamese (Vietnam)<br>
default: `en-US`
add the line to your code to use
```
EJS_language = ''; //language
```
If the language file is not found or there was an error fetching the file, the emulator will default to english.
## Credits
Translated for `es-419` originally by [@cesarcristianodeoliveira](https://github.com/cesarcristianodeoliveira) and updated by [@angelmarfil](https://github.com/angelmarfil) <br>
Translated for `el-GR` by [@imneckro](https://github.com/imneckro) <br>
Translated for `pt-BR` by [@zmarteline](https://github.com/zmarteline)<br>
Translated for `zh-CN` by [@eric183](https://github.com/eric183)<br>
Translated for `it-IT` by [@IvanMazzoli](https://github.com/IvanMazzoli) <br>
Translated for `tr-TR` by [@iGoodie](https://github.com/iGoodie) <br>
Translated for `fa-AF` by [@rezamohdev](https://github.com/rezamohdev) <br>
Translated for `fr-FR` by [@t3chnob0y](https://github.com/t3chnob0y) <br>
Translated for `ro-RO` by [@jurcaalexandrucristian](https://github.com/jurcaalexandrucristian) <br>
Translated for `ja-JP` by [@noel-forester](https://github.com/noel-forester) <br>
Translated for `vi-VN` by [@TimKieu](https://github.com/TimKieu) <br>
Translated for `hi-IN`, `ar-SA`, `jv-iD`, `bn-BD`, `ru-RU`, `de-DE`, `ko-KR` by [@allancoding](https://github.com/allancoding), using a translate application <br>
## Contributing
To contribute, please download the default `en-US.json` language file to use as a template, translate the strings and then submit the file with a Pull Request or Issue.
The EmulatorJS team will review and add your changes.
As of version `4.2.2` it will default to the system language.
The `retroarch.json` are all the setting names for the menu. You can set `EJS_settingsLanguage` to `true` to see the missing retroarch settings names for the current language. You can translate them and add the to the language file.
The control mapping translations for controllers are diffrent for each controller. They will need to be added to the language file if they are not in the default `en-US.json` file.
You can also use the [Translation Helper](https://emulatorjs.org/translate) tool to help you translate the file.
Please contribute!!
Enything that is incorrect or needs to be fix please perform a pull request!

View File

@ -1,347 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>EmulalorJS | Translate Languages</title>
<link rel="icon" type="image/png" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAb1BMVEVHcEwJNVMBkbwDi7cJNVMJNVMIN1UAlsIGZIcAlcEBs+kJNVMDn9EHVXYEc5kJNVMEgasFdZ0HUnMBk78EdZ0GfacFaIwHW3wINVMJNVMJNVMGYoUJNVMEeJ4JNVMDgakJNVMChwAAl8QCpNcCh7CQzQKfAAAAIXRSTlMAEvv+Py9y+L/2/Ev+q99H3s6R/u3+5r8hm82HYLpk+2GSUqJjAAAAgElEQVQY022PyQ6DMAxEHRM7KZCwdQG6ys3/f2MT1IMleLcZacZjgGOo6UjJpm/ruh3sJoy1XH03LmytgYAnBQbwItGfJVONg4gHP6U73FLWV3i8i5E+BuaXQ6Z1MbEYPAOxm8ZuXSiqCOZIKhGR/vkvjaU0oFPks7thu+mHz2l+F+sLcletMXIAAAAASUVORK5CYII=">
</head>
<body>
<center>
<h1>Translate Languages</h1>
<img style="width: 150px;" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPkAAADjCAMAAABw3EJfAAAAQlBMVEUCFicBFSQHM1EAAAAINFIAAAAINFIAAAAINVMFYogCd54AAAAAkb4BhbAGTXAHQGAINVMAruQAufEAl8QJNVMAAABDiqgaAAAAEnRSTlMAEDtHZm2Ur9Hi5ent7/Ly8vMp07OrAAALHElEQVR42u2di5qjKgyAC1oLFAWr8/6vup+1KCggeAXczJ49O05p/SchShLi43GqAAAgzPPiK6j/X55DCAB4pCoAwLwoEGr1whEqcpgcfweNeOsgCBUwGfqOuvURngQ99KQe6IscRI3N2w2CIoVfq23V7qODB7nFoXGOGO6EdH9VFeLcZvYwAXVzhAmhtP50X4PUn09dU0JwxSNn185uzjChtcSrkbquS6LFR3mc3B31ArSMTzX04U/4OTevCHWlHvFLzObsMXHzyl3ZU3g6hecIhuvP1VNlmK7EFpqvWAy+DqrcfCN2L5RM2MOb7hNDZ7tw/xSvuvmwbuknhs7wTti/Ga/4el4EhA6K47g17OF4OkXhfHfunp2Fp3Ygz3CO6ecYqRVfF4LaFZfOaP05TGqsOPmQwDk5kPt7javCsfhcUsNhhm4weQTC8OmHK3yu9usmO5AsHdHPOVKT0aFyePkUP+ZSZlK7ZPH51eDkc6bU1aXocDQ6VH9OFjKiFxeC49PBPx86fvzJV7cR/CSfbpnsp6JfDq5M9uIScPq5Sg5AB3BBxrUZx/Q6KZkUpVqWxRBDgTjnLW9tf6Q7t0u/lBOx/uGcI5TDQ1NhIYspag+2ZT4jYdeE8SBq7yDz1W3O25uIurq9g6XrV7eKxjlLUAxal8AZJiVNT0olRznM9dG5MUybVIWSara4HYJKVdmkLBRPojlwAKdN4jJEMPtbfXQb8KYhstLFyovdALxpsKR0McvJHcAbEdLgYDD2e6h8sHcOH4DfSeVNI5b1hZjmvLwJeVMJ8vxexj74OCTIq7uADxNduPb/5P/J/5OHueoiGFddgXxJb0ReYqkmlDPsDR8p+bQUtjtzcgPyEmsDa35hhbXkhJSOfw5cXU+F4ePJKXONcO5vRNjyaR5RtPjIsf3jaLLkeLJ9t9vLzNegx0ZO5J1McNjyKsHjNMlLbtizKRVakyTJK2PN55gYc1xobyTnFjmAnNjKgYYMET6B3FZ3ecStEbPWQQmtu8WVoiInC+XNhY/SoyKvFip8RRS1pYmR08Wav9zDvcdELowdLhac48TIq+VNDL8PZWmSFw7bSmha5Hy5lt0jXxIT+eI0Hyc6SYpcuHZwO/Lytjp3snaeJLm7h2t38XC2onIXcu14n+ldElx1grn7Ve03wpaCWCbHFZt/Me5KznXD3ePD8+4iLncyUji2InQ1ua1iGHqchCyO5KTSDYauTS5ECoLGRl5W+sHLKxaX9EvA5IT7fqq5Nh/HRI5dS9MNfS6W4vDBklsTCoZolFcKIlRyNaFQFLmaUNChS7sShhHcjO5MjnKdWC4wUDvAkRzrmiHKffZm2+0lU5dGQOnXVa0k32cDIHAjJ6aGAqMP46ZMw6SZmOT1cPjkYx5jbtWFpnGWtF1SM2LcqUGDJ8e2nabyXptuPqv9gq0jqtDJKbNusc29nf6AXgZOLlSOvK8aPimIEMnZUkIB+V5khxE0aPJycTt53q69oSdBk+PFeJtB6Xw5BVEFTV7ZZ7l5pjss3HnI5MKz5459qtw6q8DZRA+PXGyzgG7NXFq3djpgFqAL0No9QqyusRpdODpAnXskFG5InrTOb2jtDr7d38OJESH7duqRJne/quURXNUOvZNhQd/DLZfDQEM8Ol90DDjyFYupAwqKfMUyFLdCT5Wb+96KETzw9flCqSNAbi1iNHFZHEs0CnknFBZG0NAjkNaS5kIJQObdQ9q4Hb3QFkGHGW+vzAkFpEkoPGDROqQgWPhR50bu8weUjn2mJMvIbhwxKZ5xzy4VOrHcO+TaAY7ZJaI8iQP8UkWFJaEgIQ6PJlNGTDPJoWYUSTvZo4SU9GAOrCkIPh8xS6GnlEW29rbD8VQOEL46oeBUNBFwtYipTGZFCoKRuCqEKGaeq1H96pXjMrqqsFLH7pBQUCviypX1cKTSiTM50w53LoKkpJo+Zs1n4c4q4zbwCOpeaVl2T1okhLknFEg/wtaCIcKKX4cURGJ7Gu5b337fPQ30/54G2zxPk9wjBZHYfrX77tTDt92d6Z6CSG1HLl28ffXp3Brjzvt2KaHAmtTIiX21NqzUzui2kJsffHJEh43KFpQZwstubVWO66pyRD8ZYolHjXH1M7qqnN5JBxsTClLbfZoiOWXzuv5e4YORsbJJkVxqHNUlFL45CABhwZPvmDVPQSCkNElzBo+wMx6xfjRuDidnjHGH/9j+3RBt6KQ5mrwpXaXZX4wpCFY2x5NfK1q1ez5EJtJOt3TGznC5ylXG192Ylnh4ihJjmHh3do66lzctCenyCWsaWv/vYv6f/D/5ncjz+zxuSiFHN34eC7zZ04fokI0H3HexE7eUYxy3WHHXH7FI9S75rZQuYjtI3gNGbjTL+6RF0d7G3qkauB9SFIzcBVzkqfKxaDDpq/q4thcJC6kBESOpmjwl4+N7xvyc3F+NVZikJ/LDmpRNXjd57LvIVLh11Usc/Ebo8/2MN3nsvXY3I0yfHZla+kH1UUaJmTlHtlaGAOYFWhLpEnil8Elq1SqF2P22ab/heOOD689lMqZ1EXycJEGgU+6yqWZ3dGl77EXo5BJwFZ1eAY7ba8AVg+fkdO66ugxcRT97skslK+h0cLWN9Lno0sbVK8DVLZHsvMleY7cWOsei8/MtXi7OKq4CVxZ4/BS1ywrnxeNCkde2J6hdLo7i+eNSUda2jNRnKfwq32ZqdcDxcSZfK1VRF05xQzTnKJOvlSpAnocAPo3mHGHyNa3asCxdH8Tbm72myh78UBSuDeIxUtcHcYekcKF2rja3oPU+fq1yC6RdqfYcTRp7bDb6etpkRN3JEazJf4uQ6/3U3XIUJrc2bs1Xwtc1mXYWmT51JHj2tkXY09/VdI4d5AR3yFfwClM3+lpO9kbFbc7VcIaJVfk1JZhxfWbkEYtM/byS6Pg2uqG1EEpLUuKKGTuaFvARleT7JOlQAR7RifyErLWZbviIVOAGeLRHIuxaza8wex49tpSf9aNOAXugh8Vich6hbpdxQtQjPoCwe8qh2pa061TaPf4Qpgmt/gIAgEC0pei+u5g40wkQx4H6ssXjJurhnbUHJz/VHTS+WPtB8yGa177+5vLOxPFMfZn5OOgHGtQI3uKdgebg+LlAc7w/+Jyd5EurR+lHmf3FwIf8vZ384U3+B6YYu5K/VAEC6fm1ZJhlG3QOsuz5/nu/Xq/udzcaHug/6086gX7WvKXz6d68G9JjvMXh7iXSnJuTdx86vF7/4gnJfBZk47/X6bzX4RuIfxh+qnw73L+Kn2aq6p4GTQ4vmyv/pde5G/nfYeR/j9PJl3X+BHCLzgdTB1/zVg3+JJ33Nu+tc1n8yadgJj93pM4N4kO+QueT48BwbTtU54brze/UwSjB6xw8n68lctD7fzDjsuk221Xn7/11/jRfpU3Xc7Nvn+DtqPO//XW+D/nv1N+SQPn412j6v7fo/Clko86/79FdIJ6v5+uZWcmBfG/2PYfMw7f3qNn6+/b5LeoWndtvXc2Xbu1xH/LVvl17f75C53uSO+j89d6s8/frZ+yvbTp/D15dmC5QF6Gjb/9+XLZJ5w+wZa22u2+fuLcJkul6vkrn29bnu/v23cjH1egkJmNanz/FErGX13dFOZA/p2ETb51/3398n34BK5FnYmH76levw1pAnM779Xo+pDXCV57i+MrIhP4mJzN7Mv97OFNMxnI9Nzk/t+u5e0zGl9zzvt0ek9mTvLOuuYCvVX/NWCwRpG8nQ7LZbcMgw3GgxmEUozMckU9GrDSf8qpz9q18cP4+v+P/AIaTnnYxBPRwAAAAAElFTkSuQmCC">
</center>
<br>
<textarea id="box1" rows="39.5" cols="30"></textarea>
<textarea id="box2" placeholder="Copy what is on the left into google translate, then translate it into the language you whant and paste the translation here." rows="39.5" cols="50"></textarea>
<button onclick="startc()">Next</button>
<textarea id="box3" placeholder="Then click next and you are done copy this box in to a .json file" rows="39.5" cols="50"></textarea>
</body>
<script type="text/javascript">
var data = {
"0": "-0",
"1": "-1",
"2": "-2",
"3": "-3",
"4": "-4",
"5": "-5",
"6": "-6",
"7": "-7",
"8": "-8",
"9": "-9",
"Restart": "-Restart",
"Pause": "-Pause",
"Play": "-Play",
"Save State": "-Save State",
"Load State": "-Load State",
"Control Settings": "-Control Settings",
"Cheats": "-Cheats",
"Cache Manager": "-Cache Manager",
"Export Save File": "-Export Save File",
"Import Save File": "-Import Save File",
"Netplay": "-Netplay",
"Mute": "-Mute",
"Unmute": "-Unmute",
"Settings": "-Settings",
"Enter Fullscreen": "-Enter Fullscreen",
"Exit Fullscreen": "-Exit Fullscreen",
"Reset": "-Reset",
"Clear": "-Clear",
"Close": "-Close",
"QUICK SAVE STATE": "-QUICK SAVE STATE",
"QUICK LOAD STATE": "-QUICK LOAD STATE",
"CHANGE STATE SLOT": "-CHANGE STATE SLOT",
"FAST FORWARD": "-FAST FORWARD",
"Player": "-Player",
"Connected Gamepad": "-Connected Gamepad",
"Gamepad": "-Gamepad",
"Keyboard": "-Keyboard",
"Set": "-Set",
"Add Cheat": "-Add Cheat",
"Create a Room": "-Create a Room",
"Rooms": "-Rooms",
"Start Game": "-Start Game",
"Loading...": "-Loading...",
"Download Game Core": "-Download Game Core",
"Decompress Game Core": "-Decompress Game Core",
"Download Game Data": "-Download Game Data",
"Decompress Game Data": "-Decompress Game Data",
"Shaders": "-Shaders",
"Disabled": "-Disabled",
"2xScaleHQ": "-2xScaleHQ",
"4xScaleHQ": "-4xScaleHQ",
"CRT easymode": "-CRT easymode",
"CRT aperture": "-CRT aperture",
"CRT geom": "-CRT geom",
"CRT mattias": "-CRT mattias",
"FPS": "-FPS",
"show": "-show",
"hide": "-hide",
"Fast Forward Ratio": "-Fast Forward Ratio",
"Fast Forward": "-Fast Forward",
"Enabled": "-Enabled",
"Save State Slot": "-Save State Slot",
"Save State Location": "-Save State Location",
"Download": "-Download",
"Keep in Browser": "-Keep in Browser",
"Auto": "-Auto",
"NTSC": "-NTSC",
"PAL": "-PAL",
"Dendy": "-Dendy",
"8:7 PAR": "-8:7 PAR",
"4:3": "-4:3",
"Low": "-Low",
"High": "-High",
"Very High": "-Very High",
"None": "-None",
"Player 1": "-Player 1",
"Player 2": "-Player 2",
"Both": "-Both",
"SAVED STATE TO SLOT": "-SAVED STATE TO SLOT",
"LOADED STATE FROM SLOT": "-LOADED STATE FROM SLOT",
"SET SAVE STATE SLOT TO": "-SET SAVE STATE SLOT TO",
"Network Error": "-Network Error",
"Submit": "-Submit",
"Description": "-Description",
"Code": "-Code",
"Add Cheat Code": "-Add Cheat Code",
"Leave Room": "-Leave Room",
"Password": "-Password",
"Password (optional)": "-Password (optional)",
"Max Players": "-Max Players",
"Room Name": "-Room Name",
"Join": "-Join",
"Player Name": "-Player Name",
"Set Player Name": "-Set Player Name",
"Left Handed Mode": "-Left Handed Mode",
"Virtual Gamepad": "-Virtual Gamepad",
"Disk": "-Disk",
"Press Keyboard": "-Press Keyboard",
"INSERT COIN": "-INSERT COIN",
"Remove": "-Remove",
"SAVE LOADED FROM BROWSER": "-SAVE LOADED FROM BROWSER",
"SAVE SAVED TO BROWSER": "-SAVE SAVED TO BROWSER",
"Join the discord": "-Join the discord",
"View on GitHub": "-View on GitHub",
"Failed to start game": "-Failed to start game",
"Download Game BIOS": "-Download Game BIOS",
"Decompress Game BIOS": "-Decompress Game BIOS",
"Download Game Parent": "-Download Game Parent",
"Decompress Game Parent": "-Decompress Game Parent",
"Download Game Patch": "-Download Game Patch",
"Decompress Game Patch": "-Decompress Game Patch",
"Download Game State": "-Download Game State",
"Check console": "-Check console",
"Error for site owner": "-Error for site owner",
"EmulatorJS": "-EmulatorJS",
"Clear All": "-Clear All",
"Take Screenshot": "-Take Screenshot",
"Quick Save": "-Quick Save",
"Quick Load": "-Quick Load",
"REWIND": "-REWIND",
"Rewind Enabled (requires restart)": "-Rewind Enabled (requires restart)",
"Rewind Granularity": "-Rewind Granularity",
"Slow Motion Ratio": "-Slow Motion Ratio",
"Slow Motion": "-Slow Motion",
"Home": "-Home",
"EmulatorJS License": "-EmulatorJS License",
"RetroArch License": "-RetroArch License",
"SLOW MOTION": "-SLOW MOTION",
"A": "-A",
"B": "-B",
"SELECT": "-SELECT",
"START": "-START",
"UP": "-UP",
"DOWN": "-DOWN",
"LEFT": "-LEFT",
"RIGHT": "-RIGHT",
"X": "-X",
"Y": "-Y",
"L": "-L",
"R": "-R",
"Z": "-Z",
"STICK UP": "-STICK UP",
"STICK DOWN": "-STICK DOWN",
"STICK LEFT": "-STICK LEFT",
"STICK RIGHT": "-STICK RIGHT",
"C-PAD UP": "-C-PAD UP",
"C-PAD DOWN": "-C-PAD DOWN",
"C-PAD LEFT": "-C-PAD LEFT",
"C-PAD RIGHT": "-C-PAD RIGHT",
"MICROPHONE": "-MICROPHONE",
"BUTTON 1 / START": "-BUTTON 1 / START",
"BUTTON 2": "-BUTTON 2",
"BUTTON": "-BUTTON",
"LEFT D-PAD UP": "-LEFT D-PAD UP",
"LEFT D-PAD DOWN": "-LEFT D-PAD DOWN",
"LEFT D-PAD LEFT": "-LEFT D-PAD LEFT",
"LEFT D-PAD RIGHT": "-LEFT D-PAD RIGHT",
"RIGHT D-PAD UP": "-RIGHT D-PAD UP",
"RIGHT D-PAD DOWN": "-RIGHT D-PAD DOWN",
"RIGHT D-PAD LEFT": "-RIGHT D-PAD LEFT",
"RIGHT D-PAD RIGHT": "-RIGHT D-PAD RIGHT",
"C": "-C",
"MODE": "-MODE",
"FIRE": "-FIRE",
"RESET": "-RESET",
"LEFT DIFFICULTY A": "-LEFT DIFFICULTY A",
"LEFT DIFFICULTY B": "-LEFT DIFFICULTY B",
"RIGHT DIFFICULTY A": "-RIGHT DIFFICULTY A",
"RIGHT DIFFICULTY B": "-RIGHT DIFFICULTY B",
"COLOR": "-COLOR",
"B/W": "-B/W",
"PAUSE": "-PAUSE",
"OPTION": "-OPTION",
"OPTION 1": "-OPTION 1",
"OPTION 2": "-OPTION 2",
"L2": "-L2",
"R2": "-R2",
"L3": "-L3",
"R3": "-R3",
"L STICK UP": "-L STICK UP",
"L STICK DOWN": "-L STICK DOWN",
"L STICK LEFT": "-L STICK LEFT",
"L STICK RIGHT": "-L STICK RIGHT",
"R STICK UP": "-R STICK UP",
"R STICK DOWN": "-R STICK DOWN",
"R STICK LEFT": "-R STICK LEFT",
"R STICK RIGHT": "-R STICK RIGHT",
"Start": "-Start",
"Select": "-Select",
"Fast": "-Fast",
"Slow": "-Slow",
"a": "-a",
"b": "-b",
"c": "-c",
"d": "-d",
"e": "-e",
"f": "-f",
"g": "-g",
"h": "-h",
"i": "-i",
"j": "-j",
"k": "-k",
"l": "-l",
"m": "-m",
"n": "-n",
"o": "-o",
"p": "-p",
"q": "-q",
"r": "-r",
"s": "-s",
"t": "-t",
"u": "-u",
"v": "-v",
"w": "-w",
"x": "-x",
"y": "-y",
"z": "-z",
"enter": "-enter",
"escape": "-escape",
"space": "-space",
"tab": "-tab",
"backspace": "-backspace",
"delete": "-delete",
"arrowup": "-arrowup",
"arrowdown": "-arrowdown",
"arrowleft": "-arrowleft",
"arrowright": "-arrowright",
"f1": "-f1",
"f2": "-f2",
"f3": "-f3",
"f4": "-f4",
"f5": "-f5",
"f6": "-f6",
"f7": "-f7",
"f8": "-f8",
"f9": "-f9",
"f10": "-f10",
"f11": "-f11",
"f12": "-f12",
"shift": "-shift",
"control": "-control",
"alt": "-alt",
"meta": "-meta",
"capslock": "-capslock",
"insert": "-insert",
"home": "-home",
"end": "-end",
"pageup": "-pageup",
"pagedown": "-pagedown",
"!": "-!",
"@": "-@",
"#": "-#",
"$": "-$",
"%": "-%",
"^": "-^",
"&": "-&",
"*": "-*",
"(": "-(",
")": "-)",
"-": "--",
"_": "-_",
"+": "-+",
"=": "-=",
"[": "-[",
"]": "-]",
"{": "-{",
"}": "-}",
";": "-;",
":": "-:",
"'": "-'",
"\"": "-\"",
",": "-,",
".": "-.",
"<": "-<",
">": "->",
"/": "-/",
"?": "-?",
"LEFT_STICK_X": "-LEFT_STICK_X",
"LEFT_STICK_Y": "-LEFT_STICK_Y",
"RIGHT_STICK_X": "-RIGHT_STICK_X",
"RIGHT_STICK_Y": "-RIGHT_STICK_Y",
"LEFT_TRIGGER": "-LEFT_TRIGGER",
"RIGHT_TRIGGER": "-RIGHT_TRIGGER",
"A_BUTTON": "-A_BUTTON",
"B_BUTTON": "-B_BUTTON",
"X_BUTTON": "-X_BUTTON",
"Y_BUTTON": "-Y_BUTTON",
"START_BUTTON": "-START_BUTTON",
"SELECT_BUTTON": "-SELECT_BUTTON",
"L1_BUTTON": "-L1_BUTTON",
"R1_BUTTON": "-R1_BUTTON",
"L2_BUTTON": "-L2_BUTTON",
"R2_BUTTON": "-R2_BUTTON",
"LEFT_THUMB_BUTTON": "-LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "-RIGHT_THUMB_BUTTON",
"DPAD_UP": "-DPAD_UP",
"DPAD_DOWN": "-DPAD_DOWN",
"DPAD_LEFT": "-DPAD_LEFT",
"DPAD_RIGHT": "-DPAD_RIGHT"
}
let data1 = '';
for (let i = 0; i < Object.keys(data).length; i++) {
data1 = data1+Object.keys(data)[i]+'\n';
}
data1 = data1.slice(0, -1);
document.getElementById('box1').value = data1;
function startc(){
var data2 = document.getElementById('box1').value;
var data3 = document.getElementById('box2').value;
var data4 = data2.split('\n').map(function(line){ return line.split(/\n/g);});
var data5 = data3.split('\n').map(function(line){ return line.split(/\n/g);});
var data6 = new Map();
for (var i = 0; i < data4.length; i++) {
data6.set(data4[i], data5[i]);
}
var data7 = {};
data6.forEach(function(value, key) {
data7[key] = value[0];
});
data7 = JSON.stringify(data7,null,4);
document.getElementById('box3').value = data7;
navigator.clipboard.writeText(document.getElementById('box3').value);
console.log(data7);
}
</script>
</html>

View File

@ -1,301 +0,0 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Redémarrage",
"Pause": "Pause",
"Play": "Jouer",
"Save State": "Enregistrer l'état",
"Load State": "État de chargement",
"Control Settings": "Paramètres de contrôle",
"Cheats": "Astuces",
"Cache Manager": "Gestionnaire de cache",
"Export Save File": "Exporter le fichier de sauvegarde",
"Import Save File": "Importer le fichier de sauvegarde",
"Netplay": "Jeu en réseau",
"Mute": "Muet",
"Unmute": "Rétablir le son",
"Settings": "Paramètres",
"Enter Fullscreen": "Passer en mode plein écran",
"Exit Fullscreen": "Quitter le mode plein écran",
"Reset": "Réinitialiser",
"Clear": "Clair",
"Close": "Fermer",
"QUICK SAVE STATE": "ÉTAT DE SAUVEGARDE RAPIDE",
"QUICK LOAD STATE": "ÉTAT DE CHARGEMENT RAPIDE",
"CHANGE STATE SLOT": "CHANGER L'EMPLACEMENT D'ÉTAT",
"FAST FORWARD": "AVANCE RAPIDE",
"Player": "Joueur",
"Connected Gamepad": "Manette connectée",
"Gamepad": "Manette de jeu",
"Keyboard": "Clavier",
"Set": "Ensemble",
"Add Cheat": "Ajouter une triche",
"Create a Room": "Créer une pièce",
"Rooms": "Pièces",
"Start Game": "Démarrer jeu",
"Loading...": "Chargement...",
"Download Game Core": "Télécharger le noyau du jeu",
"Decompress Game Core": "Décompresser le noyau du jeu",
"Download Game Data": "Télécharger les données du jeu",
"Decompress Game Data": "Décompresser les données de jeu",
"Shaders": "Shaders",
"Disabled": "Désactivé",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "Mode facile CRT",
"CRT aperture": "Ouverture CRT",
"CRT geom": "géomètre CRT",
"CRT mattias": "Mattias CRT",
"FPS": "FPS",
"show": "montrer",
"hide": "cacher",
"Fast Forward Ratio": "Rapport d'avance rapide",
"Fast Forward": "Avance rapide",
"Enabled": "Activé",
"Save State Slot": "Enregistrer l'emplacement d'état",
"Save State Location": "Enregistrer l'emplacement de l'état",
"Download": "Télécharger",
"Keep in Browser": "Conserver dans le navigateur",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "COPAIN",
"Dendy": "Dendy",
"8:7 PAR": "PAR 8:7",
"4:3": "4:3",
"Low": "Faible",
"High": "Haut",
"Very High": "Très haut",
"None": "Aucun",
"Player 1": "Joueur 1",
"Player 2": "Joueur 2",
"Both": "Les deux",
"SAVED STATE TO SLOT": "ÉTAT SAUVEGARDÉ DANS L'EMPLACEMENT",
"LOADED STATE FROM SLOT": "ÉTAT CHARGÉ À PARTIR DE L'EMPLACEMENT",
"SET SAVE STATE SLOT TO": "SET SAVE STATE SLOT TO",
"Network Error": "Erreur réseau",
"Submit": "Soumettre",
"Description": "Description",
"Code": "Code",
"Add Cheat Code": "Ajouter un code de triche",
"Leave Room": "Quitter la pièce",
"Password": "Mot de passe",
"Password (optional)": "Mot de passe (facultatif)",
"Max Players": "Le maximum de joueurs",
"Room Name": "Nom de la salle",
"Join": "Rejoindre",
"Player Name": "Nom de joueur",
"Set Player Name": "Définir le nom du joueur",
"Left Handed Mode": "Mode gaucher",
"Virtual Gamepad": "Manette de jeu virtuelle",
"Disk": "Disque",
"Press Keyboard": "Appuyez sur le clavier",
"INSERT COIN": "INSÉRER UNE PIÈCE",
"Remove": "Retirer",
"SAVE LOADED FROM BROWSER": "ENREGISTRER CHARGÉ À PARTIR DU NAVIGATEUR",
"SAVE SAVED TO BROWSER": "ENREGISTRER ENREGISTRÉ DANS LE NAVIGATEUR",
"Join the discord": "Rejoignez la discorde",
"View on GitHub": "Afficher sur GitHub",
"Failed to start game": "Impossible de démarrer le jeu",
"Download Game BIOS": "Télécharger le BIOS du jeu",
"Decompress Game BIOS": "Décompresser le BIOS du jeu",
"Download Game Parent": "Télécharger le jeu Parent",
"Decompress Game Parent": "Décompresser le jeu parent",
"Download Game Patch": "Télécharger le patch du jeu",
"Decompress Game Patch": "Décompresser le patch du jeu",
"Download Game State": "Télécharger l'état du jeu",
"Check console": "Vérifier la console",
"Error for site owner": "Erreur pour le propriétaire du site",
"EmulatorJS": "EmulatorJS",
"Clear All": "Tout effacer",
"Take Screenshot": "Prendre une capture d'écran",
"Quick Save": "Sauvegarde rapide",
"Quick Load": "Chargement rapide",
"REWIND": "REMBOBINER",
"Rewind Enabled (requires restart)": "Rewind activé (nécessite un redémarrage)",
"Rewind Granularity": "Rembobiner la granularité",
"Slow Motion Ratio": "Rapport de ralenti",
"Slow Motion": "Ralenti",
"Home": "Maison",
"EmulatorJS License": "Licence EmulatorJS",
"RetroArch License": "Licence RetroArch",
"SLOW MOTION": "RALENTI",
"A": "UN",
"B": "B",
"SELECT": "SÉLECTIONNER",
"START": "COMMENCER",
"UP": "EN HAUT",
"DOWN": "VERS LE BAS",
"LEFT": "GAUCHE",
"RIGHT": "DROITE",
"X": "X",
"Y": "Oui",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "BÂTON VERS LE HAUT",
"STICK DOWN": "COLLER",
"STICK LEFT": "BÂTON GAUCHE",
"STICK RIGHT": "COLLEZ À DROITE",
"C-PAD UP": "C-PAD VERS LE HAUT",
"C-PAD DOWN": "C-PAD EN BAS",
"C-PAD LEFT": "C-PAD GAUCHE",
"C-PAD RIGHT": "C-PAD DROIT",
"MICROPHONE": "MICROPHONE",
"BUTTON 1 / START": "BOUTON 1 / DÉMARRER",
"BUTTON 2": "BOUTON 2",
"BUTTON": "BOUTON",
"LEFT D-PAD UP": "D-PAD GAUCHE HAUT",
"LEFT D-PAD DOWN": "D-PAD GAUCHE BAS",
"LEFT D-PAD LEFT": "D-PAD GAUCHE GAUCHE",
"LEFT D-PAD RIGHT": "D-PAD GAUCHE DROITE",
"RIGHT D-PAD UP": "D-PAD DROIT VERS LE HAUT",
"RIGHT D-PAD DOWN": "D-PAD DROIT BAS",
"RIGHT D-PAD LEFT": "D-PAD DROIT GAUCHE",
"RIGHT D-PAD RIGHT": "DROITE D-PAD DROITE",
"C": "C",
"MODE": "MODE",
"FIRE": "FEU",
"RESET": "RÉINITIALISER",
"LEFT DIFFICULTY A": "GAUCHE DIFFICULTÉ A",
"LEFT DIFFICULTY B": "GAUCHE DIFFICULTÉ B",
"RIGHT DIFFICULTY A": "BONNE DIFFICULTÉ A",
"RIGHT DIFFICULTY B": "DROITE DIFFICULTE B",
"COLOR": "COULEUR",
"B/W": "N/B",
"PAUSE": "PAUSE",
"OPTION": "OPTION",
"OPTION 1": "OPTION 1",
"OPTION 2": "OPTION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L BÂTON VERS LE HAUT",
"L STICK DOWN": "L BÂTON VERS LE BAS",
"L STICK LEFT": "BÂTON L GAUCHE",
"L STICK RIGHT": "L BÂTON DROIT",
"R STICK UP": "R STICK UP",
"R STICK DOWN": "BÂTON R ENFONCÉ",
"R STICK LEFT": "R STICK GAUCHE",
"R STICK RIGHT": "BÂTON R DROIT",
"Start": "Commencer",
"Select": "Sélectionner",
"Fast": "Rapide",
"Slow": "Lent",
"a": "un",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "F",
"g": "g",
"h": "h",
"i": "je",
"j": "j",
"k": "k",
"l": "je",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "tu",
"v": "v",
"w": "w",
"x": "X",
"y": "y",
"z": "z",
"enter": "entrer",
"escape": "s'échapper",
"space": "espace",
"tab": "languette",
"backspace": "retour arrière",
"delete": "supprimer",
"arrowup": "flèche vers le haut",
"arrowdown": "flèche vers le bas",
"arrowleft": "flèche gauche",
"arrowright": "flèche droite",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "changement",
"control": "contrôle",
"alt": "autre",
"meta": "méta",
"capslock": "verrouillage des majuscules",
"insert": "insérer",
"home": "maison",
"end": "fin",
"pageup": "pageup",
"pagedown": "bas de page",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "GÂCHETTE GAUCHE",
"RIGHT_TRIGGER": "RIGHT_TRIGGER",
"A_BUTTON": "UN BOUTON",
"B_BUTTON": "B_BUTTON",
"X_BUTTON": "X_BUTTON",
"Y_BUTTON": "Y_BUTTON",
"START_BUTTON": "BOUTON START",
"SELECT_BUTTON": "SELECT_BUTTON",
"L1_BUTTON": "L1_BUTTON",
"R1_BUTTON": "R1_BUTTON",
"L2_BUTTON": "L2_BUTTON",
"R2_BUTTON": "R2_BUTTON",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}

View File

@ -99,8 +99,8 @@
"Press Keyboard": "اضغط على لوحة المفاتيح",
"INSERT COIN": "إدراج عملة",
"Remove": "يزيل",
"SAVE LOADED FROM BROWSER": "وفر محملًا من المتصفح",
"SAVE SAVED TO BROWSER": "تم الحفظ في المتصفح",
"LOADED STATE FROM BROWSER": "حالة تحميل من المتصفح",
"SAVED STATE TO BROWSER": "الحالة المحفوظة في المتصفح",
"Join the discord": "انضم إلى الفتنة",
"View on GitHub": "عرض على جيثب",
"Failed to start game": "فشل بدء اللعبة",
@ -298,4 +298,4 @@
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}
}

View File

@ -99,8 +99,8 @@
"Press Keyboard": "কীবোর্ড টিপুন",
"INSERT COIN": "মুদ্রা প্রবেশ করান",
"Remove": "অপসারণ",
"SAVE LOADED FROM BROWSER": "ব্রাউজার থেকে লোড সংরক্ষণ করুন",
"SAVE SAVED TO BROWSER": "ব্রাউজারে সংরক্ষণ করুন",
"LOADED STATE FROM BROWSER": "ব্রাউজার থেকে লোড করা অবস্থা",
"SAVED STATE TO BROWSER": "রাষ্ট্র ব্রাউজারে সংরক্ষিত হয়",
"Join the discord": "বিরোধে যোগ দিন",
"View on GitHub": "GitHub এ দেখুন",
"Failed to start game": "খেলা শুরু করতে ব্যর্থ",
@ -298,4 +298,4 @@
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}
}

View File

@ -9,40 +9,40 @@
"7": "7",
"8": "8",
"9": "9",
"Restart": "Neu starten",
"Restart": "Neustart",
"Pause": "Pause",
"Play": "Spielen",
"Save State": "Sicherer Staat",
"Load State": "Ladezustand",
"Control Settings": "Kontrolleinstellungen",
"Cheats": "Betrüger",
"Save State": "Zustand speichern",
"Load State": "Zustand laden",
"Control Settings": "Steuerung",
"Cheats": "Cheats",
"Cache Manager": "Cache-Manager",
"Export Save File": "Speichern Sie die Datei exportieren",
"Import Save File": "Speicherdatei importieren",
"Netplay": "Spiel am Netz",
"Export Save File": "Speicherstand exportieren",
"Import Save File": "Speicherstand importieren",
"Netplay": "Onlinespiel",
"Mute": "Stumm",
"Unmute": "Stummschaltung aufheben",
"Settings": "Einstellungen",
"Enter Fullscreen": "Vollbildmodus aktivieren",
"Exit Fullscreen": "Beenden Sie den Vollbildmodus",
"Exit Fullscreen": "Vollbildmodus verlassen",
"Reset": "Zurücksetzen",
"Clear": "Klar",
"Clear": "Löschen",
"Close": "Schließen",
"QUICK SAVE STATE": "SCHNELLER SPEICHERENZUSTAND",
"QUICK LOAD STATE": "SCHNELLER LADEZUSTAND",
"QUICK SAVE STATE": "SCHNELLSPEICHERN",
"QUICK LOAD STATE": "SCHNELLLADEN",
"CHANGE STATE SLOT": "STATUS-SLOT ÄNDERN",
"FAST FORWARD": "SCHNELLER VORLAUF",
"FAST FORWARD": "VORSPULEN",
"Player": "Spieler",
"Connected Gamepad": "Verbundenes Gamepad",
"Gamepad": "Gamepad",
"Keyboard": "Tastatur",
"Set": "Satz",
"Set": "Setzen",
"Add Cheat": "Cheat hinzufügen",
"Create a Room": "Erstellen Sie einen Raum",
"Create a Room": "Raum erstellen",
"Rooms": "Räume",
"Start Game": "Spiel beginnen",
"Loading...": "Wird geladen...",
"Download Game Core": "Laden Sie Game Core herunter",
"Download Game Core": "Game Core herunterladen",
"Decompress Game Core": "Game Core entpacken",
"Download Game Data": "Spieldaten herunterladen",
"Decompress Game Data": "Spieldaten entpacken",
@ -57,16 +57,16 @@
"FPS": "FPS",
"show": "zeigen",
"hide": "verstecken",
"Fast Forward Ratio": "Schnellvorlaufverhältnis",
"Fast Forward": "Schneller Vorlauf",
"Enabled": "Ermöglicht",
"Save State Slot": "Status-Slot speichern",
"Save State Location": "Bundeslandstandort speichern",
"Fast Forward Ratio": "Vorspulgeschwindigkeit",
"Fast Forward": "Vorspulen",
"Enabled": "Aktiviert",
"Save State Slot": "Speicherplatz",
"Save State Location": "Speicherort",
"Download": "Herunterladen",
"Keep in Browser": "Im Browser behalten",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "KUMPEL",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
@ -77,59 +77,59 @@
"Player 1": "Spieler 1",
"Player 2": "Spieler 2",
"Both": "Beide",
"SAVED STATE TO SLOT": "STATUS FÜR SLOT GESPEICHERT",
"LOADED STATE FROM SLOT": "GELADENER STATUS VON SLOT",
"SET SAVE STATE SLOT TO": "SAVE STATE SLOT EINSTELLEN AUF",
"SAVED STATE TO SLOT": "STATUS IN SLOT SPEICHERN",
"LOADED STATE FROM SLOT": "STATUS VON SLOT GELADEN",
"SET SAVE STATE SLOT TO": "SPEICHERPLATZ ÄNDERN",
"Network Error": "Netzwerkfehler",
"Submit": "Einreichen",
"Submit": "Abschicken",
"Description": "Beschreibung",
"Code": "Code",
"Add Cheat Code": "Cheat-Code hinzufügen",
"Leave Room": "Zimmer verlassen",
"Leave Room": "Raum verlassen",
"Password": "Passwort",
"Password (optional)": "Passwort (optional)",
"Max Players": "Maximale Spieleranzahl",
"Room Name": "Raumname",
"Join": "Verbinden",
"Join": "Beitreten",
"Player Name": "Spielername",
"Set Player Name": "Legen Sie den Spielernamen fest",
"Set Player Name": "Spielernamen festlegen",
"Left Handed Mode": "Linkshänder-Modus",
"Virtual Gamepad": "Virtuelles Gamepad",
"Disk": "Scheibe",
"Press Keyboard": "Drücken Sie Tastatur",
"Press Keyboard": "Taste drücken",
"INSERT COIN": "MÜNZE EINWERFEN",
"Remove": "Entfernen",
"SAVE LOADED FROM BROWSER": "SPEICHERN VOM BROWSER GELADEN",
"SAVE SAVED TO BROWSER": "SPEICHERN IM BROWSER GESPEICHERT",
"LOADED STATE FROM BROWSER": "GELADENER STATUS VOM BROWSER",
"SAVED STATE TO BROWSER": "STATUS IM BROWSER GESPEICHERT",
"Join the discord": "Treten Sie dem Discord bei",
"View on GitHub": "Auf GitHub ansehen",
"Failed to start game": "Das Spiel konnte nicht gestartet werden",
"Download Game BIOS": "Laden Sie das Spiel-BIOS herunter",
"Decompress Game BIOS": "Dekomprimieren Sie das Spiel-BIOS",
"Download Game Parent": "Laden Sie Game Parent herunter",
"Decompress Game Parent": "Dekomprimieren Sie das übergeordnete Spiel",
"Download Game Patch": "Laden Sie den Spiel-Patch herunter",
"Decompress Game Patch": "Dekomprimieren Sie den Spiel-Patch",
"Download Game BIOS": "Spiel-BIOS herunterladen",
"Decompress Game BIOS": "Spiel-BIOS entpacken",
"Download Game Parent": "Game Parent herunterladen",
"Decompress Game Parent": "Game Parent entpacken",
"Download Game Patch": "Spiel-Patch herunterladen",
"Decompress Game Patch": "Spiel-Patch entpacken",
"Download Game State": "Spielstatus herunterladen",
"Check console": "Überprüfen Sie die Konsole",
"Error for site owner": "Fehler für Websitebesitzer",
"EmulatorJS": "EmulatorJS",
"Clear All": "Alles löschen",
"Take Screenshot": "Einen Screenshot machen",
"Take Screenshot": "Screenshot aufnehmen",
"Quick Save": "Schnellspeichern",
"Quick Load": "Schnell laden",
"REWIND": "ZURÜCKSPULEN",
"Rewind Enabled (requires restart)": "Rücklauf aktiviert (Neustart erforderlich)",
"Rewind Granularity": "Granularität zurückspulen",
"Slow Motion Ratio": "Zeitlupenverhältnis",
"Rewind Enabled (requires restart)": "Zurückspulen aktiviert (Neustart erforderlich)",
"Rewind Granularity": "Zurückspulgeschwindigkeit",
"Slow Motion Ratio": "Zeitlupengeschwindigkeit",
"Slow Motion": "Zeitlupe",
"Home": "Heim",
"Home": "Zurück",
"EmulatorJS License": "EmulatorJS-Lizenz",
"RetroArch License": "RetroArch-Lizenz",
"SLOW MOTION": "ZEITLUPE",
"A": "A",
"B": "B",
"SELECT": "WÄHLEN",
"SELECT": "SELECT",
"START": "START",
"UP": "HOCH",
"DOWN": "RUNTER",
@ -140,12 +140,12 @@
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "Bleiben Sie dran",
"STICK DOWN": "HALTE DICH",
"STICK LEFT": "LINKS STEHEN",
"STICK RIGHT": "HALTEN SIE SICH NACH RECHTS",
"C-PAD UP": "C-PAD nach oben",
"C-PAD DOWN": "C-PAD NACH UNTEN",
"STICK UP": "STICK NACH OBEN",
"STICK DOWN": "STICK NOCH UNTEN",
"STICK LEFT": "STICK LINKS",
"STICK RIGHT": "STICK RECHTS",
"C-PAD UP": "C-PAD HOCH",
"C-PAD DOWN": "C-PAD RUNTER",
"C-PAD LEFT": "C-PAD LINKS",
"C-PAD RIGHT": "C-PAD RECHTS",
"MICROPHONE": "MIKROFON",
@ -171,83 +171,83 @@
"COLOR": "FARBE",
"B/W": "S/W",
"PAUSE": "PAUSE",
"OPTION": "MÖGLICHKEIT",
"OPTION": "EINSTELLUNGEN",
"OPTION 1": "OPTION 1",
"OPTION 2": "OPTION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L BLEIB DURCH",
"L STICK DOWN": "L HALTE DICH",
"L STICK UP": "L STICK NACH OBEN",
"L STICK DOWN": "L STICK NACH UNTEN",
"L STICK LEFT": "L STICK LINKS",
"L STICK RIGHT": "L HALTE NACH RECHTS",
"R STICK UP": "R HALTEN SIE SICH AUF",
"R STICK DOWN": "R HALTEN SIE SICH NACH UNTEN",
"L STICK RIGHT": "L STICK RECHTS",
"R STICK UP": "R STICK NACH OBEN",
"R STICK DOWN": "R STICK NACH UNTEN",
"R STICK LEFT": "R STICK LINKS",
"R STICK RIGHT": "R STICK NACH RECHTS",
"R STICK RIGHT": "R STICK RECHTS",
"Start": "Start",
"Select": "Wählen",
"Select": "Select",
"Fast": "Schnell",
"Slow": "Langsam",
"a": "A",
"b": "B",
"c": "C",
"d": "D",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "F",
"g": "G",
"h": "H",
"i": "ich",
"g": "g",
"h": "h",
"i": "i",
"j": "J",
"k": "k",
"l": "l",
"m": "M",
"n": "N",
"o": "Ö",
"p": "P",
"q": "Q",
"r": "R",
"s": "S",
"t": "T",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "X",
"y": "j",
"x": "x",
"y": "y",
"z": "z",
"enter": "eingeben",
"escape": "Flucht",
"space": "Raum",
"enter": "ENTER",
"escape": "ESC",
"space": "Leertaste",
"tab": "Tab",
"backspace": "Rücktaste",
"delete": "löschen",
"delete": "ENTF",
"arrowup": "Pfeil nach oben",
"arrowdown": "Pfeil nach unten",
"arrowleft": "Pfeil nach links",
"arrowright": "Pfeil nach rechts",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "Schicht",
"control": "Kontrolle",
"f1": "F1",
"f2": "F2",
"f3": "F3",
"f4": "F4",
"f5": "F5",
"f6": "F6",
"f7": "F7",
"f8": "F8",
"f9": "F9",
"f10": "F10",
"f11": "F11",
"f12": "F12",
"shift": "Shift",
"control": "strg",
"alt": "alt",
"meta": "Meta",
"capslock": "Feststelltaste",
"insert": "einfügen",
"home": "heim",
"end": "Ende",
"pageup": "Seite nach oben",
"pagedown": "Bild nach unten",
"capslock": "capslock",
"insert": "einf",
"home": "pos1",
"end": "ende",
"pageup": "bild hoch",
"pagedown": "bild runter",
"!": "!",
"@": "@",
"#": "#",
@ -282,15 +282,15 @@
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "LINKER TRIGGER",
"RIGHT_TRIGGER": "RIGHT_TRIGGER",
"A_BUTTON": "EIN KNOPF",
"A_BUTTON": "A_BUTTON",
"B_BUTTON": "B_BUTTON",
"X_BUTTON": "X_BUTTON",
"Y_BUTTON": "Y_BUTTON",
"START_BUTTON": "START KNOPF",
"SELECT_BUTTON": "AUSWAHLKNOPF",
"L1_BUTTON": "L1_TASTE",
"START_BUTTON": "START",
"SELECT_BUTTON": "SELECT",
"L1_BUTTON": "L1_BUTTON",
"R1_BUTTON": "R1_BUTTON",
"L2_BUTTON": "L2_TASTE",
"L2_BUTTON": "L2_BUTTON",
"R2_BUTTON": "R2_BUTTON",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
@ -298,4 +298,4 @@
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}
}

View File

@ -99,8 +99,8 @@
"Press Keyboard": "Πατήστε Πληκτρολόγιο",
"INSERT COIN": "ΕΙΣΑΓΕΤΕ ΝΟΜΙΣΜΑ",
"Remove": "Αφαιρώ",
"SAVE LOADED FROM BROWSER": "ΑΠΟΘΗΚΕΥΣΗ ΦΟΡΤΩΜΕΝΟΥ ΑΠΟ ΤΟ BROWSER",
"SAVE SAVED TO BROWSER": "ΑΠΟΘΗΚΕΥΣΗ ΑΠΟΘΗΚΕΥΤΗΚΕ ΣΤΟ BROWSER",
"LOADED STATE FROM BROWSER": "ΦΟΡΤΩΘΗΚΕ ΚΑΤΑΣΤΑΣΗ ΑΠΟ ΤΟ BROWSER",
"SAVED STATE TO BROWSER": "ΑΠΟΘΗΚΕΥΤΗΚΕ ΚΑΤΑΣΤΑΣΗ ΣΤΟ BROWSER",
"Join the discord": "Συμμετάσχετε στη διχόνοια",
"View on GitHub": "Προβολή στο GitHub",
"Failed to start game": "Απέτυχε η έναρξη του παιχνιδιού",
@ -298,4 +298,4 @@
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}
}

View File

@ -1,301 +1,339 @@
{
"0": "-0",
"1": "-1",
"2": "-2",
"3": "-3",
"4": "-4",
"5": "-5",
"6": "-6",
"7": "-7",
"8": "-8",
"9": "-9",
"Restart": "-Restart",
"Pause": "-Pause",
"Play": "-Play",
"Save State": "-Save State",
"Load State": "-Load State",
"Control Settings": "-Control Settings",
"Cheats": "-Cheats",
"Cache Manager": "-Cache Manager",
"Export Save File": "-Export Save File",
"Import Save File": "-Import Save File",
"Netplay": "-Netplay",
"Mute": "-Mute",
"Unmute": "-Unmute",
"Settings": "-Settings",
"Enter Fullscreen": "-Enter Fullscreen",
"Exit Fullscreen": "-Exit Fullscreen",
"Reset": "-Reset",
"Clear": "-Clear",
"Close": "-Close",
"QUICK SAVE STATE": "-QUICK SAVE STATE",
"QUICK LOAD STATE": "-QUICK LOAD STATE",
"CHANGE STATE SLOT": "-CHANGE STATE SLOT",
"FAST FORWARD": "-FAST FORWARD",
"Player": "-Player",
"Connected Gamepad": "-Connected Gamepad",
"Gamepad": "-Gamepad",
"Keyboard": "-Keyboard",
"Set": "-Set",
"Add Cheat": "-Add Cheat",
"Create a Room": "-Create a Room",
"Rooms": "-Rooms",
"Start Game": "-Start Game",
"Loading...": "-Loading...",
"Download Game Core": "-Download Game Core",
"Decompress Game Core": "-Decompress Game Core",
"Download Game Data": "-Download Game Data",
"Decompress Game Data": "-Decompress Game Data",
"Shaders": "-Shaders",
"Disabled": "-Disabled",
"2xScaleHQ": "-2xScaleHQ",
"4xScaleHQ": "-4xScaleHQ",
"CRT easymode": "-CRT easymode",
"CRT aperture": "-CRT aperture",
"CRT geom": "-CRT geom",
"CRT mattias": "-CRT mattias",
"FPS": "-FPS",
"show": "-show",
"hide": "-hide",
"Fast Forward Ratio": "-Fast Forward Ratio",
"Fast Forward": "-Fast Forward",
"Enabled": "-Enabled",
"Save State Slot": "-Save State Slot",
"Save State Location": "-Save State Location",
"Download": "-Download",
"Keep in Browser": "-Keep in Browser",
"Auto": "-Auto",
"NTSC": "-NTSC",
"PAL": "-PAL",
"Dendy": "-Dendy",
"8:7 PAR": "-8:7 PAR",
"4:3": "-4:3",
"Low": "-Low",
"High": "-High",
"Very High": "-Very High",
"None": "-None",
"Player 1": "-Player 1",
"Player 2": "-Player 2",
"Both": "-Both",
"SAVED STATE TO SLOT": "-SAVED STATE TO SLOT",
"LOADED STATE FROM SLOT": "-LOADED STATE FROM SLOT",
"SET SAVE STATE SLOT TO": "-SET SAVE STATE SLOT TO",
"Network Error": "-Network Error",
"Submit": "-Submit",
"Description": "-Description",
"Code": "-Code",
"Add Cheat Code": "-Add Cheat Code",
"Leave Room": "-Leave Room",
"Password": "-Password",
"Password (optional)": "-Password (optional)",
"Max Players": "-Max Players",
"Room Name": "-Room Name",
"Join": "-Join",
"Player Name": "-Player Name",
"Set Player Name": "-Set Player Name",
"Left Handed Mode": "-Left Handed Mode",
"Virtual Gamepad": "-Virtual Gamepad",
"Disk": "-Disk",
"Press Keyboard": "-Press Keyboard",
"INSERT COIN": "-INSERT COIN",
"Remove": "-Remove",
"SAVE LOADED FROM BROWSER": "-SAVE LOADED FROM BROWSER",
"SAVE SAVED TO BROWSER": "-SAVE SAVED TO BROWSER",
"Join the discord": "-Join the discord",
"View on GitHub": "-View on GitHub",
"Failed to start game": "-Failed to start game",
"Download Game BIOS": "-Download Game BIOS",
"Decompress Game BIOS": "-Decompress Game BIOS",
"Download Game Parent": "-Download Game Parent",
"Decompress Game Parent": "-Decompress Game Parent",
"Download Game Patch": "-Download Game Patch",
"Decompress Game Patch": "-Decompress Game Patch",
"Download Game State": "-Download Game State",
"Check console": "-Check console",
"Error for site owner": "-Error for site owner",
"EmulatorJS": "-EmulatorJS",
"Clear All": "-Clear All",
"Take Screenshot": "-Take Screenshot",
"Quick Save": "-Quick Save",
"Quick Load": "-Quick Load",
"REWIND": "-REWIND",
"Rewind Enabled (requires restart)": "-Rewind Enabled (requires restart)",
"Rewind Granularity": "-Rewind Granularity",
"Slow Motion Ratio": "-Slow Motion Ratio",
"Slow Motion": "-Slow Motion",
"Home": "-Home",
"EmulatorJS License": "-EmulatorJS License",
"RetroArch License": "-RetroArch License",
"SLOW MOTION": "-SLOW MOTION",
"A": "-A",
"B": "-B",
"SELECT": "-SELECT",
"START": "-START",
"UP": "-UP",
"DOWN": "-DOWN",
"LEFT": "-LEFT",
"RIGHT": "-RIGHT",
"X": "-X",
"Y": "-Y",
"L": "-L",
"R": "-R",
"Z": "-Z",
"STICK UP": "-STICK UP",
"STICK DOWN": "-STICK DOWN",
"STICK LEFT": "-STICK LEFT",
"STICK RIGHT": "-STICK RIGHT",
"C-PAD UP": "-C-PAD UP",
"C-PAD DOWN": "-C-PAD DOWN",
"C-PAD LEFT": "-C-PAD LEFT",
"C-PAD RIGHT": "-C-PAD RIGHT",
"MICROPHONE": "-MICROPHONE",
"BUTTON 1 / START": "-BUTTON 1 / START",
"BUTTON 2": "-BUTTON 2",
"BUTTON": "-BUTTON",
"LEFT D-PAD UP": "-LEFT D-PAD UP",
"LEFT D-PAD DOWN": "-LEFT D-PAD DOWN",
"LEFT D-PAD LEFT": "-LEFT D-PAD LEFT",
"LEFT D-PAD RIGHT": "-LEFT D-PAD RIGHT",
"RIGHT D-PAD UP": "-RIGHT D-PAD UP",
"RIGHT D-PAD DOWN": "-RIGHT D-PAD DOWN",
"RIGHT D-PAD LEFT": "-RIGHT D-PAD LEFT",
"RIGHT D-PAD RIGHT": "-RIGHT D-PAD RIGHT",
"C": "-C",
"MODE": "-MODE",
"FIRE": "-FIRE",
"RESET": "-RESET",
"LEFT DIFFICULTY A": "-LEFT DIFFICULTY A",
"LEFT DIFFICULTY B": "-LEFT DIFFICULTY B",
"RIGHT DIFFICULTY A": "-RIGHT DIFFICULTY A",
"RIGHT DIFFICULTY B": "-RIGHT DIFFICULTY B",
"COLOR": "-COLOR",
"B/W": "-B/W",
"PAUSE": "-PAUSE",
"OPTION": "-OPTION",
"OPTION 1": "-OPTION 1",
"OPTION 2": "-OPTION 2",
"L2": "-L2",
"R2": "-R2",
"L3": "-L3",
"R3": "-R3",
"L STICK UP": "-L STICK UP",
"L STICK DOWN": "-L STICK DOWN",
"L STICK LEFT": "-L STICK LEFT",
"L STICK RIGHT": "-L STICK RIGHT",
"R STICK UP": "-R STICK UP",
"R STICK DOWN": "-R STICK DOWN",
"R STICK LEFT": "-R STICK LEFT",
"R STICK RIGHT": "-R STICK RIGHT",
"Start": "-Start",
"Select": "-Select",
"Fast": "-Fast",
"Slow": "-Slow",
"a": "-a",
"b": "-b",
"c": "-c",
"d": "-d",
"e": "-e",
"f": "-f",
"g": "-g",
"h": "-h",
"i": "-i",
"j": "-j",
"k": "-k",
"l": "-l",
"m": "-m",
"n": "-n",
"o": "-o",
"p": "-p",
"q": "-q",
"r": "-r",
"s": "-s",
"t": "-t",
"u": "-u",
"v": "-v",
"w": "-w",
"x": "-x",
"y": "-y",
"z": "-z",
"enter": "-enter",
"escape": "-escape",
"space": "-space",
"tab": "-tab",
"backspace": "-backspace",
"delete": "-delete",
"arrowup": "-arrowup",
"arrowdown": "-arrowdown",
"arrowleft": "-arrowleft",
"arrowright": "-arrowright",
"f1": "-f1",
"f2": "-f2",
"f3": "-f3",
"f4": "-f4",
"f5": "-f5",
"f6": "-f6",
"f7": "-f7",
"f8": "-f8",
"f9": "-f9",
"f10": "-f10",
"f11": "-f11",
"f12": "-f12",
"shift": "-shift",
"control": "-control",
"alt": "-alt",
"meta": "-meta",
"capslock": "-capslock",
"insert": "-insert",
"home": "-home",
"end": "-end",
"pageup": "-pageup",
"pagedown": "-pagedown",
"!": "-!",
"@": "-@",
"#": "-#",
"$": "-$",
"%": "-%",
"^": "-^",
"&": "-&",
"*": "-*",
"(": "-(",
")": "-)",
"-": "--",
"_": "-_",
"+": "-+",
"=": "-=",
"[": "-[",
"]": "-]",
"{": "-{",
"}": "-}",
";": "-;",
":": "-:",
"'": "-'",
"\"": "-\"",
",": "-,",
".": "-.",
"<": "-<",
">": "->",
"/": "-/",
"?": "-?",
"LEFT_STICK_X": "-LEFT_STICK_X",
"LEFT_STICK_Y": "-LEFT_STICK_Y",
"RIGHT_STICK_X": "-RIGHT_STICK_X",
"RIGHT_STICK_Y": "-RIGHT_STICK_Y",
"LEFT_TRIGGER": "-LEFT_TRIGGER",
"RIGHT_TRIGGER": "-RIGHT_TRIGGER",
"A_BUTTON": "-A_BUTTON",
"B_BUTTON": "-B_BUTTON",
"X_BUTTON": "-X_BUTTON",
"Y_BUTTON": "-Y_BUTTON",
"START_BUTTON": "-START_BUTTON",
"SELECT_BUTTON": "-SELECT_BUTTON",
"L1_BUTTON": "-L1_BUTTON",
"R1_BUTTON": "-R1_BUTTON",
"L2_BUTTON": "-L2_BUTTON",
"R2_BUTTON": "-R2_BUTTON",
"LEFT_THUMB_BUTTON": "-LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "-RIGHT_THUMB_BUTTON",
"DPAD_UP": "-DPAD_UP",
"DPAD_DOWN": "-DPAD_DOWN",
"DPAD_LEFT": "-DPAD_LEFT",
"DPAD_RIGHT": "-DPAD_RIGHT"
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Restart",
"Pause": "Pause",
"Play": "Play",
"Save State": "Save State",
"Load State": "Load State",
"Control Settings": "Control Settings",
"Cheats": "Cheats",
"Cache Manager": "Cache Manager",
"Export Save File": "Export Save File",
"Import Save File": "Import Save File",
"Netplay": "Netplay",
"Mute": "Mute",
"Unmute": "Unmute",
"Settings": "Settings",
"Enter Fullscreen": "Enter Fullscreen",
"Exit Fullscreen": "Exit Fullscreen",
"Context Menu": "Context Menu",
"Reset": "Reset",
"Clear": "Clear",
"Close": "Close",
"QUICK SAVE STATE": "QUICK SAVE STATE",
"QUICK LOAD STATE": "QUICK LOAD STATE",
"CHANGE STATE SLOT": "CHANGE STATE SLOT",
"FAST FORWARD": "FAST FORWARD",
"Player": "Player",
"Connected Gamepad": "Connected Gamepad",
"Gamepad": "Gamepad",
"Keyboard": "Keyboard",
"Set": "Set",
"Add Cheat": "Add Cheat",
"Note that some cheats require a restart to disable": "Note that some cheats require a restart to disable",
"Create a Room": "Create a Room",
"Rooms": "Rooms",
"Start Game": "Start Game",
"Click to resume Emulator": "Click to resume Emulator",
"Drop save state here to load": "Drop save state here to load",
"Loading...": "Loading...",
"Download Game Core": "Download Game Core",
"Outdated graphics driver": "Outdated graphics driver",
"Decompress Game Core": "Decompress Game Core",
"Download Game Data": "Download Game Data",
"Decompress Game Data": "Decompress Game Data",
"Shaders": "Shaders",
"Disabled": "Disabled",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT easymode",
"CRT aperture": "CRT aperture",
"CRT geom": "CRT geom",
"CRT mattias": "CRT mattias",
"FPS": "FPS",
"show": "show",
"hide": "hide",
"Fast Forward Ratio": "Fast Forward Ratio",
"Fast Forward": "Fast Forward",
"Enabled": "Enabled",
"Save State Slot": "Save State Slot",
"Save State Location": "Save State Location",
"Download": "Download",
"Keep in Browser": "Keep in Browser",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Low",
"High": "High",
"Very High": "Very High",
"None": "None",
"Player 1": "Player 1",
"Player 2": "Player 2",
"Both": "Both",
"SAVED STATE TO SLOT": "SAVED STATE TO SLOT",
"LOADED STATE FROM SLOT": "LOADED STATE FROM SLOT",
"SET SAVE STATE SLOT TO": "SET SAVE STATE SLOT TO",
"Network Error": "Network Error",
"Submit": "Submit",
"Description": "Description",
"Code": "Code",
"Add Cheat Code": "Add Cheat Code",
"Leave Room": "Leave Room",
"Password": "Password",
"Password (optional)": "Password (optional)",
"Max Players": "Max Players",
"Room Name": "Room Name",
"Join": "Join",
"Player Name": "Player Name",
"Set Player Name": "Set Player Name",
"Left Handed Mode": "Left Handed Mode",
"Virtual Gamepad": "Virtual Gamepad",
"Disk": "Disk",
"Press Keyboard": "Press Keyboard",
"INSERT COIN": "INSERT COIN",
"Remove": "Remove",
"LOADED STATE FROM BROWSER": "LOADED STATE FROM BROWSER",
"SAVED STATE TO BROWSER": "SAVED STATE TO BROWSER",
"Join the discord": "Join the discord",
"View on GitHub": "View on GitHub",
"Failed to start game": "Failed to start game",
"Download Game BIOS": "Download Game BIOS",
"Decompress Game BIOS": "Decompress Game BIOS",
"Download Game Parent": "Download Game Parent",
"Decompress Game Parent": "Decompress Game Parent",
"Download Game Patch": "Download Game Patch",
"Decompress Game Patch": "Decompress Game Patch",
"Download Game State": "Download Game State",
"Check console": "Check console",
"Error for site owner": "Error for site owner",
"EmulatorJS": "EmulatorJS",
"Clear All": "Clear All",
"Take Screenshot": "Take Screenshot",
"Start Screen Recording": "Start Screen Recording",
"Stop Screen Recording": "Stop Screen Recording",
"Quick Save": "Quick Save",
"Quick Load": "Quick Load",
"REWIND": "REWIND",
"Rewind Enabled (requires restart)": "Rewind Enabled (requires restart)",
"Rewind Granularity": "Rewind Granularity",
"Slow Motion Ratio": "Slow Motion Ratio",
"Slow Motion": "Slow Motion",
"Home": "Home",
"EmulatorJS License": "EmulatorJS License",
"RetroArch License": "RetroArch License",
"This project is powered by": "This project is powered by",
"View the RetroArch license here": "View the RetroArch license here",
"SLOW MOTION": "SLOW MOTION",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "UP",
"DOWN": "DOWN",
"LEFT": "LEFT",
"RIGHT": "RIGHT",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "STICK UP",
"STICK DOWN": "STICK DOWN",
"STICK LEFT": "STICK LEFT",
"STICK RIGHT": "STICK RIGHT",
"C-PAD UP": "C-PAD UP",
"C-PAD DOWN": "C-PAD DOWN",
"C-PAD LEFT": "C-PAD LEFT",
"C-PAD RIGHT": "C-PAD RIGHT",
"MICROPHONE": "MICROPHONE",
"BUTTON 1 / START": "BUTTON 1 / START",
"BUTTON 2": "BUTTON 2",
"BUTTON": "BUTTON",
"LEFT D-PAD UP": "LEFT D-PAD UP",
"LEFT D-PAD DOWN": "LEFT D-PAD DOWN",
"LEFT D-PAD LEFT": "LEFT D-PAD LEFT",
"LEFT D-PAD RIGHT": "LEFT D-PAD RIGHT",
"RIGHT D-PAD UP": "RIGHT D-PAD UP",
"RIGHT D-PAD DOWN": "RIGHT D-PAD DOWN",
"RIGHT D-PAD LEFT": "RIGHT D-PAD LEFT",
"RIGHT D-PAD RIGHT": "RIGHT D-PAD RIGHT",
"C": "C",
"MODE": "MODE",
"FIRE": "FIRE",
"RESET": "RESET",
"LEFT DIFFICULTY A": "LEFT DIFFICULTY A",
"LEFT DIFFICULTY B": "LEFT DIFFICULTY B",
"RIGHT DIFFICULTY A": "RIGHT DIFFICULTY A",
"RIGHT DIFFICULTY B": "RIGHT DIFFICULTY B",
"COLOR": "COLOR",
"B/W": "B/W",
"PAUSE": "PAUSE",
"OPTION": "OPTION",
"OPTION 1": "OPTION 1",
"OPTION 2": "OPTION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L STICK UP",
"L STICK DOWN": "L STICK DOWN",
"L STICK LEFT": "L STICK LEFT",
"L STICK RIGHT": "L STICK RIGHT",
"R STICK UP": "R STICK UP",
"R STICK DOWN": "R STICK DOWN",
"R STICK LEFT": "R STICK LEFT",
"R STICK RIGHT": "R STICK RIGHT",
"Start": "Start",
"Select": "Select",
"Fast": "Fast",
"Slow": "Slow",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "enter",
"escape": "escape",
"space": "space",
"tab": "tab",
"backspace": "backspace",
"delete": "delete",
"arrowup": "arrowup",
"arrowdown": "arrowdown",
"arrowleft": "arrowleft",
"arrowright": "arrowright",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift",
"control": "control",
"alt": "alt",
"meta": "meta",
"capslock": "capslock",
"insert": "insert",
"home": "home",
"end": "end",
"pageup": "pageup",
"pagedown": "pagedown",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "LEFT_TRIGGER",
"RIGHT_TRIGGER": "RIGHT_TRIGGER",
"A_BUTTON": "A_BUTTON",
"B_BUTTON": "B_BUTTON",
"X_BUTTON": "X_BUTTON",
"Y_BUTTON": "Y_BUTTON",
"START_BUTTON": "START_BUTTON",
"SELECT_BUTTON": "SELECT_BUTTON",
"L1_BUTTON": "L1_BUTTON",
"R1_BUTTON": "R1_BUTTON",
"L2_BUTTON": "L2_BUTTON",
"R2_BUTTON": "R2_BUTTON",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT",
"Disks": "Disks",
"Exit EmulatorJS": "Exit EmulatorJS",
"BUTTON_1": "BUTTON_1",
"BUTTON_2": "BUTTON_2",
"BUTTON_3": "BUTTON_3",
"BUTTON_4": "BUTTON_4",
"up arrow": "up arrow",
"down arrow": "down arrow",
"left arrow": "left arrow",
"right arrow": "right arrow",
"LEFT_TOP_SHOULDER": "LEFT_TOP_SHOULDER",
"RIGHT_TOP_SHOULDER": "RIGHT_TOP_SHOULDER",
"CRT beam": "CRT beam",
"CRT caligari": "CRT caligari",
"CRT lottes": "CRT lottes",
"CRT yeetron": "CRT yeetron",
"CRT zfast": "CRT zfast",
"SABR": "SABR",
"Bicubic": "Bicubic",
"Mix frames": "Mix frames",
"WebGL2": "WebGL2",
"Requires restart": "Requires restart",
"VSync": "VSync",
"Video Rotation": "Video Rotation",
"Rewind Enabled (Requires restart)": "Rewind Enabled (Requires restart)",
"System Save interval": "System Save interval",
"Menu Bar Button": "Menu Bar Button",
"visible": "visible",
"hidden": "hidden"
}

View File

@ -1,301 +0,0 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Reanudar",
"Pause": "Pausa",
"Play": "Jugar",
"Save State": "Guardar Estado",
"Load State": "Estado de carga",
"Control Settings": "Ajustes de control",
"Cheats": "trucos",
"Cache Manager": "Administrador de caché",
"Export Save File": "Exportar archivo guardado",
"Import Save File": "Importar archivo guardado",
"Netplay": "Juego de red",
"Mute": "Silenciar",
"Unmute": "No silenciar",
"Settings": "Ajustes",
"Enter Fullscreen": "Ingrese a pantalla completa",
"Exit Fullscreen": "Salir de pantalla completa",
"Reset": "Reiniciar",
"Clear": "Claro",
"Close": "Cerca",
"QUICK SAVE STATE": "ESTADO DE GUARDADO RÁPIDO",
"QUICK LOAD STATE": "ESTADO DE CARGA RÁPIDA",
"CHANGE STATE SLOT": "CAMBIAR ESTADO SLOT",
"FAST FORWARD": "AVANCE RÁPIDO",
"Player": "Jugador",
"Connected Gamepad": "Mando conectado",
"Gamepad": "mando",
"Keyboard": "Teclado",
"Set": "Colocar",
"Add Cheat": "Añadir truco",
"Create a Room": "Crear una habitación",
"Rooms": "Habitaciones",
"Start Game": "Empezar juego",
"Loading...": "Cargando...",
"Download Game Core": "Descargar Game Core",
"Decompress Game Core": "Descomprimir Game Core",
"Download Game Data": "Descargar datos del juego",
"Decompress Game Data": "Descomprimir datos del juego",
"Shaders": "sombreadores",
"Disabled": "Desactivado",
"2xScaleHQ": "2xEscalaHQ",
"4xScaleHQ": "4xEscalaHQ",
"CRT easymode": "modo fácil CRT",
"CRT aperture": "Apertura de tubo de rayos catódicos",
"CRT geom": "geometría CRT",
"CRT mattias": "CRT mattias",
"FPS": "FPS",
"show": "espectáculo",
"hide": "esconder",
"Fast Forward Ratio": "Relación de avance rápido",
"Fast Forward": "Avance rápido",
"Enabled": "Activado",
"Save State Slot": "Guardar ranura de estado",
"Save State Location": "Guardar ubicación de estado",
"Download": "Descargar",
"Keep in Browser": "Mantener en el navegador",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "CAMARADA",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Bajo",
"High": "Alto",
"Very High": "Muy alto",
"None": "Ninguno",
"Player 1": "Jugador 1",
"Player 2": "jugador 2",
"Both": "Ambos",
"SAVED STATE TO SLOT": "ESTADO GUARDADO EN RANURA",
"LOADED STATE FROM SLOT": "ESTADO CARGADO DESDE LA RANURA",
"SET SAVE STATE SLOT TO": "ESTABLECER GUARDAR RANURA DE ESTADO EN",
"Network Error": "Error de red",
"Submit": "Entregar",
"Description": "Descripción",
"Code": "Código",
"Add Cheat Code": "Agregar código de trucos",
"Leave Room": "Dejar la habitación",
"Password": "Contraseña",
"Password (optional)": "Contraseña (opcional)",
"Max Players": "Jugadores máximos",
"Room Name": "Nombre de la habitación",
"Join": "Unirse",
"Player Name": "Nombre del jugador",
"Set Player Name": "Establecer nombre de jugador",
"Left Handed Mode": "Modo para zurdos",
"Virtual Gamepad": "Mando virtual",
"Disk": "Disco",
"Press Keyboard": "Oprimá teclado",
"INSERT COIN": "INSERTE MONEDA",
"Remove": "Eliminar",
"SAVE LOADED FROM BROWSER": "GUARDAR CARGADO DESDE EL NAVEGADOR",
"SAVE SAVED TO BROWSER": "GUARDAR GUARDADO EN EL NAVEGADOR",
"Join the discord": "Únete a la discordia",
"View on GitHub": "Ver en GitHub",
"Failed to start game": "No se pudo iniciar el juego",
"Download Game BIOS": "Descargar BIOS del juego",
"Decompress Game BIOS": "Descomprimir BIOS del juego",
"Download Game Parent": "Descargar juego para padres",
"Decompress Game Parent": "Padre del juego de descompresión",
"Download Game Patch": "Descargar el parche del juego",
"Decompress Game Patch": "Parche de descompresión del juego",
"Download Game State": "Descargar estado del juego",
"Check console": "Comprobar consola",
"Error for site owner": "Error para el propietario del sitio",
"EmulatorJS": "EmuladorJS",
"Clear All": "Limpiar todo",
"Take Screenshot": "Tomar captura de pantalla",
"Quick Save": "Guardado rápido",
"Quick Load": "Carga rápida",
"REWIND": "REBOBINAR",
"Rewind Enabled (requires restart)": "Rebobinado habilitado (requiere reinicio)",
"Rewind Granularity": "Granularidad de rebobinado",
"Slow Motion Ratio": "Relación de cámara lenta",
"Slow Motion": "Camara lenta",
"Home": "Hogar",
"EmulatorJS License": "Licencia EmulatorJS",
"RetroArch License": "Licencia RetroArch",
"SLOW MOTION": "CAMARA LENTA",
"A": "A",
"B": "B",
"SELECT": "SELECCIONAR",
"START": "COMENZAR",
"UP": "ARRIBA",
"DOWN": "ABAJO",
"LEFT": "IZQUIERDA",
"RIGHT": "BIEN",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "PEGARSE",
"STICK DOWN": "PEGAR",
"STICK LEFT": "PALO IZQUIERDO",
"STICK RIGHT": "PEGAR A LA DERECHA",
"C-PAD UP": "C-PAD ARRIBA",
"C-PAD DOWN": "C-PAD ABAJO",
"C-PAD LEFT": "C-PAD IZQUIERDO",
"C-PAD RIGHT": "C-PAD DERECHO",
"MICROPHONE": "MICRÓFONO",
"BUTTON 1 / START": "BOTÓN 1 / INICIO",
"BUTTON 2": "BOTÓN 2",
"BUTTON": "BOTÓN",
"LEFT D-PAD UP": "D-PAD IZQUIERDO ARRIBA",
"LEFT D-PAD DOWN": "D-PAD IZQUIERDO ABAJO",
"LEFT D-PAD LEFT": "D-PAD IZQUIERDO IZQUIERDO",
"LEFT D-PAD RIGHT": "D-PAD IZQUIERDO DERECHO",
"RIGHT D-PAD UP": "D-PAD DERECHO ARRIBA",
"RIGHT D-PAD DOWN": "D-PAD DERECHO ABAJO",
"RIGHT D-PAD LEFT": "D-PAD DERECHO IZQUIERDO",
"RIGHT D-PAD RIGHT": "D-PAD DERECHO DERECHO",
"C": "C",
"MODE": "MODO",
"FIRE": "FUEGO",
"RESET": "REINICIAR",
"LEFT DIFFICULTY A": "IZQUIERDA DIFICULTAD A",
"LEFT DIFFICULTY B": "IZQUIERDA DIFICULTAD B",
"RIGHT DIFFICULTY A": "CORRECTA DIFICULTAD A",
"RIGHT DIFFICULTY B": "CORRECTA DIFICULTAD B",
"COLOR": "COLOR",
"B/W": "B/N",
"PAUSE": "PAUSA",
"OPTION": "OPCIÓN",
"OPTION 1": "OPCIÓN 1",
"OPTION 2": "OPCION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L STICK UP",
"L STICK DOWN": "L STICK ABAJO",
"L STICK LEFT": "PALO L IZQUIERDO",
"L STICK RIGHT": "PALO L DERECHO",
"R STICK UP": "R STICK UP",
"R STICK DOWN": "PALO R HACIA ABAJO",
"R STICK LEFT": "PALANCA R IZQUIERDA",
"R STICK RIGHT": "PALANCA R DERECHA",
"Start": "Comenzar",
"Select": "Seleccionar",
"Fast": "Rápido",
"Slow": "Lento",
"a": "a",
"b": "b",
"c": "C",
"d": "d",
"e": "mi",
"f": "F",
"g": "gramo",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "yo",
"m": "metro",
"n": "norte",
"o": "o",
"p": "pag",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "tu",
"v": "v",
"w": "w",
"x": "X",
"y": "y",
"z": "z",
"enter": "ingresar",
"escape": "escapar",
"space": "espacio",
"tab": "pestaña",
"backspace": "retroceso",
"delete": "borrar",
"arrowup": "flecha arriba",
"arrowdown": "flecha abajo",
"arrowleft": "flecha izquierda",
"arrowright": "flecha derecha",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "cambio",
"control": "control",
"alt": "alternativa",
"meta": "meta",
"capslock": "Bloq Mayús",
"insert": "insertar",
"home": "hogar",
"end": "fin",
"pageup": "página arriba",
"pagedown": "Página abajo",
"!": "!",
"@": "@",
"#": "#",
"$": "ps",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "PALO_DERECHO_X",
"RIGHT_STICK_Y": "PALO_DERECHO_Y",
"LEFT_TRIGGER": "GATILLO IZQUIERDO",
"RIGHT_TRIGGER": "DERECHO_TRIGGER",
"A_BUTTON": "UN BOTÓN",
"B_BUTTON": "B_BOTÓN",
"X_BUTTON": "BOTÓN_X",
"Y_BUTTON": "BOTÓN Y_",
"START_BUTTON": "BOTÓN DE INICIO",
"SELECT_BUTTON": "SELECCIONAR_BOTÓN",
"L1_BUTTON": "L1_BOTÓN",
"R1_BUTTON": "R1_BOTÓN",
"L2_BUTTON": "L2_BOTÓN",
"R2_BUTTON": "R2_BOTÓN",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "DERECHO_THUMB_BOTÓN",
"DPAD_UP": "DPAD ARRIBA",
"DPAD_DOWN": "DPAD_ABAJO",
"DPAD_LEFT": "DPAD_IZQUIERDA",
"DPAD_RIGHT": "DPAD_DERECHO"
}

310
data/localization/es.json Normal file
View File

@ -0,0 +1,310 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Reiniciar",
"Pause": "Pausar",
"Play": "Reanudar",
"Save State": "Guardar Estado",
"Load State": "Cargar Estado",
"Control Settings": "Ajustes de Control",
"Cheats": "Trucos",
"Cache Manager": "Administrador de Caché",
"Export Save File": "Exportar Archivo de Guardado",
"Import Save File": "Importar Archivo de Guardado",
"Netplay": "Juego en Red",
"Mute": "Silenciar",
"Unmute": "Activar Sonido",
"Settings": "Ajustes",
"Enter Fullscreen": "Pantalla Completa",
"Exit Fullscreen": "Salir de Pantalla Completa",
"Context Menu": "Menú Contextual",
"Reset": "Reiniciar",
"Clear": "Limpiar",
"Close": "Cerrar",
"QUICK SAVE STATE": "GUARDADO RÁPIDO DE ESTADO",
"QUICK LOAD STATE": "CARGA RÁPIDA DE ESTADO",
"CHANGE STATE SLOT": "CAMBIAR RANURA DE ESTADO",
"FAST FORWARD": "AVANCE RÁPIDO",
"Player": "Jugador",
"Connected Gamepad": "Mando Conectado",
"Gamepad": "Mando",
"Keyboard": "Teclado",
"Set": "Guardar",
"Add Cheat": "Añadir Truco",
"Note that some cheats require a restart to disable": "Algunos trucos requieren reiniciar para desactivarlos",
"Create a Room": "Crear una Sala",
"Rooms": "Salas",
"Start Game": "Iniciar juego",
"Click to resume Emulator": "Haz clic para reanudar el Emulador",
"Drop save state here to load": "Suelta el estado guardado aquí para cargarlo",
"Loading...": "Cargando...",
"Download Game Core": "Descargando Núcleo del Juego",
"Outdated graphics driver": "Controlador de gráficos obsoleto",
"Decompress Game Core": "Descomprimiendo Núcleo del Juego",
"Download Game Data": "Descargando Datos del Juego",
"Decompress Game Data": "Descomprimiendo Datos del Juego",
"Shaders": "Shaders",
"Disabled": "Desactivado",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT easymode",
"CRT aperture": "CRT aperture",
"CRT geom": "CRT geom",
"CRT mattias": "CRT mattias",
"FPS": "FPS",
"show": "mostrar",
"hide": "ocultar",
"Fast Forward Ratio": "Proporción de Avance Rápido",
"Fast Forward": "Avance Rápido",
"Enabled": "Activado",
"Save State Slot": "Guardar Ranura de Estado",
"Save State Location": "Guardar Ubicación de Estado",
"Download": "Descargar",
"Keep in Browser": "Mantener en Navegador",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Bajo",
"High": "Alto",
"Very High": "Muy alto",
"None": "Ninguno",
"Player 1": "Jugador 1",
"Player 2": "jugador 2",
"Both": "Ambos",
"SAVED STATE TO SLOT": "ESTADO GUARDADO EN RANURA",
"LOADED STATE FROM SLOT": "ESTADO CARGADO DESDE LA RANURA",
"SET SAVE STATE SLOT TO": "ESTABLECER RANURA DE GUARDADO DE ESTADO EN",
"Network Error": "Error de Red",
"Submit": "Enviar",
"Description": "Descripción",
"Code": "Código",
"Add Cheat Code": "Agregar Código de Trucos",
"Leave Room": "Dejar la Sala",
"Password": "Contraseña",
"Password (optional)": "Contraseña (opcional)",
"Max Players": "Jugadores Máximos",
"Room Name": "Nombre de la Sala",
"Join": "Unirse",
"Player Name": "Nombre del Jugador",
"Set Player Name": "Establecer Nombre de Jugador",
"Left Handed Mode": "Modo para Zurdos",
"Virtual Gamepad": "Mando Virtual",
"Disk": "Disco",
"Press Keyboard": "Presionar Teclado",
"INSERT COIN": "INSERTE MONEDA",
"Remove": "Eliminar",
"LOADED STATE FROM BROWSER": "ESTADO CARGADO DESDE EL NAVEGADOR",
"SAVED STATE TO BROWSER": "ESTADO GUARDADO EN EL NAVEGADOR",
"Join the discord": "Únete al Discord",
"View on GitHub": "Ver en GitHub",
"Failed to start game": "Error al iniciar el juego",
"Download Game BIOS": "Descargando BIOS del Juego",
"Decompress Game BIOS": "Descomprimiendo BIOS del Juego",
"Download Game Parent": "Descargando Juego Principal",
"Decompress Game Parent": "Descomprimiendo Juego Principal",
"Download Game Patch": "Descargando Parche del Juego",
"Decompress Game Patch": "Descomprimiendo Parche del Juego",
"Download Game State": "Descargando Estado del Juego",
"Check console": "Verificar consola",
"Error for site owner": "Error para el propietario del sitio",
"EmulatorJS": "EmulatorJS",
"Clear All": "Limpiar todo",
"Take Screenshot": "Tomar Captura de Pantalla",
"Start Screen Recording": "Iniciar grabación de pantalla",
"Stop Screen Recording": "Detener grabación de pantalla",
"Quick Save": "Guardado Rápido",
"Quick Load": "Carga Rápida",
"REWIND": "REBOBINAR",
"Rewind Enabled (requires restart)": "Rebobinado Habilitado (requiere reinicio)",
"Rewind Granularity": "Granularidad de Rebobinado",
"Slow Motion Ratio": "Proporción de Cámara Lenta",
"Slow Motion": "Cámara Lenta",
"Home": "Inicio",
"EmulatorJS License": "Licencia de EmulatorJS",
"RetroArch License": "Licencia de RetroArch",
"This project is powered by": "Este proyecto está impulsado por",
"View the RetroArch license here": "Ver la licencia de RetroArch aquí",
"SLOW MOTION": "CÁMARA LENTA",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "ARRIBA",
"DOWN": "ABAJO",
"LEFT": "IZQUIERDA",
"RIGHT": "DERECHA",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "STICK ARRIBA",
"STICK DOWN": "STICK ABAJO",
"STICK LEFT": "STICK IZQUIERDA",
"STICK RIGHT": "STICK DERECHA",
"C-PAD UP": "C-PAD ARRIBA",
"C-PAD DOWN": "C-PAD ABAJO",
"C-PAD LEFT": "C-PAD IZQUIERDA",
"C-PAD RIGHT": "C-PAD DERECHA",
"MICROPHONE": "MICRÓFONO",
"BUTTON 1 / START": "BOTÓN 1 / INICIO",
"BUTTON 2": "BOTÓN 2",
"BUTTON": "BOTÓN",
"LEFT D-PAD UP": "D-PAD IZQUIERDO ARRIBA",
"LEFT D-PAD DOWN": "D-PAD IZQUIERDO ABAJO",
"LEFT D-PAD LEFT": "D-PAD IZQUIERDO IZQUIERDA",
"LEFT D-PAD RIGHT": "D-PAD IZQUIERDO DERECHA",
"RIGHT D-PAD UP": "D-PAD DERECHO ARRIBA",
"RIGHT D-PAD DOWN": "D-PAD DERECHO ABAJO",
"RIGHT D-PAD LEFT": "D-PAD DERECHO IZQUIERDO",
"RIGHT D-PAD RIGHT": "D-PAD DERECHO DERECHA",
"C": "C",
"MODE": "MODO",
"FIRE": "FUEGO",
"RESET": "RESET",
"LEFT DIFFICULTY A": "IZQUIERDA DIFICULTAD A",
"LEFT DIFFICULTY B": "IZQUIERDA DIFICULTAD B",
"RIGHT DIFFICULTY A": "DERECHA DIFICULTAD A",
"RIGHT DIFFICULTY B": "DERECHA DIFICULTAD B",
"COLOR": "COLOR",
"B/W": "B/N",
"PAUSE": "PAUSA",
"OPTION": "OPCIÓN",
"OPTION 1": "OPCIÓN 1",
"OPTION 2": "OPCION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L STICK ARRIBA",
"L STICK DOWN": "L STICK ABAJO",
"L STICK LEFT": "L STICK IZQUIERDA",
"L STICK RIGHT": "L STICK DERECHA",
"R STICK UP": "R STICK ARRIBA",
"R STICK DOWN": "R STICK ABAJO",
"R STICK LEFT": "R STICK IZQUIERDA",
"R STICK RIGHT": "R STICK DERECHA",
"Start": "Start",
"Select": "Select",
"Fast": "Rápido",
"Slow": "Lento",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "intro",
"escape": "escape",
"space": "espacio",
"tab": "tabulador",
"backspace": "retroceso",
"delete": "borrar",
"arrowup": "flecha arriba",
"arrowdown": "flecha abajo",
"arrowleft": "flecha izquierda",
"arrowright": "flecha derecha",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift",
"control": "control",
"alt": "alt",
"meta": "meta",
"capslock": "bloq mayús",
"insert": "insertar",
"home": "inicio",
"end": "fin",
"pageup": "página arriba",
"pagedown": "página abajo",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "STICK_IZQUIERDO_X",
"LEFT_STICK_Y": "STICK_IZQUIERDO_Y",
"RIGHT_STICK_X": "STICK_DERECHO_X",
"RIGHT_STICK_Y": "STICK_DERECHO_Y",
"LEFT_TRIGGER": "GATILLO_IZQUIERDO",
"RIGHT_TRIGGER": "GATILLO_DERECHO",
"A_BUTTON": "BOTÓN_A",
"B_BUTTON": "BOTÓN_B",
"X_BUTTON": "BOTÓN_X",
"Y_BUTTON": "BOTÓN_Y",
"START_BUTTON": "BOTÓN_START",
"SELECT_BUTTON": "BOTÓN_SELECT",
"L1_BUTTON": "BOTÓN_L1",
"R1_BUTTON": "BOTÓN_R1",
"L2_BUTTON": "BOTÓN_L2",
"R2_BUTTON": "BOTÓN_R2",
"LEFT_THUMB_BUTTON": "BOTÓN_L3",
"RIGHT_THUMB_BUTTON": "BOTÓN_R3",
"DPAD_UP": "DPAD ARRIBA",
"DPAD_DOWN": "DPAD_ABAJO",
"DPAD_LEFT": "DPAD_IZQUIERDA",
"DPAD_RIGHT": "DPAD_DERECHO"
}

310
data/localization/fa.json Normal file
View File

@ -0,0 +1,310 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "راه اندازی مجدد",
"Pause": "مکث",
"Play": "بازی کردن",
"Save State": "ذخیره حالت",
"Load State": "بارگذاری حالت",
"Control Settings": "تنظیمات کنترل",
"Cheats": "تقلب ها",
"Cache Manager": "مدیریت کش",
"Export Save File": "صادر کردن یا ذخیره فایل",
"Import Save File": " وارد کردن فایل ذخیره شده",
"Netplay": "نت پلی",
"Mute": "بی صدا",
"Unmute": "باصدا کردن",
"Settings": "تنظیمات",
"Enter Fullscreen": "حالت تمام ضفحه",
"Exit Fullscreen": "خارج شدن از حالت تمام صفحه",
"Context Menu": "منوی زمینه",
"Reset": "بازنشانی کردن",
"Clear": "پاک کردن",
"Close": "بستن",
"QUICK SAVE STATE": "ذخیره سریع حالت",
"QUICK LOAD STATE": "بارگذاری سریع حالت",
"CHANGE STATE SLOT": "تغییر وضعیت اسلات",
"FAST FORWARD": "سریع به جلو",
"Player": "بازیکن",
"Connected Gamepad": "گیم پد وصل شده",
"Gamepad": "گیم پد",
"Keyboard": "صفحه کلید",
"Set": "تنظیم کنید",
"Add Cheat": "تقلب را اضافه کنید",
"Note that some cheats require a restart to disable": "توجه داشته باشید که برخی از تقلب ها برای غیرفعال کردن نیاز به راه اندازی مجدد دارند",
"Create a Room": "یک اتاق ایجاد کنید",
"Rooms": "اتاق ها",
"Start Game": "شروع بازی",
"Click to resume Emulator": "برای از سرگیری شبیه ساز کلیک کنید",
"Drop save state here to load": "حالت ذخیره را برای بارگیری اینجا رها کنید",
"Loading...": "در حال بارگیری...",
"Download Game Core": "دانلود بازی هسته",
"Outdated graphics driver": "درایور گرافیک قدیمی",
"Decompress Game Core": "هسته بازی را از حالت فشرده خارج کنید",
"Download Game Data": "دانلود دیتای بازی",
"Decompress Game Data": "دیتا های بازی را از حالت فشرده خارج کنید",
"Shaders": "سایه بان ها",
"Disabled": "از کار افتاده است",
"2xScaleHQ": "مقیاس دوبرابر کیفیت بالا",
"4xScaleHQ": "مقیاس ۴ برابر کیفیت بالا",
"CRT easymode": "CRT حالت آسان",
"CRT aperture": "دیافراگم CRT",
"CRT geom": "ژئوم CRT",
"CRT mattias": "CRT ماتیاس",
"FPS": "FPS",
"show": "نشان دادن",
"hide": "پنهان کردن",
"Fast Forward Ratio": "نسبت سریع به جلو",
"Fast Forward": "سریع به جلو",
"Enabled": "فعال شد",
"Save State Slot": "ذخیره حالت اسلات ",
"Save State Location": "ذخیره موقعیت حالت",
"Download": "دانلود کردن",
"Keep in Browser": "نگه داشتن در مرورگر",
"Auto": "خودکار",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "کم",
"High": "بالا",
"Very High": "بسیار بالا",
"None": "هیچ کدام",
"Player 1": "بازیکن 1",
"Player 2": "بازیکن 2",
"Both": "هر دو",
"SAVED STATE TO SLOT": "حالت ذخیره شده در اسلات",
"LOADED STATE FROM SLOT": "حالت لود شده از اسلات",
"SET SAVE STATE SLOT TO": "تنظیم کردن اسلات حالت ذخیره به",
"Network Error": "خطای شبکه",
"Submit": "ارسال کردن",
"Description": "توضیحات",
"Code": "کد",
"Add Cheat Code": "کد تقلب را اضافه کنید",
"Leave Room": "ترک کردن اتاق",
"Password": "رمز عبور",
"Password (optional)": "رمز عبور (اختیاری)",
"Max Players": "حداکثر بازیکنان",
"Room Name": "نام اتاق",
"Join": "پیوستن",
"Player Name": "نام بازیکن",
"Set Player Name": "نام بازیکن را تنظیم کنید",
"Left Handed Mode": "حالت چپ دست",
"Virtual Gamepad": "گیم پد مجازی",
"Disk": "دیسک",
"Press Keyboard": "صفحه کلید را فشار دهید",
"INSERT COIN": "سکه درج کنید",
"Remove": "حذف کردن",
"LOADED STATE FROM BROWSER": "وضعیت بارگیری شده از مرورگر",
"SAVED STATE TO BROWSER": "وضعیت در مرورگر ذخیره شد",
"Join the discord": "به دیسکورد discord بپیوندید",
"View on GitHub": "در GitHub مشاهده کنید",
"Failed to start game": "شروع بازی ناموفق بود",
"Download Game BIOS": "دانلود بایوس بازی",
"Decompress Game BIOS": "بایوس بازی را از حالت فشرده خارج کنید",
"Download Game Parent": "دانلود بازی پدر و مادر",
"Decompress Game Parent": "والد بازی را از حالت فشرده خارج کنید",
"Download Game Patch": "پچ بازی را دانلود کنید",
"Decompress Game Patch": "پچ بازی را از حالت فشرده خارج کنید",
"Download Game State": "وضعیت بازی را دانلود کنید",
"Check console": "کنسول را چک کنید",
"Error for site owner": "خطا برای صاحب سایت",
"EmulatorJS": "EmulatorJS",
"Clear All": "پاک کردن همه",
"Take Screenshot": "اسکرین شات بگیرید",
"Start Screen Recording": "شروع ضبط صفحه",
"Stop Screen Recording": "ضبط صفحه را متوقف کنید",
"Quick Save": "ذخیره سریع",
"Quick Load": "بارگذاری سریع",
"REWIND": "عقب",
"Rewind Enabled (requires restart)": "Rewind فعال شد (نیاز به راه اندازی مجدد)",
"Rewind Granularity": "دانه بندی به عقب",
"Slow Motion Ratio": "نسبت حرکت آهسته",
"Slow Motion": "حرکت آهسته",
"Home": "صفحه اصلی",
"EmulatorJS License": "مجوز EmulatorJS",
"RetroArch License": "مجوز RetroArch",
"This project is powered by": "این پروژه توسط",
"View the RetroArch license here": "مجوز RetroArch را اینجا ببینید",
"SLOW MOTION": "حرکت آهسته",
"A": "A",
"B": "B",
"SELECT": "انتخاب کردن",
"START": "شروع کردن",
"UP": "بالا",
"DOWN": "پایین",
"LEFT": "چپ",
"RIGHT": "راست",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "به بالا بچسب",
"STICK DOWN": "به پایین بچسب",
"STICK LEFT": "به سمت چپ بچسبید",
"STICK RIGHT": "به راست بچسب",
"C-PAD UP": "C-PAD بالا",
"C-PAD DOWN": "C-PAD پایین",
"C-PAD LEFT": "C-PAD سمت چپ",
"C-PAD RIGHT": "C-PAD راست",
"MICROPHONE": "میکروفون",
"BUTTON 1 / START": "دکمه 1 / شروع",
"BUTTON 2": "دکمه 2",
"BUTTON": "دکمه",
"LEFT D-PAD UP": "دی پد سمت چپ به بالا",
"LEFT D-PAD DOWN": "دی پد سمت چپ به پایین",
"LEFT D-PAD LEFT": "دی پد سمت چپ به چپ",
"LEFT D-PAD RIGHT": "دی پد سمت چپ به راست",
"RIGHT D-PAD UP": "دی پد سمت راست به بالا",
"RIGHT D-PAD DOWN": "دی پد سمت راست به پایین",
"RIGHT D-PAD LEFT": "دی پد سمت راست به چپ",
"RIGHT D-PAD RIGHT": "دی پد سمت راست به راست",
"C": "C",
"MODE": "حالت",
"FIRE": "آتش",
"RESET": "تنظیم مجدد",
"LEFT DIFFICULTY A": "سختی چپ A",
"LEFT DIFFICULTY B": "سختی چپ B",
"RIGHT DIFFICULTY A": "سختی راست A",
"RIGHT DIFFICULTY B": "سختی راست B",
"COLOR": "رنگ",
"B/W": "سیاه سفید",
"PAUSE": "مکث",
"OPTION": "گزینه",
"OPTION 1": "گزینه 1",
"OPTION 2": "گزینه 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L استیک بالا",
"L STICK DOWN": "L استیک پایین",
"L STICK LEFT": "L استیک چپ",
"L STICK RIGHT": "L استیک راست",
"R STICK UP": "R استیک بالا",
"R STICK DOWN": "R استیک پایین",
"R STICK LEFT": "R استیک چپ",
"R STICK RIGHT": "R استیک راست",
"Start": "شروع کنید",
"Select": "انتخاب کنید",
"Fast": "سریع",
"Slow": "آهسته",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "وارد شدن",
"escape": "Escape",
"space": "فاصله",
"tab": "tab",
"backspace": "بک اسپیس",
"delete": "حذف کنید",
"arrowup": "فلش رو به بالا",
"arrowdown": "فلش رو به پایین",
"arrowleft": "فلش به چپ",
"arrowright": "فلش به راست",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift شیفت",
"control": "کنترل ctrl",
"alt": "alt",
"meta": "meta",
"capslock": "کپس لاک",
"insert": "اینزرت insert",
"home": "home",
"end": "end",
"pageup": "Page up",
"pagedown": "Page down",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": "،",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "استیک چپ X",
"LEFT_STICK_Y": "استیک چپ Y",
"RIGHT_STICK_X": "استیک راست X",
"RIGHT_STICK_Y": "استیک راست Y",
"LEFT_TRIGGER": "تریگر سمت چپ",
"RIGHT_TRIGGER": "تریگر سمت راست",
"A_BUTTON": "A دکمه",
"B_BUTTON": "دکمه B",
"X_BUTTON": "X دکمه ",
"Y_BUTTON": "دکمه Y",
"START_BUTTON": "دکمه شروع",
"SELECT_BUTTON": "دکمه انتخاب",
"L1_BUTTON": "L1 دکمه",
"R1_BUTTON": "R1دکمه ",
"L2_BUTTON": "L2دکمه",
"R2_BUTTON": "R2 دکمه",
"LEFT_THUMB_BUTTON": "دکمه شصت جپ",
"RIGHT_THUMB_BUTTON": "دکمه شصت راست",
"DPAD_UP": "دی پد بالا",
"DPAD_DOWN": "دی پد پایین",
"DPAD_LEFT": "دی پد چپ",
"DPAD_RIGHT": "دی پد راست"
}

339
data/localization/fr.json Normal file
View File

@ -0,0 +1,339 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Redémarrer",
"Pause": "Mettre en pause",
"Play": "Jouer",
"Save State": "Enregistrer l'état",
"Load State": "Ouvrir un état",
"Control Settings": "Paramètres des contrôles",
"Cheats": "Triches",
"Cache Manager": "Gestionnaire du cache",
"Export Save File": "Exporter vers une sauvegarde",
"Import Save File": "Importer une sauvegarde",
"Netplay": "Jouer en ligne",
"Mute": "Désactiver le son",
"Unmute": "Réactiver le son",
"Settings": "Paramètres",
"Enter Fullscreen": "Passer en mode plein écran",
"Exit Fullscreen": "Quitter le mode plein écran",
"Context Menu": "Menu contextuel",
"Reset": "Réinitialiser",
"Clear": "Effacer",
"Close": "Fermer",
"QUICK SAVE STATE": "ENREGISTREMENT RAPIDE DE L'ÉTAT",
"QUICK LOAD STATE": "CHARGEMENT RAPIDE DE L'ÉTAT",
"CHANGE STATE SLOT": "CHANGER L'EMPLACEMENT DE L'ÉTAT",
"FAST FORWARD": "AVANCE RAPIDE",
"Player": "Joueur",
"Connected Gamepad": "Manette de jeu connectée",
"Gamepad": "Manette de jeu",
"Keyboard": "Clavier",
"Set": "Définir",
"Add Cheat": "Ajouter une triche",
"Note that some cheats require a restart to disable": "Notez que certaines triches nécessitent un redémarrage pour être désactivées",
"Create a Room": "Créer un salon",
"Rooms": "Salons",
"Start Game": "Démarrer le jeu",
"Click to resume Emulator": "Cliquez pour reprendre avec l'émulateur",
"Drop save state here to load": "Déposez un état enregistré ici pour le charger",
"Loading...": "Chargement...",
"Download Game Core": "Téléchargement du noyau pour le jeu...",
"Outdated graphics driver": "Pilote graphique obsolète",
"Decompress Game Core": "Décompression du noyau pour le jeu...",
"Download Game Data": "Téléchargement des données du jeu...",
"Decompress Game Data": "Décompression des données du jeu...",
"Shaders": "Shaders",
"Disabled": "Désactivé",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT easymode",
"CRT aperture": "CRT aperture",
"CRT geom": "CRT geom",
"CRT mattias": "CRT mattias",
"FPS": "FPS",
"show": "Afficher",
"hide": "Masquer",
"Fast Forward Ratio": "Vitesse de l'avance rapide",
"Fast Forward": "Avance rapide",
"Enabled": "Activé",
"Save State Slot": "Emplacement de l'état",
"Save State Location": "Stockage des états",
"Download": "Télécharger",
"Keep in Browser": "Dans le navigateur",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Basse",
"High": "Élevée",
"Very High": "Très élevée",
"None": "Aucun",
"Player 1": "Joueur 1",
"Player 2": "Joueur 2",
"Both": "Les deux",
"SAVED STATE TO SLOT": "ÉTAT ENREGISTRÉ VERS L'EMPLACEMENT",
"LOADED STATE FROM SLOT": "ÉTAT CHARGÉ À PARTIR DE L'EMPLACEMENT",
"SET SAVE STATE SLOT TO": "DÉFINIR L'EMPLACEMENT DE L'ÉTAT ENREGISTRÉ À",
"Network Error": "Erreur réseau",
"Submit": "Soumettre",
"Description": "Description",
"Code": "Code",
"Add Cheat Code": "Ajouter un code de triche",
"Leave Room": "Sortir du salon",
"Password": "Mot de passe",
"Password (optional)": "Mot de passe (facultatif)",
"Max Players": "Nombre maximal de joueurs",
"Room Name": "Nom du salon",
"Join": "Rejoindre",
"Player Name": "Nom du joueur",
"Set Player Name": "Définir le nom du joueur",
"Left Handed Mode": "Mode gaucher",
"Virtual Gamepad": "Manette de jeu virtuelle",
"Disk": "Disque",
"Press Keyboard": "Appuyez sur le clavier",
"INSERT COIN": "INSÉRER UNE PIÈCE",
"Remove": "Retirer",
"LOADED STATE FROM BROWSER": "ÉTAT CHARGÉ À PARTIR DU NAVIGATEUR",
"SAVED STATE TO BROWSER": "ÉTAT ENREGISTRÉ DANS LE NAVIGATEUR",
"Join the discord": "Rejoindre le serveur Discord",
"View on GitHub": "Afficher sur GitHub",
"Failed to start game": "Échec au démarrage du jeu",
"Download Game BIOS": "Téléchargement du BIOS du jeu...",
"Decompress Game BIOS": "Décompression du BIOS du jeu...",
"Download Game Parent": "Téléchargement du jeu parent...",
"Decompress Game Parent": "Décompression du jeu parent...",
"Download Game Patch": "Téléchargement du correctif du jeu...",
"Decompress Game Patch": "Décompression du correctif du jeu...",
"Download Game State": "Téléchargement de l'état enregistré...",
"Check console": "Vérifier la console",
"Error for site owner": "Erreur pour le propriétaire du site",
"EmulatorJS": "EmulatorJS",
"Clear All": "Effacer tout",
"Take Screenshot": "Prendre une capture d'écran",
"Start Screen Recording": "Démarrer l'enregistrement de l'écran",
"Stop Screen Recording": "Arrêter l'enregistrement de l'écran",
"Quick Save": "Enregistrement rapide",
"Quick Load": "Chargement rapide",
"REWIND": "REMBOBINER",
"Rewind Enabled (requires restart)": "Rembobinage activé (nécessite un redémarrage)",
"Rewind Granularity": "Granularité du rembobinage",
"Slow Motion Ratio": "Vitesse du ralenti",
"Slow Motion": "Au ralenti",
"Home": "Accueil",
"EmulatorJS License": "Licence EmulatorJS",
"RetroArch License": "Licence RetroArch",
"This project is powered by": "Ce projet est propulsé par",
"View the RetroArch license here": "Consulter la licence de RetroArch",
"SLOW MOTION": "AU RALENTI",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "HAUT",
"DOWN": "BAS",
"LEFT": "GAUCHE",
"RIGHT": "DROITE",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "MANCHE HAUT",
"STICK DOWN": "MANCHE BAS",
"STICK LEFT": "MANCHE GAUCHE",
"STICK RIGHT": "MANCHE DROITE",
"C-PAD UP": "CROIX HAUT",
"C-PAD DOWN": "CROIX BAS",
"C-PAD LEFT": "CROIX GAUCHE",
"C-PAD RIGHT": "CROIX DROITE",
"MICROPHONE": "MICROPHONE",
"BUTTON 1 / START": "BOUTON 1 / START",
"BUTTON 2": "BOUTON 2",
"BUTTON": "BOUTON",
"LEFT D-PAD UP": "CROIX G HAUT",
"LEFT D-PAD DOWN": "CROIX G BAS",
"LEFT D-PAD LEFT": "CROIX G GAUCHE",
"LEFT D-PAD RIGHT": "CROIX G DROITE",
"RIGHT D-PAD UP": "CROIX D HAUT",
"RIGHT D-PAD DOWN": "CROIX D BAS",
"RIGHT D-PAD LEFT": "CROIX D GAUCHE",
"RIGHT D-PAD RIGHT": "CROIX D DROITE",
"C": "C",
"MODE": "MODE",
"FIRE": "FIRE",
"RESET": "RESET",
"LEFT DIFFICULTY A": "LEFT DIFFICULTY A",
"LEFT DIFFICULTY B": "LEFT DIFFICULTY B",
"RIGHT DIFFICULTY A": "RIGHT DIFFICULTY A",
"RIGHT DIFFICULTY B": "RIGHT DIFFICULTY A",
"COLOR": "COLOR",
"B/W": "B/W",
"PAUSE": "PAUSE",
"OPTION": "OPTION",
"OPTION 1": "OPTION 1",
"OPTION 2": "OPTION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "MANCHE G HAUT",
"L STICK DOWN": "MANCHE G BAS",
"L STICK LEFT": "MANCHE G GAUCHE",
"L STICK RIGHT": "MANCHE G DROITE",
"R STICK UP": "MANCHE D HAUT",
"R STICK DOWN": "MANCHE D BAS",
"R STICK LEFT": "MANCHE D GAUCHE",
"R STICK RIGHT": "MANCHE D DROITE",
"Start": "START",
"Select": "SELECT",
"Fast": "FAST",
"Slow": "SLOW",
"a": "A",
"b": "B",
"c": "C",
"d": "D",
"e": "E",
"f": "F",
"g": "G",
"h": "H",
"i": "I",
"j": "J",
"k": "K",
"l": "L",
"m": "M",
"n": "N",
"o": "O",
"p": "P",
"q": "Q",
"r": "R",
"s": "S",
"t": "T",
"u": "U",
"v": "V",
"w": "W",
"x": "X",
"y": "Y",
"z": "Z",
"enter": "Entrée",
"escape": "Échap",
"space": "Espace",
"tab": "Tab.",
"backspace": "Retour arrière",
"delete": "Suppr.",
"arrowup": "Flèche vers le haut",
"arrowdown": "Flèche vers le bas",
"arrowleft": "Flèche vers la gauche",
"arrowright": "Flèche vers la droite",
"f1": "F1",
"f2": "F2",
"f3": "F3",
"f4": "F4",
"f5": "F5",
"f6": "F6",
"f7": "F7",
"f8": "F8",
"f9": "F9",
"f10": "F10",
"f11": "F11",
"f12": "F12",
"shift": "Maj",
"control": "Ctrl",
"alt": "Alt",
"meta": "Méta",
"capslock": "Verr. maj",
"insert": "Insér.",
"home": "Début",
"end": "Fin",
"pageup": "Pg préc",
"pagedown": "Pg suiv",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "MANCHE_GAUCHE_X",
"LEFT_STICK_Y": "MANCHE_GAUCHE_Y",
"RIGHT_STICK_X": "MANCHE_DROIT_X",
"RIGHT_STICK_Y": "MANCHE_DROIT_Y",
"LEFT_TRIGGER": "GACHETTE_GAUCHE",
"RIGHT_TRIGGER": "GACHETTE_DROITE",
"A_BUTTON": "BOUTON_A",
"B_BUTTON": "BOUTON_B",
"X_BUTTON": "BOUTON_X",
"Y_BUTTON": "BOUTON_Y",
"START_BUTTON": "BOUTON_START",
"SELECT_BUTTON": "BOUTON_SELECT",
"L1_BUTTON": "BOUTON_L1",
"R1_BUTTON": "BOUTON_R1",
"L2_BUTTON": "BOUTON_L2",
"R2_BUTTON": "BOUTON_R2",
"LEFT_THUMB_BUTTON": "BOUTON_MANCHE_GAUCHE",
"RIGHT_THUMB_BUTTON": "BOUTON_MANCHE_DROIT",
"DPAD_UP": "CROIX_HAUT",
"DPAD_DOWN": "CROIX_BAS",
"DPAD_LEFT": "CROIX_GAUCHE",
"DPAD_RIGHT": "CROIX_DROITE",
"Disks": "Disques",
"Exit EmulatorJS": "Quitter EmulatorJS",
"BUTTON_1": "BOUTON_1",
"BUTTON_2": "BOUTON_2",
"BUTTON_3": "BOUTON_3",
"BUTTON_4": "BOUTON_4",
"up arrow": "Flèche haut",
"down arrow": "Flèche bas",
"left arrow": "Flèche gauche",
"right arrow": "Flèche droite",
"LEFT_TOP_SHOULDER": "BOUTON_EPAULE_GAUCHE",
"RIGHT_TOP_SHOULDER": "BOUTON_EPAULE_DROITE",
"CRT beam": "CRT beam",
"CRT caligari": "CRT caligari",
"CRT lottes": "CRT lottes",
"CRT yeetron": "CRT yeetron",
"CRT zfast": "CRT zfast",
"SABR": "SABR",
"Bicubic": "Bicubique",
"Mix frames": "Mix frames",
"WebGL2": "WebGL2",
"Requires restart": "Redémarrage requis",
"VSync": "VSync",
"Video Rotation": "Rotation vidéo",
"Rewind Enabled (Requires restart)": "Rembobinage activé (Redémarrage requis)",
"System Save interval": "Intervalle de sauvegarde du système",
"Menu Bar Button": "Bouton de la barre de menu",
"visible": "visible",
"hidden": "masqué"
}

View File

@ -99,8 +99,8 @@
"Press Keyboard": "कीबोर्ड दबाएँ",
"INSERT COIN": "सिक्का डालें",
"Remove": "निकालना",
"SAVE LOADED FROM BROWSER": "ब्राउज़र से लोड किया गया सेव करें",
"SAVE SAVED TO BROWSER": "ब्राउज़र में सहेजा गया सहेजें",
"LOADED STATE FROM BROWSER": "ब्राउज़र से लोड किया गया राज्य",
"SAVED STATE TO BROWSER": "राज्य को ब्राउज़र में सहेजा गया",
"Join the discord": "कलह में शामिल हों",
"View on GitHub": "GitHub पर देखें",
"Failed to start game": "गेम प्रारंभ करने में विफल",
@ -298,4 +298,4 @@
"DPAD_DOWN": "डीपीएडी_डाउन",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "डीपीएडी_दाएँ"
}
}

302
data/localization/it.json Normal file
View File

@ -0,0 +1,302 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Riavvia",
"Pause": "Pausa",
"Play": "Play",
"Save State": "Salva Stato",
"Load State": "Carica Stato",
"Control Settings": "Impostazioni Controlli",
"Cheats": "Trucchi",
"Cache Manager": "Gestore Cache",
"Export Save File": "Esporta File Salvataggio",
"Import Save File": "Importa File Salvataggio",
"Netplay": "Netplay",
"Mute": "Disattiva Volume",
"Unmute": "Riattiva Volume",
"Settings": "Impostazioni",
"Context Menu": "Menu contestuale",
"Enter Fullscreen": "Schermo Intero",
"Exit Fullscreen": "Esci Schermo Intero",
"Reset": "Reset",
"Clear": "Pulisci",
"Close": "Chiudi",
"QUICK SAVE STATE": "SALVA STATO VELOCE",
"QUICK LOAD STATE": "CARICA STATO VELOCE",
"CHANGE STATE SLOT": "CAMBIA SLOT STATO",
"FAST FORWARD": "AVANZA VELOCE",
"Player": "Player",
"Connected Gamepad": "Gamepad Connesso",
"Gamepad": "Gamepad",
"Keyboard": "Tastiera",
"Set": "Imposta",
"Add Cheat": "Aggiungi Trucco",
"Create a Room": "Crea una Stanza",
"Rooms": "Stanze",
"Start Game": "Avvia Gioco",
"Loading...": "Caricamento...",
"Download Game Core": "Scaricamento Core Gioco",
"Decompress Game Core": "Decompressione Core Gioco",
"Download Game Data": "Scaricamento Dati Gioco",
"Decompress Game Data": "Decompressione Dati Gioco",
"Shaders": "Shaders",
"Disabled": "Disabilitato",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT easymode",
"CRT aperture": "CRT aperture",
"CRT geom": "CRT geom",
"CRT mattias": "CRT mattias",
"FPS": "FPS",
"show": "mostra",
"hide": "nascondi",
"Fast Forward Ratio": "Rapporto Avanzamento Veloce",
"Fast Forward": "Avanzamento Veloce",
"Enabled": "Abilitato",
"Save State Slot": "Salva Slot Stato",
"Save State Location": "Salva Posizione Stato",
"Download": "Scarica",
"Keep in Browser": "Tieni nel Browser",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Basso",
"High": "Alto",
"Very High": "Molto Alto",
"None": "Nessuno",
"Player 1": "Giocatore 1",
"Player 2": "Giocatore 2",
"Both": "Entrambi",
"SAVED STATE TO SLOT": "STATO SALVATO SU SLOT",
"LOADED STATE FROM SLOT": "STATO CARICATO DA SLOT",
"SET SAVE STATE SLOT TO": "IMPOSTA SLOT SALVATAGGIO STATO SU",
"Network Error": "Errore di Rete",
"Submit": "Invia",
"Description": "Descrizione",
"Code": "Codice",
"Add Cheat Code": "Aggiungi Trucco",
"Leave Room": "Lascia Stanza",
"Password": "Password",
"Password (optional)": "Password (opzionale)",
"Max Players": "Giocatori Massimi",
"Room Name": "Nome Stanza",
"Join": "Entra",
"Player Name": "Nome Giocatore",
"Set Player Name": "Imposta Nome Giocatore",
"Left Handed Mode": "Modalità per mancini",
"Virtual Gamepad": "Gamepad Virtuale",
"Disk": "Disco",
"Press Keyboard": "Premi Tastiera",
"INSERT COIN": "INSERISCI GETTONE",
"Remove": "Rimuovi",
"LOADED STATE FROM BROWSER": "STATO CARICATO DAL BROWSER",
"SAVED STATE TO BROWSER": "STATO SALVATO NEL BROWSER",
"Join the discord": "Entra nel Discord",
"View on GitHub": "Vedi su Github",
"Failed to start game": "Avvio del gioco fallito",
"Download Game BIOS": "Scaricamento BIOS Gioco",
"Decompress Game BIOS": "Decompressione BIOS Gioco",
"Download Game Parent": "Scaricamento Parent Gioco",
"Decompress Game Parent": "Decompressione Parent Gioco",
"Download Game Patch": "Scaricamento Patch Gioco",
"Decompress Game Patch": "Decompressione Patch Gioco",
"Download Game State": "Scarica Stato Gioco",
"Check console": "Controlla la console",
"Error for site owner": "Errore per proprietario sito",
"EmulatorJS": "EmulatorJS",
"Clear All": "Pulisci Tutto",
"Take Screenshot": "Acquisisci Screenshot",
"Quick Save": "Caricamento Veloce",
"Quick Load": "Salvataggio Veloce",
"REWIND": "RIAVVOLGI",
"Rewind Enabled (requires restart)": "Riavvolgimento Abilitato (richiede riavvio)",
"Rewind Granularity": "Granularità Riavvolgimento",
"Slow Motion Ratio": "Rapporto Slow Motion",
"Slow Motion": "Slow Motion",
"Home": "Home",
"EmulatorJS License": "Licenza EmulatorJS",
"RetroArch License": "Licenza RetroArch",
"SLOW MOTION": "SLOW MOTION",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "SU",
"DOWN": "GIU",
"LEFT": "SINISTRA",
"RIGHT": "DESTRA",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "STICK SU",
"STICK DOWN": "STICK GIU",
"STICK LEFT": "STICK SINISTRA",
"STICK RIGHT": "STICK DESTRA",
"C-PAD UP": "C-PAD SU",
"C-PAD DOWN": "C-PAD GIU",
"C-PAD LEFT": "C-PAD DESTRA",
"C-PAD RIGHT": "C-PAD SINISTRA",
"MICROPHONE": "MICROFONO",
"BUTTON 1 / START": "PULSANTE 1 / START",
"BUTTON 2": "PULSANTE 2",
"BUTTON": "PULSANTE",
"LEFT D-PAD UP": "D-PAD SINISTRO SU",
"LEFT D-PAD DOWN": "D-PAD SINISTRO GIU",
"LEFT D-PAD LEFT": "D-PAD SINISTRO SINISTRA",
"LEFT D-PAD RIGHT": "D-PAD SINISTRO DESTRA",
"RIGHT D-PAD UP": "D-PAD DESTRO SU",
"RIGHT D-PAD DOWN": "D-PAD DESTRO GIU",
"RIGHT D-PAD LEFT": "D-PAD DESTRO SINISTRA",
"RIGHT D-PAD RIGHT": "D-PAD DESTRO DESTRA",
"C": "C",
"MODE": "MODO",
"FIRE": "FIRE",
"RESET": "RESET",
"LEFT DIFFICULTY A": "SINISTRA DIFFICOLTA A",
"LEFT DIFFICULTY B": "SINISTRA DIFFICOLTA B",
"RIGHT DIFFICULTY A": "DESTRA DIFFICOLTA A",
"RIGHT DIFFICULTY B": "DESTRA DIFFICOLTA B",
"COLOR": "COLORE",
"B/W": "B/N",
"PAUSE": "PAUSA",
"OPTION": "OPTZIONE",
"OPTION 1": "OPTZIONE 1",
"OPTION 2": "OPTZIONE 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L STICK SU",
"L STICK DOWN": "L STICK GIU",
"L STICK LEFT": "L STICK SINISTRA",
"L STICK RIGHT": "L STICK DESTRA",
"R STICK UP": "R STICK SU",
"R STICK DOWN": "R STICK GIU",
"R STICK LEFT": "R STICK SINISTRA",
"R STICK RIGHT": "R STICK DESTRA",
"Start": "Start",
"Select": "Select",
"Fast": "Veloce",
"Slow": "Lento",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "invio",
"escape": "esc",
"space": "spazio",
"tab": "tab",
"backspace": "backspace",
"delete": "cancella",
"arrowup": "frecciasu",
"arrowdown": "frecciagiu",
"arrowleft": "frecciasinistra",
"arrowright": "frecciadestra",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift",
"control": "control",
"alt": "alt",
"meta": "meta",
"capslock": "capslock",
"insert": "insert",
"home": "home",
"end": "end",
"pageup": "pageup",
"pagedown": "pagedown",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "STICK_SINISTRO_X",
"LEFT_STICK_Y": "STICK_SINISTRO_Y",
"RIGHT_STICK_X": "STICK_DESTRO_X",
"RIGHT_STICK_Y": "STICK_DESTRO_Y",
"LEFT_TRIGGER": "TRIGGER_SINISTRO",
"RIGHT_TRIGGER": "TRIGGER_DESTRO",
"A_BUTTON": "PULSANTE_A",
"B_BUTTON": "PULSANTE_B",
"X_BUTTON": "PULSANTE_X",
"Y_BUTTON": "PULSANTE_Y",
"START_BUTTON": "PULSANTE_START",
"SELECT_BUTTON": "PULSANTE_SELECT",
"L1_BUTTON": "PULSANTE_L1",
"R1_BUTTON": "PULSANTE_R1",
"L2_BUTTON": "PULSANTE_L2",
"R2_BUTTON": "PULSANTE_R2",
"LEFT_THUMB_BUTTON": "PULSANTE_L3",
"RIGHT_THUMB_BUTTON": "PULSANTE_R3",
"DPAD_UP": "DPAD_SU",
"DPAD_DOWN": "DPAD_GIU",
"DPAD_LEFT": "DPAD_SINISTRA",
"DPAD_RIGHT": "DPAD_DESTRA"
}

View File

@ -1,301 +0,0 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "再起動",
"Pause": "一時停止",
"Play": "遊ぶ",
"Save State": "状態を保存",
"Load State": "ロード状態",
"Control Settings": "コントロール設定",
"Cheats": "チート",
"Cache Manager": "キャッシュマネージャー",
"Export Save File": "保存ファイルのエクスポート",
"Import Save File": "保存ファイルのインポート",
"Netplay": "ネットプレイ",
"Mute": "ミュート",
"Unmute": "ミュートを解除する",
"Settings": "設定",
"Enter Fullscreen": "全画面表示に入る",
"Exit Fullscreen": "全画面表示を終了する",
"Reset": "リセット",
"Clear": "クリア",
"Close": "近い",
"QUICK SAVE STATE": "状態のクイック保存",
"QUICK LOAD STATE": "クイックロード状態",
"CHANGE STATE SLOT": "状態スロットの変更",
"FAST FORWARD": "早送り",
"Player": "プレーヤー",
"Connected Gamepad": "接続されたゲームパッド",
"Gamepad": "ゲームパッド",
"Keyboard": "キーボード",
"Set": "セット",
"Add Cheat": "チートの追加",
"Create a Room": "ルームを作成する",
"Rooms": "部屋",
"Start Game": "ゲームをスタート",
"Loading...": "読み込み中...",
"Download Game Core": "ゲームコアをダウンロード",
"Decompress Game Core": "ゲームコアを解凍する",
"Download Game Data": "ゲームデータのダウンロード",
"Decompress Game Data": "ゲームデータを解凍する",
"Shaders": "シェーダ",
"Disabled": "無効",
"2xScaleHQ": "2xスケール本社",
"4xScaleHQ": "4xスケール本社",
"CRT easymode": "CRTイージーモード",
"CRT aperture": "CRTの絞り",
"CRT geom": "CRT ジオム",
"CRT mattias": "CRT マティアス",
"FPS": "FPS",
"show": "見せる",
"hide": "隠れる",
"Fast Forward Ratio": "早送り率",
"Fast Forward": "早送り",
"Enabled": "有効",
"Save State Slot": "状態保存スロット",
"Save State Location": "状態の保存場所",
"Download": "ダウンロード",
"Keep in Browser": "ブラウザ内に保持",
"Auto": "自動",
"NTSC": "NTSC",
"PAL": "パル",
"Dendy": "デンディ",
"8:7 PAR": "8:7 パー",
"4:3": "4:3",
"Low": "低い",
"High": "高い",
"Very High": "すごく高い",
"None": "なし",
"Player 1": "プレイヤー 1",
"Player 2": "プレイヤー2",
"Both": "両方",
"SAVED STATE TO SLOT": "状態をスロットに保存しました",
"LOADED STATE FROM SLOT": "スロットからロードされた状態",
"SET SAVE STATE SLOT TO": "状態保存スロットを次のように設定します",
"Network Error": "ネットワークエラー",
"Submit": "提出する",
"Description": "説明",
"Code": "コード",
"Add Cheat Code": "チートコードを追加する",
"Leave Room": "部屋を出る",
"Password": "パスワード",
"Password (optional)": "パスワード (オプション)",
"Max Players": "最大プレイヤー数",
"Room Name": "部屋の名前",
"Join": "参加する",
"Player Name": "プレーヤの名前",
"Set Player Name": "プレイヤー名の設定",
"Left Handed Mode": "左利きモード",
"Virtual Gamepad": "仮想ゲームパッド",
"Disk": "ディスク",
"Press Keyboard": "キーボードを押す",
"INSERT COIN": "コインを入れる",
"Remove": "取り除く",
"SAVE LOADED FROM BROWSER": "ブラウザからロードして保存",
"SAVE SAVED TO BROWSER": "保存 ブラウザに保存",
"Join the discord": "ディスコードに参加する",
"View on GitHub": "GitHub で見る",
"Failed to start game": "ゲームの開始に失敗しました",
"Download Game BIOS": "ゲーム BIOS をダウンロードする",
"Decompress Game BIOS": "ゲーム BIOS を解凍する",
"Download Game Parent": "ゲームの親をダウンロード",
"Decompress Game Parent": "ゲームの親を解凍する",
"Download Game Patch": "ゲームパッチをダウンロード",
"Decompress Game Patch": "ゲームパッチを解凍する",
"Download Game State": "ゲームステートのダウンロード",
"Check console": "コンソールを確認してください",
"Error for site owner": "サイト所有者のエラー",
"EmulatorJS": "エミュレータJS",
"Clear All": "すべてクリア",
"Take Screenshot": "スクリーンショットを撮ります",
"Quick Save": "クイックセーブ",
"Quick Load": "クイックロード",
"REWIND": "巻き戻し",
"Rewind Enabled (requires restart)": "巻き戻しが有効 (再起動が必要)",
"Rewind Granularity": "巻き戻し粒度",
"Slow Motion Ratio": "スローモーション比率",
"Slow Motion": "スローモーション",
"Home": "家",
"EmulatorJS License": "エミュレータJSライセンス",
"RetroArch License": "RetroArch ライセンス",
"SLOW MOTION": "スローモーション",
"A": "あ",
"B": "B",
"SELECT": "選択する",
"START": "始める",
"UP": "上",
"DOWN": "下",
"LEFT": "左",
"RIGHT": "右",
"X": "バツ",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "上に突き出る",
"STICK DOWN": "スティックダウン",
"STICK LEFT": "左スティック",
"STICK RIGHT": "右スティック",
"C-PAD UP": "Cパッドアップ",
"C-PAD DOWN": "C-パッドを下へ",
"C-PAD LEFT": "C-パッド左",
"C-PAD RIGHT": "Cパッド右",
"MICROPHONE": "マイクロフォン",
"BUTTON 1 / START": "ボタン 1 / スタート",
"BUTTON 2": "ボタン2",
"BUTTON": "ボタン",
"LEFT D-PAD UP": "左方向パッドを上に",
"LEFT D-PAD DOWN": "左方向パッド下",
"LEFT D-PAD LEFT": "左十字キー左",
"LEFT D-PAD RIGHT": "左十字キー右",
"RIGHT D-PAD UP": "右方向パッド上",
"RIGHT D-PAD DOWN": "右方向パッド下",
"RIGHT D-PAD LEFT": "右十字キー左",
"RIGHT D-PAD RIGHT": "右十字キー右",
"C": "C",
"MODE": "モード",
"FIRE": "火",
"RESET": "リセット",
"LEFT DIFFICULTY A": "左の難易度A",
"LEFT DIFFICULTY B": "左の難易度B",
"RIGHT DIFFICULTY A": "右の難易度A",
"RIGHT DIFFICULTY B": "右の難易度B",
"COLOR": "色",
"B/W": "白黒",
"PAUSE": "一時停止",
"OPTION": "オプション",
"OPTION 1": "オプション1",
"OPTION 2": "オプション 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "Lスティックアップ",
"L STICK DOWN": "Lスティックダウン",
"L STICK LEFT": "Lスティック左",
"L STICK RIGHT": "Lスティック右",
"R STICK UP": "Rスティックアップ",
"R STICK DOWN": "Rスティックダウン",
"R STICK LEFT": "Rスティック左",
"R STICK RIGHT": "R右スティック",
"Start": "始める",
"Select": "選択する",
"Fast": "速い",
"Slow": "遅い",
"a": "ある",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "私",
"j": "j",
"k": "k",
"l": "私",
"m": "メートル",
"n": "n",
"o": "ああ",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "あなた",
"v": "v",
"w": "w",
"x": "バツ",
"y": "y",
"z": "z",
"enter": "入力",
"escape": "逃げる",
"space": "空間",
"tab": "タブ",
"backspace": "バックスペース",
"delete": "消去",
"arrowup": "アローアップ",
"arrowdown": "矢印",
"arrowleft": "矢印左",
"arrowright": "右矢印",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "シフト",
"control": "コントロール",
"alt": "代替",
"meta": "メタ",
"capslock": "キャップスロック",
"insert": "入れる",
"home": "家",
"end": "終わり",
"pageup": "ページアップ",
"pagedown": "ページダウン",
"!": "",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "】",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "」",
",": "、",
".": "。",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "左スティック_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "右スティック_Y",
"LEFT_TRIGGER": "LEFT_TRIGGER",
"RIGHT_TRIGGER": "右トリガー",
"A_BUTTON": "ボタン",
"B_BUTTON": "B_ボタン",
"X_BUTTON": "X_ボタン",
"Y_BUTTON": "Y_ボタン",
"START_BUTTON": "スタートボタン",
"SELECT_BUTTON": "SELECT_BUTTON",
"L1_BUTTON": "L1_ボタン",
"R1_BUTTON": "R1_ボタン",
"L2_BUTTON": "L2_ボタン",
"R2_BUTTON": "R2_ボタン",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}

301
data/localization/ja.json Normal file
View File

@ -0,0 +1,301 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "リセット",
"Pause": "一時停止",
"Play": "再開",
"Save State": "セーブステート",
"Load State": "ロードステート",
"Control Settings": "キー設定",
"Cheats": "チート",
"Cache Manager": "キャッシュマネージャー",
"Export Save File": "セーブデータをエクスポート",
"Import Save File": "セーブデータをインポート",
"Netplay": "ネットプレイ",
"Mute": "ミュート",
"Unmute": "ミュート解除",
"Settings": "設定",
"Enter Fullscreen": "全画面表示",
"Exit Fullscreen": "全画面表示を終了",
"Reset": "リセット",
"Clear": "クリア",
"Close": "閉じる",
"QUICK SAVE STATE": "クイックセーブ",
"QUICK LOAD STATE": "クイックロード",
"CHANGE STATE SLOT": "セーブスロットの変更",
"FAST FORWARD": "早送り",
"Player": "プレイヤー",
"Connected Gamepad": "接続されたゲームパッド",
"Gamepad": "ゲームパッド",
"Keyboard": "キーボード",
"Set": "セット",
"Add Cheat": "チートを追加",
"Create a Room": "部屋を作成",
"Rooms": "部屋",
"Start Game": "ゲームスタート",
"Loading...": "読み込み中...",
"Download Game Core": "ゲームコアをダウンロード中",
"Decompress Game Core": "ゲームコアを解凍中",
"Download Game Data": "ゲームデータのダウンロード中",
"Decompress Game Data": "ゲームデータを解凍中",
"Shaders": "シェーダー",
"Disabled": "無効",
"2xScaleHQ": "2xスケール",
"4xScaleHQ": "4xスケール",
"CRT easymode": "CRT (イージーモード)",
"CRT aperture": "CRT (アパーチャ)",
"CRT geom": "CRT (ジオメ)",
"CRT mattias": "CRT (Mattias)",
"FPS": "FPS",
"show": "表示",
"hide": "非表示",
"Fast Forward Ratio": "早送りの速度",
"Fast Forward": "早送り",
"Enabled": "有効",
"Save State Slot": "セーブステートのスロット",
"Save State Location": "セーブステートの保存場所",
"Download": "ダウンロード",
"Keep in Browser": "ブラウザ内に保持",
"Auto": "自動",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "低",
"High": "高",
"Very High": "最高",
"None": "なし",
"Player 1": "プレイヤー1",
"Player 2": "プレイヤー2",
"Both": "両方",
"SAVED STATE TO SLOT": "データをセーブしました(スロット:",
"LOADED STATE FROM SLOT": "データをロードしました(スロット:",
"SET SAVE STATE SLOT TO": "保存スロットを次に設定します(スロット:",
"Network Error": "ネットワークエラー",
"Submit": "適用",
"Description": "説明",
"Code": "コード",
"Add Cheat Code": "チートコードを追加する",
"Leave Room": "部屋を退出する",
"Password": "パスワード",
"Password (optional)": "パスワード (オプション)",
"Max Players": "最大プレイヤー数",
"Room Name": "部屋の名前",
"Join": "参加する",
"Player Name": "プレイヤー名",
"Set Player Name": "プレイヤー名の設定",
"Left Handed Mode": "左利きモード",
"Virtual Gamepad": "仮想ゲームパッド",
"Disk": "ディスク",
"Press Keyboard": "キーボードを押す",
"INSERT COIN": "コインを入れる",
"Remove": "削除",
"LOADED STATE FROM BROWSER": "ブラウザからのロード状態",
"SAVED STATE TO BROWSER": "状態をブラウザに保存",
"Join the discord": "Discordに参加",
"View on GitHub": "GitHub で見る",
"Failed to start game": "ゲームの開始に失敗しました",
"Download Game BIOS": "ゲームのBIOSをダウンロード中",
"Decompress Game BIOS": "ゲームのBIOSを解凍中",
"Download Game Parent": "ゲームの親をダウンロード中",
"Decompress Game Parent": "ゲームの親を解凍中",
"Download Game Patch": "ゲームパッチをダウンロード中",
"Decompress Game Patch": "ゲームパッチを解凍中",
"Download Game State": "ゲームステートのダウンロード中",
"Check console": "コンソールを確認してください",
"Error for site owner": "サイト所有者のエラー",
"EmulatorJS": "エミュレータJS",
"Clear All": "すべてクリア",
"Take Screenshot": "スクリーンショットを撮影",
"Quick Save": "クイックセーブ",
"Quick Load": "クイックロード",
"REWIND": "巻き戻し",
"Rewind Enabled (requires restart)": "巻き戻しが有効 (再起動が必要です)",
"Rewind Granularity": "巻き戻し粒度",
"Slow Motion Ratio": "スローモーション比率",
"Slow Motion": "スローモーション",
"Home": "ホーム",
"EmulatorJS License": "エミュレータJSのライセンス",
"RetroArch License": "RetroArch ライセンス",
"SLOW MOTION": "スローモーション",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "上",
"DOWN": "下",
"LEFT": "左",
"RIGHT": "右",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "スティック上",
"STICK DOWN": "スティック下",
"STICK LEFT": "スティック左",
"STICK RIGHT": "スティック右",
"C-PAD UP": "Cボタン上",
"C-PAD DOWN": "Cボタン下",
"C-PAD LEFT": "Cボタン左",
"C-PAD RIGHT": "Cボタン右",
"MICROPHONE": "マイク",
"BUTTON 1 / START": "ボタン1 / スタート",
"BUTTON 2": "ボタン2",
"BUTTON": "ボタン",
"LEFT D-PAD UP": "十字キー上",
"LEFT D-PAD DOWN": "十字キー下",
"LEFT D-PAD LEFT": "十字キー左",
"LEFT D-PAD RIGHT": "十字キー右",
"RIGHT D-PAD UP": "右十字キー上",
"RIGHT D-PAD DOWN": "右十字キー下",
"RIGHT D-PAD LEFT": "右十字キー左",
"RIGHT D-PAD RIGHT": "右十字キー右",
"C": "C",
"MODE": "モード",
"FIRE": "発射",
"RESET": "リセット",
"LEFT DIFFICULTY A": "左難易度A",
"LEFT DIFFICULTY B": "左難易度B",
"RIGHT DIFFICULTY A": "右難易度A",
"RIGHT DIFFICULTY B": "右難易度B",
"COLOR": "カラー",
"B/W": "白黒",
"PAUSE": "一時停止",
"OPTION": "オプション",
"OPTION 1": "オプション1",
"OPTION 2": "オプション2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "左スティック上",
"L STICK DOWN": "左スティック下",
"L STICK LEFT": "左スティック左",
"L STICK RIGHT": "左スティック右",
"R STICK UP": "右スティック上",
"R STICK DOWN": "右スティック下",
"R STICK LEFT": "右スティック左",
"R STICK RIGHT": "右スティック右",
"Start": "Start",
"Select": "Select",
"Fast": "Fast",
"Slow": "Slow",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "enter",
"escape": "escape",
"space": "space",
"tab": "tab",
"backspace": "backspace",
"delete": "delete",
"arrowup": "上矢印",
"arrowdown": "下矢印",
"arrowleft": "左矢印",
"arrowright": "右矢印",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift",
"control": "control",
"alt": "alt",
"meta": "meta",
"capslock": "capslock",
"insert": "insert",
"home": "home",
"end": "end",
"pageup": "pageup",
"pagedown": "pagedown",
"!": "",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "左スティック(横)",
"LEFT_STICK_Y": "左スティック(縦)",
"RIGHT_STICK_X": "右スティック(横)",
"RIGHT_STICK_Y": "右スティック(縦)",
"LEFT_TRIGGER": "左トリガー",
"RIGHT_TRIGGER": "右トリガー",
"A_BUTTON": "Aボタン",
"B_BUTTON": "Bボタン",
"X_BUTTON": "Xボタン",
"Y_BUTTON": "Yボタン",
"START_BUTTON": "スタートボタン",
"SELECT_BUTTON": "セレクトボタン",
"L1_BUTTON": "L1_ボタン",
"R1_BUTTON": "R1_ボタン",
"L2_BUTTON": "L2_ボタン",
"R2_BUTTON": "R2_ボタン",
"LEFT_THUMB_BUTTON": "左スティック押し込み",
"RIGHT_THUMB_BUTTON": "右スティック押し込み",
"DPAD_UP": "十字キー上",
"DPAD_DOWN": "十字キー下",
"DPAD_LEFT": "十字キー左",
"DPAD_RIGHT": "十字キー右"
}

View File

@ -99,8 +99,8 @@
"Press Keyboard": "Pencet Keyboard",
"INSERT COIN": "INSERT COIN",
"Remove": "Mbusak",
"SAVE LOADED FROM BROWSER": "Simpen dimuat saka BROWSER",
"SAVE SAVED TO BROWSER": "SAVE disimpen menyang BROWSER",
"LOADED STATE FROM BROWSER": "NEGARA YANG DIMUAT DARI BROWSER",
"SAVED STATE TO BROWSER": "NEGARA TERSIMPAN KE BROWSER",
"Join the discord": "Melu discord",
"View on GitHub": "Deleng ing GitHub",
"Failed to start game": "Gagal miwiti game",
@ -298,4 +298,4 @@
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}
}

View File

@ -1,301 +0,0 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "삼",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "재시작",
"Pause": "정지시키다",
"Play": "놀다",
"Save State": "상태 저장",
"Load State": "로드 상태",
"Control Settings": "제어 설정",
"Cheats": "치트",
"Cache Manager": "캐시 관리자",
"Export Save File": "저장 파일 내보내기",
"Import Save File": "저장 파일 가져오기",
"Netplay": "넷플레이",
"Mute": "무음",
"Unmute": "음소거 해제",
"Settings": "설정",
"Enter Fullscreen": "전체 화면 시작",
"Exit Fullscreen": "전체화면 종료",
"Reset": "초기화",
"Clear": "분명한",
"Close": "닫다",
"QUICK SAVE STATE": "빠른 저장 상태",
"QUICK LOAD STATE": "빠른 로드 상태",
"CHANGE STATE SLOT": "상태 슬롯 변경",
"FAST FORWARD": "빨리 감기",
"Player": "플레이어",
"Connected Gamepad": "연결된 게임패드",
"Gamepad": "게임패드",
"Keyboard": "건반",
"Set": "세트",
"Add Cheat": "치트 추가",
"Create a Room": "방 만들기",
"Rooms": "객실",
"Start Game": "게임을 시작하다",
"Loading...": "로드 중...",
"Download Game Core": "게임 코어 다운로드",
"Decompress Game Core": "게임 코어 압축 해제",
"Download Game Data": "게임 데이터 다운로드",
"Decompress Game Data": "게임 데이터 압축 해제",
"Shaders": "셰이더",
"Disabled": "장애가 있는",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "브라운관 이지모드",
"CRT aperture": "CRT 조리개",
"CRT geom": "브라운관 검",
"CRT mattias": "CRT 마티아스",
"FPS": "FPS",
"show": "보여주다",
"hide": "숨다",
"Fast Forward Ratio": "빨리 감기 비율",
"Fast Forward": "빨리 감기",
"Enabled": "사용",
"Save State Slot": "상태 슬롯 저장",
"Save State Location": "상태 위치 저장",
"Download": "다운로드",
"Keep in Browser": "브라우저에 보관",
"Auto": "자동",
"NTSC": "NTSC",
"PAL": "단짝",
"Dendy": "덴디",
"8:7 PAR": "8:7 동점",
"4:3": "4:3",
"Low": "낮은",
"High": "높은",
"Very High": "매우 높음",
"None": "없음",
"Player 1": "플레이어 1",
"Player 2": "플레이어 2",
"Both": "둘 다",
"SAVED STATE TO SLOT": "슬롯에 저장된 상태",
"LOADED STATE FROM SLOT": "슬롯에서 로드된 상태",
"SET SAVE STATE SLOT TO": "저장 상태 슬롯을 다음으로 설정",
"Network Error": "네트워크 오류",
"Submit": "제출하다",
"Description": "설명",
"Code": "암호",
"Add Cheat Code": "치트 코드 추가",
"Leave Room": "방 나가기",
"Password": "비밀번호",
"Password (optional)": "비밀번호(선택 사항)",
"Max Players": "최대 플레이어",
"Room Name": "방 이름",
"Join": "가입하다",
"Player Name": "선수 이름",
"Set Player Name": "플레이어 이름 설정",
"Left Handed Mode": "왼손잡이 모드",
"Virtual Gamepad": "가상 게임패드",
"Disk": "디스크",
"Press Keyboard": "키보드 누르기",
"INSERT COIN": "동전을 넣으세요",
"Remove": "제거하다",
"SAVE LOADED FROM BROWSER": "브라우저에서 불러온 저장",
"SAVE SAVED TO BROWSER": "저장 브라우저에 저장됨",
"Join the discord": "불화에 동참하십시오",
"View on GitHub": "GitHub에서 보기",
"Failed to start game": "게임을 시작하지 못했습니다.",
"Download Game BIOS": "게임 BIOS 다운로드",
"Decompress Game BIOS": "게임 BIOS 압축 해제",
"Download Game Parent": "게임 부모 다운로드",
"Decompress Game Parent": "게임 부모 압축 해제",
"Download Game Patch": "게임 패치 다운로드",
"Decompress Game Patch": "게임 패치 압축 해제",
"Download Game State": "게임 상태 다운로드",
"Check console": "콘솔 확인",
"Error for site owner": "사이트 소유자 오류",
"EmulatorJS": "EmulatorJS",
"Clear All": "모두 지우기",
"Take Screenshot": "스크린 샷을 찍다",
"Quick Save": "빠른 저장",
"Quick Load": "빠른 로드",
"REWIND": "되감기",
"Rewind Enabled (requires restart)": "되감기 활성화됨(다시 시작해야 함)",
"Rewind Granularity": "되감기 세분성",
"Slow Motion Ratio": "슬로우 모션 비율",
"Slow Motion": "느린",
"Home": "집",
"EmulatorJS License": "EmulatorJS 라이선스",
"RetroArch License": "레트로아크 라이선스",
"SLOW MOTION": "느린",
"A": "ㅏ",
"B": "비",
"SELECT": "선택하다",
"START": "시작",
"UP": "위로",
"DOWN": "아래에",
"LEFT": "왼쪽",
"RIGHT": "오른쪽",
"X": "엑스",
"Y": "와이",
"L": "엘",
"R": "아르 자형",
"Z": "지",
"STICK UP": "스틱 업",
"STICK DOWN": "스틱 다운",
"STICK LEFT": "스틱 왼쪽",
"STICK RIGHT": "스틱 오른쪽",
"C-PAD UP": "C 패드 위로",
"C-PAD DOWN": "C패드 다운",
"C-PAD LEFT": "C 패드 왼쪽",
"C-PAD RIGHT": "C 패드 오른쪽",
"MICROPHONE": "마이크로폰",
"BUTTON 1 / START": "버튼 1 / 시작",
"BUTTON 2": "버튼 2",
"BUTTON": "단추",
"LEFT D-PAD UP": "왼쪽 방향 패드 위로",
"LEFT D-PAD DOWN": "왼쪽 방향 패드 아래로",
"LEFT D-PAD LEFT": "왼쪽 방향 패드 왼쪽",
"LEFT D-PAD RIGHT": "왼쪽 방향 패드 오른쪽",
"RIGHT D-PAD UP": "오른쪽 방향 패드 위로",
"RIGHT D-PAD DOWN": "오른쪽 방향 패드 아래로",
"RIGHT D-PAD LEFT": "오른쪽 방향 패드 왼쪽",
"RIGHT D-PAD RIGHT": "오른쪽 방향 패드 오른쪽",
"C": "씨",
"MODE": "방법",
"FIRE": "불",
"RESET": "초기화",
"LEFT DIFFICULTY A": "왼쪽 난이도 A",
"LEFT DIFFICULTY B": "왼쪽 난이도 B",
"RIGHT DIFFICULTY A": "오른쪽 난이도 A",
"RIGHT DIFFICULTY B": "오른쪽 난이도 B",
"COLOR": "색상",
"B/W": "흑백",
"PAUSE": "정지시키다",
"OPTION": "옵션",
"OPTION 1": "옵션 1",
"OPTION 2": "옵션 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L 스틱 업",
"L STICK DOWN": "L 스틱 다운",
"L STICK LEFT": "왼쪽 스틱",
"L STICK RIGHT": "L 오른쪽 스틱",
"R STICK UP": "R 스틱 업",
"R STICK DOWN": "R 스틱 다운",
"R STICK LEFT": "R 스틱 왼쪽",
"R STICK RIGHT": "R 오른쪽 스틱",
"Start": "시작",
"Select": "선택하다",
"Fast": "빠른",
"Slow": "느린",
"a": "ㅏ",
"b": "비",
"c": "씨",
"d": "디",
"e": "이자형",
"f": "에프",
"g": "g",
"h": "시간",
"i": "나",
"j": "제이",
"k": "케이",
"l": "엘",
"m": "중",
"n": "N",
"o": "영형",
"p": "피",
"q": "큐",
"r": "아르 자형",
"s": "에스",
"t": "티",
"u": "유",
"v": "V",
"w": "승",
"x": "엑스",
"y": "와이",
"z": "지",
"enter": "입력하다",
"escape": "탈출하다",
"space": "공간",
"tab": "탭",
"backspace": "역행 키이",
"delete": "삭제",
"arrowup": "화살촉",
"arrowdown": "화살표 방향",
"arrowleft": "왼쪽 화살표",
"arrowright": "오른쪽 화살표",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "옮기다",
"control": "제어",
"alt": "대안",
"meta": "메타",
"capslock": "캡스락",
"insert": "끼워 넣다",
"home": "집",
"end": "끝",
"pageup": "페이지 위로",
"pagedown": "페이지 다운",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "왼쪽_스틱_X",
"LEFT_STICK_Y": "왼쪽_스틱_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "오른쪽_스틱_Y",
"LEFT_TRIGGER": "왼쪽_트리거",
"RIGHT_TRIGGER": "RIGHT_TRIGGER",
"A_BUTTON": "단추",
"B_BUTTON": "B_버튼",
"X_BUTTON": "X_버튼",
"Y_BUTTON": "Y_버튼",
"START_BUTTON": "시작 버튼",
"SELECT_BUTTON": "선택_버튼",
"L1_BUTTON": "L1_버튼",
"R1_BUTTON": "R1_버튼",
"L2_BUTTON": "L2_버튼",
"R2_BUTTON": "R2_버튼",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}

372
data/localization/ko.json Normal file
View File

@ -0,0 +1,372 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "재시작",
"Pause": "일시정지",
"Play": "플레이",
"Save State": "상태 저장하기",
"Load State": "상태 불러오기",
"Control Settings": "컨트롤 설정",
"Cheats": "치트",
"Cache Manager": "캐시 관리자",
"Export Save File": "세이브 파일 내보내기",
"Import Save File": "세이브 파일 가져오기",
"Netplay": "넷플레이",
"Mute": "무음",
"Unmute": "음소거 해제",
"Settings": "설정",
"Enter Fullscreen": "전체화면 전환",
"Exit Fullscreen": "전체화면 종료",
"Context Menu": "컨텍스트 메뉴",
"Reset": "초기화",
"Clear": "지우기",
"Close": "닫기",
"QUICK SAVE STATE": "빠른 상태 저장하기",
"QUICK LOAD STATE": "빠른 상태 불러오기",
"CHANGE STATE SLOT": "상태 슬롯 변경하기",
"FAST FORWARD": "빨리 감기",
"Player": "플레이어",
"Connected Gamepad": "연결된 게임패드",
"Gamepad": "게임패드",
"Keyboard": "키보드",
"Set": "세트",
"Add Cheat": "치트 추가하기",
"Note that some cheats require a restart to disable": "일부 치트는 다시 시작해야 비활성화할 수 있습니다.",
"Create a Room": "방 만들기",
"Rooms": "방",
"Start Game": "게임 시작하기",
"Click to resume Emulator": "에뮬레이터를 다시 시작하려면 클릭하세요.",
"Drop save state here to load": "저장 상태를 여기에 놓으면 로드됩니다.",
"Loading...": "로딩 중...",
"Download Game Core": "게임 코어 다운로드",
"Outdated graphics driver": "오래된 그래픽 드라이버",
"Decompress Game Core": "게임 코어 압축 해제",
"Download Game Data": "게임 데이터 다운로드",
"Decompress Game Data": "게임 데이터 압축 해제",
"Shaders": "셰이더",
"Disabled": "비활성화됨",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT 이지모드",
"CRT aperture": "CRT 조리개",
"CRT geom": "CRT 검",
"CRT mattias": "CRT 마티아스",
"FPS": "FPS",
"show": "보기",
"hide": "숨기기",
"Fast Forward Ratio": "빨리 감기 비율",
"Fast Forward": "빨리 감기",
"Enabled": "활성화됨",
"Save State Slot": "상태 저장 슬롯",
"Save State Location": "상태 저장 위치",
"Download": "다운로드",
"Keep in Browser": "브라우저에 보관하기",
"Auto": "자동",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "덴디",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "낮음",
"High": "높음",
"Very High": "매우 높음",
"None": "없음",
"Player 1": "플레이어 1",
"Player 2": "플레이어 2",
"Both": "둘 다",
"SAVED STATE TO SLOT": "슬롯에 상태가 저장되었습니다.",
"LOADED STATE FROM SLOT": "슬롯에서 상태를 불러왔습니다.",
"SET SAVE STATE SLOT TO": "저장 상태 슬롯을 다음으로 설정",
"Network Error": "네트워크 오류",
"Submit": "전송",
"Description": "설명",
"Code": "코드",
"Add Cheat Code": "치트 코드 추가",
"Leave Room": "방 나가기",
"Password": "비밀번호",
"Password (optional)": "비밀번호 (선택사항)",
"Max Players": "최대 플레이어 수",
"Room Name": "방 이름",
"Join": "들어가기",
"Player Name": "플레이어 이름",
"Set Player Name": "플레이어 이름 설정",
"Left Handed Mode": "왼손 모드",
"Virtual Gamepad": "가상 게임패드",
"Disk": "디스크",
"Press Keyboard": "키보드를 누르세요.",
"INSERT COIN": "동전을 넣으세요.",
"Remove": "제거",
"LOADED STATE FROM BROWSER": "브라우저에서 로드된 상태",
"SAVED STATE TO BROWSER": "브라우저에 저장된 상태",
"Join the discord": "디스코드에 참가하기",
"View on GitHub": "GitHub에서 보기",
"Failed to start game": "게임을 시작하지 못했습니다.",
"Download Game BIOS": "게임 BIOS 다운로드",
"Decompress Game BIOS": "게임 BIOS 압축 해제",
"Download Game Parent": "게임 부모 다운로드",
"Decompress Game Parent": "게임 부모 압축 해제",
"Download Game Patch": "게임 패치 다운로드",
"Decompress Game Patch": "게임 패치 압축 해제",
"Download Game State": "게임 상태 다운로드",
"Check console": "콘솔 확인",
"Error for site owner": "사이트 소유자 오류",
"EmulatorJS": "EmulatorJS",
"Clear All": "모두 지우기",
"Take Screenshot": "스크린 샷 찍기",
"Start screen recording": "화면 녹화 시작",
"Stop screen recording": "화면 녹화 정지",
"Quick Save": "빠른 저장하기",
"Quick Load": "빠른 불러오기",
"REWIND": "되감기",
"Rewind Enabled (requires restart)": "되감기 활성화됨 (재시작 필요함)",
"Rewind Granularity": "되감기 세분화",
"Slow Motion Ratio": "슬로우 모션 비율",
"Slow Motion": "슬로우 모션",
"Home": "홈",
"EmulatorJS License": "EmulatorJS 라이센스",
"RetroArch License": "RetroArch 라이센스",
"This project is powered by": "이 프로젝트는 다음의 지원으로 운영됩니다.",
"View the RetroArch license here": "RetroArch 라이센스 보기",
"SLOW MOTION": "슬로우 모션",
"A": "A",
"B": "B",
"SELECT": "선택",
"START": "시작",
"UP": "위",
"DOWN": "아래",
"LEFT": "왼쪽",
"RIGHT": "오른쪽",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "스틱 위",
"STICK DOWN": "스틱 아래",
"STICK LEFT": "스틱 왼쪽",
"STICK RIGHT": "스틱 오른쪽",
"C-PAD UP": "C 패드 위",
"C-PAD DOWN": "C-패드 아래",
"C-PAD LEFT": "C-패드 왼쪽",
"C-PAD RIGHT": "C-패드 오른쪽",
"MICROPHONE": "마이크",
"BUTTON 1 / START": "버튼 1 / 시작",
"BUTTON 2": "버튼 2",
"BUTTON": "단추",
"LEFT D-PAD UP": "왼쪽 방향 패드 위",
"LEFT D-PAD DOWN": "왼쪽 방향 패드 아래",
"LEFT D-PAD LEFT": "왼쪽 방향 패드 왼쪽",
"LEFT D-PAD RIGHT": "왼쪽 방향 패드 오른쪽",
"RIGHT D-PAD UP": "오른쪽 방향 패드 위",
"RIGHT D-PAD DOWN": "오른쪽 방향 패드 아래",
"RIGHT D-PAD LEFT": "오른쪽 방향 패드 왼쪽",
"RIGHT D-PAD RIGHT": "오른쪽 방향 패드 오른쪽",
"C": "C",
"MODE": "모드",
"FIRE": "발사",
"RESET": "초기화",
"LEFT DIFFICULTY A": "왼쪽 난이도 A",
"LEFT DIFFICULTY B": "왼쪽 난이도 B",
"RIGHT DIFFICULTY A": "오른쪽 난이도 A",
"RIGHT DIFFICULTY B": "오른쪽 난이도 B",
"COLOR": "색상",
"B/W": "흑백",
"PAUSE": "일시정지",
"OPTION": "옵션",
"OPTION 1": "옵션 1",
"OPTION 2": "옵션 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L 스틱 위",
"L STICK DOWN": "L 스틱 아래",
"L STICK LEFT": "왼쪽 스틱",
"L STICK RIGHT": "L 스틱 오른쪽",
"R STICK UP": "R 스틱 위",
"R STICK DOWN": "R 스틱 아래",
"R STICK LEFT": "R 스틱 왼쪽",
"R STICK RIGHT": "R 스틱 오른쪽",
"Start": "시작",
"Select": "선택",
"Fast": "빠름",
"Slow": "느림",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "엔터",
"escape": "ESC",
"space": "스페이스 바",
"tab": "탭",
"backspace": "백 스페이스",
"delete": "DEL",
"arrowup": "화살표 위",
"arrowdown": "화살표 아래",
"arrowleft": "화살표 왼쪽",
"arrowright": "화살표 오른쪽",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "쉬프트",
"control": "컨트롤",
"alt": "알트",
"meta": "메타",
"capslock": "캡스락",
"insert": "Insert",
"home": "HOME",
"end": "END",
"pageup": "페이지 업",
"pagedown": "페이지 다운",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "왼쪽_스틱_X",
"LEFT_STICK_Y": "왼쪽_스틱_Y",
"RIGHT_STICK_X": "오른쪽_스틱_X",
"RIGHT_STICK_Y": "오른쪽_스틱_Y",
"LEFT_TRIGGER": "왼쪽_트리거",
"RIGHT_TRIGGER": "오른쪽_트리거",
"A_BUTTON": "A_버튼",
"B_BUTTON": "B_버튼",
"X_BUTTON": "X_버튼",
"Y_BUTTON": "Y_버튼",
"START_BUTTON": "시작_버튼",
"SELECT_BUTTON": "선택_버튼",
"L1_BUTTON": "L1_버튼",
"R1_BUTTON": "R1_버튼",
"L2_BUTTON": "L2_버튼",
"R2_BUTTON": "R2_버튼",
"LEFT_THUMB_BUTTON": "왼쪽_엄지_버튼",
"RIGHT_THUMB_BUTTON": "오른쪽_엄지_버튼",
"DPAD_UP": "DPAD_위",
"DPAD_DOWN": "DPAD_아래",
"DPAD_LEFT": "DPAD_왼쪽",
"DPAD_RIGHT": "DPAD_오른쪽",
"Disks": "디스크",
"Exit EmulatorJS": "EmulatorJS 끝내기",
"BUTTON_1": "버튼_1",
"BUTTON_2": "버튼_2",
"BUTTON_3": "버튼_3",
"BUTTON_4": "버튼_4",
"up arrow": "화살표 키 위",
"down arrow": "화살표 키 아래",
"left arrow": "화살표 키 왼쪽",
"right arrow": "화살표 키 오른쪽",
"LEFT_TOP_SHOULDER": "왼쪽 상단 숄더",
"RIGHT_TOP_SHOULDER": "오른쪽 상단 숄더",
"CRT beam": "CRT 빔",
"CRT caligari": "CRT 칼리가리",
"CRT lottes": "CRT 로테스",
"CRT yeetron": "CRT 이트론",
"CRT zfast": "CRT 지패스트",
"SABR": "SABR",
"Bicubic": "쌍입방(Bicubic)",
"Mix frames": "프레임 혼합",
"WebGL2": "WebGL2",
"Requires restart": "재시작 필요함",
"VSync": "수직동기화",
"Video Rotation": "화면 회전",
"System Save interval": "시스템 세이브 간격",
"Menu Bar Button": "메뉴바 버튼",
"visible": "보이기",
"hidden": "숨기기",
"Exit Emulation": "에뮬레이터 종료",
"LEFT_BOTTOM_SHOULDER": "왼쪽 하단 숄더",
"RIGHT_BOTTOM_SHOULDER": "오른쪽 하단 숄더",
"LEFT_STICK": "왼쪽 스틱",
"RIGHT_STICK": "오른쪽 스틱",
"-1": "-1",
"+1": "+1",
"Mode": "모드",
"": "",
"Core (재시작 필요함)": "코어 (재시작 필요함)",
"Rewind Enabled (재시작 필요함)": "되감기 활성화 (재시작 필요함)",
"Menubar Mouse Trigger": "메뉴바 마우스 활성화",
"Downward Movement": "아래쪽 이동",
"Movement Anywhere": "전체 영역 이동",
"Direct Keyboard Input": "키보드 직접 입력",
"Forward Alt key": "Alt 키 전달",
"Lock Mouse": "마우스 잠금",
"Are you sure you want to exit?": "정말로 종료하시겠습니까?",
"Exit": "종료",
"Cancel": "취소",
"EmulatorJS has exited": "에뮬레이터가 종료되었습니다.",
"Start Screen Recording": "화면 녹화 시작",
"Stop Screen Recording": "화면 녹화 중지",
"Screenshot Source": "스크린샷 소스",
"Screenshot Format": "스크린샷 형식",
"Screenshot Upscale": "스크린샷 업스케일",
"Screen Recording FPS": "화면 녹화 프레임율",
"Screen Recording Format": "화면 녹화 형식",
"Screen Recording Upscale": "화면 녹화 업스케일",
"Screen Recording Video Bitrate": "화면 녹화 비디오 비트레이트",
"Screen Recording Audio Bitrate": "화면 녹화 오디오 비트레이트",
"customDownload": "상태 파일 다운로드",
"customUpload": "상태 파일 업로드",
"customScreenshot": "스크린 샷 찍기"
}

View File

@ -105,8 +105,8 @@
"Press Keyboard": "Pressione uma tecla",
"INSERT COIN": "Insira uma ficha",
"Remove": "Remover",
"SAVE LOADED FROM BROWSER": "SAVE STATE CARREGADO DO BROWSER",
"SAVE SAVED TO BROWSER": "SAVE STATE ARMAZENADO NO BROWSER",
"LOADED STATE FROM BROWSER": "ESTADO CARREGADO DO NAVEGADOR",
"SAVED STATE TO BROWSER": "ESTADO SALVO NO NAVEGADOR",
"Join the discord": "Participar do discord",
"View on GitHub": "Ver no GitHub",
"Failed to start game": "Falha ao iniciar o jogo",

View File

@ -1,53 +0,0 @@
# Localization
Supported languages
`en-US` - English US<br>
`pt-BR` - Portuguese<br>
`es-ES` - Spanish<br>
`el-GR` - Greek<br>
`ja-JA` - Japanese<br>
`zh-CN` - Chinese<br>
`hi-HI` - Hindi<br>
`ar-AR` - Arabic<br>
`jv-JV` - Javanese<br>
`ben-BEN` - Bengali<br>
`ru-RU` - Russian<br>
`de-GER` - German<br>
`ko-KO` - Korean<br>
`af-FR` - French<br>
default: `en-US`
add the line to your code to use
```
EJS_language = ''; //language
```
If the language file is not found or there was an error fetching the file, the emulator will default to english.
## Credits
Translated for `es-ES` by [@cesarcristianodeoliveira](https://github.com/cesarcristianodeoliveira) <br>
Translated for `el-GR` by [@imneckro](https://github.com/imneckro) <br>
Translated for `ja-JA`, `hi-HI`, `ar-AR`, `jv-JV`, `ben-BEN`, `ru-RU`, `de-GER`, `ko-KO`, `af-FR` by [@allancoding](https://github.com/allancoding) <br>
Translated for `pt-BR` originally by [@allancoding](https://github.com/allancoding) and updated by [@zmarteline](https://github.com/zmarteline)<br>
Translated for `zh-CN` originally by [@allancoding](https://github.com/allancoding) and updated by [@eric183](https://github.com/eric183)<br>
Translated for `pt-BR` originally by [@allancoding](https://github.com/allancoding) and updated by [@zmarteline](https://github.com/zmarteline) <br>
## Contributing
Download the default `en.json` file and simply translate all the words that start with the `-` (remove the dash afterwards) then perform a pull request or open an issue with the file uploaded and I will add your work.
The `retroarch.json` are all the setting names for the menu. They will default to english if not found. You can set `EJS_settingsLanguage` to `true` to see the missing retroarch settings names for the current language. You can translate them and add the to the language file.
The control maping traslations for controllers are diffrent for each controller. They will need to be added to the language file if they are not in the default `en.json` file.
You can also use the [Translation Helper](Translate.html) tool to help you translate the file.
Please contribute!!
Enything that is incorrect or needs to be fix please perform a pull request!

File diff suppressed because it is too large Load Diff

310
data/localization/ro.json Normal file
View File

@ -0,0 +1,310 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Repornire",
"Pause": "Pauză",
"Play": "Pornire",
"Save State": "Salvare Status",
"Load State": "Încărcare Status",
"Control Settings": "Setări Controale",
"Cheats": "Cheats",
"Cache Manager": "Manager Cache",
"Export Save File": "Exportează Fișierul Salvat",
"Import Save File": "Importează Fișierul Salvat",
"Netplay": "Netplay",
"Mute": "Mute",
"Unmute": "Unmute",
"Settings": "Setări",
"Enter Fullscreen": "Intrați în modul ecran complet",
"Exit Fullscreen": "Ieșire din modul ecran complet",
"Context Menu": "Meniu Context",
"Reset": "Resetare",
"Clear": "Ștergere",
"Close": "Ieșire",
"QUICK SAVE STATE": "QUICK SAVE STATE",
"QUICK LOAD STATE": "QUICK LOAD STATE",
"CHANGE STATE SLOT": "CHANGE STATE SLOT",
"FAST FORWARD": "FAST FORWARD",
"Player": "Player",
"Connected Gamepad": "Gamepad Conectat",
"Gamepad": "Gamepad",
"Keyboard": "Tastatură",
"Set": "Setare",
"Add Cheat": "Adaugă Cheat",
"Note that some cheats require a restart to disable": "Rețineți că unele cheat-uri necesită o repornire pentru a fi dezactivate",
"Create a Room": "Creați o cameră",
"Rooms": "Camere",
"Start Game": "Pornire Joc",
"Click to resume Emulator": "Click pentru a relua Emulatorul",
"Drop save state here to load": "Aruncați starea de salvare aici pentru a încărca",
"Loading...": "Încărcare...",
"Download Game Core": "Descărcați nucleul jocului",
"Outdated graphics driver": "Placă grafică învechită",
"Decompress Game Core": "Decompresați nucleul jocului",
"Download Game Data": "Descărcați datele jocului",
"Decompress Game Data": "Decompresați datele jocului",
"Shaders": "Shaders",
"Disabled": "Dezactivat",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT easymode",
"CRT aperture": "CRT aperture",
"CRT geom": "CRT geom",
"CRT mattias": "CRT mattias",
"FPS": "FPS (cadre pe secundă)",
"show": "Afișare",
"hide": "Ascundere",
"Fast Forward Ratio": "Rată de Avans Rapid",
"Fast Forward": "Avansare Rapidă",
"Enabled": "Activat",
"Save State Slot": "Salvare Slotul pentru Stare",
"Save State Location": "Salvare Locație pentru Stare",
"Download": "Descărcați",
"Keep in Browser": "Păstrați în Browser",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Scăzut",
"High": "Ridicat",
"Very High": "Foarte Ridicat",
"None": "Deloc",
"Player 1": "Player 1",
"Player 2": "Player 2",
"Both": "Ambele",
"SAVED STATE TO SLOT": "SAVED STATE TO SLOT",
"LOADED STATE FROM SLOT": "LOADED STATE FROM SLOT",
"SET SAVE STATE SLOT TO": "SET SAVE STATE SLOT TO",
"Network Error": "Eroare de Conectare",
"Submit": "Trimite",
"Description": "Descriere",
"Code": "Cod",
"Add Cheat Code": "Adaugă Cod Cheat",
"Leave Room": "Părăsește Camera",
"Password": "Parolă",
"Password (optional)": "Parolă (opțional)",
"Max Players": "Maximum Jucători",
"Room Name": "Numele Camerei",
"Join": "Alătură-te",
"Player Name": "Nume Jucător",
"Set Player Name": "Setează Numele Jucătorului",
"Left Handed Mode": "Modul Mâna Stângă",
"Virtual Gamepad": "Gamepad Virtual",
"Disk": "Disc",
"Press Keyboard": "Apasă Tastatură",
"INSERT COIN": "INSERT COIN",
"Remove": "Înlăturare",
"LOADED STATE FROM BROWSER": "STARE ÎNCĂRCATĂ DIN BROWSER",
"SAVED STATE TO BROWSER": "STARE SALVATĂ ÎN BROWSER",
"Join the discord": "Alăturăte pe Discord",
"View on GitHub": "Vezi în GitHub",
"Failed to start game": "Pornirea jocului a eșuat",
"Download Game BIOS": "Descărcați BIOS-ul Jocului",
"Decompress Game BIOS": "Decompresați BIOS-ul Jocului",
"Download Game Parent": "Descărcați Jocul părinte",
"Decompress Game Parent": "Decompresați Jocul părinte",
"Download Game Patch": "Descărcați Patch-ul pentru joc",
"Decompress Game Patch": "Decompresați Patch-ul jocului",
"Download Game State": "-Download Game State",
"Check console": "Verifcare consolă",
"Error for site owner": "Eroare pentru deținătorul site-ului",
"EmulatorJS": "EmulatorJS",
"Clear All": "Șterge tot",
"Take Screenshot": "Fă o captură de ecran",
"Start screen recording": "Pornește înregistrarea ecranului",
"Stop screen recording": "Oprește înregistrarea ecranului",
"Quick Save": "Salvare Rapidă",
"Quick Load": "Încărcare Rapidă",
"REWIND": "REWIND",
"Rewind Enabled (requires restart)": "Delurare Activată (necesită repornire)",
"Rewind Granularity": "Granularitatea de Derulare",
"Slow Motion Ratio": "Raport de Latență",
"Slow Motion": "Latență",
"Home": "Acasă",
"EmulatorJS License": "Licența EmulatorJS",
"RetroArch License": "Licența RetroArch",
"This project is powered by": "Proiectul este dezvoltat de către",
"View the RetroArch license here": "Vezi licența RetroArch aici",
"SLOW MOTION": "SLOW MOTION",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "UP",
"DOWN": "DOWN",
"LEFT": "LEFT",
"RIGHT": "RIGHT",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "STICK UP",
"STICK DOWN": "STICK DOWN",
"STICK LEFT": "STICK LEFT",
"STICK RIGHT": "STICK RIGHT",
"C-PAD UP": "C-PAD UP",
"C-PAD DOWN": "C-PAD DOWN",
"C-PAD LEFT": "C-PAD LEFT",
"C-PAD RIGHT": "C-PAD RIGHT",
"MICROPHONE": "MICROPHONE",
"BUTTON 1 / START": "BUTTON 1 / START",
"BUTTON 2": "BUTTON 2",
"BUTTON": "BUTTON",
"LEFT D-PAD UP": "LEFT D-PAD UP",
"LEFT D-PAD DOWN": "LEFT D-PAD DOWN",
"LEFT D-PAD LEFT": "LEFT D-PAD LEFT",
"LEFT D-PAD RIGHT": "LEFT D-PAD RIGHT",
"RIGHT D-PAD UP": "RIGHT D-PAD UP",
"RIGHT D-PAD DOWN": "RIGHT D-PAD DOWN",
"RIGHT D-PAD LEFT": "RIGHT D-PAD LEFT",
"RIGHT D-PAD RIGHT": "RIGHT D-PAD RIGHT",
"C": "C",
"MODE": "MODE",
"FIRE": "FIRE",
"RESET": "RESET",
"LEFT DIFFICULTY A": "LEFT DIFFICULTY A",
"LEFT DIFFICULTY B": "LEFT DIFFICULTY B",
"RIGHT DIFFICULTY A": "RIGHT DIFFICULTY A",
"RIGHT DIFFICULTY B": "RIGHT DIFFICULTY B",
"COLOR": "COLOR",
"B/W": "B/W",
"PAUSE": "PAUSE",
"OPTION": "OPTION",
"OPTION 1": "OPTION 1",
"OPTION 2": "OPTION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L STICK UP",
"L STICK DOWN": "L STICK DOWN",
"L STICK LEFT": "L STICK LEFT",
"L STICK RIGHT": "L STICK RIGHT",
"R STICK UP": "R STICK UP",
"R STICK DOWN": "R STICK DOWN",
"R STICK LEFT": "R STICK LEFT",
"R STICK RIGHT": "R STICK RIGHT",
"Start": "Pornire",
"Select": "Selectare",
"Fast": "Rapid",
"Slow": "Lent",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "enter",
"escape": "escape",
"space": "space",
"tab": "tab",
"backspace": "backspace",
"delete": "delete",
"arrowup": "arrowup",
"arrowdown": "arrowdown",
"arrowleft": "arrowleft",
"arrowright": "arrowright",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift",
"control": "control",
"alt": "alt",
"meta": "meta",
"capslock": "capslock",
"insert": "insert",
"home": "home",
"end": "end",
"pageup": "pageup",
"pagedown": "pagedown",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "LEFT_TRIGGER",
"RIGHT_TRIGGER": "RIGHT_TRIGGER",
"A_BUTTON": "A_BUTTON",
"B_BUTTON": "B_BUTTON",
"X_BUTTON": "X_BUTTON",
"Y_BUTTON": "Y_BUTTON",
"START_BUTTON": "START_BUTTON",
"SELECT_BUTTON": "SELECT_BUTTON",
"L1_BUTTON": "L1_BUTTON",
"R1_BUTTON": "R1_BUTTON",
"L2_BUTTON": "L2_BUTTON",
"R2_BUTTON": "R2_BUTTON",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}

View File

@ -1,301 +0,0 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Перезапуск",
"Pause": "Пауза",
"Play": "Играть",
"Save State": "Сохранить состояние",
"Load State": "Состояние загрузки",
"Control Settings": "Настройки управления",
"Cheats": "Читы",
"Cache Manager": "Менеджер кеша",
"Export Save File": "Экспорт файла сохранения",
"Import Save File": "Импорт файла сохранения",
"Netplay": "Сетевая игра",
"Mute": "Немой",
"Unmute": "Включить звук",
"Settings": "Настройки",
"Enter Fullscreen": "Войти в полноэкранный режим",
"Exit Fullscreen": "Выйти из полноэкранного режима",
"Reset": "Перезагрузить",
"Clear": "Прозрачный",
"Close": "Закрывать",
"QUICK SAVE STATE": "СОСТОЯНИЕ БЫСТРОГО СОХРАНЕНИЯ",
"QUICK LOAD STATE": "СОСТОЯНИЕ БЫСТРОЙ НАГРУЗКИ",
"CHANGE STATE SLOT": "ИЗМЕНИТЬ СОСТОЯНИЕ СЛОТА",
"FAST FORWARD": "ПЕРЕМОТКА ВПЕРЕД",
"Player": "Игрок",
"Connected Gamepad": "Подключенный геймпад",
"Gamepad": "Геймпад",
"Keyboard": "Клавиатура",
"Set": "Набор",
"Add Cheat": "Добавить чит",
"Create a Room": "Создать комнату",
"Rooms": "Номера",
"Start Game": "Начать игру",
"Loading...": "Загрузка...",
"Download Game Core": "Скачать игровое ядро",
"Decompress Game Core": "Распаковать игровое ядро",
"Download Game Data": "Скачать игровые данные",
"Decompress Game Data": "Распаковать игровые данные",
"Shaders": "Шейдеры",
"Disabled": "Неполноценный",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "ЭЛТ простой режим",
"CRT aperture": "ЭЛТ-диафрагма",
"CRT geom": "ЭЛТ геом",
"CRT mattias": "ЭЛТ Маттиас",
"FPS": "FPS",
"show": "показывать",
"hide": "скрывать",
"Fast Forward Ratio": "Скорость перемотки вперед",
"Fast Forward": "Перемотка вперед",
"Enabled": "Включено",
"Save State Slot": "Слот сохранения состояния",
"Save State Location": "Сохранить местоположение состояния",
"Download": "Скачать",
"Keep in Browser": "Сохранить в браузере",
"Auto": "Авто",
"NTSC": "НТСК",
"PAL": "ПРИЯТЕЛЬ",
"Dendy": "Денди",
"8:7 PAR": "8:7 пар.",
"4:3": "4:3",
"Low": "Низкий",
"High": "Высокий",
"Very High": "Очень высоко",
"None": "Никто",
"Player 1": "Игрок 1",
"Player 2": "Игрок 2",
"Both": "Оба",
"SAVED STATE TO SLOT": "СОХРАНЕННОЕ СОСТОЯНИЕ В СЛОТЕ",
"LOADED STATE FROM SLOT": "ЗАГРУЖЕННОЕ СОСТОЯНИЕ ИЗ СЛОТА",
"SET SAVE STATE SLOT TO": "УСТАНОВИТЕ СЛОТ СОХРАНЕНИЯ СОСТОЯНИЯ В",
"Network Error": "Ошибка сети",
"Submit": "Представлять на рассмотрение",
"Description": "Описание",
"Code": "Код",
"Add Cheat Code": "Добавить чит-код",
"Leave Room": "Покинуть комнату",
"Password": "Пароль",
"Password (optional)": "Пароль (необязательно)",
"Max Players": "Максимум игроков",
"Room Name": "Название комнаты",
"Join": "Присоединиться",
"Player Name": "Имя игрока",
"Set Player Name": "Установить имя игрока",
"Left Handed Mode": "Режим левой руки",
"Virtual Gamepad": "Виртуальный геймпад",
"Disk": "Диск",
"Press Keyboard": "Нажмите Клавиатура",
"INSERT COIN": "ВСТАВЬТЕ МОНЕТУ",
"Remove": "Удалять",
"SAVE LOADED FROM BROWSER": "СОХРАНИТЬ ЗАГРУЖАЕМЫЕ ИЗ БРАУЗЕРА",
"SAVE SAVED TO BROWSER": "СОХРАНИТЬ В БРАУЗЕРЕ",
"Join the discord": "Присоединяйтесь к разногласиям",
"View on GitHub": "Посмотреть на GitHub",
"Failed to start game": "Не удалось запустить игру",
"Download Game BIOS": "Скачать БИОС игры",
"Decompress Game BIOS": "Распаковать игровой BIOS",
"Download Game Parent": "Скачать игру Родитель",
"Decompress Game Parent": "Распаковать исходную игру",
"Download Game Patch": "Скачать патч для игры",
"Decompress Game Patch": "Распаковать игровой патч",
"Download Game State": "Скачать состояние игры",
"Check console": "Проверить консоль",
"Error for site owner": "Ошибка владельца сайта",
"EmulatorJS": "ЭмуляторJS",
"Clear All": "Очистить все",
"Take Screenshot": "Сделать снимок экрана",
"Quick Save": "Быстрое сохранение",
"Quick Load": "Быстрая загрузка",
"REWIND": "ПЕРЕМОТКА",
"Rewind Enabled (requires restart)": "Включена перемотка назад (требуется перезагрузка)",
"Rewind Granularity": "Детализация перемотки назад",
"Slow Motion Ratio": "Коэффициент замедленной съемки",
"Slow Motion": "Замедленная съемка",
"Home": "Дом",
"EmulatorJS License": "ЭмуляторJS Лицензия",
"RetroArch License": "Лицензия RetroArch",
"SLOW MOTION": "ЗАМЕДЛЕННАЯ СЪЕМКА",
"A": "А",
"B": "Б",
"SELECT": "ВЫБИРАТЬ",
"START": "НАЧИНАТЬ",
"UP": "ВВЕРХ",
"DOWN": "ВНИЗ",
"LEFT": "ЛЕВЫЙ",
"RIGHT": "ВЕРНО",
"X": "Икс",
"Y": "Д",
"L": "л",
"R": "р",
"Z": "Z",
"STICK UP": "ТОРЧАТЬ",
"STICK DOWN": "НАКЛЕЙКА ВНИЗ",
"STICK LEFT": "ПАЛКА ВЛЕВО",
"STICK RIGHT": "ДЕРЖАТЬ ВПРАВО",
"C-PAD UP": "C-PAD ВВЕРХ",
"C-PAD DOWN": "C-PAD ВНИЗ",
"C-PAD LEFT": "C-PAD ЛЕВЫЙ",
"C-PAD RIGHT": "C-ПОДДЕРЖКА ПРАВАЯ",
"MICROPHONE": "МИКРОФОН",
"BUTTON 1 / START": "КНОПКА 1 / СТАРТ",
"BUTTON 2": "КНОПКА 2",
"BUTTON": "КНОПКА",
"LEFT D-PAD UP": "ЛЕВЫЙ D-PAD ВВЕРХ",
"LEFT D-PAD DOWN": "ЛЕВЫЙ D-PAD ВНИЗ",
"LEFT D-PAD LEFT": "ЛЕВЫЙ D-PAD ЛЕВЫЙ",
"LEFT D-PAD RIGHT": "ЛЕВЫЙ D-PAD ПРАВЫЙ",
"RIGHT D-PAD UP": "ПРАВАЯ крестовина вверх",
"RIGHT D-PAD DOWN": "ПРАВАЯ D-PAD ВНИЗ",
"RIGHT D-PAD LEFT": "ПРАВАЯ D-PAD ЛЕВАЯ",
"RIGHT D-PAD RIGHT": "ПРАВАЯ D-PAD ПРАВАЯ",
"C": "С",
"MODE": "РЕЖИМ",
"FIRE": "ОГОНЬ",
"RESET": "ПЕРЕЗАГРУЗИТЬ",
"LEFT DIFFICULTY A": "ЛЕВАЯ ТРУДНОСТЬ А",
"LEFT DIFFICULTY B": "ЛЕВАЯ ТРУДНОСТЬ B",
"RIGHT DIFFICULTY A": "ПРАВИЛЬНАЯ СЛОЖНОСТЬ A",
"RIGHT DIFFICULTY B": "ПРАВИЛЬНАЯ СЛОЖНОСТЬ B",
"COLOR": "ЦВЕТ",
"B/W": "Ч/Б",
"PAUSE": "ПАУЗА",
"OPTION": "ВАРИАНТ",
"OPTION 1": "ОПЦИЯ 1",
"OPTION 2": "ВАРИАНТ 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L ЗАСТАТЬ",
"L STICK DOWN": "L СТИКАТЬ ВНИЗ",
"L STICK LEFT": "L РУКОЯТКА ВЛЕВО",
"L STICK RIGHT": "L ПАЛКА ВПРАВО",
"R STICK UP": "R ЗАСТАТЬ",
"R STICK DOWN": "РУКОЯТКА ВНИЗ",
"R STICK LEFT": "РУКОЯТКА ВЛЕВО",
"R STICK RIGHT": "РУКОЯТКА ВПРАВО",
"Start": "Начинать",
"Select": "Выбирать",
"Fast": "Быстрый",
"Slow": "Медленный",
"a": "а",
"b": "б",
"c": "с",
"d": "г",
"e": "е",
"f": "ф",
"g": "г",
"h": "час",
"i": "я",
"j": "Дж",
"k": "к",
"l": "л",
"m": "м",
"n": "н",
"o": "о",
"p": "п",
"q": "д",
"r": "р",
"s": "с",
"t": "т",
"u": "ты",
"v": "в",
"w": "ж",
"x": "Икс",
"y": "у",
"z": "г",
"enter": "входить",
"escape": "побег",
"space": "космос",
"tab": "вкладка",
"backspace": "назад",
"delete": "удалить",
"arrowup": "стрелка вверх",
"arrowdown": "стрелка вниз",
"arrowleft": "стрелка влево",
"arrowright": "стреларайт",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "сдвиг",
"control": "контроль",
"alt": "альтернативный",
"meta": "мета",
"capslock": "капслок",
"insert": "вставлять",
"home": "дом",
"end": "конец",
"pageup": "подкачка",
"pagedown": "листать вниз",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "\"=\"",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "LEFT_TRIGGER",
"RIGHT_TRIGGER": "RIGHT_TRIGGER",
"A_BUTTON": "КНОПКА",
"B_BUTTON": "B_BUTTON",
"X_BUTTON": "X_BUTTON",
"Y_BUTTON": "Y_BUTTON",
"START_BUTTON": "КНОПКА ПУСК",
"SELECT_BUTTON": "SELECT_BUTTON",
"L1_BUTTON": "L1_BUTTON",
"R1_BUTTON": "R1_BUTTON",
"L2_BUTTON": "L2_BUTTON",
"R2_BUTTON": "R2_BUTTON",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}

301
data/localization/ru.json Normal file
View File

@ -0,0 +1,301 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Перезапустить",
"Pause": "Пауза",
"Play": "Играть",
"Save State": "Сохранить состояние",
"Load State": "Загрузить состояние",
"Control Settings": "Настройки управления",
"Cheats": "Читы",
"Cache Manager": "Управление кешем",
"Export Save File": "Экспорт файла сохранения",
"Import Save File": "Импорт файла сохранения",
"Netplay": "Сетевая игра",
"Mute": "Выключить звук",
"Unmute": "Включить звук",
"Settings": "Настройки",
"Enter Fullscreen": "Перейти в полноэкранный режим",
"Exit Fullscreen": "Выйти из полноэкранного режима",
"Reset": "Сбросить",
"Clear": "Очистить",
"Close": "Закрыть",
"QUICK SAVE STATE": "БЫСТРОЕ СОХРАНЕНИЕ СОСТОЯНИЯ",
"QUICK LOAD STATE": "БЫСТРАЯ ЗАГРУЗКА СОСТОЯНИЯ",
"CHANGE STATE SLOT": "ИЗМЕНИТЬ СЛОТ СОСТОЯНИЯ",
"FAST FORWARD": "ПЕРЕМОТКА ВПЕРЕД",
"Player": "Игрок",
"Connected Gamepad": "Подключенный геймпад",
"Gamepad": "Геймпад",
"Keyboard": "Клавиатура",
"Set": "Установить",
"Add Cheat": "Добавить чит",
"Create a Room": "Создать комнату",
"Rooms": "Комнаты",
"Start Game": "Начать игру",
"Loading...": "Загрузка...",
"Download Game Core": "Скачивание игрового ядра",
"Decompress Game Core": "Распаковка игрового ядра",
"Download Game Data": "Скачивание игровых данных",
"Decompress Game Data": "Распаковка игровых данных",
"Shaders": "Шейдеры",
"Disabled": "Отключено",
"2xScaleHQ": "Масштаб 2x HQ",
"4xScaleHQ": "Масштаб 4x HQ",
"CRT easymode": "ЭЛТ easymode",
"CRT aperture": "ЭЛТ aperture",
"CRT geom": "ЭЛТ geom",
"CRT mattias": "ЭЛТ matias",
"FPS": "FPS",
"show": "Показать",
"hide": "Скрыть",
"Fast Forward Ratio": "Скорость перемотки вперед",
"Fast Forward": "Перемотка вперед",
"Enabled": "Включено",
"Save State Slot": "Слот сохранения состояния",
"Save State Location": "Расположение сохраненного состояния",
"Download": "Скачать",
"Keep in Browser": "Сохранить в браузере",
"Auto": "Авто",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Денди",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Низко",
"High": "Высоко",
"Very High": "Очень высоко",
"None": "Ничего",
"Player 1": "Игрок 1",
"Player 2": "Игрок 2",
"Both": "Оба",
"SAVED STATE TO SLOT": "СОСТОЯНИЕ СОХРАНЕНО В СЛОТ",
"LOADED STATE FROM SLOT": "СОСТОЯНИЕ ЗАГРУЖЕНО ИЗ СЛОТА",
"SET SAVE STATE SLOT TO": "СЛОТ СОСТОЯНИЯ УСТАНОВЛЕН В",
"Network Error": "Ошибка сети",
"Submit": "Отправить",
"Description": "Описание",
"Code": "Код",
"Add Cheat Code": "Добавить чит-код",
"Leave Room": "Покинуть комнату",
"Password": "Пароль",
"Password (optional)": "Пароль (необязательно)",
"Max Players": "Максимум игроков",
"Room Name": "Название комнаты",
"Join": "Присоединиться",
"Player Name": "Имя игрока",
"Set Player Name": "Установить имя игрока",
"Left Handed Mode": "Режим для левши",
"Virtual Gamepad": "Виртуальный геймпад",
"Disk": "Диск",
"Press Keyboard": "Нажмите кнопку на клавиатуре",
"INSERT COIN": "ВСТАВЬТЕ МОНЕТУ",
"Remove": "Удалить",
"LOADED STATE FROM BROWSER": "ЗАГРУЖЕННОЕ СОСТОЯНИЕ ИЗ БРАУЗЕРА",
"SAVED STATE TO BROWSER": "СОХРАНЕННОЕ СОСТОЯНИЕ В БРАУЗЕРЕ",
"Join the discord": "Присоединяйтесь к discord",
"View on GitHub": "Посмотреть на GitHub",
"Failed to start game": "Не удалось запустить игру",
"Download Game BIOS": "Скачивание игрового BIOS",
"Decompress Game BIOS": "Распаковка игрового BIOS",
"Download Game Parent": "Скачивание дополнительных файлов игры",
"Decompress Game Parent": "Распаковка дополнительных файлов игры",
"Download Game Patch": "Скачивание патча для игры",
"Decompress Game Patch": "Распаковка патча для игры",
"Download Game State": "Скачивание состояния игры",
"Check console": "Проверьте консоль",
"Error for site owner": "Ошибка для владельца сайта",
"EmulatorJS": "EmulatorJS",
"Clear All": "Очистить все",
"Take Screenshot": "Сделать снимок экрана",
"Quick Save": "Быстрое сохранение",
"Quick Load": "Быстрая загрузка",
"REWIND": "ПЕРЕМОТКА НАЗАД",
"Rewind Enabled (requires restart)": "Включить перемотку назад (требуется перезапуск)",
"Rewind Granularity": "Скорость перемотки назад",
"Slow Motion Ratio": "Коэффициент замедления",
"Slow Motion": "Замедление",
"Home": "Домой",
"EmulatorJS License": "Лицензия EmulatorJS",
"RetroArch License": "Лицензия RetroArch",
"SLOW MOTION": "ЗАМЕДЛЕННИЕ",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "ВВЕРХ",
"DOWN": "ВНИЗ",
"LEFT": "ВЛЕВО",
"RIGHT": "ВПРАВО",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "СТИК ВВЕРХ",
"STICK DOWN": "СТИК ВНИЗ",
"STICK LEFT": "СТИК ВЛЕВО",
"STICK RIGHT": "СТИК ВПРАВО",
"C-PAD UP": "C-PAD ВВЕРХ",
"C-PAD DOWN": "C-PAD ВНИЗ",
"C-PAD LEFT": "C-PAD ВЛЕВО",
"C-PAD RIGHT": "C-PAD ВПРАВО",
"MICROPHONE": "МИКРОФОН",
"BUTTON 1 / START": "BUTTON 1 / START",
"BUTTON 2": "BUTTON 2",
"BUTTON": "КНОПКА",
"LEFT D-PAD UP": "ЛЕВЫЙ D-PAD ВВЕРХ",
"LEFT D-PAD DOWN": "ЛЕВЫЙ D-PAD ВНИЗ",
"LEFT D-PAD LEFT": "ЛЕВЫЙ D-PAD ВЛЕВО",
"LEFT D-PAD RIGHT": "ЛЕВЫЙ D-PAD ВПРАВО",
"RIGHT D-PAD UP": "ПРАВЫЙ D-PAD ВВЕРХ",
"RIGHT D-PAD DOWN": "ПРАВЫЙ D-PAD ВНИЗ",
"RIGHT D-PAD LEFT": "ПРАВЫЙ D-PAD ВЛЕВО",
"RIGHT D-PAD RIGHT": "ПРАВЫЙ D-PAD ВПРАВО",
"C": "С",
"MODE": "MODE",
"FIRE": "ОГОНЬ",
"RESET": "СБРОС",
"LEFT DIFFICULTY A": "ЛЕВАЯ СЛОЖНОСТЬ А",
"LEFT DIFFICULTY B": "ЛЕВАЯ СЛОЖНОСТЬ B",
"RIGHT DIFFICULTY A": "ПРАВАЯ СЛОЖНОСТЬ A",
"RIGHT DIFFICULTY B": "ПРАВАЯ СЛОЖНОСТЬ B",
"COLOR": "COLOR",
"B/W": "B/W",
"PAUSE": "PAUSE",
"OPTION": "OPTION",
"OPTION 1": "OPTION 1",
"OPTION 2": "OPTION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "ЛЕЫЙ СТИК ВВЕРХ",
"L STICK DOWN": "ЛЕЫЙ СТИК ВНИЗ",
"L STICK LEFT": "ЛЕЫЙ СТИК ВЛЕВО",
"L STICK RIGHT": "ЛЕЫЙ СТИК ВПРАВО",
"R STICK UP": "ПРАВЫЙ СТИК ВВЕРХ",
"R STICK DOWN": "ПРАВЫЙ СТИК ВНИЗ",
"R STICK LEFT": "ПРАВЫЙ СТИК ВЛЕВО",
"R STICK RIGHT": "ПРАВЫЙ СТИК ВПРАВО",
"Start": "Start",
"Select": "Select",
"Fast": "Fast",
"Slow": "Slow",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "Ввод",
"escape": "Esc",
"space": "Пробел",
"tab": "Tab",
"backspace": "Backspace",
"delete": "Del",
"arrowup": "Стрелка вверх",
"arrowdown": "Стрелка вниз",
"arrowleft": "Стрелка влево",
"arrowright": "Стрелка вправо",
"f1": "F1",
"f2": "F2",
"f3": "F3",
"f4": "F4",
"f5": "F5",
"f6": "F6",
"f7": "F7",
"f8": "F8",
"f9": "F9",
"f10": "F10",
"f11": "F11",
"f12": "F12",
"shift": "Shift",
"control": "Ctrl",
"alt": "Alt",
"meta": "Meta",
"capslock": "Caps Lock",
"insert": "Insert",
"home": "Home",
"end": "End",
"pageup": "PgUp",
"pagedown": "PgDown",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "\"=\"",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": ЕВЫЙ_СТИК_X",
"LEFT_STICK_Y": ЕВЫЙ_СТИК_Y",
"RIGHT_STICK_X": РАВЫЙ_СТИК_X",
"RIGHT_STICK_Y": РАВЫЙ_СТИК_Y",
"LEFT_TRIGGER": ЕВЫЙ_ТРИГГЕР",
"RIGHT_TRIGGER": РАВЫЙ_ТРИГГЕР",
"A_BUTTON": "КНОПКА_A",
"B_BUTTON": "КНОПКА_B",
"X_BUTTON": "КНОПКА_X",
"Y_BUTTON": "КНОПКА_Y",
"START_BUTTON": "КНОПКА_START",
"SELECT_BUTTON": "КНОПКА_SELECT",
"L1_BUTTON": "КНОПКА_L1",
"R1_BUTTON": "КНОПКА_R1",
"L2_BUTTON": "КНОПКА_L2",
"R2_BUTTON": "КНОПКА_R2",
"LEFT_THUMB_BUTTON": ЕВАЯ_КНОПКА_БП",
"RIGHT_THUMB_BUTTON": РАВАЯ_КНОПКА_БП",
"DPAD_UP": "DPAD_ВВЕРХ",
"DPAD_DOWN": "DPAD_ВНИЗ",
"DPAD_LEFT": "DPAD_ВЛЕВО",
"DPAD_RIGHT": "DPAD_СПРАВО"
}

310
data/localization/tr.json Normal file
View File

@ -0,0 +1,310 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Baştan Başlat",
"Pause": "Durdur",
"Play": "Başlat",
"Save State": "Durumu Kaydet",
"Load State": "Durumu Yükle",
"Control Settings": "Kontrol Ayarları",
"Cheats": "Hileler",
"Cache Manager": "Önbellek Yöneticisi",
"Export Save File": "Kayıt Dosyasını Dışa Aktar",
"Import Save File": "Kayıt Dosyasını İçe Aktar",
"Netplay": "Çevrimiçi Oynama",
"Mute": "Sessize Al",
"Unmute": "Sesi Geri Aç",
"Settings": "Ayarlar",
"Enter Fullscreen": "Tam Ekrana Geç",
"Exit Fullscreen": "Tam Ekrandan Çık",
"Context Menu": "Bağlamsal Menü",
"Reset": "Sıfırla",
"Clear": "Temizle",
"Close": "Kapat",
"QUICK SAVE STATE": "DURUMU HIZLI KAYDET",
"QUICK LOAD STATE": "DURUMU HIZLI YÜKLE",
"CHANGE STATE SLOT": "DURUM SLOTUNU DEĞİŞTİR",
"FAST FORWARD": "İLERİ SAR",
"Player": "Oyuncu",
"Connected Gamepad": "Bağlı Olan Oyun Kolu",
"Gamepad": "Oyun Kolu",
"Keyboard": "Klavye",
"Set": "Ayarla",
"Add Cheat": "Hile Ekle",
"Note that some cheats require a restart to disable": "Not: Bazı hileleri devre dışı bırakmak, tekrardan başlatmayı gerektirebilir.",
"Create a Room": "Bir Oda Oluştur",
"Rooms": "Odalar",
"Start Game": "Oyunu Başlar",
"Click to resume Emulator": "Emülatörü devam ettirmek için tıklayınız",
"Drop save state here to load": "Durum kayıt dosyanızı buraya sürükleyerek yükleyiniz",
"Loading...": "Yükleniyor...",
"Download Game Core": "Oyun Çekirdeği İndiriliyor",
"Outdated graphics driver": "Güncel olmayan grafik sürücüsü tespit edildi",
"Decompress Game Core": "Sıkıştırılmış Oyun Çekirdeği Açılıyor",
"Download Game Data": "Oyun Verisi İndiriliyor",
"Decompress Game Data": "Sıkıştırılmış Oyun Verisi Açılıyor",
"Shaders": "Tonlayıcılar",
"Disabled": "Devre Dışı",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT easymode",
"CRT aperture": "CRT aperture",
"CRT geom": "CRT geom",
"CRT mattias": "CRT mattias",
"FPS": "FPS",
"show": "göster",
"hide": "gizle",
"Fast Forward Ratio": "İleri Sarma Oranı",
"Fast Forward": "İleri Sar",
"Enabled": "Aktif",
"Save State Slot": "Durum Kayıt Slotu",
"Save State Location": "Durum Kayıt Lokasyonu",
"Download": "İndir",
"Keep in Browser": "Tarayıcıda Tut",
"Auto": "Otomatik",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Düşük",
"High": "Yüksek",
"Very High": "Çok Yüksek",
"None": "Hiçbiri",
"Player 1": "Oyuncu 1",
"Player 2": "Oyuncu 2",
"Both": "Her İkisi De",
"SAVED STATE TO SLOT": "DURUM SLOTA KAYDEDİLDİ",
"LOADED STATE FROM SLOT": "SLOTTAN DURUM YÜKLENDİ",
"SET SAVE STATE SLOT TO": "DURUM KAYIT SLOTU DEĞİŞTİRİLDİ",
"Network Error": "Ağ Hatası",
"Submit": "Gönder",
"Description": "Açıklama",
"Code": "Kod",
"Add Cheat Code": "Hile Kodu Ekle",
"Leave Room": "Odadan Çık",
"Password": "Parola",
"Password (optional)": "Parola (opsiyonel)",
"Max Players": "Maksimum Oyuncu Sayısı",
"Room Name": "Oda İsmi",
"Join": "Katıl",
"Player Name": "Oyuncu İsmi",
"Set Player Name": "Oyuncu İsmini Ayarla",
"Left Handed Mode": "Sol El Modu",
"Virtual Gamepad": "Sanal Oyun Kolu",
"Disk": "Disk",
"Press Keyboard": "Klavyeye Basın",
"INSERT COIN": "JETON ATINIZ",
"Remove": "Kaldır",
"LOADED STATE FROM BROWSER": "TARAYICIDAN YÜKLENEN DURUM",
"SAVED STATE TO BROWSER": "TARAYICILARA KAYDEDİLDİ DURUM",
"Join the discord": "Discord'a katıl",
"View on GitHub": "Github'da görüntüler",
"Failed to start game": "Oyun başlatılamadı",
"Download Game BIOS": "Oyun BIOS'unu İndir",
"Decompress Game BIOS": "Sıkıştırılmış Oyun BIOS'unu Aç",
"Download Game Parent": "Oyun Ek Dosyalarını İndir",
"Decompress Game Parent": "Sıkıştırılmış Oyun Ek Dosyalarını Aç",
"Download Game Patch": "Oyun Yamasını İndir",
"Decompress Game Patch": "Sıkıştırılmış Oyun Yamasını Aç",
"Download Game State": "Oyun Durumunu İndir",
"Check console": "Konsolu kontrol et",
"Error for site owner": "Site sahibi için hata",
"EmulatorJS": "EmulatorJS",
"Clear All": "Hepsini Temizle",
"Take Screenshot": "Ekran Görüntüsü Al",
"Start Screen Recording": "Ekran kaydı başlat",
"Stop Screen Recording": "Ekran kaydını durdur",
"Quick Save": "Hızlı Kaydet",
"Quick Load": "Hızlı Yükle",
"REWIND": "GERİ SAR",
"Rewind Enabled (requires restart)": "Geri Sarma Aktive Edildi (tekrardan başlatma gerektirir)",
"Rewind Granularity": "Geri Sarma Hassasiyeti",
"Slow Motion Ratio": "Ağır Çekim Oranı",
"Slow Motion": "Ağır Çekim",
"Home": "Anasayfa",
"EmulatorJS License": "EmulatorJS Lisansı",
"RetroArch License": "RetroArch Lisansı",
"This project is powered by": "Bu proje şununla geliştirildi:",
"View the RetroArch license here": "RetroArch lisansını buradan görüntüleyebilirsiniz",
"SLOW MOTION": "AĞIR ÇEKİM",
"A": "A",
"B": "B",
"SELECT": "SEÇ",
"START": "BAŞLAT",
"UP": "YUKARI",
"DOWN": "AŞAĞI",
"LEFT": "SOL",
"RIGHT": "SAĞ",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "ANALOG YUKARI",
"STICK DOWN": "ANALOG AŞAĞI",
"STICK LEFT": "ANALOG SOL",
"STICK RIGHT": "ANALOG SAĞ",
"C-PAD UP": "C-PAD YUKARI",
"C-PAD DOWN": "C-PAD AŞAĞI",
"C-PAD LEFT": "C-PAD SOL",
"C-PAD RIGHT": "C-PAD SAĞ",
"MICROPHONE": "MİKROFON",
"BUTTON 1 / START": "BUTON 1 / START",
"BUTTON 2": "BUTON 2",
"BUTTON": "BUTON",
"LEFT D-PAD UP": "SOL D-PAD YUKARI",
"LEFT D-PAD DOWN": "SOL D-PAD AŞAĞI",
"LEFT D-PAD LEFT": "SOL D-PAD SOL",
"LEFT D-PAD RIGHT": "SOL D-PAD SAĞ",
"RIGHT D-PAD UP": "SAĞ D-PAD YUKARI",
"RIGHT D-PAD DOWN": "SAĞ D-PAD AŞAĞI",
"RIGHT D-PAD LEFT": "SAĞ D-PAD SOL",
"RIGHT D-PAD RIGHT": "SAĞ D-PAD SAĞ",
"C": "C",
"MODE": "MOD",
"FIRE": "ATEŞ",
"RESET": "SIFIRLA",
"LEFT DIFFICULTY A": "SOL ZORLUK A",
"LEFT DIFFICULTY B": "SOL ZORLUK B",
"RIGHT DIFFICULTY A": "SAĞ ZORLUK A",
"RIGHT DIFFICULTY B": "SAĞ ZORLUK B",
"COLOR": "RENK",
"B/W": "Siyah/Beyaz",
"PAUSE": "DURDUR",
"OPTION": "AYAR",
"OPTION 1": "AYAR 1",
"OPTION 2": "AYAR 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "SOL-ANALOG YUKARI",
"L STICK DOWN": "SOL-ANALOG AŞAĞI",
"L STICK LEFT": "SOL-ANALOG SOL",
"L STICK RIGHT": "SOL-ANALOG SAĞ",
"R STICK UP": "SAĞ-ANALOG YUKARI",
"R STICK DOWN": "SAĞ-ANALOG AŞAĞI",
"R STICK LEFT": "SAĞ-ANALOG SOL",
"R STICK RIGHT": "SAĞ-ANALOG SAĞ",
"Start": "Başlat",
"Select": "Seç",
"Fast": "Hızlı",
"Slow": "Yavaş",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "enter",
"escape": "esc",
"space": "boşluk",
"tab": "tab",
"backspace": "backspace",
"delete": "delete",
"arrowup": "yukarı_ok",
"arrowdown": "aşağı_ok",
"arrowleft": "sol_ok",
"arrowright": "sağ_ok",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift",
"control": "ctrl",
"alt": "alt",
"meta": "meta",
"capslock": "capslock",
"insert": "insert",
"home": "home",
"end": "end",
"pageup": "pageup",
"pagedown": "pagedown",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "SOL_ANALOG_X",
"LEFT_STICK_Y": "SOL_ANALOG_Y",
"RIGHT_STICK_X": "SAĞ_ANALOG_X",
"RIGHT_STICK_Y": "SAĞ_ANALOG_Y",
"LEFT_TRIGGER": "SOL_TETİK",
"RIGHT_TRIGGER": "SAĞ_TETİK",
"A_BUTTON": "A_BUTONU",
"B_BUTTON": "B_BUTONU",
"X_BUTTON": "X_BUTONU",
"Y_BUTTON": "Y_BUTONU",
"START_BUTTON": "BAŞLAT_BUTONU",
"SELECT_BUTTON": "SEÇ_BUTONU",
"L1_BUTTON": "L1_BUTONU",
"R1_BUTTON": "R1_BUTONU",
"L2_BUTTON": "L2_BUTONU",
"R2_BUTTON": "R2_BUTONU",
"LEFT_THUMB_BUTTON": "SOL_ANALOG_BUTONU",
"RIGHT_THUMB_BUTTON": "SAĞ_ANALOG_BUTONU",
"DPAD_UP": "DPAD_YUKARI",
"DPAD_DOWN": "DPAD_AŞAĞI",
"DPAD_LEFT": "DPAD_SOL",
"DPAD_RIGHT": "DPAD_SAĞ"
}

302
data/localization/vi.json Normal file
View File

@ -0,0 +1,302 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "Chạy lại",
"Pause": "Tạm dừng",
"Play": "Chơi",
"Save State": "Lưu State",
"Load State": "Nạp State",
"Control Settings": "Cài đặt điều khiển",
"Cheats": "Gian lận xíu",
"Cache Manager": "Bộ nhớ đệm",
"Export Save File": "Xuất tệp lưu",
"Import Save File": "Nhập tệp lưu ",
"Netplay": "Chơi qua mạng",
"Mute": "Tắt âm",
"Unmute": "Mở âm",
"Settings": "Cài đặt",
"Enter Fullscreen": "Toàn màn hình",
"Exit Fullscreen": "Thoát toàn màn hình",
"Context Menu": "Menu chuột phải",
"Reset": "Đặt lại",
"Clear": "Xoá",
"Close": "Đóng",
"QUICK SAVE STATE": "LƯU NHANH",
"QUICK LOAD STATE": "NẠP NHANH",
"CHANGE STATE SLOT": "ĐỔI NHANH",
"FAST FORWARD": "TIẾN NHANH ",
"Player": "Người chơi",
"Connected Gamepad": "Bảng điều khiển đã kết nối",
"Gamepad": "Bảng điều khiển ",
"Keyboard": "Bàn phím",
"Set": "Đặt",
"Add Cheat": "Thêm mật mã",
"Create a Room": "Tạo phòng",
"Rooms": "Các phòng",
"Start Game": "Bắt đầu chơi",
"Loading...": "Đang nạp...",
"Download Game Core": "Tải xuống nhân trò chơi",
"Decompress Game Core": "Giải nén nhân trò chơi",
"Download Game Data": "Tải xuống dữ liệu trò chơi",
"Decompress Game Data": "Giải nén dữ liệu trò chơi ",
"Shaders": "Shaders",
"Disabled": "Vô hiệu",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT chế độ dễ",
"CRT aperture": "CRT aperture",
"CRT geom": "CRT geom",
"CRT mattias": "CRT mattias",
"FPS": "FPS",
"show": "hiện",
"hide": "ẩn",
"Fast Forward Ratio": "Tỷ lệ tiến nhanh",
"Fast Forward": "Tiến nhanh",
"Enabled": "Cho phép",
"Save State Slot": "Lưu trạng thái thẻ",
"Save State Location": "Lưu trạng thái vị trí",
"Download": "Tải về",
"Keep in Browser": "Giữ ở trình duyệt",
"Auto": "Auto",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "Thấp",
"High": "Cao",
"Very High": "Rất cao",
"None": "Không gì",
"Player 1": "Game thủ 1",
"Player 2": "Game thủ 2",
"Both": "Cả hai",
"SAVED STATE TO SLOT": "SAVED STATE TO SLOT",
"LOADED STATE FROM SLOT": "LOADED STATE FROM SLOT",
"SET SAVE STATE SLOT TO": "SET SAVE STATE SLOT TO",
"Network Error": "Mạng bị lỗi",
"Submit": "Gửi đi",
"Description": "Mô tả",
"Code": "Mã",
"Add Cheat Code": "Thêm mã gian lận",
"Leave Room": "Rời phòng",
"Password": "Mật khẩu",
"Password (optional)": "Mật khẩu (tùy chọn)",
"Max Players": "Người chơi tối đa",
"Room Name": "Tên phòng",
"Join": "Tham gia",
"Player Name": "Tên người chơi",
"Set Player Name": "Đặt tên người chơi",
"Left Handed Mode": "Chế độ tay trái",
"Virtual Gamepad": "Bàn phím ảo",
"Disk": "Đĩa",
"Press Keyboard": "Bàn phím",
"INSERT COIN": "THÊM XU",
"Remove": "Loại bỏ",
"LOADED STATE FROM BROWSER": "TRẠNG THÁI ĐÃ TẢI TỪ TRÌNH DUYỆT",
"SAVED STATE TO BROWSER": "TRẠNG THÁI ĐÃ LƯU VÀO TRÌNH DUYỆT",
"Join the discord": "Tham gia thảo luận",
"View on GitHub": "Xem trên GitHub",
"Failed to start game": "Thất bại khởi động game",
"Download Game BIOS": "Tải Game BIOS",
"Decompress Game BIOS": "Giải nén Game BIOS",
"Download Game Parent": "Tải Game cha",
"Decompress Game Parent": "Giải nén Game cha",
"Download Game Patch": "Tải vá Game ",
"Decompress Game Patch": "Giải nén Game vá",
"Download Game State": "Tải trạng thái Game",
"Check console": "Kiểm tra log console",
"Error for site owner": "Lỗi sở hữu trang chủ",
"EmulatorJS": "EmulatorJS",
"Clear All": "Xóa hết",
"Take Screenshot": "Chụp màn hình",
"Quick Save": "Lưu nhanh",
"Quick Load": "Nạp nhanh",
"REWIND": "REWIND",
"Rewind Enabled (requires restart)": "Cho phép quay lui (cần khởi động lại)",
"Rewind Granularity": "Rewind Granularity",
"Slow Motion Ratio": "Tỷ lệ chuyển động chậm",
"Slow Motion": "chuyển động chậm",
"Home": "Nhà",
"EmulatorJS License": "Giấy phép EmulatorJS",
"RetroArch License": "Giấy phép RetroArch ",
"SLOW MOTION": "CHUYỂN ĐỘNG CHẬM",
"A": "A",
"B": "B",
"SELECT": "SELECT",
"START": "START",
"UP": "UP",
"DOWN": "DOWN",
"LEFT": "LEFT",
"RIGHT": "RIGHT",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "STICK UP",
"STICK DOWN": "STICK DOWN",
"STICK LEFT": "STICK LEFT",
"STICK RIGHT": "STICK RIGHT",
"C-PAD UP": "C-PAD UP",
"C-PAD DOWN": "C-PAD DOWN",
"C-PAD LEFT": "C-PAD LEFT",
"C-PAD RIGHT": "C-PAD RIGHT",
"MICROPHONE": "MICROPHONE",
"BUTTON 1 / START": "BUTTON 1 / START",
"BUTTON 2": "BUTTON 2",
"BUTTON": "BUTTON",
"LEFT D-PAD UP": "LEFT D-PAD UP",
"LEFT D-PAD DOWN": "LEFT D-PAD DOWN",
"LEFT D-PAD LEFT": "LEFT D-PAD LEFT",
"LEFT D-PAD RIGHT": "LEFT D-PAD RIGHT",
"RIGHT D-PAD UP": "RIGHT D-PAD UP",
"RIGHT D-PAD DOWN": "RIGHT D-PAD DOWN",
"RIGHT D-PAD LEFT": "RIGHT D-PAD LEFT",
"RIGHT D-PAD RIGHT": "RIGHT D-PAD RIGHT",
"C": "C",
"MODE": "MODE",
"FIRE": "FIRE",
"RESET": "RESET",
"LEFT DIFFICULTY A": "LEFT DIFFICULTY A",
"LEFT DIFFICULTY B": "LEFT DIFFICULTY B",
"RIGHT DIFFICULTY A": "RIGHT DIFFICULTY A",
"RIGHT DIFFICULTY B": "RIGHT DIFFICULTY B",
"COLOR": "COLOR",
"B/W": "B/W",
"PAUSE": "PAUSE",
"OPTION": "OPTION",
"OPTION 1": "OPTION 1",
"OPTION 2": "OPTION 2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L STICK UP",
"L STICK DOWN": "L STICK DOWN",
"L STICK LEFT": "L STICK LEFT",
"L STICK RIGHT": "L STICK RIGHT",
"R STICK UP": "R STICK UP",
"R STICK DOWN": "R STICK DOWN",
"R STICK LEFT": "R STICK LEFT",
"R STICK RIGHT": "R STICK RIGHT",
"Start": "Start",
"Select": "Select",
"Fast": "Fast",
"Slow": "Slow",
"a": "a",
"b": "b",
"c": "c",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "enter",
"escape": "escape",
"space": "space",
"tab": "tab",
"backspace": "backspace",
"delete": "delete",
"arrowup": "arrowup",
"arrowdown": "arrowdown",
"arrowleft": "arrowleft",
"arrowright": "arrowright",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "f12",
"shift": "shift",
"control": "control",
"alt": "alt",
"meta": "meta",
"capslock": "capslock",
"insert": "insert",
"home": "home",
"end": "end",
"pageup": "pageup",
"pagedown": "pagedown",
"!": "!",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "(",
")": ")",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "\"",
",": ",",
".": ".",
"<": "<",
">": ">",
"/": "/",
"?": "?",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "LEFT_TRIGGER",
"RIGHT_TRIGGER": "RIGHT_TRIGGER",
"A_BUTTON": "A_BUTTON",
"B_BUTTON": "B_BUTTON",
"X_BUTTON": "X_BUTTON",
"Y_BUTTON": "Y_BUTTON",
"START_BUTTON": "START_BUTTON",
"SELECT_BUTTON": "SELECT_BUTTON",
"L1_BUTTON": "L1_BUTTON",
"R1_BUTTON": "R1_BUTTON",
"L2_BUTTON": "L2_BUTTON",
"R2_BUTTON": "R2_BUTTON",
"LEFT_THUMB_BUTTON": "LEFT_THUMB_BUTTON",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_DOWN",
"DPAD_LEFT": "DPAD_LEFT",
"DPAD_RIGHT": "DPAD_RIGHT"
}

View File

@ -1,301 +0,0 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "重新开始",
"Pause": "暂停",
"Play": "玩",
"Save State": "保存状态",
"Load State": "负载状态",
"Control Settings": "控制设置",
"Cheats": "秘籍",
"Cache Manager": "缓存管理器",
"Export Save File": "导出保存文件",
"Import Save File": "导入保存文件",
"Netplay": "网络游戏",
"Mute": "沉默的",
"Unmute": "取消静音",
"Settings": "设置",
"Enter Fullscreen": "进入全屏",
"Exit Fullscreen": "退出全屏",
"Reset": "重置",
"Clear": "清除",
"Close": "关闭",
"QUICK SAVE STATE": "快速保存状态",
"QUICK LOAD STATE": "快速加载状态",
"CHANGE STATE SLOT": "改变状态槽",
"FAST FORWARD": "快进",
"Player": "玩家",
"Connected Gamepad": "连接游戏手柄",
"Gamepad": "游戏手柄",
"Keyboard": "键盘",
"Set": "放",
"Add Cheat": "添加作弊",
"Create a Room": "创建房间",
"Rooms": "客房",
"Start Game": "开始游戏",
"Loading...": "正在加载...",
"Download Game Core": "下载游戏核心",
"Decompress Game Core": "解压游戏核心",
"Download Game Data": "下载游戏数据",
"Decompress Game Data": "解压游戏数据",
"Shaders": "着色器",
"Disabled": "残疾人",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT简易模式",
"CRT aperture": "CRT孔径",
"CRT geom": "CRT几何",
"CRT mattias": "CRT马蒂亚斯",
"FPS": "FPS",
"show": "展示",
"hide": "隐藏",
"Fast Forward Ratio": "快进比率",
"Fast Forward": "快进",
"Enabled": "启用",
"Save State Slot": "保存状态槽",
"Save State Location": "保存状态位置",
"Download": "下载",
"Keep in Browser": "保留在浏览器中",
"Auto": "汽车",
"NTSC": "NTSC",
"PAL": "朋友",
"Dendy": "丹迪",
"8:7 PAR": "8:7 帕",
"4:3": "4:3",
"Low": "低的",
"High": "高的",
"Very High": "很高",
"None": "没有任何",
"Player 1": "玩家1",
"Player 2": "玩家2",
"Both": "两个都",
"SAVED STATE TO SLOT": "已将状态保存到插槽",
"LOADED STATE FROM SLOT": "从插槽加载状态",
"SET SAVE STATE SLOT TO": "将保存状态槽设置为",
"Network Error": "网络错误",
"Submit": "提交",
"Description": "描述",
"Code": "代码",
"Add Cheat Code": "添加作弊码",
"Leave Room": "留出空间",
"Password": "密码",
"Password (optional)": "密码(可选)",
"Max Players": "最大玩家数",
"Room Name": "房间名称",
"Join": "加入",
"Player Name": "参赛者姓名",
"Set Player Name": "设置玩家名称",
"Left Handed Mode": "左手模式",
"Virtual Gamepad": "虚拟游戏手柄",
"Disk": "磁盘",
"Press Keyboard": "按键盘",
"INSERT COIN": "投币",
"Remove": "消除",
"SAVE LOADED FROM BROWSER": "保存从浏览器加载",
"SAVE SAVED TO BROWSER": "保存 已保存到浏览器",
"Join the discord": "加入不和谐的行列",
"View on GitHub": "在 GitHub 上查看",
"Failed to start game": "无法开始游戏",
"Download Game BIOS": "下载游戏BIOS",
"Decompress Game BIOS": "解压游戏BIOS",
"Download Game Parent": "下载游戏家长",
"Decompress Game Parent": "解压游戏父级",
"Download Game Patch": "下载游戏补丁",
"Decompress Game Patch": "解压游戏补丁",
"Download Game State": "下载游戏状态",
"Check console": "检查控制台",
"Error for site owner": "网站所有者的错误",
"EmulatorJS": "模拟器JS",
"Clear All": "全部清除",
"Take Screenshot": "截图",
"Quick Save": "快速保存",
"Quick Load": "快速加载",
"REWIND": "倒带",
"Rewind Enabled (requires restart)": "已启用快退(需要重新启动)",
"Rewind Granularity": "倒回粒度",
"Slow Motion Ratio": "慢动作比率",
"Slow Motion": "慢动作",
"Home": "家",
"EmulatorJS License": "EmulatorJS 许可证",
"RetroArch License": "RetroArch 许可证",
"SLOW MOTION": "慢动作",
"A": "A",
"B": "乙",
"SELECT": "选择",
"START": "开始",
"UP": "向上",
"DOWN": "向下",
"LEFT": "左边",
"RIGHT": "正确的",
"X": "X",
"Y": "是",
"L": "L",
"R": "右",
"Z": "Z",
"STICK UP": "竖起",
"STICK DOWN": "坚持下来",
"STICK LEFT": "向左摇杆",
"STICK RIGHT": "向右摇杆",
"C-PAD UP": "C-PAD 向上",
"C-PAD DOWN": "C-PAD 向下",
"C-PAD LEFT": "C-PAD 左",
"C-PAD RIGHT": "C-PAD 右",
"MICROPHONE": "麦克风",
"BUTTON 1 / START": "按钮 1 / 开始",
"BUTTON 2": "按钮2",
"BUTTON": "按钮",
"LEFT D-PAD UP": "左方向键向上",
"LEFT D-PAD DOWN": "左方向键按下",
"LEFT D-PAD LEFT": "左方向键左",
"LEFT D-PAD RIGHT": "左方向键 右",
"RIGHT D-PAD UP": "右方向键向上",
"RIGHT D-PAD DOWN": "右方向键向下",
"RIGHT D-PAD LEFT": "右方向键 左",
"RIGHT D-PAD RIGHT": "右方向键右",
"C": "C",
"MODE": "模式",
"FIRE": "火",
"RESET": "重置",
"LEFT DIFFICULTY A": "左难度A",
"LEFT DIFFICULTY B": "左难度B",
"RIGHT DIFFICULTY A": "正确难度A",
"RIGHT DIFFICULTY B": "正确难度B",
"COLOR": "颜色",
"B/W": "黑白",
"PAUSE": "暂停",
"OPTION": "选项",
"OPTION 1": "选项1",
"OPTION 2": "选项2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "L 粘起来",
"L STICK DOWN": "L 坚持下来",
"L STICK LEFT": "L 向左摇杆",
"L STICK RIGHT": "L 向右摇杆",
"R STICK UP": "R 粘起来",
"R STICK DOWN": "R 向下摇杆",
"R STICK LEFT": "R 向左摇杆",
"R STICK RIGHT": "R 右摇杆",
"Start": "开始",
"Select": "选择",
"Fast": "快速地",
"Slow": "慢的",
"a": "A",
"b": "乙",
"c": "C",
"d": "d",
"e": "e",
"f": "F",
"g": "G",
"h": "H",
"i": "我",
"j": "j",
"k": "k",
"l": "我",
"m": "米",
"n": "n",
"o": "哦",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "你",
"v": "v",
"w": "w",
"x": "X",
"y": "y",
"z": "z",
"enter": "进入",
"escape": "逃脱",
"space": "空间",
"tab": "标签",
"backspace": "退格键",
"delete": "删除",
"arrowup": "向上箭头",
"arrowdown": "向下箭头",
"arrowleft": "向左箭头",
"arrowright": "向右箭头",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "F12",
"shift": "转移",
"control": "控制",
"alt": "替代",
"meta": "元",
"capslock": "大写锁定",
"insert": "插入",
"home": "家",
"end": "结尾",
"pageup": "向上翻页",
"pagedown": "向下翻页",
"!": "",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "",
")": "",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "”",
",": ",",
".": "。",
"<": "<",
">": ">",
"/": "/",
"?": "",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "左触发",
"RIGHT_TRIGGER": "右触发",
"A_BUTTON": "一个按钮",
"B_BUTTON": "B_按钮",
"X_BUTTON": "X_按钮",
"Y_BUTTON": "Y_按钮",
"START_BUTTON": "开始按钮",
"SELECT_BUTTON": "选择按钮",
"L1_BUTTON": "L1_BUTTON",
"R1_BUTTON": "R1_按钮",
"L2_BUTTON": "L2_BUTTON",
"R2_BUTTON": "R2_BUTTON",
"LEFT_THUMB_BUTTON": "左拇指按钮",
"RIGHT_THUMB_BUTTON": "RIGHT_THUMB_BUTTON",
"DPAD_UP": "DPAD_UP",
"DPAD_DOWN": "DPAD_向下",
"DPAD_LEFT": "DPAD_左",
"DPAD_RIGHT": "DPAD_RIGHT"
}

351
data/localization/zh.json Normal file
View File

@ -0,0 +1,351 @@
{
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"Restart": "重新开始",
"Pause": "暂停",
"Play": "开始",
"Save State": "保存状态",
"Load State": "加载状态",
"Control Settings": "控制设置",
"Cheats": "秘籍",
"Cache Manager": "缓存管理器",
"Export Save File": "导出存档文件",
"Import Save File": "导入存档文件",
"Netplay": "网络游玩",
"Mute": "静音",
"Unmute": "取消静音",
"Settings": "设置",
"Enter Fullscreen": "进入全屏",
"Exit Fullscreen": "退出全屏",
"Reset": "重置",
"Clear": "清除",
"Close": "关闭",
"QUICK SAVE STATE": "快速保存状态",
"QUICK LOAD STATE": "快速加载状态",
"CHANGE STATE SLOT": "改变状态槽",
"FAST FORWARD": "快进",
"Player": "玩家",
"Connected Gamepad": "连接游戏手柄",
"Gamepad": "游戏手柄",
"Keyboard": "键盘",
"Set": "设置",
"Add Cheat": "添加作弊",
"Create a Room": "创建房间",
"Rooms": "房间",
"Start Game": "开始游戏",
"Loading...": "正在加载...",
"Download Game Core": "下载游戏核心",
"Decompress Game Core": "解压游戏核心",
"Download Game Data": "下载游戏数据",
"Decompress Game Data": "解压游戏数据",
"Shaders": "着色器",
"Disabled": "禁用",
"2xScaleHQ": "2xScaleHQ",
"4xScaleHQ": "4xScaleHQ",
"CRT easymode": "CRT简易模式",
"CRT aperture": "CRT荫栅式",
"CRT geom": "CRT几何",
"CRT mattias": "CRT马蒂亚斯",
"FPS": "FPS",
"show": "展示",
"hide": "隐藏",
"Fast Forward Ratio": "快进速率",
"Fast Forward": "快进",
"Enabled": "启用",
"Save State Slot": "保存状态槽",
"Save State Location": "保存状态位置",
"Download": "下载",
"Keep in Browser": "保留在浏览器中",
"Auto": "自动",
"NTSC": "NTSC",
"PAL": "PAL",
"Dendy": "Dendy",
"8:7 PAR": "8:7 PAR",
"4:3": "4:3",
"Low": "低",
"High": "高",
"Very High": "极高",
"None": "无",
"Player 1": "玩家1",
"Player 2": "玩家2",
"Both": "两者",
"SAVED STATE TO SLOT": "已将状态保存到插槽",
"LOADED STATE FROM SLOT": "已从插槽加载状态",
"SET SAVE STATE SLOT TO": "将保存状态槽设置为",
"Network Error": "网络错误",
"Submit": "提交",
"Description": "描述",
"Code": "代码",
"Add Cheat Code": "添加作弊码",
"Leave Room": "退出房间",
"Password": "密码",
"Password (optional)": "密码(可选)",
"Max Players": "最大玩家数",
"Room Name": "房间名称",
"Join": "加入",
"Player Name": "玩家名称",
"Set Player Name": "设置玩家名称",
"Left Handed Mode": "左手模式",
"Virtual Gamepad": "虚拟手柄",
"Disk": "磁盘",
"Press Keyboard": "按键盘",
"INSERT COIN": "投币",
"Remove": "消除",
"LOADED STATE FROM BROWSER": "浏览器加载状态",
"SAVED STATE TO BROWSER": "已将状态保存至浏览器",
"Join the discord": "加入discord",
"View on GitHub": "在GitHub上查看",
"Failed to start game": "无法开始游戏",
"Download Game BIOS": "下载游戏BIOS",
"Decompress Game BIOS": "解压游戏BIOS",
"Download Game Parent": "下载游戏父级",
"Decompress Game Parent": "解压游戏父级",
"Download Game Patch": "下载游戏补丁",
"Decompress Game Patch": "解压游戏补丁",
"Download Game State": "下载游戏状态",
"Check console": "检查控制台",
"Error for site owner": "给站长的错误提醒",
"EmulatorJS": "EmulatorJS",
"Clear All": "全部清除",
"Take Screenshot": "截图",
"Quick Save": "快速保存",
"Quick Load": "快速加载",
"REWIND": "快退",
"Rewind Enabled (requires restart)": "已启用快退(需要重新启动)",
"Rewind Granularity": "快退粒度",
"Slow Motion Ratio": "慢动作比率",
"Slow Motion": "慢动作",
"Home": "主页",
"EmulatorJS License": "EmulatorJS 许可证",
"RetroArch License": "RetroArch 许可证",
"SLOW MOTION": "慢动作",
"A": "A",
"B": "B",
"SELECT": "选择",
"START": "开始",
"UP": "向上",
"DOWN": "向下",
"LEFT": "向左",
"RIGHT": "向右",
"X": "X",
"Y": "Y",
"L": "L",
"R": "R",
"Z": "Z",
"STICK UP": "摇杆向上",
"STICK DOWN": "摇杆向下",
"STICK LEFT": "摇杆向左",
"STICK RIGHT": "摇杆向右",
"C-PAD UP": "C-PAD 向上",
"C-PAD DOWN": "C-PAD 向下",
"C-PAD LEFT": "C-PAD 向左",
"C-PAD RIGHT": "C-PAD 向右",
"MICROPHONE": "麦克风",
"BUTTON 1 / START": "按钮 1 / 开始",
"BUTTON 2": "按钮2",
"BUTTON": "按钮",
"LEFT D-PAD UP": "左方向键向上",
"LEFT D-PAD DOWN": "左方向键向下",
"LEFT D-PAD LEFT": "左方向键向左",
"LEFT D-PAD RIGHT": "左方向键向右",
"RIGHT D-PAD UP": "右方向键向上",
"RIGHT D-PAD DOWN": "右方向键向下",
"RIGHT D-PAD LEFT": "右方向键向左",
"RIGHT D-PAD RIGHT": "右方向键向右",
"C": "C",
"MODE": "模式",
"FIRE": "开火",
"RESET": "重置",
"LEFT DIFFICULTY A": "左难易度A",
"LEFT DIFFICULTY B": "左难易度B",
"RIGHT DIFFICULTY A": "右难易度A",
"RIGHT DIFFICULTY B": "右难易度B",
"COLOR": "彩色",
"B/W": "黑白",
"PAUSE": "暂停",
"OPTION": "选项",
"OPTION 1": "选项1",
"OPTION 2": "选项2",
"L2": "L2",
"R2": "R2",
"L3": "L3",
"R3": "R3",
"L STICK UP": "左摇杆向上",
"L STICK DOWN": "左摇杆向下",
"L STICK LEFT": "左摇杆向左",
"L STICK RIGHT": "左摇杆向右",
"R STICK UP": "右摇杆向上",
"R STICK DOWN": "右摇杆向下",
"R STICK LEFT": "右摇杆向左",
"R STICK RIGHT": "右摇杆向右",
"Start": "开始",
"Select": "选择",
"Fast": "加速",
"Slow": "减速",
"a": "a",
"b": "b",
"c": "d",
"d": "d",
"e": "e",
"f": "f",
"g": "g",
"h": "h",
"i": "i",
"j": "j",
"k": "k",
"l": "l",
"m": "m",
"n": "n",
"o": "o",
"p": "p",
"q": "q",
"r": "r",
"s": "s",
"t": "t",
"u": "u",
"v": "v",
"w": "w",
"x": "x",
"y": "y",
"z": "z",
"enter": "回车",
"escape": "Esc",
"space": "空格",
"tab": "Tab",
"backspace": "退格",
"delete": "删除",
"arrowup": "向上箭头",
"arrowdown": "向下箭头",
"arrowleft": "向左箭头",
"arrowright": "向右箭头",
"f1": "f1",
"f2": "f2",
"f3": "f3",
"f4": "f4",
"f5": "f5",
"f6": "f6",
"f7": "f7",
"f8": "f8",
"f9": "f9",
"f10": "f10",
"f11": "f11",
"f12": "F12",
"shift": "Shift",
"control": "Ctrl",
"alt": "Alt",
"meta": "Win",
"capslock": "大写锁定",
"insert": "Insert",
"home": "Home",
"end": "End",
"pageup": "向上翻页",
"pagedown": "向下翻页",
"!": "",
"@": "@",
"#": "#",
"$": "$",
"%": "%",
"^": "^",
"&": "&",
"*": "*",
"(": "",
")": "",
"-": "-",
"_": "_",
"+": "+",
"=": "=",
"[": "[",
"]": "]",
"{": "{",
"}": "}",
";": ";",
":": ":",
"'": "'",
"\"": "”",
",": ",",
".": "。",
"<": "<",
">": ">",
"/": "/",
"?": "",
"LEFT_STICK_X": "LEFT_STICK_X",
"LEFT_STICK_Y": "LEFT_STICK_Y",
"RIGHT_STICK_X": "RIGHT_STICK_X",
"RIGHT_STICK_Y": "RIGHT_STICK_Y",
"LEFT_TRIGGER": "左扳机",
"RIGHT_TRIGGER": "右扳机",
"A_BUTTON": "按键A",
"B_BUTTON": "按键B",
"X_BUTTON": "按键X",
"Y_BUTTON": "按键Y",
"START_BUTTON": "开始键",
"SELECT_BUTTON": "选择键",
"L1_BUTTON": "L1键",
"R1_BUTTON": "R1键",
"L2_BUTTON": "L2键",
"R2_BUTTON": "R2键",
"LEFT_THUMB_BUTTON": "左拇指按键",
"RIGHT_THUMB_BUTTON": "右拇指按键",
"DPAD_UP": "十字键向上",
"DPAD_DOWN": "十字键向下",
"DPAD_LEFT": "十字键向左",
"DPAD_RIGHT": "十字键向右",
"BUTTON_1": "按钮1",
"BUTTON_2": "按钮2",
"up arrow": "方向上",
"down arrow": "方向下",
"left arrow": "方向左",
"right arrow": "方向右",
"Start Screen Recording": "开始屏幕录制",
"Stop Screen Recording": "停止屏幕录制",
"Context Menu": "菜单",
"Exit Emulation": "退出模拟器",
"System Save interval": "系统保存间隔",
"Are you sure you want to exit?": "您确定要退出吗?",
"Exit": "退出",
"Cancel": "取消",
"Note that some cheats require a restart to disable": "请注意,某些作弊码需要重新启动才能禁用",
"Drop save state here to load": "将状态保存文件拖放到此处以加载",
"Disks": "Disks",
"SWAP DISKS": "SWAP DISKS",
"EJECT/INSERT DISK": "EJECT/INSERT DISK",
"LEFT_TOP_SHOULDER": "LEFT_TOP_SHOULDER",
"RIGHT_TOP_SHOULDER": "RIGHT_TOP_SHOULDER",
"Requires restart": "Requires restart",
"Core (Requires restart)": "Core (Requires restart)",
"CRT beam": "CRT beam",
"CRT caligari": "CRT caligari",
"CRT lottes": "CRT lottes",
"CRT yeetron": "CRT yeetron",
"CRT zfast": "CRT zfast",
"SABR": "SABR",
"Bicubic": "Bicubic",
"Mix frames": "Mix frames",
"WebGL2": "WebGL2",
"VSync": "VSync",
"Video Rotation": "Video Rotation",
"Screenshot Source": "Screenshot Source",
"Screenshot Format": "Screenshot Format",
"Screenshot Upscale": "Screenshot Upscale",
"Screen Recording FPS": "Screen Recording FPS",
"Screen Recording Format": "Screen Recording Format",
"Screen Recording Upscale": "Screen Recording Upscale",
"Screen Recording Video Bitrate": "Screen Recording Video Bitrate",
"Screen Recording Audio Bitrate": "Screen Recording Audio Bitrate",
"Rewind Enabled (Requires restart)": "Rewind Enabled (Requires restart)",
"Menubar Mouse Trigger": "Menubar Mouse Trigger",
"Downward Movement": "Downward Movement",
"Movement Anywhere": "Movement Anywhere",
"Direct Keyboard Input": "Direct Keyboard Input",
"Forward Alt key": "Forward Alt key",
"Lock Mouse": "Lock Mouse"
}

View File

@ -1,35 +0,0 @@
# Minifying
Before pushing the script files onto your production <br>
server it is recommended to minify them to save on <br>
load times as well as bandwidth.
<br>
## Requirements
- **[NodeJS]**
<br>
## Steps
1. Open a terminal in`/data/minify`.
2. Install the dependencies with:
```sh
npm install
```
3. Start the minification with:
```sh
node index.js
```
<!----------------------------------------------------------------------------->
[NodeJS]: https://nodejs.org/en/download/

View File

@ -1,27 +0,0 @@
const UglifyJS = require("uglify-js");
const fs = require('fs');
const uglifycss = require('uglifycss');
let files = [
'nipplejs.js',
'shaders.js',
'storage.js',
'gamepad.js',
'GameManager.js',
'socket.io.min.js',
'emulator.js'
]
let code = "(function() {\n";
for (let i=0; i<files.length; i++) {
code += fs.readFileSync('../'+files[i], 'utf8') + "\n";
}
code += "\n})();"
function minify(source){
const ast = UglifyJS.parse(source);
return UglifyJS.minify(ast).code;
}
console.log('minifying');
fs.writeFileSync('../emulator.min.css', uglifycss.processString(fs.readFileSync('../emulator.css', 'utf8')));
fs.writeFileSync('../emulator.min.js', minify(code));
console.log('done!');

Some files were not shown because too many files have changed in this diff Show More