diff options
Diffstat (limited to 'src/devices/imagedev/cassette.cpp')
-rw-r--r-- | src/devices/imagedev/cassette.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/devices/imagedev/cassette.cpp b/src/devices/imagedev/cassette.cpp index 62f2d9306c3..622a6994fec 100644 --- a/src/devices/imagedev/cassette.cpp +++ b/src/devices/imagedev/cassette.cpp @@ -252,11 +252,16 @@ void cassette_image_device::device_start() bool cassette_image_device::call_create(int format_type, util::option_resolution *format_options) { - return call_load(); + return internal_load(true); } bool cassette_image_device::call_load() { + return internal_load(false); +} + +bool cassette_image_device::internal_load(bool is_create) +{ casserr_t err; int cassette_flags; const char *extension; @@ -264,7 +269,7 @@ bool cassette_image_device::call_load() device_image_interface *image = nullptr; interface(image); - if ((has_been_created()) || (length() == 0)) + if (is_create || (length() == 0)) { /* creating an image */ err = cassette_create((void *)image, &image_ioprocs, &wavfile_format, m_create_opts, CASSETTE_FLAG_READWRITE|CASSETTE_FLAG_SAVEONEXIT, &m_cassette); |