home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / a_utils / perl / mac-perl / mcprl401.bin / Perl_appl / lib / termcap.pl < prev    next >
MacBinary  |  1992-09-27  |  4.3 KB  |  [TEXT/MPS ]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, Sun Sep 27 18:05:38 1992, modified Sun Sep 27 18:05:38 1992, creator 'MPS ', type ASCII, 3653 bytes "termcap.pl" , at 0xec5 428 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[MPS ]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0a 74 65 72 6d 63 61 | 70 2e 70 6c 00 00 00 00 |..termca|p.pl....|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4d 50 53 | 20 00 00 00 00 00 00 00 |.TEXTMPS| .......|
|00000050| 00 00 00 00 00 0e 45 00 | 00 01 ac a6 eb e0 b2 a6 |......E.|........|
|00000060| eb e0 b2 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 c4 98 00 00 |........|........|
|00000080| 3b 23 20 24 52 43 53 66 | 69 6c 65 3a 20 74 65 72 |;# $RCSf|ile: ter|
|00000090| 6d 63 61 70 2e 70 6c 2c | 76 20 24 24 52 65 76 69 |mcap.pl,|v $$Revi|
|000000a0| 73 69 6f 6e 3a 20 34 2e | 30 2e 31 2e 31 20 24 24 |sion: 4.|0.1.1 $$|
|000000b0| 44 61 74 65 3a 20 39 32 | 2f 30 36 2f 30 38 20 31 |Date: 92|/06/08 1|
|000000c0| 33 3a 34 39 3a 31 37 20 | 24 0d 3b 23 0d 3b 23 20 |3:49:17 |$.;#.;# |
|000000d0| 55 73 61 67 65 3a 0d 3b | 23 09 72 65 71 75 69 72 |Usage:.;|#.requir|
|000000e0| 65 20 27 69 6f 63 74 6c | 2e 70 6c 27 3b 0d 3b 23 |e 'ioctl|.pl';.;#|
|000000f0| 09 69 6f 63 74 6c 28 54 | 54 59 2c 24 54 49 4f 43 |.ioctl(T|TY,$TIOC|
|00000100| 47 45 54 50 2c 24 66 6f | 6f 29 3b 0d 3b 23 09 28 |GETP,$fo|o);.;#.(|
|00000110| 24 69 73 70 65 65 64 2c | 24 6f 73 70 65 65 64 29 |$ispeed,|$ospeed)|
|00000120| 20 3d 20 75 6e 70 61 63 | 6b 28 27 63 63 27 2c 24 | = unpac|k('cc',$|
|00000130| 66 6f 6f 29 3b 0d 3b 23 | 09 72 65 71 75 69 72 65 |foo);.;#|.require|
|00000140| 20 27 74 65 72 6d 63 61 | 70 2e 70 6c 27 3b 0d 3b | 'termca|p.pl';.;|
|00000150| 23 09 26 54 67 65 74 65 | 6e 74 28 27 76 74 31 30 |#.&Tgete|nt('vt10|
|00000160| 30 27 29 3b 09 23 20 73 | 65 74 73 20 24 54 43 7b |0');.# s|ets $TC{|
|00000170| 27 63 6d 27 7d 2c 20 65 | 74 63 2e 0d 3b 23 09 26 |'cm'}, e|tc..;#.&|
|00000180| 54 70 75 74 73 28 26 54 | 67 6f 74 6f 28 24 54 43 |Tputs(&T|goto($TC|
|00000190| 7b 27 63 6d 27 7d 2c 24 | 63 6f 6c 2c 24 72 6f 77 |{'cm'},$|col,$row|
|000001a0| 29 2c 20 30 2c 20 27 46 | 49 4c 45 48 41 4e 44 4c |), 0, 'F|ILEHANDL|
|000001b0| 45 27 29 3b 0d 3b 23 09 | 26 54 70 75 74 73 28 24 |E');.;#.|&Tputs($|
|000001c0| 54 43 7b 27 64 6c 27 7d | 2c 24 61 66 66 63 6e 74 |TC{'dl'}|,$affcnt|
|000001d0| 2c 27 46 49 4c 45 48 41 | 4e 44 4c 45 27 29 3b 0d |,'FILEHA|NDLE');.|
|000001e0| 3b 23 0d 73 75 62 20 54 | 67 65 74 65 6e 74 20 7b |;#.sub T|getent {|
|000001f0| 0d 20 20 20 20 6c 6f 63 | 61 6c 28 24 54 45 52 4d |. loc|al($TERM|
|00000200| 29 20 3d 20 40 5f 3b 0d | 20 20 20 20 6c 6f 63 61 |) = @_;.| loca|
|00000210| 6c 28 24 54 45 52 4d 43 | 41 50 2c 24 5f 2c 24 65 |l($TERMC|AP,$_,$e|
|00000220| 6e 74 72 79 2c 24 6c 6f | 6f 70 2c 24 66 69 65 6c |ntry,$lo|op,$fiel|
|00000230| 64 29 3b 0d 0d 20 20 20 | 20 77 61 72 6e 20 22 54 |d);.. | warn "T|
|00000240| 67 65 74 65 6e 74 3a 20 | 6e 6f 20 6f 73 70 65 65 |getent: |no ospee|
|00000250| 64 20 73 65 74 22 20 75 | 6e 6c 65 73 73 20 24 6f |d set" u|nless $o|
|00000260| 73 70 65 65 64 3b 0d 20 | 20 20 20 66 6f 72 65 61 |speed;. | forea|
|00000270| 63 68 20 24 6b 65 79 20 | 28 6b 65 79 73 28 54 43 |ch $key |(keys(TC|
|00000280| 29 29 20 7b 0d 09 64 65 | 6c 65 74 65 20 24 54 43 |)) {..de|lete $TC|
|00000290| 7b 24 6b 65 79 7d 3b 0d | 20 20 20 20 7d 0d 20 20 |{$key};.| }. |
|000002a0| 20 20 24 54 45 52 4d 20 | 3d 20 24 45 4e 56 7b 27 | $TERM |= $ENV{'|
|000002b0| 54 45 52 4d 27 7d 20 75 | 6e 6c 65 73 73 20 24 54 |TERM'} u|nless $T|
|000002c0| 45 52 4d 3b 0d 20 20 20 | 20 24 54 45 52 4d 43 41 |ERM;. | $TERMCA|
|000002d0| 50 20 3d 20 24 45 4e 56 | 7b 27 54 45 52 4d 43 41 |P = $ENV|{'TERMCA|
|000002e0| 50 27 7d 3b 0d 20 20 20 | 20 24 54 45 52 4d 43 41 |P'};. | $TERMCA|
|000002f0| 50 20 3d 20 27 2f 65 74 | 63 2f 74 65 72 6d 63 61 |P = '/et|c/termca|
|00000300| 70 27 20 75 6e 6c 65 73 | 73 20 24 54 45 52 4d 43 |p' unles|s $TERMC|
|00000310| 41 50 3b 0d 20 20 20 20 | 69 66 20 28 24 54 45 52 |AP;. |if ($TER|
|00000320| 4d 43 41 50 20 21 7e 20 | 6d 3a 5e 2f 3a 29 20 7b |MCAP !~ |m:^/:) {|
|00000330| 0d 09 69 66 20 28 24 54 | 45 52 4d 43 41 50 20 21 |..if ($T|ERMCAP !|
|00000340| 7e 20 2f 28 5e 7c 5c 7c | 29 24 54 45 52 4d 5b 3a |~ /(^|\||)$TERM[:|
|00000350| 5c 7c 5d 2f 29 20 7b 0d | 09 20 20 20 20 24 54 45 |\|]/) {.|. $TE|
|00000360| 52 4d 43 41 50 20 3d 20 | 27 2f 65 74 63 2f 74 65 |RMCAP = |'/etc/te|
|00000370| 72 6d 63 61 70 27 3b 0d | 09 7d 0d 20 20 20 20 7d |rmcap';.|.}. }|
|00000380| 0d 20 20 20 20 69 66 20 | 28 24 54 45 52 4d 43 41 |. if |($TERMCA|
|00000390| 50 20 3d 7e 20 6d 3a 5e | 2f 3a 29 20 7b 0d 09 24 |P =~ m:^|/:) {..$|
|000003a0| 65 6e 74 72 79 20 3d 20 | 27 27 3b 0d 09 64 6f 20 |entry = |'';..do |
|000003b0| 7b 0d 09 20 20 20 20 24 | 6c 6f 6f 70 20 3d 20 22 |{.. $|loop = "|
|000003c0| 0d 09 20 20 20 20 6f 70 | 65 6e 28 54 45 52 4d 43 |.. op|en(TERMC|
|000003d0| 41 50 2c 27 3c 24 54 45 | 52 4d 43 41 50 27 29 20 |AP,'<$TE|RMCAP') |
|000003e0| 7c 7c 20 64 69 65 20 5c | 22 43 61 6e 27 74 20 6f ||| die \|"Can't o|
|000003f0| 70 65 6e 20 24 54 45 52 | 4d 43 41 50 5c 22 3b 0d |pen $TER|MCAP\";.|
|00000400| 09 20 20 20 20 77 68 69 | 6c 65 20 28 3c 54 45 52 |. whi|le (<TER|
|00000410| 4d 43 41 50 3e 29 20 7b | 0d 09 09 6e 65 78 74 20 |MCAP>) {|...next |
|00000420| 69 66 20 2f 5e 23 2f 3b | 0d 09 09 6e 65 78 74 20 |if /^#/;|...next |
|00000430| 69 66 20 2f 5e 5c 74 2f | 3b 0d 09 09 69 66 20 28 |if /^\t/|;...if (|
|00000440| 2f 28 5e 7c 5c 5c 7c 29 | 24 54 45 52 4d 5b 3a 5c |/(^|\\|)|$TERM[:\|
|00000450| 5c 7c 5d 2f 29 20 7b 0d | 09 09 20 20 20 20 63 68 |\|]/) {.|.. ch|
|00000460| 6f 70 3b 0d 09 09 20 20 | 20 20 77 68 69 6c 65 20 |op;... | while |
|00000470| 28 63 68 6f 70 20 65 71 | 20 27 5c 5c 5c 5c 27 29 |(chop eq| '\\\\')|
|00000480| 20 7b 0d 09 09 09 5c 24 | 5f 20 2e 3d 20 3c 54 45 | {....\$|_ .= <TE|
|00000490| 52 4d 43 41 50 3e 3b 0d | 09 09 09 63 68 6f 70 3b |RMCAP>;.|...chop;|
|000004a0| 0d 09 09 20 20 20 20 7d | 0d 09 09 20 20 20 20 5c |... }|... \|
|000004b0| 24 5f 20 2e 3d 20 27 3a | 27 3b 0d 09 09 20 20 20 |$_ .= ':|';... |
|000004c0| 20 6c 61 73 74 3b 0d 09 | 09 7d 0d 09 20 20 20 20 | last;..|.}.. |
|000004d0| 7d 0d 09 20 20 20 20 63 | 6c 6f 73 65 20 54 45 52 |}.. c|lose TER|
|000004e0| 4d 43 41 50 3b 0d 09 20 | 20 20 20 5c 24 65 6e 74 |MCAP;.. | \$ent|
|000004f0| 72 79 20 2e 3d 20 5c 24 | 5f 3b 0d 09 20 20 20 20 |ry .= \$|_;.. |
|00000500| 22 3b 0d 09 20 20 20 20 | 65 76 61 6c 20 24 6c 6f |";.. |eval $lo|
|00000510| 6f 70 3b 0d 09 7d 20 77 | 68 69 6c 65 20 73 2f 3a |op;..} w|hile s/:|
|00000520| 74 63 3d 28 5b 5e 3a 5d | 2b 29 3a 2f 3a 2f 20 26 |tc=([^:]|+):/:/ &|
|00000530| 26 20 28 24 54 45 52 4d | 20 3d 20 24 31 29 3b 0d |& ($TERM| = $1);.|
|00000540| 09 24 54 45 52 4d 43 41 | 50 20 3d 20 24 65 6e 74 |.$TERMCA|P = $ent|
|00000550| 72 79 3b 0d 20 20 20 20 | 7d 0d 0d 20 20 20 20 66 |ry;. |}.. f|
|00000560| 6f 72 65 61 63 68 20 24 | 66 69 65 6c 64 20 28 73 |oreach $|field (s|
|00000570| 70 6c 69 74 28 2f 3a 5b | 5c 73 3a 5c 5c 5d 2a 2f |plit(/:[|\s:\\]*/|
|00000580| 2c 24 54 45 52 4d 43 41 | 50 29 29 20 7b 0d 09 69 |,$TERMCA|P)) {..i|
|00000590| 66 20 28 24 66 69 65 6c | 64 20 3d 7e 20 2f 5e 5c |f ($fiel|d =~ /^\|
|000005a0| 77 5c 77 24 2f 29 20 7b | 0d 09 20 20 20 20 24 54 |w\w$/) {|.. $T|
|000005b0| 43 7b 24 66 69 65 6c 64 | 7d 20 3d 20 31 3b 0d 09 |C{$field|} = 1;..|
|000005c0| 7d 0d 09 65 6c 73 69 66 | 20 28 24 66 69 65 6c 64 |}..elsif| ($field|
|000005d0| 20 3d 7e 20 2f 5e 28 5c | 77 5c 77 29 23 28 2e 2a | =~ /^(\|w\w)#(.*|
|000005e0| 29 2f 29 20 7b 0d 09 20 | 20 20 20 24 54 43 7b 24 |)/) {.. | $TC{$|
|000005f0| 31 7d 20 3d 20 24 32 20 | 69 66 20 24 54 43 7b 24 |1} = $2 |if $TC{$|
|00000600| 31 7d 20 65 71 20 27 27 | 3b 0d 09 7d 0d 09 65 6c |1} eq ''|;..}..el|
|00000610| 73 69 66 20 28 24 66 69 | 65 6c 64 20 3d 7e 20 2f |sif ($fi|eld =~ /|
|00000620| 5e 28 5c 77 5c 77 29 3d | 28 2e 2a 29 2f 29 20 7b |^(\w\w)=|(.*)/) {|
|00000630| 0d 09 20 20 20 20 24 65 | 6e 74 72 79 20 3d 20 24 |.. $e|ntry = $|
|00000640| 31 3b 0d 09 20 20 20 20 | 24 5f 20 3d 20 24 32 3b |1;.. |$_ = $2;|
|00000650| 0d 09 20 20 20 20 73 2f | 5c 5c 45 2f 5c 30 33 33 |.. s/|\\E/\033|
|00000660| 2f 67 3b 0d 09 20 20 20 | 20 73 2f 5c 5c 28 5c 64 |/g;.. | s/\\(\d|
|00000670| 5c 64 5c 64 29 2f 70 61 | 63 6b 28 27 63 27 2c 24 |\d\d)/pa|ck('c',$|
|00000680| 31 20 26 20 30 31 37 37 | 29 2f 65 67 3b 0d 09 20 |1 & 0177|)/eg;.. |
|00000690| 20 20 20 73 2f 5c 5c 6e | 2f 5c 6e 2f 67 3b 0d 09 | s/\\n|/\n/g;..|
|000006a0| 20 20 20 20 73 2f 5c 5c | 72 2f 5c 72 2f 67 3b 0d | s/\\|r/\r/g;.|
|000006b0| 09 20 20 20 20 73 2f 5c | 5c 74 2f 5c 74 2f 67 3b |. s/\|\t/\t/g;|
|000006c0| 0d 09 20 20 20 20 73 2f | 5c 5c 62 2f 5c 62 2f 67 |.. s/|\\b/\b/g|
|000006d0| 3b 0d 09 20 20 20 20 73 | 2f 5c 5c 66 2f 5c 66 2f |;.. s|/\\f/\f/|
|000006e0| 67 3b 0d 09 20 20 20 20 | 73 2f 5c 5c 5c 5e 2f 5c |g;.. |s/\\\^/\|
|000006f0| 33 37 37 2f 67 3b 0d 09 | 20 20 20 20 73 2f 5c 5e |377/g;..| s/\^|
|00000700| 5c 3f 2f 5c 31 37 37 2f | 67 3b 0d 09 20 20 20 20 |\?/\177/|g;.. |
|00000710| 73 2f 5c 5e 28 2e 29 2f | 70 61 63 6b 28 27 63 27 |s/\^(.)/|pack('c'|
|00000720| 2c 6f 72 64 28 24 31 29 | 20 26 20 33 31 29 2f 65 |,ord($1)| & 31)/e|
|00000730| 67 3b 0d 09 20 20 20 20 | 73 2f 5c 5c 28 2e 29 2f |g;.. |s/\\(.)/|
|00000740| 24 31 2f 67 3b 0d 09 20 | 20 20 20 73 2f 5c 33 37 |$1/g;.. | s/\37|
|00000750| 37 2f 5e 2f 67 3b 0d 09 | 20 20 20 20 24 54 43 7b |7/^/g;..| $TC{|
|00000760| 24 65 6e 74 72 79 7d 20 | 3d 20 24 5f 20 69 66 20 |$entry} |= $_ if |
|00000770| 24 54 43 7b 24 65 6e 74 | 72 79 7d 20 65 71 20 27 |$TC{$ent|ry} eq '|
|00000780| 27 3b 0d 09 7d 0d 20 20 | 20 20 7d 0d 20 20 20 20 |';..}. | }. |
|00000790| 24 54 43 7b 27 70 63 27 | 7d 20 3d 20 22 5c 30 22 |$TC{'pc'|} = "\0"|
|000007a0| 20 69 66 20 24 54 43 7b | 27 70 63 27 7d 20 65 71 | if $TC{|'pc'} eq|
|000007b0| 20 27 27 3b 0d 20 20 20 | 20 24 54 43 7b 27 62 63 | '';. | $TC{'bc|
|000007c0| 27 7d 20 3d 20 22 5c 62 | 22 20 69 66 20 24 54 43 |'} = "\b|" if $TC|
|000007d0| 7b 27 62 63 27 7d 20 65 | 71 20 27 27 3b 0d 7d 0d |{'bc'} e|q '';.}.|
|000007e0| 0d 40 54 70 75 74 73 20 | 3d 20 28 30 2c 32 30 30 |.@Tputs |= (0,200|
|000007f0| 2c 31 33 33 2e 33 2c 39 | 30 2e 39 2c 37 34 2e 33 |,133.3,9|0.9,74.3|
|00000800| 2c 36 36 2e 37 2c 35 30 | 2c 33 33 2e 33 2c 31 36 |,66.7,50|,33.3,16|
|00000810| 2e 37 2c 38 2e 33 2c 35 | 2e 35 2c 34 2e 31 2c 32 |.7,8.3,5|.5,4.1,2|
|00000820| 2c 31 2c 2e 35 2c 2e 32 | 29 3b 0d 0d 73 75 62 20 |,1,.5,.2|);..sub |
|00000830| 54 70 75 74 73 20 7b 0d | 20 20 20 20 6c 6f 63 61 |Tputs {.| loca|
|00000840| 6c 28 24 73 74 72 69 6e | 67 2c 24 61 66 66 63 6e |l($strin|g,$affcn|
|00000850| 74 2c 24 46 48 29 20 3d | 20 40 5f 3b 0d 20 20 20 |t,$FH) =| @_;. |
|00000860| 20 6c 6f 63 61 6c 28 24 | 6d 73 29 3b 0d 20 20 20 | local($|ms);. |
|00000870| 20 69 66 20 28 24 73 74 | 72 69 6e 67 20 3d 7e 20 | if ($st|ring =~ |
|00000880| 2f 28 5e 5b 5c 64 2e 5d | 2b 29 28 5c 2a 3f 29 28 |/(^[\d.]|+)(\*?)(|
|00000890| 2e 2a 29 24 2f 29 20 7b | 0d 09 24 6d 73 20 3d 20 |.*)$/) {|..$ms = |
|000008a0| 24 31 3b 0d 09 24 6d 73 | 20 2a 3d 20 24 61 66 66 |$1;..$ms| *= $aff|
|000008b0| 63 6e 74 20 69 66 20 24 | 32 3b 0d 09 24 73 74 72 |cnt if $|2;..$str|
|000008c0| 69 6e 67 20 3d 20 24 33 | 3b 0d 09 24 64 65 63 72 |ing = $3|;..$decr|
|000008d0| 20 3d 20 24 54 70 75 74 | 73 5b 24 6f 73 70 65 65 | = $Tput|s[$ospee|
|000008e0| 64 5d 3b 0d 09 69 66 20 | 28 24 64 65 63 72 20 3e |d];..if |($decr >|
|000008f0| 20 2e 31 29 20 7b 0d 09 | 20 20 20 20 24 6d 73 20 | .1) {..| $ms |
|00000900| 2b 3d 20 24 64 65 63 72 | 20 2f 20 32 3b 0d 09 20 |+= $decr| / 2;.. |
|00000910| 20 20 20 24 73 74 72 69 | 6e 67 20 2e 3d 20 24 54 | $stri|ng .= $T|
|00000920| 43 7b 27 70 63 27 7d 20 | 78 20 28 24 6d 73 20 2f |C{'pc'} |x ($ms /|
|00000930| 20 24 64 65 63 72 29 3b | 0d 09 7d 0d 20 20 20 20 | $decr);|..}. |
|00000940| 7d 0d 20 20 20 20 70 72 | 69 6e 74 20 24 46 48 20 |}. pr|int $FH |
|00000950| 24 73 74 72 69 6e 67 20 | 69 66 20 24 46 48 3b 0d |$string |if $FH;.|
|00000960| 20 20 20 20 24 73 74 72 | 69 6e 67 3b 0d 7d 0d 0d | $str|ing;.}..|
|00000970| 73 75 62 20 54 67 6f 74 | 6f 20 7b 0d 20 20 20 20 |sub Tgot|o {. |
|00000980| 6c 6f 63 61 6c 28 24 73 | 74 72 69 6e 67 29 20 3d |local($s|tring) =|
|00000990| 20 73 68 69 66 74 28 40 | 5f 29 3b 0d 20 20 20 20 | shift(@|_);. |
|000009a0| 6c 6f 63 61 6c 28 24 72 | 65 73 75 6c 74 29 20 3d |local($r|esult) =|
|000009b0| 20 27 27 3b 0d 20 20 20 | 20 6c 6f 63 61 6c 28 24 | '';. | local($|
|000009c0| 61 66 74 65 72 29 20 3d | 20 27 27 3b 0d 20 20 20 |after) =| '';. |
|000009d0| 20 6c 6f 63 61 6c 28 24 | 63 6f 64 65 2c 24 74 6d | local($|code,$tm|
|000009e0| 70 29 20 3d 20 40 5f 3b | 0d 20 20 20 20 6c 6f 63 |p) = @_;|. loc|
|000009f0| 61 6c 28 40 74 6d 70 29 | 3b 0d 20 20 20 20 40 74 |al(@tmp)|;. @t|
|00000a00| 6d 70 20 3d 20 28 24 74 | 6d 70 2c 24 63 6f 64 65 |mp = ($t|mp,$code|
|00000a10| 29 3b 0d 20 20 20 20 6c | 6f 63 61 6c 28 24 6f 6e |);. l|ocal($on|
|00000a20| 6c 69 6e 65 29 20 3d 20 | 30 3b 0d 20 20 20 20 77 |line) = |0;. w|
|00000a30| 68 69 6c 65 20 28 24 73 | 74 72 69 6e 67 20 3d 7e |hile ($s|tring =~|
|00000a40| 20 2f 5e 28 5b 5e 25 5d | 2a 29 25 28 2e 29 28 2e | /^([^%]|*)%(.)(.|
|00000a50| 2a 29 2f 29 20 7b 0d 09 | 24 72 65 73 75 6c 74 20 |*)/) {..|$result |
|00000a60| 2e 3d 20 24 31 3b 0d 09 | 24 63 6f 64 65 20 3d 20 |.= $1;..|$code = |
|00000a70| 24 32 3b 0d 09 24 73 74 | 72 69 6e 67 20 3d 20 24 |$2;..$st|ring = $|
|00000a80| 33 3b 0d 09 69 66 20 28 | 24 63 6f 64 65 20 65 71 |3;..if (|$code eq|
|00000a90| 20 27 64 27 29 20 7b 0d | 09 20 20 20 20 24 72 65 | 'd') {.|. $re|
|00000aa0| 73 75 6c 74 20 2e 3d 20 | 73 70 72 69 6e 74 66 28 |sult .= |sprintf(|
|00000ab0| 22 25 64 22 2c 73 68 69 | 66 74 28 40 74 6d 70 29 |"%d",shi|ft(@tmp)|
|00000ac0| 29 3b 0d 09 7d 0d 09 65 | 6c 73 69 66 20 28 24 63 |);..}..e|lsif ($c|
|00000ad0| 6f 64 65 20 65 71 20 27 | 2e 27 29 20 7b 0d 09 20 |ode eq '|.') {.. |
|00000ae0| 20 20 20 24 74 6d 70 20 | 3d 20 73 68 69 66 74 28 | $tmp |= shift(|
|00000af0| 40 74 6d 70 29 3b 0d 09 | 20 20 20 20 69 66 20 28 |@tmp);..| if (|
|00000b00| 24 74 6d 70 20 3d 3d 20 | 30 20 7c 7c 20 24 74 6d |$tmp == |0 || $tm|
|00000b10| 70 20 3d 3d 20 34 20 7c | 7c 20 24 74 6d 70 20 3d |p == 4 ||| $tmp =|
|00000b20| 3d 20 31 30 29 20 7b 0d | 09 09 69 66 20 28 24 6f |= 10) {.|..if ($o|
|00000b30| 6e 6c 69 6e 65 29 20 7b | 0d 09 09 20 20 20 20 2b |nline) {|... +|
|00000b40| 2b 24 74 6d 70 2c 20 24 | 61 66 74 65 72 20 2e 3d |+$tmp, $|after .=|
|00000b50| 20 24 54 43 7b 27 75 70 | 27 7d 20 69 66 20 24 54 | $TC{'up|'} if $T|
|00000b60| 43 7b 27 75 70 27 7d 3b | 0d 09 09 7d 0d 09 09 65 |C{'up'};|...}...e|
|00000b70| 6c 73 65 20 7b 0d 09 09 | 20 20 20 20 2b 2b 24 74 |lse {...| ++$t|
|00000b80| 6d 70 2c 20 24 61 66 74 | 65 72 20 2e 3d 20 24 54 |mp, $aft|er .= $T|
|00000b90| 43 7b 27 62 63 27 7d 3b | 0d 09 09 7d 0d 09 20 20 |C{'bc'};|...}.. |
|00000ba0| 20 20 7d 0d 09 20 20 20 | 20 24 72 65 73 75 6c 74 | }.. | $result|
|00000bb0| 20 2e 3d 20 73 70 72 69 | 6e 74 66 28 22 25 63 22 | .= spri|ntf("%c"|
|00000bc0| 2c 24 74 6d 70 29 3b 0d | 09 20 20 20 20 24 6f 6e |,$tmp);.|. $on|
|00000bd0| 6c 69 6e 65 20 3d 20 21 | 24 6f 6e 6c 69 6e 65 3b |line = !|$online;|
|00000be0| 0d 09 7d 0d 09 65 6c 73 | 69 66 20 28 24 63 6f 64 |..}..els|if ($cod|
|00000bf0| 65 20 65 71 20 27 2b 27 | 29 20 7b 0d 09 20 20 20 |e eq '+'|) {.. |
|00000c00| 20 24 72 65 73 75 6c 74 | 20 2e 3d 20 73 70 72 69 | $result| .= spri|
|00000c10| 6e 74 66 28 22 25 63 22 | 2c 73 68 69 66 74 28 40 |ntf("%c"|,shift(@|
|00000c20| 74 6d 70 29 2b 6f 72 64 | 28 24 73 74 72 69 6e 67 |tmp)+ord|($string|
|00000c30| 29 29 3b 0d 09 20 20 20 | 20 24 73 74 72 69 6e 67 |));.. | $string|
|00000c40| 20 3d 20 73 75 62 73 74 | 72 28 24 73 74 72 69 6e | = subst|r($strin|
|00000c50| 67 2c 31 2c 39 39 29 3b | 0d 09 20 20 20 20 24 6f |g,1,99);|.. $o|
|00000c60| 6e 6c 69 6e 65 20 3d 20 | 21 24 6f 6e 6c 69 6e 65 |nline = |!$online|
|00000c70| 3b 0d 09 7d 0d 09 65 6c | 73 69 66 20 28 24 63 6f |;..}..el|sif ($co|
|00000c80| 64 65 20 65 71 20 27 72 | 27 29 20 7b 0d 09 20 20 |de eq 'r|') {.. |
|00000c90| 20 20 28 24 63 6f 64 65 | 2c 24 74 6d 70 29 20 3d | ($code|,$tmp) =|
|00000ca0| 20 40 74 6d 70 3b 0d 09 | 20 20 20 20 40 74 6d 70 | @tmp;..| @tmp|
|00000cb0| 20 3d 20 28 24 74 6d 70 | 2c 24 63 6f 64 65 29 3b | = ($tmp|,$code);|
|00000cc0| 0d 09 20 20 20 20 24 6f | 6e 6c 69 6e 65 20 3d 20 |.. $o|nline = |
|00000cd0| 21 24 6f 6e 6c 69 6e 65 | 3b 0d 09 7d 0d 09 65 6c |!$online|;..}..el|
|00000ce0| 73 69 66 20 28 24 63 6f | 64 65 20 65 71 20 27 3e |sif ($co|de eq '>|
|00000cf0| 27 29 20 7b 0d 09 20 20 | 20 20 28 24 63 6f 64 65 |') {.. | ($code|
|00000d00| 2c 24 74 6d 70 2c 24 73 | 74 72 69 6e 67 29 20 3d |,$tmp,$s|tring) =|
|00000d10| 20 75 6e 70 61 63 6b 28 | 22 43 43 61 39 39 22 2c | unpack(|"CCa99",|
|00000d20| 24 73 74 72 69 6e 67 29 | 3b 0d 09 20 20 20 20 69 |$string)|;.. i|
|00000d30| 66 20 28 24 74 6d 70 5b | 24 5b 5d 20 3e 20 24 63 |f ($tmp[|$[] > $c|
|00000d40| 6f 64 65 29 20 7b 0d 09 | 09 24 74 6d 70 5b 24 5b |ode) {..|.$tmp[$[|
|00000d50| 5d 20 2b 3d 20 24 74 6d | 70 3b 0d 09 20 20 20 20 |] += $tm|p;.. |
|00000d60| 7d 0d 09 7d 0d 09 65 6c | 73 69 66 20 28 24 63 6f |}..}..el|sif ($co|
|00000d70| 64 65 20 65 71 20 27 32 | 27 29 20 7b 0d 09 20 20 |de eq '2|') {.. |
|00000d80| 20 20 24 72 65 73 75 6c | 74 20 2e 3d 20 73 70 72 | $resul|t .= spr|
|00000d90| 69 6e 74 66 28 22 25 30 | 32 64 22 2c 73 68 69 66 |intf("%0|2d",shif|
|00000da0| 74 28 40 74 6d 70 29 29 | 3b 0d 09 20 20 20 20 24 |t(@tmp))|;.. $|
|00000db0| 6f 6e 6c 69 6e 65 20 3d | 20 21 24 6f 6e 6c 69 6e |online =| !$onlin|
|00000dc0| 65 3b 0d 09 7d 0d 09 65 | 6c 73 69 66 20 28 24 63 |e;..}..e|lsif ($c|
|00000dd0| 6f 64 65 20 65 71 20 27 | 33 27 29 20 7b 0d 09 20 |ode eq '|3') {.. |
|00000de0| 20 20 20 24 72 65 73 75 | 6c 74 20 2e 3d 20 73 70 | $resu|lt .= sp|
|00000df0| 72 69 6e 74 66 28 22 25 | 30 33 64 22 2c 73 68 69 |rintf("%|03d",shi|
|00000e00| 66 74 28 40 74 6d 70 29 | 29 3b 0d 09 20 20 20 20 |ft(@tmp)|);.. |
|00000e10| 24 6f 6e 6c 69 6e 65 20 | 3d 20 21 24 6f 6e 6c 69 |$online |= !$onli|
|00000e20| 6e 65 3b 0d 09 7d 0d 09 | 65 6c 73 69 66 20 28 24 |ne;..}..|elsif ($|
|00000e30| 63 6f 64 65 20 65 71 20 | 27 69 27 29 20 7b 0d 09 |code eq |'i') {..|
|00000e40| 20 20 20 20 28 24 63 6f | 64 65 2c 24 74 6d 70 29 | ($co|de,$tmp)|
|00000e50| 20 3d 20 40 74 6d 70 3b | 0d 09 20 20 20 20 40 74 | = @tmp;|.. @t|
|00000e60| 6d 70 20 3d 20 28 24 63 | 6f 64 65 2b 31 2c 24 74 |mp = ($c|ode+1,$t|
|00000e70| 6d 70 2b 31 29 3b 0d 09 | 7d 0d 09 65 6c 73 65 20 |mp+1);..|}..else |
|00000e80| 7b 0d 09 20 20 20 20 72 | 65 74 75 72 6e 20 22 4f |{.. r|eturn "O|
|00000e90| 4f 50 53 22 3b 0d 09 7d | 0d 20 20 20 20 7d 0d 20 |OPS";..}|. }. |
|00000ea0| 20 20 20 24 72 65 73 75 | 6c 74 20 2e 20 24 73 74 | $resu|lt . $st|
|00000eb0| 72 69 6e 67 20 2e 20 24 | 61 66 74 65 72 3b 0d 7d |ring . $|after;.}|
|00000ec0| 0d 0d 31 3b 0d 00 00 00 | 00 00 00 00 00 00 00 00 |..1;....|........|
|00000ed0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ee0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ef0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000f00| 00 00 01 00 00 00 01 6e | 00 00 00 6e 00 00 00 3e |.......n|...n...>|
|00000f10| 74 20 6f 70 65 6e 20 24 | 64 69 72 3a 20 24 21 5c |t open $|dir: $!\|
|00000f20| 6e 22 3b 0d 23 65 6c 73 | 65 0d 20 20 20 20 6f 70 |n";.#els|e. op|
|00000f30| 0a 74 65 72 6d 63 61 70 | 2e 70 6c 00 02 00 00 00 |.termcap|.pl.....|
|00000f40| 54 45 58 54 4d 50 53 20 | 00 00 00 00 00 00 00 00 |TEXTMPS |........|
|00000f50| 00 00 54 45 58 54 4d 50 | 53 20 00 00 00 00 00 00 |..TEXTMP|S ......|
|00000f60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000f70| 00 00 a6 ea b4 c4 00 00 | 0e 45 00 00 01 ac 44 20 |........|.E....D |
|00000f80| 2a 2f 0d 20 20 20 20 6c | 6f 63 61 6c 28 40 66 69 |*/. l|ocal(@fi|
|00000f90| 6c 65 6e 61 6d 65 73 29 | 20 3d 20 72 65 61 64 64 |lenames)| = readd|
|00000fa0| 69 72 28 44 49 52 29 3b | 0d 20 20 20 20 63 6c 6f |ir(DIR);|. clo|
|00000fb0| 73 65 64 69 72 28 44 49 | 52 29 3b 0d 0d 20 20 20 |sedir(DI|R);.. |
|00000fc0| 20 69 66 20 28 24 6e 6c | 69 6e 6b 20 3d 3d 20 32 | if ($nl|ink == 2|
|00000fd0| 29 20 7b 20 20 20 20 20 | 20 20 20 23 20 54 68 69 |) { | # Thi|
|00000fe0| 73 20 64 69 72 20 68 61 | 73 20 6e 6f 20 73 75 62 |s dir ha|s no sub|
|00000ff0| 64 69 72 65 63 74 6f 72 | 69 65 73 2e 0d 09 66 6f |director|ies...fo|
|00001000| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 20 39 32 |...H..Mo|naco. 92|
|00001010| 2f 30 36 2f 30 38 20 31 | 33 3a 34 39 3a 31 37 20 |/06/08 1|3:49:17 |
|00001020| 24 0d 3b 23 0d 3b 00 06 | 00 08 00 3c 00 24 01 dd |$.;#.;..|...<.$..|
|00001030| 02 3d 00 3c 00 24 01 dd | 02 3d a6 eb a8 72 00 00 |.=.<.$..|.=...r..|
|00001040| 03 d8 00 00 03 d8 00 00 | 03 01 01 00 00 00 00 1e |........|........|
|00001050| 00 3c 00 24 01 dd 02 3d | 00 3c 00 24 01 dd 02 3d |.<.$...=|.<.$...=|
|00001060| 00 00 03 01 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001070| 01 00 00 00 01 6e 00 00 | 00 6e 00 00 00 3e 00 41 |.....n..|.n...>.A|
|00001080| 62 20 0f 6e 00 00 00 1c | 00 3e 00 00 4d 50 53 52 |b .n....|.>..MPSR|
|00001090| 00 01 00 0a 03 ed ff ff | 00 00 00 00 00 00 00 00 |........|........|
|000010a0| 03 f0 ff ff 00 00 00 4c | 00 47 95 68 00 00 00 00 |.......L|.G.h....|
|000010b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000010c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000010d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000010e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000010f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+