From a7ae563d3f1152cd594a12b00aeac7866a96b189 Mon Sep 17 00:00:00 2001
From: Martin Nilsson <mani@lysator.liu.se>
Date: Sun, 14 Dec 2003 23:48:36 +0100
Subject: [PATCH] Color cycle support function.

Rev: src/modules/Image/encodings/atari.c:1.3
Rev: src/modules/Image/encodings/atari.h:1.3
---
 src/modules/Image/encodings/atari.c | 22 +++++++++++++++++++++-
 src/modules/Image/encodings/atari.h |  4 +++-
 2 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/src/modules/Image/encodings/atari.c b/src/modules/Image/encodings/atari.c
index 5f2f89ecb4..2602fed317 100644
--- a/src/modules/Image/encodings/atari.c
+++ b/src/modules/Image/encodings/atari.c
@@ -2,7 +2,7 @@
 || This file is part of Pike. For copyright information see COPYRIGHT.
 || Pike is distributed under GPL, LGPL and MPL. See the file COPYING
 || for more information.
-|| $Id: atari.c,v 1.2 2003/12/13 23:33:21 nilsson Exp $
+|| $Id: atari.c,v 1.3 2003/12/14 22:48:36 nilsson Exp $
 */
 
 #include "global.h"
@@ -13,6 +13,26 @@
 
 extern struct program *image_program;
 
+void rotate_atari_palette(struct atari_palette* pal, unsigned int left,
+			  unsigned int right)
+{
+  rgb_group tmp;
+  unsigned int i;
+
+  if(right>left) {
+    tmp = pal->colors[right];
+    for(i=right; i>left; i--)
+      pal->colors[i] = pal->colors[i-1];
+    pal->colors[left] = tmp;
+  }
+  else {
+    tmp = pal->colors[left];
+    for(i=left; i<right; i++)
+      pal->colors[i] = pal->colors[i+1];
+    pal->colors[right] = tmp;
+  }
+}
+
 /* pal is 2*size of palette data */
 struct atari_palette* decode_atari_palette(unsigned char *pal,
 					  unsigned int size)
diff --git a/src/modules/Image/encodings/atari.h b/src/modules/Image/encodings/atari.h
index 1bac4d693a..8f5ae3cd6a 100644
--- a/src/modules/Image/encodings/atari.h
+++ b/src/modules/Image/encodings/atari.h
@@ -2,7 +2,7 @@
 || This file is part of Pike. For copyright information see COPYRIGHT.
 || Pike is distributed under GPL, LGPL and MPL. See the file COPYING
 || for more information.
-|| $Id: atari.h,v 1.2 2003/12/13 23:33:09 nilsson Exp $
+|| $Id: atari.h,v 1.3 2003/12/14 22:48:36 nilsson Exp $
 */
 
 #include "global.h"
@@ -16,6 +16,8 @@ struct atari_palette
   rgb_group *colors;
 };
 
+void rotate_atari_palette(struct atari_palette* pal, unsigned int left,
+			  unsigned int right);
 struct atari_palette* decode_atari_palette(unsigned char *pal,
 					  unsigned int size);
 struct object* decode_atari_screendump(unsigned char *q,
-- 
GitLab