WebMSX release 3.0

Página 3/3
1 | 2 |

Por gdx

Enlighted (4695)

Imagen del gdx

27-09-2016, 08:48

ppeccin wrote:

The way you seem to prefer, you would need to display the HOST keyboard and not the MSX keyboard (which is a very big problem since there are infinite host keyboard layouts depending on country/language).

No, not at all. I do not understand why you say that. I say it is an MSX emulator so you have to show a MSX keyboard, a MSX mouse and a MSX joypad.

ppeccin wrote:

You would need to add a menu for the user to choose which Joystick button to assign to each key (ugly!), you would have to display all that info mixed with the other key mappings.

No. A contextual menu appears when we click. You need put just a small indicator on the key that has been set with a mirror. (an indicator more discreet than the keyboard SNES for OSX is possible.)

Por tfh

Prophet (2975)

Imagen del tfh

27-09-2016, 09:03

ppeccin wrote:

Coming next version: Mobile (phone/tablet) interface, with virtual on-screen touch controls! :-)

Cool! Smile

Por ppeccin

Champion (376)

Imagen del ppeccin

28-09-2016, 00:01

The problem is just that the "image" of the Joypad displayed is not exactly equal to a real branded MSX Joypad? The keyboard I show is also not exactly like any real MSX keyboard. Its a generic, fictional keyboard. Why is that such a huge problem?
I told you, WMSX does not try to emulate any real component, so it will NOT show any branded hardware images. It will always show fictional hardware, that's all!

gdx wrote:

No. A contextual menu appears when we click. You need put just a small indicator on the key that has been set with a mirror. (an indicator more discreet than the keyboard SNES for OSX is possible.)

Can you define more precisely what a "mirror key" is? I think you are missing some scenarios...

Por gdx

Enlighted (4695)

Imagen del gdx

28-09-2016, 00:59

A mirror is another button that does the same thing.
For example: if we define the joypad button 3 on F5 key, button 3 will mirror the F5 key. (the button 3 will have the same effect as F5).
I have not missed scenario. You can make a tab to set the PC keyboard keys and another tab to set mirror keys. It's simple and effective for all cases.

Por ppeccin

Champion (376)

Imagen del ppeccin

29-09-2016, 00:40

gdx wrote:

A mirror is another button that does the same thing.
For example: if we define the joypad button 3 on F5 key, button 3 will mirror the F5 key. (the button 3 will have the same effect as F5).
I have not missed scenario. You can make a tab to set the PC keyboard keys and another tab to set mirror keys. It's simple and effective for all cases.

I really think you are missing scenarios. You come with a solution for each case, but that invalidates other cases!

But well, if you can propose a better and SIMPLER interface, that can map all the possible variations that the current interface allows, while satisfying the following requisites, I promise I will consider it:

- MSX Keyboard fully configurable. Any host key can be mapped to any MSX key, including duplicates and compositions (ex: Both ESC and ALT-F1 on Host press ESC on the MSX. ScrollLock or CTRL-S on Host press STOP on the MSX. AltGr-Ç key on a Brazilian keyboard presses SELECT on the MSX)
- Keyboard mappings can be fully changed or reset without interfering with Joysticks or Joykeys mappings.

- Joykeys (joystick emulation with host keyboard) fully configurable. Any Host keyboard key can be mapped to any MSX Joystick button, including duplicates and compositions (Ex: Host Z or X press Joystick button A on the MSX. Host X also presses button B on the MSX)
- Joykeys can be turned on/off for 1 or 2 joysticks, or swapped, without the user having to reconfigure mappings. (Ex, user may want to play a 2-player game with player 1 being controlled with Host Joystick 1 and player 2 with Joykeys emulation on port 2. Later he wants to just use the keyboard normally without having it pressing joysticks buttons)

- Joysticks fully configurable. Any Host Joystick button can press any MSX Joystick button, including duplicates on both ways (ex. Host button 3 presses both button A and B (good for Zanac!) on the MSX Joystick. Host button 6 or 7 press UP on the MSX Joystick)
- Additional Host Joystick buttons can be mapped to any HOST keyboard keys, including duplicates and compositions (ex: both Host buttons 7 and 8 press ALT+P, so the user can map an emulator function (here, PAUSE) to a controller button. Host button 9 press ESC on the keyboard)
- Joysticks can be turned on/off or swapped without having to reconfigure mappings. (Ex. user may want to play a 2-player game with player 1 being controlled on the keyboard and player 2 (port 2) on the Host Joystick 1. Later he wants to play a 1-player game using just Host Joystick 1 on port 1)

REMEMBER:

- The user may have 2 DIFFERENT hardware Joysticks active in the host machine, with different layouts and number of buttons.
- The user may have 2 (or more) DIFFERENT keyboards active, with different layouts.
- The user may have a completely unimaginable Host Keyboard depending on Country/Language. There may be keys that you don't even know exist. Those keys must work normally and be mapped to MSX Keyboard or Joykeys emulation. Its virtually impossible to display host keyboard layouts, or offer a list of host keyboard keys to be chosen.
- Its much, much better if the user can just press the keyboard key or controller button he wants to assign, instead of choosing from a list or menu with several options.
- WMSX is on the web, and its multi platform. It can be used on computers, tablets with wireless keyboards, or anything that runs it. Its not just for MACs, for instance. You can't tell what the hell of a keyboard or controller the user may want to use!

Please, just don't invalidade the premises! Those make the flexibility I want to give users.
If you can think of a COMPLETE interface, that is better and simpler, please tell me! I will consider it.

Regards,
Peccin

Por ppeccin

Champion (376)

Imagen del ppeccin

29-09-2016, 00:29

Also, you would help me much more if you tell me the real problems or difficulties you are facing, instead of proposing solutions directly!

The XY Problem

Por gdx

Enlighted (4695)

Imagen del gdx

29-09-2016, 01:15

ppeccin wrote:

- MSX Keyboard fully configurable. Any host key can be mapped to any MSX key, including duplicates and compositions (ex: Both ESC and ALT-F1 on Host press ESC on the MSX. ScrollLock or CTRL-S on Host press STOP on the MSX. AltGr-Ç key on a Brazilian keyboard presses SELECT on the MSX)
- Keyboard mappings can be fully changed or reset without interfering with Joysticks or Joykeys mappings.

- Joykeys (joystick emulation with host keyboard) fully configurable. Any Host keyboard key can be mapped to any MSX Joystick button, including duplicates and compositions (Ex: Host Z or X press Joystick button A on the MSX. Host X also presses button B on the MSX)
- Joykeys can be turned on/off for 1 or 2 joysticks, or swapped, without the user having to reconfigure mappings. (Ex, user may want to play a 2-player game with player 1 being controlled with Host Joystick 1 and player 2 with Joykeys emulation on port 2. Later he wants to just use the keyboard normally without having it pressing joysticks buttons)

- Joysticks fully configurable. Any Host Joystick button can press any MSX Joystick button, including duplicates on both ways (ex. Host button 3 presses both button A and B (good for Zanac!) on the MSX Joystick. Host button 6 or 7 press UP on the MSX Joystick)
- Additional Host Joystick buttons can be mapped to any HOST keyboard keys, including duplicates and compositions (ex: both Host buttons 7 and 8 press ALT+P, so the user can map an emulator function (here, PAUSE) to a controller button. Host button 9 press ESC on the keyboard)
- Joysticks can be turned on/off or swapped without having to reconfigure mappings. (Ex. user may want to play a 2-player game with player 1 being controlled on the keyboard and player 2 (port 2) on the Host Joystick 1. Later he wants to play a 1-player game using just Host Joystick 1 on port 1)

I'm not talented enough English to explain precisely but all this remains feasible almost in the same way with the method I explained. Just the logic of use changes. It's even compatible with touchscreens (multitouch only for shortcuts).

Página 3/3
1 | 2 |