BlinkenLib v.0.5.5 (2008-03-29)
Christian Heimke

Christian Heimke commited on 2011-07-15 09:08:03
Showing 25 changed files, with 537 additions and 135 deletions.

... ...
@@ -1,16 +0,0 @@
1
-/* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
4
- * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5
- * a blinkenarea.org project
6
- */
7
-
8
-#ifndef INC_BlinkenLib
9
-#define INC_BlinkenLib
10
-
11
-#include "BlinkenColorizer.h"
12
-#include "BlinkenMovie.h"
13
-#include "BlinkenFrame.h"
14
-
15
-#endif //#ifndef INC_BlinkenLib
16
-
... ...
@@ -1,14 +1,14 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
7 7
 
8 8
 #include <string.h>
9 9
 
10
-#include "Tools.h"
11
-#include "BlinkenColorizer.h"
10
+#include <BlinkenLib/Tools.h>
11
+#include <BlinkenLib/BlinkenColorizer.h>
12 12
 
13 13
 unsigned char BlinkenColorizerSolid( int step, int channels, int y, int x, int c )
14 14
 {
... ...
@@ -1,12 +1,12 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
7 7
 
8
-#ifndef INC_BlinkenColorizer
9
-#define INC_BlinkenColorizer
8
+#ifndef INC_BlinkenLib_BlinkenColorizer
9
+#define INC_BlinkenLib_BlinkenColorizer
10 10
 
11 11
 // convert string to colorizing mode
12 12
 // returns colorizing mode (>= 0) or -1 on error
... ...
@@ -18,5 +18,5 @@ const char * BlinkenColorizerMode2Str( int mode );
18 18
 // get color for colorizing
19 19
 unsigned char BlinkenColorizerGetColor( int channels, int mode, int step, int y, int x, int c );
20 20
 
21
-#endif //#ifndef INC_BlinkenColorizer
21
+#endif //#ifndef INC_BlinkenLib_BlinkenColorizer
22 22
 
... ...
@@ -1,12 +1,12 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
7 7
 
8
-#ifndef INC_BlinkenConstants
9
-#define INC_BlinkenConstants
8
+#ifndef INC_BlinkenLib_BlinkenConstants
9
+#define INC_BlinkenLib_BlinkenConstants
10 10
 
11 11
 #define BlinkenHeightMin 1
12 12
 #define BlinkenHeightMax 1024
... ...
@@ -19,5 +19,5 @@
19 19
 #define BlinkenDurationMin 1
20 20
 #define BlinkenDurationMax 65535
21 21
 
22
-#endif //#ifndef INC_BlinkenConstants
22
+#endif //#ifndef INC_BlinkenLib_BlinkenConstants
23 23
 
... ...
@@ -1,6 +1,6 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
... ...
@@ -9,8 +9,8 @@
9 9
 #include <stdlib.h>
10 10
 #include <string.h>
11 11
 
12
-#include "BlinkenColorizer.h"
13
-#include "BlinkenLib.h"
12
+#include <BlinkenLib/BlinkenColorizer.h>
13
+#include <BlinkenLib/BlinkenLib.h>
14 14
 
15 15
 int main( int argCnt, char * * args )
16 16
 {
... ...
@@ -22,8 +22,8 @@ int main( int argCnt, char * * args )
22 22
 
23 23
   //print info
24 24
   printf( "BlinkenLib - BlinkenConv\n"
25
-          "version 0.5.4 date 2008-01-10\n"
26
-          "Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>\n"
25
+          "version 0.5.5 date 2008-03-29\n"
26
+          "Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>\n"
27 27
           "Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html\n"
28 28
           "a blinkenarea.org project\n\n" );
29 29
 
... ...
@@ -1,6 +1,6 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
... ...
@@ -18,10 +18,10 @@ typedef DWORD uint32_t;
18 18
 #include <netinet/in.h>
19 19
 #endif
20 20
 
21
-#include "BlinkenConstants.h"
22
-#include "BlinkenColorizer.h"
23
-#include "BlinkenFrame.h"
24
-#include "Tools.h"
21
+#include <BlinkenLib/BlinkenConstants.h>
22
+#include <BlinkenLib/BlinkenColorizer.h>
23
+#include <BlinkenLib/BlinkenFrame.h>
24
+#include <BlinkenLib/Tools.h>
25 25
 
26 26
 struct sBlinkenFrame
27 27
 {
... ...
@@ -1,12 +1,12 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
7 7
 
8
-#ifndef INC_BlinkenFrame
9
-#define INC_BlinkenFrame
8
+#ifndef INC_BlinkenLib_BlinkenFrame
9
+#define INC_BlinkenLib_BlinkenFrame
10 10
 
11 11
 typedef struct sBlinkenFrame stBlinkenFrame;
12 12
 
... ...
@@ -49,5 +49,5 @@ int BlinkenFrameToNetwork( stBlinkenFrame * pFrame, etBlinkenProto proto, char *
49 49
 stBlinkenFrame * BlinkenFrameFromNetwork( char * pData, int length, etBlinkenProto * pProto );
50 50
 //returns protocol in *pProto if pProto not NULL
51 51
 
52
-#endif //#ifndef INC_BlinkenFrame
52
+#endif //#ifndef INC_BlinkenLib_BlinkenFrame
53 53
 
... ...
@@ -0,0 +1,16 @@
1
+/* BlinkenLib
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4
+ * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5
+ * a blinkenarea.org project
6
+ */
7
+
8
+#ifndef INC_BlinkenLib_BlinkenLib
9
+#define INC_BlinkenLib_BlinkenLib
10
+
11
+#include <BlinkenLib/BlinkenColorizer.h>
12
+#include <BlinkenLib/BlinkenMovie.h>
13
+#include <BlinkenLib/BlinkenFrame.h>
14
+
15
+#endif //#ifndef INC_BlinkenLib_BlinkenLib
16
+
... ...
@@ -1,6 +1,6 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
... ...
@@ -19,10 +19,10 @@
19 19
 #include <sys/select.h>
20 20
 #endif
21 21
 
22
-#include "BlinkenConstants.h"
23
-#include "BlinkenFrame.h"
24
-#include "BlinkenMovie.h"
25
-#include "Tools.h"
22
+#include <BlinkenLib/BlinkenConstants.h>
23
+#include <BlinkenLib/BlinkenFrame.h>
24
+#include <BlinkenLib/BlinkenMovie.h>
25
+#include <BlinkenLib/Tools.h>
26 26
 
27 27
 struct sBlinkenMovie
28 28
 {
... ...
@@ -1,14 +1,14 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
7 7
 
8
-#ifndef INC_BlinkenMovie
9
-#define INC_BlinkenMovie
8
+#ifndef INC_BlinkenLib_BlinkenMovie
9
+#define INC_BlinkenLib_BlinkenMovie
10 10
 
11
-#include "BlinkenFrame.h"
11
+#include <BlinkenLib/BlinkenFrame.h>
12 12
 
13 13
 #ifdef WIN32
14 14
 #include <winsock2.h>
... ...
@@ -75,5 +75,5 @@ stBlinkenMovie * BlinkenMovieReceive( SOCKET udpSocket, int timeout, etBlinkenPr
75 75
 //after timeout ms of no reception, the movie is considered to be complete
76 76
 //returns protocol in *pProto if pProto not NULL
77 77
 
78
-#endif //#ifndef INC_BlinkenMovie
78
+#endif //#ifndef INC_BlinkenLib_BlinkenMovie
79 79
 
... ...
@@ -1,6 +1,6 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
... ...
@@ -19,7 +19,7 @@
19 19
 #include <sys/time.h>
20 20
 #include <sys/socket.h>
21 21
 
22
-#include "BlinkenLib.h"
22
+#include <BlinkenLib/BlinkenLib.h>
23 23
 
24 24
 //get serial settings from text
25 25
 static int serial_settings_parse( char * str, int * settings )
... ...
@@ -409,8 +409,8 @@ int main( int argCnt, char * * args )
409 409
 
410 410
   //print info
411 411
   printf( "BlinkenLib - BlinkenOutput\n"
412
-          "version 0.5.4 date 2008-01-10\n"
413
-          "Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>\n"
412
+          "version 0.5.5 date 2008-03-29\n"
413
+          "Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>\n"
414 414
           "Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html\n"
415 415
           "a blinkenarea.org project\n\n" );
416 416
 
... ...
@@ -1,6 +1,6 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
... ...
@@ -12,7 +12,7 @@
12 12
 #include <winsock2.h>
13 13
 #include <windows.h>
14 14
 
15
-#include "BlinkenLib.h"
15
+#include <BlinkenLib/BlinkenLib.h>
16 16
 
17 17
 //get serial settings from text
18 18
 static int serial_settings_parse( char * str )
... ...
@@ -350,8 +350,8 @@ int main( int argCnt, char * * args )
350 350
 
351 351
   //print info
352 352
   printf( "BlinkenLib - BlinkenOutput\n"
353
-          "version 0.5.4 date 2008-01-10\n"
354
-          "Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>\n"
353
+          "version 0.5.5 date 2008-03-29\n"
354
+          "Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>\n"
355 355
           "Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html\n"
356 356
           "a blinkenarea.org project\n\n" );
357 357
 
... ...
@@ -1,6 +1,6 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
... ...
@@ -19,7 +19,7 @@
19 19
 #include <arpa/inet.h>
20 20
 #endif
21 21
 
22
-#include "BlinkenLib.h"
22
+#include <BlinkenLib/BlinkenLib.h>
23 23
 
24 24
 int main( int argCnt, char * * args )
25 25
 {
... ...
@@ -32,8 +32,8 @@ int main( int argCnt, char * * args )
32 32
 
33 33
   //print info
34 34
   printf( "BlinkenLib - BlinkenRecv\n"
35
-          "version 0.5.4 date 2008-01-10\n"
36
-          "Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>\n"
35
+          "version 0.5.5 date 2008-03-29\n"
36
+          "Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>\n"
37 37
           "Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html\n"
38 38
           "a blinkenarea.org project\n\n" );
39 39
 
... ...
@@ -1,6 +1,6 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
... ...
@@ -20,7 +20,7 @@
20 20
 #include <arpa/inet.h>
21 21
 #endif
22 22
 
23
-#include "BlinkenLib.h"
23
+#include <BlinkenLib/BlinkenLib.h>
24 24
 
25 25
 int main( int argCnt, char * * args )
26 26
 {
... ...
@@ -35,8 +35,8 @@ int main( int argCnt, char * * args )
35 35
 
36 36
   //print info
37 37
   printf( "BlinkenLib - BlinkenSend\n"
38
-          "version 0.5.4 date 2008-01-10\n"
39
-          "Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>\n"
38
+          "version 0.5.5 date 2008-03-29\n"
39
+          "Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>\n"
40 40
           "Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html\n"
41 41
           "a blinkenarea.org project\n\n" );
42 42
 
... ...
@@ -0,0 +1,75 @@
1
+# BlinkenLib
2
+# version 0.5.5 date 2008-03-29
3
+# Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4
+# Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5
+# a blinkenarea.org project
6
+
7
+CC=gcc
8
+CFLAGS=-W -Wall -fPIC -O2 -I ..
9
+LFLAGS=-L .
10
+AR=ar
11
+RANLIB=ranlib
12
+
13
+VERSION_MAJOR=0
14
+VERSION_MINOR=5
15
+VERSION_REVISION=5
16
+VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_REVISION)
17
+
18
+LIB_OBJS=BlinkenColorizer.o BlinkenFrame.o BlinkenMovie.o Tools.o
19
+
20
+.phony: all clean
21
+
22
+all: libBlinkenLib.a libBlinkenLib.so.$(VERSION_MAJOR) libBlinkenLib.so.$(VERSION) libBlinkenLib.so BlinkenConv BlinkenSend BlinkenRecv BlinkenOutput
23
+
24
+BlinkenColorizer.o: BlinkenColorizer.c BlinkenColorizer.h Tools.h
25
+	$(CC) $(CFLAGS) -c -o $@ $<
26
+
27
+BlinkenFrame.o: BlinkenFrame.c BlinkenFrame.h BlinkenColorizer.h Tools.h
28
+	$(CC) $(CFLAGS) -c -o $@ $<
29
+
30
+BlinkenMovie.o: BlinkenMovie.c BlinkenFrame.h BlinkenMovie.h Tools.h
31
+	$(CC) $(CFLAGS) -c -o $@ $<
32
+
33
+Tools.o: Tools.c Tools.h
34
+	$(CC) $(CFLAGS) -c -o $@ $<
35
+
36
+libBlinkenLib.a: $(LIB_OBJS)
37
+	$(AR) cr $@ $+
38
+	$(RANLIB) $@
39
+
40
+libBlinkenLib.so.$(VERSION): $(LIB_OBJS)
41
+	$(CC) -shared -Wl,-soname,libBlinkenLib.so.$(VERSION_MAJOR) -o $@ $+
42
+
43
+libBlinkenLib.so.$(VERSION_MAJOR): libBlinkenLib.so.$(VERSION)
44
+	ln -s $< $@
45
+
46
+libBlinkenLib.so: libBlinkenLib.so.$(VERSION_MAJOR)
47
+	ln -s $< $@
48
+
49
+BlinkenConv.o: BlinkenConv.c BlinkenLib.h
50
+	$(CC) $(CFLAGS) -c -o $@ $<
51
+
52
+BlinkenConv: BlinkenConv.o libBlinkenLib.so
53
+	$(CC) $(LFLAGS) -o $@ $< -lBlinkenLib
54
+
55
+BlinkenSend.o: BlinkenSend.c BlinkenLib.h
56
+	$(CC) $(CFLAGS) -c -o $@ $<
57
+
58
+BlinkenSend: BlinkenSend.o libBlinkenLib.so
59
+	$(CC) $(LFLAGS) -o $@ $< -lBlinkenLib
60
+
61
+BlinkenRecv.o: BlinkenRecv.c BlinkenLib.h
62
+	$(CC) $(CFLAGS) -c -o $@ $<
63
+
64
+BlinkenRecv: BlinkenRecv.o libBlinkenLib.so
65
+	$(CC) $(LFLAGS) -o $@ $< -lBlinkenLib
66
+
67
+BlinkenOutput.o: BlinkenOutput.c BlinkenLib.h
68
+	$(CC) $(CFLAGS) -c -o $@ $<
69
+
70
+BlinkenOutput: BlinkenOutput.o libBlinkenLib.so
71
+	$(CC) $(LFLAGS) -o $@ $< -lBlinkenLib
72
+
73
+clean:
74
+	rm -f BlinkenConv BlinkenSend BlinkenRecv BlinkenOutput libBlinkenLib.so libBlinkenLib.so.$(VERSION) libBlinkenLib.so.$(VERSION_MAJOR) libBlinkenLib.a *.o
75
+
... ...
@@ -1,13 +1,13 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
7 7
 
8 8
 #include <stdlib.h>
9 9
 
10
-#include "Tools.h"
10
+#include <BlinkenLib/Tools.h>
11 11
 
12 12
 void * malloc1D( int count1, int size )
13 13
 {
... ...
@@ -1,12 +1,12 @@
1 1
 /* BlinkenLib
2
- * version 0.5.4 date 2008-01-10
3
- * Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+ * version 0.5.5 date 2008-03-29
3
+ * Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
  * Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
  * a blinkenarea.org project
6 6
  */
7 7
 
8
-#ifndef INC_Tools
9
-#define INC_Tools
8
+#ifndef INC_BlinkenLib_Tools
9
+#define INC_BlinkenLib_Tools
10 10
 
11 11
 #ifndef maxi
12 12
 #define maxi( a, b ) ((a) > (b) ? (a) : (b))
... ...
@@ -24,5 +24,5 @@ void * malloc1D( int count1, int size );
24 24
 
25 25
 void * * malloc2D( int count1, int count2, int size );
26 26
 
27
-#endif //#ifndef INC_Tools
27
+#endif //#ifndef INC_BlinkenLib_Tools
28 28
 
... ...
@@ -1,3 +1,8 @@
1
+0.5.5 2008-03-29
2
+----------------
3
+restructured location of source and include files
4
+added "make install"
5
+
1 6
 0.5.4 2008-01-10
2 7
 ----------------
3 8
 added BlinkenFrameCompare function
... ...
@@ -1,60 +1,56 @@
1 1
 # BlinkenLib
2
-# version 0.5.4 date 2008-01-10
3
-# Copyright 2004-2008 Stefan Schuermans <stefan@schuermans.info>
2
+# version 0.5.5 date 2008-03-29
3
+# Copyright 2004-2008 Stefan Schuermans <stefan@blinkenarea.org>
4 4
 # Copyleft: GNU public license - http://www.gnu.org/copyleft/gpl.html
5 5
 # a blinkenarea.org project
6 6
 
7
-CC=gcc
8
-CFLAGS=-W -Wall -O2
9
-LFLAGS=
10
-AR=ar
11
-ARFLAGS=cr
12
-RANLIB=ranlib
7
+INSTALL=install
13 8
 
14
-.phony: all clean
9
+VERSION_MAJOR=0
10
+VERSION_MINOR=5
11
+VERSION_REVISION=5
12
+VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_REVISION)
15 13
 
16
-all: BlinkenLib.a BlinkenConv BlinkenSend BlinkenRecv BlinkenOutput
14
+ENV_PREFIX=$(shell echo $$PREFIX)
15
+STOW_DIR=/usr/local/stow
16
+STOW_PREFIX=$(STOW_DIR)/BlinkenLib-$(VERSION)
17
+DEF_PREFIX=/usr/local
18
+ifneq ($(ENV_PREFIX),)
19
+  PREFIX=$(ENV_PREFIX)
20
+else
21
+  ifeq ($(shell if [ -d $(STOW_DIR) ]; then echo stow; fi),stow)
22
+    PREFIX=$(STOW_PREFIX)
23
+  else
24
+    PREFIX=$(DEF_PREFIX)
25
+  endif
26
+endif
17 27
 
18
-BlinkenColorizer.o: BlinkenColorizer.c BlinkenColorizer.h Tools.h
19
-	$(CC) $(CFLAGS) -c -o BlinkenColorizer.o BlinkenColorizer.c
28
+HEADERS=BlinkenLib.h BlinkenMovie.h BlinkenFrame.h BlinkenColorizer.h
29
+LIBS=libBlinkenLib.a libBlinkenLib.so.$(VERSION)
30
+EXECS=BlinkenConv BlinkenSend BlinkenRecv BlinkenOutput
20 31
 
21
-BlinkenFrame.o: BlinkenFrame.c BlinkenFrame.h BlinkenColorizer.h Tools.h
22
-	$(CC) $(CFLAGS) -c -o BlinkenFrame.o BlinkenFrame.c
32
+.phony: all clean install uninstall
23 33
 
24
-BlinkenMovie.o: BlinkenMovie.c BlinkenFrame.h BlinkenMovie.h Tools.h
25
-	$(CC) $(CFLAGS) -c -o BlinkenMovie.o BlinkenMovie.c
26
-
27
-Tools.o: Tools.c Tools.h
28
-	$(CC) $(CFLAGS) -c -o Tools.o Tools.c
29
-
30
-BlinkenLib.a: BlinkenColorizer.o BlinkenFrame.o BlinkenMovie.o Tools.o
31
-	$(AR) $(ARFLAGS) BlinkenLib.a BlinkenColorizer.o BlinkenFrame.o BlinkenMovie.o Tools.o
32
-	$(RANLIB) BlinkenLib.a
33
-
34
-BlinkenConv.o: BlinkenConv.c BlinkenLib.h
35
-	$(CC) $(CFLAGS) -c -o BlinkenConv.o BlinkenConv.c
36
-
37
-BlinkenConv: BlinkenConv.o BlinkenLib.a
38
-	$(CC) $(LFLAGS) -o BlinkenConv BlinkenConv.o BlinkenLib.a
39
-
40
-BlinkenSend.o: BlinkenSend.c BlinkenLib.h
41
-	$(CC) $(CFLAGS) -c -o BlinkenSend.o BlinkenSend.c
42
-
43
-BlinkenSend: BlinkenSend.o BlinkenLib.a
44
-	$(CC) $(LFLAGS) -o BlinkenSend BlinkenSend.o BlinkenLib.a
45
-
46
-BlinkenRecv.o: BlinkenRecv.c BlinkenLib.h
47
-	$(CC) $(CFLAGS) -c -o BlinkenRecv.o BlinkenRecv.c
48
-
49
-BlinkenRecv: BlinkenRecv.o BlinkenLib.a
50
-	$(CC) $(LFLAGS) -o BlinkenRecv BlinkenRecv.o BlinkenLib.a
51
-
52
-BlinkenOutput.o: BlinkenOutput.c BlinkenLib.h
53
-	$(CC) $(CFLAGS) -c -o BlinkenOutput.o BlinkenOutput.c
54
-
55
-BlinkenOutput: BlinkenOutput.o BlinkenLib.a
56
-	$(CC) $(LFLAGS) -o BlinkenOutput BlinkenOutput.o BlinkenLib.a
34
+all:
35
+	$(MAKE) -C BlinkenLib all
57 36
 
58 37
 clean:
59
-	rm -f *.o BlinkenLib.a BlinkenConv BlinkenSend BlinkenRecv BlinkenOutput
38
+	$(MAKE) -C BlinkenLib clean
39
+
40
+install:
41
+	$(INSTALL) -d $(PREFIX)/include/BlinkenLib
42
+	$(INSTALL) -t $(PREFIX)/include/BlinkenLib $(addprefix BlinkenLib/, $(HEADERS))
43
+	$(INSTALL) -d $(PREFIX)/lib
44
+	$(INSTALL) -t $(PREFIX)/lib $(addprefix BlinkenLib/, $(LIBS))
45
+	ln -sf libBlinkenLib.so.$(VERSION) $(PREFIX)/lib/libBlinkenLib.so.$(VERSION_MAJOR)
46
+	ln -sf libBlinkenLib.so.$(VERSION_MAJOR) $(PREFIX)/lib/libBlinkenLib.so
47
+	$(INSTALL) -d $(PREFIX)/bin
48
+	$(INSTALL) -t $(PREFIX)/bin $(addprefix BlinkenLib/, $(EXECS))
49
+
50
+uninstall:
51
+	rm -f $(addprefix $(PREFIX)/bin/, $(EXECS))
52
+	rm -f $(PREFIX)/lib/libBlinkenLib.so
53
+	rm -f $(PREFIX)/lib/libBlinkenLib.so.$(VERSION_MAJOR)
54
+	rm -f $(addprefix $(PREFIX)/lib/, $(LIBS))
55
+	rm -rf $(PREFIX)/include/BlinkenLib
60 56
 
... ...
@@ -0,0 +1,77 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<blm width="26" height="20" bits="8" channels="3">
3
+	<header>
4
+		<description>type1: info1</description>
5
+		<description>type2: info2</description>
6
+		<description>type2: info2</description>
7
+	</header>
8
+
9
+	<frame duration="1000">
10
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
11
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
12
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
13
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
14
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
15
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
16
+		<row>000000000000000000000000000000600000800000900000900000900000900000900000900000900000900000A00000A00000A00000A00000A00000A00000600000000000000000000000000000</row>
17
+		<row>000000000000000000000000000000A00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000800000000000000000000000000000</row>
18
+		<row>000000000000000000000000000000800000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000800000000000000000000000000000</row>
19
+		<row>000000000000000000000000000000800000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000800000000000000000000000000000</row>
20
+		<row>000000000000000000000000000000700000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000800000000000000000000000000000</row>
21
+		<row>000000000000000000000000000000500000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000800000000000000000000000000000</row>
22
+		<row>000000000000000000000000000000500000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000800000000000000000000000000000</row>
23
+		<row>000000000000000000000000000000400000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000800000000000000000000000000000</row>
24
+		<row>000000000000000000000000000000100000600000600000600000500000500000500000500000500000400000400000400000300000300000300000200000100000000000000000000000000000</row>
25
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
26
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
27
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
28
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
29
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
30
+	</frame>
31
+
32
+	<frame duration="1000">
33
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
34
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
35
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
36
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
37
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
38
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
39
+		<row>00000000000000000000000000000000600000800000B00000B00000B00000B00000B00000B00000B00000B00000A00000A00000A00000A00000A00000A000006000000000000000000000000000</row>
40
+		<row>00000000000000000000000000000000A00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000008000000000000000000000000000</row>
41
+		<row>00000000000000000000000000000000800000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000008000000000000000000000000000</row>
42
+		<row>00000000000000000000000000000000800000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000008000000000000000000000000000</row>
43
+		<row>00000000000000000000000000000000700000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000008000000000000000000000000000</row>
44
+		<row>00000000000000000000000000000000500000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000008000000000000000000000000000</row>
45
+		<row>00000000000000000000000000000000500000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000008000000000000000000000000000</row>
46
+		<row>00000000000000000000000000000000400000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000008000000000000000000000000000</row>
47
+		<row>000000000000000000000000000000001000006000006000006000005000005000005000005000005000004000004000004000003000003000003000002000001000000000000000000000000000</row>
48
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
49
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
50
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
51
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
52
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
53
+	</frame>
54
+
55
+	<frame duration="500">
56
+		<row>0000FFFF00FF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080</row>
57
+		<row>00FFFFFFFFFF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
58
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
59
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
60
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
61
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
62
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
63
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
64
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
65
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
66
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
67
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
68
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
69
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
70
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
71
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
72
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
73
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
74
+		<row>000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</row>
75
+		<row>0000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FF</row>
76
+	</frame>
77
+</blm>
... ...
@@ -0,0 +1,32 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<blm width="26" height="20" bits="8" channels="1">
3
+	<header>
4
+		<description>type1: info1</description>
5
+		<description>type2: info2</description>
6
+		<description>type2: info2</description>
7
+	</header>
8
+
9
+	<frame duration="10000">
10
+		<row>0000000000000000000000000000000000000000000000000000</row>
11
+		<row>0000000000000000000000000000000000000000000000000000</row>
12
+		<row>0000000000000000000000000000000000000000000000000000</row>
13
+		<row>0000000000000000000000000000000000000000000000000000</row>
14
+		<row>0000000000000000000000000000000000000000000000000000</row>
15
+		<row>0000000000000000000000000000000000000000000000000000</row>
16
+		<row>000000000060809090909090909090A0A0A0A0A0A06000000000</row>
17
+		<row>0000000000A0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
18
+		<row>000000000080E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
19
+		<row>000000000080E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
20
+		<row>000000000070E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
21
+		<row>000000000050E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
22
+		<row>000000000050E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
23
+		<row>000000000040E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
24
+		<row>0000000000106060605050505050404040303030201000000000</row>
25
+		<row>0000000000000000000000000000000000000000000000000000</row>
26
+		<row>0000000000000000000000000000000000000000000000000000</row>
27
+		<row>0000000000000000000000000000000000000000000000000000</row>
28
+		<row>0000000000000000000000000000000000000000000000000000</row>
29
+		<row>0000000000000000000000000000000000000000000000000000</row>
30
+	</frame>
31
+
32
+</blm>
... ...
@@ -0,0 +1,70 @@
1
+# BlinkenLights Movie 26x20
2
+# type1 = info1
3
+# type2 = info2
4
+# type2 = info2
5
+
6
+@100
7
+00000000000000000000000000
8
+00000000000000000000000000
9
+00000000000000000000000000
10
+00000000000000000000000000
11
+00000000000000000000000000
12
+00000000000000000000000000
13
+00000011111111111111100000
14
+00000111111111111111110000
15
+00000111111111111111110000
16
+00000111111111111111110000
17
+00000011111111111111110000
18
+00000011111111111111110000
19
+00000011111111111111110000
20
+00000011111111111111110000
21
+00000000000000000000000000
22
+00000000000000000000000000
23
+00000000000000000000000000
24
+00000000000000000000000000
25
+00000000000000000000000000
26
+00000000000000000000000000
27
+
28
+@100
29
+00000000000000000000000000
30
+00000000000000000000000000
31
+00000000000000000000000000
32
+00000000000000000000000000
33
+00000000000000000000000000
34
+00000000000000000000000000
35
+00000011111111111111100000
36
+00000111111111111111110000
37
+00000111111111111111110000
38
+00000111111111111111110000
39
+00000011111111111111110000
40
+00000011111111111111110000
41
+00000011111111111111110000
42
+00000011111111111111110000
43
+00000000000000000000000000
44
+00000000000000000000000000
45
+00000000000000000000000000
46
+00000000000000000000000000
47
+00000000000000000000000000
48
+00000000000000000000000000
49
+
50
+@500
51
+10000000000000000000000001
52
+00000000000000000000000000
53
+00000000000000000000000000
54
+00000000000000000000000000
55
+00000000000000000000000000
56
+00000000000000000000000000
57
+00000000000000000000000000
58
+00000000000000000000000000
59
+00000000000000000000000000
60
+00000000000000000000000000
61
+00000000000000000000000000
62
+00000000000000000000000000
63
+00000000000000000000000000
64
+00000000000000000000000000
65
+00000000000000000000000000
66
+00000000000000000000000000
67
+00000000000000000000000000
68
+00000000000000000000000000
69
+00000000000000000000000000
70
+10000000000000000000000001
... ...
@@ -0,0 +1,77 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<blm width="26" height="20" bits="8" channels="1">
3
+	<header>
4
+		<description>type1: info1</description>
5
+		<description>type2: info2</description>
6
+		<description>type2: info2</description>
7
+	</header>
8
+
9
+	<frame duration="100">
10
+		<row>0000000000000000000000000000000000000000000000000000</row>
11
+		<row>0000000000000000000000000000000000000000000000000000</row>
12
+		<row>0000000000000000000000000000000000000000000000000000</row>
13
+		<row>0000000000000000000000000000000000000000000000000000</row>
14
+		<row>0000000000000000000000000000000000000000000000000000</row>
15
+		<row>0000000000000000000000000000000000000000000000000000</row>
16
+		<row>000000000060809090909090909090A0A0A0A0A0A06000000000</row>
17
+		<row>0000000000A0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
18
+		<row>000000000080E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
19
+		<row>000000000080E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
20
+		<row>000000000070E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
21
+		<row>000000000050E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
22
+		<row>000000000050E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
23
+		<row>000000000040E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
24
+		<row>0000000000106060605050505050404040303030201000000000</row>
25
+		<row>0000000000000000000000000000000000000000000000000000</row>
26
+		<row>0000000000000000000000000000000000000000000000000000</row>
27
+		<row>0000000000000000000000000000000000000000000000000000</row>
28
+		<row>0000000000000000000000000000000000000000000000000000</row>
29
+		<row>0000000000000000000000000000000000000000000000000000</row>
30
+	</frame>
31
+
32
+	<frame duration="100">
33
+		<row>0000000000000000000000000000000000000000000000000000</row>
34
+		<row>0000000000000000000000000000000000000000000000000000</row>
35
+		<row>0000000000000000000000000000000000000000000000000000</row>
36
+		<row>0000000000000000000000000000000000000000000000000000</row>
37
+		<row>0000000000000000000000000000000000000000000000000000</row>
38
+		<row>0000000000000000000000000000000000000000000000000000</row>
39
+		<row>00000000006080B0B0B0B0B0B0B0B0A0A0A0A0A0A06000000000</row>
40
+		<row>0000000000A0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
41
+		<row>000000000080E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
42
+		<row>000000000080E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
43
+		<row>000000000070E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
44
+		<row>000000000050E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
45
+		<row>000000000050E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
46
+		<row>000000000040E0E0E0E0E0E0E0E0E0E0E0E0E0E0E08000000000</row>
47
+		<row>0000000000106060605050505050404040303030201000000000</row>
48
+		<row>0000000000000000000000000000000000000000000000000000</row>
49
+		<row>0000000000000000000000000000000000000000000000000000</row>
50
+		<row>0000000000000000000000000000000000000000000000000000</row>
51
+		<row>0000000000000000000000000000000000000000000000000000</row>
52
+		<row>0000000000000000000000000000000000000000000000000000</row>
53
+	</frame>
54
+
55
+	<frame duration="500">
56
+		<row>FF00000000000000000000000000000000000000000000000080</row>
57
+		<row>0000000000000000000000000000000000000000000000000000</row>
58
+		<row>0000000000000000000000000000000000000000000000000000</row>
59
+		<row>0000000000000000000000000000000000000000000000000000</row>
60
+		<row>0000000000000000000000000000000000000000000000000000</row>
61
+		<row>0000000000000000000000000000000000000000000000000000</row>
62
+		<row>0000000000000000000000000000000000000000000000000000</row>
63
+		<row>0000000000000000000000000000000000000000000000000000</row>
64
+		<row>0000000000000000000000000000000000000000000000000000</row>
65
+		<row>0000000000000000000000000000000000000000000000000000</row>
66
+		<row>0000000000000000000000000000000000000000000000000000</row>
67
+		<row>0000000000000000000000000000000000000000000000000000</row>
68
+		<row>0000000000000000000000000000000000000000000000000000</row>
69
+		<row>0000000000000000000000000000000000000000000000000000</row>
70
+		<row>0000000000000000000000000000000000000000000000000000</row>
71
+		<row>0000000000000000000000000000000000000000000000000000</row>
72
+		<row>0000000000000000000000000000000000000000000000000000</row>
73
+		<row>0000000000000000000000000000000000000000000000000000</row>
74
+		<row>0000000000000000000000000000000000000000000000000000</row>
75
+		<row>80000000000000000000000000000000000000000000000000FF</row>
76
+	</frame>
77
+</blm>
... ...
@@ -0,0 +1,70 @@
1
+# BlinkenMini Movie 26x20
2
+# type1 = info1
3
+# type2 = info2
4
+# type2 = info2
5
+
6
+@100
7
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
8
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
9
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
10
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
11
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
12
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
13
+0x00 0x00 0x00 0x00 0x00 0x60 0x80 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0x90 0xA0 0xA0 0xA0 0xA0 0xA0 0xA0 0x60 0x00 0x00 0x00 0x00
14
+0x00 0x00 0x00 0x00 0x00 0xA0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
15
+0x00 0x00 0x00 0x00 0x00 0x80 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
16
+0x00 0x00 0x00 0x00 0x00 0x80 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
17
+0x00 0x00 0x00 0x00 0x00 0x70 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
18
+0x00 0x00 0x00 0x00 0x00 0x50 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
19
+0x00 0x00 0x00 0x00 0x00 0x50 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
20
+0x00 0x00 0x00 0x00 0x00 0x40 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
21
+0x00 0x00 0x00 0x00 0x00 0x10 0x60 0x60 0x60 0x50 0x50 0x50 0x50 0x50 0x40 0x40 0x40 0x30 0x30 0x30 0x20 0x10 0x00 0x00 0x00 0x00
22
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
23
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
24
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
25
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
26
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
27
+
28
+@100
29
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
30
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
31
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
32
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
33
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
34
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
35
+0x00 0x00 0x00 0x00 0x00 0x60 0x80 0xB0 0xB0 0xB0 0xB0 0xB0 0xB0 0xB0 0xB0 0xA0 0xA0 0xA0 0xA0 0xA0 0xA0 0x60 0x00 0x00 0x00 0x00
36
+0x00 0x00 0x00 0x00 0x00 0xA0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
37
+0x00 0x00 0x00 0x00 0x00 0x80 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
38
+0x00 0x00 0x00 0x00 0x00 0x80 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
39
+0x00 0x00 0x00 0x00 0x00 0x70 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
40
+0x00 0x00 0x00 0x00 0x00 0x50 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
41
+0x00 0x00 0x00 0x00 0x00 0x50 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
42
+0x00 0x00 0x00 0x00 0x00 0x40 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0xE0 0x80 0x00 0x00 0x00 0x00
43
+0x00 0x00 0x00 0x00 0x00 0x10 0x60 0x60 0x60 0x50 0x50 0x50 0x50 0x50 0x40 0x40 0x40 0x30 0x30 0x30 0x20 0x10 0x00 0x00 0x00 0x00
44
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
45
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
46
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
47
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
48
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
49
+
50
+@500
51
+0xFF 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x80
52
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
53
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
54
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
55
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
56
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
57
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
58
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
59
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
60
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
61
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
62
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
63
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
64
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
65
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
66
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
67
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
68
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
69
+0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
70
+0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xFF
0 71