summaryrefslogtreecommitdiffstats
path: root/rbutil
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil')
-rw-r--r--rbutil/Makefile10
-rw-r--r--rbutil/credits.h2
-rw-r--r--rbutil/doom_3d.xpm1374
-rw-r--r--rbutil/install_dialogs.cpp5
-rw-r--r--rbutil/rbutil-rc.rc8
-rw-r--r--rbutil/rbutil.h2
-rw-r--r--rbutil/rbutil.ini1
-rw-r--r--rbutil/rbutilApp.cpp3
-rw-r--r--rbutil/rbutilCtrls.cpp7
-rw-r--r--rbutil/rbutilFrm.cpp86
-rw-r--r--rbutil/rbutilFrm.h19
11 files changed, 1489 insertions, 28 deletions
diff --git a/rbutil/Makefile b/rbutil/Makefile
index 208a149e83..ce7cdf20f8 100644
--- a/rbutil/Makefile
+++ b/rbutil/Makefile
@@ -9,7 +9,7 @@
# Unix-style Makefile for rbutil
-CXX=$(shell $(PREFIX)wx-config --cxx)
+CXX=$(shell $(PREFIX)wx-config --version=2.8 --cxx)
INC =
CFLAGS = -Wall -Wundef -DRBUTIL
OBJS=rbutil.o rbutilApp.o rbutilFrm.o rbutilCtrls.o install_dialogs.o bootloaders.o installlog.o ipodpatcher/ipodpatcher.o ipodpatcher/ipodio-posix.o sansapatcher/sansapatcher.o sansapatcher/sansaio-posix.o irivertools.o md5sum.o
@@ -32,16 +32,16 @@ endif
all: rbutil$(EXT)
.cpp.o :
- $(CXX) $(CFLAGS) $(INC) -c `$(PREFIX)wx-config --cxxflags` -o $@ $<
+ $(CXX) $(CFLAGS) $(INC) -c `$(PREFIX)wx-config --version=2.8 --cxxflags` -o $@ $<
.c.o :
- $(CC) $(CFLAGS) $(INC) -c `$(PREFIX)wx-config --cxxflags` -o $@ $<
+ $(CC) $(CFLAGS) $(INC) -c `$(PREFIX)wx-config --version=2.8 --cxxflags` -o $@ $<
rbutil-rc.o: rbutil-rc.rc
- $(WINDRES) `$(PREFIX)wx-config --cxxflags` -O coff -F pe-i386 -o $@ $<
+ $(WINDRES) `$(PREFIX)wx-config --version=2.8 --cxxflags` -O coff -F pe-i386 -o $@ $<
rbutil$(EXT): $(OBJS)
- $(CXX) -o $@ $(OBJS) `$(PREFIX)wx-config --libs`
+ $(CXX) -o $@ $(OBJS) `$(PREFIX)wx-config --version=2.8 --libs`
.PHONY: clean
clean:
diff --git a/rbutil/credits.h b/rbutil/credits.h
index b3ac0b9f0f..5a948f7cf6 100644
--- a/rbutil/credits.h
+++ b/rbutil/credits.h
@@ -22,7 +22,7 @@
#define CREDITS_H_INCLUDED
#define RBUTIL_FULLNAME "The Rockbox Utility"
-#define RBUTIL_VERSION "Version 0.3.2.2"
+#define RBUTIL_VERSION "Version 0.3.2.3"
static const wxString rbutil_developers[] = {
wxT("Christi Alice Scarborough"),
diff --git a/rbutil/doom_3d.xpm b/rbutil/doom_3d.xpm
new file mode 100644
index 0000000000..cbd0f2c003
--- /dev/null
+++ b/rbutil/doom_3d.xpm
@@ -0,0 +1,1374 @@
+/* XPM */
+static char * doom_3d_xpm[] = {
+"56 46 1325 2",
+" c Gray100",
+". c #bebabe",
+"X c #bec3be",
+"o c #000011",
+"O c #aeaaae",
+"+ c #9e9a9e",
+"@ c #b8b7c6",
+"# c #5f5a67",
+"$ c #2b4550",
+"% c #304755",
+"& c #2f4653",
+"* c #2f4554",
+"= c #2d4553",
+"- c #38465b",
+"; c #807b9e",
+": c #b8b9c1",
+"> c #c2bec6",
+", c #9693a0",
+"< c #304555",
+"1 c #314757",
+"2 c #314857",
+"3 c #324856",
+"4 c #324755",
+"5 c #334857",
+"6 c #304855",
+"7 c #3c485e",
+"8 c #8c8f96",
+"9 c #9492a2",
+"0 c #3d4a5f",
+"q c #2e4750",
+"w c #2f4752",
+"e c #2f4750",
+"r c #2f474f",
+"t c #304652",
+"y c #2f4650",
+"u c #304751",
+"i c #8f9297",
+"p c #aaa8b1",
+"a c #687396",
+"s c #8a6784",
+"d c #38444f",
+"f c #2c434d",
+"g c #2e444e",
+"h c #293f4b",
+"j c #938b94",
+"k c #b2b0b3",
+"l c #aea4a6",
+"z c #534a5a",
+"x c #2d454d",
+"c c #33464e",
+"v c #2f444d",
+"b c #4f4b53",
+"n c #b4a5b3",
+"m c #c5bab3",
+"M c #9b4c4f",
+"N c #0b1b2e",
+"B c #161f30",
+"V c #141e31",
+"C c #141e2e",
+"Z c #16212e",
+"A c #131f2f",
+"S c #151f30",
+"D c #131e2f",
+"F c #2c324b",
+"G c #ab7379",
+"H c #c7b8b6",
+"J c #a69197",
+"K c #403d4d",
+"L c #132335",
+"P c #162438",
+"I c #172539",
+"U c #182537",
+"Y c #1a2636",
+"T c #192539",
+"R c #1a273a",
+"E c #162437",
+"W c #393142",
+"Q c #b47d75",
+"! c #b37670",
+"~ c #453a4c",
+"^ c #152332",
+"/ c #1a2633",
+"( c #192534",
+") c #182330",
+"_ c #18252d",
+"` c #192531",
+"' c #192532",
+"] c #182530",
+"[ c #27313a",
+"{ c #94616c",
+"} c #5e3f48",
+"| c #b94f48",
+" . c #2b262f",
+".. c #152531",
+"X. c #152431",
+"o. c #4f3a48",
+"O. c #8c9b98",
+"+. c #767576",
+"@. c #2d2939",
+"#. c #1b2838",
+"$. c #1d2838",
+"%. c #132637",
+"&. c #6d3f43",
+"*. c #ca918d",
+"=. c #c8b3b3",
+"-. c #a95453",
+";. c #142838",
+":. c #1e2c3a",
+">. c #18283b",
+",. c #162838",
+"<. c #182937",
+"1. c #152838",
+"2. c #1d2b3a",
+"3. c #1d2c3b",
+"4. c #282d37",
+"5. c #cc553f",
+"6. c #834b46",
+"7. c #aa5d44",
+"8. c #38323a",
+"9. c #1b2d3d",
+"0. c #1d2d3d",
+"q. c #192b3d",
+"w. c #182c3c",
+"e. c #1a2c3b",
+"r. c #1a2c3d",
+"t. c #202e3d",
+"y. c #1e2d3d",
+"u. c #44333c",
+"i. c #ac523f",
+"p. c #b94e40",
+"a. c #4f3339",
+"s. c #1e2e3c",
+"d. c #222e3b",
+"f. c #1c2d3b",
+"g. c #192d37",
+"h. c #192f38",
+"j. c #1e2c39",
+"k. c #1e2d38",
+"l. c #292d37",
+"z. c #9f3b38",
+"x. c #6b392d",
+"c. c #c15339",
+"v. c #382e37",
+"b. c #1d2e37",
+"n. c #202d38",
+"m. c #1f303a",
+"M. c #332e3b",
+"N. c #6b6065",
+"B. c #655659",
+"V. c #2c2f3b",
+"C. c #23303d",
+"Z. c #243240",
+"A. c #1a303d",
+"S. c #774648",
+"D. c #d79f9a",
+"F. c #ab5554",
+"G. c #1a2c3a",
+"H. c #20303c",
+"J. c #32363d",
+"K. c #533d3b",
+"L. c #563f3c",
+"P. c #49393b",
+"I. c #272f3a",
+"U. c #1f2f3b",
+"Y. c #2f333b",
+"T. c #d55a3c",
+"R. c #803c3a",
+"E. c #b25d3d",
+"W. c #403a3e",
+"Q. c #1e303c",
+"!. c #453a3d",
+"~. c #594142",
+"^. c #5b4042",
+"/. c #4a3b3f",
+"(. c #26303f",
+"). c #222f3d",
+"_. c #4b393d",
+"`. c #af583d",
+"'. c #bf543d",
+"]. c #583a3c",
+"[. c #20313c",
+"{. c #24313c",
+"}. c #3f363a",
+"|. c #5d3336",
+" X c #5d3137",
+".X c #4c3336",
+"XX c #243237",
+"oX c #203137",
+"OX c #2d3037",
+"+X c #aa4137",
+"@X c #6e3d2d",
+"#X c #c55635",
+"$X c #3c3238",
+"%X c #1e3138",
+"&X c #223039",
+"*X c #20323a",
+"=X c #2d313c",
+"-X c #894341",
+";X c #7c4b41",
+":X c #2c353f",
+">X c #26353f",
+",X c #263741",
+"<X c #1d333f",
+"1X c #784947",
+"2X c #cc958e",
+"3X c #baa5a6",
+"4X c #ac5855",
+"5X c #1e2f3a",
+"6X c #23313f",
+"7X c #82503e",
+"8X c #a15232",
+"9X c #7f4530",
+"0X c #a34f38",
+"qX c #433a3b",
+"wX c #1f313d",
+"eX c #32373c",
+"rX c #d55e40",
+"tX c #874340",
+"yX c #b66340",
+"uX c #423e40",
+"iX c #22323f",
+"pX c #2b333d",
+"aX c #ad573d",
+"sX c #8d4931",
+"dX c #9d4a38",
+"fX c #c9603e",
+"gX c #2c3441",
+"hX c #25323f",
+"jX c #4e3e40",
+"kX c #b35e40",
+"lX c #c45b40",
+"zX c #5e413e",
+"xX c #26343e",
+"cX c #25333c",
+"vX c #a14d3c",
+"bX c #b73f32",
+"nX c #8e322f",
+"mX c #a24534",
+"MX c #343936",
+"NX c #223235",
+"BX c #2c3236",
+"VX c #ac4435",
+"CX c #77402f",
+"ZX c #ca5a34",
+"AX c #3f3336",
+"SX c #203437",
+"DX c #233338",
+"FX c #23363a",
+"GX c #28333b",
+"HX c #c4423f",
+"JX c #9d4a40",
+"KX c #243741",
+"LX c #283741",
+"PX c #283941",
+"IX c #203740",
+"UX c #784a44",
+"YX c #d79f93",
+"TX c #b15a53",
+"RX c #20303a",
+"EX c #26333f",
+"WX c #92543d",
+"QX c #6b4128",
+"!X c #232822",
+"~X c #884930",
+"^X c #4b3d3b",
+"/X c #23313b",
+"(X c #32393c",
+")X c #d5613c",
+"_X c #89433b",
+"`X c #b86740",
+"'X c #443d3d",
+"]X c #26323d",
+"[X c #35353f",
+"{X c #af523b",
+"}X c #30301e",
+"|X c #4c3225",
+" o c #cd623b",
+".o c #2f3540",
+"Xo c #28323f",
+"oo c #4e3f40",
+"Oo c #b86241",
+"+o c #c96041",
+"@o c #5f423d",
+"#o c #28333f",
+"$o c #26333d",
+"%o c #ad5a3c",
+"&o c #76472e",
+"*o c #1f2e28",
+"=o c #8d4a33",
+"-o c #3a3a36",
+";o c #243133",
+":o c #2e3235",
+">o c #ad4635",
+",o c #7c412b",
+"<o c #ce5e33",
+"1o c #423536",
+"2o c #223536",
+"3o c #243538",
+"4o c #253738",
+"5o c #28383b",
+"6o c #9d4341",
+"7o c #784540",
+"8o c #1e3841",
+"9o c #283a41",
+"0o c #293c43",
+"qo c #223942",
+"wo c #7c4d43",
+"eo c #cc9587",
+"ro c #baa5a5",
+"to c #b75e54",
+"yo c #27363b",
+"uo c #2b3940",
+"io c #93563f",
+"po c #77422b",
+"ao c #282e25",
+"so c #874b32",
+"do c #4c3f3b",
+"fo c #28333c",
+"go c #353b3c",
+"ho c #d7633d",
+"jo c #9c483a",
+"ko c #c06a40",
+"lo c #49413d",
+"zo c #28363f",
+"xo c #37383f",
+"co c #b7553c",
+"vo c #463322",
+"bo c #483627",
+"no c #cb653c",
+"mo c #333740",
+"Mo c #283540",
+"No c #524341",
+"Bo c #bc6841",
+"Vo c #cc6441",
+"Co c #624540",
+"Zo c #2d3841",
+"Ao c #2c3641",
+"So c #ad633f",
+"Do c #754c30",
+"Fo c #312e28",
+"Go c #a74f32",
+"Ho c #424136",
+"Jo c #2d3738",
+"Ko c #353535",
+"Lo c #ad4b35",
+"Po c #89442c",
+"Io c #da6333",
+"Uo c #483736",
+"Yo c #283736",
+"To c #283a37",
+"Ro c #293a38",
+"Eo c #2e3f3c",
+"Wo c #4d4341",
+"Qo c #44433f",
+"!o c #2b3f41",
+"~o c #2e4042",
+"^o c #2f4042",
+"/o c #263c43",
+"(o c #805244",
+")o c #d7a191",
+"_o c #c7b3b3",
+"`o c #ba6355",
+"'o c #30413d",
+"]o c #354341",
+"[o c #945a41",
+"{o c #81412c",
+"}o c #372e25",
+"|o c #8d4d31",
+" O c #55443c",
+".O c #313d3c",
+"XO c #43443b",
+"oO c #dc683f",
+"OO c #af553c",
+"+O c #cf7440",
+"@O c #4f453f",
+"#O c #2f393d",
+"$O c #393d3d",
+"%O c #bb563a",
+"&O c #6b3923",
+"*O c #623928",
+"=O c #cd683d",
+"-O c #373a40",
+";O c #2c3740",
+":O c #544642",
+">O c #c26d41",
+",O c #cf6942",
+"<O c #634841",
+"1O c #323b42",
+"2O c #b16b3f",
+"3O c #7a4f2f",
+"4O c #56302b",
+"5O c #ba5931",
+"6O c #4a4433",
+"7O c #353b38",
+"8O c #383836",
+"9O c #b05033",
+"0O c #9f482d",
+"qO c #e36833",
+"wO c #4f3a35",
+"eO c #2c3936",
+"rO c #493d37",
+"tO c #393d37",
+"yO c #32423c",
+"uO c #354442",
+"iO c #374540",
+"pO c #354241",
+"aO c #364243",
+"sO c #374343",
+"dO c #2d4043",
+"fO c #855845",
+"gO c #cc9b88",
+"hO c #baa7a5",
+"jO c #bd6c56",
+"kO c #36473d",
+"lO c #3b4943",
+"zO c #9b5f42",
+"xO c #9f462c",
+"cO c #503225",
+"vO c #955132",
+"bO c #5a473c",
+"nO c #42463d",
+"mO c #564a3c",
+"MO c #e26e40",
+"NO c #b25f3d",
+"BO c #cf7842",
+"VO c #534840",
+"CO c #384040",
+"ZO c #414541",
+"AO c #c25b3c",
+"SO c #7d3d23",
+"DO c #753e29",
+"FO c #d27040",
+"GO c #3d4441",
+"HO c #374140",
+"JO c #5f4e43",
+"KO c #d27742",
+"LO c #d56e43",
+"PO c #695044",
+"IO c #394443",
+"UO c #3a4342",
+"YO c #b87441",
+"TO c #87522e",
+"RO c #713329",
+"EO c #c06133",
+"WO c #4f4736",
+"QO c #3a3d36",
+"!O c #3b3b32",
+"~O c #b75231",
+"^O c #b64b2d",
+"/O c #e76934",
+"(O c #523931",
+")O c #2c3836",
+"_O c #804439",
+"`O c #614538",
+"'O c #30423c",
+"]O c #3b4640",
+"[O c #3c4842",
+"{O c #394843",
+"}O c #3a4842",
+"|O c #3a4843",
+" + c #314545",
+".+ c #875d45",
+"X+ c #cc9d87",
+"o+ c #c7b6b3",
+"O+ c #c07256",
+"++ c #3b4a43",
+"@+ c #414e49",
+"#+ c #9f6545",
+"$+ c #c5542d",
+"%+ c #743926",
+"&+ c #a25431",
+"*+ c #5d4d40",
+"=+ c #424133",
+"-+ c #5b412d",
+";+ c #e47b3c",
+":+ c #bd6532",
+">+ c #d47d42",
+",+ c #50442d",
+"<+ c #3d433c",
+"1+ c #454747",
+"2+ c #c6673c",
+"3+ c #953f22",
+"4+ c #7e452a",
+"5+ c #d27d43",
+"6+ c #4a5047",
+"7+ c #455046",
+"8+ c #6a5947",
+"9+ c #e17d44",
+"0+ c #de7544",
+"q+ c #735a47",
+"w+ c #425047",
+"e+ c #464e44",
+"r+ c #bc7a43",
+"t+ c #94542f",
+"y+ c #923628",
+"u+ c #d66c31",
+"i+ c #50543d",
+"p+ c #3d3f36",
+"a+ c #3a3328",
+"s+ c #c1552c",
+"d+ c #b8492a",
+"f+ c #ea6f2f",
+"g+ c #583828",
+"h+ c #29362d",
+"j+ c #9b4d37",
+"k+ c #8a543a",
+"l+ c #2f423d",
+"z+ c #3c4742",
+"x+ c #3e4942",
+"c+ c #3d4b45",
+"v+ c #3c4b44",
+"b+ c #3f4b43",
+"n+ c #344845",
+"m+ c #896147",
+"M+ c #cc9e88",
+"N+ c #baa9a5",
+"B+ c #c27657",
+"V+ c #3d5043",
+"C+ c #43544a",
+"Z+ c #a26e49",
+"A+ c #de612d",
+"S+ c #8a3d26",
+"D+ c #a85a30",
+"F+ c #5b503b",
+"G+ c #533f29",
+"H+ c #74442b",
+"J+ c #ea903a",
+"K+ c #e87030",
+"L+ c #e18942",
+"P+ c #5e442b",
+"I+ c #443924",
+"U+ c #414032",
+"Y+ c #c97739",
+"T+ c #a24024",
+"R+ c #984828",
+"E+ c #d78f47",
+"W+ c #50594b",
+"Q+ c #475348",
+"!+ c #6e634a",
+"~+ c #ed8948",
+"^+ c #e88b47",
+"/+ c #74674a",
+"(+ c #4f584a",
+")+ c #525a47",
+"_+ c #bd8445",
+"`+ c #a7582e",
+"'+ c #c64f28",
+"]+ c #e1852e",
+"[+ c #4f452c",
+"{+ c #483127",
+"}+ c #683328",
+"|+ c #cd5e29",
+" @ c #c65328",
+".@ c #ec7c2d",
+"X@ c #623a28",
+"o@ c #313228",
+"O@ c #a85a2d",
+"+@ c #ad6b39",
+"@@ c #38443d",
+"#@ c #434843",
+"$@ c #424a42",
+"%@ c #434d44",
+"&@ c #434d43",
+"*@ c #444e44",
+"=@ c #3c5046",
+"-@ c #8d6747",
+";@ c #cc9f88",
+":@ c #c7c0b3",
+">@ c #c37d56",
+",@ c #44574d",
+"<@ c #485b58",
+"1@ c #a67756",
+"2@ c #e8762f",
+"3@ c #a95927",
+"4@ c #b36932",
+"5@ c #824d2d",
+"6@ c #773d28",
+"7@ c #87492d",
+"8@ c #eda83e",
+"9@ c #eb7832",
+"0@ c #eb9c44",
+"q@ c #7c482e",
+"w@ c #643827",
+"e@ c #59402b",
+"r@ c #d28937",
+"t@ c #c25525",
+"y@ c #a55729",
+"u@ c #d7a749",
+"i@ c #55594c",
+"p@ c #495653",
+"a@ c #746d50",
+"s@ c #eb9d48",
+"d@ c #e89f47",
+"f@ c #78724e",
+"g@ c #565a4b",
+"h@ c #58614a",
+"j@ c #c09448",
+"k@ c #b9642e",
+"l@ c #cc6228",
+"z@ c #e3952d",
+"x@ c #654129",
+"c@ c #623229",
+"v@ c #733729",
+"b@ c #d0722c",
+"n@ c #e2652c",
+"m@ c #f68d2f",
+"M@ c #893d29",
+"N@ c #60322a",
+"B@ c #b36a2f",
+"V@ c #d48337",
+"C@ c #4d453a",
+"Z@ c #464e42",
+"A@ c #464d42",
+"S@ c #485346",
+"D@ c #465044",
+"F@ c #475245",
+"G@ c #445649",
+"H@ c #916c48",
+"J@ c #cca288",
+"K@ c #baada5",
+"L@ c #c38255",
+"P@ c #485d56",
+"I@ c #4c5b5f",
+"U@ c #a87d5a",
+"Y@ c #f79533",
+"T@ c #c37126",
+"R@ c #bd7431",
+"E@ c #97522f",
+"W@ c #7f3d2b",
+"Q@ c #8a4b2e",
+"!@ c #edb141",
+"~@ c #ec7f35",
+"^@ c #f2a947",
+"/@ c #904b2d",
+"(@ c #813928",
+")@ c #7c402c",
+"_@ c #dc9736",
+"`@ c #d86a25",
+"'@ c #b3622b",
+"]@ c #d9b24a",
+"[@ c #555f4e",
+"{@ c #4c5854",
+"}@ c #737350",
+"|@ c #edb049",
+" # c #eab047",
+".# c #7a764d",
+"X# c #575e4b",
+"o# c #566150",
+"O# c #c09f48",
+"+# c #d0812f",
+"@# c #dd7328",
+"## c #e49e2e",
+"$# c #7c432d",
+"%# c #84352b",
+"&# c #8e3d2b",
+"*# c #dd8d2d",
+"=# c #d9782b",
+"-# c #f6a82f",
+";# c #9b452d",
+":# c #7b312c",
+"># c #b7782f",
+",# c #ffa931",
+"<# c #7a4b2e",
+"1# c #474731",
+"2# c #474e3d",
+"3# c #4e5746",
+"4# c #6d5544",
+"5# c #605546",
+"6# c #455748",
+"7# c #97744a",
+"8# c #cca888",
+"9# c #bab0a5",
+"0# c #c58a54",
+"q# c #485b56",
+"w# c #4f5e5f",
+"e# c #ac8956",
+"r# c #ffa537",
+"t# c #d67727",
+"y# c #d57e31",
+"u# c #98552f",
+"i# c #7f3b2c",
+"p# c #934d2e",
+"a# c #f4cd43",
+"s# c #f6b14b",
+"d# c #a95a2f",
+"f# c #a14d29",
+"g# c #82482d",
+"h# c #daa138",
+"j# c #d46e28",
+"k# c #ca692e",
+"l# c #e0b94a",
+"z# c #53614d",
+"x# c #4c5a4b",
+"c# c #737a4c",
+"v# c #f3c349",
+"b# c #edc148",
+"n# c #7d7e4a",
+"m# c #575f4b",
+"M# c #545d48",
+"N# c #bfa247",
+"B# c #d39136",
+"V# c #e08228",
+"C# c #f0aa2e",
+"Z# c #a5532d",
+"A# c #9b432d",
+"S# c #a54d2c",
+"D# c #e9a42d",
+"F# c #ec902c",
+"G# c #f4b92f",
+"H# c #9d4d2c",
+"J# c #8a332d",
+"K# c #d2842e",
+"L# c #ffbc30",
+"P# c #a95a2c",
+"I# c #72442c",
+"U# c #5d4a2d",
+"Y# c #606348",
+"T# c #b88146",
+"R# c #766347",
+"E# c #49574a",
+"W# c #9c7b4b",
+"Q# c #ccac89",
+"!# c #bab2a5",
+"~# c #c99458",
+"^# c #53594f",
+"/# c #595946",
+"(# c #b68949",
+")# c #ffaa38",
+"_# c #d97b28",
+"`# c #cf8631",
+"'# c #9c5930",
+"]# c #813d2b",
+"[# c #a15530",
+"{# c #fadf47",
+"}# c #feb139",
+"|# c #ffc750",
+" $ c #c97b35",
+".$ c #b5682d",
+"X$ c #ab622e",
+"o$ c #e9ae37",
+"O$ c #ec9c2c",
+"+$ c #df8d31",
+"@$ c #e0b749",
+"#$ c #534c3f",
+"$$ c #4e5b45",
+"%$ c #76804e",
+"&$ c #f1c94c",
+"*$ c #ecc348",
+"=$ c #84874e",
+"-$ c #565b49",
+";$ c #55433a",
+":$ c #c2a347",
+">$ c #eda238",
+",$ c #ed8d2b",
+"<$ c #ffb72e",
+"1$ c #cc6e2e",
+"2$ c #b15b2e",
+"3$ c #b1602f",
+"4$ c #e1ab2e",
+"5$ c #ea922d",
+"6$ c #fdc72f",
+"7$ c #d4742e",
+"8$ c #b7522d",
+"9$ c #d4882f",
+"0$ c #f3bd31",
+"q$ c #c6722d",
+"w$ c #94442d",
+"e$ c #84472d",
+"r$ c #7f5235",
+"t$ c #ecaf44",
+"y$ c #7f6e49",
+"u$ c #565a4d",
+"i$ c #a2854e",
+"p$ c #ccb689",
+"a$ c #bab6a5",
+"s$ c #cfa358",
+"d$ c #594932",
+"f$ c #6d4928",
+"g$ c #c48f47",
+"h$ c #ffab37",
+"j$ c #b96c2e",
+"k$ c #c3943e",
+"l$ c #a7642f",
+"z$ c #a95f2c",
+"x$ c #d07d31",
+"c$ c #ffe748",
+"v$ c #fdb13b",
+"b$ c #ffd752",
+"n$ c #df8d39",
+"m$ c #cf762f",
+"M$ c #cc732f",
+"N$ c #f5bd42",
+"B$ c #d7993b",
+"V$ c #c27b30",
+"C$ c #e3b850",
+"Z$ c #714437",
+"A$ c #5b4535",
+"S$ c #757544",
+"D$ c #f0cb50",
+"F$ c #ecc448",
+"G$ c #877d4c",
+"H$ c #62453c",
+"J$ c #733830",
+"K$ c #cba246",
+"L$ c #d48f38",
+"P$ c #c4712f",
+"I$ c #fabf34",
+"U$ c #d97e31",
+"Y$ c #d98130",
+"T$ c #cb7a30",
+"R$ c #eab32f",
+"E$ c #eb982f",
+"W$ c #ffd732",
+"Q$ c #ffa32e",
+"!$ c #d36c30",
+"~$ c #d78f32",
+"^$ c #dca933",
+"/$ c #e2942e",
+"($ c #a94b2f",
+")$ c #c66e2e",
+"_$ c #f6ce40",
+"`$ c #8d7850",
+"'$ c #6c6d62",
+"]$ c #a68954",
+"[$ c #ccb88a",
+"{$ c #bab7a6",
+"}$ c #dcad4c",
+"|$ c #894627",
+" % c #8d4c2c",
+".% c #c99049",
+"X% c #f9b846",
+"o% c #d7aa4b",
+"O% c #d49a47",
+"+% c #bf6e2f",
+"@% c #bb6d2e",
+"#% c #f69b30",
+"$% c #ffec48",
+"%% c #fdae3a",
+"&% c #ffd754",
+"*% c #ffa139",
+"=% c #fc9431",
+"-% c #fd9931",
+";% c #ffbc46",
+":% c #eac65f",
+">% c #a77c46",
+",% c #e8b654",
+"<% c #ac5d36",
+"1% c #894b33",
+"2% c #a1733b",
+"3% c #eac952",
+"4% c #e7c44a",
+"5% c #c1823b",
+"6% c #ba6335",
+"7% c #bd6736",
+"8% c #ecb242",
+"9% c #a87e38",
+"0% c #c49b3b",
+"q% c #fbbb3b",
+"w% c #f39835",
+"e% c #f29935",
+"r% c #f49933",
+"t% c #ffc231",
+"y% c #ed9e30",
+"u% c #ffd933",
+"i% c #fea72e",
+"p% c #eb802f",
+"a% c #f9af35",
+"s% c #c38e32",
+"d% c #edb12e",
+"f% c #d66e30",
+"g% c #c55d2e",
+"h% c #e8a22e",
+"j% c #f7cd3b",
+"k% c #9c652d",
+"l% c #624d3b",
+"z% c #a58a4c",
+"x% c #ccbf8a",
+"c% c #bab7a7",
+"v% c #e4bc4f",
+"b% c #a34d28",
+"n% c #9d522f",
+"m% c #c9994c",
+"M% c #fdca56",
+"N% c #e2943d",
+"B% c #d37d32",
+"V% c #e08932",
+"C% c #f2982e",
+"Z% c #ffa732",
+"A% c #ffef48",
+"S% c #fcb33e",
+"D% c #ffdf54",
+"F% c #ffb03c",
+"G% c #ffa435",
+"H% c #ffab36",
+"J% c #ffa739",
+"K% c #fbaa40",
+"L% c #fbe063",
+"P% c #ffdd62",
+"I% c #e28839",
+"U% c #d67c37",
+"Y% c #eb973e",
+"T% c #f0cf54",
+"R% c #ebca49",
+"E% c #faa640",
+"W% c #e4883b",
+"Q% c #dc873a",
+"!% c #ffcf42",
+"~% c #fce33c",
+"^% c #ffba3b",
+"/% c #ffaa3a",
+"(% c #ffb03b",
+")% c #ffa938",
+"_% c #fea537",
+"`% c #ffc733",
+"'% c #eca333",
+"]% c #ffd736",
+"[% c #ffb130",
+"{% c #fc9732",
+"}% c #ffbf36",
+"|% c #c67f34",
+" & c #f0b52f",
+".& c #ef9430",
+"X& c #d76b2e",
+"o& c #dfab2e",
+"O& c #e7b53b",
+"+& c #b8752f",
+"@& c #8d4d29",
+"#& c #af8738",
+"$& c #c2b881",
+"%& c #e9c750",
+"&& c #ac582d",
+"*& c #b36832",
+"=& c #cc813b",
+"-& c #e18937",
+";& c #d87c31",
+":& c #e08235",
+">& c #e98f32",
+",& c #ffa230",
+"<& c #ffed46",
+"1& c #ffb13c",
+"2& c #ffea57",
+"3& c #ffbf3c",
+"4& c #ffa937",
+"5& c #ffaf38",
+"6& c #ffb13b",
+"7& c #ffa939",
+"8& c #ffb93d",
+"9& c #ffc249",
+"0& c #f6a338",
+"q& c #ffa43a",
+"w& c #ffd458",
+"e& c #f3c954",
+"r& c #efcc4d",
+"t& c #fec742",
+"y& c #ef943a",
+"u& c #f4a339",
+"i& c #ffbf41",
+"p& c #ffc33c",
+"a& c #ffb63c",
+"s& c #ffba3d",
+"d& c #ffba3a",
+"f& c #f9a538",
+"g& c #ffc33a",
+"h& c #ffdd3a",
+"j& c #cb7636",
+"k& c #ffd436",
+"l& c #ffb231",
+"z& c #ff9b32",
+"x& c #ffc135",
+"c& c #cb7d35",
+"v& c #f39a32",
+"b& c #f7a833",
+"n& c #f5992d",
+"m& c #e2a82d",
+"M& c #e3b03b",
+"N& c #b97a2f",
+"B& c #9c4f29",
+"V& c #cb9037",
+"C& c #ccc88b",
+"Z& c #fad550",
+"A& c #d47a30",
+"S& c #d78733",
+"D& c #ea9338",
+"F& c #ef9a35",
+"G& c #e79233",
+"H& c #faab33",
+"J& c #ffab30",
+"K& c #ffae33",
+"L& c #fff360",
+"P& c #ef8e44",
+"I& c #f5c45e",
+"U& c #ffe35a",
+"Y& c #ffb93c",
+"T& c #ffba3f",
+"R& c #ffc63d",
+"E& c #ffc03d",
+"W& c #ffb63b",
+"Q& c #fff15d",
+"!& c #ffef68",
+"~& c #e67a3d",
+"^& c #f1904a",
+"/& c #fff24e",
+"(& c #ffd942",
+")& c #ffb23a",
+"_& c #ffaf43",
+"`& c #ffc33d",
+"'& c #ffbc3f",
+"]& c #ffbd3f",
+"[& c #ffbd3c",
+"{& c #ffcd3d",
+"}& c #ffea42",
+"|& c #c5893c",
+" * c #ab5a36",
+".* c #ffe638",
+"X* c #ffbf30",
+"o* c #fc9932",
+"O* c #ffc037",
+"+* c #d48136",
+"@* c #ec7b2f",
+"#* c #ffca35",
+"$* c #ffbd2e",
+"%* c #dd912e",
+"&* c #f2b63c",
+"** c #b65429",
+"=* c #d29738",
+"-* c #c2bf81",
+";* c #bab6a7",
+":* c #feda54",
+">* c #ec8932",
+",* c #f99939",
+"<* c #ffb23b",
+"1* c #ffba37",
+"2* c #ffb237",
+"3* c #ffb937",
+"4* c #ffb731",
+"5* c #ffb637",
+"6* c #ffe66e",
+"7* c #fff281",
+"8* c #fa9944",
+"9* c #d3673b",
+"0* c #efbc64",
+"q* c #ffea5a",
+"w* c #ffbd40",
+"e* c #ffb63e",
+"r* c #ffb841",
+"t* c #ffc743",
+"y* c #fff35a",
+"u* c #ffe452",
+"i* c #ffb039",
+"p* c #cf6937",
+"a* c #dd7137",
+"s* c #fffe47",
+"d* c #ffe940",
+"f* c #ffba42",
+"g* c #ffca3f",
+"h* c #ffc240",
+"j* c #ffbd41",
+"k* c #ffdf43",
+"l* c #ffdd45",
+"z* c #eda262",
+"x* c #ad5f55",
+"c* c #dd7233",
+"v* c #fbb038",
+"b* c #ffdf3b",
+"n* c #ffc938",
+"m* c #ffd937",
+"M* c #cd8437",
+"N* c #c05d2e",
+"B* c #ffd638",
+"V* c #ffc62d",
+"C* c #e07f2e",
+"Z* c #ffc13b",
+"A* c #e48530",
+"S* c #bc562a",
+"D* c #d39938",
+"F* c #ccca8b",
+"G* c #ffdd56",
+"H* c #ffa638",
+"J* c #ffad39",
+"K* c #ffbd3a",
+"L* c #ffc338",
+"P* c #ffbd37",
+"I* c #ffc435",
+"U* c #ffc93c",
+"Y* c #fff971",
+"T* c #ffe86b",
+"R* c #ffb03d",
+"E* c #f58931",
+"W* c #f26831",
+"Q* c #c99080",
+"!* c #f6c670",
+"~* c #ffec58",
+"^* c #ffc246",
+"/* c #ffaf3c",
+"(* c #ffc643",
+")* c #fff656",
+"_* c #ffcf44",
+"`* c #fda135",
+"'* c #f78935",
+"]* c #dc8a65",
+"[* c #ca876d",
+"{* c #ff893b",
+"}* c #ff9b38",
+"|* c #ffd740",
+" = c #fffd46",
+".= c #ffd943",
+"X= c #ffc943",
+"o= c #fff945",
+"O= c #ffcb41",
+"+= c #d09f80",
+"@= c #ab969b",
+"#= c #b3a6a7",
+"$= c #cb7054",
+"%= c #f38535",
+"&= c #ffab31",
+"*= c #ffe144",
+"== c #ffff48",
+"-= c #c28235",
+";= c #b0552d",
+":= c #ffda3c",
+">= c #edc32d",
+",= c #de6e2c",
+"<= c #ffc93a",
+"1= c #e78d31",
+"2= c #b25729",
+"3= c #d69837",
+"4= c #c2c081",
+"5= c #ffdc59",
+"6= c #ffac3a",
+"7= c #ffbc3a",
+"8= c #ffbf3b",
+"9= c #ffc439",
+"0= c #ffdc50",
+"q= c #ffff7b",
+"w= c #ffd959",
+"e= c #ff9f32",
+"r= c #d7722b",
+"t= c #ea6d3a",
+"y= c #c19180",
+"u= c #afa9ad",
+"i= c #cfb58e",
+"p= c #ffe165",
+"a= c #ffe156",
+"s= c #fff75e",
+"d= c #ffca45",
+"f= c #ff9733",
+"g= c #e7793e",
+"h= c #d78a6f",
+"j= c #d69086",
+"k= c #c8623a",
+"l= c #f08530",
+"z= c #fab841",
+"x= c #fff256",
+"c= c #ffe04f",
+"v= c #ffb546",
+"b= c #cf8a7e",
+"n= c #aea9ae",
+"m= c #b99a95",
+"M= c #e57636",
+"N= c #f9902d",
+"B= c #f5b047",
+"V= c #c77d38",
+"C= c #c3572c",
+"Z= c #ffd336",
+"A= c #ddb72e",
+"S= c #e4682d",
+"D= c #ffce3a",
+"F= c #ffb332",
+"G= c #dd732c",
+"H= c #dc9b39",
+"J= c #ccca8c",
+"K= c #ffe95a",
+"L= c #ffbc3c",
+"P= c #ffc038",
+"I= c #ffdc62",
+"U= c #fff77a",
+"Y= c #f7c14a",
+"T= c #ffaa30",
+"R= c #e87d2d",
+"E= c #ea7247",
+"W= c #ce9c8d",
+"Q= c #c7a781",
+"!= c #ffd257",
+"~= c #ffba3c",
+"^= c #ffa532",
+"/= c #ea763e",
+"(= c #b19798",
+")= c #a28d8b",
+"_= c #c76743",
+"`= c #d66925",
+"'= c #f59531",
+"]= c #ffa161",
+"[= c #c98f88",
+"{= c #a98c83",
+"}= c #c87047",
+"|= c #b7816b",
+" - c #a7684f",
+".- c #b95929",
+"X- c #db9a40",
+"o- c #cb9049",
+"O- c #d5712d",
+"+- c #ffce39",
+"@- c #ffb830",
+"#- c #ea7d2c",
+"$- c #e69d3b",
+"%- c #c2bf82",
+"&- c #aca899",
+"*- c #fff15b",
+"=- c #ffc23d",
+"-- c #ffbc3b",
+";- c #ffc43e",
+":- c #ffed64",
+">- c #fffe7e",
+",- c #ffb844",
+"<- c #ff892e",
+"1- c #ff8530",
+"2- c #d37759",
+"3- c #b9a09f",
+"4- c #d3a280",
+"5- c #ea7f3a",
+"6- c #d46739",
+"7- c #ba9d9b",
+"8- c #a19291",
+"9- c #b26b52",
+"0- c #aa624b",
+"q- c #bf9ea1",
+"w- c #b2a3a3",
+"e- c #9c7061",
+"r- c #c4612a",
+"t- c #af9e9b",
+"y- c #c08169",
+"u- c #c96e2b",
+"i- c #ffcd3b",
+"p- c #ffb330",
+"a- c #ff8e2d",
+"s- c #f6a33a",
+"d- c #fff65b",
+"f- c #ffd53a",
+"g- c #ffd946",
+"h- c #fff96e",
+"j- c #ffe268",
+"k- c #ffa43b",
+"l- c #ff952c",
+"z- c #de6930",
+"x- c #af6855",
+"c- c #afaaad",
+"v- c #a0979a",
+"b- c #ada5a9",
+"n- c #9e999d",
+"m- c #aca8ad",
+"M- c #b99e93",
+"N- c #a89691",
+"B- c #a36c5a",
+"V- c #ac5a2c",
+"C- c #ffd93b",
+"Z- c #ffea30",
+"A- c #ffc53c",
+"S- c #aca999",
+"D- c #ffed59",
+"F- c #ffd44f",
+"G- c #fffb7a",
+"H- c #ffd35d",
+"J- c #ffb338",
+"K- c #fd8f30",
+"L- c #e66c37",
+"P- c #bf7b69",
+"I- c #aeaaaf",
+"U- c #a06d60",
+"Y- c #c3672e",
+"T- c #fff146",
+"R- c #ffef36",
+"E- c #ffae2f",
+"W- c #ffff78",
+"Q- c #ffff87",
+"!- c #ffa333",
+"~- c #ff8b32",
+"^- c #ee7c39",
+"/- c #b79187",
+"(- c #b2adaf",
+")- c #b36f5b",
+"_- c #ec7a2c",
+"`- c #ffbb44",
+"'- c #ffe259",
+"]- c #ffcc3a",
+"[- c #ffd53c",
+"{- c #aca99f",
+"}- c #fff580",
+"|- c #ffb02f",
+" ; c #f68930",
+".; c #be573f",
+"X; c #a19091",
+"o; c #d4a590",
+"O; c #e57241",
+"+; c #f56e2c",
+"@; c #ffa540",
+"#; c #fff25e",
+"$; c #fff452",
+"%; c #c2bc80",
+"&; c #baa99d",
+"*; c #f59230",
+"=; c #ff8428",
+"-; c #f4772e",
+";; c #d47855",
+":; c #a29091",
+">; c #aea8ab",
+",; c #d2754c",
+"<; c #f76d2c",
+"1; c #fffb62",
+"2; c #c2c08a",
+"3; c #a29998",
+"4; c #d18153",
+"5; c #f76422",
+"6; c #b37e70",
+"7; c #aa9b9a",
+"8; c #9e9599",
+"9; c #d3795d",
+"0; c #ef782d",
+"q; c #f69a32",
+"w; c #c2a37c",
+"e; c #a0989c",
+"r; c #b79f9b",
+"t; c #b3a9ab",
+"y; c #d9846f",
+"u; c #c47258",
+"i; c #a39898",
+" . ",
+" . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X o ",
+" X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . o ",
+" X . . X . . . X . . . X . . . X . . . X . . . X . . . X . . . X . . . X . . . X . . . X . . . X . . . X . . o ",
+" O . X . O X . . + X . . O X . . + X . . O X . . + X . . O X . . + X . . O X . . + X . . O X . . + X . . O X o ",
+" . X . . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . X . o ",
+" O . + X O . O X O . O X + . O X O . O X + . O X O . O X + . O X O . O X + . O X O . O X + . O X O . O X O . o ",
+" X @ # $ % % & & * = - ; : O > , < 1 2 3 4 5 6 7 8 . X 9 0 q w e r t y u i p a s d f g h j k l z x c v b n O o ",
+" O m M N B V C Z A S D F G H J K L P I U Y T R E W Q ! ~ ^ / ( ) _ ` ' ] [ { } | .../ X.o.O.+.@.#.$.%.&.*.X o ",
+" X =.-.;.:.>.,.<.1.2.3.4.5.6.7.8.9.0.q.w.e.r.t.y.u.i.p.a.s.d.f.g.h.g.j.k.l.z.x.c.v.b.n.m.M.N.B.V.C.Z.A.S.D.. o ",
+" O =.F.G.H.J.K.L.P.I.U.Y.T.R.E.W.Q.H.!.~.^./.(.)._.`.'.].[.{.}.|. X.XXXoXOX+X@X#X$X%X&X*X=X-X;X:X>X,X<X1X2XX o ",
+" X 3X4X5X6X7X8X9X0XqXwXeXrXtXyXuXiXpXaXsXdXfXgXhXjXkXlXzXxXcXvXbXnXmXMXNXBXVXCXZXAXSXDXFXGXHXJXKXLXPXIXUXYXO o ",
+" O =.TXRXEXWXQX!X~X^X/X(X)X_X`X'X]X[X{X}X|X o.oXoooOo+o@o#o$o%o&o*o=o-o;o:o>o,o<o1o2o3o4o5o6o7o8o9o0oqowoeoX o ",
+" X rotoyouoiopoaosodofogohojokolozoxocovobonomoMoNoBoVoCoZoAoSoDoFoGoHoJoKoLoPoIoUoYoToRoEoWoQo!o~o^o/o(o)oO o ",
+" O _o`o'o]o[o{o}o|o O.OXOoOOO+O@O#O$O%O&O*O=O-O;O:O>O,O<O1O1O2O3O4O5O6O7O8O9O0OqOwOeOrOtOyOuOiOpOaOsOdOfOgOX o ",
+" O hOjOkOlOzOxOcOvObOnOmOMONOBOVOCOZOAOSODOFOGOHOJOKOLOPOIOUOYOTOROEOWOQO!O~O^O/O(O)O_O`O'O]O[O{O}O|O +.+X+O o ",
+" O o+O+++@+#+$+%+&+*+=+-+;+:+>+,+<+1+2+3+4+5+6+7+8+9+0+q+w+e+r+t+y+u+i+p+a+s+d+f+g+h+j+k+l+z+x+c+v+b+n+m+M+. o ",
+" O N+B+V+C+Z+A+S+D+F+G+H+J+K+L+P+I+U+Y+T+R+E+W+Q+!+~+^+/+(+)+_+`+'+]+[+{+}+|+ @.@X@o@O@+@@@#@$@%@&@*@=@-@;@O o ",
+" O :@>@,@<@1@2@3@4@5@6@7@8@9@0@q@w@e@r@t@y@u@i@p@a@s@d@f@g@h@j@k@l@z@x@c@v@b@n@m@M@N@B@V@C@Z@A@S@D@F@G@H@J@X o ",
+" O K@L@P@I@U@Y@T@R@E@W@Q@!@~@^@/@(@)@_@`@'@]@[@{@}@|@ #.#X#o#O#+#@###$#%#&#*#=#-#;#:#>#,#<#1#2#3#4#5#6#7#8#O o ",
+" O 9#0#q#w#e#r#t#y#u#i#p#a#r#s#d#f#g#h#j#k#l#z#x#c#v#b#n#m#M#N#B#V#C#Z#A#S#D#F#G#H#J#K#L#P#I#U#Y#T#R#E#W#Q#O o ",
+" O !#~#^#/#(#)#_#`#'#]#[#{#}#|# $.$X$o$O$+$@$#$$$%$&$*$=$-$;$:$>$,$<$1$2$3$4$5$6$7$8$9$0$q$w$e$r$t$y$u$i$p$O o ",
+" O a$s$d$f$g$h$j$k$l$z$x$c$v$b$n$m$M$N$B$V$C$Z$A$S$D$F$G$H$J$K$L$P$I$U$Y$T$R$E$W$Q$!$~$^$/$($($)$_$`$'$]$[$O o ",
+" O {$}$|$ %.%X%o%O%+%@%#%$%%%&%*%=%-%;%:%>%,%<%1%2%3%4%5%6%7%8%9%0%q%w%e%r%t%y%u%i%p%a%s%d%f%g%h%j%k%l%z%x%O o ",
+" + c%v%b%n%m%M%N%B%V%C%Z%A%S%D%F%G%H%J%K%L%P%I%U%Y%T%R%E%W%Q%!%~%^%/%(%)%_%`%'%]%[%{%}%|% &.&X&o&O&+&@&#&$&O o ",
+" O {$%&&&*&=&-&;&:&>&,&Z%<&1&2&3&4&5&6&7&8&9&0&q&w&e&r&t&y&u&i&p&a&s&d&f&g&h&j&k&l&z&x&c&v&b&n&m&M&N&B&V&C&O o ",
+" O {$Z&A&S&D&F&G&G%H&J&K&L&P&I&U&^%Y&T&T&R&E&W&Q&!&~&^&/&(&)&_&`&'&]&[&{&}&|& *.*X*o*O*+*@*#*$*%*&*x$**=*-*O o ",
+" O ;*:*>*,*<*1*2*3*4*5*6*7*8*9*0*q*w*e*r*W&t*y*u*i*p*a*a&s*d*f*g*h*j*k*l*z*x*c*v*b*n*m*M*N*B*V*C*Z*A*S*D*F*O o ",
+" + {$G*H*J*K*L*P*I*U*Y*T*R*E*W*Q*!*~*^*/*(*)*_*`*'*]*[*{*}*|* =.=X=o=O=+=@=#=$=%=&=*===-=;=:=>=,=<=1=2=3=4=O o ",
+" O ;*5=6=7=8=9=}%0=q=w=e=r=t=y=O u=i=p=a=s=d=f=g=h=O O j=k=l=z=x=c=v=b=O O O n=m=M=N=B=V=C=Z=A=S=D=F=G=H=J=O o ",
+" + ;*K=W&L=p&P=I=U=Y=T=R=E=W=+ O + O Q=!=~=^=/=(=+ O + O )=_=`='=]=[=+ O + O + O {=}=|= -.-X-o-O-+-@-#-$-%-O o ",
+" O &-*-=---;-:->-,-<-1-2-3-+ O O O + O 4-5-6-7-O O + O O O 8-9-0-q-+ O O O O O + O w-O e-r-t-y-u-i-p-a-s-F*+ o ",
+" + ;*d-f-g-h-j-k-l-z-x-c-+ O + O + O + O v-b-+ O + O + O + O n-m-+ O + O + O + O + O + M-N-O B-V-C-Z-J&A--*O o ",
+" O S-D-F-G-H-J-K-L-P-I-+ O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + U-Y-T-R-E-U*F*+ o ",
+" + a$W-Q-b$!-~-^-/-(-+ O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O )-_-`-'-]-[--*O o ",
+" + {-}-`-|- ;.;X;+ + O + + + O + + + O + + + O + + + O + + + O + + + O + O + + + O + + + O + o;O;+;@;#;$;%;+ o ",
+" + &;*;=;-;;;:;O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + >;,;<;h$1;2;O o ",
+" + 3;4;5;6;7;+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8;9;0;q;w;+ o ",
+" + O e;r;+ O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + O + t;y;u;i;O o ",
+" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + o ",
+" + + + O + + + O + + + O + + + O + + + O + + + O + + + O + + + O + + + O + + + O + + + O + + + O + + + O + + o ",
+" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + o ",
+" + O + + + + + + + O + + + + + + + O + + + + + + + O + + + + + + + O + + + + + + + O + + + + + + + O + + + + o ",
+" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + o ",
+" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + o ",
+"X o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o "};
diff --git a/rbutil/install_dialogs.cpp b/rbutil/install_dialogs.cpp
index 6f62cac083..80ce618989 100644
--- a/rbutil/install_dialogs.cpp
+++ b/rbutil/install_dialogs.cpp
@@ -106,7 +106,8 @@ bool bootloaderInstallDlg::TransferDataFromWindow()
return false;
}
}
-
+
+ return true;
}
@@ -652,7 +653,7 @@ bool rockboxInstallDlg::TransferDataToWindow()
wxRadioBox* BuildRadioBox = (wxRadioBox*) FindWindow(ID_BUILD_BOX);
int index =gv->plat_id.Index(gv->curplat);
-
+
wxCommandEvent updateradiobox(wxEVT_COMMAND_RADIOBOX_SELECTED,
ID_BUILD_BOX);
diff --git a/rbutil/rbutil-rc.rc b/rbutil/rbutil-rc.rc
index 2dfe024f7f..59ec6d27e4 100644
--- a/rbutil/rbutil-rc.rc
+++ b/rbutil/rbutil-rc.rc
@@ -1,8 +1,8 @@
#define RBUTIL 1
#include <wx/msw/wx.rc>
RBUTIL VERSIONINFO
-FILEVERSION 0,3,2,2
-PRODUCTVERSION 0,3,2,2
+FILEVERSION 0,3,2,3
+PRODUCTVERSION 0,3,2,3
FILEOS 0x00000004
FILETYPE 0x00000001
BEGIN
@@ -10,8 +10,8 @@ BEGIN
BEGIN
BLOCK "FFFF0000"
BEGIN
- VALUE "FileVersion", "0.3.2.2\0"
- VALUE "ProductVersion", "0.3.2.2\0"
+ VALUE "FileVersion", "0.3.2.3\0"
+ VALUE "ProductVersion", "0.3.2.3\0"
VALUE "CompanyName", "Rockbox Team\0"
VALUE "FileDescription", "Rockbox Utility\0"
VALUE "InternalName", "rbutil\0"
diff --git a/rbutil/rbutil.h b/rbutil/rbutil.h
index bae62afd2d..f8a88d4e8d 100644
--- a/rbutil/rbutil.h
+++ b/rbutil/rbutil.h
@@ -107,8 +107,10 @@ public:
wxString bootloader_url;
wxString themes_url;
wxString manual_url;
+ wxString doom_url;
wxString proxy_url;
+
// User configuration data.
wxString curplat;
// unsigned int curplatnum;
diff --git a/rbutil/rbutil.ini b/rbutil/rbutil.ini
index 26988c3c6f..a4976ce51b 100644
--- a/rbutil/rbutil.ini
+++ b/rbutil/rbutil.ini
@@ -9,6 +9,7 @@ prog_name=rockbox
bootloader_url=http://download.rockbox.org/bootloader
themes_url=http://www.rockbox-themes.org/
manual_url=http://download.rockbox.org/manual/rockbox-
+doom_url=http://download.rockbox.org/useful/rockdoom.zip
[platforms]
platform1=player
diff --git a/rbutil/rbutilApp.cpp b/rbutil/rbutilApp.cpp
index 8ecd4a0914..8233554e23 100644
--- a/rbutil/rbutilApp.cpp
+++ b/rbutil/rbutilApp.cpp
@@ -215,6 +215,9 @@ bool rbutilFrmApp::ReadGlobalConfig(rbutilFrm* myFrame)
gv->GlobalConfig->Read(wxT("manual_url"), &tmpstr);
gv->manual_url = tmpstr;
+ gv->GlobalConfig->Read(wxT("doom_url"), &tmpstr);
+ gv->doom_url = tmpstr;
+
#ifdef __WXMSW__
gv->curdestdir = wxT("D:\\");
#else
diff --git a/rbutil/rbutilCtrls.cpp b/rbutil/rbutilCtrls.cpp
index 6556466d68..43b1ad0c37 100644
--- a/rbutil/rbutilCtrls.cpp
+++ b/rbutil/rbutilCtrls.cpp
@@ -402,11 +402,12 @@ void DeviceSelectorCtrl::setDefault()
void DeviceSelectorCtrl::OnComboBox(wxCommandEvent& event)
{
int index = gv->plat_name.Index(m_deviceCbx->GetValue());
+
if(index == -1)
{
- m_currentDevice = wxT("");
- return;
- }
+ m_currentDevice = wxT("");
+ return;
+ }
gv->curplat = gv->plat_id[index];
}
diff --git a/rbutil/rbutilFrm.cpp b/rbutil/rbutilFrm.cpp
index 913e22df14..4e5d0c834c 100644
--- a/rbutil/rbutilFrm.cpp
+++ b/rbutil/rbutilFrm.cpp
@@ -29,6 +29,7 @@
#include "rblogo.xpm"
#include "untools2_3d.xpm"
#include "themes_3d.xpm"
+#include "doom_3d.xpm"
#include "bootloaders.h"
#include "install_dialogs.h"
@@ -45,12 +46,15 @@ BEGIN_EVENT_TABLE(rbutilFrm,wxFrame)
EVT_BUTTON (ID_THEMES_BTN, rbutilFrm::OnThemesBtn)
EVT_BUTTON (ID_BOOTLOADER_BTN, rbutilFrm::OnBootloaderBtn)
EVT_BUTTON (ID_BOOTLOADERREMOVE_BTN, rbutilFrm::OnBootloaderRemoveBtn)
+ EVT_BUTTON (ID_DOOM_BTN, rbutilFrm::OnDoomBtn)
+
EVT_CLOSE(rbutilFrm::rbutilFrmClose)
EVT_MENU(ID_FILE_EXIT, rbutilFrm::OnFileExit)
EVT_MENU(ID_FILE_ABOUT, rbutilFrm::OnFileAbout)
EVT_MENU(ID_FILE_WIPECACHE, rbutilFrm::OnFileWipeCache)
EVT_MENU(ID_PORTABLE_INSTALL, rbutilFrm::OnPortableInstall)
+
EVT_MENU(ID_FILE_PROXY, rbutilFrm::OnFileProxy)
EVT_UPDATE_UI (ID_MANUAL, rbutilFrm::OnManualUpdate)
@@ -99,7 +103,7 @@ void rbutilFrm::CreateGUIControls(void)
wxPanel* uninstallpage = new wxPanel(tabwindow,wxID_ANY);
wxPanel* manualpage = new wxPanel(tabwindow,wxID_ANY);
tabwindow->AddPage(installpage,wxT("Installation"),true);
- tabwindow->AddPage(themepage,wxT("Themes"));
+ tabwindow->AddPage(themepage,wxT("Extras"));
tabwindow->AddPage(uninstallpage,wxT("Uninstallation"));
tabwindow->AddPage(manualpage,wxT("Manual"));
@@ -153,7 +157,7 @@ void rbutilFrm::CreateGUIControls(void)
wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
/*********************+
- Theme Page
+ Extras Page
***********************/
wxBoxSizer* WxBoxSizer3 = new wxBoxSizer(wxVERTICAL);
@@ -200,6 +204,20 @@ void rbutilFrm::CreateGUIControls(void)
WxFlexGridSizer2->Add(WxStaticText6, 0,
wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
+
+ wxBitmap DoomInstallButton (doom_3d_xpm);
+ WxBitmapButton6 = new wxBitmapButton(themepage, ID_DOOM_BTN,
+ DoomInstallButton, wxPoint(0,0), wxSize(64,54),
+ wxRAISED_BORDER | wxBU_AUTODRAW);
+ WxBitmapButton6->SetToolTip(wxT("Download freedoom wad files."));
+ WxFlexGridSizer2->Add(WxBitmapButton6, 0,
+ wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
+
+ wxStaticText* WxStaticText7 = new wxStaticText(themepage, wxID_ANY,
+ wxT("Install the freedoom wad files.\n\n"));
+ WxFlexGridSizer2->Add(WxStaticText7, 0,
+ wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
+
/*********************+
Uninstall Page
***********************/
@@ -302,13 +320,15 @@ void rbutilFrm::CreateGUIControls(void)
wxLogVerbose(wxT("=== end rbutilFrm::CreateGUIControls"));
}
-
void rbutilFrm::OnManualUpdate(wxUpdateUIEvent& event)
{
wxString tmp = gv->curplat;
if(tmp == wxT("h120")) tmp = wxT("h100"); //h120 has the h100 manual
-
+ if(tmp == wxT("fmrecorder8mb")) tmp = wxT("fmrecorder");
+ if(tmp == wxT("ipodmini1g")) tmp = wxT("ipodmini2g");
+ if(tmp == wxT("recorder8mb")) tmp = wxT("recorderg");
+
if( tmp == curManualDevice)
return;
@@ -813,6 +833,64 @@ void rbutilFrm::OnFontBtn(wxCommandEvent& event)
wxLogVerbose(wxT("=== end rbutilFrm::OnFontBtn"));
}
+void rbutilFrm::OnDoomBtn(wxCommandEvent& event)
+{
+ wxString src, dest, buf;
+ wxLogVerbose(wxT("=== begin rbutilFrm::OnDoomBtn(event)"));
+
+ // font install dialog, reused
+ fontInstallDlg dialog(NULL, wxID_ANY,
+ wxT("Freedoom wad file Installation"));
+ if (dialog.ShowModal() != wxID_OK)
+ return;
+
+ // really install ?
+ wxMessageDialog msg(this,wxT("Do you really want to install the Freedoom wads ?"),wxT("Freedoom installation"),wxOK|wxCANCEL);
+ if(msg.ShowModal() != wxID_OK )
+ return;
+
+ buf.Printf(wxT("%s" PATH_SEP ".rockbox"), gv->curdestdir.c_str()) ;
+ if (! wxDirExists(buf) )
+ {
+ buf.Printf(wxT("Rockbox is not yet installed on %s - install "
+ "Rockbox first."), buf.c_str() );
+ WARN_DIALOG(buf, wxT("Can't install freedoom wads") );
+ return;
+ }
+
+ src = gv->doom_url;
+
+ dest.Printf(wxT("%s" PATH_SEP "download" PATH_SEP
+ "rockdoom.zip"), gv->stdpaths->GetUserDataDir().c_str());
+
+ if ( ! wxFileExists(dest) )
+ {
+ if ( DownloadURL(src, dest) )
+ {
+ wxRemoveFile(dest);
+ buf.Printf(wxT("Unable to download %s"), src.c_str() );
+ ERR_DIALOG(buf, wxT("Freedoom Install"));
+ return;
+ }
+ }
+
+ if ( !UnzipFile(dest, gv->curdestdir, true) )
+ {
+ wxMessageDialog* msg = new wxMessageDialog(this, wxT("The Freedoom wads have been installed on your device.")
+ ,wxT("Installation"), wxOK |wxICON_INFORMATION);
+ msg->ShowModal();
+ delete msg;
+ } else
+ {
+ wxRemoveFile(dest);
+ buf.Printf(wxT("Unable to unzip %s"), dest.c_str() );
+ ERR_DIALOG(buf, wxT("Freedoom Install"));
+ }
+
+
+ wxLogVerbose(wxT("=== end rbutilFrm::OnDoomBtn"));
+}
+
void rbutilFrm::OnThemesBtn(wxCommandEvent& event)
{
diff --git a/rbutil/rbutilFrm.h b/rbutil/rbutilFrm.h
index 2f31df8867..4d5d4017a1 100644
--- a/rbutil/rbutilFrm.h
+++ b/rbutil/rbutilFrm.h
@@ -91,15 +91,16 @@ public:
ID_WXSTATICTEXT2 = 1029,
ID_INSTALL_BTN = 1028,
ID_WXSTATICBITMAP1 = 1053,
- ID_FONT_BTN = 1128,
- ID_THEMES_BTN = 1139,
- ID_BOOTLOADER_BTN = 1129,
+ ID_FONT_BTN = 1128,
+ ID_THEMES_BTN = 1139,
+ ID_DOOM_BTN = 1140,
+ ID_BOOTLOADER_BTN = 1129,
ID_WXPANEL1 = 1064,
- ID_MANUAL = 1065,
- ID_FILE_PROXY = 1066,
+ ID_MANUAL = 1065,
+ ID_FILE_PROXY = 1066,
- ID_DUMMY_VALUE_
+ ID_DUMMY_VALUE_
}; //End of Enum
public:
void rbutilFrmClose(wxCloseEvent& event);
@@ -115,9 +116,9 @@ public:
void OnBootloaderBtn(wxCommandEvent& event);
void OnPortableInstall(wxCommandEvent& event);
void OnBootloaderRemoveBtn(wxCommandEvent& event);
-
- void OnManualUpdate(wxUpdateUIEvent& event);
- void OnFileProxy(wxCommandEvent& event);
+ void OnManualUpdate(wxUpdateUIEvent& event);
+ void OnFileProxy(wxCommandEvent& event);
+ void OnDoomBtn(wxCommandEvent& event);
};