summaryrefslogtreecommitdiffstatshomepage
path: root/src/tools/imgtool/modules/rsdos.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/imgtool/modules/rsdos.cpp')
-rw-r--r--src/tools/imgtool/modules/rsdos.cpp35
1 files changed, 17 insertions, 18 deletions
diff --git a/src/tools/imgtool/modules/rsdos.cpp b/src/tools/imgtool/modules/rsdos.cpp
index 501a50e814e..a7a082b6e95 100644
--- a/src/tools/imgtool/modules/rsdos.cpp
+++ b/src/tools/imgtool/modules/rsdos.cpp
@@ -44,14 +44,14 @@ struct rsdos_direnum
*********************************************************************/
#define MAX_DIRENTS ((18-2)*(256/32))
-static floperr_t get_rsdos_dirent(imgtool::image *f, int index_loc, struct rsdos_dirent *ent)
+static floperr_t get_rsdos_dirent(imgtool::image &f, int index_loc, struct rsdos_dirent *ent)
{
return floppy_read_sector(imgtool_floppy(f), 0, 17, 3, index_loc * 32, (void *) ent, sizeof(*ent));
}
-static floperr_t put_rsdos_dirent(imgtool::image *f, int index_loc, const struct rsdos_dirent *ent)
+static floperr_t put_rsdos_dirent(imgtool::image &f, int index_loc, const struct rsdos_dirent *ent)
{
if (index_loc >= MAX_DIRENTS)
return (floperr_t)IMGTOOLERR_FILENOTFOUND;
@@ -80,7 +80,7 @@ static void get_dirent_fname(char *fnamebuf, const struct rsdos_dirent *ent)
-static imgtoolerr_t lookup_rsdos_file(imgtool::image *f, const char *fname, struct rsdos_dirent *ent, int *position)
+static imgtoolerr_t lookup_rsdos_file(imgtool::image &f, const char *fname, struct rsdos_dirent *ent, int *position)
{
int i;
floperr_t ferr;
@@ -115,7 +115,7 @@ static imgtoolerr_t lookup_rsdos_file(imgtool::image *f, const char *fname, stru
-static UINT8 get_granule_count(imgtool::image *img)
+static UINT8 get_granule_count(imgtool::image &img)
{
UINT16 tracks;
UINT16 granules;
@@ -128,7 +128,7 @@ static UINT8 get_granule_count(imgtool::image *img)
#define MAX_GRANULEMAP_SIZE 256
/* granule_map must be an array of MAX_GRANULEMAP_SIZE bytes */
-static floperr_t get_granule_map(imgtool::image *img, UINT8 *granule_map, UINT8 *granule_count)
+static floperr_t get_granule_map(imgtool::image &img, UINT8 *granule_map, UINT8 *granule_count)
{
UINT8 count;
@@ -141,7 +141,7 @@ static floperr_t get_granule_map(imgtool::image *img, UINT8 *granule_map, UINT8
-static floperr_t put_granule_map(imgtool::image *img, const UINT8 *granule_map, UINT8 granule_count)
+static floperr_t put_granule_map(imgtool::image &img, const UINT8 *granule_map, UINT8 granule_count)
{
return floppy_write_sector(imgtool_floppy(img), 0, 17, 2, 0, granule_map, granule_count, 0); /* TODO: pass ddam argument from imgtool */
}
@@ -149,7 +149,7 @@ static floperr_t put_granule_map(imgtool::image *img, const UINT8 *granule_map,
-static imgtoolerr_t transfer_granule(imgtool::image *img, UINT8 granule, int length, imgtool::stream &f, imgtoolerr_t (*proc)(imgtool::image *, int, int, int, int, size_t, imgtool::stream &))
+static imgtoolerr_t transfer_granule(imgtool::image &img, UINT8 granule, int length, imgtool::stream &f, imgtoolerr_t (*proc)(imgtool::image &, int, int, int, int, size_t, imgtool::stream &))
{
imgtoolerr_t err = IMGTOOLERR_SUCCESS;
UINT8 track, sector;
@@ -167,21 +167,21 @@ static imgtoolerr_t transfer_granule(imgtool::image *img, UINT8 granule, int len
-static imgtoolerr_t transfer_from_granule(imgtool::image *img, UINT8 granule, int length, imgtool::stream &destf)
+static imgtoolerr_t transfer_from_granule(imgtool::image &img, UINT8 granule, int length, imgtool::stream &destf)
{
return transfer_granule(img, granule, length, destf, imgtool_floppy_read_sector_to_stream);
}
-static imgtoolerr_t transfer_to_granule(imgtool::image *img, UINT8 granule, int length, imgtool::stream &sourcef)
+static imgtoolerr_t transfer_to_granule(imgtool::image &img, UINT8 granule, int length, imgtool::stream &sourcef)
{
return transfer_granule(img, granule, length, sourcef, imgtool_floppy_write_sector_from_stream);
}
-static imgtoolerr_t process_rsdos_file(struct rsdos_dirent *ent, imgtool::image *img, imgtool::stream *destf, size_t *size)
+static imgtoolerr_t process_rsdos_file(struct rsdos_dirent *ent, imgtool::image &img, imgtool::stream *destf, size_t *size)
{
floperr_t ferr;
size_t s, lastgransize;
@@ -270,9 +270,8 @@ static imgtoolerr_t rsdos_diskimage_nextenum(imgtool::directory *enumeration, im
struct rsdos_direnum *rsenum;
struct rsdos_dirent rsent;
char fname[13];
- imgtool::image *image;
- image = &enumeration->image();
+ imgtool::image &image(enumeration->image());
rsenum = (struct rsdos_direnum *) enumeration->extra_bytes();
/* Did we hit the end of file before? */
@@ -334,7 +333,7 @@ static imgtoolerr_t rsdos_diskimage_freespace(imgtool::partition *partition, UIN
size_t s = 0;
UINT8 granule_count;
UINT8 granule_map[MAX_GRANULEMAP_SIZE];
- imgtool::image *image = &partition->image();
+ imgtool::image &image(partition->image());
ferr = get_granule_map(image, granule_map, &granule_count);
if (ferr)
@@ -351,7 +350,7 @@ static imgtoolerr_t rsdos_diskimage_freespace(imgtool::partition *partition, UIN
-static imgtoolerr_t delete_entry(imgtool::image *img, struct rsdos_dirent *ent, int pos)
+static imgtoolerr_t delete_entry(imgtool::image &img, struct rsdos_dirent *ent, int pos)
{
floperr_t ferr;
unsigned char g, i;
@@ -391,7 +390,7 @@ static imgtoolerr_t rsdos_diskimage_readfile(imgtool::partition *partition, cons
imgtoolerr_t err;
struct rsdos_dirent ent;
size_t size;
- imgtool::image *img = &partition->image();
+ imgtool::image &img(partition->image());
err = lookup_rsdos_file(img, fname, &ent, NULL);
if (err)
@@ -413,7 +412,7 @@ static imgtoolerr_t rsdos_diskimage_writefile(imgtool::partition *partition, con
{
floperr_t ferr;
imgtoolerr_t err;
- imgtool::image *img = &partition->image();
+ imgtool::image &img(partition->image());
struct rsdos_dirent ent, ent2;
size_t i;
UINT64 sz;
@@ -517,7 +516,7 @@ static imgtoolerr_t rsdos_diskimage_writefile(imgtool::partition *partition, con
static imgtoolerr_t rsdos_diskimage_deletefile(imgtool::partition *partition, const char *fname)
{
imgtoolerr_t err;
- imgtool::image *image = &partition->image();
+ imgtool::image &image(partition->image());
int pos;
struct rsdos_dirent ent;
@@ -533,7 +532,7 @@ static imgtoolerr_t rsdos_diskimage_deletefile(imgtool::partition *partition, co
static imgtoolerr_t rsdos_diskimage_suggesttransfer(imgtool::partition *partition, const char *fname, imgtool_transfer_suggestion *suggestions, size_t suggestions_length)
{
imgtoolerr_t err;
- imgtool::image *image = &partition->image();
+ imgtool::image &image(partition->image());
struct rsdos_dirent ent;
int pos;