I tried to disable soft limits it didn't help, so, jogging works, homing works
here is a log of G91 G01 Z-1.0 F50
2019-12-11 14:25:49.255 - Logging Enabled.
2019-12-11 14:25:50.533 - API: mcCntlMdiExecute(inst = 0, commands = 'G91 G01 Z-1.0 F50') (Mach4GUI)
2019-12-11 14:25:50.637 - Attempt transition from "Idle" on event "MDI Start" controller.cpp:2260
2019-12-11 14:25:50.637 - Signal id 1127, (Jog Enabled), changed from HIGH to LOW.
2019-12-11 14:25:50.638 - S_IDLE_on_exit
2019-12-11 14:25:50.638 - Signal id 1172, (Machine Idle), changed from HIGH to LOW.
2019-12-11 14:25:50.639 - ACTION_start_mdi
2019-12-11 14:25:50.639 - SoftSync()! Clearing planner.
2019-12-11 14:25:50.660 - S_MDI_RUNNING_on_entry
2019-12-11 14:25:50.660 - SoftSync()! Clearing planner. stateinterface.cpp:1313
2019-12-11 14:25:50.660 - S_MDI_RUNNING2_on_entry
2019-12-11 14:25:50.661 - Signal id 1114, (Gcode Running), changed from LOW to HIGH.
2019-12-11 14:25:50.679 - Capping Z minimum to 0.000000.4 based on parameter 1801
2019-12-11 14:25:50.781 - Attempt transition from "MDI Running" on event "Stop" gcodeexec.cpp:1309
2019-12-11 14:25:50.781 - S_MDI_RUNNING2_on_exit
2019-12-11 14:25:50.781 - Signal id 1114, (Gcode Running), changed from HIGH to LOW.
2019-12-11 14:25:50.781 - S_MDI_RUNNING_on_exit
2019-12-11 14:25:50.781 - ACTION_stop
2019-12-11 14:25:50.799 - S_IDLE_on_entry
2019-12-11 14:25:50.804 - Signal id 1172, (Machine Idle), changed from LOW to HIGH.