Status: sent-upstream

---
 modes.l |    6 ++++++
 modes.y |    4 ++--
 2 files changed, 8 insertions(+), 2 deletions(-)

--- a/modes.l
+++ b/modes.l
@@ -99,6 +99,7 @@ static const char *CopyString(const char
 
 keyword	[a-zA-Z][a-zA-Z0-9]*
 number	[0-9]*
+colors	[0-9/,]*
 string	\"[^\"\n]*\"
 comment	\#([^\n]*)
 space	[ \t]+
@@ -115,6 +116,11 @@ junk	.
 		return NUMBER;
 	    }
 
+{colors}    {
+		yylval = (unsigned long)CopyString(yytext);
+		return COLORS;
+	    }
+
 {string}    {
 		yylval = (unsigned long)CopyString(yytext);
 		return STRING;
--- a/modes.y
+++ b/modes.y
@@ -42,7 +42,7 @@ static void ClearVideoMode(void)
 
 %token MODE GEOMETRY TIMINGS HSYNC VSYNC CSYNC GSYNC EXTSYNC BCAST LACED DOUBLE
        RGBA NONSTD ACCEL GRAYSCALE
-       ENDMODE POLARITY BOOLEAN STRING NUMBER 
+       ENDMODE POLARITY BOOLEAN STRING NUMBER COLORS
 
 %%
 
@@ -148,7 +148,7 @@ double	  : DOUBLE BOOLEAN
 	    }
 	  ;
 
-rgba      : RGBA STRING
+rgba      : RGBA COLORS
             {
 		makeRGBA(&VideoMode, (const char*)$2);
 	    }