Add a feature to control if 128K, 4MB, or 16MB reads should be supported [-no16M, -no4M, -no128K]. Allows trying out different read mechanisms potentially for troubleshooting or speed measurement. Also return status on which read sizes were used.
"Force" flag should not cause bail out if 16MB consecutive region has failed -- there may be (and often are) MMIO gaps after a while which still contain OS data.
Use SwitchToThread instead of Sleep(0), since that's the actual behavior desired.
Use 500ms pipe timeout
Fix a typo
Support full memory read without an actual "dump" [-noout] to disk. Useful for testing/speed measurement/demo.