Commit graph

392 commits

Author SHA1 Message Date
Vas Crabb
e79f5257b0 language/Czech: removed some obsolete outdated translations. 2023-03-26 05:52:48 +11:00
Vas Crabb
1ab6a1ebd5 Updated Czech and Slovak UI translations. [Milan Galcik] 2023-02-26 06:04:30 +11:00
Vas Crabb
65aeb63a2a Update accumulating relative inputs exactly once per frame.
This fixes "amplification" effects that would happen if the frame rate
rose above 100 Hz (whether by unthrottling or otherwise).

Synchronise with wall clock any time inputs are read.  Not doing this
has weird effects on relative inputs with frame skipping and contributes
to unresponsiveness of menus.

Reduce visual latency for mouse movement on menus when paused or
skipping frames.  The rest of the code changes to menus won't provide
benefits until draw can happen after event handling.
2023-02-24 19:31:12 +11:00
Vas Crabb
554bac2cb9 Filled in a few Chinese translations. 2023-02-22 02:58:42 +11:00
BraiNKilleRGR
e55c0fea75 Updated Greek UI translation (#10921) 2023-02-22 02:23:05 +11:00
k2-git
0e404fd577 Updated Japanese UI translation (Analog Input etc.). (#10912) 2023-02-19 19:27:54 +11:00
Vas Crabb
19a3f5dea2 srcclean and bump copyright date on language files to 2023 2023-02-19 03:28:47 +11:00
StanleyKid-22
6caff03422
Updated Ukrainian UI translation (#10908) 2023-02-19 03:03:29 +11:00
Vas Crabb
d4589e0b29 Input refactoring:
osd/modules/input, emu/inpttype.cpp: Made most default joystick
assignments supplied by input modules.  Input modules take available
controls into consideration when generating default assignments.

emu/inpttype.ipp: Added a separate "Back" UI input separate from Cancel.
You may want an easier to hit combination for moving to the previous
menu than for exiting or cancelling input.  They both default to Escape.

emu/inpttype.ipp: Added a UI Help control.  Currently only used by
analog inputs menu

emu/inpttype.h: Moved I/O port field type enum to its own header and
sorted UI controls so they appear in a more logical order.

ui: Don't use UI Select to restore defaults - people should be getting
used to the UI Clear input by now.  UI Select cycles multi-value items
instead.

ui/inputmap.cpp: Don't use immediate cancel to cycle between clearing
and restoring default assignment (use UI Clear instead).

osd: Reduced the number of files needing to include the dreaded emu.h.
Got some implementation out of headers.
2023-02-18 06:18:45 +11:00
Vas Crabb
4a81bdb64a Updated Chinese UI translations. [YuiFAN] 2023-02-02 01:06:19 +11:00
Vas Crabb
2498f2b7cf Miscellaneous fixes and refactoring:
ui/analogipt.cpp: Fixed bar graph display for fields with ranges
that wrap through zero.

emu/inputdev.cpp: Separateed analog axis deadzone and switch threshold
settings, reduced default deadzone, and fixed a potential division by
zero if the deadzone and saturation settings are equal.

emu/ioport.cpp: Fixed behaviour of absolute analog fields where range
passes through zero - it previously only worked for specific
combinations of mask, minimum and default.  Removed a workaround from
universal/getaway.cpp that is no longer necessary.

emu/input.cpp: Fixed unintuitive behaviour when an absolute field is
assigned an OR combination of a relative control folled by an absolute
control (e.g. Mouse X or Joy 1 LSX).  Also fixed reading axis input
sequences where an axis code is followed by a switch code (these can
only be produced by manually editing configuration files, not through
MAME's UI), and fixed the returned type when multiple relative axes sum
to zero.

osd/modules/input_dinput.cpp: Fixed hat switches being stuck in up
position when input is suspended in the background

taito/taitoio_yoke.cpp: Give throttle control a distinct type, and don't
auto-centre.

osd: Added option to select MIDI provider module (currently only
PortMidi and the dummy module are available).  Also put various things
in namespaces, and fixed builds including SDL sound module with native
Windows OSD.

emu/validity.cpp: Added check to catch I/O port fields using UI input
types.

emu/inpttype.ipp: Renamed inputs that were causing confusion.  "Bill"
and "Track" were causing confusion for translators and hence likely
causing confusion for many users, especially those who are not native
English speakers.  "Track" as an abbreviation for "Trackball" was
frequently being mistranslated, e.g. in the sense of a CD track
selection button or even in the sense of a railway track.  There's no
reason to abbreviate it.  "Bill" in the US English sense as a banknote
is too ambiguous and was causing confusion for translators.  It's better
to use the less ambiguous "Banknote".  Corrected Greek translations of
"Trackball".

Don't run GitHub Actions on issue template changes.
2023-01-28 08:16:53 +11:00
k2-git
f0d74092cc
Updated Japanese UI translation. (#10829)
Added new message translations and fixed some spelling inconsistencies.
2023-01-15 17:37:40 +11:00
Vas Crabb
f920a39de6 Fixed some errors in Brazilian Portuguese translation. [cd4053b, Wellington Uemura] 2022-12-04 03:23:50 +11:00
BraiNKilleRGR
df63237563
Updated Greek UI translation. (#10569) 2022-11-20 18:39:49 +11:00
Vas Crabb
cb444cc31f Updated Czech and Slovak translations. [Milan Galcik] 2022-11-05 01:45:07 +11:00
Vas Crabb
57f6366ccb Updated Brazilian Portuguese UI translation. [Felipe] 2022-10-30 02:34:54 +11:00
Vas Crabb
b93679a047 Updated Ukrainian UI translation. [Stanley Kid] 2022-10-24 03:10:30 +11:00
Raf Tacker
0dae622525
Updated German UI translation. (#10422) 2022-10-17 04:13:04 +11:00
Vas Crabb
fdd6b171fe Regenerated UI translation files 2022-10-16 02:31:25 +11:00
BraiNKilleRGR
613f3d6cd0
Updated Greek Translation (#10309) 2022-09-06 02:13:24 +10:00
Vas Crabb
2b52ff5e6f Language updates, software demotions, and minor code cleanup.
Updated Chinese UI translations. [YuiFAN]

Updated Ukrainian UI translation. [Stanley Kid]

gbcolor.xml: Demoted beastfgt to partially supported (HUD blank on GBC),
and demoted emochndx to unsupported due to all kinds of broken
behaviour.  Also added chongwu title from title screen as another
alt_title - it's different to the cartridge label.
2022-09-04 07:26:01 +10:00
Vas Crabb
051c380fd1 Patched up some gaps in functionality and fixed some bugs.
ui: Added some missing functionality:
* Added an option to copy input device IDs to the relevant menus.
* Added an item for setting the software lists files path (-hashpath) to
  the folder setup menu.
* Allow pasting text from clipboard in most places that allow typing
  (searching, entering filenames, entering barcodes).
* Changed the software selection menu heading to be a bit less
  misleading.
* Made barcode menu less eager to rebuild itself unnecessarily, and
  removed some confusing and apparently pointless code.

Exposed more Lua bindings:
* Added low-level palette objects.
* Added indexed bitmap types.
* Added a bitmap method for extracting pixels from a rectangular area as a
  packed binary string.
* Changed screen device pixels method to return width and height in
  addition to the pixels.

osd: Added some functionality and cleaned up a little:
* Added a function for copying text to the clipboard.
* Moved function for converting Windows error codes to standard error
  conditions to winutil.cpp so it can be used from more places.
* Removed duplicate declaration of osd_get_clipboard_text and made the
  function noexcept (including fixing implementations).
* Made macOS implementation of osd_get_clipboard_text skip the encoding
  conversion if it finds UTF-8 text first.
* Changed the default -uimodekey setting so it doesn't lose the "not
  shift" that stops the default from interfering with UI paste.

Various bug fixes:
* util/unicode.cpp: Fixed the version of utf8_from_uchar that returns
  std::string blowing up on invalid codepoints.
* util/bitmap.h: Fixed wrapping constructors for indexed bitmaps taking
  the wrong parameter type (nothing was using them before).
* util/bitmap.cpp: Fixed potential use-after-free issues with bitmap
  palettes.
* emu/input.cpp, emu/inputdev.cpp: Log 1-based device numbers, matching
  what's shown in the internal UI and used in tokens in CFG files.
* emu/emumem.cpp: Added the bank tag to a fatal error message where it
  was missing.

docs: Reworked and expanded documentation on configuring stable
controller IDs.

For translators, the changes are quite minor:
* There's a menu item for copying a device ID to the clipboard, and
  associated success/failure messages.
* There's the menu item for setting the software list file search path.
* One of the lines in the software selection menu heading has changes as
  it could be interpreted as implying it showed a software list name.
2022-09-02 08:55:16 +10:00
Vas Crabb
abc6bd9cba Removed leftover strings from Brazilian Portuguese translation. 2022-07-12 02:20:39 +10:00
Felipe
17a1c74b8f
Updated Brazilian Portuguese translation. (#10066) 2022-07-12 02:15:50 +10:00
Vas Crabb
2a27d420c0 -Made parent/clone terminology consistent in Chinese translations. [YuiFAN]
-bus/nubus: Made Macintosh Display Card round away from zero in 1:2:1
 convolution mode. [Vas Crabb]
2022-07-05 16:30:43 +10:00
Vas Crabb
e489f12d68 Updated Chinese UI translations. [YuiFAN] 2022-07-04 07:18:02 +10:00
BraiNKilleRGR
5d31f0fc97 Fixes to Greek Translation
Some minor fixes and missed the auto translated "Driver -> System" since in Greek changed the gender and so the article as well. (Driver=Male, System=Neutral ). Check the other translations as well in case something similar happened.
2022-06-30 02:31:53 +10:00
Vas Crabb
17fcbd325c Finalised Ukrainian translations for three messages. 2022-06-28 01:11:48 +10:00
Vas Crabb
11433779b8 -Updated translations, cleaned up a little.
* Updated Ukrainian translation. [Stanley Kid]
* Updated Czech and Slovak translations. [Milan Galcik]

-bus/nubus: Started identifying JMFB registers required for supporting
 interlaced modes.
2022-06-26 08:02:56 +10:00
BraiNKilleRGR
8f03a547ea
Updated Greek Translation (#9975) 2022-06-26 06:35:33 +10:00
Vas Crabb
f47f9c3db3
ui, docs: Added menus to fill a couple of gaps, improved consistency. (#9915)
Added menus for controlling toggle inputs, and showing recognised input
devices and control state.  Moved input menu options off main menu to a
submenu, as there are a lot of them now.

Moved menu heading drawing into base class, added headings to more
menus, and made headings more consistent with the menu items used to
reach them.  Also made terminology more consistent.

Changed the default names for buttons and hat switches/D-pads to use
1-based numbering.  DirectInput still returns 0-based button numbers for
some devices.

Removed local copy of MinGW xaudio2.h as it’s now included in the MSYS2
package.  Also fixed building the DirectSound sound output module with
the SDL OSD on Windows - the Windows headers are sensitive to include
order.

Started adding documentation for menus, to hopefully help people find
menus they remember seeing but can't recall how to access.

For translators, this makes terminology more consistent.  In particular:
* "Settings" is preferred over "configuration" in a number of places, as
  the latter can be construed as referring specifically to settings
  stored in .cfg files in the cfg_directory folder.  Also, references to
  saving machine configuration could be interpreted as relating to the
  settings on the "Machine Configuration" menu.
* The controls on host input devices (e.g. keys, buttons, joystick axes)
  are referred to as "controls", while emulated inputs are referred to
  as "inputs".
* The menus for assigning host controls to emulated inputs are called
  "input assignments" menus to distinguish them from other input
  settings menus.
* Combinations of controls that can be assigned to emulated inputs are
  referred to as "combinations" rather than "sequences".
* The potentially confusing term "ROM set" has been removed altogether.
  Use "short name" to refer to a device or system's identifier.
* "System" is used in almost places to refer to a complete, runnable
  system rather than "Machine".
* "Driver" is now only used to refer to source files where systems or
  devices are defined - it is no longer used to refer to individual
  systems.
* A few more menus have message context for the messages.  This makes it
  a bit easier to guess where the messages are used.  It also means you
  can use different translations in different places if necessary (e.g.
  if the same English text should be translated differently as an item
  in one menu and as a heading in another).
2022-06-11 21:47:19 +10:00
Vas Crabb
73a3b2bc7a Update Greek translation for autofire button name format 2022-04-23 06:00:02 +10:00
kongmao45678
b47c167d3f
Update simplified Chinese translation for autofire button name format 2022-04-23 05:59:07 +10:00
Vas Crabb
15ac4ca271
Added Ukrainian UI translation. [Stanley Kid] (#9100) 2022-04-05 01:51:06 +10:00
Vas Crabb
6101c55c96 -Updated the Czech and Slovak translations for the rest of the UI changes this month. [Milan Galcik]
-Reduced redundancy in a few more slot machine layouts. [Vas Crabb]
2021-12-25 06:31:42 +11:00
BraiNKilleRGR
bc718bb61c
Updated Greek Translation (#8958) 2021-12-17 07:03:03 +11:00
Vas Crabb
3a65909ca6 -Updated translations:
* Chinese (Traditional and Simplified) [YuiFAN]
* Czech [Milan Galcik]
* Slovak [Milan Galcik]

-Cleaned up a few trivial things.
2021-12-17 05:10:33 +11:00
Vas Crabb
7d8c657fad Moved localised I/O port name lookup into I/O port manager.
Added pseudo format specifiers to controller port names: %p for player
and %% for literal percent symbol.  This lets you get the localised
player identifier in overridden input names (see NES and Neo-Geo for
examples), and reduces the number of messages to translate.

For translators, the new messages are mostly previously existing
messages with wording adjusted for clarity (e.g. referring to "media"
rather than "ROMs" in several places, as things like disk and tape
images are included).  It's also possible to localise the "???"
dipslayed for an input without a valid name, but that should never
actually appear in practice.
2021-12-09 07:42:12 +11:00
Vas Crabb
e9738d869d -Completed Slovak translation. [Milan Galcik]
-Improved transliateration of a few game titles. [Vas Crabb]
2021-12-07 04:18:04 +11:00
Vas Crabb
d82c94fd9a More corrections to Slovak translation. [Milan Galcik] 2021-12-06 03:30:38 +11:00
Vas Crabb
a36ee84e5c -Filled in a few more Slovak messages after discussion with Milan.
-machine/dl11.cpp: Slight cleanup.
2021-12-04 03:01:44 +11:00
Vas Crabb
759c54b27d Various cleanups. 2021-12-02 03:21:21 +11:00
Vas Crabb
c2a18887b0 -Filled out most of the Slovak translation. [Milan Galcik]
-Cleaned up various bits and pieces. [Vas Crabb]
2021-11-30 23:57:04 +11:00
Vas Crabb
046d63d01d Minor cleanup:
* machine/wd_fdc.cpp: Code style consistency fixes.
* language/Greek: Removed obsolete messages.
2021-11-22 02:57:12 +11:00
BraiNKilleRGR
28759e0ec2
Updated Greek translation. (#8857) 2021-11-21 20:24:49 +11:00
Vas Crabb
171604d40a Updated Chinese translations. [YuiFAN] 2021-11-20 02:22:14 +11:00
Vas Crabb
1a6f832faa Updated localisations for UI changes in 0.238 development cycle.
For tranlators, the main changes are:
* The former "device mapping" menu is now "input device options" and
  includes the input provider module options.
* The analog controls menu (where sensitivity, auto-centre, etc. is
  configured) is now localisable.
* The timecode logging features (used when making gameplay videos) have
  been moved to a plugin, and display messages are localisable.
* There are a few extra messages for the autofire and input macro
  plugins to handle cases where a configured input is not present.
* The timer plugin has options to show wall clock time (real time
  elapsed according to host OS clock) or emulated time.
2021-11-19 03:39:16 +11:00
Vas Crabb
aa88dce2d2 Added partial Slovak translation. [Milan Galcik] 2021-11-19 02:45:04 +11:00
Vas Crabb
dff6c8c103 Removed obsolete messages from Brazilian Portuguese translation. 2021-11-18 02:49:25 +11:00
Vas Crabb
1572236346
Updated Brazilian Portuguese translation [Felipe] (#8836) 2021-11-18 02:44:05 +11:00