"Snippets are us" is down the road a ways. Here, we need to see all of your code.
This should be writing the value -20 at address 0.
BPFRMv = EEPROM_readAnything(BPFRM, BPFRMv);
This is reading from address 0, and putting the result in BPFRMv. Then, it assigns the return value to BPFRMv, overwriting the value that it read from the EEPROM.
The return value is the number of bytes read. So, BPFRMv ends up containing 2.
BPTOv = EEPROM_readAnything(BPTO, BPTOv);
Then, you similarly crap all over BPTOv.
BPV = map(analogRead(BPP), 0, 1023, BPFRMv, BPTOv);
Psst. You to range has a size of 0, since both ends of the range are 2. The result, in the map function, will be a divide by 0, so the result of that division, and the whole map output, will be undefined.