I’m unfamiliar with which pins can support analog reading. The thermistor ports would be possible in theory but they have pullup resistors that will make the readings wonky, depending on the resistance of the joystick. You will have to get your hands dirty in the firmware to disable or remap the thermistors and fix whatever else might break because of that.
You can connect the joystick without any hardware modifications and see if you get decent resolution on the ADC readings. If the joystick has high resistance then it is likely that you will have poor resolution. If you get lucky then the ADC readings might be usable and you would just set your dead zone and extreme limits based on the values you get from M119.
The other alternative would be to remove the pullup resistors from the board. Then your joystick will be able to use the full range of the analog pins.
Also, I tried to follow the existing pattern in Marlin for analog reading, which “should” work for the 32-bit boards, but as far as I know this has not been tested. I have not looked closely at the hardware abstraction layer, so there is a chance this might not be correct for non-Arduino boards.