1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-07-10 12:29:01 +00:00

Merge pull request #897 from TomHarte/LoadingImprovements

Corrects Spectrum TAP `is_at_end`.
This commit is contained in:
Thomas Harte 2021-03-29 15:27:06 -04:00 committed by GitHub
commit 48f794dc2d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -38,7 +38,7 @@ ZXSpectrumTAP::ZXSpectrumTAP(const std::string &file_name) :
}
bool ZXSpectrumTAP::is_at_end() {
return file_.tell() == file_.stats().st_size;
return file_.tell() == file_.stats().st_size && phase_ == Phase::Gap;
}
void ZXSpectrumTAP::virtual_reset() {
@ -111,7 +111,7 @@ Tape::Pulse ZXSpectrumTAP::virtual_get_next_pulse() {
}
void ZXSpectrumTAP::read_next_block() {
if(is_at_end()) {
if(file_.tell() == file_.stats().st_size) {
phase_ = Phase::Gap;
} else {
block_length_ = file_.get16le();