testbench: fix bug where sim_sdmmc would return bad data in some cases
testbench: fix bug where sim_sdmmc would return bad data in some cases

When a read command was sent, it would set block_device_read_offset. However,
when it returned bytes, it would use block_address. This worked if programs
read starting from address 0 (like sceneview), but failed for programs
that read from random locations.  Collapsed into one variable and gave a more
descriptive name to indicate it is the byte offset.

FulcronZ/NyuziProcessor,jbush001/NyuziProcessor,FulcronZ/NyuziProcessor,jbush001/NyuziProcessor,jbush001/NyuziProcessor,hoangt/NyuziProcessor,hoangt/NyuziProcessor,hoangt/NyuziProcessor,FulcronZ/NyuziProcessor,jbush001/NyuziProcessor,jbush001/NyuziProcessor,hoangt/NyuziProcessor,jbush001/NyuziProcessor,FulcronZ/NyuziProcessor