Try to fix frametime issues with TW.

Use eukara's icon in x11, matching the windows icon.
Use the extra main-menu options even when there's no menufont available.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5255 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
Spoike 2018-05-28 10:12:10 +00:00
parent 5e937bcf48
commit 60c8797d25
20 changed files with 695 additions and 72 deletions

View File

@ -5581,7 +5581,6 @@ double Host_Frame (double time)
#endif
cls.framecount++;
cl.lasttime = cl.time;
RSpeedRemark();
@ -5727,6 +5726,7 @@ double Host_Frame (double time)
TP_UpdateAutoStatus();
host_framecount++;
cl.lasttime = cl.time;
return 0;
}

View File

@ -0,0 +1,597 @@
/* GIMP RGBA C-Source image dump (fte_eukaranopng.h) */
static const struct {
unsigned int width;
unsigned int height;
unsigned int bytes_per_pixel; /* 2:RGB16, 3:RGB, 4:RGBA */
unsigned char pixel_data[64 * 64 * 4 + 1];
} icon = {
64, 64, 4,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\246\246\246\026rrrSeee\205"
"\\\\\\\257VVV\315QQQ\350OOO\370LLL\377LLL\377OOO\370QQQ\350VVV\315\\\\\\"
"\257eee\205rrrS\246\246\246\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000|||\001\000\000\000\000\000\000\000\000|||\062eee\215WWW\364BBB\377\062\062\062\377$$$\377"
"\031\031\031\377\022\022\022\377\016\016\016\377\012\012\012\377\011\011\011\377\011\011\011"
"\377\012\012\012\377\015\015\015\377\022\022\022\377\031\031\031\377$$$\377\062\062\062"
"\377BBB\377WWW\364eee\215|||\062\000\000\000\000\000\000\000\000|||\001\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000jjj\003\000\000\000\000\306\306\306\011jjjsVVV\365"
"===\377$$$\377\021\021\021\377\006\006\006\377\002\002\002\377\001\001\001\377\001\001\001\377\003\003\003"
"\377\005\005\005\377\005\005\005\377\006\006\006\377\006\006\006\377\005\005\005\377\005\005\005\377\003\003\003\377"
"\001\001\001\377\001\001\001\377\002\002\002\377\006\006\006\377\021\021\021\377$$$\377===\377VVV\365"
"jjjs\306\306\306\011\000\000\000\000jjj\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ppp\003\000\000\000\000\377"
"\377\377\002jjj\222LLL\377---\377\022\022\022\377\005\005\005\377\001\001\001\377\003\003\003\377"
"\007\007\007\377\017\017\017\377\026\026\026\377\034\034\034\377\040\040\040\377%%%\377((("
"\377***\377***\377(((\377&&&\377!!!\377\034\034\034\377\026\026\026\377\016\016\016"
"\377\007\007\007\377\003\003\003\377\001\001\001\377\005\005\005\377\022\022\022\377---\377LLL\377j"
"jj\222\377\377\377\002\000\000\000\000ppp\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000uuubQQQ\377***\377\014\014"
"\014\373\003\003\003\377\002\002\002\377\007\007\007\377\020\020\020\377\032\032\032\377(((\377\071"
"\071\071\377GFF\377YYY\377fff\377mmm\377rrr\377qqq\377ppp\377ooo\377hhh\377"
"```\377UUU\377EEE\377\070\070\070\377***\377\034\034\034\377\020\020\020\377\007\007\007"
"\377\002\002\002\377\003\003\003\377\014\014\014\373***\377QQQ\377uuub\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ooo\001\000\000\000\000\341\341\341\013"
"^^^\325\066\066\066\377\020\020\020\374\002\002\002\377\003\003\003\377\012\012\012\377\026\026"
"\026\377'''\377===\377aaa\377www\377\177\177\177\377\202\202\202\377~~~\377"
"{{{\377yyy\377xxx\377www\377uuu\377ttt\377rrr\377qqq\377qqq\377rrr\377mm"
"m\377fgf\377VVV\377<<<\377)))\377\030\030\030\377\012\012\012\377\003\003\003\377\002\002"
"\002\377\020\020\020\374\066\066\066\377^^^\325\341\341\341\013\000\000\000\000ooo\001\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000xxxVNNN\377\036\036\036\377\006\006\006\377\001\001"
"\001\377\011\011\011\377\032\032\032\377...\377QQQ\377xxx\377\207\210\210\377\203"
"\203\203\377\200\200\200\377\202\202\202\377\205\205\205\377\206\207\206"
"\377\210\210\210\377\211\211\211\377\212\212\211\377\211\212\211\377\210"
"\207\207\377\205\205\205\377\201\201\201\377}}}\377yyy\377ttt\377ppp\377"
"lll\377kkk\377lll\377aaa\377JJJ\377\060\060\060\377\033\033\033\377\011\011\011\377"
"\001\001\001\377\006\006\006\377\036\036\036\377NNN\377xxxV\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000ggg\233>>>\377\021\021\021\377\002\002\002\377\005\005\005\377\025\025\025\377"
"***\377UTU\377\201\201\201\377\212\212\212\377\205\205\205\377\207\207\207"
"\377\214\214\214\377\222\223\223\377\230\230\230\377\235\235\234\377\240"
"\240\240\377\242\242\242\377\243\243\242\377\242\242\242\377\241\241\241"
"\377\237\237\237\377\233\233\233\377\230\230\230\377\223\223\223\377\216"
"\216\216\377\210\210\210\377\200\200\200\377zyy\377rrr\377lll\377hhh\377"
"hhh\377ccd\377KKK\377---\377\025\025\025\377\005\005\005\377\002\002\002\377\021\021\021\377"
">>>\377ggg\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000bbb\277\061\061\061\377\012\012\012\377\001"
"\001\001\377\012\012\012\377\040\040\040\377@@@\377}}}\377\216\216\216\377\211\211"
"\211\377\215\214\215\377\224\225\224\377\235\235\235\377\246\246\246\377"
"\255\255\255\377\261\261\261\377\264\264\264\377\265\265\265\377\266\266"
"\265\377\265\265\265\377\264\264\264\377\263\262\263\377\260\260\260\377"
"\255\255\256\377\251\251\251\377\244\244\244\377\240\240\240\377\233\233"
"\233\377\225\225\225\377\215\215\215\377\205\205\205\377|||\377rrr\377kk"
"k\377fee\377fff\377___\377???\377!!!\377\012\012\012\377\001\001\001\377\012\012\012"
"\377\061\061\061\377bbb\277\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000bbb\315+++\377\005\005\005\376\001\001\001\377\020\020"
"\020\377'''\377]\\]\377\222\222\222\377\214\214\214\377\217\217\217\377\231"
"\231\231\377\244\244\244\377\257\257\257\377\270\270\270\377\275\275\275"
"\377\301\301\301\377\302\302\302\377\302\302\302\377\301\301\301\377\276"
"\276\277\377\275\275\275\377\273\273\273\377\270\271\270\377\266\265\266"
"\377\262\263\262\377\261\260\260\377\255\255\254\377\252\252\252\377\246"
"\245\246\377\241\242\242\377\234\235\234\377\225\226\226\377\216\216\216"
"\377\204\204\203\377yyz\377ppp\377hhh\377ccc\377ddd\377OOO\377+++\377\020"
"\020\020\377\001\001\001\377\005\005\005\376+++\377bbb\315\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000bbb\277+++\377\004\004\004\376\003\003\003\377\024"
"\024\024\377...\377vvv\377\225\225\225\377\216\216\216\377\230\230\230\377"
"\245\245\245\377\263\263\263\377\275\275\275\377\305\305\305\377\311\311"
"\311\377\312\312\312\377\311\312\311\377\310\310\310\377\307\306\306\377"
"\305\306\306\377\303\303\304\377\301\301\301\377\277\277\277\377\274\274"
"\274\377\271\271\271\377\267\266\267\377\265\264\264\377\260\260\260\377"
"\256\256\256\377\251\252\252\377\246\246\246\377\242\242\242\377\236\236"
"\236\377\231\231\231\377\222\222\222\377\212\212\212\377\200\200\200\377"
"ttu\377jjj\377abb\377bbb\377XXX\377\062\062\062\377\024\024\024\377\003\003\003\377\004"
"\004\004\376+++\377bbb\277\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ooo\001\000\000\000\000ggg\233"
"\061\061\061\377\005\005\005\376\003\003\003\377\030\030\030\377\062\062\062\377\202\202\202\377"
"\223\223\223\377\222\222\222\377\237\237\237\377\257\257\260\377\276\276"
"\276\377\310\310\310\377\316\316\316\377\320\320\320\377\320\320\320\377"
"\316\316\316\377\316\316\316\377\314\314\315\377\311\311\311\377\307\307"
"\307\377\304\304\303\377\301\301\301\377\277\276\277\377\274\274\274\377"
"\271\271\271\377\266\267\266\377\264\264\264\377\261\261\261\377\257\257"
"\257\377\254\254\254\377\252\252\251\377\246\246\246\377\241\242\241\377"
"\235\235\235\377\232\231\231\377\224\224\224\377\214\215\214\377\203\203"
"\203\377wxw\377kkk\377bcb\377___\377[[[\377\066\066\066\377\027\027\027\377\003\003"
"\003\377\005\005\005\376\061\061\061\377ggg\233\000\000\000\000ooo\001\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000xxxV>>>\377"
"\012\012\012\377\002\002\002\377\024\024\024\377\063\063\063\377\203\203\203\377\217\217"
"\217\377\224\224\224\377\243\243\243\377\265\265\265\377\306\305\305\377"
"\316\316\316\377\324\324\324\377\324\324\324\377\323\324\324\377\324\324"
"\324\377\321\321\321\377\317\317\317\377\314\313\313\377\311\311\311\377"
"\306\306\306\377\303\303\303\377\301\301\301\377\276\276\276\377\273\273"
"\273\377\270\270\270\377\266\266\266\377\263\263\263\377\260\260\260\377"
"\256\256\256\377\253\253\253\377\251\251\251\377\246\246\246\377\244\244"
"\244\377\241\241\241\377\233\234\233\377\230\227\230\377\223\224\224\377"
"\215\215\215\377\204\204\204\377xxx\377kkk\377aaa\377\\\\\\\377YYY\377\066"
"\066\066\377\024\024\024\377\002\002\002\377\012\012\012\377>>>\377yyyV\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\341\341\341\013NNN\377\021\021\021\377\001\001\001\377\020\020\020\377...\377\201\201"
"\201\377\216\216\216\377\224\224\224\377\245\245\245\377\271\271\271\377"
"\311\311\311\377\324\323\323\377\326\326\327\377\327\327\327\377\327\327"
"\330\377\326\326\325\377\323\322\323\377\317\317\317\377\314\314\314\377"
"\310\311\310\377\306\306\306\377\303\303\303\377\300\300\300\377\275\275"
"\275\377\272\272\272\377\267\267\267\377\264\264\264\377\262\262\262\377"
"\260\260\260\377\255\255\255\377\253\253\253\377\250\251\250\377\247\247"
"\247\377\244\244\244\377\242\242\242\377\237\237\240\377\235\235\235\377"
"\233\233\233\377\225\225\226\377\222\222\222\377\214\214\214\377\203\203"
"\204\377xxx\377jkk\377```\377ZZZ\377XXX\377\063\062\063\377\017\017\017\377\001\001"
"\001\377\021\021\021\377MMM\377\342\342\342\013\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ppp\003\000\000\000\000^^^\325\036\036\036\377\002\002\002\377"
"\012\012\012\377'''\377ttt\377\217\217\217\377\222\222\222\377\244\244\244\377"
"\272\272\272\377\313\313\314\377\326\326\325\377\330\330\330\377\331\331"
"\331\377\330\330\330\377\325\324\324\377\321\322\322\377\315\315\315\377"
"\311\311\311\377\305\304\304\377\277\300\277\377\274\274\274\377\267\267"
"\267\377\263\263\263\377\260\260\257\377\254\254\254\377\252\252\252\377"
"\247\247\247\377\245\245\245\377\243\243\243\377\241\241\242\377\241\241"
"\241\377\240\240\240\377\237\237\237\377\235\236\236\377\235\235\235\377"
"\234\234\234\377\231\232\232\377\231\231\231\377\227\227\227\377\224\224"
"\224\377\217\217\217\377\212\212\212\377\201\201\202\377vvv\377iii\377^^"
"^\377[[[\377STS\377+++\377\012\012\012\377\002\002\002\377\036\036\036\377^^^\325\000\000"
"\000\000ppp\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000uuub\066"
"\066\066\377\006\006\006\377\005\005\005\377\040\040\040\377[[[\377\220\220\220\377\217\217"
"\217\377\240\240\240\377\270\270\270\377\312\312\312\377\326\325\326\377"
"\327\327\327\377\330\330\330\377\325\325\326\377\320\317\320\377\312\312"
"\312\377\304\304\304\377\274\274\274\377\264\264\264\377\254\254\254\377"
"\246\245\246\377\240\240\237\377\231\231\231\377\226\226\226\377\222\222"
"\222\377\217\217\217\377\214\215\215\377\212\213\212\377\211\211\211\377"
"\207\210\210\377\207\207\206\377\206\207\207\377\207\207\206\377\211\211"
"\211\377\212\212\212\377\214\214\214\377\216\216\216\377\217\217\217\377"
"\221\221\221\377\220\221\220\377\221\221\222\377\216\216\216\377\212\212"
"\212\377\207\207\207\377\177\177\177\377stt\377fee\377\\\\\\\377ZYZ\377L"
"KL\377\"\"\"\377\005\005\005\377\006\006\006\377\066\066\066\377uuub\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000jjj\003\377\377\377\002QQQ\377\020\020\020\374\002\002\002"
"\377\025\025\025\377@@@\377\216\216\216\377\212\213\212\377\233\234\233\377"
"\262\262\262\377\305\305\305\377\321\321\321\377\323\323\323\377\322\323"
"\323\377\315\315\315\377\304\303\304\377\271\271\271\377\256\256\256\377"
"\242\242\242\377\234\234\234\377\233\233\233\377\222\222\222\377\200\200"
"\200\377sss\377ggg\377]]^\377XXX\377TTT\377SSS\377RRR\377RRR\377SSS\377V"
"VV\377\\\\\\\377bbb\377jjj\377sss\377{zz\377vww\377www\377{{{\377\200\177"
"\177\377\205\204\204\377\207\207\207\377\210\210\210\377\205\205\205\377"
"\202\202\202\377zz{\377ooo\377ccb\377YYY\377YYY\377>>>\377\025\025\025\377\002"
"\002\002\377\020\020\020\374QQQ\377\377\377\377\002jjj\003\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000jjj\222***\377\003\003\003\377\011\011\011\377***\377zzz\377\211\211"
"\211\377\224\224\224\377\253\253\253\377\276\276\276\377\313\313\313\377"
"\315\315\315\377\310\310\310\377\276\276\276\377\255\255\255\377\241\241"
"\241\377\240\240\240\377\212\212\212\377sss\377TTT\377\061\061\061\377\036\036"
"\036\377\031\031\031\377\023\023\023\377\017\017\017\377\015\015\015\377\014\014\014\377"
"\014\014\014\377\014\014\014\377\014\014\014\377\014\014\014\377\015\015\015\377\016\016\016"
"\377\020\020\020\377\023\023\023\377\030\030\030\377\035\035\035\377'''\377???\377SS"
"S\377aaa\377mmm\377ooo\377ppp\377xyx\377}}}\377~~~\377}}}\377uuu\377jjj\377"
"^^^\377WWW\377UTU\377...\377\011\011\011\377\003\003\003\377***\377jjj\222\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000|||\001\306\306\306\011KKK\377\014\014\014\373\003\003\003\377"
"\031\031\031\377SSS\377\212\212\212\377\212\212\213\377\237\237\237\377\266"
"\266\265\377\301\301\301\377\302\302\302\377\267\267\267\377\246\246\246"
"\377\242\242\241\377\213\213\213\377ddd\377...\377\034\034\034\377\017\017\017"
"\377\012\012\012\377\011\011\011\377\010\010\010\377\007\007\007\377\011\011\011\377\013\013"
"\013\377\012\012\012\377\006\006\006\377\002\002\002\377\001\001\001\377\001\001\001\377\002\002\002\377\006"
"\006\006\377\012\012\012\377\013\013\013\377\012\012\012\377\011\011\011\377\010\010\010\377"
"\011\011\011\377\013\013\013\377\017\017\017\377\031\031\031\377$$$\377???\377ZZZ\377"
"ggg\377iii\377nnn\377vuu\377uuu\377ooo\377ccc\377XXX\377VVV\377GGG\377\033"
"\033\033\377\003\003\003\377\014\014\014\373KKK\377\306\306\306\011|||\001\000\000\000\000\000\000"
"\000\000\000\000\000\000jjjs---\377\004\004\004\377\012\012\012\377...\377~~~\377\204\204\205"
"\377\223\223\223\377\250\250\250\377\265\265\265\377\263\264\264\377\242"
"\243\243\377\235\235\235\377\202\202\202\377>>>\377\032\032\032\377\013\013\013"
"\377\012\012\012\377\007\007\007\377\006\006\006\377\012\012\012\377\016\016\016\377\017\017\017"
"\377\025\025\025\377%%%\377///\377\061\061\061\377\036\036\036\377\006\006\006\377\000\000\000"
"\377\000\000\000\377\004\004\004\377\027\027\027\377///\377///\377)))\377\036\036\036\377\022"
"\022\022\377\017\017\017\377\015\015\015\377\011\011\011\377\007\007\007\377\011\011\011\377"
"\014\014\014\377\025\025\025\377)))\377MMM\377``a\377bab\377jjj\377lll\377fff\377"
"\\\\\\\377TTT\377TTT\377\061\061\061\377\012\012\012\377\004\004\004\377---\377jjjs\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000VVV\365\022\022\022\377\002\002\002\377\027\027\027\377"
"PPP\377\205\205\205\377\206\206\206\377\231\231\231\377\250\250\250\377\245"
"\244\244\377\236\236\236\377\212\213\212\377???\377\025\025\025\377\017\017\017"
"\377\010\010\010\377\005\005\005\377\010\010\010\377\012\012\012\377\023\023\023\377%%%\377"
"AAA\377eee\377zzz\377}}}\377yyy\377ooo\377EEE\377\013\013\013\377\001\001\001\377"
"\000\000\000\377\011\011\011\377\063\063\063\377ddd\377kkk\377mnn\377kjk\377ccc\377M"
"MM\377\061\061\061\377!!!\377\021\021\021\377\014\014\014\377\007\007\007\377\006\006\006\377"
"\013\013\013\377\023\023\023\377(((\377NNN\377^^^\377```\377ccc\377^^^\377UVU\377"
"RRR\377FFF\377\030\030\030\377\002\002\002\377\022\022\022\377VVV\365\000\000\000\000\000\000\000\000"
"\000\000\000\000|||\062<<<\377\005\005\005\377\007\007\007\377(((\377sss\377\177\177\177\377\213"
"\213\213\377\230\231\231\377\227\227\227\377\224\224\224\377ZZZ\377\032\032"
"\032\377\017\017\017\377\006\006\006\377\004\004\004\377\011\011\011\377\017\017\017\377\"\"\""
"\377MMM\377www\377\211\211\211\377\223\223\223\377\222\222\222\377\226\227"
"\226\377\231\231\231\377\220\221\220\377~~}\377JJJ\377\017\017\017\377\001\001\001"
"\377\000\000\000\377\013\013\013\377\070\070\070\377ppp\377\177\177\177\377\206\206\206"
"\377\202\202\202\377zz{\377uuu\377rrr\377fff\377WXX\377:\071:\377\036\036\036"
"\377\017\017\017\377\010\010\010\377\005\005\005\377\013\013\013\377\026\026\026\377\063\063"
"\063\377WWW\377WWW\377[[[\377VVV\377QQQ\377PPO\377+++\377\007\007\007\377\005\005\005"
"\377<<<\377|||\062\000\000\000\000\000\000\000\000eee\215%%%\377\001\001\001\377\020\020\020\377=="
"=\377\202\202\202\377~~~\377\211\211\211\377\212\212\212\377\211\211\211"
"\377\066\066\066\377\023\023\023\377\010\010\010\377\003\003\003\377\007\007\007\377\020\020\020"
"\377'''\377ggg\377\212\212\212\377\224\223\224\377\230\230\230\377\244\244"
"\244\377\253\253\253\377\260\261\260\377\262\262\262\377\257\257\257\377"
"\242\242\242\377\212\213\213\377LLL\377\017\017\017\377\001\001\001\377\001\001\001\377"
"\013\013\013\377:::\377zzz\377\215\215\215\377\230\230\230\377\230\230\230\377"
"\224\223\223\377\215\215\215\377\206\206\206\377{{{\377ppp\377kkk\377```"
"\377HHH\377\040\040\040\377\017\017\017\377\006\006\006\377\005\005\005\377\020\020\020\377\""
"\"\"\377NNN\377RRR\377SSS\377PPP\377PPP\377<<<\377\020\020\020\377\001\001\001\377"
"%%%\377eee\215\000\000\000\000\000\000\000\000WWW\364\021\021\021\377\003\003\003\377\033\033\033\377"
"^^^\377|||\377|||\377\177\177\177\377\200\200\200\377***\377\016\016\016\377"
"\005\005\005\377\004\004\004\377\015\015\015\377\034\034\034\377aaa\377\220\220\220\377\224"
"\224\224\377\243\243\243\377\256\256\256\377\265\265\265\377\271\271\271"
"\377\273\273\273\377\273\273\273\377\272\272\272\377\265\265\266\377\246"
"\247\247\377\215\215\215\377MMM\377\017\017\017\377\001\001\001\377\001\001\001\377\013\013"
"\013\377:::\377}||\377\221\221\221\377\235\235\235\377\236\236\236\377\234"
"\234\234\377\230\230\231\377\223\223\224\377\216\216\216\377\207\210\207"
"\377\177~~\377rrr\377fgf\377___\377???\377\030\030\030\377\011\011\011\377\004\004"
"\004\377\012\012\012\377\036\036\036\377KKK\377KKK\377MMM\377MMM\377III\377\036\036"
"\036\377\003\003\003\377\021\021\021\377WWW\364\000\000\000\000\245\245\245\026CCC\377\006\006\006"
"\377\007\007\007\377'''\377rrr\377uuu\377vvv\377|||\377\062\062\062\377\015\015\015\377"
"\003\003\003\377\005\005\005\377\017\017\017\377\066\066\066\377\205\205\205\377\222\222\222"
"\377\242\242\242\377\261\261\261\377\271\271\271\377\275\274\275\377\276"
"\277\276\377\277\277\277\377\276\276\276\377\274\275\275\377\273\273\273"
"\377\265\265\265\377\246\246\246\377\215\215\215\377LLL\377\017\017\017\377"
"\001\001\001\377\001\001\001\377\013\013\013\377:\071:\377|||\377\220\221\220\377\236\236"
"\236\377\237\237\236\377\235\234\235\377\232\233\232\377\227\227\227\377"
"\224\224\224\377\220\220\220\377\213\213\213\377\205\205\205\377{{{\377l"
"lm\377aaa\377RRR\377\"\"\"\377\014\014\014\377\004\004\004\377\012\012\012\377###\377"
"JJJ\377GGG\377IIJ\377MMM\377+++\377\007\007\007\377\006\006\006\377CCC\377\245\245\245"
"\026rrrS\062\062\062\377\002\002\002\377\016\016\016\377\070\070\070\377www\377qqq\377pp"
"p\377PPP\377\021\021\021\377\004\004\004\377\005\005\005\377\020\020\020\377III\377\216\216"
"\215\377\230\227\227\377\254\254\254\377\267\267\270\377\275\275\275\377"
"\277\277\300\377\300\300\300\377\300\277\300\377\276\276\276\377\274\274"
"\274\377\273\273\273\377\271\271\271\377\263\263\263\377\244\244\244\377"
"\213\213\213\377LLL\377\017\017\017\377\001\001\001\377\001\001\001\377\013\013\013\377\071"
"\071\071\377zzz\377\220\220\220\377\233\233\233\377\235\235\235\377\234\234"
"\234\377\231\231\232\377\227\227\227\377\225\225\225\377\221\221\221\377"
"\216\216\216\377\213\214\213\377\205\205\205\377~~~\377qqq\377___\377XXX"
"\377&&&\377\015\015\015\377\003\003\003\377\017\017\017\377\064\064\064\377EEE\377FFF\377"
"LLL\377\067\067\067\377\016\016\016\377\002\002\002\377\062\062\062\377rrrSeee\205$$$\377"
"\001\001\001\377\026\026\026\377EEE\377xwx\377kkk\377ooo\377\036\036\036\377\010\010\010"
"\377\004\004\004\377\022\022\022\377HHH\377\215\215\215\377\232\232\232\377\260\260"
"\260\377\272\272\272\377\276\276\276\377\277\277\300\377\277\277\277\377"
"\277\277\277\377\275\275\275\377\274\274\274\377\273\273\273\377\271\271"
"\271\377\266\266\266\377\261\261\261\377\242\242\242\377\211\211\212\377"
"LLK\377\017\017\017\377\001\001\001\377\001\001\001\377\013\013\013\377\071\071\071\377yyy\377"
"\216\216\216\377\232\231\232\377\233\234\233\377\232\233\233\377\230\230"
"\230\377\226\226\226\377\224\223\224\377\221\221\221\377\217\217\217\377"
"\214\214\214\377\210\210\210\377\204\204\204\377}||\377qqq\377]]]\377SSS"
"\377\"\"\"\377\011\011\011\377\006\006\006\377\034\034\034\377BBB\377CBC\377III\377@"
"@@\377\025\025\025\377\001\001\001\377$$$\377eee\205\\\\\\\257\031\031\031\377\001\001\001"
"\377\033\033\033\377VVV\377qqq\377iii\377STS\377\024\024\024\377\004\004\004\377\015\015"
"\015\377\063\062\063\377\210\210\210\377\226\226\226\377\257\257\257\377\272"
"\272\272\377\275\275\275\377\277\276\276\377\276\276\276\377\275\275\275"
"\377\274\274\274\377\274\273\273\377\272\272\272\377\270\270\270\377\266"
"\266\266\377\265\265\265\377\257\257\257\377\240\240\240\377\210\210\210"
"\377KJK\377\016\016\016\377\001\001\001\377\001\001\001\377\013\013\013\377\071\071\071\377xx"
"x\377\215\214\214\377\230\230\230\377\233\232\232\377\232\231\231\377\226"
"\226\226\377\225\225\225\377\222\222\222\377\220\217\217\377\215\216\215"
"\377\213\213\213\377\211\211\211\377\205\205\205\377\201\201\201\377zzz\377"
"mmm\377WWW\377III\377\024\024\024\377\005\005\005\377\021\021\021\377\071\071\071\377AA"
"A\377FFF\377FFF\377\034\034\034\377\001\001\001\377\031\031\031\377\\\\\\\257VVV\315"
"\022\022\022\377\003\003\003\377\040\040\040\377aaa\377nmm\377hhh\377FFF\377\016\016\016"
"\377\005\005\005\377\022\022\022\377rqr\377\211\211\210\377\247\247\247\377\266\266"
"\266\377\273\273\273\377\274\274\274\377\274\274\274\377\274\274\274\377"
"\273\273\273\377\272\272\272\377\271\271\270\377\267\267\267\377\266\266"
"\266\377\265\265\265\377\263\263\263\377\255\255\255\377\236\236\236\377"
"\207\207\207\377HHH\377\016\016\016\377\001\001\001\377\001\001\001\377\013\013\013\377\070"
"\070\070\377vvv\377\212\213\212\377\227\227\227\377\231\231\231\377\227\227"
"\227\377\226\226\226\377\223\223\223\377\220\221\220\377\216\217\217\377"
"\214\214\214\377\211\211\211\377\210\210\210\377\204\205\205\377\202\201"
"\202\377}}}\377sts\377bbb\377RRR\377(((\377\010\010\010\377\014\014\014\377\063"
"\064\063\377@@@\377EEE\377HHH\377\"\"\"\377\003\003\003\377\022\022\022\377VVV\315Q"
"QQ\350\016\016\016\377\004\004\004\377$$$\377hhh\377kkk\377hgh\377BBB\377\015\015\015"
"\377\010\010\010\377...\377~~~\377\227\227\227\377\257\257\257\377\270\270\270"
"\377\273\273\273\377\273\273\273\377\272\272\273\377\271\271\271\377\270"
"\270\270\377\267\267\267\377\266\266\266\377\266\266\266\377\264\264\264"
"\377\262\263\263\377\260\260\260\377\253\253\253\377\235\235\235\377\205"
"\205\205\377GGG\377\016\016\016\377\001\001\001\377\001\001\001\377\013\013\013\377\070\070\070"
"\377uuu\377\211\211\211\377\226\226\226\377\227\227\227\377\226\226\226\377"
"\224\224\224\377\222\221\222\377\217\217\217\377\215\215\215\377\212\212"
"\212\377\211\211\211\377\206\206\206\377\204\203\204\377\202\202\202\377"
"~~~\377www\377jii\377UUU\377\070\070\070\377\015\015\015\377\014\014\014\377\062\062"
"\062\377@@@\377DDD\377III\377'''\377\004\004\004\377\016\016\016\377QQQ\350OOO\370"
"\012\012\012\377\005\005\005\377(((\377mmm\377kkk\377jjj\377JJJ\377\017\017\017\377\013"
"\013\013\377;;;\377\202\202\202\377\235\235\235\377\261\261\261\377\267\267"
"\267\377\270\270\270\377\267\270\270\377\267\267\267\377\267\266\266\377"
"\266\266\266\377\265\265\265\377\264\264\265\377\263\263\263\377\261\261"
"\261\377\260\257\260\377\256\256\256\377\251\251\251\377\232\232\233\377"
"\204\204\204\377GGG\377\016\016\016\377\001\001\001\377\001\001\001\377\013\013\013\377\067"
"\067\067\377tts\377\210\210\210\377\224\224\224\377\225\225\225\377\225\225"
"\225\377\222\222\222\377\220\220\220\377\216\216\216\377\213\213\213\377"
"\211\211\211\377\210\207\207\377\205\205\205\377\203\203\203\377\200\200"
"\200\377}}}\377xxx\377kkk\377VVV\377@@@\377\020\020\020\377\017\017\017\377\066"
"\065\066\377AAA\377EEE\377III\377,,,\377\005\005\005\377\012\012\012\377OOO\370LLL\377"
"\011\011\011\377\006\006\006\377***\377lll\377lll\377lll\377___\377\027\027\027\377\015"
"\015\015\377\070\070\070\377\200\201\201\377\232\232\232\377\256\256\256\377\264"
"\264\264\377\266\266\266\377\266\266\266\377\265\265\265\377\264\264\264"
"\377\263\263\263\377\263\263\262\377\261\261\261\377\260\260\260\377\257"
"\257\257\377\256\256\256\377\254\254\254\377\247\247\247\377\231\231\231"
"\377\202\202\202\377HGG\377\016\016\016\377\001\001\001\377\001\001\001\377\013\013\013\377"
"\067\067\067\377rrr\377\206\206\206\377\222\222\222\377\225\225\224\377\223"
"\223\223\377\220\220\220\377\217\217\217\377\214\214\214\377\211\211\211"
"\377\211\210\211\377\206\206\206\377\203\203\203\377\201\201\201\377\177"
"\177\177\377{{{\377vvv\377jii\377VVV\377===\377\021\021\021\377\026\026\026\377"
">>>\377CCC\377FFF\377JJJ\377---\377\007\007\007\377\011\011\011\377LLL\377LLL\377"
"\011\011\011\377\006\006\006\377***\377lll\377mmm\377ppp\377uuu\377---\377\021\021\021"
"\377'''\377|||\377\217\217\217\377\247\247\247\377\260\257\260\377\263\263"
"\263\377\262\262\262\377\262\262\262\377\261\261\261\377\260\260\260\377"
"\260\260\260\377\257\257\257\377\256\256\256\377\255\255\255\377\253\253"
"\253\377\251\251\251\377\245\245\245\377\227\227\227\377\200\200\200\377"
"GGG\377\016\016\016\377\001\001\001\377\001\001\001\377\013\013\013\377\067\067\067\377qqq\377"
"\205\205\205\377\221\221\221\377\223\222\222\377\221\221\221\377\217\217"
"\217\377\215\215\215\377\212\212\212\377\210\210\210\377\207\207\207\377"
"\204\204\204\377\202\202\202\377\177\200\200\377}}}\377zzz\377rrr\377ddd"
"\377TST\377\062\062\062\377\023\023\023\377'''\377HHH\377FGF\377GGG\377III\377"
"...\377\006\006\006\377\011\011\011\377LLL\377OOO\370\012\012\012\377\005\005\005\377)))\377"
"jjj\377mnm\377uuu\377vvv\377ggg\377\032\032\032\377\026\026\026\377fff\377\202"
"\202\202\377\233\233\234\377\251\251\251\377\255\255\255\377\257\257\257"
"\377\260\257\257\377\257\257\257\377\256\256\256\377\255\255\255\377\254"
"\254\255\377\253\253\253\377\252\252\252\377\251\251\251\377\247\247\247"
"\377\242\242\242\377\224\225\225\377~~~\377HHH\377\017\017\017\377\001\001\001\377"
"\001\001\001\377\013\013\013\377\067\067\067\377ooo\377\203\204\203\377\216\216\217\377"
"\220\220\220\377\217\217\217\377\216\215\215\377\212\213\213\377\211\211"
"\211\377\207\210\210\377\205\205\205\377\203\203\203\377\200\201\200\377"
"~~~\377zz{\377vvu\377lkl\377ZZZ\377QQQ\377!!!\377\034\034\034\377CCC\377HHH"
"\377KKK\377HHH\377III\377,,,\377\005\005\005\377\012\012\012\377OOO\370QQQ\350\016"
"\016\016\377\004\004\004\377%%%\377eee\377mmm\377www\377\177\177\177\377~~~\377Q"
"QQ\377\035\035\035\377---\377\177\177\177\377\211\211\211\377\235\236\235\377"
"\247\247\247\377\252\252\252\377\254\254\254\377\254\254\254\377\253\253"
"\253\377\252\252\252\377\252\252\251\377\251\251\251\377\250\250\250\377"
"\246\247\246\377\245\244\244\377\240\240\240\377\223\223\223\377}}}\377H"
"HH\377\017\017\017\377\001\001\001\377\001\001\001\377\013\013\013\377\067\067\067\377oon\377"
"\201\201\201\377\214\215\214\377\217\216\217\377\216\216\216\377\213\213"
"\213\377\211\211\211\377\210\210\210\377\205\205\205\377\203\203\203\377"
"\201\201\202\377~~~\377{{{\377wwv\377nnn\377aba\377VVV\377\070\070\070\377\040"
"\040\040\377:::\377MMM\377OOP\377MMM\377HHH\377IHI\377()(\377\004\004\004\377\016"
"\016\016\377QQQ\350VVV\315\022\022\022\377\003\003\003\377!!!\377^^^\377mmm\377vvv\377"
"\205\205\205\377\205\205\205\377\202\202\202\377NNN\377\040\040\040\377AAA\377"
"\205\205\205\377\212\212\212\377\233\233\233\377\243\242\243\377\246\246"
"\246\377\250\250\250\377\251\251\251\377\251\250\250\377\247\250\247\377"
"\246\246\246\377\245\245\245\377\244\243\244\377\242\242\242\377\236\236"
"\236\377\221\221\220\377zzz\377GGG\377\020\020\020\377\001\001\001\377\001\001\001\377\013"
"\013\013\377\067\067\067\377mnm\377\200\200\200\377\213\213\213\377\215\215\215"
"\377\213\214\214\377\211\211\211\377\210\210\210\377\206\206\206\377\203"
"\204\203\377\201\202\201\377~~~\377{{{\377vvv\377ooo\377dcc\377YYY\377FF"
"F\377'''\377:::\377QQQ\377RRQ\377TTT\377MMM\377HHH\377HHH\377###\377\003\003"
"\003\377\022\022\022\377VVV\315\\\\\\\257\031\031\031\377\001\001\001\377\034\034\034\377"
"SSS\377mmm\377ttt\377\206\206\206\377\217\217\217\377\210\210\210\377\201"
"\201\201\377]]]\377&&&\377EEE\377\210\210\210\377\214\214\214\377\226\226"
"\226\377\236\236\236\377\242\243\242\377\244\244\244\377\244\244\244\377"
"\244\244\244\377\243\243\243\377\243\243\243\377\242\242\242\377\240\240"
"\240\377\233\233\233\377\216\216\216\377yyy\377FFF\377\017\017\017\377\001\001\001"
"\377\001\001\001\377\013\013\013\377\067\067\067\377kkk\377~~\177\377\212\212\211\377"
"\213\213\213\377\212\211\212\377\211\211\210\377\206\206\206\377\203\203"
"\203\377\201\201\201\377~~~\377zzz\377vvv\377ooo\377ddd\377```\377HHH\377"
",,,\377CCC\377SSR\377TTT\377YYY\377UUU\377MLL\377GGG\377EEE\377\035\035\035"
"\377\001\001\001\377\031\031\031\377\\\\\\\257eee\205$$$\377\001\001\001\377\026\026\026\377"
"EEE\377nnn\377qqq\377\201\201\201\377\221\221\221\377\225\225\225\377\213"
"\213\213\377\203\203\203\377www\377<;<\377\067\067\067\377|{|\377\215\215\215"
"\377\220\217\220\377\226\226\226\377\234\234\234\377\236\237\237\377\240"
"\237\237\377\241\241\241\377\240\240\240\377\240\237\237\377\235\235\235"
"\377\231\231\231\377\215\215\215\377www\377FFF\377\017\017\017\377\001\001\001\377"
"\001\001\001\377\013\013\013\377\066\066\066\377jjj\377}}}\377\207\207\210\377\211\211"
"\211\377\211\211\211\377\205\206\206\377\203\203\203\377\200\200\200\377"
"}}}\377yyy\377sss\377llk\377fff\377`_`\377???\377\067\067\067\377SSS\377VVV"
"\377XXX\377^^^\377\\[\\\377TST\377KKK\377GGG\377AAA\377\025\025\025\377\001\001"
"\001\377$$$\377eee\205rrrS\062\062\062\377\002\002\002\377\016\016\016\377\070\070\070\377"
"jjj\377mmm\377|}|\377\216\216\216\377\230\230\230\377\226\227\227\377\221"
"\221\221\377\206\206\206\377\210\210\210\377kkk\377\070\070\070\377SSS\377\205"
"\205\205\377\216\216\217\377\221\221\221\377\224\224\223\377\230\230\230"
"\377\233\233\233\377\234\234\234\377\234\234\234\377\233\233\233\377\227"
"\227\227\377\212\212\212\377uuu\377EEE\377\020\020\020\377\001\001\001\377\001\001\001\377"
"\013\013\013\377\066\066\066\377iii\377{{{\377\206\206\206\377\207\207\207\377"
"\206\206\206\377\202\202\202\377\200\177\200\377z{z\377uuu\377opp\377lll"
"\377gfg\377OOO\377;;;\377OOO\377\\\\\\\377ZZZ\377_^_\377a``\377aaa\377[Z"
"[\377RRR\377III\377HHH\377\070\070\070\377\016\016\016\377\002\002\002\377\062\062\062\377"
"rrrS\245\245\245\026CCC\377\006\006\006\377\007\007\007\377***\377ccc\377hhh\377uuu\377"
"\210\210\210\377\226\226\225\377\232\232\231\377\232\232\232\377\225\225"
"\225\377\215\215\215\377\207\207\207\377\212\211\211\377nnn\377JJJ\377TT"
"T\377zzz\377\217\217\217\377\222\222\222\377\225\225\225\377\230\231\231"
"\377\231\232\231\377\230\230\230\377\224\224\224\377\210\210\210\377tst\377"
"DDD\377\020\020\020\377\001\001\001\377\001\001\001\377\013\013\013\377\066\066\066\377ggg\377"
"yyy\377\204\204\204\377\205\205\204\377\203\203\203\377\200\200\200\377{"
"{{\377vuv\377ppp\377gfg\377PPP\377FFF\377TUU\377aaa\377^^^\377aaa\377ddc"
"\377eee\377ddd\377```\377YYY\377NNN\377GGG\377GGG\377---\377\007\007\007\377\006"
"\006\006\377CCC\377\245\245\245\026\000\000\000\000WWW\364\021\021\021\377\003\003\003\377\034\034"
"\034\377UUU\377hhg\377ooo\377\200\200\200\377\220\220\220\377\230\230\230"
"\377\231\231\231\377\232\232\232\377\226\226\227\377\222\222\222\377\215"
"\215\215\377\211\211\211\377\212\212\212\377\203\203\203\377eee\377ZZZ\377"
"eee\377\223\223\223\377\225\224\225\377\226\226\226\377\225\225\225\377\222"
"\223\223\377\206\206\206\377rrr\377DDD\377\020\020\020\377\001\001\001\377\001\001\001\377"
"\013\013\013\377\066\066\066\377fff\377xxx\377\201\201\201\377\203\203\203\377"
"\201\201\201\377~}~\377z{z\377^]^\377SSS\377TTT\377ccc\377ggg\377ddd\377"
"ddd\377fgg\377hgh\377ggg\377fef\377ccc\377^^^\377UUU\377KKK\377EFF\377FF"
"F\377\036\036\036\377\003\003\003\377\021\021\021\377WWW\364\000\000\000\000\000\000\000\000eee\215%"
"%%\377\001\001\001\377\020\020\020\377===\377hhh\377iii\377www\377\210\210\210\377"
"\224\224\224\377\230\230\230\377\232\232\232\377\232\231\231\377\230\230"
"\230\377\225\225\225\377\222\223\222\377\216\216\216\377\213\213\213\377"
"\214\214\214\377\214\214\214\377\215\215\215\377\220\220\220\377\223\223"
"\223\377\224\224\224\377\223\223\223\377\220\220\220\377\204\205\205\377"
"qqq\377DDD\377\020\020\020\377\001\001\001\377\001\001\001\377\014\014\014\377\066\066\067\377"
"ggg\377vvv\377\200\177\200\377\201\201\201\377\177\177\177\377|||\377www"
"\377sss\377ooo\377lll\377jjj\377jjj\377jjj\377kkk\377jkj\377iii\377hhh\377"
"ddd\377aaa\377ZZZ\377PPP\377HHH\377FFF\377===\377\020\020\020\377\001\001\001\377"
"%%%\377eee\215\000\000\000\000\000\000\000\000|||\062<<<\377\005\005\005\377\007\007\007\377***\377__"
"_\377eee\377noo\377\177\177\177\377\215\214\214\377\224\224\224\377\226\226"
"\226\377\230\230\230\377\227\227\227\377\226\225\226\377\225\225\225\377"
"\223\223\223\377\222\222\222\377\220\220\220\377\217\217\217\377\217\217"
"\217\377\221\221\221\377\222\222\222\377\222\222\222\377\221\221\221\377"
"\215\215\215\377\203\203\203\377ppp\377MMM\377\022\022\022\377\002\002\002\377\001\001"
"\001\377\017\017\017\377>>>\377ggg\377vwv\377\177~~\377\177\177\177\377~~~\377"
"z{z\377xyx\377tts\377qqq\377pqp\377ooo\377nnn\377nnn\377lll\377jjj\377ii"
"i\377fee\377ccc\377]]]\377UUU\377KKL\377FFF\377GGG\377,,,\377\007\007\007\377\005"
"\005\005\377<<<\377|||\062\000\000\000\000\000\000\000\000\000\000\000\000VVV\365\022\022\022\377\002\002\002\377"
"\030\030\030\377III\377eee\377hhg\377uuu\377\205\205\205\377\217\217\217\377"
"\222\222\222\377\225\226\226\377\226\226\226\377\226\226\226\377\225\225"
"\225\377\224\224\224\377\223\223\223\377\222\222\222\377\221\221\221\377"
"\220\220\220\377\220\220\220\377\220\220\220\377\220\220\220\377\217\217"
"\217\377\213\213\214\377\204\204\203\377ppp\377YYY\377\025\025\025\377\003\003\003"
"\377\002\002\002\377\023\023\023\377MMM\377fff\377www\377}}}\377}}}\377|||\377zzz"
"\377wwx\377uuu\377sss\377qqq\377oop\377noo\377mmm\377kkk\377iii\377ggg\377"
"cbb\377```\377ZYY\377PPP\377HHH\377EEE\377CCC\377\031\031\031\377\002\002\002\377"
"\022\022\022\377VVV\365\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000jjjs---\377\004\004\004\377"
"\012\012\012\377\061\061\061\377```\377bbb\377lll\377{{|\377\210\210\207\377\217"
"\217\216\377\220\220\220\377\223\223\223\377\223\223\223\377\223\222\222"
"\377\222\222\222\377\222\222\222\377\221\220\221\377\220\220\220\377\217"
"\217\217\377\217\217\217\377\217\217\217\377\216\216\216\377\215\215\215"
"\377\211\212\212\377\203\203\203\377qqq\377aaa\377\033\033\033\377\005\005\005\377"
"\004\004\004\377\027\027\027\377XXX\377fff\377vvw\377{{{\377|||\377zzz\377xxx\377"
"vvv\377uuu\377sss\377qqp\377poo\377nnn\377kll\377iij\377hhh\377ddd\377aa"
"a\377\\]\\\377TTT\377LKK\377FFF\377GGG\377\063\063\063\377\012\012\012\377\004\004"
"\004\377---\377jjjs\000\000\000\000\000\000\000\000\000\000\000\000|||\001\306\306\306\011KKK\377\014\014"
"\014\373\003\003\003\377\032\032\032\377KJJ\377bcb\377ddd\377ppp\377~~~\377\207\207"
"\207\377\214\214\214\377\216\216\216\377\220\220\220\377\217\220\220\377"
"\217\217\217\377\217\217\217\377\217\217\217\377\216\216\216\377\216\216"
"\216\377\215\215\215\377\214\214\214\377\213\213\213\377\212\212\212\377"
"\210\210\210\377\203\202\203\377sts\377```\377***\377\007\007\007\377\006\006\006\377"
"\"\"\"\377[\\\\\377ihh\377vvv\377zzz\377zyy\377xxx\377vvv\377uuu\377sss\377"
"qpq\377opo\377mnm\377lkl\377jjj\377hhh\377ede\377a`a\377^^^\377WWW\377NN"
"N\377GGG\377DDD\377CCC\377\033\033\033\377\003\003\003\377\014\014\014\373KKK\377\306"
"\306\306\011|||\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000jjj\222***\377\003\003\003\377"
"\011\011\011\377---\377\\\\\\\377```\377ggg\377tst\377\177\177\177\377\207\207"
"\207\377\212\212\212\377\215\215\215\377\216\216\216\377\215\215\215\377"
"\215\214\215\377\214\214\214\377\214\213\214\377\213\213\213\377\212\212"
"\212\377\211\211\211\377\211\211\211\377\210\210\210\377\205\205\206\377"
"\201\201\201\377uuu\377```\377\066\066\066\377\013\013\013\377\012\012\012\377\061"
"\061\061\377ZZZ\377lll\377vvv\377www\377www\377vvv\377ttt\377rrr\377ppp\377"
"ooo\377nmn\377lkl\377jij\377hhh\377fee\377aaa\377___\377YYY\377QQQ\377II"
"I\377EEE\377GGG\377///\377\011\011\011\377\003\003\003\377***\377jjj\222\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000jjj\003\377\377\377\002QQQ\377\020\020\020\374\002\002"
"\002\377\025\025\025\377>>>\377```\377_^_\377ghh\377ttt\377~~~\377\205\205\205"
"\377\206\206\206\377\211\211\211\377\212\212\212\377\211\212\212\377\211"
"\211\211\377\211\210\210\377\210\211\211\377\210\210\210\377\207\207\207"
"\377\206\206\206\377\205\205\205\377\203\203\203\377\200\200\200\377vwv\377"
"bcb\377@@@\377\020\020\020\377\017\017\017\377<<<\377]]]\377mmm\377ttt\377vvv\377"
"vuv\377tst\377rrr\377ppp\377ooo\377mll\377jkk\377iii\377hhh\377fee\377aa"
"a\377___\377YZY\377RRR\377KKK\377FEF\377DDD\377>>>\377\025\025\025\377\002\002\002"
"\377\020\020\020\374QQQ\377\377\377\377\002jjj\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000uuub\066\066\066\377\006\006\006\377\005\005\005\377\"\"\"\377NNN\377"
"___\377___\377hih\377ttt\377}}}\377\204\204\204\377\204\204\204\377\207\207"
"\207\377\207\207\207\377\207\207\207\377\206\206\206\377\206\206\205\377"
"\205\205\205\377\204\204\204\377\204\204\203\377\203\203\203\377\201\201"
"\202\377~~~\377vvv\377ccc\377KKK\377\025\025\025\377\024\024\024\377GHG\377^]^"
"\377nnm\377tts\377ttu\377sss\377qqq\377ppp\377nnn\377lll\377jjj\377iii\377"
"hhh\377eee\377aaa\377___\377ZZZ\377SSS\377LKL\377GGF\377DDD\377EEE\377\""
"\"\"\377\005\005\005\377\006\006\006\377\066\066\066\377uuub\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000ppp\003\000\000\000\000^^^\325\036\036\036\377\002\002\002\377\012"
"\012\012\377+++\377UUU\377\\\\\\\377^^^\377fgg\377rrr\377zzz\377\200\177\200"
"\377\201\201\201\377\202\202\202\377\204\204\204\377\204\204\204\377\203"
"\203\203\377\203\202\203\377\202\202\202\377\201\201\201\377\200\200\200"
"\377\177\177~\377|||\377vvv\377ede\377UUU\377\033\033\033\377\033\033\033\377R"
"RR\377``_\377non\377rrr\377rqr\377qpp\377pop\377mmm\377lll\377jjj\377iii"
"\377ggg\377ddd\377aaa\377___\377ZYY\377SSS\377LLL\377FFF\377CCC\377FFF\377"
"---\377\012\012\012\377\002\002\002\377\036\036\036\377^^^\325\000\000\000\000ppp\003\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\341\341\341\013NNN"
"\377\021\021\021\377\001\001\001\377\017\017\017\377\062\062\062\377XXX\377YZY\377]]]\377"
"fff\377ooo\377wxw\377}}}\377~~~\377\177\177\177\377\201\201\201\377\201\201"
"\201\377\200\200\200\377\177\177\177\377~~~\377}}}\377||}\377z{{\377uuv\377"
"fff\377[[[\377%%%\377%%%\377YYY\377bbb\377mmm\377ppp\377ppp\377ooo\377mm"
"m\377kkk\377iii\377ihi\377fff\377ccc\377aaa\377^^^\377YYY\377SSS\377LLL\377"
"GGG\377CCC\377FFF\377\064\064\064\377\017\017\017\377\001\001\001\377\021\021\021\377MM"
"M\377\342\342\342\013\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000xxxV>>>\377\012\012\012\377\002\002\002\377\024"
"\024\024\377\066\066\066\377VWV\377XXX\377[[[\377bbb\377kkl\377sss\377www\377"
"zzz\377{{{\377|||\377}}}\377|||\377|||\377{{{\377{{z\377xxx\377ttt\377hh"
"h\377[[[\377\064\064\064\377\066\066\066\377XXX\377ddd\377lll\377nnn\377nnn\377"
"lll\377jjj\377iii\377hhh\377dde\377aaa\377```\377\\]\\\377XXX\377RRR\377"
"KKL\377FFF\377CCC\377EEE\377\070\070\070\377\024\024\024\377\002\002\002\377\012\012\012"
"\377>>>\377yyyV\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ooo\001\000\000\000\000ggg\233\061\061\061\377\005\005\005\376"
"\003\003\003\377\027\027\027\377\067\067\067\377VVV\377WWW\377YYY\377___\377ggg\377o"
"no\377ttt\377wvw\377xxw\377xxx\377xyy\377yyy\377xxx\377wwx\377vvv\377sss"
"\377jjj\377]]]\377AAA\377BBB\377[[[\377efe\377llk\377lll\377llk\377jjj\377"
"iii\377fff\377ccc\377aaa\377___\377\\\\\\\377WVV\377QQQ\377KKK\377FFF\377"
"CCC\377FFF\377\070\070\070\377\027\027\027\377\003\003\003\377\005\005\005\376\061\061\061\377"
"ggg\233\000\000\000\000ooo\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000bbb\277+++\377\004\004\004"
"\376\003\003\003\377\024\024\024\377\062\062\062\377RRR\377WWW\377VVV\377[[[\377aaa\377"
"hhh\377mmm\377qqq\377sss\377ttt\377ttt\377ttt\377ttt\377sst\377qqq\377kk"
"k\377aaa\377MLL\377NNN\377^^^\377fff\377iii\377iii\377hhh\377fff\377ccc\377"
"bbb\377```\377]\\\\\377YYY\377TTS\377NNN\377III\377EEE\377CCC\377FFF\377"
"\064\064\064\377\024\024\024\377\003\003\003\377\004\004\004\376+++\377bbb\277\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000bbb\315+++\377\005\005\005"
"\376\001\001\001\377\020\020\020\377+++\377KKK\377VVV\377TTT\377VVV\377[[[\377``a"
"\377fff\377jjj\377llm\377ooo\377ooo\377ooo\377ooo\377mmm\377iii\377bbb\377"
"VUU\377XWW\377^__\377ccd\377eee\377fff\377ddd\377aba\377`_`\377]]]\377YY"
"Y\377TTT\377OOO\377JJK\377GGG\377DDD\377DDD\377EEE\377---\377\020\020\020\377"
"\001\001\001\377\005\005\005\376+++\377bbb\315\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000bbb\277\061\061\061\377\012\012\012\377"
"\001\001\001\377\012\012\012\377!!!\377???\377RRR\377SSS\377SSS\377TTT\377XXX\377"
"\\\\\\\377```\377ccc\377fff\377hhh\377hhh\377hhh\377fff\377bcc\377]]]\377"
"___\377`__\377bbb\377aaa\377___\377]]]\377[[[\377WWW\377SSS\377OOO\377KK"
"K\377GHH\377EEE\377CCD\377FFF\377>>>\377\"\"\"\377\012\012\012\377\001\001\001\377"
"\012\012\012\377\061\061\061\377bbb\277\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ggg\233>>>\377\021"
"\021\021\377\002\002\002\377\005\005\005\377\025\025\025\377...\377FFF\377QQQ\377QQQ\377P"
"PP\377RRR\377TTT\377WXW\377ZZZ\377\\\\\\\377^]]\377^^^\377\\\\\\\377\\\\"
"\\\377[[[\377ZZZ\377YYY\377YYY\377XXX\377WWW\377TTT\377QPP\377NNN\377JJJ"
"\377HGG\377EEE\377DCD\377FFF\377CCC\377///\377\025\025\025\377\005\005\005\377\002\002"
"\002\377\021\021\021\377>>>\377ggg\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"xxxVNNN\377\036\036\036\377\006\006\006\377\001\001\001\377\011\011\011\377\033\033\033\377\062"
"\062\062\377EEE\377OOO\377PPP\377NNN\377NNN\377OOO\377PPP\377QQQ\377RRR\377"
"RRR\377QRR\377QRQ\377QQQ\377PPP\377OOO\377NNN\377LLL\377JJJ\377HHH\377FF"
"F\377EEE\377EEE\377FFF\377CCC\377\063\063\063\377\034\034\034\377\011\011\011\377"
"\001\001\001\377\006\006\006\377\036\036\036\377NNN\377xxxV\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000ooo\001\000\000\000\000\341\341\341\013^^^\325\066\066\066\377\020\020\020\374"
"\002\002\002\377\003\003\003\377\012\012\012\377\030\030\030\377+++\377===\377III\377MMM\377"
"NNN\377LLL\377KKK\377KKK\377KKK\377KJJ\377JJJ\377JJJ\377III\377HHH\377GG"
"G\377GGF\377FFF\377GGG\377GGG\377EEE\377===\377,,,\377\031\031\031\377\012\012"
"\012\377\003\003\003\377\002\002\002\377\020\020\020\374\066\066\066\377^^^\325\341\341\341"
"\013\000\000\000\000ooo\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000uuubQQQ\377***\377\014\014\014\373\003\003\003\377\002\002\002\377\007\007\007\377\020"
"\020\020\377\036\036\036\377,,,\377\070\070\070\377BBB\377GGG\377III\377III\377J"
"JJ\377JJJ\377IIJ\377HHH\377HHH\377GGG\377EEE\377AAA\377\070\070\070\377---\377"
"\036\036\036\377\020\020\020\377\007\007\007\377\002\002\002\377\003\003\003\377\014\014\014\373***"
"\377QQQ\377uuub\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ppp\003\000\000\000\000\377\377\377\002jjj\222LLL\377-"
"--\377\022\022\022\377\005\005\005\377\001\001\001\377\003\003\003\377\007\007\007\377\016\016\016\377"
"\025\025\025\377\035\035\035\377###\377)))\377,,,\377...\377...\377---\377)))\377"
"###\377\035\035\035\377\025\025\025\377\016\016\016\377\007\007\007\377\003\003\003\377\001\001\001"
"\377\005\005\005\377\022\022\022\377---\377LLL\377jjj\222\377\377\377\002\000\000\000\000pp"
"p\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000jjj\003\000\000\000\000\306\306\306\011jjjsVVV\365===\377"
"$$$\377\021\021\021\377\006\006\006\377\002\002\002\377\001\001\001\377\001\001\001\377\003\003\003\377\005"
"\005\005\377\005\005\005\377\006\006\006\377\006\006\006\377\005\005\005\377\005\005\005\377\003\003\003\377\001\001"
"\001\377\001\001\001\377\002\002\002\377\006\006\006\377\021\021\021\377$$$\377===\377VVV\365jj"
"js\306\306\306\011\000\000\000\000jjj\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000|||\001\000\000\000\000\000\000\000\000|||\062eee\215WWW\364BBB\377\062\062\062\377"
"$$$\377\031\031\031\377\022\022\022\377\016\016\016\377\012\012\012\377\011\011\011\377"
"\011\011\011\377\012\012\012\377\015\015\015\377\022\022\022\377\031\031\031\377$$$\377"
"\062\062\062\377BBB\377WWW\364eee\215|||\062\000\000\000\000\000\000\000\000|||\001\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\246\246\246\026rrrSeee\205\\\\\\\257"
"VVV\315QQQ\350OOO\370LLL\377LLL\377OOO\370QQQ\350VVV\315\\\\\\\257eee\205"
"rrrS\246\246\246\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
};

View File

@ -213,7 +213,7 @@ void Draw_BigFontString(int x, int y, const char *text)
p = QBigFontWorks();
if (!p)
{
Draw_FunString(x, y, text);
Draw_AltFunString(x, y, text);
return;
}
@ -1935,6 +1935,22 @@ qboolean MC_Main_Key (int key, menu_t *menu) //here purly to restart demos.
return false;
}
static int M_Main_AddExtraOptions(menu_t *mainm, int y)
{
if (Cmd_AliasExist("mod_menu", RESTRICT_LOCAL))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, va("%-14s", Cvar_Get("mod_menu", "Mod Menu", 0, NULL)->string), "mod_menu\n"); y += 20;}
if (Cmd_Exists("xmpp"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Social ", "xmpp\n"); y += 20;}
if (Cmd_Exists("irc"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "IRC ", "irc\n"); y += 20;}
if (Cmd_Exists("qi"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Quake Injector", "qi\n"); y += 20;}
if (Cmd_Exists("menu_download"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Updates ", "menu_download\n"); y += 20;}
return y;
}
void M_Menu_Main_f (void)
{
extern cvar_t m_helpismedia;
@ -2114,16 +2130,7 @@ void M_Menu_Main_f (void)
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Media ", "menu_media\n"); y += 20;}
else
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Help ", "help\n"); y += 20;}
if (Cmd_AliasExist("mod_menu", RESTRICT_LOCAL))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, va("%-14s", Cvar_Get("mod_menu", "Mod Menu", 0, NULL)->string), "mod_menu\n"); y += 20;}
if (Cmd_Exists("xmpp"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Social ", "xmpp\n"); y += 20;}
if (Cmd_Exists("irc"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "IRC ", "irc\n"); y += 20;}
if (Cmd_Exists("qi"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Quake Injector", "qi\n"); y += 20;}
if (Cmd_Exists("menu_download"))
{MC_AddConsoleCommandQBigFont(mainm, 72, y, "Updates ", "menu_download\n"); y += 20;}
y = M_Main_AddExtraOptions(mainm, y);
#ifdef FTE_TARGET_WEB
MC_AddConsoleCommandQBigFont (mainm, 72, y, "Save Settings ", "menu_quit\n"); y += 20;
#else
@ -2134,7 +2141,7 @@ void M_Menu_Main_f (void)
}
else
{
int width;
int width, y;
Key_Dest_Add(kdm_emenu);
mainm = M_CreateMenu(0);
@ -2190,6 +2197,8 @@ void M_Menu_Main_f (void)
b->common.width = width;
b->common.height = 20;
M_Main_AddExtraOptions(mainm, 112+20);
mainm->cursoritem = (menuoption_t *)MC_AddCursor(mainm, &resel, 54, 32);
}

View File

@ -7814,6 +7814,7 @@ qboolean CSQC_DrawView(void)
else
*csqcg.frametime = host_frametime;
}
if (csqcg.clframetime)
*csqcg.clframetime = host_frametime;

View File

@ -98,7 +98,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#ifdef CONFIG_FILE_NAME
#undef MULTITHREAD
#undef BOTLIB_STATIC
#define HEADLESSQUAKE //usable renderers are normally specified via the makefile, but HEADLESS is considered a feature rather than an actual renderer, so usually gets forgotten about...
//yup, C89 allows this (doesn't like C's token concat though).

View File

@ -5003,9 +5003,17 @@ void COM_Version_f (void)
Con_Printf("Games:");
#if defined(Q3SERVER) && defined(Q3CLIENT)
Con_Printf(" Quake3");
#ifdef BOTLIB_STATIC
Con_Printf(" Quake3");
#else
Con_Printf(" Quake3^h(no-botlib)^h");
#endif
#elif defined(Q3SERVER)
Con_Printf(" Quake3(server)");
#ifdef BOTLIB_STATIC
Con_Printf(" Quake3(server)");
#else
Con_Printf(" Quake3(server,no-botlib)");
#endif
#elif defined(Q3CLIENT)
Con_Printf(" Quake3(client)");
#elif defined(Q3BSPS)

View File

@ -746,7 +746,7 @@ typedef size_t hashfunc_t(unsigned char *digest, size_t maxdigestsize, size_t nu
hashfunc_t SHA1_m;
//int SHA1_m(char *digest, size_t maxdigestsize, size_t numstrings, const char **strings, size_t *stringlens);
//#define SHA1(digest,maxdigestsize,string,stringlen) SHA1_m(digest, maxdigestsize, 1, &string, &stringlen)
int SHA1(unsigned char *digest, int maxdigestsize, const unsigned char *string, size_t stringlen);
size_t SHA1(unsigned char *digest, size_t maxdigestsize, const unsigned char *string, size_t stringlen);
size_t HMAC(hashfunc_t *hashfunc, unsigned char *digest, size_t maxdigestsize, const unsigned char *data, size_t datalen, const unsigned char *key, size_t keylen);
int version_number(void);

View File

@ -104,7 +104,7 @@
#define Q2CLIENT //q2 client. file formats enabled separately.
#define Q3CLIENT //q3 client stuff.
#define Q3SERVER //q3 server stuff.
#define BOTLIB_STATIC //q3 botlib
#define AVAIL_BOTLIB //q3 botlib
#define HEXEN2 //runs hexen2 gamecode, supports hexen2 file formats.
#define HUFFNETWORK //crappy network compression. probably needs reseeding.
#define NETPREPARSE //allows for running both nq+qw on the same server (if not, protocol used must match gamecode).
@ -172,7 +172,7 @@
//-DNO_OPUS
//-DNO_SPEEX //disable static speex
#ifndef BOTLIB_STATIC
#ifndef AVAIL_BOTLIB
-DNO_BOTLIB //disable static botlib
#endif
//-DNO_VORBISFILE //disable static vorbisfile

View File

@ -106,7 +106,7 @@
//#define Q2CLIENT //q2 client. file formats enabled separately.
//#define Q3CLIENT //q3 client stuff.
//#define Q3SERVER //q3 server stuff.
//#define BOTLIB_STATIC //q3 botlib
//#define AVAIL_BOTLIB //q3 botlib
//#define HEXEN2 //runs hexen2 gamecode, supports hexen2 file formats.
//#define HUFFNETWORK //crappy network compression. probably needs reseeding.
#define NETPREPARSE //allows for running both nq+qw on the same server (if not, protocol used must match gamecode).
@ -173,7 +173,7 @@
-DNO_OPUS
-DNO_SPEEX //disable static speex
#ifndef BOTLIB_STATIC
#ifndef AVAIL_BOTLIB
-DNO_BOTLIB //disable static botlib
#endif
-DNO_VORBISFILE //disable static vorbisfile

View File

@ -103,7 +103,7 @@
//#define Q2CLIENT //q2 client. file formats enabled separately.
//#define Q3CLIENT //q3 client stuff.
//#define Q3SERVER //q3 server stuff.
//#define BOTLIB_STATIC //q3 botlib
//#define AVAIL_BOTLIB //q3 botlib
//#define HEXEN2 //runs hexen2 gamecode, supports hexen2 file formats.
//#define HUFFNETWORK //crappy network compression. probably needs reseeding.
//#define NETPREPARSE //allows for running both nq+qw on the same server (if not, protocol used must match gamecode).
@ -171,7 +171,7 @@
//-DNO_OPUS
//-DNO_SPEEX //disable static speex
#ifndef BOTLIB_STATIC
#ifndef AVAIL_BOTLIB
-DNO_BOTLIB //disable static botlib
#endif
//-DNO_VORBISFILE //disable static vorbisfile

View File

@ -91,7 +91,7 @@
#undef AVAIL_FREETYPE //for truetype font rendering
#undef AVAIL_WASAPI //windows advanced sound api
#undef AVAIL_DSOUND
#undef BOTLIB_STATIC //q3 botlib
#undef AVAIL_BOTLIB //q3 botlib
#undef AVAIL_XZDEC //.xz decompression
#undef AVAIL_GZDEC //.gz decompression
#undef AVAIL_DZIP //.dzip special-case archive support
@ -161,7 +161,7 @@
-DNO_SPEEX //disable static speex
#ifndef BOTLIB_STATIC
#ifndef AVAIL_BOTLIB
-DNO_BOTLIB //disable static botlib
#endif
-DNO_VORBISFILE //disable static vorbisfile

View File

@ -20,6 +20,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//well, linux or cygwin (windows with posix emulation layer), anyway...
#define _GNU_SOURCE
#include "quakedef.h"
#ifdef MULTITHREAD
@ -104,6 +105,10 @@ void *Sys_CreateThread(char *name, int (*func)(void *), void *args, int priority
}
pthread_attr_destroy(&attr);
#ifdef __USE_GNU
pthread_setname_np(*thread, name);
#endif
return (void *)thread;
}
#else
@ -128,6 +133,10 @@ void *Sys_CreateThread(char *name, int (*func)(void *), void *args, int priority
}
pthread_attr_destroy(&attr);
#ifdef __USE_GNU
pthread_setname_np(*thread, name);
#endif
return (void *)thread;
}
#endif

View File

@ -2763,7 +2763,8 @@ void GLVID_SwapBuffers (void)
}
}
#include "bymorphed.h"
#include "fte_eukara64.h"
//#include "bymorphed.h"
void X_StoreIcon(Window wnd)
{
int i;

View File

@ -13,13 +13,13 @@
#include "bothdefs.h"
#ifdef WAYLANDQUAKE
#include "gl_videgl.h" //define this BEFORE the wayland stuff. This means the EGL types will have their (x11) defaults instead of getting mixed up with wayland. we expect to be able to use the void* verions instead for wayland anyway.
#include <wayland-client.h>
#include <wayland-egl.h>
#include <linux/input.h> //this is shite.
#include "quakedef.h"
#if defined(GLQUAKE) && defined(USE_EGL)
#include "gl_draw.h"
#include "gl_videgl.h"
#endif
#if defined(VKQUAKE)
#include "vk/vkrenderer.h"

View File

@ -7,7 +7,7 @@
#define Hash_BytesForBuckets(b) (sizeof(bucket_t*)*(b))
#define STRCMP(s1,s2) (((*s1)!=(*s2)) || strcmp(s1+1,s2+1)) //saves about 2-6 out of 120 - expansion of idea from fastqcc
#define STRCMP(s1,s2) (((*s1)!=(*s2)) || (strcmp(s1,s2))) //saves about 2-6 out of 120 - expansion of idea from fastqcc
typedef struct bucket_s {
void *data;
union {

View File

@ -1088,8 +1088,8 @@ typedef struct qcc_includechunk_s {
} qcc_includechunk_t;
extern qcc_includechunk_t *currentchunk;
int QCC_CopyString (char *str);
int QCC_CopyStringLength (char *str, size_t length);
int QCC_CopyString (const char *str);
int QCC_CopyStringLength (const char *str, size_t length);
@ -1173,4 +1173,4 @@ vfile_t *QCC_AddVFile(const char *name, void *data, size_t size);
void QCC_CatVFile(vfile_t *, const char *fmt, ...);
void QCC_InsertVFile(vfile_t *, size_t pos, const char *fmt, ...);
void *QCC_ReadFile(const char *fname, unsigned char *(*buf_get)(void *ctx, size_t len), void *buf_ctx, size_t *out_size);
void *QCC_ReadFile(const char *fname, unsigned char *(*buf_get)(void *ctx, size_t len), void *buf_ctx, size_t *out_size, pbool issourcefile);

View File

@ -4276,32 +4276,20 @@ QCC_sref_t QCC_PR_ParseImmediate (void)
case ev_string:
{
int t,l;
int t=0,l;
char tmp[8192];
t=l = pr_immediate_strlen;
if (l+1 > sizeof(tmp))
QCC_PR_ParseError (ERR_NAMETOOLONG, "string immediate is too long");
memcpy(tmp, pr_immediate_string, l);
tmp[l] = 0;
//extra logic to amalgamate any "additional " "string" " immediates", like in C
for(;;)
do
{
l = pr_immediate_strlen;
if (t+l+1 > sizeof(tmp))
QCC_PR_ParseError (ERR_NAMETOOLONG, "string immediate is too long");
memcpy(tmp+t, pr_immediate_string, l);
t+=l;
QCC_PR_Lex ();
if (pr_token_type == tt_immediate && pr_immediate_type == type_string)
{
l = pr_immediate_strlen;
if (t+l+1 > sizeof(tmp))
QCC_PR_ParseError (ERR_NAMETOOLONG, "string immediate is too long");
memcpy(tmp+t, pr_immediate_string, l);
tmp[t+l] = 0;
t+=l;
}
else
break;
}
cn = QCC_MakeStringConstLength(tmp, t+1);
} while(pr_token_type == tt_immediate && pr_immediate_type == type_string);
tmp[t++] = 0;
cn = QCC_MakeStringConstLength(tmp, t);
}
return cn;
default:
@ -6415,7 +6403,7 @@ QCC_sref_t QCC_MakeFloatConst(float value)
extern hashtable_t stringconstdefstable, stringconstdefstable_trans;
int dotranslate_count;
static QCC_sref_t QCC_MakeStringConstInternal(char *value, size_t length, pbool translate)
static QCC_sref_t QCC_MakeStringConstInternal(const char *value, size_t length, pbool translate)
{
QCC_def_t *cn;
int string;
@ -10618,8 +10606,13 @@ void QCC_PR_ParseStatement (void)
if (patch2)
patch2->a.ofs = &statements[numstatements] - patch2;
if (QCC_PR_StatementBlocksMatch(patch1+1, patch2-patch1, patch2+1, &statements[numstatements] - patch2))
QCC_PR_ParseWarning(0, "Two identical blocks each side of an else");
/*FIXME: this doesn't work right
if (patch1 && patch2)
{
if (QCC_PR_StatementBlocksMatch(patch1+1, patch2-(patch1+1), patch2+1, &statements[numstatements] - (patch2+1)))
QCC_PR_ParseWarning(0, "Two identical blocks each side of an else");
}
*/
}
}
else if (patch1)

View File

@ -476,7 +476,7 @@ typedef struct stringtab_s
} stringtab_t;
stringtab_t *stringtablist[256];
// CopyString returns an offset from the string heap
int QCC_CopyString (char *str)
int QCC_CopyString (const char *str)
{
int old;
size_t len;
@ -528,7 +528,7 @@ int QCC_CopyString (char *str)
return old;
}
int QCC_CopyStringLength (char *str, size_t length)
int QCC_CopyStringLength (const char *str, size_t length)
{
int old;
@ -541,11 +541,12 @@ int QCC_CopyStringLength (char *str, size_t length)
if ( (strofs + length) > MAX_STRINGS)
QCC_Error(ERR_INTERNAL, "QCC_CopyString: stringtable size limit exceeded\n");
memcpy (strings+strofs, str, length);
strofs += length;
strings[strofs+length] = 0;
strofs += length+1;
return old;
}
int QCC_CopyDupBackString (char *str)
int QCC_CopyDupBackString (const char *str)
{
size_t length;
int old;

View File

@ -8,7 +8,7 @@
LoadFile
==============
*/
void *QCC_ReadFile(const char *fname, unsigned char *(*buf_get)(void *ctx, size_t len), void *buf_ctx, size_t *out_size)
void *QCC_ReadFile(const char *fname, unsigned char *(*buf_get)(void *ctx, size_t len), void *buf_ctx, size_t *out_size, pbool issourcefile)
//unsigned char *PDECL QCC_ReadFile (const char *fname, void *buffer, int len, size_t *sz)
{
size_t len;
@ -126,16 +126,21 @@ int main (int argc, char **argv)
funcs.funcs.parms->WriteFile = QCC_WriteFile;
funcs.funcs.parms->Printf = logprintf;
funcs.funcs.parms->Sys_Error = Sys_Error;
logfile = fopen("fteqcc.log", "at");
fputs("Args:", logfile);
for (i = 0; i < argc; i++)
#ifdef _WIN32
logfile = fopen("fteqcc.log", "wt");
#endif
if (logfile)
{
if (strchr(argv[i], ' '))
fprintf(logfile, " \"%s\"", argv[i]);
else
fprintf(logfile, " %s", argv[i]);
fputs("Args:", logfile);
for (i = 0; i < argc; i++)
{
if (strchr(argv[i], ' '))
fprintf(logfile, " \"%s\"", argv[i]);
else
fprintf(logfile, " %s", argv[i]);
}
fprintf(logfile, "\n");
}
fprintf(logfile, "\n");
sucess = CompileParams(&funcs, NULL, argc, argv);
qccClearHunk();
if (logfile)

View File

@ -357,7 +357,7 @@ void VARGS SV_Error (char *error, ...)
}
#ifdef SERVERONLY
void VARGS Host_Error (char *error, ...)
void VARGS Host_Error (const char *error, ...)
{
va_list argptr;
char string[1024];
@ -371,7 +371,7 @@ void VARGS Host_Error (char *error, ...)
#endif
#ifdef SERVERONLY
void VARGS Host_EndGame (char *error, ...)
void VARGS Host_EndGame (const char *error, ...)
{
va_list argptr;
char string[1024];