summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/tools/imgtool/modules/amiga.c
diff options
context:
space:
mode:
author Dirk Best <mail@dirk-best.de>2014-10-02 13:52:53 +0000
committer Dirk Best <mail@dirk-best.de>2014-10-02 13:52:53 +0000
commit18104e5f61a14b49f6b9953adfdb8ff43265fc77 (patch)
tree8b2088a04e806cbeeb5fbb83a223735e7b8a0b00 /src/mess/tools/imgtool/modules/amiga.c
parent4a9d11421ef67d216d3cdf5102edfcc5e03ecc8d (diff)
Imgtool: Display more info about Amiga images
Diffstat (limited to 'src/mess/tools/imgtool/modules/amiga.c')
-rw-r--r--src/mess/tools/imgtool/modules/amiga.c23
1 files changed, 21 insertions, 2 deletions
diff --git a/src/mess/tools/imgtool/modules/amiga.c b/src/mess/tools/imgtool/modules/amiga.c
index e71f3bf5e77..0f7c02a5624 100644
--- a/src/mess/tools/imgtool/modules/amiga.c
+++ b/src/mess/tools/imgtool/modules/amiga.c
@@ -1765,12 +1765,31 @@ static void amiga_image_info(imgtool_image *img, char *string, size_t len)
{
imgtoolerr_t ret;
root_block root;
+ char info[255];
+ time_t t_c, t_v, t_r;
+ char c[19], v[19], r[19];
ret = read_root_block(img, &root);
if (ret) return;
- memcpy(string, root.diskname, MIN(root.name_len, len));
- string[MIN(root.name_len, len)] = '\0';
+ t_c = amiga_crack_time(&root.c);
+ t_v = amiga_crack_time(&root.v);
+ t_r = amiga_crack_time(&root.r);
+
+ strftime(c, sizeof(c), "%d-%b-%y %H:%M:%S", localtime(&t_c));
+ strftime(v, sizeof(v), "%d-%b-%y %H:%M:%S", localtime(&t_v));
+ strftime(r, sizeof(r), "%d-%b-%y %H:%M:%S", localtime(&t_r));
+
+ strcpy(info, "Volume name: ");
+ strncat(info, (char *)root.diskname, root.name_len);
+ strcat(info, "\nVolume created: ");
+ strcat(info, c);
+ strcat(info, "\nVolume modified: ");
+ strcat(info, v);
+ strcat(info, "\n Root modified: ");
+ strcat(info, r);
+
+ strncpy(string, info, len);
}