It gave me a lot of frustration and wasted many hours... so here is hopefully one solution for everyone else.
6 button = XYZ,ABC
You need to have a USB keyboard available (ENTER=Menu, A=select, S=back)
- Go to menu Controller Settings
- Power on the m30 controller in "Android mode" by holding B+start for 2 seconds or so (xbox mode also works fine (X+start), but the shown controller name would indicate xbox instead of m30), and hold the pair button until the 4 leds start looping
- Choose pair controller and select the M30 one
- Recalbox uses a virtual/standard controller in SNES configuration (YX, BA), so lookup a picture of it for comparison. Choose Configure a controller from the menu.
- map
up, down, left, right
A > C
B > B
X > Z
Y > Y
start > start
select > -
hotkey > %
(the UI goes totally wonkers (cursor jumps around) when trying to set below configuration)
LT > left trigger (AXIS +, NOT -)
RT > right trigger (AXIS +, NOT -)
Use the keyboard cursor keys and controller "A"(C) button to delete a wrong entry and try again till it shows a positive (+) AXIS mapping (important!)
LT2 > X
RT2 > A
OK
Only need to do this once per controller model.
Test it out in super mario world or whatever to check that the ABXY button are correctly arranged according to SNES standards (they are).
- Go to megadrive/genesis and start Golden Axe 2 or whatever.
%+B to open retroarch menu
Scroll to Controls/Port 1 controls
A>C
B>B
X>Z
Y>Y
LB>X
RB>A
L2B>X
R2B>A
Same for Port 2 controls
Choose menu Save content directory remap file
It would help if one of the Recalbox devs would just get an M30 to debug the settings/menu. It was a lot of trial and error because it seems sometimes things worked, sometimes not. Anyway, above should be helpful and fix things for current version.