[IIP] Generation of custom mapper for DOSbox

  • Banned

    @Dragu @rockaddicted @lmerckx

    Hello guys, my Idea In Progress is to generate one or several dosbox mapper programmatically, so that everyone can use its joystick independently of the connected gamepad without having to redo the mapper file

    The dosbox mapper file uses SDL event so this is no more complicated than using configgen for other emulators to generate a conf file.

    This thread is dedicated to finding what would be in your mind the perfect mapping and more universal one.

    That is I don't know if it would be better to generate one file to use with every game, or to generale several files for types of games (like standard, fps, pinball)
    This second solution would of course cause some trouble with configgen, unless we add some new parameters to the custom parameter in the dosbox.cfg in the game folder, like mappertype=FPS for instance and use that from dosbox.code to use the right generated file.
    for instance we could have the following conf :

    and then dosbox would use the mapper file mapper-FPS.map generated from configgen into dosbox conf folder (not in our local game folder to still allow dedicated mapper file)

    Ok but right now I wanna list which keys and/or controls you will must be mapped on the controller, I listed those one for standard conf, keeping in mine that controller's buttons are limited, even more on an standard snes one :
    4 directions keys (pad + left joystick)
    mouse (right joystick)
    mouse right clik (R2) and left click (L2)
    ctrl (A / Cross)
    shift (X / Square)
    alt (B / Circle)
    space (Y / Triangle)
    ctrl + F9 (Xbox / Home)
    enter (start)
    esct (select)

    For FPS for instance we coul use either mapping on the right stick to get something to modern FPS controls on game controllers, or like in PrDoom, map alt+left on L1 and alt+right on R1

    What do you think ?

  • Banned

    The restriction that I see and what is missing to dosbox, a virtual keyboard.
    Because you need in certain games always special keys that are missing in some configurations. As some letters or just from 1-9. (Games with code door lock)
    The other problem, you have as many controller configurations as installations. Ok, with PS3 or other gamepad, you arrive to a certain standard. But as arcade console, bartop and other you have 1 player configuration and 2 player configuration. So you can mapp both player to one dosbox game, if keys are missing. with 2 PS3 Controller, should be more difficult. But good idea to try to make something that make configuration more easy, specially for beginners. For me, I can just repeat, with all the keys often needed in Dos Games, a virtual keyboard is missing.
    As example, I arrived without keyboard help through Keen1-Keen5, and than, in Keen6 he ask every time for the monster names before start. I have a bluetooth keyboard (5mm) just gliding between shell and feets of my bartop, so easy. But with a virtual keyboard, much better.

  • Banned

    @dragu said in [IIP] Generation of custom mapper for DOSbox:

    Because you need in certain games always special keys that are missing in some configurations. As some letters or just from 1-9. (Games with code door lock)

    yeah I would say you won't acoid the use of a real keyboard for that.

    and for first version I would just concentrate on mapping the first player

  • Revisor

    For information, I'm working for some weeks on a virtual keyboard for DosBox.
    Still need some work but the POC is a success. So, I hope to propose one soon.

    The concept is simple: the virtual keyboard can be associated to any button via the mapper.
    Then, it is possible to press any key of the keyboard using a mouse or the joystick.
    Very similar to the ScummVM one in the conception ...

  • Banned

    @lmerckx even cooler, with that and a dynamic mapper we could do anything 🙂

  • Banned

    Great news ! And I think will be warmly welcome by the dosbox users.
    Kepp up this great work !

Want to support us ?