Elektrine lite

← Feed

@alice@mk.nyaa.place

Post #3434655

2025-09-08 02:47 UTC

I slightly redrew the N64 stick to resemble the physical one more, in both the 8BitDo 64 layout and the N64 touch overlay. I also started implementing snapping to the octagon corners (the original N64 gamepad had an octagonal cutout around its stick rather than circular, so that pushing it all the way in cardinal directions or diagonals will make the stick perfectly aligned) for the touch overlay (it really helps in these games which are often really boxy and expect you to run in a straight line; @luna@lunar.place had a lot of trouble with narrow bridges and such in Ocarina of Time because of that - it's even worse on touch as it's harder to keep your thumb steady, so this should help. Another thing I noticed is that according to an N64 input test ROM (usb64), when nudging this gamepad's stick into a diagonal corner of its octagonal shape (yes, it replicates that, that's a part of its appeal), the distance doesn't match what N64 expects - meh. The distance I get is 57 (the distance in cardinal directions is 80 and 57 is just 80 \times \sin({\pi \over 4}), rounded up - so basically same as what a gamepad with a circular cutout would report. I'm not sure what the value it actually expects is, but sth needs to be adjusted in the m64p port, we'll see tomorrow. And - Sega 3D Control Pad needs a deadzone, oops.

Replies (1)

  • @alice@mk.nyaa.place 2025-09-08 21:15

    Ok, all of that is done now - The stick is now clipped to an octagon - It also snaps to the corners - There's haptic feedback when it does And, N64 stick range has been fixed and it and Saturn both have deadzones now. PSX may need it too, not sure offhand. In theory I could adjust the touch stick to use the actual octagon shape N64 controller uses (this one is a regular octagon, so matches GameCube controller and Wii Nunchuk+Classic Controller, but not N64 - N64 one has its corners at (0.8; 0.8) instead of approx. (0.7; 0.7). However, not sure there's much of a point.

    Open ##3434654