So it seems that when "software (FMC)" derated, new max thrust TL position is between full aft and full forward, and when "hardware" derated, new max thrust TL position is full forward, is it right?
As long as you include derates "firmware" encoded in the EEC as "hardware" derates, you are essentially correct. The main physical difference between a CF6-80-B1 and CF6-80-B5 engine is an EEC module that limits thrust. So, it is "software" limited, but not in the FMC.