summaryrefslogtreecommitdiff
path: root/src/palette2c.c
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2013-03-13 21:20:58 +0000
committerVincent Sanders <vince@kyllikki.org>2013-03-13 21:20:58 +0000
commit1ef631e23888a0356387c4cd5cf4730c4a2fa8fa (patch)
treef89eddf4720b7e7a5eacfcf3596f5175decc5da1 /src/palette2c.c
parent97618ed23a10b9866dfece67c194fd6a56ec38f3 (diff)
downloadlibrosprite-1ef631e23888a0356387c4cd5cf4730c4a2fa8fa.tar.gz
move librosprite to core buildsystem
some fixmes exist for unbuilt tools
Diffstat (limited to 'src/palette2c.c')
-rw-r--r--src/palette2c.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/palette2c.c b/src/palette2c.c
new file mode 100644
index 0000000..bbe272c
--- /dev/null
+++ b/src/palette2c.c
@@ -0,0 +1,48 @@
+/*
+ * This file is part of librosprite.
+ * Licensed under the MIT License,
+ * http://www.opensource.org/licenses/mit-license.php
+ * Copyright 2008 James Shaw <js102@zepler.net>
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "librosprite.h"
+
+int main(int argc, char *argv[])
+{
+ if (argc < 2) {
+ printf("Usage: palette2c palettefile\n");
+ exit(EXIT_FAILURE);
+ }
+
+ char* filename = argv[1];
+
+ FILE* f = fopen(filename, "rb");
+ if (f == NULL) {
+ printf("Can't load palettefile %s\n", filename);
+ exit(EXIT_FAILURE);
+ }
+
+ struct rosprite_file_context* ctx;
+ if (rosprite_create_file_context(f, &ctx) != ROSPRITE_OK) {
+ exit(EXIT_FAILURE);
+ }
+
+ struct rosprite_palette* palette;
+ if (rosprite_load_palette(rosprite_file_reader, ctx, &palette) != ROSPRITE_OK) {
+ exit(EXIT_FAILURE);
+ }
+
+ for (uint32_t i = 0; i < palette->size; i++) {
+ printf("0x%x, ", palette->palette[i]);
+ }
+
+ fclose(f);
+
+ rosprite_destroy_file_context(ctx);
+ rosprite_destroy_palette(palette);
+
+ return EXIT_SUCCESS;
+}