home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!gatech!emory!ogicse!news.tek.com!saab!billr
- From: billr@saab.CNA.TEK.COM (Bill Randle)
- Newsgroups: comp.sources.games
- Subject: v17i106: nethack31 - display oriented dungeons & dragons (Ver. 3.1), Patch2ee/33
- Message-ID: <1v8j32$je6@ying.cna.tek.com>
- Date: 11 Jun 93 00:19:46 GMT
- Article-I.D.: ying.1v8j32$je6
- Organization: Tektronix, Inc, Redmond, OR, USA
- Lines: 1872
- Approved: billr@saab.CNA.TEK.COM
- NNTP-Posting-Host: saab.cna.tek.com
- Xref: uunet comp.sources.games:1779
-
- Submitted-by: izchak@linc.cis.upenn.edu (Izchak Miller)
- Posting-number: Volume 17, Issue 106
- Archive-name: nethack31/Patch2ee
- Patch-To: nethack31: Volume 16, Issue 1-116
- Environment: Amiga, Atari, Mac, MS-DOS, Windows-NT, OS2, Unix, VMS, X11
-
-
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 31 (of 33)."
- # Contents: sys/amiga/wbwin.uu sys/mac/mttymain.c sys/msdos/video.c
- # Wrapped by billr@saab on Thu Jun 10 16:55:08 1993
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'sys/amiga/wbwin.uu' -a "${1}" != "-c" ; then
- echo shar: Renaming existing file \"'sys/amiga/wbwin.uu'\" to \"'sys/amiga/wbwin.uu.orig'\"
- mv -f 'sys/amiga/wbwin.uu' 'sys/amiga/wbwin.uu.orig'
- fi
- echo shar: Extracting \"'sys/amiga/wbwin.uu'\" \(30237 characters\)
- sed "s/^X//" >'sys/amiga/wbwin.uu' <<'END_OF_FILE'
- Xbegin 664 wbwin.pw
- XM4&]W97)7:6YD;W=S('8R+C5C(*DQ.3@W+"`Q.3@X(&)Y($E.3U9!5%)/3DE#
- XM4RP@24Y#+B`@("`@("`@("`@("`@("`@("`@("`@```"K`````E``8#_````
- XM`0`````!``````AW8G=I;BYC``?//V@``````H``R``"``*````/``````?)
- XMP`````````````````(````73F5T2&%C:R!7;W)K0F5N8V@@5C,N,0`````!
- XM``````$`````#)"0D```(/#P\`!@L`````L``A`_``"'>@"J`%#_____!\]>
- XM$`````````````````````````````('RTA````````!```"`"@`#P(U`)0`
- XM!0`%_____P```!Y396QE8W0@4V%V960@1V%M92!O<B!.97<@1V%M90`'SUU0
- XM``7_^?_F``8`*("#``,'SS,P````````````````!\]'(``$!\](Z/____\#
- XM```%!\]=-````````````AP```(<``<````'```````````"$P`"````````
- XM``````````````$#__________\````*`"@`BP?+2L@'RTL`!\\Q0`?/1V`'
- XMSS'8!\\V:`````=38W)O;&P``````0`````!``````I'04130U)/3$P`````
- XM`0`````!````````!0`,_^8`"@`C``,``0?/26@`````!\]=J```````````
- XM``4'SUW(_____P$```4'SUV,```````````"'````AP`"P````L`````!\])
- XM:/__``L"```"!\]%^``````````(``````(V```#``$```8``0`````'STJ8
- XM``````````,@(``````(`",``0?/2P`'STNX!\],Z`?/3E@'SUWP!\]>````
- XM``A-97-S86=E``````$``````0`````#+3$``````0`````!``?/7C`!$```
- XM````!P``!\]>0`?/\Z@````(4')O:F5C=``'SUZ(!\]>F!!(!\]>8``````0
- XM``?/\:@``````0(#`0```````````,@`"```````````````!4AE;'``````
- XM`0`'SV(8!\]J6!!!!\_QR``````0``?/\?```````0(#`0`````````(`,@`
- XM"```````````````!D%B;W5T``````$`!\_R.`?/\E`04P?/\A``````$``'
- XMS_)@``````$"`P$`````````(`"X``@```````````````M4;W`@4V-O<F5S
- XM``````$`!\_RJ`?/\K@04@?/\H``````$``'S_+(``````$"`P$`````````
- XM&`"X``@```````````````A296-O=F5R``````$`!\_S$`?/\S`010?/\N@`
- XM````$``'S_-```````$"`P$`````````(`"X``@``````````````!-%9&ET
- XM($-O;F9I9W5R871I;VX``````0`'S_.(!\_SF!!1!\_S8``````0````````
- XM`````0(#`0`````````@`,@`"```````````````!5%U:70``````0`'S_/(
- XM`1``1@````<```?/\]@`````````!4=A;64`!\_T(`?/]#`020?/\_@`````
- XM$``'S_1```````$"`P$````````````(``@```````````````5);F9O````
- XM``$`!\_TB`?/]*`00P?/]&``````$``'S_2P``````$"`P$`````````"`"8
- XM``@```````````````I#;W!Y($EN9F\``````0`'S_3X!\_U"!!$!\_TT```
- XM```0``?/]1@``````0(#`0`````````@`)@`"```````````````"$1I<V-A
- XM<F0``````0`'S_5@!\_U<!!.!\_U.``````0`````````````0(#`0``````
- XM```8`)@`"```````````````!U)E;F%M90`````!```"$`X`(`)```4`!?__
- XM__\`````!]`!R````````````````````````P?/^_@```````=1=65S=%\`
- XM``,`K@`\`2H`/``%``7_____````&DYE=$AA8VL@5V]R:T)E;F-H(%)E<75E
- XM<W0`!\__R``,`"L`5P`+`````P`!!\_^W``````'S_\(``````````````?/
- XM_SC_____`@``!0?/_NP```````````!8````6``,````#````````````P`!
- XM```@``(`````!\__*``````````$665S``````H````!!\__8`?/_W`'S_^`
- XM!\__D`?/_Z@'S_^X````!%EE<P`````!``````$`````#$=!1%%515-46453
- XM``````$``````0`'T`#@`,<`*P!7``L````#``$'S__T``````?0`"``````
- XM```````$!]``4/____\"```%!]``!````````````%@```!8``P````,````
- XM```````#``$``",``@`````'T`!```````````-.;P`````*`````0?0`'@'
- XMT`"(!]``F`?0`*@'T`#`!]``T`````-.;P`````!``````$`````"T=!1%%5
- XM15-43D\``````0`````!````````#``0`1(`%0`#``,``0?0`0P`````````
- XM``````````````4'T`$X_____P,```4'T`$<```````````!$P```1,`%@``
- XM`!8```````````````@``P``!]`!8`?0`7@'T`&(!]`!F`?0`:@'T`&X````
- XM"4)O<F1E<G,R``````$``````0`````#+3$``````0`````!``$``0``.P`5
- XM``````?0`>@`````````%U-U<F4@>6]U('=A;G0@=&\@455)5#\```(0#@`E
- XMAD``!0`%_____P`````'T$B@```````````````````````J!\_ZX```````
- XM"4]P=&EO;G-?```!`!T`)P)1`*$`!0`%_____P````U%9&ET($]P=&EO;G,`
- XM!]`'4`"$`#<`/@`*```!`P`!!]`%I``````'T`70``````````````?0!?#_
- XM____`P``!0?0!;0````````````_````/P`+````"P```````````0`!```+
- XM``(`````!\_[Z``````````&0V]L;W(`````"@```0$'T`;H!]`&^`?0!P@'
- XMT`<8!]`',`?0!T`````!``````$``````0`````*1T%$3T-/3$]2``````$`
- XM`````0`'T`B``,H`-P!-``H`@`$#``$'T`=\``````?0!Z@`````````````
- XM!]`'V/____\#```%!]`'C````````````$X```!.``L````+```````````!
- XM``$```D``@`````'T`?(``````````A#;VYF:7)M``````H```$!!]`(``?0
- XM"!`'T`@@!]`(,`?0"$@'T`AP`````0`````!``````$`````#$=!1$]#3TY&
- XM25)-``````$``````0`'T`F@`'L`#0!$``H```$#``$'T`BL``````?0"-@`
- XM````````````!]`)$/____\#```%!]`(O````````````$4```!%``L````+
- XM```````````!``$```(``@`````'T`CX``````````E$:7-C;&]S90`````*
- XM```!`0?0"3@'T`E(!]`)6`?0"6@'T`F`!]`)D`````$``````0`````!````
- XM``U'041/1$E30TQ/4T4``````0`````!``?0"K@`[P`;`#T`"@```0,``0?0
- XM"<P`````!]`)^`````````````8'T`HH_____P,```4'T`G<````````````
- XM/@```#X`"P````L```````````$``0``!P`"``````?0"A@`````````!T9I
- XM>&EN=@`````*```!`0?0"E`'T`I@!]`*<`?0"H`'T`J8!]`*J`````$`````
- XM`0`````!``````M'041/1DE824Y6``````$``````0`'T`O0`*\`&P`Y``H`
- XM``$#``$'T`KD``````?0"Q`````````````'!]`+0/____\#```%!]`*]```
- XM`````````#H````Z``L````+```````````!``$```D``@`````'T`LP````
- XM``````9&;'5S:``````*```!`0?0"V@'T`MX!]`+B`?0"Y@'T`NP!]`+P```
- XM``$``````0`````!``````I'041/1DQ54T@``````0`````!``?0#.@`?0`;
- XM`"H`"@```0,``0?0"_P`````!]`,*`````````````@'T`Q8_____P,```4'
- XMT`P,````````````*P```"L`"P````L```````````$``0``!0`"``````?0
- XM#$@`````````!4AE;'``````"@```0$'T`R`!]`,D`?0#*`'T`RP!]`,R`?0
- XM#-@````!``````$``````0`````)1T%$3TA%3%```````0`````!``?0#@``
- XM?0`I`#T`"@```0,``0?0#10`````!]`-0``````````````'T`UP_____P,`
- XM``4'T`TD````````````/@```#X`"P````L```````````$``0```@`"````
- XM``?0#6``````````"$EG;FEN='(`````"@```0$'T`V8!]`-J`?0#;@'T`W(
- XM!]`-X`?0#?`````!``````$``````0`````,1T%$3TE'3DE.5%(``````0``
- XM```!``?0#Q@`20`;`"H`"@```0,``0?0#BP`````!]`.6`````````````H'
- XMT`Z(_____P,```4'T`X\````````````*P```"L`"P````L```````````$`
- XM`0``!@`"``````?0#G@`````````!4YE=W,`````"@```0$'T`ZP!]`.P`?0
- XM#M`'T`[@!]`.^`?0#P@````!``````$``````0`````)1T%$3TY%5U,`````
- XM`0`````!``?0$#@`PP`I`%4`"@"``0,``0?0#T0`````!]`/<```````````
- XM```'T`^H_____P,```4'T`]4````````````5@```%8`"P````L`````````
- XM``$``0```P`"``````?0#Y``````````"TYU;6)E<B!0860`````"@```0$'
- XMT`_0!]`/X`?0#_`'T!``!]`0&`?0$"@````!``````$``````0`````.1T%$
- XM3TY534)%4E!!1``````!``````$`!]`2:``)`"D`;``*```!`P`!!]`09```
- XM```'T!"0``````````````?0$,C_____`P``!0?0$'0```````````!M````
- XM;0`+````"P```````````0`!```%``(`````!]`0L``````````-075T;R!0
- XM:6-K(%5P``````H```$!!]`2``?0$A`'T!(@!]`2,`?0$D@'T!)8`````0``
- XM```!``````$`````"T=!1$]024-+55```````0`````!``?0$X@`R0`-`&\`
- XM"@```0,``0?0$I0`````!]`2P``````````````'T!+X_____P,```4'T!*D
- XM````````````<````'``"P````L```````````$``0```P`"``````?0$N``
- XM````````#E)E<W0@3VX@4W!A8V4`````"@```0$'T!,@!]`3,`?0$T`'T!-0
- XM!]`3:`?0$W@````!``````$``````0`````01T%$3U)%4U1/3E-004-%````
- XM``$``````0`'T!2@`3\`#0`V``H```$#``$'T!.T``````?0$^``````````
- XM````!]`4$/____\#```%!]`3Q````````````#<````W``L````+````````
- XM```!``$```0``@`````'T!0```````````=3:6QE;G0`````"@```0$'T!0X
- XM!]`42`?0%%@'T!1H!]`4@`?0%)`````!``````$``````0`````+1T%$3U-)
- XM3$5.5``````!``````$`!]`5P`$@`"D`10`*`(`!`P`!!]`4S``````'T!3X
- XM``````````````?0%3#_____`P``!0?0%-P```````````!&````1@`+````
- XM"P```````````0`!```"``(`````!]`5&``````````)4V%F92!0970`````
- XM"@```0$'T!58!]`5:`?0%7@'T!6(!]`5H`?0%;`````!``````$``````0``
- XM```,1T%$3U-!1D50150``````0`````!``?0%_`!;@`I`$X`"@"``0,``0?0
- XM%>P`````!]`6&``````````````'T!90_____P,```4'T!7\````````````
- XM3P```$\`"P````L```````````$``0```P`"``````?0%C@`````````"E-O
- XM<G0@4&%C:P`````*```!`0?0%G@'T!:(!]`6F`?0%J@'T!;`!]`6T`````$`
- XM`````0`````!``````U'041/4T]25%!!0TL``````0`````!``?0&.@"&``-
- XM`"\`"@```0,``0?0&!P`````!]`6X``````````````'T!A8_____P,```4'
- XMT!@L````````````,````#``"P````L```````````$``0```P`"``````?0
- XM&$@`````````!E-O=6YD``````H```$!!]`8@`?0&)`'T!B@!]`8L`?0&,@'
- XMT!C8`````0`````!``````$`````"D=!1$]33U5.1``````!``````$`!]`:
- XM"`'$`"D`30`*```!`P`!!]`9%``````'T!E```````````````?0&7C_____
- XM`P``!0?0&20```````````!.````3@`+````"P```````````0`!```#``(`
- XM````!]`98``````````*4W1A;F0@3W5T``````H```$!!]`9H`?0&;`'T!G`
- XM!]`9T`?0&>@'T!GX`````0`````!``````$`````#4=!1$]35$%.1$]55```
- XM```!``````$`!]`<```)`!L`.0`*`(`!`P`!!]`:-``````'T!I@````````
- XM``````?0&I#_____`P``!0?0&D0````````````Z````.@`+````"P``````
- XM`````0`!```+``(`````!]`:@``````````%5&EM90`````*```!`0?0&K@'
- XMT!K(!]`:V`?0&N@'T!O@!]`;\`````$``````0`````!``````E'041/5$E-
- XM10`````!``````$`!]`=(`%\``T`50`*```!`P`!!]`<+``````'T!Q8````
- XM``````````?0')#_____`P``!0?0'#P```````````!6````5@`+````"P``
- XM`````````0`!```"``(`````!]`<>``````````+5&]M8B!3=&]N90`````*
- XM```!`0?0'+@'T!S(!]`<V`?0'.@'T!T`!]`=$`````$``````0`````!````
- XM``Y'041/5$]-0E-43TY%``````$``````0`'T"`P`98`&P`\``H```$#``$'
- XMT!U,``````?0'7@````````````5!]`=J/____\#```%!]`=7```````````
- XM`#T````]``L````+```````````!``$```(``@`````'T!V8``````````A6
- XM97)B;W-E``````H```$!!]`=T`?0'>`'T!WP!]`?^`?0(!`'T"`@`````0``
- XM```!``````$`````#$=!1$]615)"3U-%``````$``````0`'T"&@`&$`10"4
- XM``D```(#``0'T"!<````````````````!]`@V```!]`A"/____\#```%!]`@
- XM;````````````)4```"5``H````*``````````````!&`"`@("`@("`@("`@
- XM("`@````9&5V<SIP=S(M8V]N9FEG=7)A=&EO;@!396QE8W0@=&AE(&=A9&=E
- XM="!T;R!M;W9E+@!4`````0H```(!!]`A,`?0(4@'T"%8!]`A:`?0(8`'T"&0
- XM````"E!A8VM/<F1E<@`````!``````$`````#D=!1$]004-+3U)$15(`````
- XM`0`````!``?0(P@`80!2`)0`"0```@,`!`?0(<P````````````````'T")(
- XM```'T")X_____P,```4'T"'<````````````E0```)4`"@````H`````````
- XM`````$8``"`@("`@("`@("`@("````!D979S.G!W,BUC;VYF:6=U<F%T:6]N
- XM`%-E;&5C="!T:&4@9V%D9V5T('1O(&UO=F4N`%0````!"@```@$'T"*@!]`B
- XML`?0(L`'T"+0!]`BZ`?0(O@````(0V%T3F%M90`````!``````$`````#$=!
- XM1$]#051.04U%``````$``````0`'T"1P`&$`7P"4``D```(#``0'T",T````
- XM````````````!]`CL```!]`CX/____\#```%!]`C1````````````)4```"5
- XM``H````*``````````````!&`"`@("`@("`@("`@("`@````9&5V<SIP=S(M
- XM8V]N9FEG=7)A=&EO;@!396QE8W0@=&AE(&=A9&=E="!T;R!M;W9E+@!4````
- XM`0H```(!!]`D"`?0)!@'T"0H!]`D.`?0)%`'T"1@````"$1O9TYA;64`````
- XM`0`````!``````Q'041/1$]'3D%-10`````!``````$`!]`EV`!A`&P`E``)
- XM```"`P`$!]`DG`````````````````?0)1@```?0)4C_____`P``!0?0)*P`
- XM``````````"5````E0`*````"@``````````````1@`@("`@("`@("`@("`@
- XM(````&1E=G,Z<'<R+6-O;F9I9W5R871I;VX`4V5L96-T('1H92!G861G970@
- XM=&\@;6]V92X`5`````$*```"`0?0)7`'T"6`!]`ED`?0):`'T"6X!]`ER```
- XM``9&<G5I=``````!``````$`````"D=!1$]&4E5)5``````!``````$`!]`G
- XM,`'9``T`-@`*```!`P`!!]`F!``````'T"8P``````````````?0)F#_____
- XM`P``!0?0)A0````````````W````-P`+````"P```````````0`!```#``(`
- XM````!]`F4``````````'1F5M86QE``````H```$!!]`FR`?0)M@'T";H!]`F
- XM^`?0)Q`'T"<@`````0`````!``````$`````"T=!1$]&14U!3$4``````0``
- XM```!``?0*)@`80!Y`)0`"0```@,`!`?0)UP````````````````'T"?8```'
- XMT"@(_____P,```4'T"=L````````````E0```)4`"@````H`````````````
- XM`$8`("`@("`@("`@("`@("````!D979S.G!W,BUC;VYF:6=U<F%T:6]N`%-E
- XM;&5C="!T:&4@9V%D9V5T('1O(&UO=F4N`%0````!"@```@$'T"@P!]`H0`?0
- XM*%`'T"A@!]`H>`?0*(@````(3V)J96-T<P`````!``````$`````#$=!1$]/
- XM0DI%0U13``````$``````0`'T"FX`=D`&P!N``H```$#``$'T"C$``````?0
- XM*/`````````````<!]`I*/____\#```%!]`HU````````````&\```!O``L`
- XM```+```````````!``$```,``@`````'T"D0``````````Y!<VL@4V%V92!$
- XM:7-K``````H```$!!]`I4`?0*6`'T"EP!]`I@`?0*9@'T"FH`````0`````!
- XM``````$`````#$=!1$]!4TM3059%``````$``````0`'T"K0`A``DP`W``H`
- XM```#``$'T"GD``````?0*A``````````````!]`J0/____\!```%!]`I]```
- XM`````````#@````X``L````+```````````!``$```,``@`````'T"HP````
- XM``````=#04Y#14P`````"@````$'T"IH!]`J>`?0*H@'T"J8!]`JL`?0*L``
- XM```!``````$``````0`````+1T%$3T-!3D-%3``````!``````$`!]`KZ``-
- XM`)(`-P`*`````P`!!]`J_``````'T"LH``````````````?0*UC_____`0``
- XM!0?0*PP````````````X````.``+````"P```````````0`!```+``(`````
- XM!]`K2``````````%3TM!60`````*`````0?0*X`'T"N0!]`KH`?0*[`'T"O(
- XM!]`KV`````$``````0`````!``````E'041/3TM!60`````!``````$`!]`M
- XM"``)`#<`<@`*`(`!`P`!!]`L%``````'T"Q```````````````?0+'C_____
- XM`P``!0?0+"0```````````!S````<P`+````"P```````````0`!```%``(`
- XM````!]`L8``````````.2&EG:&QI9VAT(%!E=``````*```!`0?0+*`'T"RP
- XM!]`LP`?0+-`'T"SH!]`L^`````$``````0`````!``````Y'041/2$E,251%
- XM4$54``````$``````0`'T"X@`2``-P`[``H`@`$#``$'T"TT``````?0+6``
- XM````````````!]`MD/____\#```%!]`M1````````````#P````\``L````+
- XM```````````!``$```4``@`````'T"V```````````=,96=A8WD`````"@"`
- XM`0$'T"VX!]`MR`?0+=@'T"WH!]`N``?0+A`````!``````$``````0`````+
- XM1T%$3TQ%1T%#60`````!``````$`!]`O0``)``T`:``*```!`P`!!]`N3```
- XM```'T"YX``````````````?0+K#_____`P``!0?0+EP```````````!I````
- XM:0`+````"P```````````0`!```%``(`````!]`NF``````````-3&ET($-O
- XM<G)I9&]R``````H```$!!]`NV`?0+N@'T"[X!]`O"`?0+R`'T"\P`````0``
- XM```!``````$`````$$=!1$],251#3U)2241/4@`````!``````$`!]`P8`%E
- XM`#<`?P`*`(`!`P`!!]`O;``````'T"^8``````````````?0+]#_____`P``
- XM!0?0+WP```````````"`````@``+````"P```````````0`!```%``(`````
- XM!]`ON``````````04VAO=R!%>'!E<FEE;F-E``````H```$!!]`O^`?0,`@'
- XMT#`8!]`P*`?0,$`'T#!0`````0`````!``````$`````#$=!1$]32$]715A0
- XM``````$``````0`'T#)8`>T`-P!:``H```$#``$'T#",``````?0,+@`````
- XM````````!]`QV/____\#```%!]`PG````````````%L```!;``L````+````
- XM```````!``$```4``@`````'T##8``````````M3:&]W(%-C;W)E``````H`
- XM``$!!]`P\`?0,@`'T#(0!]`R(`?0,C@'T#)(`````0`````!``````$`````
- XM#D=!1$]32$]74T-/4D4``````0`````!``?0-%`!-0`;`%H`"@```0,``0?0
- XM,H0`````!]`RL````````````"0'T#/@_____P,```4'T#*4````````````
- XM6P```%L`"P````L```````````$``0``!0`"``````?0,M``````````"T-H
- XM96-K<&]I;G0`````"@"``0$'T#+H!]`R^`?0-`@'T#08!]`T,`?0-$`````!
- XM``````$``````0`````-1T%$3T-(2U!/24Y4``````$``````0`'T#:0`&$`
- XMA@"4``D```(#``0'T#1\````````````````!]`UX```!]`V$/____\#```%
- XM!]`TC````````````)4```"5``H````*``````````````!&`"`@("`@("`@
- XM("`@("`@````9&5V<SIP=S(M8V]N9FEG=7)A=&EO;@!396QE8W0@=&AE(&=A
- XM9&=E="!T;R!M;W9E+@!4`````0H```(!!]`T^`?0-C@'T#9(!]`V6`?0-G`'
- XMT#:`````!4YA;64``````0`````!``````E'041/3D%-10`````!``````$`
- XM!]`Z"`&S`$4`E``)```"`P`$!]`VO`````````````````?0.%````?0.(#_
- XM____`P``!0?0-LP```````````"5````E0`*````"@``````````````1@`@
- XM("`@("`@("`@("`@(````&1E=G,Z<'<R+6-O;F9I9W5R871I;VX`4V5L96-T
- XM('1H92!G861G970@=&\@;6]V92X`5`````$*```"`0?0-N@'T#BH!]`XN`?0
- XM.,@'T#C@!]`X\`````Q0:6-K=7!4>7!E<P`````!``````$`````$$=!1$]0
- XM24-+55!465!%4P`````!``````$`!]`\:`&S`%(`E``)```"`P`$!]`Z-```
- XM``````````````?0.K````?0.N#_____`P``!0?0.D0```````````"5````
- XME0`*````"@``````````````1@`@("`@("`@("`@("`@(````&1E=G,Z<'<R
- XM+6-O;F9I9W5R871I;VX`4V5L96-T('1H92!G861G970@=&\@;6]V92X`5```
- XM``$*```"`0?0/`@'T#F8!]`\(`?0/#`'T#Q(!]`\6`````M7:6YD;W=4>7!E
- XM``````$``````0`````/1T%$3U=)3D1/5U194$4``````0`````!``?0/G@!
- XMLP!?`)0`"0``"@,`!`?0/)0````````````````'T#S8```'T#W@_____P,`
- XM``4'T#RD````````````E0```)4`"@````H```````````````\``````"`@
- XM("`@("`@("````$*```*`0?0/@@'T#X@!]`^,`?0/D`'T#Y8!]`^:`````M-
- XM<V=(:7-T;W)Y``````$``````0`````/1T%$3TU31TA)4U1/4ED``````0``
- XM```!``?00@@!LP!L`)0`"0```@,`!`?0/J0````````````````'T#[0```'
- XMT$!8_____P,```4'T#ZT````````````E0```)4`"@````H`````````````
- XM`$8`("`@("`@("`@("`@("````!D979S.G!W,BUC;VYF:6=U<F%T:6]N`%-E
- XM;&5C="!T:&4@9V%D9V5T('1O(&UO=F4N`%0````!"@```@$'T$"`!]!`D`?0
- XM0*`'T$"P!]!`R`?00-@````(4&%L971T90`````!``````$`````#$=!1$]0
- XM04Q%5%1%``````$``````0`'T$1``;,`>0"4``D```(#``0'T$(T````````
- XM````````!]!"L```!]!"X/____\#```%!]!"1````````````)4```"5``H`
- XM```*``````````````!&`"`@("`@("`@("`@("`@````9&5V<SIP=S(M8V]N
- XM9FEG=7)A=&EO;@!396QE8W0@=&AE(&=A9&=E="!T;R!M;W9E+@!4`````0H`
- XM``(!!]!`Z`?00/@'T$&8!]!$"`?01"`'T$0P````!E-C;W)E``````$`````
- XM`0`````*1T%$3U-#3U)%``````$``````0`'T$:H`;,`A@"4``D```(#``0'
- XMT$1L````````````````!]!&"```!]!&./____\#```%!]!$?```````````
- XM`)4```"5``H````*``````````````!&`"`@("`@("`@("`@("`@````9&5V
- XM<SIP=S(M8V]N9FEG=7)A=&EO;@!396QE8W0@=&AE(&=A9&=E="!T;R!M;W9E
- XM+@!4`````0H```(!!]!$Z`?01/@'T$9@!]!&<`?01H@'T$:8````"%!E=%1Y
- XM<&4``````0`````!``````Q'041/4$545%E010`````!``````$```````(8
- XM`"D`+P`*`(`!`P`!!]!&U``````'T$?@``````````````?02!#_____`P``
- XM!0?01N0````````````P````,``+````"P```````````0`!```(``(`````
- XM!]!(```````````%3G5L;``````*```!`0?02#@'T$A(!]!(6`?02&@'T$B`
- XM!]!(D`````$``````0`````!``````E'041/3E5,3``````!``````$``P`!
- XM```'`$8`````!]!(P`?02-@````,4&%C:R!/<F1E<CH``P`!```7`%,`````
- XM!]!)X`?02?@````*0V%T($YA;64Z``,``0``%P!@``````?02A@'T$HP````
- XM"D1O9R!.86UE.@`#``$``"\`;0`````'T$CX!]!*4`````=&<G5I=#H``P`!
- XM```?`'H`````!]!*<`?02H@````)3V)J96-T<SH``P`!```W`(<`````!]!*
- XMJ`?02K@````&3F%M93H``P`!``&``'L`````!]!*V`?02N@````'4V-O<F4Z
- XM``,``0`!<`!N``````?02^`'T$OX````"5!A;&5T=&4Z``,``0`!4`!4````
- XM``?03!@'T$PP````#5=I;F1O=R!4>7!E.@`#``$``5``80`````'T$Q0!]!,
- XM:`````U-<V<@2&ES=&]R>3H``P`!``%(`$<`````!]!,B`?03*`````.4&EC
- XM:W5P(%1Y<&5S.@`#``$``6@`B``````'T$S```````````I0970@5'EP93H`
- XM``(0#@`D`D``!0`%_____P`````'T&LP```````````````````````(!]!0
- XM^```````!D-O;F9?```!`'X`/`&2`'(`!0`%_____P```!A%9&ET($=A;64@
- XM0V]N9FEG=7)A=&EO;@`'T%Y(`%$`'`$W``D````#``0'T%J<````````````
- XM````!]!:R```!]!<V/____\#```%!]!:K````````````3@```$X``H````*
- XM``````````````#(`"`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@
- XM("`@("``````````````__\#`0(````````LK-0`+:Q8```````K5,P`````
- XM!S@`*F]P````0@`J<`@`R0`/`&@`"`!2```````J;^(`````````````__\#
- XM`0(````````LK-0`+;H(```````K5,P`````".@`*F^X````0@`J<%``R0`7
- XM`&@`"`!2```````J<"H`````````````__\#`0(```````$*`````0?07@@'
- XMT%+X!]!6*`?07B`'T%KX!]!>.`````M3=')(86-K9&ER``````$``````0``
- XM```.1T%$4U122$%#2T1)4@`````!``````$`!]!A,`!1`"H!-P`)`````P`$
- XM!]!>=`````````````````?07J````?07M#_____`P``!0?07H0`````````
- XM``$X```!.``*````"@``````````````R``@("`@("`@("`@("`@("`@("`@
- XM("`@("`@("`@("`@("`@("`@`````````````/__`P$"````````+*S4`"VL
- XM6```````*U3,``````<X`"IO<````$(`*G`(`,D`#P!H``@`4@``````*F_B
- XM`````````````/__`P$"````````+*S4`"VZ"```````*U3,``````CH`"IO
- XMN````$(`*G!0`,D`%P!H``@`4@``````*G`J`````````````/__`P$"````
- XM```!"@````$'T%[X!]!@V`?08.@'T!]!A$`?082`````(4W1R4&5N<P``
- XM```!``````$`````"T=!1%-44E!%3E,``````0`````!``?08Q@`40`.`38`
- XM"0````,`!`?085P````````````````'T&)8```'T&*(_____P,```4'T&%L
- XM```````````!-P```3<`"@````H``````````````,@`("`@("`@("`@("`@
- XM("`@("`@("`@("`@("`@("`@("`@("`@(`````````````#__P,!`@``````
- XM`"RLU``MK%@``````"M4S``````'.``J;W````!"`"IP"`#)``\`:``(`%(`
- XM`````"IOX@````````````#__P,!`@```````"RLU``MN@@``````"M4S```
- XM```(Z``J;[@```!"`"IP4`#)`!<`:``(`%(``````"IP*@````````````#_
- XM_P,!`@```````0H````!!]!BL`?08L`'T&+0!]!BX`?08O@'T&,(````"%-T
- XM<E!A=&@``````0`````!``````M'04135%)0051(``````$``````0`'T&4(
- XM`%$`.`$W``D````#``0'T&-$````````````````!]!D0```!]!D</____\#
- XM```%!]!C5````````````3@```$X``H````*``````````````#(`"`@("`@
- XM("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("``````````````__\#
- XM`0(````````LK-0`+:Q8```````K5,P`````!S@`*F]P````0@`J<`@`R0`/
- XM`&@`"`!2```````J;^(`````````````__\#`0(````````LK-0`+;H(````
- XM```K5,P`````".@`*F^X````0@`J<%``R0`7`&@`"`!2```````J<"H`````
- XM````````__\#`0(```````$*`````0?09)@'T&2P!]!DP`?09-`'T&3H!]!D
- XM^`````I3='),979E;',``````0`````!``````U'04135%),159%3%,`````
- XM`0`````!``?09O``40!&`3<`"0````,`!`?0930````````````````'T&8P
- XM```'T&9@_____P,```4'T&5$```````````!.````3@`"@````H`````````
- XM`````,@`("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@(```
- XM``````````#__P,!`@```````"RLU``MK%@``````"M4S``````'.``J;W``
- XM``!"`"IP"`#)``\`:``(`%(``````"IOX@````````````#__P,!`@``````
- XM`"RLU``MN@@``````"M4S``````(Z``J;[@```!"`"IP4`#)`!<`:``(`%(`
- XM`````"IP*@````````````#__P,!`@```````0H````!!]!FB`?09I@'T&:H
- XM!]!FN`?09M`'T&;@````"%-T<E-A=F4``````0`````!``````M'04135%)3
- XM059%``````$``````0`'T&BX`)<`9`#Q``D```(#``0'T&<<````````````
- XM````!]!H"```!]!H./____\!```%!]!G+````````````/(```#R``H````*
- XM```````````````R3F5T:&%C:SI.971(86-K+F-N9@`@("`@("`@("`@````
- XM``9V`#D?^``XPFX```````````$*```"`0?09T@'T&A@!]!H<`?0:(`'T&B8
- XM!]!HJ`````M#;VYF:6=.86UE``````$``````0`````,1T%$0T].1DY!344`
- XM`````0`````!``?0:A@`"0!5`#,`"@````,``0?0:.0`````!]!I$```````
- XM```````'T&E`_____P(```4'T&CT````````````-````#0`"P````L`````
- XM``````$``0``"@`"``````?0:3``````````!4QO860`````"@````$'T&EH
- XM!]!I>`?0:8@'T&GP!]!IF`?0:@@````!``````$``````0`````,1T%$0T].
- XM1DQ/040``````0`````!````````20!5`#,`"@````,``0?0:D0`````!]!J
- XM<``````````````'T&J@_____P(```4'T&I4````````````-````#0`"P``
- XM``L```````````$``0``"@`"``````?0:I``````````!5-A=F4`````"@``
- XM``$'T&K(!]!JV`?0:N@'T&KX!]!K$`?0:R`````!``````$``````0`````,
- XM1T%$0T].1E-!5D4``````0`````!``,``0``)P`0``````?0:U`'T&M@````
- XM!E!A=&@Z``,``0``#P`>``````?0:X`'T&N8````"4AA8VMD:7(Z``,``0``
- XM)P`L``````?0:[@'T&O(````!E!E;G,Z``,``0``%P`Z``````?0:^@'T&OX
- XM````"$QE=F5L<SH``P`!```'`$@`````!]!L&`?0;#`````*4V%V92!$:7(Z
- XM``$``0``"@!E``````?0;%``````````$D-O;F9I9R!&:6QE($YA;64Z```"
- XM$`X`)`)```4`!?____\``````````````````````````````````@?03-@`
- XM``````53=')?```!`#<`/`(.`!\`!0`%_____P```!%3=')I;F<@4F5Q=65S
- XM=&5R``?0M#@`30`/`;8`"@```@,`!`?06*0````````````````'T%C0```'
- XMT%G@_____P,```4'T%BT```````````!MP```;<`"P````L`````````````
- XM`&0`("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@
- XM("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@.`````!XJ@`IXD````!"
- XM`"GBV`#4``\`&``````!"@```@$'T$SX!]!6>`?05O`'T%H(!]!L<`?0;/@`
- XM```'4W1R:6YG``````$``````0`````#+3$``````0`````!````````"0`/
- XM`#@`"@````,``0?0M&0`````!]"TD``````````````'T+7@_____P,```4'
- XMT+1T````````````.0```#D`"P````L```````````,``0``!``"``````?0
- XM</@`````````!T-A;F-E;``````*`````0?0M@@'T+88!]"V*`?0MC@'T+90
- XM!]"V8`````$``````0`````!``````U'04135%)#04Y#14P``````0`````!
- XM```"$`X`)`-```4`!?____\'T,\`````````````````````````````#`?/
- XM,A@```````9);F9O7P```0`I`#,"+`!=``4`!?____\````11V%M92!);F9O
- XM<FUA=&EO;@`'T+O@`%``'P'1``H```(#``0'T+=T``````?/^Y@`````!]!5
- XM^```!]!7X/____\#```%!]"WA````````````=(```'2``L````+````````
- XM```#``$`_[H``0`````'SS(H``````````E#;VUM96YT.@````!D````````
- XM```'STL@````0@?/4-``R0`/`*``"`!2``````?/4*H`````````````__\#
- XM`0(```````?1V?P'T>4@``````?0@?0````````'SU"`````0@``````R0`7
- XM`*```````0H```(!!\_^,`?/_D`'T`A8!]!4Z`?05/@'T%@(````"$-O;6UE
- XM;G0``````0`````!``````,M,0`````!``````$`!]"\J`!N``\`Q``+````
- XM`P`$!]"\#``````'T+*X``````?0M+````?0N/C_____`P``!0?0O!P`````
- XM``````#%````Q0`,````#````````````P`!`/^;``(`````!]"R@```````
- XM```-4&QA>65R($YA;64Z`````&0```````````?/2R````!"!\]0T`#)``\`
- XMH``(`%(`````!\]0J@````````````#__P,!`@``````!]'9_`?1Y2``````
- XM!]"!]`````````?/4(````!"``````#)`!<`H```````"@````$'T++8!]"R
- XMZ`?0M.`'T+>@!]"T\`?0MG`````'4&QA>65R``````$``````0`````*1T%$
- XM4$Q.04U%``````$``````0`'T+XX`9(`#P"/``L``P`#``$'T+S4``````?0
- XMN2``````````````!]"]L/____\#```%!]"\Y````````````)````"0``P`
- XM```,```````````#``$`_ZL``@`````'T+V8``````````M#:&%R86-T97(Z
- XM``````@``P``!]"]V`?0O>@'T+WX!]"^"`?0OA@'T+XH````!D-L87-S````
- XM``$``````0`````#+3$``````0`````!``?0QK@`=``_`:T`"0````,`!`?0
- XMOF0`````!]"^D``````'T+[(```'T,78_____P,```4'T+YT```````````!
- XMK@```:X`"@````H```````````,``0#_D@`!``````?0OK``````````#%1O
- XM;VP@5'EP97,Z`````,@`("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@
- XM("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@`",`$`$\`%$`````
- XM`````````````````"Y>H````$(`+G1(````&`#8``@`5@``````+G0B````
- XM`$,``````/__`P$"````````+Q;\`"\G^@``````+X+T````(8HX`"YS^```
- XM`$(`+G8(````(`#8``@`4@``````+G1J`````````````````0H````!!]#&
- XM``?0OO@'T,88!]#&*`?0QD`'T,90````"E1O;VQ4>7!E<P`````!``````$`
- XM````#4=!1%1/3TQ465!%4P`````!``````$`!]#':`!A`#T`#0`&`````P`!
- XM!]#&Y`````````````````````````?0QF#_____`P``!0?0QO0`````````
- XM```.````#@`'````!P``````````````"@````$'T,:(!]#'$`?0QR`'T,<P
- XM!]#'2`?0QU@````'5&]O;%5P``````$``````0`````*1T%$5$]/3%50````
- XM``$``````0`'T,A8`&$`1``-``8````#``$'T,>4````````````````````
- XM````!]#'P/____\#```%!]#'I`````````````X````.``<````'````````
- XM```````*`````0?0Q^@'T,@`!]#($`?0R"`'T,@X!]#(2`````E4;V]L1&]W
- XM;@`````!``````$`````#$=!1%1/3TQ$3U=.``````$``````0`'T,F(`8T`
- XM+P"4``H````#``$'T,B$``````?0R+``````````````!]#(\/____\#```%
- XM!]#(E````````````)4```"5``L````+```````````#``$```8``0`````'
- XMT,C0`````````!)%9&ET($=A;64@3W!T:6]N<P`````2`````0?0R1@'T,DP
- XM!]#)0`?0R5`'T,EH!]#)>`````E%9&ET3W!T<P`````!``````$`````#$=!
- XM1$5$251/4%13``````$``````0`'T,J@``P`+@`Z``H````#``$'T,FT````
- XM``?0R>``````````````!]#*$/____\#```%!]#)Q````````````#L````[
- XM``L````+```````````#``$``!(``0`````'T,H```````````1!9&0`````
- XM"@````$'T,HX!]#*2`?0RE@'T,IH!]#*@`?0RI`````!``````$``````0``
- XM```+1T%$041$5$]/3``````!``````$`!]#+N`!.`"X`.P`*`````P`!!]#*
- XMS``````'T,KX``````````````?0RRC_____`P``!0?0RMP````````````\
- XM````/``+````"P```````````P`!```2``$`````!]#+&``````````$1&5L
- XM``````H````!!]#+4`?0RV`'T,MP!]#+@`?0RY@'T,NH`````0`````!````
- XM``$`````"T=!1$1%3%1/3TP``````0`````!``?0S-``"P!.`$<`"0````,`
- XM`0?0R^0`````!]#,$``````````````'T,Q`_____P,```4'T,OT````````
- XM````2````$@`"@````H```````````,``0``%0`!``````?0S#``````````
- XM!5-A=F4`````"@````$'T,QH!]#,>`?0S(@'T,R8!]#,L`?0S,`````!````
- XM``$``````0`````,1T%$4T%614E.1D\``````0`````!``?0S>@!V@!.`$<`
- XM"0````,``0?0S/P`````!]#-*``````````````'T,U8_____P,```4'T,T,
- XM````````````2````$@`"@````H```````````,``0``%``!``````?0S4@`
- XM````````!5%U:70`````"@````$'T`:8!]`&J`?07?@'T%W@!]`_Z`?0/_@`
- XM```!``````$``````0`````,1T%$455)5$E.1D\``````0`````!````````
- XM]P!.`$<`"0````,``0?0SA0`````!]#.0``````````````'T,YP_____P,`
- XM``4'T,XD````````````2````$@`"@````H```````````,``0``&``!````
- XM``?0SF``````````!%5S90`````*`````0?/KE@'SZYH!]!;\`?01?`'T$7@
- XM!]!;X`````$``````0`````!``````M'04154T5)3D9/``````$``````0`'
- XMT,\@`1````````<```?0SS@`````````"D-H87)A8W1E<@`'T,^`!]#/D"P`
- XM!]#/6``````0``?0SZ```!_^`0(#`0`3`````````',`"```````````````
- XM!U)A;F1O;0`````!``?0S^@'T-``)``'T,_``````!``!]#0$```'_T!`@,!
- XM`!,```````@`<P`(```````````````-07)C:&5O;&]G:7-T``````$`!]#0
- XM6`?0T'`D``?0T#``````$``'T-"````?^P$"`P$`$P``````$`!S``@`````
- XM``````````I"87)B87)I86X``````0`'T-#(!]#0V"0`!]#0H``````0``?0
- XMT.@``!_W`0(#`0`3```````8`',`"```````````````"$-A=F5M86X`````
- XM`0`'T-$P!]#10"0`!]#1"``````0``?0T5```!_O`0(#`0`3```````@`',`
- XM"```````````````!$5L9@`````!``?0T9@'T-&H)``'T-%P`````!``!]#1
- XMN```']\!`@,!`!,``````"@`<P`(```````````````'2&5A;&5R``````$`
- XM!]#2``?0TA`D``?0T=@`````$``'T-(@```?OP$"`P$`$P``````,`!S``@`
- XM``````````````=+;FEG:'0``````0`'T-)H!]#2>"0`!]#20``````0``?0
- XMTH@``!]_`0(#`0`3```````X`',`"```````````````!U!R:65S=``````!
- XM``?0TM`'T-+@)``'T-*H`````!``!]#2\```'O\!`@,!`!,``````$``<P`(
- XM```````````````&4F]G=64``````0`'T-,X!]#32"0`!]#3$``````0``?0
- XMTU@``!W_`0(#`0`3``````!(`',`"```````````````"%-A;75R86D`````
- XM`0`'T-.@!]#3L"0`!]#3>``````0``?0T\```!O_`0(#`0`3``````!0`',`
- XM"```````````````"%1O=7)I<W0``````0`'T-0(!]#4("0`!]#3X``````0
- XM``?0U#```!?_`0(#`0`3``````!8`',`"```````````````"59A;&MY<FEE
- XM``````$`!]#4>`?0U(@D``?0U%``````$``````````/_P$"`P$`$P``````
- XM8`!S``@```````````````=7:7IA<F0``````0```A`.`"`"0``%``7_____
- XM``````?0XZ````````````````````````$'T+C@```````'2&5L<#%?```!
- XM`(8`/`&!`#,`!0`%_____P```!A(96QP(&9O<B!'86UE(%-E;&5C=&EO;@``
- XM``````P`(@`O``P````#``$'T.+D``````?0V5`````````````%!]#C$/__
- XM__\!```%!]#B]````````````#`````P``T````-```````````!``$```<`
- XM`@`````'T-EP``````````5/:V%Y`````!(````!!]#C.`?0XT@'T.-8!]#C
- XM:`?0XX`'T..0`````0`````!``````$`````#$=!1$A%3%!/2T%9``````$`
- XM`````0`#``$```D`#0`````'T.:H!]#FX````"Y#;&EC:R!O;B!.97='86UE
- XM($=A9&=E="!O<B!A(%-A=F5D($=A;64@='=I8V4``P`!```*`!8`````!]#G
- XM```````````O=&\@<W1A<G0@82!N97<@9V%M92!O<B!T;R!R97-U;64@82!S
- XM879E9"!G86UE+@```A`.`"`"0``%``7_____``````?0Q&``````````````
- XM``````````$'T%7@```````'2&5L<#)?```!`(L`/`%T`#H`!0`%_____P``
- XM`!M(96QP(&9O<B!'86UE($UA;FEP=6QA=&EO;@```````!$`*@`O``H````#
- XM``$'T,+L``````?0P5@````````````$!]##&/____\!```%!]#"_```````
- XM`````#`````P``L````+```````````!``$```<``@`````'T,%X````````
- XM``5/:V%Y`````!(````!!]#!B`?0PA@'T,(H!]#$*`?0Q$`'T,10`````0``
- XM```!``````$`````#$=!1$A%3%!/2T%9``````$``````0`#``$```\`#0``
- XM```'T-NP!]#$@````"M5<V4@365N=2!B=71T;VX@=&\@<V5L96-T(&]P97)A
- XM=&EO;B!O;B!T:&4``P`!```/`!8`````!]#=``?0QI@````L<V5L96-T960@
- XM9V%M92P@;W(@9&]U8FQE(&-L:6-K(&]N(&$@9V%M92!T;P`#``$```\`'P``
- XM```'T-OH`````````!=R97-U;64@=&AE('-A=F5D(&=A;64N```"$`X`(`)`
- XM``4`!?____\`````!]#QJ````````````````````````0?0YS@```````=!
- XM8F]U=%\```$`60`\`;\`4P`%``7_____````'$%B;W5T('1H92!.971(86-K
- XM(%=O<FM"96YC:````````*,`1`!M``H````#``$'T/$4``````?0[Z``````
- XM```````%!]#P8/____\!```%!]#Q)````````````&X```!N``L````+````
- XM```````!``$``"@``@`````'T.WP``````````5/:V%Y`````!(````!!]#N
- XMF`?0[P@'T/"(!]#QD`?0\)@'T/%``````0`````!``````$`````#$=!1$A%
- XM3%!/2T%9``````$``````0`#``$```@`#0`````'T/(0!]#R0````"94:&4@
- XM3F5T2&%C:R!7;W)K0F5N8V@@=V%S(&1E<VEG;F5D(&)Y``(``0`!-@`-````
- XM``?0\F`'T/+0````"TME;B!,;W)B97(``P`!``&,``T`````!]#R>`?0\O``
- XM```$86YD``(``0``"``6``````?0\U`'T/-H````#T=R96=G(%=O;F1E<FQY
- XM``,``0``>``6``````?0\X@'T/.8`````BX``P`!``"'`!8`````!]#SN`?0
- XM\^@````G5&AE('!R;V=R86UM:6YG('=A<R!S=&%R=&5D(&)Y($ME;B!A;F0`
- XM`P`!```(`!\`````!]#T"`?0]"@````59FEN:7-H960@8GD@1W)E9V<N+BX`
- XM`@`!```4`"\`````!]#T2`?0](@````S2&%C:U="(&ES(&-O<'ER:6=H="!'
- XM<F5G9R!7;VYD97)L>2!A;F0@2V5N($QO<F)E<BP``@`!```*`#@`````!]#T
- XMJ``````````V,3DY,B!S964@3F5T2&%C:R!L:6-E;G-E(&9O<B!D971A:6QS
- XM(&%N9"!L:6UI=&%T:6]N<R$```(0#@!@`F``!0`%_____P``````````````
- XM```````````````````#!]#$\```````!TAE;'`S7P```0!+``D![@"]``4`
- XM!?____\````@2&5L<"!F;W(@3F5T:&%C:R!7;W)K0F5N8V@@5C,N,0`'T0GH
- XM``P`K0`O``H````#``$'T.%<``````?0X$`````````````#!]#@L/____\"
- XM```%!]#A;````````````#`````P``L````+```````````!``$```@``@``
- XM```'T-Q(``````````5&4E=$`````!(````#!]#@8`?0X-@'T.&(!]#D&`?0
- XMY#`'T.1``````0`````!``````$`````#$=!1$A%3%!&4E=$``````$`````
- XM`0`'T0I``;(`K0`O``H````#``$'T0H4``````?0Y%`````````````$!]#E
- XM</____\"```%!]$*)````````````#`````P``L````+```````````!``$`
- XM``@``@`````'T.1P``````````5"2U=$`````!(````#!]#E0`?0Y9@'T.6H
- XM!]#F$`?0YB@'T.8X`````0`````!``````$`````#$=!1$A%3%!"2U=$````
- XM``$``````0```````,(`L``A``@``P`#``$'T.9(````````````````````
- XM`/__!]$*F/____\#```%!]$*?````````````"(````B``D````)``````?0
- XMYDC_0/_Y`0```@?0[D@`````````"``````!Z0``````"0`#``$'T.Y8!]#O
- XM@`?0[Y`'T0K`!]$*T`?1"N`````!``````$``````0`````#+3$``````0``
- XM```!```"$`X`)`)@``4`!?____\`````!]$5T```````````````````````
- XM!`?05,````````52<W1?```"`+$`/`$G`#D`!0`%_____P```!-296-O=F5R
- XM(%!A<F%M971E<G,`!]#<F`!E``\`N@`)```"`P`$!]#`%```````````````
- XM``?0P\````?0P_#_____`P``!0?0P"0```````````"[````NP`*````"@``
- XM```````````!+```````!``;``!H*``./\_XA`!$``````*``,C__P``)0``
- XM`A!'````````````.0?4````````````*``>_____P`!``D````!``(``P`(
- XM``0`!0`'``D`!@,``0`!F@`!```````Y""`````````````'````.)FF``$`
- XM.)HF``(`.)GF``,`.)DF``0`.)IF``4`.)JF``8`.)EF```````!```````!
- XM```````!```````!```````!`````````````0````````````$```````$`
- XM``````$```````$```````$``````````````````0```````0```````0!I
- XM``0!MP"^``$```````(00``XF#H```````````````````````4``````0H`
- XM``(!!]!4T`?0PK`'T,08!]#$H`?0Q+@'T,3(````"%)E<W1$:7(``````0``
- XM```!``````M'041215-41$E2``````$``````0`'T1@P`&4`'`"Z``D```(#
- XM``0'T-S$````````````````!]#<"```!]#:(/____\#```%!]#<U```````
- XM`````+L```"[``H````*``````````````$L```````$`!L``&@H``X_S_B$
- XM`$0``````H``R/__```E```"$$<````````````Y!]0````````````H`![_
- XM____``$`"0````$``@`#``@`!``%``<`"0`&`P`!``&:``$``````#D((```
- XM``````````<````XF:8``0`XFB8``@`XF>8``P`XF28`!``XFF8`!0`XFJ8`
- XM!@`XF68```````$```````$```````$```````$```````$````````````!
- XM`````````````0```````0```````0```````0```````0``````````````
- XM```!```````!```````!`&D`!`&W`+X``0```````A!``#B8.@``````````
- XM````````````!0`````!"@```@$'T-PX!]#<\`?0W9@'T-ZX!]#=J`?0WM``
- XM```(4F5S=$]L9``````!``````$`````"T=!1%)%4U1/3$0``````0`````!
- XM``?1&Y@`"@`J`#D`"@````,``0?1&%P`````!]#?(`````````````4'T-^(
- XM_____P,```4'T1AL````````````.@```#H`"P````L```````````$`````
- XM#``!``````?0WT``````````!4]K87D`````"@````$'T-^P!]#?4`?0Y;@'
- XMT/5(!]#W$`?0^=`````)4F5S=$]K87D``````0`````!``````Q'041215-4
- XM3TM!60`````!``````$```````#F`"H`.0`*`````P`!!]$;Q``````'T0,8
- XM````````````!@?1%'C_____`P``!0?1&]0````````````Z````.@`+````
- XM"P```````````0`````%``$`````!]$#D``````````'0V%N8V5L``````H`
- XM```!!]$#H`?1%0@'T148!]$5*`?1%;`'T17`````"U)E<W1#86YC96P`````
- XM`0`````!``````M'041215-40T%.``````$``````0`!``````X`#P`````'
- XMT1>`!]$7F`````M$:7)E8W1O<GDZ``$`````$@`=``````?1&(@`````````
- X+"D]L9"!&:6QE.@!$
- X`
- Xend
- END_OF_FILE
- if test 30237 -ne `wc -c <'sys/amiga/wbwin.uu'`; then
- echo shar: \"'sys/amiga/wbwin.uu'\" unpacked with wrong size!
- fi
- # end of 'sys/amiga/wbwin.uu'
- if test -f 'sys/mac/mttymain.c' -a "${1}" != "-c" ; then
- echo shar: Renaming existing file \"'sys/mac/mttymain.c'\" to \"'sys/mac/mttymain.c.orig'\"
- mv -f 'sys/mac/mttymain.c' 'sys/mac/mttymain.c.orig'
- fi
- echo shar: Extracting \"'sys/mac/mttymain.c'\" \(14469 characters\)
- sed "s/^X//" >'sys/mac/mttymain.c' <<'END_OF_FILE'
- X/* SCCS Id: @(#)mttymain.c 3.1 93/02/26 */
- X/* Copyright (c) Jon W{tte, 1993 */
- X/* NetHack may be freely redistributed. See license for details. */
- X
- X#include "hack.h"
- X#include "wintty.h"
- X#include "mactty.h"
- X
- X#include <stdarg.h>
- X#include <Menus.h>
- X
- Xextern void InitRes ( void ) ;
- Xextern Boolean small_screen ;
- Xextern void DoMenu ( long ) ;
- Xextern void UpdateMenus ( void ) ;
- Xextern int GetFromKeyQueue ( void ) ;
- Xextern void dprintf ( char * , ... ) ;
- X
- X
- X#define POWER_LIMIT 22
- X#define SECONDARY_POWER_LIMIT 16
- X#define CHANNEL_LIMIT 14
- X#define SECONDARY_CHANNEL_LIMIT 12
- X
- X#define MT_WINDOW 135
- X#define MT_WIDTH 80
- Xstatic short MT_HEIGHT = 24;
- X
- X
- X/*
- X * Names:
- X *
- X * Statics are prefixed _
- X * Mac-tty becomes mt_
- X */
- X
- X
- Xstatic void _mt_set_colors ( long * colors ) ;
- X
- X
- Xstatic long _mt_attrs [ 5 ] [ 2 ] = {
- X { 0x202020 , 0xffffff } , /* Normal */
- X { 0xff8080 , 0xffffff } , /* Underline */
- X { 0x40c020 , 0xe0e0e0 } , /* Bold */
- X { 0x003030 , 0xff0060 } , /* Blink */
- X { 0xff8888 , 0x000000 } , /* Inverse */
- X} ;
- X
- X
- Xstatic char _attrs_inverse [ 5 ] = {
- X 0 , 0 , 0 , 0 , 0 ,
- X} ;
- X
- X
- X#if 0
- X#define BLACK 0
- X#define RED 1
- X#define GREEN 2
- X#define BROWN 3 /* on IBM, low-intensity yellow is brown */
- X#define BLUE 4
- X#define MAGENTA 5
- X#define CYAN 6
- X#define GRAY 7 /* low-intensity white */
- X#define NO_COLOR 8
- X#define ORANGE_COLORED 9 /* "orange" conflicts with the object */
- X#define BRIGHT_GREEN 10
- X#define YELLOW 11
- X#define BRIGHT_BLUE 12
- X#define BRIGHT_MAGENTA 13
- X#define BRIGHT_CYAN 14
- X#define WHITE 15
- X#define MAXCOLORS 16
- X#endif
- X
- Xstatic long _mt_colors [ 16 ] [ 2 ] = {
- X { 0x000000 , 0xaaaaaa } , /* Black */
- X { 0x880000 , 0xffffff } , /* Red */
- X { 0x008800 , 0xffffff } , /* Green */
- X { 0x553300 , 0xffffff } , /* Brown */
- X { 0x000088 , 0xffffff } , /* Blue */
- X { 0x770077 , 0xffffff } , /* Magenta */
- X { 0x007777 , 0xffffff } , /* Cyan */
- X { 0x888888 , 0xffffff } , /* Gray */
- X { 0x222222 , 0xffffff } , /* No Color */
- X { 0xeeee00 , 0x606060 } , /* Orange */
- X { 0x00ff00 , 0x606060 } , /* Bright Green */
- X { 0xeeee00 , 0x606060 } , /* Yellow */
- X { 0x0000ff , 0x606060 } , /* Bright Blue */
- X { 0xee00ee , 0x606060 } , /* Bright Magenta */
- X { 0x00eeee , 0x606060 } , /* Bright Cyan */
- X { 0x000000 , 0xffffff } , /* White */
- X} ;
- X
- Xstatic char _colors_inverse [ MAXCOLORS ] = {
- X 1 , 0 , 0 , 0 ,
- X 0 , 0 , 0 , 0 ,
- X 0 , 0 , 0 , 0 ,
- X 0 , 0 , 0 , 0 ,
- X} ;
- X
- X
- X#ifdef CHANGE_COLOR
- X
- Xvoid
- Xtty_change_color ( int color , long rgb , int reverse ) {
- Xlong inverse = 0 , the_rgb = rgb ;
- Xint total_power = 0 , max_channel = 0 ;
- Xint cnt = 3 ;
- X
- X the_rgb >>= 4 ;
- X while ( cnt -- > 0 ) {
- X total_power += the_rgb & 0xf ;
- X max_channel = max ( max_channel , the_rgb & 0xf ) ;
- X the_rgb >>= 8 ;
- X }
- X
- X if ( total_power >= POWER_LIMIT ||
- X ( total_power >= SECONDARY_POWER_LIMIT &&
- X max_channel >= SECONDARY_CHANNEL_LIMIT ) ||
- X max_channel >= CHANNEL_LIMIT ) {
- X inverse = 0x000000 ;
- X } else {
- X inverse = 0xffffff ;
- X }
- X
- X if ( reverse ) {
- X long rev = rgb ;
- X
- X rgb = inverse ;
- X inverse = rev ;
- X }
- X
- X if ( color >= MAXCOLORS ) {
- X if ( color - MAXCOLORS >= 5 ) {
- X impossible ( "Changing too many colors" ) ;
- X return ;
- X }
- X _mt_attrs [ color - MAXCOLORS ] [ 0 ] = rgb ;
- X _mt_attrs [ color - MAXCOLORS ] [ 1 ] = inverse ;
- X _attrs_inverse [ color - MAXCOLORS ] = reverse ;
- X } else if ( color >= 0 ) {
- X _mt_colors [ color ] [ 0 ] = rgb ;
- X _mt_colors [ color ] [ 1 ] = inverse ;
- X _colors_inverse [ color ] = reverse ;
- X } else {
- X impossible ( "Changing negative color" ) ;
- X }
- X}
- X
- X
- Xstatic char color_buf [ 5 * ( MAXCOLORS + 5 ) + 1 ] ;
- X
- Xchar *
- Xtty_get_color_string ( void ) {
- Xchar tmp [ 10 ] ;
- Xint count ;
- X
- X color_buf [ 0 ] = 0 ;
- X
- X for ( count = 0 ; count < MAXCOLORS ; count ++ ) {
- X int flag = _colors_inverse [ count ] ? 1 : 0 ;
- X
- X sprintf ( tmp , "%s%s%x%x%x" , count ? "/" : "" ,
- X flag ? "-" : "" ,
- X ( _mt_colors [ count ] [ flag ] >> 20 ) & 0xf ,
- X ( _mt_colors [ count ] [ flag ] >> 12 ) & 0xf ,
- X ( _mt_colors [ count ] [ flag ] >> 4 ) & 0xf ) ;
- X strcat ( color_buf , tmp ) ;
- X }
- X for ( count = 0 ; count < 5 ; count ++ ) {
- X int flag = _colors_inverse [ count ] ? 1 : 0 ;
- X
- X sprintf ( tmp , "/%s%x%x%x" ,
- X flag ? "-" : "" ,
- X ( _mt_attrs [ count ] [ flag ] >> 20 ) & 0xf ,
- X ( _mt_attrs [ count ] [ flag ] >> 12 ) & 0xf ,
- X ( _mt_attrs [ count ] [ flag ] >> 4 ) & 0xf ) ;
- X strcat ( color_buf , tmp ) ;
- X }
- X
- X return color_buf ;
- X}
- X#endif
- X
- X
- Xextern struct DisplayDesc *ttyDisplay; /* the tty display descriptor */
- X
- Xchar kill_char = 27 ;
- Xchar erase_char = 8 ;
- X
- XWindowPtr _mt_window = NULL ;
- Xstatic Boolean _mt_in_color = 0 ;
- X
- X
- Xstatic void
- X_mt_init_stuff ( void )
- X{
- Xlong resp , flag ;
- Xshort num_cols , num_rows , win_width , win_height , font_num , font_size ;
- Xshort char_width , row_height ;
- Xshort hor , vert ;
- X
- X#if 1
- X if ( windowprocs == mac_procs ) {
- X dprintf ( "Mac Windows" ) ;
- X MT_HEIGHT -= 1 ;
- X } else {
- X dprintf ( "TTY Windows" ) ;
- X }
- X#else
- X if (!strcmp(windowprocs.name, "mac")) {
- X MT_HEIGHT -= 1; /* the message box is in a separate window */
- X }
- X#endif
- X
- X LI = MT_HEIGHT ;
- X CO = MT_WIDTH ;
- X
- X /*
- X * If there is at least one screen CAPABLE of color, and if
- X * 32-bit QD is there, we use color. 32-bit QD is needed for the
- X * offscreen GWorld
- X */
- X if ( ! Gestalt ( gestaltQuickdrawVersion , & resp ) && resp > 0x1ff ) {
- X GDHandle gdh ;
- X
- X gdh = GetDeviceList ( ) ;
- X while ( gdh ) {
- X if ( TestDeviceAttribute ( gdh , screenDevice ) ) {
- X if ( HasDepth ( gdh , 8 , 1 , 1 ) ||
- X HasDepth ( gdh , 12 , 1 , 1 ) || /* Intuition tells me this may happen
- X on color LCDs */
- X HasDepth ( gdh , 16 , 1 , 1 ) ||
- X HasDepth ( gdh , 4 , 1 , 1 ) || /* why here!? */
- X HasDepth ( gdh , 32 , 1 , 1 ) ) {
- X
- X _mt_in_color = 1 ;
- X break ;
- X }
- X }
- X gdh = GetNextDevice ( gdh ) ;
- X }
- X }
- X
- X mustwork ( create_tty ( & _mt_window , MT_WINDOW , _mt_in_color ) ) ;
- X ( ( WindowPeek ) _mt_window ) -> windowKind = ( WIN_BASE_KIND + NHW_MAP ) ;
- X SelectWindow ( _mt_window ) ;
- X SetPort ( _mt_window ) ;
- X SetOrigin ( -3 , -3 ) ;
- X font_num = 0 ;
- X font_size = ( flags.large_font && ! small_screen ) ? 12 : 9 ;
- X GetFNum ( "\PHackFont" , & font_num ) ;
- X if ( font_num != 0 ) {
- X mustwork ( init_tty_number ( _mt_window , font_num , font_size ,
- X MT_WIDTH , MT_HEIGHT + 1 ) ) ;
- X } else {
- X mustwork ( init_tty_name ( _mt_window , "\PMonaco" , font_size ,
- X MT_WIDTH , MT_HEIGHT + 1 ) ) ;
- X }
- X
- X mustwork ( get_tty_metrics ( _mt_window , & num_cols , & num_rows , & win_width ,
- X & win_height , & font_num , & font_size , & char_width , & row_height ) ) ;
- X
- X SizeWindow ( _mt_window , win_width + 6 , win_height + 6 , 1 ) ;
- X dprintf ( "Checking for TTY window position" ) ;
- X if ( RetrievePosition ( kMapWindow , & vert , & hor ) ) {
- X dprintf ( "\PMoving window to (%d,%d)" , hor , vert ) ;
- X MoveWindow ( _mt_window , hor , vert , 1 ) ;
- X }
- X ShowWindow ( _mt_window ) ;
- X SetPort ( _mt_window ) ;
- X
- X mustwork ( get_tty_attrib ( _mt_window , TTY_ATTRIB_FLAGS , & flag ) ) ;
- X/* Start in raw, always flushing mode */
- X flag |= TA_ALWAYS_REFRESH ;
- X mustwork ( set_tty_attrib ( _mt_window , TTY_ATTRIB_FLAGS , flag ) ) ;
- X
- X mustwork ( get_tty_attrib ( _mt_window , TTY_ATTRIB_CURSOR , & flag ) ) ;
- X flag |= TA_BLINKING_CURSOR | TA_WRAP_AROUND ;
- X#ifdef applec
- X flag &= ~ TA_CR_ADD_NL ;
- X#else
- X flag |= ~ TA_NL_ADD_CR ;
- X#endif
- X mustwork ( set_tty_attrib ( _mt_window , TTY_ATTRIB_CURSOR , flag ) ) ;
- X
- X InitRes ( ) ;
- X}
- X
- X
- Xstatic void
- X_mt_handle_event ( EventRecord * event ) {
- XRect r ;
- Xint code ;
- XWindowPtr window ;
- X
- X if ( event -> what == mouseDown ) {
- X r = ( * GetGrayRgn ( ) ) -> rgnBBox ;
- X InsetRect ( & r , 3 , 3 ) ;
- X
- X code = FindWindow ( event -> where , & window ) ;
- X switch ( code ) {
- X case inDrag :
- X DragWindow ( window , event -> where , & r ) ;
- X if ( window == _mt_window ) {
- X SaveWindowPos ( window ) ;
- X }
- X break ;
- X case inSysWindow :
- X SystemClick ( event , window ) ;
- X break ;
- X case inMenuBar :
- X UpdateMenus ( ) ;
- X DoMenu ( MenuSelect ( event -> where ) ) ;
- X break ;
- X default :
- X /* Do nothing */
- X ;
- X }
- X } else if ( event -> what == diskEvt ) {
- X if ( event -> message & 0xffff0000 != 0L ) {
- X Point p = { 100 , 100 } ;
- X
- X ( void ) itworked ( DIBadMount ( p , event -> message ) ) ;
- X }
- X }
- X}
- X
- X
- Xint
- Xtgetch ( void ) {
- XEventRecord event ;
- Xlong sleepTime = 0 ;
- Xint ret ;
- X
- X while ( 1 ) {
- X update_tty ( _mt_window ) ;
- X ret = GetFromKeyQueue ( ) ;
- X if ( ret ) {
- X return ret ;
- X }
- X WaitNextEvent ( -1 , & event , sleepTime , 0 ) ;
- X SetPort ( _mt_window ) ;
- X if ( handle_tty_event ( _mt_window , & event ) ) {
- X _mt_handle_event ( & event ) ;
- X }
- X if ( event . what == keyDown || event . what == autoKey ) {
- X if ( ! ( event . modifiers & cmdKey ) ) {
- X return ( event . message & 0xff ) ;
- X } else {
- X DoMenu ( MenuKey ( event . message & 0xff ) ) ;
- X }
- X } else if ( ! sleepTime ) {
- X Point p = event . where ;
- X GlobalToLocal ( & p ) ;
- X if ( PtInRect ( p , & ( _mt_window -> portRect ) ) ) {
- X ObscureCursor ( ) ;
- X } else {
- X InitCursor ( ) ;
- X }
- X }
- X if ( event . what == nullEvent ) {
- X sleepTime = GetCaretTime ( ) ;
- X } else {
- X sleepTime = 0 ;
- X }
- X }
- X}
- X
- X
- Xvoid
- Xgetreturn ( char * str ) {
- X FlushEvents ( -1 , 0 ) ;
- X printf_tty ( _mt_window , "Press space %s" , str ) ;
- X ( void ) tgetch ( ) ;
- X}
- X
- X
- Xint
- Xhas_color ( int color ) {
- X#if defined(applec)
- X# pragma unused(color)
- X#endif
- XRect r;
- XPoint p = { 0 , 0 } ;
- XGDHandle gh ;
- X
- X if ( ! _mt_in_color ) {
- X return 0 ;
- X }
- X
- X r = _mt_window -> portRect ;
- X SetPort ( _mt_window ) ;
- X GlobalToLocal ( & p ) ;
- X OffsetRect ( & r , p . h , p . v ) ;
- X
- X gh = GetMaxDevice ( & r ) ;
- X if ( ! gh ) {
- X return 0 ;
- X }
- X
- X return ( * ( ( * gh ) -> gdPMap ) ) -> pixelSize > 4 ; /* > 4 bpp */
- X}
- X
- X
- Xvoid
- Xtty_delay_output ( void ) {
- XEventRecord event ;
- Xlong toWhen = TickCount ( ) + 3 ;
- X
- X while ( TickCount ( ) < toWhen ) {
- X WaitNextEvent ( updateMask , & event , 3L , 0 ) ;
- X if ( event . what == updateEvt ) {
- X if ( ! handle_tty_event ( _mt_window , & event ) ) {
- X _mt_handle_event ( & event ) ;
- X }
- X }
- X }
- X}
- X
- X
- Xvoid
- Xtty_nhbell ( void ) {
- X SysBeep ( 20 ) ;
- X}
- X
- X
- Xvoid
- Xcmov ( int x , int y ) {
- X move_tty_cursor ( _mt_window , x , y ) ;
- X ttyDisplay -> cury = y ;
- X ttyDisplay -> curx = x ;
- X}
- X
- X
- Xvoid
- Xnocmov ( int x , int y ) {
- X cmov ( x , y ) ;
- X}
- X
- X
- Xstatic void
- X_mt_set_colors ( long * colors ) {
- Xshort err ;
- X
- X if ( ! _mt_in_color ) {
- X return ;
- X }
- X err = set_tty_attrib ( _mt_window , TTY_ATTRIB_FOREGROUND , colors [ 0 ] ) ;
- X err = set_tty_attrib ( _mt_window , TTY_ATTRIB_BACKGROUND , colors [ 1 ] ) ;
- X}
- X
- X
- Xvoid
- Xterm_end_attr ( int attr ) {
- X#if defined(applec)
- X# pragma unused ( attr )
- X#endif
- X _mt_set_colors ( _mt_attrs [ 0 ] ) ;
- X}
- X
- X
- Xvoid
- Xterm_start_attr ( int attr ) {
- X switch ( attr ) {
- X case ATR_ULINE:
- X _mt_set_colors ( _mt_attrs [ 1 ] ) ;
- X break ;
- X case ATR_BOLD:
- X _mt_set_colors ( _mt_attrs [ 2 ] ) ;
- X break ;
- X case ATR_BLINK:
- X _mt_set_colors ( _mt_attrs [ 3 ] ) ;
- X break ;
- X case ATR_INVERSE:
- X _mt_set_colors ( _mt_attrs [ 4 ] ) ;
- X break ;
- X default:
- X _mt_set_colors ( _mt_attrs [ 0 ] ) ;
- X break ;
- X }
- X}
- X
- X
- Xvoid
- Xstandoutend ( void ) {
- X term_end_attr ( ATR_INVERSE ) ;
- X}
- X
- X
- Xvoid
- Xstandoutbeg ( void ) {
- X term_start_attr ( ATR_INVERSE ) ;
- X}
- X
- X
- Xvoid
- Xxputs ( char * str ) {
- Xshort err ;
- X
- X err = add_tty_string ( _mt_window , str ) ;
- X}
- X
- X
- Xvoid
- Xterm_end_color ( void ) {
- X _mt_set_colors ( _mt_colors [ NO_COLOR ] ) ;
- X}
- X
- X
- Xvoid
- Xcl_end ( void ) {
- Xshort err ;
- X
- X _mt_set_colors ( _mt_attrs [ 0 ] ) ;
- X err = clear_tty_window ( _mt_window , ttyDisplay -> curx , ttyDisplay -> cury ,
- X MT_WIDTH - 1 , ttyDisplay -> cury ) ;
- X}
- X
- X
- Xvoid
- Xclear_screen ( void ) {
- Xshort err ;
- X
- X _mt_set_colors ( _mt_attrs [ 0 ] ) ;
- X err = clear_tty ( _mt_window ) ;
- X}
- X
- X
- Xvoid
- Xcl_eos ( void ) {
- Xshort err ;
- X
- X cl_end ( ) ;
- X _mt_set_colors ( _mt_attrs [ 0 ] ) ;
- X err = clear_tty_window ( _mt_window , 0 , ttyDisplay -> cury + 1 , MT_WIDTH - 1 ,
- X MT_HEIGHT - 1 ) ;
- X}
- X
- X
- Xvoid
- Xhome ( void ) {
- Xshort err ;
- X
- X err = move_tty_cursor ( _mt_window , 0 , 0 ) ;
- X ttyDisplay -> curx = 0 ;
- X ttyDisplay -> cury = 0 ;
- X}
- X
- X
- Xvoid
- Xbacksp ( void ) {
- Xshort err ;
- X
- X err = add_tty_char ( _mt_window , 8 ) ;
- X err = add_tty_char ( _mt_window , 32 ) ;
- X err = add_tty_char ( _mt_window , 8 ) ;
- X err = update_tty ( _mt_window ) ;
- X}
- X
- X
- Xvoid
- Xmsmsg ( const char * str , ... ) {
- Xva_list args ;
- Xchar * buf = alloc ( 1000 ) ;
- X
- X va_start ( args , str ) ;
- X vsprintf ( buf , str , args ) ;
- X va_end ( args ) ;
- X
- X xputs ( buf ) ;
- X free ( buf ) ;
- X}
- X
- X
- Xvoid
- Xterm_end_raw_bold ( void ) {
- X standoutend ( ) ;
- X}
- X
- X
- Xvoid
- Xterm_start_raw_bold ( void ) {
- X standoutbeg ( ) ;
- X}
- X
- X
- Xvoid
- Xterm_start_color ( int color ) {
- X if ( color >= 0 && color < MAXCOLORS ) {
- X _mt_set_colors ( _mt_colors [ color ] ) ;
- X }
- X}
- X
- X
- Xvoid
- Xsetftty ( void ) {
- Xlong flag ;
- X
- X mustwork ( get_tty_attrib ( _mt_window , TTY_ATTRIB_FLAGS , & flag ) ) ;
- X/* Buffered output in the game */
- X flag &= ~ TA_ALWAYS_REFRESH ;
- X flag |= TA_INHIBIT_VERT_SCROLL ; /* don't scroll */
- X mustwork ( set_tty_attrib ( _mt_window , TTY_ATTRIB_FLAGS , flag ) ) ;
- X
- X mustwork ( get_tty_attrib ( _mt_window , TTY_ATTRIB_CURSOR , & flag ) ) ;
- X#ifdef applec
- X flag &= ~ TA_CR_ADD_NL ;
- X#else
- X flag |= ~ TA_NL_ADD_CR ;
- X#endif
- X mustwork ( set_tty_attrib ( _mt_window , TTY_ATTRIB_CURSOR , flag ) ) ;
- X
- X flags . cbreak = 1 ;
- X}
- X
- X
- Xvoid
- Xtty_startup ( int * width , int * height ) {
- X _mt_init_stuff ( ) ;
- X * width = MT_WIDTH ;
- X * height = MT_HEIGHT ;
- X}
- X
- X
- Xvoid
- Xgettty ( void ) {
- X}
- X
- X
- Xvoid
- Xsettty ( char * str ) {
- Xlong flag ;
- X
- X update_tty ( _mt_window ) ;
- X
- X mustwork ( get_tty_attrib ( _mt_window , TTY_ATTRIB_FLAGS , & flag ) ) ;
- X/* Buffered output in the game, raw in "raw" mode */
- X flag &= ~ TA_INHIBIT_VERT_SCROLL ; /* scroll */
- X flag |= TA_ALWAYS_REFRESH ;
- X mustwork ( set_tty_attrib ( _mt_window , TTY_ATTRIB_FLAGS , flag ) ) ;
- X
- X mustwork ( get_tty_attrib ( _mt_window , TTY_ATTRIB_CURSOR , & flag ) ) ;
- X#ifdef applec
- X flag |= TA_CR_ADD_NL ;
- X#else
- X flag |= TA_NL_ADD_CR ;
- X#endif
- X mustwork ( set_tty_attrib ( _mt_window , TTY_ATTRIB_CURSOR , flag ) ) ;
- X
- X tty_raw_print ( "\n" ) ;
- X if ( str ) {
- X tty_raw_print ( str ) ;
- X }
- X}
- X
- X
- Xvoid
- Xtty_number_pad ( int arg ) {
- X#if defined(applec)
- X# pragma unused(arg)
- X#endif
- X}
- X
- X
- Xvoid
- Xtty_start_screen ( void ) {
- X flags . cbreak = 1 ;
- X}
- X
- X
- Xvoid
- Xtty_end_screen ( void ) {
- X}
- X
- X
- Xint
- Xterm_puts ( char * str ) {
- X xputs ( str ) ;
- X return strlen ( str ) ;
- X}
- X
- X
- Xint
- Xterm_putc ( int c ) {
- Xshort err ;
- X
- X err = add_tty_char ( _mt_window , c ) ;
- X return err ? EOF : c ;
- X}
- X
- X
- Xint
- Xterm_flush ( void * desc ) {
- X if ( desc == stdout || desc == stderr ) {
- X update_tty ( _mt_window ) ;
- X } else {
- X impossible ( "Substituted flush for file" ) ;
- X return fflush ( desc ) ;
- X }
- X return 0 ;
- X}
- END_OF_FILE
- if test 14469 -ne `wc -c <'sys/mac/mttymain.c'`; then
- echo shar: \"'sys/mac/mttymain.c'\" unpacked with wrong size!
- fi
- # end of 'sys/mac/mttymain.c'
- if test -f 'sys/msdos/video.c' -a "${1}" != "-c" ; then
- echo shar: Renaming existing file \"'sys/msdos/video.c'\" to \"'sys/msdos/video.c.orig'\"
- mv -f 'sys/msdos/video.c' 'sys/msdos/video.c.orig'
- fi
- echo shar: Extracting \"'sys/msdos/video.c'\" \(12337 characters\)
- sed "s/^X//" >'sys/msdos/video.c' <<'END_OF_FILE'
- X/* SCCS Id: @(#)video.c 3.1 93/05/09 */
- X/* Copyright (c) NetHack PC Development Team 1993 */
- X/* NetHack may be freely redistributed. See license for details. */
- X/* */
- X/*
- X * video.c - Hardware video support
- X *
- X *Edit History:
- X * Initial Creation M. Allison 93/04/04
- X * Add colour support M. Allison 93/04/06
- X * Fix cl_end() M. Allison 93/04/11
- X * Use CO,LI in decl.c M. Allison 93/04/24
- X * Add djgpp support K. Smolkowski 93/04/26
- X * Add runtime monoadapter check M. Allison 93/05/09
- X */
- X
- X#include "hack.h"
- X
- X#include <dos.h>
- X
- X#ifdef SCREEN_BIOS
- X#define MONO_CHECK /* Enable monochrome adapter support */
- X#endif
- X
- X/*
- X * PC interrupts
- X */
- X#ifdef PC9801
- X#define CRT_BIOS 0x18
- X#else
- X#define VIDEO_BIOS 0x10
- X#endif
- X#define DOSCALL 0x21
- X
- X/*
- X * Character Attributes
- X */
- X#define ATTRIB_NORMAL 0x07 /* Normal attribute */
- X#define ATTRIB_INTENSE 0x0f /* Intense White */
- X#ifdef MONO_CHECK
- X#define ATTRIB_MONO_UNDERLINE 0x01 /* Underlined,white */
- X#define ATTRIB_MONO_BLINK 0x87 /* Flash bit, white */
- X#define ATTRIB_MONO_REVERSE 0x70 /* Black on white */
- X#endif
- X/*
- X * Video BIOS functions
- X */
- X#ifdef PC9801
- X#define SETCURPOS 0x13 /* Set Cursor Position */
- X#define SENSEMODE 0x0b /* Sense CRT Mode */
- X#else
- X#define GETCURPOS 0x03 /* Get Cursor Position */
- X#define SETCURPOS 0x02 /* Set Cursor Position */
- X#define GETMODE 0x0f /* Get Video Mode */
- X#define SETMODE 0x00 /* Set Video Mode */
- X#define SETPAGE 0x05 /* Set Video Page */
- X#define FONTINFO 0x1130 /* Get Font Info */
- X#define SCROLL 0x06 /* Scroll or initialize window */
- X#define PUTCHARATT 0x09 /* Write attribute & char at cursor */
- X#endif
- X
- X#ifdef OVLB
- X
- Xvoid
- Xget_scr_size()
- X{
- X union REGS regs;
- X
- X if (!flags.BIOS) { /* assume standard screen size */
- X CO = 80;
- X LI = 24;
- X return;
- X }
- X
- X# ifdef PC9801
- X regs.h.ah = SENSEMODE;
- X int86(CRT_BIOS, ®s, ®s);
- X
- X LI = (regs.h.al & 0x01) ? 20 : 25;
- X CO = (regs.h.al & 0x02) ? 40 : 80;
- X# else
- X regs.x.ax = FONTINFO;
- X regs.x.bx = 0; /* current ROM BIOS font */
- X regs.h.dl = 24; /* default row count */
- X /* in case no EGA/MCGA/VGA */
- X int86(VIDEO_BIOS, ®s, ®s); /* Get Font Information */
- X
- X /* MDA/CGA/PCjr ignore INT 10h, Function 11h, but since we
- X * cleverly loaded up DL with the default, everything's fine.
- X *
- X * Otherwise, DL now contains rows - 1. Also, CX contains the
- X * points (bytes per character) and ES:BP points to the font
- X * table. -3.
- X */
- X
- X regs.h.ah = GETMODE;
- X int86(VIDEO_BIOS, ®s, ®s); /* Get Video Mode */
- X
- X /* This goes back all the way to the original PC. Completely
- X * safe. AH contains # of columns, AL contains display mode,
- X * and BH contains the active display page.
- X */
- X
- X LI = regs.h.dl + 1;
- X CO = regs.h.ah;
- X# endif /* PC9801 */
- X}
- X#endif
- X
- X#ifdef NO_TERMS
- X
- X#include "wintty.h"
- X
- X# ifdef SCREEN_DJGPPFAST
- X#include <pc.h>
- X# endif
- X
- Xvoid FDECL(cmov, (int, int));
- Xvoid FDECL(nocmov, (int, int));
- X
- X# ifdef TEXTCOLOR
- Xchar ttycolors[MAXCOLORS];
- Xstatic void NDECL(init_ttycolor);
- X# endif
- X
- X# ifdef SCREEN_BIOS
- Xvoid FDECL(gotoxy, (int,int));
- Xvoid FDECL(get_cursor, (int *, int *));
- X# ifdef MONO_CHECK
- Xint NDECL(monoadapt_check);
- X# endif
- X# endif
- X
- X# ifdef SCREEN_DJGPPFAST
- X#define gotoxy(x,y) ScreenSetCursor(y,x)
- X#define get_cursor(x,y) ScreenGetCursor(y,x)
- X# endif
- X
- X/*
- X * LI, CO are ifdefs of a data structure in decl.c, and are initialized
- X * by get_scr_size()
- X */
- X/*extern int LI, CO; */ /* decl.h does this already */
- Xchar g_attribute; /* Current attribute to use */
- X
- X# ifdef MONO_CHECK
- Xint monoflag; /* 0 = not monochrome, else monochrome */
- X# endif
- X
- X#ifdef OVLB
- X
- Xvoid
- Xbacksp()
- X{
- X int x,y;
- X
- X get_cursor(&x, &y);
- X if (x > 0) x = x-1;
- X gotoxy(x,y);
- X xputc(' ');
- X gotoxy(x,y);
- X}
- X
- X#endif /* OVLB */
- X#ifdef OVL0
- X
- Xvoid
- Xclear_screen()
- X/* djgpp provides ScreenClear(), but in version 1.09 it is broken
- X * so for now we just use the BIOS Routines
- X */
- X{
- X union REGS regs;
- X
- X regs.h.dl = CO - 1; /* columns */
- X regs.h.dh = LI - 1; /* rows */
- X regs.x.cx = 0; /* CL,CH = x,y of upper left */
- X regs.x.ax = 0;
- X regs.x.bx = 0;
- X regs.h.bh = ATTRIB_NORMAL;
- X regs.h.ah = SCROLL;
- X /* DL,DH = x,y of lower right */
- X int86(VIDEO_BIOS, ®s, ®s); /* Scroll or init window */
- X gotoxy(0,0);
- X}
- X
- Xvoid
- Xcl_end() /* clear to end of line */
- X{
- X union REGS regs;
- X int x,y,count;
- X
- X x = ttyDisplay->curx;
- X y = ttyDisplay->cury;
- X gotoxy(x,y);
- X count = CO - x;
- X regs.h.ah = PUTCHARATT; /* write attribute & character */
- X regs.h.al = ' '; /* character */
- X regs.h.bh = 0; /* display page */
- X /* BL = attribute */
- X regs.h.bl = ATTRIB_NORMAL;
- X regs.x.cx = count;
- X if (count != 0)
- X int86(VIDEO_BIOS, ®s, ®s); /* write attribute
- X & character */
- X tty_curs(BASE_WINDOW, (int)ttyDisplay->curx+1,
- X (int)ttyDisplay->cury);
- X}
- X
- Xvoid
- Xcl_eos() /* clear to end of screen */
- X{
- X union REGS regs;
- X int x,y;
- X
- X get_cursor(&x, &y);
- X cl_end(); /* clear to end of line */
- X gotoxy(0,(y < (LI-1) ? y+1 : (LI-1)));
- X regs.h.dl = CO-1; /* X of lower right */
- X regs.h.dh = LI-1; /* Y of lower right */
- X regs.h.cl = 0; /* X of upper left */
- X /* Y (row) of upper left */
- X regs.h.ch = (y < (LI-1) ? y+1 :(LI-1));
- X regs.x.cx = 0;
- X regs.x.ax = 0;
- X regs.x.bx = 0;
- X regs.h.bh = ATTRIB_NORMAL;
- X regs.h.ah = SCROLL;
- X int86(VIDEO_BIOS, ®s, ®s); /* Scroll or initialize window */
- X tty_curs(BASE_WINDOW, (int)ttyDisplay->curx+1,
- X (int)ttyDisplay->cury);
- X}
- X
- Xvoid
- Xcmov(x, y)
- Xregister int x, y;
- X{
- X ttyDisplay->cury = y;
- X ttyDisplay->curx = x;
- X gotoxy(x,y);
- X}
- X
- X# endif /* OVL0 */
- X# ifdef OVLB
- X
- Xint
- Xhas_color(int color)
- X{
- X# ifdef TEXTCOLOR
- X return
- X# ifdef MONO_CHECK
- X (monoflag) ? 0 :
- X# endif
- X 1;
- X# else
- X return 0;
- X# endif
- X}
- X
- X# endif /* OVLB */
- X# ifdef OVL0
- X
- Xvoid
- Xhome()
- X{
- X tty_curs(BASE_WINDOW, 1, 0);
- X ttyDisplay->curx = ttyDisplay->cury = 0;
- X gotoxy(0,0);
- X}
- X
- Xvoid
- Xnocmov(x, y)
- Xint x,y;
- X{
- X gotoxy(x,y);
- X}
- X
- Xvoid
- Xstandoutbeg()
- X{
- X g_attribute = ATTRIB_INTENSE; /* intense white */
- X}
- X
- Xvoid
- Xstandoutend()
- X{
- X g_attribute = ATTRIB_NORMAL; /* normal white */
- X}
- X
- X# endif /* OVL0 */
- X# ifdef OVLB
- X
- Xvoid
- Xterm_end_attr(int attr)
- X{
- X g_attribute = ATTRIB_NORMAL; /* normal white */
- X}
- X
- Xvoid
- Xterm_end_color(void)
- X{
- X g_attribute = ATTRIB_NORMAL; /* normal white (harmless) */
- X}
- X
- Xvoid
- Xterm_end_raw_bold(void)
- X{
- X standoutend();
- X}
- X
- Xvoid
- Xterm_start_attr(int attr)
- X{
- X switch(attr){
- X
- X case ATR_ULINE:
- X# ifdef MONO_CHECK
- X if (monoflag) {
- X g_attribute = ATTRIB_MONO_UNDERLINE;
- X } else {
- X g_attribute = ATTRIB_INTENSE;
- X }
- X break;
- X# endif
- X case ATR_BOLD:
- X g_attribute = ATTRIB_INTENSE;
- X break;
- X case ATR_BLINK:
- X# ifdef MONO_CHECK
- X if (monoflag) {
- X g_attribute = ATTRIB_MONO_BLINK;
- X } else {
- X g_attribute = ATTRIB_INTENSE;
- X }
- X break;
- X# endif
- X case ATR_INVERSE:
- X# ifdef MONO_CHECK
- X if (monoflag) {
- X g_attribute = ATTRIB_MONO_REVERSE;
- X } else {
- X g_attribute = ATTRIB_INTENSE;
- X }
- X break;
- X# endif
- X default:
- X g_attribute = ATTRIB_NORMAL;
- X break;
- X }
- X}
- X
- X
- Xvoid
- Xterm_start_color(int color)
- X{
- X# ifdef TEXTCOLOR
- X short attr;
- X
- X# ifdef MONO_CHECK
- X if (monoflag) {
- X g_attribute = ATTRIB_NORMAL;
- X } else {
- X# endif
- X if (color >= 0 && color < MAXCOLORS) {
- X g_attribute = ttycolors[color];
- X }
- X# ifdef MONO_CHECK
- X }
- X# endif
- X# endif
- X}
- X
- Xvoid
- Xterm_start_raw_bold(void)
- X{
- X standoutbeg();
- X}
- X
- X# endif /* OVLB */
- X# ifdef OVL1
- X
- Xvoid
- Xtty_delay_output()
- X{
- X /* delay 50 ms - not implimented */
- X}
- X# endif /* OVL1 */
- X
- X# ifdef OVLB
- Xvoid
- Xtty_end_screen()
- X{
- X clear_screen();
- X}
- X
- Xvoid
- Xtty_nhbell()
- X{
- X union REGS regs;
- X
- X if (flags.silent) return;
- X regs.h.dl = 0x07; /* bell */
- X regs.h.ah = 0x02; /* Character Output */
- X int86(DOSCALL, ®s, ®s);
- X}
- X
- Xvoid
- Xtty_number_pad(state)
- Xint state;
- X{
- X}
- X
- Xvoid
- Xtty_startup(wid, hgt)
- X int *wid, *hgt;
- X{
- X if (CO && LI) {
- X *wid = CO;
- X *hgt = LI;
- X } else {
- X *wid = CO = 80;
- X *hgt = LI = 25;
- X }
- X# ifdef MONO_CHECK
- X monoflag = monoadapt_check();
- X if (!monoflag) {
- X# endif
- X# ifdef TEXTCOLOR
- X init_ttycolor();
- X# endif
- X# ifdef MONO_CHECK
- X }
- X# endif
- X g_attribute = ATTRIB_NORMAL;
- X}
- X
- Xvoid
- Xtty_start_screen()
- X{
- X if (flags.num_pad) tty_number_pad(1); /* make keypad send digits */
- X}
- X
- X# endif /* OVLB */
- X# ifdef OVL0
- X
- Xvoid
- Xxputs(s)
- Xconst char *s;
- X{
- X char c;
- X int x,y;
- X
- X x = ttyDisplay->curx;
- X y = ttyDisplay->cury;
- X if (s != NULL) {
- X while (*s != '\0') {
- X gotoxy(x,y);
- X c = *s++;
- X xputc(c);
- X if (x < (CO-1)) x++;
- X gotoxy(x,y);
- X }
- X }
- X}
- X
- Xvoid
- Xxputc(ch) /* write out character (and attribute) */
- Xchar ch;
- X{
- X# ifdef SCREEN_BIOS
- X union REGS regs;
- X# endif
- X int x,y;
- X char attribute;
- X
- X attribute = (((g_attribute > 0) && (g_attribute < MAXCOLORS)) ?
- X g_attribute : ATTRIB_NORMAL);
- X
- X# ifdef SCREEN_DJGPPFAST
- X get_cursor(&x,&y);
- X ScreenPutChar((int)ch,(int)attribute,x,y);
- X# endif
- X
- X# ifdef SCREEN_BIOS
- X regs.h.ah = PUTCHARATT; /* write attribute & character */
- X regs.h.al = ch; /* character */
- X regs.h.bh = 0; /* display page */
- X /* BL = attribute */
- X# ifdef MONO_CHECK
- X regs.h.bl = ((g_attribute == 0) ? ATTRIB_NORMAL : g_attribute);
- X# else
- X regs.h.bl = (((g_attribute > 0) && (g_attribute < MAXCOLORS)) ?
- X g_attribute : ATTRIB_NORMAL);
- X# endif
- X regs.x.cx = 1; /* one character */
- X int86(VIDEO_BIOS, ®s, ®s); /* write attribute & character */
- X get_cursor(&x,&y);
- X# endif /* SCREEN_BIOS */
- X if (x < (CO -1 )) ++x;
- X gotoxy(x,y);
- X}
- X
- X/*
- X * Supporting routines. None of these routines are required to
- X * resolve references outside this source file.
- X */
- X# ifdef SCREEN_BIOS
- Xvoid
- Xget_cursor(x,y) /* get cursor position */
- Xint *x, *y;
- X{
- X union REGS regs;
- X
- X regs.x.dx = 0;
- X regs.h.ah = GETCURPOS; /* get cursor position */
- X regs.x.cx = 0;
- X regs.x.bx = 0;
- X int86(VIDEO_BIOS, ®s, ®s); /* Get Cursor Position */
- X *x = regs.h.dl;
- X *y = regs.h.dh;
- X}
- X
- Xvoid
- Xgotoxy(x,y)
- Xint x,y;
- X{
- X union REGS regs;
- X
- X regs.h.ah = SETCURPOS;
- X# ifdef PC9801
- X regs.x.dx = 2 * (80 * y + x);
- X int86(CRT_BIOS, ®s, ®s); /* Set Cursor Position */
- X# else
- X regs.h.bh = 0; /* display page */
- X regs.h.dh = y; /* row */
- X regs.h.dl = x; /* column */
- X int86(VIDEO_BIOS, ®s, ®s); /* Set Cursor Position */
- X# endif
- X
- X /* This, too, goes back all the way to the original PC. If
- X * we ever get so fancy as to swap display pages (i doubt it),
- X * then we'll need to set BH appropriately. This function
- X * returns nothing. -3.
- X */
- X}
- X# ifdef MONO_CHECK
- Xint monoadapt_check()
- X{
- X union REGS regs;
- X
- X regs.h.al = 0;
- X regs.h.ah = GETMODE; /* get video mode */
- X int86(VIDEO_BIOS, ®s, ®s);
- X return (regs.h.al == 7) ? 1 : 0; /* 7 means monochrome mode */
- X}
- X# endif /* MONO_CHECK */
- X# endif /* SCREEN_BIOS */
- X
- X# endif /* OVL0 */
- X# ifdef OVLB
- X
- X# ifdef TEXTCOLOR
- X/*
- X * BLACK 0
- X * RED 1
- X * GREEN 2
- X * BROWN 3 low-intensity yellow
- X * BLUE 4
- X * MAGENTA 5
- X * CYAN 6
- X * GRAY 7 low-intensity white
- X * NO_COLOR 8
- X * ORANGE_COLORED 9
- X * BRIGHT_GREEN 10
- X * YELLOW 11
- X * BRIGHT_BLUE 12
- X * BRIGHT_MAGENTA 13
- X * BRIGHT_CYAN 14
- X * WHITE 15
- X * MAXCOLORS 16
- X * BRIGHT 8
- X */
- X
- Xstatic void
- Xinit_ttycolor()
- X{
- X ttycolors[BLACK] = 7; /* mapped to 7 = white */
- X ttycolors[RED] = 4; /* 4 = red */
- X ttycolors[GREEN] = 2; /* 2 = green */
- X ttycolors[BROWN] = 6; /* 6 = brown */
- X ttycolors[BLUE] = 1; /* 1 = blue */
- X ttycolors[MAGENTA] = 5; /* 5 = magenta */
- X ttycolors[CYAN] = 3; /* 3 = cyan */
- X ttycolors[GRAY] = 8; /* 8 = dark gray */
- X ttycolors[BRIGHT] = 15; /* 15 = intense white */
- X ttycolors[ORANGE_COLORED] = 12; /* 12 = light red */
- X ttycolors[BRIGHT_GREEN] = 10; /* 10 = light green */
- X ttycolors[YELLOW] = 14; /* 14 = yellow */
- X ttycolors[BRIGHT_BLUE] = 9; /* 9 = light blue */
- X ttycolors[BRIGHT_MAGENTA] = 13; /* 13 = light magenta */
- X ttycolors[BRIGHT_CYAN] = 11; /* 11 = light cyan */
- X ttycolors[WHITE] = 7; /* 7 = white */
- X}
- X
- X# endif /* TEXTCOLOR */
- X# endif OVLB
- X
- X#endif /* NO_TERMS */
- X
- X/* video.c */
- END_OF_FILE
- if test 12337 -ne `wc -c <'sys/msdos/video.c'`; then
- echo shar: \"'sys/msdos/video.c'\" unpacked with wrong size!
- fi
- # end of 'sys/msdos/video.c'
- echo shar: End of archive 31 \(of 33\).
- cp /dev/null ark31isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 33 archives.
- echo "Now execute ./patchit.sh"
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-