Botched firmware upgrade - did I destroy the stepper drivers?
About 15 minutes after posting this, it started working again. Either the driver had badly overheated and recovered after cooling down, or was never messed up and the firmware was just refusing to operate it with the nozzle cold. For the latter possibility, the stock firmware never had that behavior before, but maybe it's possible that some saved configuration to ignore nozzle-cold got lost in the flashing?