summaryrefslogtreecommitdiff
path: root/cgme.c
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2009-07-19 14:49:06 +0200
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2009-07-19 14:49:06 +0200
commitf87672ba62ec14a91f16a801e5fd019d1f4dcf59 (patch)
tree5cf48d14d9a2c1c3a2a98b5b400a62a3a4ebd732 /cgme.c
parente89e2345859798fa596e01bd9460a63c92785f49 (diff)
metadata WIP
Diffstat (limited to 'cgme.c')
-rw-r--r--cgme.c26
1 files changed, 23 insertions, 3 deletions
diff --git a/cgme.c b/cgme.c
index 9ad7cd56..c507975c 100644
--- a/cgme.c
+++ b/cgme.c
@@ -13,7 +13,9 @@ extern int sdl_player_freq; // hack!
int
cgme_init (const char *fname, int track, float start, float end) {
- gme_open_file (fname, &emu, sdl_player_freq);
+ if (gme_open_file (fname, &emu, sdl_player_freq)) {
+ return -1;
+ }
gme_start_track (emu, track);
track_info_t inf;
gme_track_info (emu, &inf, track);
@@ -107,9 +109,27 @@ cgme_add (const char *fname) {
snprintf (str, 1024, "%d %s - ?", i, inf.game);
}
it->tracknum = i;
- it->displayname = strdup (str);
+
+ // add metadata
+ ps_add_meta (it, "system", inf.system);
+ printf ("system: %s\n", inf.system);
+ ps_add_meta (it, "album", inf.game);
+ printf ("album: %s\n", inf.game);
+ ps_add_meta (it, "title", inf.song);
+ printf ("title: %s\n", inf.song);
+ ps_add_meta (it, "artist", inf.author);
+ printf ("artist: %s\n", inf.author);
+ ps_add_meta (it, "copyright", inf.copyright);
+ printf ("copyright: %s\n", inf.copyright);
+ ps_add_meta (it, "comment", inf.comment);
+ printf ("comment: %s\n", inf.comment);
+ ps_add_meta (it, "dumper", inf.dumper);
+ printf ("dumper: %s\n", inf.dumper);
+ char trk[10];
+ snprintf (trk, 10, "%d", i+1);
+ ps_add_meta (it, "track", trk);
+
ps_append_item (it);
-// printf ("added %s subtune\n", str);
}
else {
printf ("gme error: %s\n", ret);