summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats')
-rw-r--r--src/lib/formats/d64_dsk.cpp8
-rw-r--r--src/lib/formats/g64_dsk.cpp28
-rw-r--r--src/lib/formats/ibmxdf_dsk.cpp8
-rw-r--r--src/lib/formats/upd765_dsk.cpp11
-rw-r--r--src/lib/formats/victor9k_dsk.cpp8
-rw-r--r--src/lib/formats/wd177x_dsk.cpp8
6 files changed, 39 insertions, 32 deletions
diff --git a/src/lib/formats/d64_dsk.cpp b/src/lib/formats/d64_dsk.cpp
index 1a96c11cd40..a0460554d8f 100644
--- a/src/lib/formats/d64_dsk.cpp
+++ b/src/lib/formats/d64_dsk.cpp
@@ -12,8 +12,6 @@
#include "formats/d64_dsk.h"
-#include "emucore.h" // emu_fatalerror
-
d64_format::d64_format()
{
@@ -246,8 +244,10 @@ bool d64_format::load(io_generic *io, uint32_t form_factor, floppy_image *image)
floppy_image_format_t::desc_e *desc = this->get_sector_desc(f, current_size, sector_count, id1, id2, gap2);
int remaining_size = total_size - current_size;
- if(remaining_size < 0)
- throw emu_fatalerror("d64_format: Incorrect track layout, max_size=%d, current_size=%d", total_size, current_size);
+ if(remaining_size < 0) {
+ osd_printf_error("d64_format: Incorrect track layout, max_size=%d, current_size=%d\n", total_size, current_size);
+ return false;
+ }
this->fix_end_gap(desc, remaining_size);
diff --git a/src/lib/formats/g64_dsk.cpp b/src/lib/formats/g64_dsk.cpp
index fc75b1a6528..685b16c42ca 100644
--- a/src/lib/formats/g64_dsk.cpp
+++ b/src/lib/formats/g64_dsk.cpp
@@ -12,8 +12,6 @@
#include "formats/g64_dsk.h"
-#include "emucore.h" // emu_fatalerror
-
#define G64_FORMAT_HEADER "GCR-1541"
@@ -34,9 +32,9 @@ int g64_format::identify(io_generic *io, uint32_t form_factor)
char h[8];
io_generic_read(io, h, 0, 8);
- if (!memcmp(h, G64_FORMAT_HEADER, 8)) {
+ if (!memcmp(h, G64_FORMAT_HEADER, 8))
return 100;
- }
+
return 0;
}
@@ -46,8 +44,10 @@ bool g64_format::load(io_generic *io, uint32_t form_factor, floppy_image *image)
std::vector<uint8_t> img(size);
io_generic_read(io, &img[0], 0, size);
- if (img[POS_VERSION]) {
- throw emu_fatalerror("g64_format: Unsupported version %u", img[POS_VERSION]);
+ if (img[POS_VERSION])
+ {
+ osd_printf_error("g64_format: Unsupported version %u\n", img[POS_VERSION]);
+ return false;
}
int track_count = img[POS_TRACK_COUNT];
@@ -68,12 +68,18 @@ bool g64_format::load(io_generic *io, uint32_t form_factor, floppy_image *image)
continue;
if (dpos > size)
- throw emu_fatalerror("g64_format: Track %u offset %06x out of bounds", track, dpos);
+ {
+ osd_printf_error("g64_format: Track %u offset %06x out of bounds\n", track, dpos);
+ return false;
+ }
uint32_t speed_zone = pick_integer_le(&img[0], spos, 4);
if (speed_zone > 3)
- throw emu_fatalerror("g64_format: Unsupported variable speed zones on track %d", track);
+ {
+ osd_printf_error("g64_format: Unsupported variable speed zones on track %d\n", track);
+ return false;
+ }
uint16_t track_bytes = pick_integer_le(&img[0], dpos, 2);
int track_size = track_bytes * 8;
@@ -137,8 +143,10 @@ bool g64_format::save(io_generic *io, floppy_image *image)
if ((speed_zone = generate_bitstream(track, head, 3, &trackbuf[0], track_size, image)) == -1)
if ((speed_zone = generate_bitstream(track, head, 2, &trackbuf[0], track_size, image)) == -1)
if ((speed_zone = generate_bitstream(track, head, 1, &trackbuf[0], track_size, image)) == -1)
- if ((speed_zone = generate_bitstream(track, head, 0, &trackbuf[0], track_size, image)) == -1)
- throw emu_fatalerror("g64_format: Cannot determine speed zone for track %u", track);
+ if ((speed_zone = generate_bitstream(track, head, 0, &trackbuf[0], track_size, image)) == -1) {
+ osd_printf_error("g64_format: Cannot determine speed zone for track %u\n", track);
+ return false;
+ }
LOG_FORMATS("head %u track %u size %u cell %u\n", head, track, track_size, c1541_cell_size[speed_zone]);
diff --git a/src/lib/formats/ibmxdf_dsk.cpp b/src/lib/formats/ibmxdf_dsk.cpp
index b9a55daca85..592f603ef30 100644
--- a/src/lib/formats/ibmxdf_dsk.cpp
+++ b/src/lib/formats/ibmxdf_dsk.cpp
@@ -32,8 +32,6 @@
#include "ibmxdf_dsk.h"
-#include "emucore.h" // emu_fatalerror
-
ibmxdf_format::ibmxdf_format() : wd177x_format(formats)
{
@@ -196,8 +194,10 @@ bool ibmxdf_format::load(io_generic *io, uint32_t form_factor, floppy_image *ima
int total_size = 200000000/tf.cell_size;
int remaining_size = total_size - current_size;
- if(remaining_size < 0)
- throw emu_fatalerror("ibmxdf_format: Incorrect track layout, max_size=%d, current_size=%d", total_size, current_size);
+ if(remaining_size < 0) {
+ osd_printf_error("ibmxdf_format: Incorrect track layout, max_size=%d, current_size=%d\n", total_size, current_size);
+ return false;
+ }
// Fixup the end gap
desc[end_gap_index].p2 = remaining_size / 16;
diff --git a/src/lib/formats/upd765_dsk.cpp b/src/lib/formats/upd765_dsk.cpp
index ee3fda0abda..4265aea6a36 100644
--- a/src/lib/formats/upd765_dsk.cpp
+++ b/src/lib/formats/upd765_dsk.cpp
@@ -10,8 +10,6 @@
#include "formats/upd765_dsk.h"
-#include "emucore.h" // emu_fatalerror
-
upd765_format::upd765_format(const format *_formats) : file_header_skip_bytes(0), file_footer_skip_bytes(0), formats(_formats)
{
@@ -192,8 +190,7 @@ bool upd765_format::load(io_generic *io, uint32_t form_factor, floppy_image *ima
int current_size;
int end_gap_index;
- switch (f.encoding)
- {
+ switch(f.encoding) {
case floppy_image::FM:
desc = get_desc_fm(f, current_size, end_gap_index);
break;
@@ -205,8 +202,10 @@ bool upd765_format::load(io_generic *io, uint32_t form_factor, floppy_image *ima
int total_size = 200000000/f.cell_size;
int remaining_size = total_size - current_size;
- if(remaining_size < 0)
- throw emu_fatalerror("upd765_format: Incorrect track layout, max_size=%d, current_size=%d", total_size, current_size);
+ if(remaining_size < 0) {
+ osd_printf_error("upd765_format: Incorrect track layout, max_size=%d, current_size=%d\n", total_size, current_size);
+ return false;
+ }
// Fixup the end gap
desc[end_gap_index].p2 = remaining_size / 16;
diff --git a/src/lib/formats/victor9k_dsk.cpp b/src/lib/formats/victor9k_dsk.cpp
index 49e285d4e2a..188b4c250e4 100644
--- a/src/lib/formats/victor9k_dsk.cpp
+++ b/src/lib/formats/victor9k_dsk.cpp
@@ -99,8 +99,6 @@
#include "formats/victor9k_dsk.h"
-#include "emucore.h" // emu_fatalerror
-
victor9k_format::victor9k_format()
{
@@ -278,8 +276,10 @@ bool victor9k_format::load(io_generic *io, uint32_t form_factor, floppy_image *i
floppy_image_format_t::desc_e *desc = get_sector_desc(f, current_size, sector_count);
int remaining_size = total_size - current_size;
- if(remaining_size < 0)
- throw emu_fatalerror("victor9k_format: Incorrect track layout, max_size=%d, current_size=%d", total_size, current_size);
+ if(remaining_size < 0) {
+ osd_printf_error("victor9k_format: Incorrect track layout, max_size=%d, current_size=%d\n", total_size, current_size);
+ return false;
+ }
// Fixup the end gap
desc[18].p2 = remaining_size / 8;
diff --git a/src/lib/formats/wd177x_dsk.cpp b/src/lib/formats/wd177x_dsk.cpp
index fae7bd5f8a6..a7a829efb8f 100644
--- a/src/lib/formats/wd177x_dsk.cpp
+++ b/src/lib/formats/wd177x_dsk.cpp
@@ -10,8 +10,6 @@
#include "formats/wd177x_dsk.h"
-#include "emucore.h" // emu_fatalerror
-
wd177x_format::wd177x_format(const format *_formats)
{
@@ -228,8 +226,10 @@ bool wd177x_format::load(io_generic *io, uint32_t form_factor, floppy_image *ima
int total_size = 200000000/tf.cell_size;
int remaining_size = total_size - current_size;
- if(remaining_size < 0)
- throw emu_fatalerror("wd177x_format: Incorrect track layout, max_size=%d, current_size=%d", total_size, current_size);
+ if(remaining_size < 0) {
+ osd_printf_error("wd177x_format: Incorrect track layout, max_size=%d, current_size=%d\n", total_size, current_size);
+ return false;
+ }
// Fixup the end gap
desc[end_gap_index].p2 = remaining_size / 16;