home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume11 / jove.pch / part04 < prev    next >
SHell self-extracting ARchive  |  1987-09-15  |  33.6 KB

view JSON data     |     view as text     |     open on a Mac     |     open on a PC

This file was processed as: SHell self-extracting ARchive (archive/shar).

You can browse this item here: part04

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Newsgroup Content (archive/news) magic Supported
100% dexvert SHell self-extracting ARchive (archive/shar) magic Supported
100% dexvert Internet Message Format (text/imf) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file news or mail, ASCII text default
100% checkBytes Printable ASCII default
100% perlTextCheck Likely Text (Perl) default
100% siegfried fmt/329 Shell Archive Format default
100% detectItEasy Format: plain text[LF] default (weak)
100% xdgMime message/rfc822 default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 53 75 62 6a 65 63 74 3a | 20 20 76 31 31 69 30 34 |Subject:| v11i04|
|00000010| 38 3a 20 20 4a 6f 76 65 | 20 75 70 67 72 61 64 65 |8: Jove| upgrade|
|00000020| 20 6b 69 74 2c 20 50 61 | 72 74 30 34 2f 30 34 0a | kit, Pa|rt04/04.|
|00000030| 4e 65 77 73 67 72 6f 75 | 70 73 3a 20 63 6f 6d 70 |Newsgrou|ps: comp|
|00000040| 2e 73 6f 75 72 63 65 73 | 2e 75 6e 69 78 0a 53 65 |.sources|.unix.Se|
|00000050| 6e 64 65 72 3a 20 73 6f | 75 72 63 65 73 0a 41 70 |nder: so|urces.Ap|
|00000060| 70 72 6f 76 65 64 3a 20 | 72 73 40 75 75 6e 65 74 |proved: |rs@uunet|
|00000070| 2e 55 55 2e 4e 45 54 0a | 0a 53 75 62 6d 69 74 74 |.UU.NET.|.Submitt|
|00000080| 65 64 2d 62 79 3a 20 4a | 6f 6e 61 74 68 61 6e 20 |ed-by: J|onathan |
|00000090| 50 61 79 6e 65 20 20 3c | 6a 70 61 79 6e 65 40 63 |Payne <|jpayne@c|
|000000a0| 73 2e 72 6f 63 68 65 73 | 74 65 72 2e 65 64 75 3e |s.roches|ter.edu>|
|000000b0| 0a 50 6f 73 74 69 6e 67 | 2d 6e 75 6d 62 65 72 3a |.Posting|-number:|
|000000c0| 20 56 6f 6c 75 6d 65 20 | 31 31 2c 20 49 73 73 75 | Volume |11, Issu|
|000000d0| 65 20 34 38 0a 41 72 63 | 68 69 76 65 2d 6e 61 6d |e 48.Arc|hive-nam|
|000000e0| 65 3a 20 6a 6f 76 65 2e | 70 63 68 2f 50 61 72 74 |e: jove.|pch/Part|
|000000f0| 30 34 0a 0a 23 21 20 2f | 62 69 6e 2f 73 68 0a 23 |04..#! /|bin/sh.#|
|00000100| 20 54 68 69 73 20 69 73 | 20 61 20 73 68 65 6c 6c | This is| a shell|
|00000110| 20 61 72 63 68 69 76 65 | 2e 20 20 52 65 6d 6f 76 | archive|. Remov|
|00000120| 65 20 61 6e 79 74 68 69 | 6e 67 20 62 65 66 6f 72 |e anythi|ng befor|
|00000130| 65 20 74 68 69 73 20 6c | 69 6e 65 2c 20 74 68 65 |e this l|ine, the|
|00000140| 6e 20 75 6e 70 61 63 6b | 0a 23 20 69 74 20 62 79 |n unpack|.# it by|
|00000150| 20 73 61 76 69 6e 67 20 | 69 74 20 69 6e 74 6f 20 | saving |it into |
|00000160| 61 20 66 69 6c 65 20 61 | 6e 64 20 74 79 70 69 6e |a file a|nd typin|
|00000170| 67 20 22 73 68 20 66 69 | 6c 65 22 2e 20 20 54 6f |g "sh fi|le". To|
|00000180| 20 6f 76 65 72 77 72 69 | 74 65 20 65 78 69 73 74 | overwri|te exist|
|00000190| 69 6e 67 0a 23 20 66 69 | 6c 65 73 2c 20 74 79 70 |ing.# fi|les, typ|
|000001a0| 65 20 22 73 68 20 66 69 | 6c 65 20 2d 63 22 2e 20 |e "sh fi|le -c". |
|000001b0| 20 59 6f 75 20 63 61 6e | 20 61 6c 73 6f 20 66 65 | You can| also fe|
|000001c0| 65 64 20 74 68 69 73 20 | 61 73 20 73 74 61 6e 64 |ed this |as stand|
|000001d0| 61 72 64 20 69 6e 70 75 | 74 20 76 69 61 0a 23 20 |ard inpu|t via.# |
|000001e0| 75 6e 73 68 61 72 2c 20 | 6f 72 20 62 79 20 74 79 |unshar, |or by ty|
|000001f0| 70 69 6e 67 20 22 73 68 | 20 3c 66 69 6c 65 22 2c |ping "sh| <file",|
|00000200| 20 65 2e 67 2e 2e 20 20 | 49 66 20 74 68 69 73 20 | e.g.. |If this |
|00000210| 61 72 63 68 69 76 65 20 | 69 73 20 63 6f 6d 70 6c |archive |is compl|
|00000220| 65 74 65 2c 20 79 6f 75 | 0a 23 20 77 69 6c 6c 20 |ete, you|.# will |
|00000230| 73 65 65 20 74 68 65 20 | 66 6f 6c 6c 6f 77 69 6e |see the |followin|
|00000240| 67 20 6d 65 73 73 61 67 | 65 20 61 74 20 74 68 65 |g messag|e at the|
|00000250| 20 65 6e 64 3a 0a 23 09 | 09 22 45 6e 64 20 6f 66 | end:.#.|."End of|
|00000260| 20 61 72 63 68 69 76 65 | 20 34 20 28 6f 66 20 34 | archive| 4 (of 4|
|00000270| 29 2e 22 0a 23 20 43 6f | 6e 74 65 6e 74 73 3a 20 |).".# Co|ntents: |
|00000280| 20 6a 6f 76 65 2e 70 63 | 68 2e 34 0a 50 41 54 48 | jove.pc|h.4.PATH|
|00000290| 3d 2f 62 69 6e 3a 2f 75 | 73 72 2f 62 69 6e 3a 2f |=/bin:/u|sr/bin:/|
|000002a0| 75 73 72 2f 75 63 62 20 | 3b 20 65 78 70 6f 72 74 |usr/ucb |; export|
|000002b0| 20 50 41 54 48 0a 69 66 | 20 74 65 73 74 20 2d 66 | PATH.if| test -f|
|000002c0| 20 27 6a 6f 76 65 2e 70 | 63 68 2e 34 27 20 2d 61 | 'jove.p|ch.4' -a|
|000002d0| 20 22 24 7b 31 7d 22 20 | 21 3d 20 22 2d 63 22 20 | "${1}" |!= "-c" |
|000002e0| 3b 20 74 68 65 6e 20 0a | 20 20 65 63 68 6f 20 73 |; then .| echo s|
|000002f0| 68 61 72 3a 20 57 69 6c | 6c 20 6e 6f 74 20 63 6c |har: Wil|l not cl|
|00000300| 6f 62 62 65 72 20 65 78 | 69 73 74 69 6e 67 20 66 |obber ex|isting f|
|00000310| 69 6c 65 20 5c 22 27 6a | 6f 76 65 2e 70 63 68 2e |ile \"'j|ove.pch.|
|00000320| 34 27 5c 22 0a 65 6c 73 | 65 0a 65 63 68 6f 20 73 |4'\".els|e.echo s|
|00000330| 68 61 72 3a 20 45 78 74 | 72 61 63 74 69 6e 67 20 |har: Ext|racting |
|00000340| 5c 22 27 6a 6f 76 65 2e | 70 63 68 2e 34 27 5c 22 |\"'jove.|pch.4'\"|
|00000350| 20 5c 28 33 31 35 37 34 | 20 63 68 61 72 61 63 74 | \(31574| charact|
|00000360| 65 72 73 5c 29 0a 73 65 | 64 20 22 73 2f 5e 58 2f |ers\).se|d "s/^X/|
|00000370| 2f 22 20 3e 27 6a 6f 76 | 65 2e 70 63 68 2e 34 27 |/" >'jov|e.pch.4'|
|00000380| 20 3c 3c 27 45 4e 44 5f | 4f 46 5f 46 49 4c 45 27 | <<'END_|OF_FILE'|
|00000390| 0a 58 64 69 66 66 20 2d | 63 20 6f 6a 6f 76 65 2f |.Xdiff -|c ojove/|
|000003a0| 72 65 63 2e 63 20 6a 6f | 76 65 2f 72 65 63 2e 63 |rec.c jo|ve/rec.c|
|000003b0| 0a 58 2a 2a 2a 20 6f 6a | 6f 76 65 2f 72 65 63 2e |.X*** oj|ove/rec.|
|000003c0| 63 09 54 68 75 20 4a 75 | 6c 20 31 36 20 30 39 3a |c.Thu Ju|l 16 09:|
|000003d0| 31 35 3a 30 34 20 31 39 | 38 37 0a 58 2d 2d 2d 20 |15:04 19|87.X--- |
|000003e0| 6a 6f 76 65 2f 72 65 63 | 2e 63 09 4d 6f 6e 20 4a |jove/rec|.c.Mon J|
|000003f0| 75 6c 20 31 33 20 30 39 | 3a 34 36 3a 30 38 20 31 |ul 13 09|:46:08 1|
|00000400| 39 38 37 0a 58 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |987.X***|********|
|00000410| 2a 2a 2a 2a 0a 58 2a 2a | 2a 20 35 31 2c 35 37 20 |****.X**|* 51,57 |
|00000420| 2a 2a 2a 2a 0a 58 20 20 | 09 28 76 6f 69 64 29 20 |****.X |.(void) |
|00000430| 75 6e 6c 69 6e 6b 28 72 | 65 63 66 6e 61 6d 65 29 |unlink(r|ecfname)|
|00000440| 3b 0a 58 20 20 7d 0a 58 | 20 20 0a 58 21 20 73 74 |;.X }.X| .X! st|
|00000450| 61 74 69 63 0a 58 20 20 | 70 75 74 61 64 64 72 28 |atic.X |putaddr(|
|00000460| 61 64 64 72 2c 20 70 29 | 0a 58 20 20 64 69 73 6b |addr, p)|.X disk|
|00000470| 5f 6c 69 6e 65 09 61 64 | 64 72 3b 0a 58 20 20 72 |_line.ad|dr;.X r|
|00000480| 65 67 69 73 74 65 72 20 | 46 69 6c 65 09 2a 70 3b |egister |File.*p;|
|00000490| 0a 58 2d 2d 2d 20 35 31 | 2c 35 37 20 2d 2d 2d 2d |.X--- 51|,57 ----|
|000004a0| 0a 58 20 20 09 28 76 6f | 69 64 29 20 75 6e 6c 69 |.X .(vo|id) unli|
|000004b0| 6e 6b 28 72 65 63 66 6e | 61 6d 65 29 3b 0a 58 20 |nk(recfn|ame);.X |
|000004c0| 20 7d 0a 58 20 20 0a 58 | 21 20 70 72 69 76 61 74 | }.X .X|! privat|
|000004d0| 65 0a 58 20 20 70 75 74 | 61 64 64 72 28 61 64 64 |e.X put|addr(add|
|000004e0| 72 2c 20 70 29 0a 58 20 | 20 64 69 73 6b 5f 6c 69 |r, p).X | disk_li|
|000004f0| 6e 65 09 61 64 64 72 3b | 0a 58 20 20 72 65 67 69 |ne.addr;|.X regi|
|00000500| 73 74 65 72 20 46 69 6c | 65 09 2a 70 3b 0a 58 2a |ster Fil|e.*p;.X*|
|00000510| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 0a 58 |********|******.X|
|00000520| 2a 2a 2a 20 36 33 2c 36 | 39 20 2a 2a 2a 2a 0a 58 |*** 63,6|9 ****.X|
|00000530| 20 20 09 09 70 75 74 63 | 28 2a 63 70 2b 2b 20 26 | ..putc|(*cp++ &|
|00000540| 20 30 33 37 37 2c 20 70 | 29 3b 0a 58 20 20 7d 0a | 0377, p|);.X }.|
|00000550| 58 20 20 0a 58 21 20 73 | 74 61 74 69 63 0a 58 20 |X .X! s|tatic.X |
|00000560| 20 70 75 74 6e 28 63 70 | 2c 20 6e 62 79 74 65 73 | putn(cp|, nbytes|
|00000570| 29 0a 58 20 20 72 65 67 | 69 73 74 65 72 20 63 68 |).X reg|ister ch|
|00000580| 61 72 09 2a 63 70 3b 0a | 58 20 20 72 65 67 69 73 |ar.*cp;.|X regis|
|00000590| 74 65 72 20 69 6e 74 09 | 6e 62 79 74 65 73 3b 0a |ter int.|nbytes;.|
|000005a0| 58 2d 2d 2d 20 36 33 2c | 36 39 20 2d 2d 2d 2d 0a |X--- 63,|69 ----.|
|000005b0| 58 20 20 09 09 70 75 74 | 63 28 2a 63 70 2b 2b 20 |X ..put|c(*cp++ |
|000005c0| 26 20 30 33 37 37 2c 20 | 70 29 3b 0a 58 20 20 7d |& 0377, |p);.X }|
|000005d0| 0a 58 20 20 0a 58 21 20 | 70 72 69 76 61 74 65 0a |.X .X! |private.|
|000005e0| 58 20 20 70 75 74 6e 28 | 63 70 2c 20 6e 62 79 74 |X putn(|cp, nbyt|
|000005f0| 65 73 29 0a 58 20 20 72 | 65 67 69 73 74 65 72 20 |es).X r|egister |
|00000600| 63 68 61 72 09 2a 63 70 | 3b 0a 58 20 20 72 65 67 |char.*cp|;.X reg|
|00000610| 69 73 74 65 72 20 69 6e | 74 09 6e 62 79 74 65 73 |ister in|t.nbytes|
|00000620| 3b 0a 58 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |;.X*****|********|
|00000630| 2a 2a 0a 58 2a 2a 2a 20 | 37 34 2c 38 30 20 2a 2a |**.X*** |74,80 **|
|00000640| 2a 2a 0a 58 20 20 0a 58 | 20 20 2f 2a 20 57 72 69 |**.X .X| /* Wri|
|00000650| 74 65 20 6f 75 74 20 74 | 68 65 20 6c 69 6e 65 20 |te out t|he line |
|00000660| 70 6f 69 6e 74 65 72 73 | 20 66 6f 72 20 62 75 66 |pointers| for buf|
|00000670| 66 65 72 20 42 2e 20 2a | 2f 0a 58 20 20 0a 58 21 |fer B. *|/.X .X!|
|00000680| 20 73 74 61 74 69 63 0a | 58 20 20 64 6d 70 70 6e | static.|X dmppn|
|00000690| 74 72 73 28 62 29 0a 58 | 20 20 72 65 67 69 73 74 |trs(b).X| regist|
|000006a0| 65 72 20 42 75 66 66 65 | 72 09 2a 62 3b 0a 58 20 |er Buffe|r.*b;.X |
|000006b0| 20 7b 0a 58 2d 2d 2d 20 | 37 34 2c 38 30 20 2d 2d | {.X--- |74,80 --|
|000006c0| 2d 2d 0a 58 20 20 0a 58 | 20 20 2f 2a 20 57 72 69 |--.X .X| /* Wri|
|000006d0| 74 65 20 6f 75 74 20 74 | 68 65 20 6c 69 6e 65 20 |te out t|he line |
|000006e0| 70 6f 69 6e 74 65 72 73 | 20 66 6f 72 20 62 75 66 |pointers| for buf|
|000006f0| 66 65 72 20 42 2e 20 2a | 2f 0a 58 20 20 0a 58 21 |fer B. *|/.X .X!|
|00000700| 20 70 72 69 76 61 74 65 | 0a 58 20 20 64 6d 70 70 | private|.X dmpp|
|00000710| 6e 74 72 73 28 62 29 0a | 58 20 20 72 65 67 69 73 |ntrs(b).|X regis|
|00000720| 74 65 72 20 42 75 66 66 | 65 72 09 2a 62 3b 0a 58 |ter Buff|er.*b;.X|
|00000730| 20 20 7b 0a 58 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | {.X***|********|
|00000740| 2a 2a 2a 2a 0a 58 2a 2a | 2a 20 38 36 2c 31 30 36 |****.X**|* 86,106|
|00000750| 20 2a 2a 2a 2a 0a 58 20 | 20 0a 58 20 20 2f 2a 20 | ****.X | .X /* |
|00000760| 64 75 6d 70 20 74 68 65 | 20 62 75 66 66 65 72 20 |dump the| buffer |
|00000770| 69 6e 66 6f 20 61 6e 64 | 20 74 68 65 6e 20 74 68 |info and| then th|
|00000780| 65 20 61 63 74 75 61 6c | 20 6c 69 6e 65 20 70 6f |e actual| line po|
|00000790| 69 6e 74 65 72 73 2e 20 | 2a 2f 0a 58 20 20 0a 58 |inters. |*/.X .X|
|000007a0| 21 20 73 74 61 74 69 63 | 0a 58 21 20 64 6d 70 5f |! static|.X! dmp_|
|000007b0| 62 75 66 28 62 29 0a 58 | 20 20 72 65 67 69 73 74 |buf(b).X| regist|
|000007c0| 65 72 20 42 75 66 66 65 | 72 09 2a 62 3b 0a 58 20 |er Buffe|r.*b;.X |
|000007d0| 20 7b 0a 58 21 20 09 73 | 74 61 74 69 63 20 73 74 | {.X! .s|tatic st|
|000007e0| 72 75 63 74 20 72 65 63 | 5f 65 6e 74 72 79 09 72 |ruct rec|_entry.r|
|000007f0| 65 63 6f 72 64 3b 0a 58 | 20 20 09 72 65 67 69 73 |ecord;.X| .regis|
|00000800| 74 65 72 20 4c 69 6e 65 | 09 2a 6c 70 3b 0a 58 20 |ter Line|.*lp;.X |
|00000810| 20 09 72 65 67 69 73 74 | 65 72 20 69 6e 74 09 6e | .regist|er int.n|
|00000820| 6c 69 6e 65 73 20 3d 20 | 30 3b 0a 58 20 20 0a 58 |lines = |0;.X .X|
|00000830| 20 20 09 66 6f 72 20 28 | 6c 70 20 3d 20 62 2d 3e | .for (|lp = b->|
|00000840| 62 5f 66 69 72 73 74 3b | 20 6c 70 20 21 3d 20 30 |b_first;| lp != 0|
|00000850| 3b 20 6c 70 20 3d 20 6c | 70 2d 3e 6c 5f 6e 65 78 |; lp = l|p->l_nex|
|00000860| 74 2c 20 6e 6c 69 6e 65 | 73 2b 2b 29 0a 58 21 20 |t, nline|s++).X! |
|00000870| 09 09 3b 0a 58 20 20 09 | 73 74 72 63 70 79 28 72 |..;.X .|strcpy(r|
|00000880| 65 63 6f 72 64 2e 72 5f | 66 6e 61 6d 65 2c 20 62 |ecord.r_|fname, b|
|00000890| 2d 3e 62 5f 66 6e 61 6d | 65 20 3f 20 62 2d 3e 62 |->b_fnam|e ? b->b|
|000008a0| 5f 66 6e 61 6d 65 20 3a | 20 4e 75 6c 6c 53 74 72 |_fname :| NullStr|
|000008b0| 29 3b 0a 58 20 20 09 73 | 74 72 63 70 79 28 72 65 |);.X .s|trcpy(re|
|000008c0| 63 6f 72 64 2e 72 5f 62 | 6e 61 6d 65 2c 20 62 2d |cord.r_b|name, b-|
|000008d0| 3e 62 5f 6e 61 6d 65 29 | 3b 0a 58 20 20 09 72 65 |>b_name)|;.X .re|
|000008e0| 63 6f 72 64 2e 72 5f 6e | 6c 69 6e 65 73 20 3d 20 |cord.r_n|lines = |
|000008f0| 6e 6c 69 6e 65 73 3b 0a | 58 20 20 09 70 75 74 6e |nlines;.|X .putn|
|00000900| 28 28 63 68 61 72 20 2a | 29 20 26 72 65 63 6f 72 |((char *|) &recor|
|00000910| 64 2c 20 73 69 7a 65 6f | 66 20 72 65 63 6f 72 64 |d, sizeo|f record|
|00000920| 29 3b 0a 58 2d 20 09 64 | 6d 70 70 6e 74 72 73 28 |);.X- .d|mppntrs(|
|00000930| 62 29 3b 0a 58 20 20 7d | 0a 58 20 20 0a 58 20 20 |b);.X }|.X .X |
|00000940| 2f 2a 20 47 6f 65 73 20 | 74 68 72 6f 75 67 68 20 |/* Goes |through |
|00000950| 61 6c 6c 20 74 68 65 20 | 62 75 66 66 65 72 73 20 |all the |buffers |
|00000960| 61 6e 64 20 73 79 6e 63 | 73 20 74 68 65 6d 20 74 |and sync|s them t|
|00000970| 6f 20 74 68 65 20 64 69 | 73 6b 2e 20 2a 2f 0a 58 |o the di|sk. */.X|
|00000980| 2d 2d 2d 20 38 36 2c 31 | 30 37 20 2d 2d 2d 2d 0a |--- 86,1|07 ----.|
|00000990| 58 20 20 0a 58 20 20 2f | 2a 20 64 75 6d 70 20 74 |X .X /|* dump t|
|000009a0| 68 65 20 62 75 66 66 65 | 72 20 69 6e 66 6f 20 61 |he buffe|r info a|
|000009b0| 6e 64 20 74 68 65 6e 20 | 74 68 65 20 61 63 74 75 |nd then |the actu|
|000009c0| 61 6c 20 6c 69 6e 65 20 | 70 6f 69 6e 74 65 72 73 |al line |pointers|
|000009d0| 2e 20 2a 2f 0a 58 20 20 | 0a 58 21 20 70 72 69 76 |. */.X |.X! priv|
|000009e0| 61 74 65 0a 58 21 20 64 | 6d 70 5f 62 75 66 5f 68 |ate.X! d|mp_buf_h|
|000009f0| 65 61 64 65 72 28 62 29 | 0a 58 20 20 72 65 67 69 |eader(b)|.X regi|
|00000a00| 73 74 65 72 20 42 75 66 | 66 65 72 09 2a 62 3b 0a |ster Buf|fer.*b;.|
|00000a10| 58 20 20 7b 0a 58 21 20 | 09 73 74 72 75 63 74 20 |X {.X! |.struct |
|00000a20| 72 65 63 5f 65 6e 74 72 | 79 09 72 65 63 6f 72 64 |rec_entr|y.record|
|00000a30| 3b 0a 58 20 20 09 72 65 | 67 69 73 74 65 72 20 4c |;.X .re|gister L|
|00000a40| 69 6e 65 09 2a 6c 70 3b | 0a 58 20 20 09 72 65 67 |ine.*lp;|.X .reg|
|00000a50| 69 73 74 65 72 20 69 6e | 74 09 6e 6c 69 6e 65 73 |ister in|t.nlines|
|00000a60| 20 3d 20 30 3b 0a 58 20 | 20 0a 58 20 20 09 66 6f | = 0;.X | .X .fo|
|00000a70| 72 20 28 6c 70 20 3d 20 | 62 2d 3e 62 5f 66 69 72 |r (lp = |b->b_fir|
|00000a80| 73 74 3b 20 6c 70 20 21 | 3d 20 30 3b 20 6c 70 20 |st; lp !|= 0; lp |
|00000a90| 3d 20 6c 70 2d 3e 6c 5f | 6e 65 78 74 2c 20 6e 6c |= lp->l_|next, nl|
|00000aa0| 69 6e 65 73 2b 2b 29 0a | 58 21 20 09 09 69 66 20 |ines++).|X! ..if |
|00000ab0| 28 6c 70 20 3d 3d 20 62 | 2d 3e 62 5f 64 6f 74 29 |(lp == b|->b_dot)|
|00000ac0| 0a 58 21 20 09 09 09 72 | 65 63 6f 72 64 2e 72 5f |.X! ...r|ecord.r_|
|00000ad0| 64 6f 74 6c 69 6e 65 20 | 3d 20 6e 6c 69 6e 65 73 |dotline |= nlines|
|00000ae0| 3b 0a 58 20 20 09 73 74 | 72 63 70 79 28 72 65 63 |;.X .st|rcpy(rec|
|00000af0| 6f 72 64 2e 72 5f 66 6e | 61 6d 65 2c 20 62 2d 3e |ord.r_fn|ame, b->|
|00000b00| 62 5f 66 6e 61 6d 65 20 | 3f 20 62 2d 3e 62 5f 66 |b_fname |? b->b_f|
|00000b10| 6e 61 6d 65 20 3a 20 4e | 75 6c 6c 53 74 72 29 3b |name : N|ullStr);|
|00000b20| 0a 58 20 20 09 73 74 72 | 63 70 79 28 72 65 63 6f |.X .str|cpy(reco|
|00000b30| 72 64 2e 72 5f 62 6e 61 | 6d 65 2c 20 62 2d 3e 62 |rd.r_bna|me, b->b|
|00000b40| 5f 6e 61 6d 65 29 3b 0a | 58 20 20 09 72 65 63 6f |_name);.|X .reco|
|00000b50| 72 64 2e 72 5f 6e 6c 69 | 6e 65 73 20 3d 20 6e 6c |rd.r_nli|nes = nl|
|00000b60| 69 6e 65 73 3b 0a 58 2b | 20 09 72 65 63 6f 72 64 |ines;.X+| .record|
|00000b70| 2e 72 5f 64 6f 74 63 68 | 61 72 20 3d 20 62 2d 3e |.r_dotch|ar = b->|
|00000b80| 62 5f 63 68 61 72 3b 0a | 58 20 20 09 70 75 74 6e |b_char;.|X .putn|
|00000b90| 28 28 63 68 61 72 20 2a | 29 20 26 72 65 63 6f 72 |((char *|) &recor|
|00000ba0| 64 2c 20 73 69 7a 65 6f | 66 20 72 65 63 6f 72 64 |d, sizeo|f record|
|00000bb0| 29 3b 0a 58 20 20 7d 0a | 58 20 20 0a 58 20 20 2f |);.X }.|X .X /|
|00000bc0| 2a 20 47 6f 65 73 20 74 | 68 72 6f 75 67 68 20 61 |* Goes t|hrough a|
|00000bd0| 6c 6c 20 74 68 65 20 62 | 75 66 66 65 72 73 20 61 |ll the b|uffers a|
|00000be0| 6e 64 20 73 79 6e 63 73 | 20 74 68 65 6d 20 74 6f |nd syncs| them to|
|00000bf0| 20 74 68 65 20 64 69 73 | 6b 2e 20 2a 2f 0a 58 2a | the dis|k. */.X*|
|00000c00| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 0a 58 |********|******.X|
|00000c10| 2a 2a 2a 20 31 31 30 2c | 31 31 35 20 2a 2a 2a 2a |*** 110,|115 ****|
|00000c20| 0a 58 2d 2d 2d 20 31 31 | 31 2c 31 31 37 20 2d 2d |.X--- 11|1,117 --|
|00000c30| 2d 2d 0a 58 20 20 53 79 | 6e 63 52 65 63 28 29 0a |--.X Sy|ncRec().|
|00000c40| 58 20 20 7b 0a 58 20 20 | 09 72 65 67 69 73 74 65 |X {.X |.registe|
|00000c50| 72 20 42 75 66 66 65 72 | 09 2a 62 3b 0a 58 2b 20 |r Buffer|.*b;.X+ |
|00000c60| 09 65 78 74 65 72 6e 20 | 64 69 73 6b 5f 6c 69 6e |.extern |disk_lin|
|00000c70| 65 09 44 46 72 65 65 3b | 0a 58 20 20 0a 58 20 20 |e.DFree;|.X .X |
|00000c80| 09 69 66 20 28 72 65 63 | 5f 66 64 20 3d 3d 20 30 |.if (rec|_fd == 0|
|00000c90| 29 0a 58 20 20 09 09 72 | 65 63 69 6e 69 74 28 29 |).X ..r|ecinit()|
|00000ca0| 3b 09 2f 2a 20 49 6e 69 | 74 20 72 65 63 6f 76 65 |;./* Ini|t recove|
|00000cb0| 72 20 66 69 6c 65 2e 20 | 2a 2f 0a 58 2a 2a 2a 2a |r file. |*/.X****|
|00000cc0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0a 58 2a 2a 2a |********|***.X***|
|00000cd0| 20 31 32 33 2c 31 32 38 | 20 2a 2a 2a 2a 0a 58 2d | 123,128| ****.X-|
|00000ce0| 2d 2d 20 31 32 35 2c 31 | 33 31 20 2d 2d 2d 2d 0a |-- 125,1|31 ----.|
|00000cf0| 58 20 20 09 09 09 63 6f | 6e 74 69 6e 75 65 3b 0a |X ...co|ntinue;.|
|00000d00| 58 20 20 09 09 65 6c 73 | 65 0a 58 20 20 09 09 09 |X ..els|e.X ...|
|00000d10| 48 65 61 64 65 72 2e 4e | 62 75 66 66 65 72 73 2b |Header.N|buffers+|
|00000d20| 2b 3b 0a 58 2b 20 09 48 | 65 61 64 65 72 2e 46 72 |+;.X+ .H|eader.Fr|
|00000d30| 65 65 50 74 72 20 3d 20 | 44 46 72 65 65 3b 0a 58 |eePtr = |DFree;.X|
|00000d40| 20 20 09 70 75 74 6e 28 | 28 63 68 61 72 20 2a 29 | .putn(|(char *)|
|00000d50| 20 26 48 65 61 64 65 72 | 2c 20 73 69 7a 65 6f 66 | &Header|, sizeof|
|00000d60| 20 48 65 61 64 65 72 29 | 3b 0a 58 20 20 09 69 66 | Header)|;.X .if|
|00000d70| 20 28 48 65 61 64 65 72 | 2e 4e 62 75 66 66 65 72 | (Header|.Nbuffer|
|00000d80| 73 20 21 3d 20 30 29 20 | 7b 0a 58 20 20 09 09 53 |s != 0) |{.X ..S|
|00000d90| 79 6e 63 54 6d 70 28 29 | 3b 0a 58 2a 2a 2a 2a 2a |yncTmp()|;.X*****|
|00000da0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 58 2a 2a 2a 20 |********|**.X*** |
|00000db0| 31 33 30 2c 31 33 36 20 | 2a 2a 2a 2a 0a 58 20 20 |130,136 |****.X |
|00000dc0| 09 09 09 69 66 20 28 62 | 2d 3e 62 5f 74 79 70 65 |...if (b|->b_type|
|00000dd0| 20 3d 3d 20 42 5f 53 43 | 52 41 54 43 48 20 7c 7c | == B_SC|RATCH |||
|00000de0| 20 21 49 73 4d 6f 64 69 | 66 69 65 64 28 62 29 29 | !IsModi|fied(b))|
|00000df0| 0a 58 20 20 09 09 09 09 | 63 6f 6e 74 69 6e 75 65 |.X ....|continue|
|00000e00| 3b 0a 58 20 20 09 09 09 | 65 6c 73 65 0a 58 21 20 |;.X ...|else.X! |
|00000e10| 09 09 09 09 64 6d 70 5f | 62 75 66 28 62 29 3b 0a |....dmp_|buf(b);.|
|00000e20| 58 20 20 09 7d 0a 58 20 | 20 09 66 6c 75 73 68 28 |X .}.X | .flush(|
|00000e30| 72 65 63 5f 6f 75 74 29 | 3b 0a 58 20 20 7d 0a 58 |rec_out)|;.X }.X|
|00000e40| 2d 2d 2d 20 31 33 33 2c | 31 34 38 20 2d 2d 2d 2d |--- 133,|148 ----|
|00000e50| 0a 58 20 20 09 09 09 69 | 66 20 28 62 2d 3e 62 5f |.X ...i|f (b->b_|
|00000e60| 74 79 70 65 20 3d 3d 20 | 42 5f 53 43 52 41 54 43 |type == |B_SCRATC|
|00000e70| 48 20 7c 7c 20 21 49 73 | 4d 6f 64 69 66 69 65 64 |H || !Is|Modified|
|00000e80| 28 62 29 29 0a 58 20 20 | 09 09 09 09 63 6f 6e 74 |(b)).X |....cont|
|00000e90| 69 6e 75 65 3b 0a 58 20 | 20 09 09 09 65 6c 73 65 |inue;.X | ...else|
|00000ea0| 0a 58 21 20 09 09 09 09 | 64 6d 70 5f 62 75 66 5f |.X! ....|dmp_buf_|
|00000eb0| 68 65 61 64 65 72 28 62 | 29 3b 0a 58 21 20 09 09 |header(b|);.X! ..|
|00000ec0| 66 6f 72 20 28 62 20 3d | 20 77 6f 72 6c 64 3b 20 |for (b =| world; |
|00000ed0| 62 20 21 3d 20 30 3b 20 | 62 20 3d 20 62 2d 3e 62 |b != 0; |b = b->b|
|00000ee0| 5f 6e 65 78 74 29 0a 58 | 21 20 09 09 09 69 66 20 |_next).X|! ...if |
|00000ef0| 28 62 2d 3e 62 5f 74 79 | 70 65 20 3d 3d 20 42 5f |(b->b_ty|pe == B_|
|00000f00| 53 43 52 41 54 43 48 20 | 7c 7c 20 21 49 73 4d 6f |SCRATCH ||| !IsMo|
|00000f10| 64 69 66 69 65 64 28 62 | 29 29 0a 58 21 20 09 09 |dified(b|)).X! ..|
|00000f20| 09 09 63 6f 6e 74 69 6e | 75 65 3b 0a 58 21 20 09 |..contin|ue;.X! .|
|00000f30| 09 09 65 6c 73 65 0a 58 | 21 20 09 09 09 09 64 6d |..else.X|! ....dm|
|00000f40| 70 70 6e 74 72 73 28 62 | 29 3b 0a 58 20 20 09 7d |ppntrs(b|);.X .}|
|00000f50| 0a 58 20 20 09 66 6c 75 | 73 68 28 72 65 63 5f 6f |.X .flu|sh(rec_o|
|00000f60| 75 74 29 3b 0a 58 2b 20 | 7d 0a 58 2b 20 0a 58 2b |ut);.X+ |}.X+ .X+|
|00000f70| 20 46 75 6c 6c 52 65 63 | 6f 76 65 72 28 29 0a 58 | FullRec|over().X|
|00000f80| 2b 20 7b 0a 58 20 20 7d | 0a 58 64 69 66 66 20 2d |+ {.X }|.Xdiff -|
|00000f90| 63 20 6f 6a 6f 76 65 2f | 72 65 63 2e 68 20 6a 6f |c ojove/|rec.h jo|
|00000fa0| 76 65 2f 72 65 63 2e 68 | 0a 58 2a 2a 2a 20 6f 6a |ve/rec.h|.X*** oj|
|00000fb0| 6f 76 65 2f 72 65 63 2e | 68 09 54 68 75 20 4a 75 |ove/rec.|h.Thu Ju|
|00000fc0| 6c 20 31 36 20 30 39 3a | 31 35 3a 30 36 20 31 39 |l 16 09:|15:06 19|
|00000fd0| 38 37 0a 58 2d 2d 2d 20 | 6a 6f 76 65 2f 72 65 63 |87.X--- |jove/rec|
|00000fe0| 2e 68 09 54 68 75 20 4d | 61 72 20 31 39 20 31 37 |.h.Thu M|ar 19 17|
|00000ff0| 3a 31 33 3a 33 30 20 31 | 39 38 37 0a 58 2a 2a 2a |:13:30 1|987.X***|
|00001000| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 0a 58 2a 2a |********|****.X**|
|00001010| 2a 20 36 2c 32 30 20 2a | 2a 2a 2a 0a 58 20 20 20 |* 6,20 *|***.X |
|00001020| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001030| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001040| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001050| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001060| 2a 2a 2a 2a 2a 2a 2a 2a | 2f 0a 58 20 20 0a 58 20 |********|/.X .X |
|00001070| 20 73 74 72 75 63 74 20 | 72 65 63 5f 68 65 61 64 | struct |rec_head|
|00001080| 20 7b 0a 58 21 20 09 69 | 6e 74 09 55 69 64 2c 09 | {.X! .i|nt.Uid,.|
|00001090| 09 2f 2a 20 55 69 64 20 | 6f 66 20 6f 77 6e 65 72 |./* Uid |of owner|
|000010a0| 2e 20 2a 2f 0a 58 21 20 | 09 09 50 69 64 3b 09 09 |. */.X! |..Pid;..|
|000010b0| 2f 2a 20 50 69 64 20 6f | 66 20 6a 6f 76 65 20 70 |/* Pid o|f jove p|
|000010c0| 72 6f 63 65 73 73 2e 20 | 2a 2f 0a 58 21 20 09 74 |rocess. |*/.X! .t|
|000010d0| 69 6d 65 5f 74 09 55 70 | 64 54 69 6d 65 3b 09 2f |ime_t.Up|dTime;./|
|000010e0| 2a 20 4c 61 73 74 20 74 | 69 6d 65 20 74 68 69 73 |* Last t|ime this|
|000010f0| 20 77 61 73 20 75 70 64 | 61 74 65 64 2e 20 2a 2f | was upd|ated. */|
|00001100| 0a 58 21 20 09 69 6e 74 | 09 4e 62 75 66 66 65 72 |.X! .int|.Nbuffer|
|00001110| 73 3b 09 2f 2a 20 4e 75 | 6d 62 65 72 20 6f 66 20 |s;./* Nu|mber of |
|00001120| 62 75 66 66 65 72 73 2e | 20 2a 2f 0a 58 20 20 7d |buffers.| */.X }|
|00001130| 3b 0a 58 20 20 0a 58 20 | 20 73 74 72 75 63 74 20 |;.X .X | struct |
|00001140| 72 65 63 5f 65 6e 74 72 | 79 20 7b 0a 58 20 20 09 |rec_entr|y {.X .|
|00001150| 63 68 61 72 09 72 5f 62 | 6e 61 6d 65 5b 31 32 38 |char.r_b|name[128|
|00001160| 5d 2c 0a 58 20 20 09 09 | 72 5f 66 6e 61 6d 65 5b |],.X ..|r_fname[|
|00001170| 31 32 38 5d 3b 0a 58 21 | 20 09 69 6e 74 09 72 5f |128];.X!| .int.r_|
|00001180| 6e 6c 69 6e 65 73 3b 0a | 58 20 20 7d 3b 0a 58 2d |nlines;.|X };.X-|
|00001190| 20 0a 58 2d 2d 2d 20 36 | 2c 32 32 20 2d 2d 2d 2d | .X--- 6|,22 ----|
|000011a0| 0a 58 20 20 20 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.X ***|********|
|000011b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000011c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000011d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000011e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2f 0a 58 |********|*****/.X|
|000011f0| 20 20 0a 58 20 20 73 74 | 72 75 63 74 20 72 65 63 | .X st|ruct rec|
|00001200| 5f 68 65 61 64 20 7b 0a | 58 21 20 09 69 6e 74 09 |_head {.|X! .int.|
|00001210| 09 55 69 64 2c 09 09 2f | 2a 20 75 69 64 20 6f 66 |.Uid,../|* uid of|
|00001220| 20 6f 77 6e 65 72 20 2a | 2f 0a 58 21 20 09 09 09 | owner *|/.X! ...|
|00001230| 50 69 64 3b 09 09 2f 2a | 20 70 69 64 20 6f 66 20 |Pid;../*| pid of |
|00001240| 6a 6f 76 65 20 70 72 6f | 63 65 73 73 20 2a 2f 0a |jove pro|cess */.|
|00001250| 58 21 20 09 74 69 6d 65 | 5f 74 09 09 55 70 64 54 |X! .time|_t..UpdT|
|00001260| 69 6d 65 3b 09 2f 2a 20 | 6c 61 73 74 20 74 69 6d |ime;./* |last tim|
|00001270| 65 20 74 68 69 73 20 77 | 61 73 20 75 70 64 61 74 |e this w|as updat|
|00001280| 65 64 20 2a 2f 0a 58 21 | 20 09 69 6e 74 09 09 4e |ed */.X!| .int..N|
|00001290| 62 75 66 66 65 72 73 3b | 09 2f 2a 20 6e 75 6d 62 |buffers;|./* numb|
|000012a0| 65 72 20 6f 66 20 62 75 | 66 66 65 72 73 20 2a 2f |er of bu|ffers */|
|000012b0| 0a 58 21 20 09 64 69 73 | 6b 5f 6c 69 6e 65 09 46 |.X! .dis|k_line.F|
|000012c0| 72 65 65 50 74 72 3b 09 | 2f 2a 20 70 6f 73 69 74 |reePtr;.|/* posit|
|000012d0| 69 6f 6e 20 6f 66 20 44 | 46 72 65 65 20 2a 2f 0a |ion of D|Free */.|
|000012e0| 58 20 20 7d 3b 0a 58 20 | 20 0a 58 20 20 73 74 72 |X };.X | .X str|
|000012f0| 75 63 74 20 72 65 63 5f | 65 6e 74 72 79 20 7b 0a |uct rec_|entry {.|
|00001300| 58 20 20 09 63 68 61 72 | 09 72 5f 62 6e 61 6d 65 |X .char|.r_bname|
|00001310| 5b 31 32 38 5d 2c 0a 58 | 20 20 09 09 72 5f 66 6e |[128],.X| ..r_fn|
|00001320| 61 6d 65 5b 31 32 38 5d | 3b 0a 58 21 20 09 69 6e |ame[128]|;.X! .in|
|00001330| 74 09 72 5f 6e 6c 69 6e | 65 73 2c 0a 58 21 20 09 |t.r_nlin|es,.X! .|
|00001340| 09 72 5f 64 6f 74 6c 69 | 6e 65 2c 09 2f 2a 20 73 |.r_dotli|ne,./* s|
|00001350| 6f 20 77 65 20 63 61 6e | 20 72 65 61 6c 6c 79 20 |o we can| really |
|00001360| 73 61 76 65 20 74 68 65 | 20 63 6f 6e 74 65 78 74 |save the| context|
|00001370| 20 2a 2f 0a 58 21 20 09 | 09 72 5f 64 6f 74 63 68 | */.X! .|.r_dotch|
|00001380| 61 72 3b 0a 58 20 20 7d | 3b 0a 58 64 69 66 66 20 |ar;.X }|;.Xdiff |
|00001390| 2d 63 20 6f 6a 6f 76 65 | 2f 72 65 63 6f 76 65 72 |-c ojove|/recover|
|000013a0| 2e 63 20 6a 6f 76 65 2f | 72 65 63 6f 76 65 72 2e |.c jove/|recover.|
|000013b0| 63 0a 58 2a 2a 2a 20 6f | 6a 6f 76 65 2f 72 65 63 |c.X*** o|jove/rec|
|000013c0| 6f 76 65 72 2e 63 09 54 | 68 75 20 4a 75 6c 20 31 |over.c.T|hu Jul 1|
|000013d0| 36 20 30 39 3a 31 35 3a | 31 32 20 31 39 38 37 0a |6 09:15:|12 1987.|
|000013e0| 58 2d 2d 2d 20 6a 6f 76 | 65 2f 72 65 63 6f 76 65 |X--- jov|e/recove|
|000013f0| 72 2e 63 09 4d 6f 6e 20 | 4a 75 6c 20 31 33 20 31 |r.c.Mon |Jul 13 1|
|00001400| 32 3a 30 30 3a 31 35 20 | 31 39 38 37 0a 58 2a 2a |2:00:15 |1987.X**|
|00001410| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 0a 58 2a |********|*****.X*|
|00001420| 2a 2a 20 34 30 35 2c 34 | 31 34 20 2a 2a 2a 2a 0a |** 405,4|14 ****.|
|00001430| 58 20 20 09 09 09 70 72 | 69 6e 74 66 28 22 72 65 |X ...pr|intf("re|
|00001440| 63 6f 76 65 72 3a 20 63 | 61 6e 6e 6f 74 20 63 72 |cover: c|annot cr|
|00001450| 65 61 74 65 20 25 73 2e | 5c 6e 22 2c 20 64 65 73 |eate %s.|\n", des|
|00001460| 74 29 3b 0a 58 20 20 09 | 09 09 72 65 74 75 72 6e |t);.X .|..return|
|00001470| 3b 0a 58 20 20 09 09 7d | 0a 58 2d 20 09 09 73 65 |;.X ..}|.X- ..se|
|00001480| 65 6b 74 6f 28 73 72 63 | 20 2d 20 62 75 66 6c 69 |ekto(src| - bufli|
|00001490| 73 74 29 3b 0a 58 20 20 | 09 09 69 66 20 28 64 65 |st);.X |..if (de|
|000014a0| 73 74 20 21 3d 20 74 74 | 79 29 0a 58 20 20 09 09 |st != tt|y).X ..|
|000014b0| 09 70 72 69 6e 74 66 28 | 22 5c 22 25 73 5c 22 22 |.printf(|"\"%s\""|
|000014c0| 2c 20 64 65 73 74 29 3b | 0a 58 21 20 09 09 64 75 |, dest);|.X! ..du|
|000014d0| 6d 70 5f 66 69 6c 65 28 | 6f 75 74 66 69 6c 65 29 |mp_file(|outfile)|
|000014e0| 3b 0a 58 20 20 09 7d 20 | 65 6c 73 65 0a 58 20 20 |;.X .} |else.X |
|000014f0| 09 09 70 72 69 6e 74 66 | 28 22 5c 6e 41 62 6f 72 |..printf|("\nAbor|
|00001500| 74 65 64 21 5c 6e 22 29 | 3b 0a 58 20 20 09 66 63 |ted!\n")|;.X .fc|
|00001510| 6c 6f 73 65 28 6f 75 74 | 66 69 6c 65 29 3b 0a 58 |lose(out|file);.X|
|00001520| 2d 2d 2d 20 34 30 35 2c | 34 31 33 20 2d 2d 2d 2d |--- 405,|413 ----|
|00001530| 0a 58 20 20 09 09 09 70 | 72 69 6e 74 66 28 22 72 |.X ...p|rintf("r|
|00001540| 65 63 6f 76 65 72 3a 20 | 63 61 6e 6e 6f 74 20 63 |ecover: |cannot c|
|00001550| 72 65 61 74 65 20 25 73 | 2e 5c 6e 22 2c 20 64 65 |reate %s|.\n", de|
|00001560| 73 74 29 3b 0a 58 20 20 | 09 09 09 72 65 74 75 72 |st);.X |...retur|
|00001570| 6e 3b 0a 58 20 20 09 09 | 7d 0a 58 20 20 09 09 69 |n;.X ..|}.X ..i|
|00001580| 66 20 28 64 65 73 74 20 | 21 3d 20 74 74 79 29 0a |f (dest |!= tty).|
|00001590| 58 20 20 09 09 09 70 72 | 69 6e 74 66 28 22 5c 22 |X ...pr|intf("\"|
|000015a0| 25 73 5c 22 22 2c 20 64 | 65 73 74 29 3b 0a 58 21 |%s\"", d|est);.X!|
|000015b0| 20 09 09 64 75 6d 70 5f | 66 69 6c 65 28 73 72 63 | ..dump_|file(src|
|000015c0| 20 2d 20 62 75 66 6c 69 | 73 74 2c 20 6f 75 74 66 | - bufli|st, outf|
|000015d0| 69 6c 65 29 3b 0a 58 20 | 20 09 7d 20 65 6c 73 65 |ile);.X | .} else|
|000015e0| 0a 58 20 20 09 09 70 72 | 69 6e 74 66 28 22 5c 6e |.X ..pr|intf("\n|
|000015f0| 41 62 6f 72 74 65 64 21 | 5c 6e 22 29 3b 0a 58 20 |Aborted!|\n");.X |
|00001600| 20 09 66 63 6c 6f 73 65 | 28 6f 75 74 66 69 6c 65 | .fclose|(outfile|
|00001610| 29 3b 0a 58 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |);.X****|********|
|00001620| 2a 2a 2a 0a 58 2a 2a 2a | 20 34 34 30 2c 34 35 34 |***.X***| 440,454|
|00001630| 20 2a 2a 2a 2a 0a 58 20 | 20 73 65 65 6b 74 6f 28 | ****.X | seekto(|
|00001640| 77 68 69 63 68 29 0a 58 | 20 20 7b 0a 58 20 20 09 |which).X| {.X .|
|00001650| 73 74 72 75 63 74 20 72 | 65 63 5f 65 6e 74 72 79 |struct r|ec_entry|
|00001660| 09 72 65 63 3b 0a 58 20 | 20 0a 58 21 20 09 66 73 |.rec;.X | .X! .fs|
|00001670| 65 65 6b 28 70 74 72 73 | 5f 66 70 2c 20 28 6c 6f |eek(ptrs|_fp, (lo|
|00001680| 6e 67 29 20 28 73 69 7a | 65 6f 66 20 48 65 61 64 |ng) (siz|eof Head|
|00001690| 65 72 29 2c 20 4c 5f 53 | 45 54 29 3b 0a 58 21 20 |er), L_S|ET);.X! |
|000016a0| 09 0a 58 21 20 09 77 68 | 69 6c 65 20 28 77 68 69 |..X! .wh|ile (whi|
|000016b0| 63 68 2d 2d 20 3e 20 31 | 29 20 7b 0a 58 21 20 09 |ch-- > 1|) {.X! .|
|000016c0| 09 72 65 61 64 5f 72 65 | 63 28 26 72 65 63 29 3b |.read_re|c(&rec);|
|000016d0| 0a 58 21 20 09 09 69 66 | 20 28 66 73 65 65 6b 28 |.X! ..if| (fseek(|
|000016e0| 70 74 72 73 5f 66 70 2c | 20 28 6c 6f 6e 67 29 20 |ptrs_fp,| (long) |
|000016f0| 72 65 63 2e 72 5f 6e 6c | 69 6e 65 73 20 2a 20 73 |rec.r_nl|ines * s|
|00001700| 69 7a 65 6f 66 20 28 64 | 69 73 6b 5f 6c 69 6e 65 |izeof (d|isk_line|
|00001710| 29 2c 0a 58 21 20 09 09 | 09 4c 5f 49 4e 43 52 29 |),.X! ..|.L_INCR)|
|00001720| 20 3d 3d 20 2d 31 29 0a | 58 21 20 09 09 09 70 72 | == -1).|X! ...pr|
|00001730| 69 6e 74 66 28 22 72 65 | 63 6f 76 65 72 3a 20 69 |intf("re|cover: i|
|00001740| 6d 70 72 6f 70 65 72 20 | 66 73 65 65 6b 21 5c 6e |mproper |fseek!\n|
|00001750| 22 29 3b 0a 58 21 20 09 | 7d 0a 58 20 20 7d 0a 58 |");.X! .|}.X }.X|
|00001760| 20 20 0a 58 20 20 6d 61 | 6b 62 6c 69 73 74 28 29 | .X ma|kblist()|
|00001770| 0a 58 2d 2d 2d 20 34 33 | 39 2c 34 35 31 20 2d 2d |.X--- 43|9,451 --|
|00001780| 2d 2d 0a 58 20 20 73 65 | 65 6b 74 6f 28 77 68 69 |--.X se|ekto(whi|
|00001790| 63 68 29 0a 58 20 20 7b | 0a 58 20 20 09 73 74 72 |ch).X {|.X .str|
|000017a0| 75 63 74 20 72 65 63 5f | 65 6e 74 72 79 09 72 65 |uct rec_|entry.re|
|000017b0| 63 3b 0a 58 2b 20 09 6c | 6f 6e 67 09 6f 66 66 73 |c;.X+ .l|ong.offs|
|000017c0| 65 74 3b 0a 58 2b 20 09 | 69 6e 74 09 69 3b 0a 58 |et;.X+ .|int.i;.X|
|000017d0| 20 20 0a 58 21 20 09 6f | 66 66 73 65 74 20 3d 20 | .X! .o|ffset = |
|000017e0| 73 69 7a 65 6f 66 20 28 | 48 65 61 64 65 72 29 20 |sizeof (|Header) |
|000017f0| 2b 20 28 48 65 61 64 65 | 72 2e 4e 62 75 66 66 65 |+ (Heade|r.Nbuffe|
|00001800| 72 73 20 2a 20 73 69 7a | 65 6f 66 20 28 72 65 63 |rs * siz|eof (rec|
|00001810| 29 29 3b 0a 58 21 20 09 | 66 6f 72 20 28 69 20 3d |));.X! .|for (i =|
|00001820| 20 31 3b 20 69 20 3c 20 | 77 68 69 63 68 3b 20 69 | 1; i < |which; i|
|00001830| 2b 2b 29 0a 58 21 20 09 | 09 6f 66 66 73 65 74 20 |++).X! .|.offset |
|00001840| 2b 3d 20 62 75 66 6c 69 | 73 74 5b 69 5d 2d 3e 72 |+= bufli|st[i]->r|
|00001850| 5f 6e 6c 69 6e 65 73 20 | 2a 20 73 69 7a 65 6f 66 |_nlines |* sizeof|
|00001860| 20 28 64 69 73 6b 5f 6c | 69 6e 65 29 3b 0a 58 21 | (disk_l|ine);.X!|
|00001870| 20 09 66 73 65 65 6b 28 | 70 74 72 73 5f 66 70 2c | .fseek(|ptrs_fp,|
|00001880| 20 6f 66 66 73 65 74 2c | 20 4c 5f 53 45 54 29 3b | offset,| L_SET);|
|00001890| 0a 58 20 20 7d 0a 58 20 | 20 0a 58 20 20 6d 61 6b |.X }.X | .X mak|
|000018a0| 62 6c 69 73 74 28 29 0a | 58 2a 2a 2a 2a 2a 2a 2a |blist().|X*******|
|000018b0| 2a 2a 2a 2a 2a 2a 2a 2a | 0a 58 2a 2a 2a 20 34 35 |********|.X*** 45|
|000018c0| 35 2c 34 36 39 20 2a 2a | 2a 2a 0a 58 20 20 7b 0a |5,469 **|**.X {.|
|000018d0| 58 20 20 09 69 6e 74 09 | 69 3b 0a 58 20 20 0a 58 |X .int.|i;.X .X|
|000018e0| 20 20 09 66 6f 72 20 28 | 69 20 3d 20 31 3b 20 69 | .for (|i = 1; i|
|000018f0| 20 3c 3d 20 48 65 61 64 | 65 72 2e 4e 62 75 66 66 | <= Head|er.Nbuff|
|00001900| 65 72 73 3b 20 69 2b 2b | 29 20 7b 0a 58 2d 20 09 |ers; i++|) {.X- .|
|00001910| 09 73 65 65 6b 74 6f 28 | 69 29 3b 0a 58 20 20 09 |.seekto(|i);.X .|
|00001920| 09 69 66 20 28 62 75 66 | 6c 69 73 74 5b 69 5d 20 |.if (buf|list[i] |
|00001930| 3d 3d 20 30 29 0a 58 20 | 20 09 09 09 62 75 66 6c |== 0).X | ...bufl|
|00001940| 69 73 74 5b 69 5d 20 3d | 20 28 73 74 72 75 63 74 |ist[i] =| (struct|
|00001950| 20 72 65 63 5f 65 6e 74 | 72 79 20 2a 29 20 6d 61 | rec_ent|ry *) ma|
|00001960| 6c 6c 6f 63 20 28 73 69 | 7a 65 6f 66 20 28 73 74 |lloc (si|zeof (st|
|00001970| 72 75 63 74 20 72 65 63 | 5f 65 6e 74 72 79 29 29 |ruct rec|_entry))|
|00001980| 3b 0a 58 20 20 09 09 72 | 65 61 64 5f 72 65 63 28 |;.X ..r|ead_rec(|
|00001990| 62 75 66 6c 69 73 74 5b | 69 5d 29 3b 0a 58 20 20 |buflist[|i]);.X |
|000019a0| 09 7d 0a 58 21 20 09 69 | 66 20 28 62 75 66 6c 69 |.}.X! .i|f (bufli|
|000019b0| 73 74 5b 69 5d 29 20 7b | 0a 58 20 20 09 09 66 72 |st[i]) {|.X ..fr|
|000019c0| 65 65 28 28 63 68 61 72 | 20 2a 29 20 62 75 66 6c |ee((char| *) bufl|
|000019d0| 69 73 74 5b 69 5d 29 3b | 0a 58 20 20 09 09 62 75 |ist[i]);|.X ..bu|
|000019e0| 66 6c 69 73 74 5b 69 5d | 20 3d 20 30 3b 0a 58 20 |flist[i]| = 0;.X |
|000019f0| 20 09 7d 0a 58 20 20 7d | 0a 58 20 20 0a 58 2d 2d | .}.X }|.X .X--|
|00001a00| 2d 20 34 35 32 2c 34 36 | 37 20 2d 2d 2d 2d 0a 58 |- 452,46|7 ----.X|
|00001a10| 20 20 7b 0a 58 20 20 09 | 69 6e 74 09 69 3b 0a 58 | {.X .|int.i;.X|
|00001a20| 20 20 0a 58 2b 20 09 66 | 73 65 65 6b 28 70 74 72 | .X+ .f|seek(ptr|
|00001a30| 73 5f 66 70 2c 20 28 6c | 6f 6e 67 29 20 73 69 7a |s_fp, (l|ong) siz|
|00001a40| 65 6f 66 20 28 48 65 61 | 64 65 72 29 2c 20 4c 5f |eof (Hea|der), L_|
|00001a50| 53 45 54 29 3b 0a 58 20 | 20 09 66 6f 72 20 28 69 |SET);.X | .for (i|
|00001a60| 20 3d 20 31 3b 20 69 20 | 3c 3d 20 48 65 61 64 65 | = 1; i |<= Heade|
|00001a70| 72 2e 4e 62 75 66 66 65 | 72 73 3b 20 69 2b 2b 29 |r.Nbuffe|rs; i++)|
|00001a80| 20 7b 0a 58 20 20 09 09 | 69 66 20 28 62 75 66 6c | {.X ..|if (bufl|
|00001a90| 69 73 74 5b 69 5d 20 3d | 3d 20 30 29 0a 58 20 20 |ist[i] =|= 0).X |
|00001aa0| 09 09 09 62 75 66 6c 69 | 73 74 5b 69 5d 20 3d 20 |...bufli|st[i] = |
|00001ab0| 28 73 74 72 75 63 74 20 | 72 65 63 5f 65 6e 74 72 |(struct |rec_entr|
|00001ac0| 79 20 2a 29 20 6d 61 6c | 6c 6f 63 20 28 73 69 7a |y *) mal|loc (siz|
|00001ad0| 65 6f 66 20 28 73 74 72 | 75 63 74 20 72 65 63 5f |eof (str|uct rec_|
|00001ae0| 65 6e 74 72 79 29 29 3b | 0a 58 20 20 09 09 72 65 |entry));|.X ..re|
|00001af0| 61 64 5f 72 65 63 28 62 | 75 66 6c 69 73 74 5b 69 |ad_rec(b|uflist[i|
|00001b00| 5d 29 3b 0a 58 20 20 09 | 7d 0a 58 21 20 09 77 68 |]);.X .|}.X! .wh|
|00001b10| 69 6c 65 20 28 62 75 66 | 6c 69 73 74 5b 69 5d 29 |ile (buf|list[i])|
|00001b20| 20 7b 0a 58 20 20 09 09 | 66 72 65 65 28 28 63 68 | {.X ..|free((ch|
|00001b30| 61 72 20 2a 29 20 62 75 | 66 6c 69 73 74 5b 69 5d |ar *) bu|flist[i]|
|00001b40| 29 3b 0a 58 20 20 09 09 | 62 75 66 6c 69 73 74 5b |);.X ..|buflist[|
|00001b50| 69 5d 20 3d 20 30 3b 0a | 58 2b 20 09 09 69 2b 2b |i] = 0;.|X+ ..i++|
|00001b60| 3b 0a 58 20 20 09 7d 0a | 58 20 20 7d 0a 58 20 20 |;.X .}.|X }.X |
|00001b70| 0a 58 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.X******|********|
|00001b80| 2a 0a 58 2a 2a 2a 20 34 | 38 31 2c 34 39 36 20 2a |*.X*** 4|81,496 *|
|00001b90| 2a 2a 2a 0a 58 20 20 09 | 72 65 74 75 72 6e 20 61 |***.X .|return a|
|00001ba0| 64 64 72 3b 0a 58 20 20 | 7d 0a 58 20 20 0a 58 21 |ddr;.X |}.X .X!|
|00001bb0| 20 64 75 6d 70 5f 66 69 | 6c 65 28 6f 75 74 29 0a | dump_fi|le(out).|
|00001bc0| 58 20 20 46 49 4c 45 09 | 2a 6f 75 74 3b 0a 58 20 |X FILE.|*out;.X |
|00001bd0| 20 7b 0a 58 2d 20 09 73 | 74 72 75 63 74 20 72 65 | {.X- .s|truct re|
|00001be0| 63 5f 65 6e 74 72 79 09 | 72 65 63 6f 72 64 3b 0a |c_entry.|record;.|
|00001bf0| 58 20 20 09 72 65 67 69 | 73 74 65 72 20 69 6e 74 |X .regi|ster int|
|00001c00| 09 6e 6c 69 6e 65 73 3b | 0a 58 20 20 09 72 65 67 |.nlines;|.X .reg|
|00001c10| 69 73 74 65 72 20 64 69 | 73 6b 5f 6c 69 6e 65 09 |ister di|sk_line.|
|00001c20| 64 61 64 64 72 3b 0a 58 | 20 20 09 63 68 61 72 09 |daddr;.X| .char.|
|00001c30| 62 75 66 5b 42 55 46 53 | 49 5a 5d 3b 0a 58 20 20 |buf[BUFS|IZ];.X |
|00001c40| 0a 58 21 20 09 72 65 61 | 64 5f 72 65 63 28 26 72 |.X! .rea|d_rec(&r|
|00001c50| 65 63 6f 72 64 29 3b 0a | 58 21 20 09 6e 6c 69 6e |ecord);.|X! .nlin|
|00001c60| 65 73 20 3d 20 72 65 63 | 6f 72 64 2e 72 5f 6e 6c |es = rec|ord.r_nl|
|00001c70| 69 6e 65 73 3b 0a 58 20 | 20 09 4e 63 68 61 72 73 |ines;.X | .Nchars|
|00001c80| 20 3d 20 4e 6c 69 6e 65 | 73 20 3d 20 30 4c 3b 0a | = Nline|s = 0L;.|
|00001c90| 58 20 20 09 77 68 69 6c | 65 20 28 2d 2d 6e 6c 69 |X .whil|e (--nli|
|00001ca0| 6e 65 73 20 3e 3d 20 30 | 29 20 7b 0a 58 20 20 09 |nes >= 0|) {.X .|
|00001cb0| 09 64 61 64 64 72 20 3d | 20 67 65 74 61 64 64 72 |.daddr =| getaddr|
|00001cc0| 28 70 74 72 73 5f 66 70 | 29 3b 0a 58 2d 2d 2d 20 |(ptrs_fp|);.X--- |
|00001cd0| 34 37 39 2c 34 39 33 20 | 2d 2d 2d 2d 0a 58 20 20 |479,493 |----.X |
|00001ce0| 09 72 65 74 75 72 6e 20 | 61 64 64 72 3b 0a 58 20 |.return |addr;.X |
|00001cf0| 20 7d 0a 58 20 20 0a 58 | 21 20 64 75 6d 70 5f 66 | }.X .X|! dump_f|
|00001d00| 69 6c 65 28 77 68 69 63 | 68 2c 20 6f 75 74 29 0a |ile(whic|h, out).|
|00001d10| 58 20 20 46 49 4c 45 09 | 2a 6f 75 74 3b 0a 58 20 |X FILE.|*out;.X |
|00001d20| 20 7b 0a 58 20 20 09 72 | 65 67 69 73 74 65 72 20 | {.X .r|egister |
|00001d30| 69 6e 74 09 6e 6c 69 6e | 65 73 3b 0a 58 20 20 09 |int.nlin|es;.X .|
|00001d40| 72 65 67 69 73 74 65 72 | 20 64 69 73 6b 5f 6c 69 |register| disk_li|
|00001d50| 6e 65 09 64 61 64 64 72 | 3b 0a 58 20 20 09 63 68 |ne.daddr|;.X .ch|
|00001d60| 61 72 09 62 75 66 5b 42 | 55 46 53 49 5a 5d 3b 0a |ar.buf[B|UFSIZ];.|
|00001d70| 58 20 20 0a 58 21 20 09 | 73 65 65 6b 74 6f 28 77 |X .X! .|seekto(w|
|00001d80| 68 69 63 68 29 3b 0a 58 | 21 20 09 6e 6c 69 6e 65 |hich);.X|! .nline|
|00001d90| 73 20 3d 20 62 75 66 6c | 69 73 74 5b 77 68 69 63 |s = bufl|ist[whic|
|00001da0| 68 5d 2d 3e 72 5f 6e 6c | 69 6e 65 73 3b 0a 58 20 |h]->r_nl|ines;.X |
|00001db0| 20 09 4e 63 68 61 72 73 | 20 3d 20 4e 6c 69 6e 65 | .Nchars| = Nline|
|00001dc0| 73 20 3d 20 30 4c 3b 0a | 58 20 20 09 77 68 69 6c |s = 0L;.|X .whil|
|00001dd0| 65 20 28 2d 2d 6e 6c 69 | 6e 65 73 20 3e 3d 20 30 |e (--nli|nes >= 0|
|00001de0| 29 20 7b 0a 58 20 20 09 | 09 64 61 64 64 72 20 3d |) {.X .|.daddr =|
|00001df0| 20 67 65 74 61 64 64 72 | 28 70 74 72 73 5f 66 70 | getaddr|(ptrs_fp|
|00001e00| 29 3b 0a 58 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |);.X****|********|
|00001e10| 2a 2a 2a 0a 58 2a 2a 2a | 20 35 33 39 2c 35 34 39 |***.X***| 539,549|
|00001e20| 20 2a 2a 2a 2a 0a 58 20 | 20 23 69 66 64 65 66 20 | ****.X | #ifdef |
|00001e30| 4b 49 4c 4c 30 0a 58 20 | 20 09 69 66 20 28 6b 69 |KILL0.X | .if (ki|
|00001e40| 6c 6c 28 48 65 61 64 65 | 72 2e 50 69 64 2c 20 30 |ll(Heade|r.Pid, 0|
|00001e50| 29 20 3d 3d 20 30 29 0a | 58 20 20 09 09 72 65 74 |) == 0).|X ..ret|
|00001e60| 75 72 6e 20 30 3b 0a 58 | 2d 20 23 65 6c 73 65 0a |urn 0;.X|- #else.|
|00001e70| 58 2d 20 23 69 66 64 65 | 66 20 4c 53 52 48 53 0a |X- #ifde|f LSRHS.|
|00001e80| 58 2d 20 09 69 66 20 28 | 70 65 78 69 73 74 28 48 |X- .if (|pexist(H|
|00001e90| 65 61 64 65 72 2e 50 69 | 64 29 29 0a 58 2d 20 09 |eader.Pi|d)).X- .|
|00001ea0| 09 72 65 74 75 72 6e 20 | 30 3b 0a 58 2d 20 23 65 |.return |0;.X- #e|
|00001eb0| 6e 64 69 66 20 4c 53 52 | 48 53 0a 58 20 20 23 65 |ndif LSR|HS.X #e|
|00001ec0| 6e 64 69 66 20 4b 49 4c | 4c 30 0a 58 20 20 0a 58 |ndif KIL|L0.X .X|
|00001ed0| 20 20 09 69 66 20 28 48 | 65 61 64 65 72 2e 4e 62 | .if (H|eader.Nb|
|00001ee0| 75 66 66 65 72 73 20 3d | 3d 20 30 29 20 7b 0a 58 |uffers =|= 0) {.X|
|00001ef0| 2d 2d 2d 20 35 33 36 2c | 35 34 31 20 2d 2d 2d 2d |--- 536,|541 ----|
|00001f00| 0a 58 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.X******|********|
|00001f10| 2a 0a 58 2a 2a 2a 20 35 | 36 38 2c 35 37 33 20 2a |*.X*** 5|68,573 *|
|00001f20| 2a 2a 2a 0a 58 2d 2d 2d | 20 35 36 30 2c 35 36 36 |***.X---| 560,566|
|00001f30| 20 2d 2d 2d 2d 0a 58 20 | 20 09 09 72 65 74 75 72 | ----.X | ..retur|
|00001f40| 6e 20 31 3b 0a 58 20 20 | 09 7d 0a 58 20 20 09 6d |n 1;.X |.}.X .m|
|00001f50| 61 6b 62 6c 69 73 74 28 | 29 3b 0a 58 2b 20 09 6c |akblist(|);.X+ .l|
|00001f60| 69 73 74 28 29 3b 0a 58 | 20 20 0a 58 20 20 09 66 |ist();.X| .X .f|
|00001f70| 6f 72 20 28 3b 3b 29 20 | 7b 0a 58 20 20 09 09 74 |or (;;) |{.X ..t|
|00001f80| 65 6c 6c 6d 65 28 22 28 | 54 79 70 65 20 27 3f 27 |ellme("(|Type '?'|
|00001f90| 20 66 6f 72 20 6f 70 74 | 69 6f 6e 73 29 3a 20 22 | for opt|ions): "|
|00001fa0| 2c 20 61 6e 73 77 65 72 | 29 3b 0a 58 2a 2a 2a 2a |, answer|);.X****|
|00001fb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0a 58 2a 2a 2a |********|***.X***|
|00001fc0| 20 36 39 39 2c 37 30 37 | 20 2a 2a 2a 2a 0a 58 20 | 699,707| ****.X |
|00001fd0| 20 09 09 70 72 69 6e 74 | 66 28 22 72 65 63 6f 76 | ..print|f("recov|
|00001fe0| 65 72 3a 20 75 73 61 67 | 65 3a 20 72 65 63 6f 76 |er: usag|e: recov|
|00001ff0| 65 72 20 5b 2d 64 20 64 | 69 72 65 63 74 6f 72 79 |er [-d d|irectory|
|00002000| 5d 5c 6e 22 29 3b 0a 58 | 20 20 09 09 70 72 69 6e |]\n");.X| ..prin|
|00002010| 74 66 28 22 55 73 65 20 | 5c 22 72 65 63 6f 76 65 |tf("Use |\"recove|
|00002020| 72 5c 22 20 61 66 74 65 | 72 20 4a 4f 56 45 20 68 |r\" afte|r JOVE h|
|00002030| 61 73 20 64 69 65 64 20 | 66 6f 72 20 73 6f 6d 65 |as died |for some|
|00002040| 5c 6e 22 29 3b 0a 58 20 | 20 09 09 70 72 69 6e 74 |\n");.X | ..print|
|00002050| 66 28 22 75 6e 6b 6e 6f | 77 6e 20 72 65 61 73 6f |f("unkno|wn reaso|
|00002060| 6e 2e 5c 6e 5c 6e 22 29 | 3b 0a 58 21 20 09 09 70 |n.\n\n")|;.X! ..p|
|00002070| 72 69 6e 74 66 28 22 55 | 73 65 20 5c 22 72 65 63 |rintf("U|se \"rec|
|00002080| 6f 76 65 72 20 2d 73 79 | 73 63 72 61 73 68 5c 22 |over -sy|scrash\"|
|00002090| 20 77 68 65 6e 20 74 68 | 65 20 73 79 73 74 65 6d | when th|e system|
|000020a0| 20 69 73 20 69 6e 20 74 | 68 65 20 70 72 6f 63 65 | is in t|he proce|
|000020b0| 73 73 5c 6e 22 29 3b 0a | 58 20 20 09 09 70 72 69 |ss\n");.|X ..pri|
|000020c0| 6e 74 66 28 22 6f 66 20 | 72 65 62 6f 6f 74 69 6e |ntf("of |rebootin|
|000020d0| 67 2e 20 20 54 68 69 73 | 20 69 73 20 64 6f 6e 65 |g. This| is done|
|000020e0| 20 61 75 74 6f 6d 61 74 | 69 63 61 6c 6c 79 20 61 | automat|ically a|
|000020f0| 74 20 72 65 62 6f 6f 74 | 20 74 69 6d 65 5c 6e 22 |t reboot| time\n"|
|00002100| 29 3b 0a 58 20 20 09 09 | 70 72 69 6e 74 66 28 22 |);.X ..|printf("|
|00002110| 61 6e 64 20 73 6f 20 6d | 6f 73 74 20 6f 66 20 79 |and so m|ost of y|
|00002120| 6f 75 20 64 6f 6e 27 74 | 20 68 61 76 65 20 74 6f |ou don't| have to|
|00002130| 20 77 6f 72 72 79 20 61 | 62 6f 75 74 20 74 68 61 | worry a|bout tha|
|00002140| 74 2e 5c 6e 5c 6e 22 29 | 3b 0a 58 20 20 09 09 70 |t.\n\n")|;.X ..p|
|00002150| 72 69 6e 74 66 28 22 55 | 73 65 20 5c 22 72 65 63 |rintf("U|se \"rec|
|00002160| 6f 76 65 72 20 2d 64 20 | 64 69 72 65 63 74 6f 72 |over -d |director|
|00002170| 79 5c 22 20 77 68 65 6e | 20 74 68 65 20 74 6d 70 |y\" when| the tmp|
|00002180| 20 66 69 6c 65 73 20 61 | 72 65 20 73 74 6f 72 65 | files a|re store|
|00002190| 5c 6e 22 29 3b 0a 58 20 | 20 09 09 70 72 69 6e 74 |\n");.X | ..print|
|000021a0| 66 28 22 69 6e 20 44 49 | 52 45 43 54 4f 52 59 20 |f("in DI|RECTORY |
|000021b0| 69 6e 73 74 65 61 64 20 | 6f 66 20 74 68 65 20 64 |instead |of the d|
|000021c0| 65 66 61 75 6c 74 20 6f | 6e 65 20 28 2f 74 6d 70 |efault o|ne (/tmp|
|000021d0| 29 2e 5c 6e 22 29 3b 0a | 58 20 20 09 09 65 78 69 |).\n");.|X ..exi|
|000021e0| 74 28 30 29 3b 0a 58 2d | 2d 2d 20 36 39 32 2c 37 |t(0);.X-|-- 692,7|
|000021f0| 30 31 20 2d 2d 2d 2d 0a | 58 20 20 09 09 70 72 69 |01 ----.|X ..pri|
|00002200| 6e 74 66 28 22 72 65 63 | 6f 76 65 72 3a 20 75 73 |ntf("rec|over: us|
|00002210| 61 67 65 3a 20 72 65 63 | 6f 76 65 72 20 5b 2d 64 |age: rec|over [-d|
|00002220| 20 64 69 72 65 63 74 6f | 72 79 5d 5c 6e 22 29 3b | directo|ry]\n");|
|00002230| 0a 58 20 20 09 09 70 72 | 69 6e 74 66 28 22 55 73 |.X ..pr|intf("Us|
|00002240| 65 20 5c 22 72 65 63 6f | 76 65 72 5c 22 20 61 66 |e \"reco|ver\" af|
|00002250| 74 65 72 20 4a 4f 56 45 | 20 68 61 73 20 64 69 65 |ter JOVE| has die|
|00002260| 64 20 66 6f 72 20 73 6f | 6d 65 5c 6e 22 29 3b 0a |d for so|me\n");.|
|00002270| 58 20 20 09 09 70 72 69 | 6e 74 66 28 22 75 6e 6b |X ..pri|ntf("unk|
|00002280| 6e 6f 77 6e 20 72 65 61 | 73 6f 6e 2e 5c 6e 5c 6e |nown rea|son.\n\n|
|00002290| 22 29 3b 0a 58 21 20 2f | 2a 09 09 70 72 69 6e 74 |");.X! /|*..print|
|000022a0| 66 28 22 55 73 65 20 5c | 22 72 65 63 6f 76 65 72 |f("Use \|"recover|
|000022b0| 20 2d 73 79 73 63 72 61 | 73 68 5c 22 20 77 68 65 | -syscra|sh\" whe|
|000022c0| 6e 20 74 68 65 20 73 79 | 73 74 65 6d 20 69 73 20 |n the sy|stem is |
|000022d0| 69 6e 20 74 68 65 20 70 | 72 6f 63 65 73 73 5c 6e |in the p|rocess\n|
|000022e0| 22 29 3b 0a 58 20 20 09 | 09 70 72 69 6e 74 66 28 |");.X .|.printf(|
|000022f0| 22 6f 66 20 72 65 62 6f | 6f 74 69 6e 67 2e 20 20 |"of rebo|oting. |
|00002300| 54 68 69 73 20 69 73 20 | 64 6f 6e 65 20 61 75 74 |This is |done aut|
|00002310| 6f 6d 61 74 69 63 61 6c | 6c 79 20 61 74 20 72 65 |omatical|ly at re|
|00002320| 62 6f 6f 74 20 74 69 6d | 65 5c 6e 22 29 3b 0a 58 |boot tim|e\n");.X|
|00002330| 20 20 09 09 70 72 69 6e | 74 66 28 22 61 6e 64 20 | ..prin|tf("and |
|00002340| 73 6f 20 6d 6f 73 74 20 | 6f 66 20 79 6f 75 20 64 |so most |of you d|
|00002350| 6f 6e 27 74 20 68 61 76 | 65 20 74 6f 20 77 6f 72 |on't hav|e to wor|
|00002360| 72 79 20 61 62 6f 75 74 | 20 74 68 61 74 2e 5c 6e |ry about| that.\n|
|00002370| 5c 6e 22 29 3b 0a 58 2b | 20 20 2a 2f 0a 58 20 20 |\n");.X+| */.X |
|00002380| 09 09 70 72 69 6e 74 66 | 28 22 55 73 65 20 5c 22 |..printf|("Use \"|
|00002390| 72 65 63 6f 76 65 72 20 | 2d 64 20 64 69 72 65 63 |recover |-d direc|
|000023a0| 74 6f 72 79 5c 22 20 77 | 68 65 6e 20 74 68 65 20 |tory\" w|hen the |
|000023b0| 74 6d 70 20 66 69 6c 65 | 73 20 61 72 65 20 73 74 |tmp file|s are st|
|000023c0| 6f 72 65 5c 6e 22 29 3b | 0a 58 20 20 09 09 70 72 |ore\n");|.X ..pr|
|000023d0| 69 6e 74 66 28 22 69 6e | 20 44 49 52 45 43 54 4f |intf("in| DIRECTO|
|000023e0| 52 59 20 69 6e 73 74 65 | 61 64 20 6f 66 20 74 68 |RY inste|ad of th|
|000023f0| 65 20 64 65 66 61 75 6c | 74 20 6f 6e 65 20 28 2f |e defaul|t one (/|
|00002400| 74 6d 70 29 2e 5c 6e 22 | 29 3b 0a 58 20 20 09 09 |tmp).\n"|);.X ..|
|00002410| 65 78 69 74 28 30 29 3b | 0a 58 64 69 66 66 20 2d |exit(0);|.Xdiff -|
|00002420| 63 20 6f 6a 6f 76 65 2f | 73 63 72 65 65 6e 2e 63 |c ojove/|screen.c|
|00002430| 20 6a 6f 76 65 2f 73 63 | 72 65 65 6e 2e 63 0a 58 | jove/sc|reen.c.X|
|00002440| 2a 2a 2a 20 6f 6a 6f 76 | 65 2f 73 63 72 65 65 6e |*** ojov|e/screen|
|00002450| 2e 63 09 54 68 75 20 4a | 75 6c 20 31 36 20 30 39 |.c.Thu J|ul 16 09|
|00002460| 3a 31 35 3a 31 38 20 31 | 39 38 37 0a 58 2d 2d 2d |:15:18 1|987.X---|
|00002470| 20 6a 6f 76 65 2f 73 63 | 72 65 65 6e 2e 63 09 4d | jove/sc|reen.c.M|
|00002480| 6f 6e 20 4a 75 6c 20 31 | 33 20 30 38 3a 33 34 3a |on Jul 1|3 08:34:|
|00002490| 31 33 20 31 39 38 37 0a | 58 2a 2a 2a 2a 2a 2a 2a |13 1987.|X*******|
|000024a0| 2a 2a 2a 2a 2a 2a 2a 2a | 0a 58 2a 2a 2a 20 32 32 |********|.X*** 22|
|000024b0| 32 2c 32 33 31 20 2a 2a | 2a 2a 0a 58 20 20 0a 58 |2,231 **|**.X .X|
|000024c0| 20 20 42 75 66 53 77 72 | 69 74 65 28 6c 69 6e 65 | BufSwr|ite(line|
|000024d0| 6e 75 6d 29 0a 58 20 20 | 7b 0a 58 2d 20 09 63 68 |num).X |{.X- .ch|
|000024e0| 61 72 09 2a 62 70 3b 0a | 58 20 20 09 72 65 67 69 |ar.*bp;.|X .regi|
|000024f0| 73 74 65 72 20 69 6e 74 | 09 6e 20 3d 20 63 75 72 |ster int|.n = cur|
|00002500| 73 65 6e 64 20 2d 20 63 | 75 72 73 6f 72 2c 0a 58 |send - c|ursor,.X|
|00002510| 20 20 09 09 09 63 6f 6c | 20 3d 20 30 2c 0a 58 20 | ...col| = 0,.X |
|00002520| 20 09 09 09 63 3b 0a 58 | 20 20 09 69 6e 74 09 53 | ...c;.X| .int.S|
|00002530| 74 61 72 74 43 6f 6c 20 | 3d 20 44 65 73 69 72 65 |tartCol |= Desire|
|00002540| 64 53 63 72 65 65 6e 5b | 6c 69 6e 65 6e 75 6d 5d |dScreen[|linenum]|
|00002550| 2e 73 5f 6f 66 66 73 65 | 74 2c 0a 58 20 20 09 09 |.s_offse|t,.X ..|
|00002560| 76 69 73 73 70 61 63 65 | 20 3d 20 44 65 73 69 72 |visspace| = Desir|
|00002570| 65 64 53 63 72 65 65 6e | 5b 6c 69 6e 65 6e 75 6d |edScreen|[linenum|
|00002580| 5d 2e 73 5f 77 69 6e 64 | 6f 77 2d 3e 77 5f 66 6c |].s_wind|ow->w_fl|
|00002590| 61 67 73 20 26 20 57 5f | 56 49 53 53 50 41 43 45 |ags & W_|VISSPACE|
|000025a0| 2c 0a 58 20 20 09 09 61 | 62 6f 72 74 65 64 20 3d |,.X ..a|borted =|
|000025b0| 20 30 3b 0a 58 2d 2d 2d | 20 32 32 32 2c 32 33 31 | 0;.X---| 222,231|
|000025c0| 20 2d 2d 2d 2d 0a 58 20 | 20 0a 58 20 20 42 75 66 | ----.X | .X Buf|
|000025d0| 53 77 72 69 74 65 28 6c | 69 6e 65 6e 75 6d 29 0a |Swrite(l|inenum).|
|000025e0| 58 20 20 7b 0a 58 20 20 | 09 72 65 67 69 73 74 65 |X {.X |.registe|
|000025f0| 72 20 69 6e 74 09 6e 20 | 3d 20 63 75 72 73 65 6e |r int.n |= cursen|
|00002600| 64 20 2d 20 63 75 72 73 | 6f 72 2c 0a 58 20 20 09 |d - curs|or,.X .|
|00002610| 09 09 63 6f 6c 20 3d 20 | 30 2c 0a 58 20 20 09 09 |..col = |0,.X ..|
|00002620| 09 63 3b 0a 58 2b 20 09 | 72 65 67 69 73 74 65 72 |.c;.X+ .|register|
|00002630| 20 63 68 61 72 09 2a 62 | 70 3b 0a 58 20 20 09 69 | char.*b|p;.X .i|
|00002640| 6e 74 09 53 74 61 72 74 | 43 6f 6c 20 3d 20 44 65 |nt.Start|Col = De|
|00002650| 73 69 72 65 64 53 63 72 | 65 65 6e 5b 6c 69 6e 65 |siredScr|een[line|
|00002660| 6e 75 6d 5d 2e 73 5f 6f | 66 66 73 65 74 2c 0a 58 |num].s_o|ffset,.X|
|00002670| 20 20 09 09 76 69 73 73 | 70 61 63 65 20 3d 20 44 | ..viss|pace = D|
|00002680| 65 73 69 72 65 64 53 63 | 72 65 65 6e 5b 6c 69 6e |esiredSc|reen[lin|
|00002690| 65 6e 75 6d 5d 2e 73 5f | 77 69 6e 64 6f 77 2d 3e |enum].s_|window->|
|000026a0| 77 5f 66 6c 61 67 73 20 | 26 20 57 5f 56 49 53 53 |w_flags |& W_VISS|
|000026b0| 50 41 43 45 2c 0a 58 20 | 20 09 09 61 62 6f 72 74 |PACE,.X | ..abort|
|000026c0| 65 64 20 3d 20 30 3b 0a | 58 2a 2a 2a 2a 2a 2a 2a |ed = 0;.|X*******|
|000026d0| 2a 2a 2a 2a 2a 2a 2a 2a | 0a 58 2a 2a 2a 20 33 36 |********|.X*** 36|
|000026e0| 39 2c 33 37 36 20 2a 2a | 2a 2a 0a 58 20 20 20 20 |9,376 **|**.X |
|000026f0| 20 57 68 61 74 20 65 76 | 65 72 20 74 75 72 6e 73 | What ev|er turns|
|00002700| 20 79 6f 75 20 6f 6e 20 | 2e 2e 2e 20 20 20 2a 2f | you on |... */|
|00002710| 0a 58 20 20 0a 58 20 20 | 70 72 69 76 61 74 65 20 |.X .X |private |
|00002720| 73 74 72 75 63 74 20 63 | 75 72 73 61 64 64 72 20 |struct c|ursaddr |
|00002730| 7b 0a 58 21 20 09 69 6e | 74 09 63 5f 6e 75 6d 63 |{.X! .in|t.c_numc|
|00002740| 68 61 72 73 2c 0a 58 21 | 20 09 09 28 2a 63 5f 70 |hars,.X!| ..(*c_p|
|00002750| 72 6f 63 29 28 29 3b 0a | 58 20 20 7d 3b 0a 58 20 |roc)();.|X };.X |
|00002760| 20 0a 58 20 20 70 72 69 | 76 61 74 65 20 63 68 61 | .X pri|vate cha|
|00002770| 72 09 2a 43 6d 73 74 72 | 3b 0a 58 2d 2d 2d 20 33 |r.*Cmstr|;.X--- 3|
|00002780| 36 39 2c 33 37 36 20 2d | 2d 2d 2d 0a 58 20 20 20 |69,376 -|---.X |
|00002790| 20 20 57 68 61 74 20 65 | 76 65 72 20 74 75 72 6e | What e|ver turn|
|000027a0| 73 20 79 6f 75 20 6f 6e | 20 2e 2e 2e 20 20 20 2a |s you on| ... *|
|000027b0| 2f 0a 58 20 20 0a 58 20 | 20 70 72 69 76 61 74 65 |/.X .X | private|
|000027c0| 20 73 74 72 75 63 74 20 | 63 75 72 73 61 64 64 72 | struct |cursaddr|
|000027d0| 20 7b 0a 58 21 20 09 69 | 6e 74 09 63 6d 5f 6e 75 | {.X! .i|nt.cm_nu|
|000027e0| 6d 63 68 61 72 73 2c 0a | 58 21 20 09 09 28 2a 63 |mchars,.|X! ..(*c|
|000027f0| 6d 5f 70 72 6f 63 29 28 | 29 3b 0a 58 20 20 7d 3b |m_proc)(|);.X };|
|00002800| 0a 58 20 20 0a 58 20 20 | 70 72 69 76 61 74 65 20 |.X .X |private |
|00002810| 63 68 61 72 09 2a 43 6d | 73 74 72 3b 0a 58 2a 2a |char.*Cm|str;.X**|
|00002820| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 0a 58 2a |********|*****.X*|
|00002830| 2a 2a 20 35 33 32 2c 35 | 33 38 20 2a 2a 2a 2a 0a |** 532,5|38 ****.|
|00002840| 58 20 20 09 72 65 67 69 | 73 74 65 72 20 69 6e 74 |X .regi|ster int|
|00002850| 09 6e 6c 69 6e 65 73 20 | 3d 20 64 65 73 74 6c 69 |.nlines |= destli|
|00002860| 6e 65 20 2d 20 43 61 70 | 4c 69 6e 65 3b 0a 58 20 |ne - Cap|Line;.X |
|00002870| 20 0a 58 20 20 09 77 68 | 69 6c 65 20 28 2d 2d 6e | .X .wh|ile (--n|
|00002880| 6c 69 6e 65 73 20 3e 3d | 20 30 29 0a 58 21 20 09 |lines >=| 0).X! .|
|00002890| 09 70 75 74 63 68 61 72 | 28 27 5c 6e 27 29 3b 0a |.putchar|('\n');.|
|000028a0| 58 20 20 09 43 61 70 4c | 69 6e 65 20 3d 20 64 65 |X .CapL|ine = de|
|000028b0| 73 74 6c 69 6e 65 3b 0a | 58 20 20 7d 0a 58 20 20 |stline;.|X }.X |
|000028c0| 0a 58 2d 2d 2d 20 35 33 | 32 2c 35 33 38 20 2d 2d |.X--- 53|2,538 --|
|000028d0| 2d 2d 0a 58 20 20 09 72 | 65 67 69 73 74 65 72 20 |--.X .r|egister |
|000028e0| 69 6e 74 09 6e 6c 69 6e | 65 73 20 3d 20 64 65 73 |int.nlin|es = des|
|000028f0| 74 6c 69 6e 65 20 2d 20 | 43 61 70 4c 69 6e 65 3b |tline - |CapLine;|
|00002900| 0a 58 20 20 0a 58 20 20 | 09 77 68 69 6c 65 20 28 |.X .X |.while (|
|00002910| 2d 2d 6e 6c 69 6e 65 73 | 20 3e 3d 20 30 29 0a 58 |--nlines| >= 0).X|
|00002920| 21 20 09 09 70 75 74 70 | 61 64 28 4e 4c 2c 20 31 |! ..putp|ad(NL, 1|
|00002930| 29 3b 0a 58 20 20 09 43 | 61 70 4c 69 6e 65 20 3d |);.X .C|apLine =|
|00002940| 20 64 65 73 74 6c 69 6e | 65 3b 0a 58 20 20 7d 0a | destlin|e;.X }.|
|00002950| 58 20 20 0a 58 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |X .X***|********|
|00002960| 2a 2a 2a 2a 0a 58 2a 2a | 2a 20 35 37 34 2c 35 38 |****.X**|* 574,58|
|00002970| 30 20 2a 2a 2a 2a 0a 58 | 20 20 0a 58 20 20 23 64 |0 ****.X| .X #d|
|00002980| 65 66 69 6e 65 20 43 75 | 72 73 4d 69 6e 28 77 68 |efine Cu|rsMin(wh|
|00002990| 69 63 68 2c 61 64 64 72 | 73 2c 6d 61 78 29 20 5c |ich,addr|s,max) \|
|000029a0| 0a 58 20 20 09 66 6f 72 | 20 28 62 65 73 74 20 3d |.X .for| (best =|
|000029b0| 20 30 2c 20 63 70 20 3d | 20 26 61 64 64 72 73 5b | 0, cp =| &addrs[|
|000029c0| 31 5d 2c 20 69 20 3d 20 | 31 3b 20 69 20 3c 20 6d |1], i = |1; i < m|
|000029d0| 61 78 3b 20 69 2b 2b 2c | 20 63 70 2b 2b 29 20 5c |ax; i++,| cp++) \|
|000029e0| 0a 58 21 20 09 09 69 66 | 20 28 63 70 2d 3e 63 5f |.X! ..if| (cp->c_|
|000029f0| 6e 75 6d 63 68 61 72 73 | 20 3c 20 61 64 64 72 73 |numchars| < addrs|
|00002a00| 5b 62 65 73 74 5d 2e 63 | 5f 6e 75 6d 63 68 61 72 |[best].c|_numchar|
|00002a10| 73 29 20 5c 0a 58 20 20 | 09 09 09 62 65 73 74 20 |s) \.X |...best |
|00002a20| 3d 20 69 3b 20 5c 0a 58 | 20 20 09 77 68 69 63 68 |= i; \.X| .which|
|00002a30| 20 3d 20 26 61 64 64 72 | 73 5b 62 65 73 74 5d 3b | = &addr|s[best];|
|00002a40| 0a 58 20 20 0a 58 2d 2d | 2d 20 35 37 34 2c 35 38 |.X .X--|- 574,58|
|00002a50| 30 20 2d 2d 2d 2d 0a 58 | 20 20 0a 58 20 20 23 64 |0 ----.X| .X #d|
|00002a60| 65 66 69 6e 65 20 43 75 | 72 73 4d 69 6e 28 77 68 |efine Cu|rsMin(wh|
|00002a70| 69 63 68 2c 61 64 64 72 | 73 2c 6d 61 78 29 20 5c |ich,addr|s,max) \|
|00002a80| 0a 58 20 20 09 66 6f 72 | 20 28 62 65 73 74 20 3d |.X .for| (best =|
|00002a90| 20 30 2c 20 63 70 20 3d | 20 26 61 64 64 72 73 5b | 0, cp =| &addrs[|
|00002aa0| 31 5d 2c 20 69 20 3d 20 | 31 3b 20 69 20 3c 20 6d |1], i = |1; i < m|
|00002ab0| 61 78 3b 20 69 2b 2b 2c | 20 63 70 2b 2b 29 20 5c |ax; i++,| cp++) \|
|00002ac0| 0a 58 21 20 09 09 69 66 | 20 28 63 70 2d 3e 63 6d |.X! ..if| (cp->cm|
|00002ad0| 5f 6e 75 6d 63 68 61 72 | 73 20 3c 20 61 64 64 72 |_numchar|s < addr|
|00002ae0| 73 5b 62 65 73 74 5d 2e | 63 6d 5f 6e 75 6d 63 68 |s[best].|cm_numch|
|00002af0| 61 72 73 29 20 5c 0a 58 | 20 20 09 09 09 62 65 73 |ars) \.X| ...bes|
|00002b00| 74 20 3d 20 69 3b 20 5c | 0a 58 20 20 09 77 68 69 |t = i; \|.X .whi|
|00002b10| 63 68 20 3d 20 26 61 64 | 64 72 73 5b 62 65 73 74 |ch = &ad|drs[best|
|00002b20| 5d 3b 0a 58 20 20 0a 58 | 2a 2a 2a 2a 2a 2a 2a 2a |];.X .X|********|
|00002b30| 2a 2a 2a 2a 2a 2a 2a 0a | 58 2a 2a 2a 20 35 39 38 |*******.|X*** 598|
|00002b40| 2c 36 31 30 20 2a 2a 2a | 2a 0a 58 20 20 0a 58 20 |,610 ***|*.X .X |
|00002b50| 20 09 69 66 20 28 64 63 | 6f 6c 20 3d 3d 20 31 20 | .if (dc|ol == 1 |
|00002b60| 7c 7c 20 64 63 6f 6c 20 | 3d 3d 20 30 29 20 7b 09 ||| dcol |== 0) {.|
|00002b70| 09 2f 2a 20 4d 6f 73 74 | 20 63 6f 6d 6d 6f 6e 20 |./* Most| common |
|00002b80| 63 61 73 65 2e 20 2a 2f | 0a 58 20 20 09 09 48 6f |case. */|.X ..Ho|
|00002b90| 72 4d 69 6e 20 3d 20 26 | 57 61 72 70 48 6f 72 5b |rMin = &|WarpHor[|
|00002ba0| 46 4f 52 57 41 52 44 5d | 3b 0a 58 21 20 09 09 48 |FORWARD]|;.X! ..H|
|00002bb0| 6f 72 4d 69 6e 2d 3e 63 | 5f 6e 75 6d 63 68 61 72 |orMin->c|_numchar|
|00002bc0| 73 20 3d 20 64 63 6f 6c | 20 2b 20 78 74 72 61 63 |s = dcol| + xtrac|
|00002bd0| 6f 73 74 3b 0a 58 20 20 | 09 7d 20 65 6c 73 65 20 |ost;.X |.} else |
|00002be0| 7b 0a 58 21 20 09 09 57 | 61 72 70 48 6f 72 5b 46 |{.X! ..W|arpHor[F|
|00002bf0| 4f 52 57 41 52 44 5d 2e | 63 5f 6e 75 6d 63 68 61 |ORWARD].|c_numcha|
|00002c00| 72 73 20 3d 20 64 63 6f | 6c 20 3e 3d 20 30 20 3f |rs = dco|l >= 0 ?|
|00002c10| 20 64 63 6f 6c 20 2b 20 | 78 74 72 61 63 6f 73 74 | dcol + |xtracost|
|00002c20| 20 3a 20 31 30 30 30 3b | 0a 58 21 20 09 09 57 61 | : 1000;|.X! ..Wa|
|00002c30| 72 70 48 6f 72 5b 42 41 | 43 4b 57 41 52 44 5d 2e |rpHor[BA|CKWARD].|
|00002c40| 63 5f 6e 75 6d 63 68 61 | 72 73 20 3d 20 64 63 6f |c_numcha|rs = dco|
|00002c50| 6c 20 3c 20 30 20 3f 20 | 2d 28 64 63 6f 6c 20 2b |l < 0 ? |-(dcol +|
|00002c60| 20 78 74 72 61 63 6f 73 | 74 29 20 3a 20 31 30 30 | xtracos|t) : 100|
|00002c70| 30 3b 0a 58 21 20 09 09 | 57 61 72 70 48 6f 72 5b |0;.X! ..|WarpHor[|
|00002c80| 46 4f 52 54 41 42 5d 2e | 63 5f 6e 75 6d 63 68 61 |FORTAB].|c_numcha|
|00002c90| 72 73 20 3d 20 64 63 6f | 6c 20 3e 3d 20 30 20 26 |rs = dco|l >= 0 &|
|00002ca0| 26 20 54 41 42 53 20 3f | 0a 58 20 20 09 09 09 09 |& TABS ?|.X ....|
|00002cb0| 46 6f 72 4e 75 6d 28 43 | 61 70 43 6f 6c 2c 20 63 |ForNum(C|apCol, c|
|00002cc0| 6f 6c 29 20 2b 20 78 74 | 72 61 63 6f 73 74 20 3a |ol) + xt|racost :|
|00002cd0| 20 31 30 30 30 3b 0a 58 | 21 20 09 09 57 61 72 70 | 1000;.X|! ..Warp|
|00002ce0| 48 6f 72 5b 52 45 54 46 | 4f 52 57 41 52 44 5d 2e |Hor[RETF|ORWARD].|
|00002cf0| 63 5f 6e 75 6d 63 68 61 | 72 73 20 3d 20 28 78 74 |c_numcha|rs = (xt|
|00002d00| 72 61 63 6f 73 74 20 2b | 20 31 20 2b 20 28 54 41 |racost +| 1 + (TA|
|00002d10| 42 53 20 3f 20 46 6f 72 | 4e 75 6d 28 30 2c 20 63 |BS ? For|Num(0, c|
|00002d20| 6f 6c 29 20 3a 20 63 6f | 6c 29 29 3b 0a 58 20 20 |ol) : co|l));.X |
|00002d30| 0a 58 20 20 09 09 2f 2a | 20 57 68 69 63 68 20 69 |.X ../*| Which i|
|00002d40| 73 20 74 68 65 20 73 68 | 6f 72 74 65 73 74 20 6f |s the sh|ortest o|
|00002d50| 66 20 74 68 65 20 62 75 | 6e 63 68 20 2a 2f 0a 58 |f the bu|nch */.X|
|00002d60| 20 20 0a 58 2d 2d 2d 20 | 35 39 38 2c 36 31 30 20 | .X--- |598,610 |
|00002d70| 2d 2d 2d 2d 0a 58 20 20 | 0a 58 20 20 09 69 66 20 |----.X |.X .if |
|00002d80| 28 64 63 6f 6c 20 3d 3d | 20 31 20 7c 7c 20 64 63 |(dcol ==| 1 || dc|
|00002d90| 6f 6c 20 3d 3d 20 30 29 | 20 7b 09 09 2f 2a 20 4d |ol == 0)| {../* M|
|00002da0| 6f 73 74 20 63 6f 6d 6d | 6f 6e 20 63 61 73 65 2e |ost comm|on case.|
|00002db0| 20 2a 2f 0a 58 20 20 09 | 09 48 6f 72 4d 69 6e 20 | */.X .|.HorMin |
|00002dc0| 3d 20 26 57 61 72 70 48 | 6f 72 5b 46 4f 52 57 41 |= &WarpH|or[FORWA|
|00002dd0| 52 44 5d 3b 0a 58 21 20 | 09 09 48 6f 72 4d 69 6e |RD];.X! |..HorMin|
|00002de0| 2d 3e 63 6d 5f 6e 75 6d | 63 68 61 72 73 20 3d 20 |->cm_num|chars = |
|00002df0| 64 63 6f 6c 20 2b 20 78 | 74 72 61 63 6f 73 74 3b |dcol + x|tracost;|
|00002e00| 0a 58 20 20 09 7d 20 65 | 6c 73 65 20 7b 0a 58 21 |.X .} e|lse {.X!|
|00002e10| 20 09 09 57 61 72 70 48 | 6f 72 5b 46 4f 52 57 41 | ..WarpH|or[FORWA|
|00002e20| 52 44 5d 2e 63 6d 5f 6e | 75 6d 63 68 61 72 73 20 |RD].cm_n|umchars |
|00002e30| 3d 20 64 63 6f 6c 20 3e | 3d 20 30 20 3f 20 64 63 |= dcol >|= 0 ? dc|
|00002e40| 6f 6c 20 2b 20 78 74 72 | 61 63 6f 73 74 20 3a 20 |ol + xtr|acost : |
|00002e50| 31 30 30 30 3b 0a 58 21 | 20 09 09 57 61 72 70 48 |1000;.X!| ..WarpH|
|00002e60| 6f 72 5b 42 41 43 4b 57 | 41 52 44 5d 2e 63 6d 5f |or[BACKW|ARD].cm_|
|00002e70| 6e 75 6d 63 68 61 72 73 | 20 3d 20 64 63 6f 6c 20 |numchars| = dcol |
|00002e80| 3c 20 30 20 3f 20 2d 28 | 64 63 6f 6c 20 2b 20 78 |< 0 ? -(|dcol + x|
|00002e90| 74 72 61 63 6f 73 74 29 | 20 3a 20 31 30 30 30 3b |tracost)| : 1000;|
|00002ea0| 0a 58 21 20 09 09 57 61 | 72 70 48 6f 72 5b 46 4f |.X! ..Wa|rpHor[FO|
|00002eb0| 52 54 41 42 5d 2e 63 6d | 5f 6e 75 6d 63 68 61 72 |RTAB].cm|_numchar|
|00002ec0| 73 20 3d 20 64 63 6f 6c | 20 3e 3d 20 30 20 26 26 |s = dcol| >= 0 &&|
|00002ed0| 20 54 41 42 53 20 3f 0a | 58 20 20 09 09 09 09 46 | TABS ?.|X ....F|
|00002ee0| 6f 72 4e 75 6d 28 43 61 | 70 43 6f 6c 2c 20 63 6f |orNum(Ca|pCol, co|
|00002ef0| 6c 29 20 2b 20 78 74 72 | 61 63 6f 73 74 20 3a 20 |l) + xtr|acost : |
|00002f00| 31 30 30 30 3b 0a 58 21 | 20 09 09 57 61 72 70 48 |1000;.X!| ..WarpH|
|00002f10| 6f 72 5b 52 45 54 46 4f | 52 57 41 52 44 5d 2e 63 |or[RETFO|RWARD].c|
|00002f20| 6d 5f 6e 75 6d 63 68 61 | 72 73 20 3d 20 28 78 74 |m_numcha|rs = (xt|
|00002f30| 72 61 63 6f 73 74 20 2b | 20 31 20 2b 20 28 54 41 |racost +| 1 + (TA|
|00002f40| 42 53 20 3f 20 46 6f 72 | 4e 75 6d 28 30 2c 20 63 |BS ? For|Num(0, c|
|00002f50| 6f 6c 29 20 3a 20 63 6f | 6c 29 29 3b 0a 58 20 20 |ol) : co|l));.X |
|00002f60| 0a 58 20 20 09 09 2f 2a | 20 57 68 69 63 68 20 69 |.X ../*| Which i|
|00002f70| 73 20 74 68 65 20 73 68 | 6f 72 74 65 73 74 20 6f |s the sh|ortest o|
|00002f80| 66 20 74 68 65 20 62 75 | 6e 63 68 20 2a 2f 0a 58 |f the bu|nch */.X|
|00002f90| 20 20 0a 58 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | .X****|********|
|00002fa0| 2a 2a 2a 0a 58 2a 2a 2a | 20 36 31 33 2c 36 32 30 |***.X***| 613,620|
|00002fb0| 20 2a 2a 2a 2a 0a 58 20 | 20 0a 58 20 20 09 2f 2a | ****.X | .X ./*|
|00002fc0| 20 4d 6f 76 69 6e 67 20 | 76 65 72 74 69 63 61 6c | Moving |vertical|
|00002fd0| 6c 79 20 69 73 20 6d 6f | 72 65 20 73 69 6d 70 6c |ly is mo|re simpl|
|00002fe0| 65 2e 20 2a 2f 0a 58 20 | 20 0a 58 21 20 09 57 61 |e. */.X | .X! .Wa|
|00002ff0| 72 70 56 65 72 74 5b 44 | 4f 57 4e 5d 2e 63 5f 6e |rpVert[D|OWN].c_n|
|00003000| 75 6d 63 68 61 72 73 20 | 3d 20 64 6c 69 6e 65 20 |umchars |= dline |
|00003010| 3e 3d 20 30 20 3f 20 64 | 6c 69 6e 65 20 3a 20 31 |>= 0 ? d|line : 1|
|00003020| 30 30 30 3b 0a 58 21 20 | 09 57 61 72 70 56 65 72 |000;.X! |.WarpVer|
|00003030| 74 5b 55 50 4d 4f 56 45 | 5d 2e 63 5f 6e 75 6d 63 |t[UPMOVE|].c_numc|
|00003040| 68 61 72 73 20 3d 20 64 | 6c 69 6e 65 20 3c 20 30 |hars = d|line < 0|
|00003050| 20 3f 20 28 28 2d 64 6c | 69 6e 65 29 20 2a 20 55 | ? ((-dl|ine) * U|
|00003060| 50 6c 65 6e 29 20 3a 20 | 31 30 30 30 3b 0a 58 20 |Plen) : |1000;.X |
|00003070| 20 0a 58 20 20 09 2f 2a | 20 57 68 69 63 68 20 6f | .X ./*| Which o|
|00003080| 66 20 74 68 65 73 65 20 | 69 73 20 73 69 6d 70 6c |f these |is simpl|
|00003090| 65 72 20 2a 2f 0a 58 20 | 20 09 43 75 72 73 4d 69 |er */.X | .CursMi|
|000030a0| 6e 28 56 65 72 74 4d 69 | 6e 2c 20 57 61 72 70 56 |n(VertMi|n, WarpV|
|000030b0| 65 72 74 2c 20 4e 55 4d | 56 45 52 54 29 3b 0a 58 |ert, NUM|VERT);.X|
|000030c0| 2d 2d 2d 20 36 31 33 2c | 36 32 30 20 2d 2d 2d 2d |--- 613,|620 ----|
|000030d0| 0a 58 20 20 0a 58 20 20 | 09 2f 2a 20 4d 6f 76 69 |.X .X |./* Movi|
|000030e0| 6e 67 20 76 65 72 74 69 | 63 61 6c 6c 79 20 69 73 |ng verti|cally is|
|000030f0| 20 6d 6f 72 65 20 73 69 | 6d 70 6c 65 2e 20 2a 2f | more si|mple. */|
|00003100| 0a 58 20 20 0a 58 21 20 | 09 57 61 72 70 56 65 72 |.X .X! |.WarpVer|
|00003110| 74 5b 44 4f 57 4e 5d 2e | 63 6d 5f 6e 75 6d 63 68 |t[DOWN].|cm_numch|
|00003120| 61 72 73 20 3d 20 64 6c | 69 6e 65 20 3e 3d 20 30 |ars = dl|ine >= 0|
|00003130| 20 3f 20 64 6c 69 6e 65 | 20 3a 20 31 30 30 30 3b | ? dline| : 1000;|
|00003140| 0a 58 21 20 09 57 61 72 | 70 56 65 72 74 5b 55 50 |.X! .War|pVert[UP|
|00003150| 4d 4f 56 45 5d 2e 63 6d | 5f 6e 75 6d 63 68 61 72 |MOVE].cm|_numchar|
|00003160| 73 20 3d 20 64 6c 69 6e | 65 20 3c 20 30 20 3f 20 |s = dlin|e < 0 ? |
|00003170| 28 28 2d 64 6c 69 6e 65 | 29 20 2a 20 55 50 6c 65 |((-dline|) * UPle|
|00003180| 6e 29 20 3a 20 31 30 30 | 30 3b 0a 58 20 20 0a 58 |n) : 100|0;.X .X|
|00003190| 20 20 09 2f 2a 20 57 68 | 69 63 68 20 6f 66 20 74 | ./* Wh|ich of t|
|000031a0| 68 65 73 65 20 69 73 20 | 73 69 6d 70 6c 65 72 20 |hese is |simpler |
|000031b0| 2a 2f 0a 58 20 20 09 43 | 75 72 73 4d 69 6e 28 56 |*/.X .C|ursMin(V|
|000031c0| 65 72 74 4d 69 6e 2c 20 | 57 61 72 70 56 65 72 74 |ertMin, |WarpVert|
|000031d0| 2c 20 4e 55 4d 56 45 52 | 54 29 3b 0a 58 2a 2a 2a |, NUMVER|T);.X***|
|000031e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 0a 58 2a 2a |********|****.X**|
|000031f0| 2a 20 36 32 34 2c 36 35 | 31 20 2a 2a 2a 2a 0a 58 |* 624,65|1 ****.X|
|00003200| 20 20 09 20 20 20 48 6f | 6d 69 6e 67 20 66 69 72 | . Ho|ming fir|
|00003210| 73 74 27 73 20 74 6f 74 | 61 6c 20 69 73 20 74 68 |st's tot|al is th|
|00003220| 65 20 73 75 6d 20 6f 66 | 20 74 68 65 20 63 6f 73 |e sum of| the cos|
|00003230| 74 20 6f 66 20 68 6f 6d | 69 6e 67 0a 58 20 20 09 |t of hom|ing.X .|
|00003240| 20 20 20 61 6e 64 20 74 | 68 65 20 73 75 6d 20 6f | and t|he sum o|
|00003250| 66 20 74 61 62 62 69 6e | 67 20 28 69 66 20 70 6f |f tabbin|g (if po|
|00003260| 73 73 69 62 6c 65 29 20 | 74 6f 20 74 68 65 20 72 |ssible) |to the r|
|00003270| 69 67 68 74 2e 20 2a 2f | 0a 58 20 20 09 0a 58 21 |ight. */|.X ..X!|
|00003280| 20 09 69 66 20 28 56 65 | 72 74 4d 69 6e 2d 3e 63 | .if (Ve|rtMin->c|
|00003290| 5f 6e 75 6d 63 68 61 72 | 73 20 2b 20 48 6f 72 4d |_numchar|s + HorM|
|000032a0| 69 6e 2d 3e 63 5f 6e 75 | 6d 63 68 61 72 73 20 3c |in->c_nu|mchars <|
|000032b0| 3d 20 33 29 20 7b 0a 58 | 20 20 09 09 44 69 72 65 |= 3) {.X| ..Dire|
|000032c0| 63 74 4d 69 6e 20 3d 20 | 26 57 61 72 70 44 69 72 |ctMin = |&WarpDir|
|000032d0| 65 63 74 5b 44 49 52 45 | 43 54 5d 3b 09 2f 2a 20 |ect[DIRE|CT];./* |
|000032e0| 41 20 64 75 6d 6d 79 20 | 2e 2e 2e 20 2a 2f 0a 58 |A dummy |... */.X|
|000032f0| 21 20 09 09 44 69 72 65 | 63 74 4d 69 6e 2d 3e 63 |! ..Dire|ctMin->c|
|00003300| 5f 6e 75 6d 63 68 61 72 | 73 20 3d 20 31 30 30 3b |_numchar|s = 100;|
|00003310| 0a 58 20 20 09 7d 20 65 | 6c 73 65 20 7b 0a 58 21 |.X .} e|lse {.X!|
|00003320| 20 09 09 57 61 72 70 44 | 69 72 65 63 74 5b 44 49 | ..WarpD|irect[DI|
|00003330| 52 45 43 54 5d 2e 63 5f | 6e 75 6d 63 68 61 72 73 |RECT].c_|numchars|
|00003340| 20 3d 20 43 4d 20 3f 0a | 58 20 20 09 09 09 09 73 | = CM ?.|X ....s|
|00003350| 74 72 6c 65 6e 28 43 6d | 73 74 72 20 3d 20 74 67 |trlen(Cm|str = tg|
|00003360| 6f 74 6f 28 43 4d 2c 20 | 63 6f 6c 2c 20 6c 69 6e |oto(CM, |col, lin|
|00003370| 65 29 29 20 3a 20 31 30 | 30 30 3b 0a 58 21 20 09 |e)) : 10|00;.X! .|
|00003380| 09 57 61 72 70 44 69 72 | 65 63 74 5b 48 4f 4d 45 |.WarpDir|ect[HOME|
|00003390| 5d 2e 63 5f 6e 75 6d 63 | 68 61 72 73 20 3d 20 48 |].c_numc|hars = H|
|000033a0| 4f 6c 65 6e 20 2b 20 6c | 69 6e 65 20 2b 0a 58 21 |Olen + l|ine +.X!|
|000033b0| 20 09 09 09 09 57 61 72 | 70 48 6f 72 5b 52 45 54 | ....War|pHor[RET|
|000033c0| 46 4f 52 57 41 52 44 5d | 2e 63 5f 6e 75 6d 63 68 |FORWARD]|.c_numch|
|000033d0| 61 72 73 3b 0a 58 21 20 | 09 09 57 61 72 70 44 69 |ars;.X! |..WarpDi|
|000033e0| 72 65 63 74 5b 4c 4f 57 | 45 52 5d 2e 63 5f 6e 75 |rect[LOW|ER].c_nu|
|000033f0| 6d 63 68 61 72 73 20 3d | 20 4c 4c 6c 65 6e 20 2b |mchars =| LLlen +|
|00003400| 20 28 28 49 4c 49 20 2d | 20 6c 69 6e 65 29 20 2a | ((ILI -| line) *|
|00003410| 20 55 50 6c 65 6e 29 20 | 2b 0a 58 21 20 09 09 09 | UPlen) |+.X! ...|
|00003420| 09 57 61 72 70 48 6f 72 | 5b 52 45 54 46 4f 52 57 |.WarpHor|[RETFORW|
|00003430| 41 52 44 5d 2e 63 5f 6e | 75 6d 63 68 61 72 73 3b |ARD].c_n|umchars;|
|00003440| 0a 58 20 20 09 09 43 75 | 72 73 4d 69 6e 28 44 69 |.X ..Cu|rsMin(Di|
|00003450| 72 65 63 74 4d 69 6e 2c | 20 57 61 72 70 44 69 72 |rectMin,| WarpDir|
|00003460| 65 63 74 2c 20 4e 55 4d | 44 49 52 45 43 54 29 3b |ect, NUM|DIRECT);|
|00003470| 0a 58 20 20 09 7d 0a 58 | 20 20 0a 58 21 20 09 69 |.X .}.X| .X! .i|
|00003480| 66 20 28 48 6f 72 4d 69 | 6e 2d 3e 63 5f 6e 75 6d |f (HorMi|n->c_num|
|00003490| 63 68 61 72 73 20 2b 20 | 56 65 72 74 4d 69 6e 2d |chars + |VertMin-|
|000034a0| 3e 63 5f 6e 75 6d 63 68 | 61 72 73 20 3c 20 44 69 |>c_numch|ars < Di|
|000034b0| 72 65 63 74 4d 69 6e 2d | 3e 63 5f 6e 75 6d 63 68 |rectMin-|>c_numch|
|000034c0| 61 72 73 29 20 7b 0a 58 | 20 20 09 09 69 66 20 28 |ars) {.X| ..if (|
|000034d0| 6c 69 6e 65 20 21 3d 20 | 43 61 70 4c 69 6e 65 29 |line != |CapLine)|
|000034e0| 0a 58 21 20 09 09 09 28 | 2a 56 65 72 74 4d 69 6e |.X! ...(|*VertMin|
|000034f0| 2d 3e 63 5f 70 72 6f 63 | 29 28 6c 69 6e 65 29 3b |->c_proc|)(line);|
|00003500| 0a 58 20 20 09 09 69 66 | 20 28 63 6f 6c 20 21 3d |.X ..if| (col !=|
|00003510| 20 43 61 70 43 6f 6c 29 | 20 7b 0a 58 20 20 23 69 | CapCol)| {.X #i|
|00003520| 66 64 65 66 20 49 44 5f | 43 48 41 52 0a 58 20 20 |fdef ID_|CHAR.X |
|00003530| 09 09 09 69 66 20 28 49 | 4e 5f 49 4e 53 6d 6f 64 |...if (I|N_INSmod|
|00003540| 65 29 09 2f 2a 20 57 65 | 20 6d 61 79 20 75 73 65 |e)./* We| may use|
|00003550| 20 72 65 61 6c 20 63 68 | 61 72 61 63 74 65 72 73 | real ch|aracters|
|00003560| 20 2e 2e 2e 20 2a 2f 0a | 58 20 20 09 09 09 09 49 | ... */.|X ....I|
|00003570| 4e 53 6d 6f 64 65 28 30 | 29 3b 0a 58 20 20 23 65 |NSmode(0|);.X #e|
|00003580| 6e 64 69 66 0a 58 21 20 | 09 09 09 28 2a 48 6f 72 |ndif.X! |...(*Hor|
|00003590| 4d 69 6e 2d 3e 63 5f 70 | 72 6f 63 29 28 63 6f 6c |Min->c_p|roc)(col|
|000035a0| 29 3b 0a 58 20 20 09 09 | 7d 0a 58 20 20 09 7d 20 |);.X ..|}.X .} |
|000035b0| 65 6c 73 65 20 7b 0a 58 | 20 20 23 69 66 64 65 66 |else {.X| #ifdef|
|000035c0| 20 49 44 5f 43 48 41 52 | 0a 58 2d 2d 2d 20 36 32 | ID_CHAR|.X--- 62|
|000035d0| 34 2c 36 35 31 20 2d 2d | 2d 2d 0a 58 20 20 09 20 |4,651 --|--.X . |
|000035e0| 20 20 48 6f 6d 69 6e 67 | 20 66 69 72 73 74 27 73 | Homing| first's|
|000035f0| 20 74 6f 74 61 6c 20 69 | 73 20 74 68 65 20 73 75 | total i|s the su|
|00003600| 6d 20 6f 66 20 74 68 65 | 20 63 6f 73 74 20 6f 66 |m of the| cost of|
|00003610| 20 68 6f 6d 69 6e 67 0a | 58 20 20 09 20 20 20 61 | homing.|X . a|
|00003620| 6e 64 20 74 68 65 20 73 | 75 6d 20 6f 66 20 74 61 |nd the s|um of ta|
|00003630| 62 62 69 6e 67 20 28 69 | 66 20 70 6f 73 73 69 62 |bbing (i|f possib|
|00003640| 6c 65 29 20 74 6f 20 74 | 68 65 20 72 69 67 68 74 |le) to t|he right|
|00003650| 2e 20 2a 2f 0a 58 20 20 | 09 0a 58 21 20 09 69 66 |. */.X |..X! .if|
|00003660| 20 28 56 65 72 74 4d 69 | 6e 2d 3e 63 6d 5f 6e 75 | (VertMi|n->cm_nu|
|00003670| 6d 63 68 61 72 73 20 2b | 20 48 6f 72 4d 69 6e 2d |mchars +| HorMin-|
|00003680| 3e 63 6d 5f 6e 75 6d 63 | 68 61 72 73 20 3c 3d 20 |>cm_numc|hars <= |
|00003690| 33 29 20 7b 0a 58 20 20 | 09 09 44 69 72 65 63 74 |3) {.X |..Direct|
|000036a0| 4d 69 6e 20 3d 20 26 57 | 61 72 70 44 69 72 65 63 |Min = &W|arpDirec|
|000036b0| 74 5b 44 49 52 45 43 54 | 5d 3b 09 2f 2a 20 41 20 |t[DIRECT|];./* A |
|000036c0| 64 75 6d 6d 79 20 2e 2e | 2e 20 2a 2f 0a 58 21 20 |dummy ..|. */.X! |
|000036d0| 09 09 44 69 72 65 63 74 | 4d 69 6e 2d 3e 63 6d 5f |..Direct|Min->cm_|
|000036e0| 6e 75 6d 63 68 61 72 73 | 20 3d 20 31 30 30 3b 0a |numchars| = 100;.|
|000036f0| 58 20 20 09 7d 20 65 6c | 73 65 20 7b 0a 58 21 20 |X .} el|se {.X! |
|00003700| 09 09 57 61 72 70 44 69 | 72 65 63 74 5b 44 49 52 |..WarpDi|rect[DIR|
|00003710| 45 43 54 5d 2e 63 6d 5f | 6e 75 6d 63 68 61 72 73 |ECT].cm_|numchars|
|00003720| 20 3d 20 43 4d 20 3f 0a | 58 20 20 09 09 09 09 73 | = CM ?.|X ....s|
|00003730| 74 72 6c 65 6e 28 43 6d | 73 74 72 20 3d 20 74 67 |trlen(Cm|str = tg|
|00003740| 6f 74 6f 28 43 4d 2c 20 | 63 6f 6c 2c 20 6c 69 6e |oto(CM, |col, lin|
|00003750| 65 29 29 20 3a 20 31 30 | 30 30 3b 0a 58 21 20 09 |e)) : 10|00;.X! .|
|00003760| 09 57 61 72 70 44 69 72 | 65 63 74 5b 48 4f 4d 45 |.WarpDir|ect[HOME|
|00003770| 5d 2e 63 6d 5f 6e 75 6d | 63 68 61 72 73 20 3d 20 |].cm_num|chars = |
|00003780| 48 4f 6c 65 6e 20 2b 20 | 6c 69 6e 65 20 2b 0a 58 |HOlen + |line +.X|
|00003790| 21 20 09 09 09 09 57 61 | 72 70 48 6f 72 5b 52 45 |! ....Wa|rpHor[RE|
|000037a0| 54 46 4f 52 57 41 52 44 | 5d 2e 63 6d 5f 6e 75 6d |TFORWARD|].cm_num|
|000037b0| 63 68 61 72 73 3b 0a 58 | 21 20 09 09 57 61 72 70 |chars;.X|! ..Warp|
|000037c0| 44 69 72 65 63 74 5b 4c | 4f 57 45 52 5d 2e 63 6d |Direct[L|OWER].cm|
|000037d0| 5f 6e 75 6d 63 68 61 72 | 73 20 3d 20 4c 4c 6c 65 |_numchar|s = LLle|
|000037e0| 6e 20 2b 20 28 28 49 4c | 49 20 2d 20 6c 69 6e 65 |n + ((IL|I - line|
|000037f0| 29 20 2a 20 55 50 6c 65 | 6e 29 20 2b 0a 58 21 20 |) * UPle|n) +.X! |
|00003800| 09 09 09 09 57 61 72 70 | 48 6f 72 5b 52 45 54 46 |....Warp|Hor[RETF|
|00003810| 4f 52 57 41 52 44 5d 2e | 63 6d 5f 6e 75 6d 63 68 |ORWARD].|cm_numch|
|00003820| 61 72 73 3b 0a 58 20 20 | 09 09 43 75 72 73 4d 69 |ars;.X |..CursMi|
|00003830| 6e 28 44 69 72 65 63 74 | 4d 69 6e 2c 20 57 61 72 |n(Direct|Min, War|
|00003840| 70 44 69 72 65 63 74 2c | 20 4e 55 4d 44 49 52 45 |pDirect,| NUMDIRE|
|00003850| 43 54 29 3b 0a 58 20 20 | 09 7d 0a 58 20 20 0a 58 |CT);.X |.}.X .X|
|00003860| 21 20 09 69 66 20 28 48 | 6f 72 4d 69 6e 2d 3e 63 |! .if (H|orMin->c|
|00003870| 6d 5f 6e 75 6d 63 68 61 | 72 73 20 2b 20 56 65 72 |m_numcha|rs + Ver|
|00003880| 74 4d 69 6e 2d 3e 63 6d | 5f 6e 75 6d 63 68 61 72 |tMin->cm|_numchar|
|00003890| 73 20 3c 20 44 69 72 65 | 63 74 4d 69 6e 2d 3e 63 |s < Dire|ctMin->c|
|000038a0| 6d 5f 6e 75 6d 63 68 61 | 72 73 29 20 7b 0a 58 20 |m_numcha|rs) {.X |
|000038b0| 20 09 09 69 66 20 28 6c | 69 6e 65 20 21 3d 20 43 | ..if (l|ine != C|
|000038c0| 61 70 4c 69 6e 65 29 0a | 58 21 20 09 09 09 28 2a |apLine).|X! ...(*|
|000038d0| 56 65 72 74 4d 69 6e 2d | 3e 63 6d 5f 70 72 6f 63 |VertMin-|>cm_proc|
|000038e0| 29 28 6c 69 6e 65 29 3b | 0a 58 20 20 09 09 69 66 |)(line);|.X ..if|
|000038f0| 20 28 63 6f 6c 20 21 3d | 20 43 61 70 43 6f 6c 29 | (col !=| CapCol)|
|00003900| 20 7b 0a 58 20 20 23 69 | 66 64 65 66 20 49 44 5f | {.X #i|fdef ID_|
|00003910| 43 48 41 52 0a 58 20 20 | 09 09 09 69 66 20 28 49 |CHAR.X |...if (I|
|00003920| 4e 5f 49 4e 53 6d 6f 64 | 65 29 09 2f 2a 20 57 65 |N_INSmod|e)./* We|
|00003930| 20 6d 61 79 20 75 73 65 | 20 72 65 61 6c 20 63 68 | may use| real ch|
|00003940| 61 72 61 63 74 65 72 73 | 20 2e 2e 2e 20 2a 2f 0a |aracters| ... */.|
|00003950| 58 20 20 09 09 09 09 49 | 4e 53 6d 6f 64 65 28 30 |X ....I|NSmode(0|
|00003960| 29 3b 0a 58 20 20 23 65 | 6e 64 69 66 0a 58 21 20 |);.X #e|ndif.X! |
|00003970| 09 09 09 28 2a 48 6f 72 | 4d 69 6e 2d 3e 63 6d 5f |...(*Hor|Min->cm_|
|00003980| 70 72 6f 63 29 28 63 6f | 6c 29 3b 0a 58 20 20 09 |proc)(co|l);.X .|
|00003990| 09 7d 0a 58 20 20 09 7d | 20 65 6c 73 65 20 7b 0a |.}.X .}| else {.|
|000039a0| 58 20 20 23 69 66 64 65 | 66 20 49 44 5f 43 48 41 |X #ifde|f ID_CHA|
|000039b0| 52 0a 58 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |R.X*****|********|
|000039c0| 2a 2a 0a 58 2a 2a 2a 20 | 36 35 32 2c 36 35 38 20 |**.X*** |652,658 |
|000039d0| 2a 2a 2a 2a 0a 58 20 20 | 09 09 69 66 20 28 49 4e |****.X |..if (IN|
|000039e0| 5f 49 4e 53 6d 6f 64 65 | 20 26 26 20 21 4d 49 29 |_INSmode| && !MI)|
|000039f0| 0a 58 20 20 09 09 09 49 | 4e 53 6d 6f 64 65 28 30 |.X ...I|NSmode(0|
|00003a00| 29 3b 0a 58 20 20 23 65 | 6e 64 69 66 0a 58 21 20 |);.X #e|ndif.X! |
|00003a10| 09 09 28 2a 44 69 72 65 | 63 74 4d 69 6e 2d 3e 63 |..(*Dire|ctMin->c|
|00003a20| 5f 70 72 6f 63 29 28 6c | 69 6e 65 2c 20 63 6f 6c |_proc)(l|ine, col|
|00003a30| 29 3b 0a 58 20 20 09 7d | 0a 58 20 20 7d 0a 58 20 |);.X .}|.X }.X |
|00003a40| 20 0a 58 2d 2d 2d 20 36 | 35 32 2c 36 35 38 20 2d | .X--- 6|52,658 -|
|00003a50| 2d 2d 2d 0a 58 20 20 09 | 09 69 66 20 28 49 4e 5f |---.X .|.if (IN_|
|00003a60| 49 4e 53 6d 6f 64 65 20 | 26 26 20 21 4d 49 29 0a |INSmode |&& !MI).|
|00003a70| 58 20 20 09 09 09 49 4e | 53 6d 6f 64 65 28 30 29 |X ...IN|Smode(0)|
|00003a80| 3b 0a 58 20 20 23 65 6e | 64 69 66 0a 58 21 20 09 |;.X #en|dif.X! .|
|00003a90| 09 28 2a 44 69 72 65 63 | 74 4d 69 6e 2d 3e 63 6d |.(*Direc|tMin->cm|
|00003aa0| 5f 70 72 6f 63 29 28 6c | 69 6e 65 2c 20 63 6f 6c |_proc)(l|ine, col|
|00003ab0| 29 3b 0a 58 20 20 09 7d | 0a 58 20 20 7d 0a 58 20 |);.X .}|.X }.X |
|00003ac0| 20 0a 58 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | .X*****|********|
|00003ad0| 2a 2a 0a 58 2a 2a 2a 20 | 37 31 36 2c 37 32 37 20 |**.X*** |716,727 |
|00003ae0| 2a 2a 2a 2a 0a 58 20 20 | 09 72 65 67 69 73 74 65 |****.X |.registe|
|00003af0| 72 20 69 6e 74 09 69 3b | 0a 58 20 20 0a 58 20 20 |r int.i;|.X .X |
|00003b00| 09 69 66 20 28 43 53 29 | 20 7b 0a 58 21 20 09 09 |.if (CS)| {.X! ..|
|00003b10| 70 75 74 70 61 64 28 74 | 67 6f 74 6f 28 43 53 2c |putpad(t|goto(CS,|
|00003b20| 20 62 6f 74 74 6f 6d 2c | 20 74 6f 70 29 29 3b 0a | bottom,| top));.|
|00003b30| 58 20 20 09 09 43 61 70 | 43 6f 6c 20 3d 20 43 61 |X ..Cap|Col = Ca|
|00003b40| 70 4c 69 6e 65 20 3d 20 | 30 3b 0a 58 20 20 09 09 |pLine = |0;.X ..|
|00003b50| 50 6c 61 63 75 72 28 74 | 6f 70 2c 20 30 29 3b 0a |Placur(t|op, 0);.|
|00003b60| 58 20 20 09 09 66 6f 72 | 20 28 69 20 3d 20 30 3b |X ..for| (i = 0;|
|00003b70| 20 69 20 3c 20 6e 75 6d | 3b 20 69 2b 2b 29 0a 58 | i < num|; i++).X|
|00003b80| 20 20 09 09 09 70 75 74 | 70 61 64 28 53 52 2c 20 | ...put|pad(SR, |
|00003b90| 62 6f 74 74 6f 6d 20 2d | 20 74 6f 70 29 3b 0a 58 |bottom -| top);.X|
|00003ba0| 21 20 09 09 70 75 74 70 | 61 64 28 74 67 6f 74 6f |! ..putp|ad(tgoto|
|00003bb0| 28 43 53 2c 20 49 4c 49 | 2c 20 30 29 29 3b 0a 58 |(CS, ILI|, 0));.X|
|00003bc0| 20 20 09 09 43 61 70 43 | 6f 6c 20 3d 20 43 61 70 | ..CapC|ol = Cap|
|00003bd0| 4c 69 6e 65 20 3d 20 30 | 3b 0a 58 20 20 09 7d 20 |Line = 0|;.X .} |
|00003be0| 65 6c 73 65 20 7b 0a 58 | 20 20 09 09 50 6c 61 63 |else {.X| ..Plac|
|00003bf0| 75 72 28 62 6f 74 74 6f | 6d 20 2d 20 6e 75 6d 20 |ur(botto|m - num |
|00003c00| 2b 20 31 2c 20 30 29 3b | 0a 58 2d 2d 2d 20 37 31 |+ 1, 0);|.X--- 71|
|00003c10| 36 2c 37 32 37 20 2d 2d | 2d 2d 0a 58 20 20 09 72 |6,727 --|--.X .r|
|00003c20| 65 67 69 73 74 65 72 20 | 69 6e 74 09 69 3b 0a 58 |egister |int.i;.X|
|00003c30| 20 20 0a 58 20 20 09 69 | 66 20 28 43 53 29 20 7b | .X .i|f (CS) {|
|00003c40| 0a 58 21 20 09 09 70 75 | 74 70 61 64 28 74 67 6f |.X! ..pu|tpad(tgo|
|00003c50| 74 6f 28 43 53 2c 20 62 | 6f 74 74 6f 6d 2c 20 74 |to(CS, b|ottom, t|
|00003c60| 6f 70 29 2c 20 31 29 3b | 0a 58 20 20 09 09 43 61 |op), 1);|.X ..Ca|
|00003c70| 70 43 6f 6c 20 3d 20 43 | 61 70 4c 69 6e 65 20 3d |pCol = C|apLine =|
|00003c80| 20 30 3b 0a 58 20 20 09 | 09 50 6c 61 63 75 72 28 | 0;.X .|.Placur(|
|00003c90| 74 6f 70 2c 20 30 29 3b | 0a 58 20 20 09 09 66 6f |top, 0);|.X ..fo|
|00003ca0| 72 20 28 69 20 3d 20 30 | 3b 20 69 20 3c 20 6e 75 |r (i = 0|; i < nu|
|00003cb0| 6d 3b 20 69 2b 2b 29 0a | 58 20 20 09 09 09 70 75 |m; i++).|X ...pu|
|00003cc0| 74 70 61 64 28 53 52 2c | 20 62 6f 74 74 6f 6d 20 |tpad(SR,| bottom |
|00003cd0| 2d 20 74 6f 70 29 3b 0a | 58 21 20 09 09 70 75 74 |- top);.|X! ..put|
|00003ce0| 70 61 64 28 74 67 6f 74 | 6f 28 43 53 2c 20 49 4c |pad(tgot|o(CS, IL|
|00003cf0| 49 2c 20 30 29 2c 20 31 | 29 3b 0a 58 20 20 09 09 |I, 0), 1|);.X ..|
|00003d00| 43 61 70 43 6f 6c 20 3d | 20 43 61 70 4c 69 6e 65 |CapCol =| CapLine|
|00003d10| 20 3d 20 30 3b 0a 58 20 | 20 09 7d 20 65 6c 73 65 | = 0;.X | .} else|
|00003d20| 20 7b 0a 58 20 20 09 09 | 50 6c 61 63 75 72 28 62 | {.X ..|Placur(b|
|00003d30| 6f 74 74 6f 6d 20 2d 20 | 6e 75 6d 20 2b 20 31 2c |ottom - |num + 1,|
|00003d40| 20 30 29 3b 0a 58 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | 0);.X**|********|
|00003d50| 2a 2a 2a 2a 2a 0a 58 2a | 2a 2a 20 37 38 35 2c 37 |*****.X*|** 785,7|
|00003d60| 39 36 20 2a 2a 2a 2a 0a | 58 20 20 09 72 65 67 69 |96 ****.|X .regi|
|00003d70| 73 74 65 72 20 69 6e 74 | 09 69 3b 0a 58 20 20 0a |ster int|.i;.X .|
|00003d80| 58 20 20 09 69 66 20 28 | 43 53 29 20 7b 0a 58 21 |X .if (|CS) {.X!|
|00003d90| 20 09 09 70 75 74 70 61 | 64 28 74 67 6f 74 6f 28 | ..putpa|d(tgoto(|
|00003da0| 43 53 2c 20 62 6f 74 74 | 6f 6d 2c 20 74 6f 70 29 |CS, bott|om, top)|
|00003db0| 29 3b 0a 58 20 20 09 09 | 43 61 70 43 6f 6c 20 3d |);.X ..|CapCol =|
|00003dc0| 20 43 61 70 4c 69 6e 65 | 20 3d 20 30 3b 0a 58 20 | CapLine| = 0;.X |
|00003dd0| 20 09 09 50 6c 61 63 75 | 72 28 62 6f 74 74 6f 6d | ..Placu|r(bottom|
|00003de0| 2c 20 30 29 3b 0a 58 20 | 20 09 09 66 6f 72 20 28 |, 0);.X | ..for (|
|00003df0| 69 20 3d 20 30 3b 20 69 | 20 3c 20 6e 75 6d 3b 20 |i = 0; i| < num; |
|00003e00| 69 2b 2b 29 0a 58 20 20 | 09 09 09 70 75 74 70 61 |i++).X |...putpa|
|00003e10| 64 28 53 46 2c 20 62 6f | 74 74 6f 6d 20 2d 20 74 |d(SF, bo|ttom - t|
|00003e20| 6f 70 29 3b 0a 58 21 20 | 09 09 70 75 74 70 61 64 |op);.X! |..putpad|
|00003e30| 28 74 67 6f 74 6f 28 43 | 53 2c 20 49 4c 49 2c 20 |(tgoto(C|S, ILI, |
|00003e40| 30 29 29 3b 0a 58 20 20 | 09 09 43 61 70 43 6f 6c |0));.X |..CapCol|
|00003e50| 20 3d 20 43 61 70 4c 69 | 6e 65 20 3d 20 30 3b 0a | = CapLi|ne = 0;.|
|00003e60| 58 20 20 09 7d 20 65 6c | 73 65 20 7b 0a 58 20 20 |X .} el|se {.X |
|00003e70| 09 09 50 6c 61 63 75 72 | 28 74 6f 70 2c 20 30 29 |..Placur|(top, 0)|
|00003e80| 3b 0a 58 2d 2d 2d 20 37 | 38 35 2c 37 39 36 20 2d |;.X--- 7|85,796 -|
|00003e90| 2d 2d 2d 0a 58 20 20 09 | 72 65 67 69 73 74 65 72 |---.X .|register|
|00003ea0| 20 69 6e 74 09 69 3b 0a | 58 20 20 0a 58 20 20 09 | int.i;.|X .X .|
|00003eb0| 69 66 20 28 43 53 29 20 | 7b 0a 58 21 20 09 09 70 |if (CS) |{.X! ..p|
|00003ec0| 75 74 70 61 64 28 74 67 | 6f 74 6f 28 43 53 2c 20 |utpad(tg|oto(CS, |
|00003ed0| 62 6f 74 74 6f 6d 2c 20 | 74 6f 70 29 2c 20 31 29 |bottom, |top), 1)|
|00003ee0| 3b 0a 58 20 20 09 09 43 | 61 70 43 6f 6c 20 3d 20 |;.X ..C|apCol = |
|00003ef0| 43 61 70 4c 69 6e 65 20 | 3d 20 30 3b 0a 58 20 20 |CapLine |= 0;.X |
|00003f00| 09 09 50 6c 61 63 75 72 | 28 62 6f 74 74 6f 6d 2c |..Placur|(bottom,|
|00003f10| 20 30 29 3b 0a 58 20 20 | 09 09 66 6f 72 20 28 69 | 0);.X |..for (i|
|00003f20| 20 3d 20 30 3b 20 69 20 | 3c 20 6e 75 6d 3b 20 69 | = 0; i |< num; i|
|00003f30| 2b 2b 29 0a 58 20 20 09 | 09 09 70 75 74 70 61 64 |++).X .|..putpad|
|00003f40| 28 53 46 2c 20 62 6f 74 | 74 6f 6d 20 2d 20 74 6f |(SF, bot|tom - to|
|00003f50| 70 29 3b 0a 58 21 20 09 | 09 70 75 74 70 61 64 28 |p);.X! .|.putpad(|
|00003f60| 74 67 6f 74 6f 28 43 53 | 2c 20 49 4c 49 2c 20 30 |tgoto(CS|, ILI, 0|
|00003f70| 29 2c 20 31 29 3b 0a 58 | 20 20 09 09 43 61 70 43 |), 1);.X| ..CapC|
|00003f80| 6f 6c 20 3d 20 43 61 70 | 4c 69 6e 65 20 3d 20 30 |ol = Cap|Line = 0|
|00003f90| 3b 0a 58 20 20 09 7d 20 | 65 6c 73 65 20 7b 0a 58 |;.X .} |else {.X|
|00003fa0| 20 20 09 09 50 6c 61 63 | 75 72 28 74 6f 70 2c 20 | ..Plac|ur(top, |
|00003fb0| 30 29 3b 0a 58 64 69 66 | 66 20 2d 63 20 6f 6a 6f |0);.Xdif|f -c ojo|
|00003fc0| 76 65 2f 74 65 72 6d 2e | 63 20 6a 6f 76 65 2f 74 |ve/term.|c jove/t|
|00003fd0| 65 72 6d 2e 63 0a 58 2a | 2a 2a 20 6f 6a 6f 76 65 |erm.c.X*|** ojove|
|00003fe0| 2f 74 65 72 6d 2e 63 09 | 54 68 75 20 4a 75 6c 20 |/term.c.|Thu Jul |
|00003ff0| 31 36 20 30 39 3a 31 35 | 3a 32 31 20 31 39 38 37 |16 09:15|:21 1987|
|00004000| 0a 58 2d 2d 2d 20 6a 6f | 76 65 2f 74 65 72 6d 2e |.X--- jo|ve/term.|
|00004010| 63 09 57 65 64 20 4a 75 | 6e 20 20 33 20 31 36 3a |c.Wed Ju|n 3 16:|
|00004020| 33 31 3a 35 37 20 31 39 | 38 37 0a 58 2a 2a 2a 2a |31:57 19|87.X****|
|00004030| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0a 58 2a 2a 2a |********|***.X***|
|00004040| 20 36 2c 31 31 20 2a 2a | 2a 2a 0a 58 2d 2d 2d 20 | 6,11 **|**.X--- |
|00004050| 36 2c 31 32 20 2d 2d 2d | 2d 0a 58 20 20 20 2a 2a |6,12 ---|-.X **|
|00004060| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004070| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004080| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004090| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000040a0| 2a 2a 2a 2a 2a 2a 2f 0a | 58 20 20 0a 58 20 20 23 |******/.|X .X #|
|000040b0| 69 6e 63 6c 75 64 65 20 | 22 6a 6f 76 65 2e 68 22 |include |"jove.h"|
|000040c0| 0a 58 2b 20 23 69 6e 63 | 6c 75 64 65 20 3c 63 74 |.X+ #inc|lude <ct|
|000040d0| 79 70 65 2e 68 3e 0a 58 | 20 20 23 69 6e 63 6c 75 |ype.h>.X| #inclu|
|000040e0| 64 65 20 3c 65 72 72 6e | 6f 2e 68 3e 0a 58 20 20 |de <errn|o.h>.X |
|000040f0| 23 69 66 64 65 66 20 53 | 59 53 56 0a 58 20 20 23 |#ifdef S|YSV.X #|
|00004100| 20 20 20 69 6e 63 6c 75 | 64 65 20 3c 74 65 72 6d | inclu|de <term|
|00004110| 69 6f 2e 68 3e 0a 58 2a | 2a 2a 2a 2a 2a 2a 2a 2a |io.h>.X*|********|
|00004120| 2a 2a 2a 2a 2a 2a 0a 58 | 2a 2a 2a 20 34 38 2c 36 |******.X|*** 48,6|
|00004130| 30 20 2a 2a 2a 2a 0a 58 | 20 20 09 2a 53 46 2c 09 |0 ****.X| .*SF,.|
|00004140| 2f 2a 20 53 63 72 6f 6c | 6c 20 66 6f 72 77 61 72 |/* Scrol|l forwar|
|00004150| 64 20 2a 2f 0a 58 20 20 | 09 2a 53 52 2c 0a 58 20 |d */.X |.*SR,.X |
|00004160| 20 09 2a 53 50 2c 09 2f | 2a 20 53 65 6e 64 20 43 | .*SP,./|* Send C|
|00004170| 75 72 73 6f 72 20 50 6f | 73 69 74 69 6f 6e 20 2a |ursor Po|sition *|
|00004180| 2f 0a 58 2d 20 23 69 66 | 64 65 66 20 4c 53 52 48 |/.X- #if|def LSRH|
|00004190| 53 0a 58 2d 20 09 2a 52 | 53 2c 09 2f 2a 20 52 65 |S.X- .*R|S,./* Re|
|000041a0| 76 65 72 73 65 20 76 69 | 64 65 6f 20 73 74 61 72 |verse vi|deo star|
|000041b0| 74 20 2a 2f 0a 58 2d 20 | 09 2a 52 45 2c 09 2f 2a |t */.X- |.*RE,./*|
|000041c0| 20 52 65 76 65 72 73 65 | 20 65 6e 64 20 2a 2f 0a | Reverse| end */.|
|000041d0| 58 2d 20 23 65 6e 64 69 | 66 0a 58 20 20 09 2a 56 |X- #endi|f.X .*V|
|000041e0| 42 2c 0a 58 20 20 09 2a | 49 50 2c 09 2f 2a 20 69 |B,.X .*|IP,./* i|
|000041f0| 6e 73 65 72 74 20 70 61 | 64 20 61 66 74 65 72 20 |nsert pa|d after |
|00004200| 63 68 61 72 61 63 74 65 | 72 20 69 6e 73 65 72 74 |characte|r insert|
|00004210| 65 64 20 2a 2f 0a 58 21 | 20 09 2a 6c 50 43 3b 0a |ed */.X!| .*lPC;.|
|00004220| 58 20 20 0a 58 20 20 69 | 6e 74 09 4c 49 2c 0a 58 |X .X i|nt.LI,.X|
|00004230| 20 20 09 49 4c 49 2c 09 | 2f 2a 20 49 6e 74 65 72 | .ILI,.|/* Inter|
|00004240| 6e 61 6c 20 6c 69 6e 65 | 73 2c 20 69 2e 65 2e 2c |nal line|s, i.e.,|
|00004250| 20 32 33 20 6f 66 20 4c | 49 20 69 73 20 32 34 2e | 23 of L|I is 24.|
|00004260| 20 2a 2f 0a 58 2d 2d 2d | 20 34 39 2c 35 39 20 2d | */.X---| 49,59 -|
|00004270| 2d 2d 2d 0a 58 20 20 09 | 2a 53 46 2c 09 2f 2a 20 |---.X .|*SF,./* |
|00004280| 53 63 72 6f 6c 6c 20 66 | 6f 72 77 61 72 64 20 2a |Scroll f|orward *|
|00004290| 2f 0a 58 20 20 09 2a 53 | 52 2c 0a 58 20 20 09 2a |/.X .*S|R,.X .*|
|000042a0| 53 50 2c 09 2f 2a 20 53 | 65 6e 64 20 43 75 72 73 |SP,./* S|end Curs|
|000042b0| 6f 72 20 50 6f 73 69 74 | 69 6f 6e 20 2a 2f 0a 58 |or Posit|ion */.X|
|000042c0| 20 20 09 2a 56 42 2c 0a | 58 2b 20 09 2a 42 4c 2c | .*VB,.|X+ .*BL,|
|000042d0| 0a 58 20 20 09 2a 49 50 | 2c 09 2f 2a 20 69 6e 73 |.X .*IP|,./* ins|
|000042e0| 65 72 74 20 70 61 64 20 | 61 66 74 65 72 20 63 68 |ert pad |after ch|
|000042f0| 61 72 61 63 74 65 72 20 | 69 6e 73 65 72 74 65 64 |aracter |inserted|
|00004300| 20 2a 2f 0a 58 21 20 09 | 2a 6c 50 43 2c 0a 58 21 | */.X! .|*lPC,.X!|
|00004310| 20 09 2a 4e 4c 3b 0a 58 | 20 20 0a 58 20 20 69 6e | .*NL;.X| .X in|
|00004320| 74 09 4c 49 2c 0a 58 20 | 20 09 49 4c 49 2c 09 2f |t.LI,.X | .ILI,./|
|00004330| 2a 20 49 6e 74 65 72 6e | 61 6c 20 6c 69 6e 65 73 |* Intern|al lines|
|00004340| 2c 20 69 2e 65 2e 2c 20 | 32 33 20 6f 66 20 4c 49 |, i.e., |23 of LI|
|00004350| 20 69 73 20 32 34 2e 20 | 2a 2f 0a 58 2a 2a 2a 2a | is 24. |*/.X****|
|00004360| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0a 58 2a 2a 2a |********|***.X***|
|00004370| 20 37 30 2c 31 30 33 20 | 2a 2a 2a 2a 0a 58 20 20 | 70,103 |****.X |
|00004380| 09 48 4f 6c 65 6e 2c 0a | 58 20 20 09 4c 4c 6c 65 |.HOlen,.|X .LLle|
|00004390| 6e 3b 0a 58 20 20 0a 58 | 21 20 23 69 66 64 65 66 |n;.X .X|! #ifdef|
|000043a0| 20 53 59 53 56 20 2f 2a | 20 72 65 6c 65 61 73 65 | SYSV /*| release|
|000043b0| 20 32 2c 20 61 74 20 6c | 65 61 73 74 20 2a 2f 0a | 2, at l|east */.|
|000043c0| 58 21 20 63 68 61 72 20 | 50 43 20 3b 0a 58 20 20 |X! char |PC ;.X |
|000043d0| 23 65 6c 73 65 0a 58 20 | 20 65 78 74 65 72 6e 20 |#else.X | extern |
|000043e0| 63 68 61 72 09 50 43 3b | 0a 58 21 20 23 65 6e 64 |char.PC;|.X! #end|
|000043f0| 69 66 20 53 59 53 56 0a | 58 20 20 0a 58 20 20 73 |if SYSV.|X .X s|
|00004400| 74 61 74 69 63 20 63 68 | 61 72 09 74 73 70 61 63 |tatic ch|ar.tspac|
|00004410| 65 5b 32 35 36 5d 3b 0a | 58 20 20 0a 58 20 20 2f |e[256];.|X .X /|
|00004420| 2a 20 54 68 65 20 6f 72 | 64 65 72 69 6e 67 20 6f |* The or|dering o|
|00004430| 66 20 74 73 20 61 6e 64 | 20 6d 65 61 73 20 6d 75 |f ts and| meas mu|
|00004440| 73 74 20 61 67 72 65 65 | 20 21 21 20 2a 2f 0a 58 |st agree| !! */.X|
|00004450| 21 20 23 69 66 64 65 66 | 20 4c 53 52 48 53 0a 58 |! #ifdef| LSRHS.X|
|00004460| 21 20 73 74 61 74 69 63 | 20 63 68 61 72 09 2a 74 |! static| char.*t|
|00004470| 73 3d 22 76 73 76 65 61 | 6c 64 6c 73 70 63 73 73 |s="vsvea|ldlspcss|
|00004480| 6f 73 65 63 6d 63 6c 63 | 65 68 6f 75 70 62 63 69 |osecmclc|ehoupbci|
|00004490| 63 69 6d 64 63 65 69 6c | 6c 73 66 73 72 76 62 6b |cimdceil|lsfsrvbk|
|000044a0| 73 6b 65 74 69 74 65 41 | 4c 44 4c 49 43 44 43 72 |sketiteA|LDLICDCr|
|000044b0| 73 72 65 70 63 69 70 22 | 3b 0a 58 20 20 73 74 61 |srepcip"|;.X sta|
|000044c0| 74 69 63 20 63 68 61 72 | 09 2a 2a 6d 65 61 73 5b |tic char|.**meas[|
|000044d0| 5d 20 3d 20 7b 0a 58 20 | 20 09 26 56 53 2c 20 26 |] = {.X | .&VS, &|
|000044e0| 56 45 2c 20 26 41 4c 2c | 20 26 44 4c 2c 20 26 53 |VE, &AL,| &DL, &S|
|000044f0| 50 2c 20 26 43 53 2c 20 | 26 53 4f 2c 20 26 53 45 |P, &CS, |&SO, &SE|
|00004500| 2c 0a 58 20 20 09 26 43 | 4d 2c 20 26 43 4c 2c 20 |,.X .&C|M, &CL, |
|00004510| 26 43 45 2c 20 26 48 4f | 2c 20 26 55 50 2c 20 26 |&CE, &HO|, &UP, &|
|00004520| 42 43 2c 20 26 49 43 2c | 20 26 49 4d 2c 0a 58 20 |BC, &IC,| &IM,.X |
|00004530| 20 09 26 44 43 2c 20 26 | 45 49 2c 20 26 4c 4c 2c | .&DC, &|EI, &LL,|
|00004540| 20 26 53 46 2c 20 26 53 | 52 2c 20 26 56 42 2c 20 | &SF, &S|R, &VB, |
|00004550| 26 4b 53 2c 20 26 4b 45 | 2c 0a 58 20 20 09 26 54 |&KS, &KE|,.X .&T|
|00004560| 49 2c 20 26 54 45 2c 20 | 26 4d 5f 41 4c 2c 20 26 |I, &TE, |&M_AL, &|
|00004570| 4d 5f 44 4c 2c 20 26 4d | 5f 49 43 2c 20 26 4d 5f |M_DL, &M|_IC, &M_|
|00004580| 44 43 2c 0a 58 21 20 09 | 26 52 53 2c 20 26 52 45 |DC,.X! .|&RS, &RE|
|00004590| 2c 20 26 6c 50 43 2c 20 | 26 49 50 2c 20 30 0a 58 |, &lPC, |&IP, 0.X|
|000045a0| 20 20 7d 3b 0a 58 2d 20 | 23 65 6c 73 65 0a 58 2d | };.X- |#else.X-|
|000045b0| 20 73 74 61 74 69 63 20 | 63 68 61 72 09 2a 74 73 | static |char.*ts|
|000045c0| 3d 22 76 73 76 65 61 6c | 64 6c 73 70 63 73 73 6f |="vsveal|dlspcsso|
|000045d0| 73 65 63 6d 63 6c 63 65 | 68 6f 75 70 62 63 69 63 |secmclce|houpbcic|
|000045e0| 69 6d 64 63 65 69 6c 6c | 73 66 73 72 76 62 6b 73 |imdceill|sfsrvbks|
|000045f0| 6b 65 74 69 74 65 41 4c | 44 4c 49 43 44 43 70 63 |ketiteAL|DLICDCpc|
|00004600| 69 70 22 3b 0a 58 2d 20 | 73 74 61 74 69 63 20 63 |ip";.X- |static c|
|00004610| 68 61 72 09 2a 2a 6d 65 | 61 73 5b 5d 20 3d 20 7b |har.**me|as[] = {|
|00004620| 0a 58 2d 20 09 26 56 53 | 2c 20 26 56 45 2c 20 26 |.X- .&VS|, &VE, &|
|00004630| 41 4c 2c 20 26 44 4c 2c | 20 26 53 50 2c 20 26 43 |AL, &DL,| &SP, &C|
|00004640| 53 2c 20 26 53 4f 2c 20 | 26 53 45 2c 0a 58 2d 20 |S, &SO, |&SE,.X- |
|00004650| 09 26 43 4d 2c 20 26 43 | 4c 2c 20 26 43 45 2c 20 |.&CM, &C|L, &CE, |
|00004660| 26 48 4f 2c 20 26 55 50 | 2c 20 26 42 43 2c 20 26 |&HO, &UP|, &BC, &|
|00004670| 49 43 2c 20 26 49 4d 2c | 0a 58 2d 20 09 26 44 43 |IC, &IM,|.X- .&DC|
|00004680| 2c 20 26 45 49 2c 20 26 | 4c 4c 2c 20 26 53 46 2c |, &EI, &|LL, &SF,|
|00004690| 20 26 53 52 2c 20 26 56 | 42 2c 20 26 4b 53 2c 20 | &SR, &V|B, &KS, |
|000046a0| 26 4b 45 2c 0a 58 2d 20 | 09 26 54 49 2c 20 26 54 |&KE,.X- |.&TI, &T|
|000046b0| 45 2c 20 26 4d 5f 41 4c | 2c 20 26 4d 5f 44 4c 2c |E, &M_AL|, &M_DL,|
|000046c0| 20 26 4d 5f 49 43 2c 20 | 26 4d 5f 44 43 2c 0a 58 | &M_IC, |&M_DC,.X|
|000046d0| 2d 20 09 26 6c 50 43 2c | 20 26 49 50 2c 20 30 0a |- .&lPC,| &IP, 0.|
|000046e0| 58 2d 20 7d 3b 0a 58 2d | 20 23 65 6e 64 69 66 0a |X- };.X-| #endif.|
|000046f0| 58 20 20 0a 58 20 20 73 | 74 61 74 69 63 0a 58 20 |X .X s|tatic.X |
|00004700| 20 67 65 74 73 28 62 75 | 66 29 0a 58 2d 2d 2d 20 | gets(bu|f).X--- |
|00004710| 36 39 2c 39 31 20 2d 2d | 2d 2d 0a 58 20 20 09 48 |69,91 --|--.X .H|
|00004720| 4f 6c 65 6e 2c 0a 58 20 | 20 09 4c 4c 6c 65 6e 3b |Olen,.X | .LLlen;|
|00004730| 0a 58 20 20 0a 58 21 20 | 23 69 66 64 65 66 20 53 |.X .X! |#ifdef S|
|00004740| 59 53 56 52 32 20 2f 2a | 20 72 65 6c 65 61 73 65 |YSVR2 /*| release|
|00004750| 20 32 2c 20 61 74 20 6c | 65 61 73 74 20 2a 2f 0a | 2, at l|east */.|
|00004760| 58 21 20 63 68 61 72 09 | 50 43 3b 0a 58 20 20 23 |X! char.|PC;.X #|
|00004770| 65 6c 73 65 0a 58 20 20 | 65 78 74 65 72 6e 20 63 |else.X |extern c|
|00004780| 68 61 72 09 50 43 3b 0a | 58 21 20 23 65 6e 64 69 |har.PC;.|X! #endi|
|00004790| 66 20 53 59 53 56 52 32 | 0a 58 20 20 0a 58 20 20 |f SYSVR2|.X .X |
|000047a0| 73 74 61 74 69 63 20 63 | 68 61 72 09 74 73 70 61 |static c|har.tspa|
|000047b0| 63 65 5b 32 35 36 5d 3b | 0a 58 20 20 0a 58 20 20 |ce[256];|.X .X |
|000047c0| 2f 2a 20 54 68 65 20 6f | 72 64 65 72 69 6e 67 20 |/* The o|rdering |
|000047d0| 6f 66 20 74 73 20 61 6e | 64 20 6d 65 61 73 20 6d |of ts an|d meas m|
|000047e0| 75 73 74 20 61 67 72 65 | 65 20 21 21 20 2a 2f 0a |ust agre|e !! */.|
|000047f0| 58 21 20 73 74 61 74 69 | 63 20 63 68 61 72 09 2a |X! stati|c char.*|
|00004800| 74 73 3d 22 76 73 76 65 | 61 6c 64 6c 73 70 63 73 |ts="vsve|aldlspcs|
|00004810| 73 6f 73 65 63 6d 63 6c | 63 65 68 6f 75 70 62 63 |sosecmcl|cehoupbc|
|00004820| 69 63 69 6d 64 63 65 69 | 6c 6c 73 66 73 72 76 62 |icimdcei|llsfsrvb|
|00004830| 6b 73 6b 65 74 69 74 65 | 41 4c 44 4c 49 43 44 43 |ksketite|ALDLICDC|
|00004840| 70 63 69 70 62 6c 6e 6c | 22 3b 0a 58 20 20 73 74 |pcipblnl|";.X st|
|00004850| 61 74 69 63 20 63 68 61 | 72 09 2a 2a 6d 65 61 73 |atic cha|r.**meas|
|00004860| 5b 5d 20 3d 20 7b 0a 58 | 20 20 09 26 56 53 2c 20 |[] = {.X| .&VS, |
|00004870| 26 56 45 2c 20 26 41 4c | 2c 20 26 44 4c 2c 20 26 |&VE, &AL|, &DL, &|
|00004880| 53 50 2c 20 26 43 53 2c | 20 26 53 4f 2c 20 26 53 |SP, &CS,| &SO, &S|
|00004890| 45 2c 0a 58 20 20 09 26 | 43 4d 2c 20 26 43 4c 2c |E,.X .&|CM, &CL,|
|000048a0| 20 26 43 45 2c 20 26 48 | 4f 2c 20 26 55 50 2c 20 | &CE, &H|O, &UP, |
|000048b0| 26 42 43 2c 20 26 49 43 | 2c 20 26 49 4d 2c 0a 58 |&BC, &IC|, &IM,.X|
|000048c0| 20 20 09 26 44 43 2c 20 | 26 45 49 2c 20 26 4c 4c | .&DC, |&EI, &LL|
|000048d0| 2c 20 26 53 46 2c 20 26 | 53 52 2c 20 26 56 42 2c |, &SF, &|SR, &VB,|
|000048e0| 20 26 4b 53 2c 20 26 4b | 45 2c 0a 58 20 20 09 26 | &KS, &K|E,.X .&|
|000048f0| 54 49 2c 20 26 54 45 2c | 20 26 4d 5f 41 4c 2c 20 |TI, &TE,| &M_AL, |
|00004900| 26 4d 5f 44 4c 2c 20 26 | 4d 5f 49 43 2c 20 26 4d |&M_DL, &|M_IC, &M|
|00004910| 5f 44 43 2c 0a 58 21 20 | 09 26 6c 50 43 2c 20 26 |_DC,.X! |.&lPC, &|
|00004920| 49 50 2c 20 26 42 4c 2c | 20 26 4e 4c 2c 20 30 0a |IP, &BL,| &NL, 0.|
|00004930| 58 20 20 7d 3b 0a 58 20 | 20 0a 58 20 20 73 74 61 |X };.X | .X sta|
|00004940| 74 69 63 0a 58 20 20 67 | 65 74 73 28 62 75 66 29 |tic.X g|ets(buf)|
|00004950| 0a 58 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.X******|********|
|00004960| 2a 0a 58 2a 2a 2a 20 31 | 37 32 2c 31 38 39 20 2a |*.X*** 1|72,189 *|
|00004970| 2a 2a 2a 0a 58 20 20 0a | 58 20 20 09 55 4c 20 3d |***.X .|X .UL =|
|00004980| 20 74 67 65 74 66 6c 61 | 67 28 22 75 6c 22 29 3b | tgetfla|g("ul");|
|00004990| 0a 58 20 20 0a 58 21 20 | 23 69 66 64 65 66 20 4c |.X .X! |#ifdef L|
|000049a0| 53 52 48 53 09 09 2f 2a | 20 57 65 2c 20 61 74 20 |SRHS../*| We, at |
|000049b0| 74 68 65 20 68 69 67 68 | 20 73 63 68 6f 6f 6c 2c |the high| school,|
|000049c0| 20 61 72 65 20 74 68 65 | 20 6f 6e 6c 79 20 6f 6e | are the| only on|
|000049d0| 65 73 20 77 68 6f 0a 58 | 21 20 09 09 09 20 20 20 |es who.X|! ... |
|000049e0| 64 6f 20 53 4f 20 72 69 | 67 68 74 20 69 6e 20 74 |do SO ri|ght in t|
|000049f0| 65 72 6d 63 61 70 2c 20 | 62 75 74 20 75 6e 66 6f |ermcap, |but unfo|
|00004a00| 72 74 75 6e 61 74 65 6c | 79 20 74 68 65 0a 58 21 |rtunatel|y the.X!|
|00004a10| 20 09 09 09 20 20 20 72 | 69 67 68 74 20 53 4f 20 | ... r|ight SO |
|00004a20| 64 6f 65 73 6e 27 74 20 | 6c 6f 6f 6b 20 61 73 20 |doesn't |look as |
|00004a30| 67 6f 6f 64 20 77 69 74 | 68 20 6d 6f 64 65 6c 69 |good wit|h modeli|
|00004a40| 6e 65 73 2e 20 2a 2f 0a | 58 21 20 09 69 66 20 28 |nes. */.|X! .if (|
|00004a50| 52 53 29 0a 58 21 20 09 | 09 53 4f 20 3d 20 52 53 |RS).X! .|.SO = RS|
|00004a60| 3b 0a 58 21 20 09 69 66 | 20 28 52 45 29 0a 58 21 |;.X! .if| (RE).X!|
|00004a70| 20 09 09 53 45 20 3d 20 | 52 45 3b 0a 58 21 20 09 | ..SE = |RE;.X! .|
|00004a80| 09 09 2f 2a 20 49 20 6f | 6e 6c 79 20 65 76 65 72 |../* I o|nly ever|
|00004a90| 20 75 73 65 20 53 4f 20 | 66 6f 72 20 74 68 65 20 | use SO |for the |
|00004aa0| 6d 6f 64 65 6c 69 6e 65 | 20 61 6e 79 77 61 79 2e |modeline| anyway.|
|00004ab0| 20 2a 2f 0a 58 20 20 0a | 58 21 20 2f 2a 20 53 4f | */.X .|X! /* SO|
|00004ac0| 20 69 73 20 72 65 61 6c | 6c 79 20 42 4f 4c 44 46 | is real|ly BOLDF|
|00004ad0| 41 43 45 21 20 20 57 68 | 79 20 69 73 20 4c 53 20 |ACE! Wh|y is LS |
|00004ae0| 61 6c 77 61 79 73 20 72 | 69 67 68 74 20 61 6e 64 |always r|ight and|
|00004af0| 20 74 68 65 20 72 65 73 | 74 20 6f 66 20 74 68 65 | the res|t of the|
|00004b00| 0a 58 21 20 20 20 20 77 | 6f 72 6c 64 20 77 72 6f |.X! w|orld wro|
|00004b10| 6e 67 3f 20 2a 2f 0a 58 | 21 20 23 65 6e 64 69 66 |ng? */.X|! #endif|
|00004b20| 0a 58 20 20 23 69 66 64 | 65 66 20 49 44 5f 43 48 |.X #ifd|ef ID_CH|
|00004b30| 41 52 0a 58 20 20 09 64 | 69 73 70 5f 6f 70 74 5f |AR.X .d|isp_opt_|
|00004b40| 69 6e 69 74 28 29 3b 0a | 58 20 20 23 65 6e 64 69 |init();.|X #endi|
|00004b50| 66 0a 58 2d 2d 2d 20 31 | 36 30 2c 31 37 37 20 2d |f.X--- 1|60,177 -|
|00004b60| 2d 2d 2d 0a 58 20 20 0a | 58 20 20 09 55 4c 20 3d |---.X .|X .UL =|
|00004b70| 20 74 67 65 74 66 6c 61 | 67 28 22 75 6c 22 29 3b | tgetfla|g("ul");|
|00004b80| 0a 58 20 20 0a 58 21 20 | 09 69 66 20 28 4e 4c 20 |.X .X! |.if (NL |
|00004b90| 3d 3d 20 30 29 0a 58 21 | 20 09 09 4e 4c 20 3d 20 |== 0).X!| ..NL = |
|00004ba0| 22 5c 6e 22 3b 0a 58 21 | 20 09 65 6c 73 65 20 7b |"\n";.X!| .else {|
|00004bb0| 09 09 09 2f 2a 20 73 74 | 72 69 70 20 73 74 75 70 |.../* st|rip stup|
|00004bc0| 69 64 20 70 61 64 64 69 | 6e 67 20 69 6e 66 6f 72 |id paddi|ng infor|
|00004bd0| 6d 61 74 69 6f 6e 20 2a | 2f 0a 58 21 20 09 09 77 |mation *|/.X! ..w|
|00004be0| 68 69 6c 65 20 28 69 73 | 64 69 67 69 74 28 2a 4e |hile (is|digit(*N|
|00004bf0| 4c 29 29 0a 58 21 20 09 | 09 09 4e 4c 2b 2b 3b 0a |L)).X! .|..NL++;.|
|00004c00| 58 21 20 09 09 69 66 20 | 28 2a 4e 4c 20 3d 3d 20 |X! ..if |(*NL == |
|00004c10| 27 2a 27 29 0a 58 21 20 | 09 09 09 4e 4c 2b 2b 3b |'*').X! |...NL++;|
|00004c20| 0a 58 21 20 09 7d 0a 58 | 20 20 0a 58 21 20 09 69 |.X! .}.X| .X! .i|
|00004c30| 66 20 28 42 4c 20 3d 3d | 20 30 29 0a 58 21 20 09 |f (BL ==| 0).X! .|
|00004c40| 09 42 4c 20 3d 20 22 5c | 30 30 37 22 3b 0a 58 21 |.BL = "\|007";.X!|
|00004c50| 20 0a 58 20 20 23 69 66 | 64 65 66 20 49 44 5f 43 | .X #if|def ID_C|
|00004c60| 48 41 52 0a 58 20 20 09 | 64 69 73 70 5f 6f 70 74 |HAR.X .|disp_opt|
|00004c70| 5f 69 6e 69 74 28 29 3b | 0a 58 20 20 23 65 6e 64 |_init();|.X #end|
|00004c80| 69 66 0a 58 64 69 66 66 | 20 2d 63 20 6f 6a 6f 76 |if.Xdiff| -c ojov|
|00004c90| 65 2f 74 65 72 6d 63 61 | 70 2e 68 20 6a 6f 76 65 |e/termca|p.h jove|
|00004ca0| 2f 74 65 72 6d 63 61 70 | 2e 68 0a 58 2a 2a 2a 20 |/termcap|.h.X*** |
|00004cb0| 6f 6a 6f 76 65 2f 74 65 | 72 6d 63 61 70 2e 68 09 |ojove/te|rmcap.h.|
|00004cc0| 54 68 75 20 4a 75 6c 20 | 31 36 20 30 39 3a 31 35 |Thu Jul |16 09:15|
|00004cd0| 3a 32 32 20 31 39 38 37 | 0a 58 2d 2d 2d 20 6a 6f |:22 1987|.X--- jo|
|00004ce0| 76 65 2f 74 65 72 6d 63 | 61 70 2e 68 09 46 72 69 |ve/termc|ap.h.Fri|
|00004cf0| 20 4d 61 79 20 32 39 20 | 31 36 3a 32 38 3a 32 31 | May 29 |16:28:21|
|00004d00| 20 31 39 38 37 0a 58 2a | 2a 2a 2a 2a 2a 2a 2a 2a | 1987.X*|********|
|00004d10| 2a 2a 2a 2a 2a 2a 0a 58 | 2a 2a 2a 20 33 36 2c 34 |******.X|*** 36,4|
|00004d20| 38 20 2a 2a 2a 2a 0a 58 | 20 20 09 2a 53 46 2c 09 |8 ****.X| .*SF,.|
|00004d30| 2f 2a 20 53 63 72 6f 6c | 6c 20 66 6f 72 77 61 72 |/* Scrol|l forwar|
|00004d40| 64 20 2a 2f 0a 58 20 20 | 09 2a 53 52 2c 09 2f 2a |d */.X |.*SR,./*|
|00004d50| 20 53 63 72 6f 6c 6c 20 | 72 65 76 65 72 73 65 20 | Scroll |reverse |
|00004d60| 2a 2f 0a 58 20 20 09 2a | 53 50 2c 09 2f 2a 20 53 |*/.X .*|SP,./* S|
|00004d70| 65 6e 64 20 63 75 72 73 | 6f 72 20 70 6f 73 69 74 |end curs|or posit|
|00004d80| 69 6f 6e 20 2a 2f 0a 58 | 2d 20 23 69 66 64 65 66 |ion */.X|- #ifdef|
|00004d90| 20 4c 53 52 48 53 0a 58 | 2d 20 09 2a 52 53 2c 09 | LSRHS.X|- .*RS,.|
|00004da0| 2f 2a 20 72 65 76 65 72 | 73 65 20 76 69 64 65 6f |/* rever|se video|
|00004db0| 20 73 74 61 72 74 20 2a | 2f 0a 58 2d 20 09 2a 52 | start *|/.X- .*R|
|00004dc0| 45 2c 09 2f 2a 20 72 65 | 76 65 72 73 65 20 76 69 |E,./* re|verse vi|
|00004dd0| 64 65 6f 20 65 6e 64 20 | 2a 2f 0a 58 2d 20 23 65 |deo end |*/.X- #e|
|00004de0| 6e 64 69 66 0a 58 20 20 | 09 2a 56 42 2c 09 2f 2a |ndif.X |.*VB,./*|
|00004df0| 20 76 69 73 69 62 6c 65 | 20 62 65 6c 6c 20 2a 2f | visible| bell */|
|00004e00| 0a 58 20 20 09 2a 49 50 | 2c 09 2f 2a 20 69 6e 73 |.X .*IP|,./* ins|
|00004e10| 65 72 74 20 70 61 64 20 | 61 66 74 65 72 20 63 68 |ert pad |after ch|
|00004e20| 61 72 61 63 74 65 72 20 | 69 6e 73 65 72 74 65 64 |aracter |inserted|
|00004e30| 20 2a 2f 0a 58 21 20 09 | 2a 6c 50 43 3b 0a 58 20 | */.X! .|*lPC;.X |
|00004e40| 20 0a 58 20 20 65 78 74 | 65 72 6e 20 69 6e 74 0a | .X ext|ern int.|
|00004e50| 58 20 20 09 4c 49 2c 09 | 09 2f 2a 20 6e 75 6d 62 |X .LI,.|./* numb|
|00004e60| 65 72 20 6f 66 20 6c 69 | 6e 65 73 20 2a 2f 0a 58 |er of li|nes */.X|
|00004e70| 2d 2d 2d 20 33 36 2c 34 | 36 20 2d 2d 2d 2d 0a 58 |--- 36,4|6 ----.X|
|00004e80| 20 20 09 2a 53 46 2c 09 | 2f 2a 20 53 63 72 6f 6c | .*SF,.|/* Scrol|
|00004e90| 6c 20 66 6f 72 77 61 72 | 64 20 2a 2f 0a 58 20 20 |l forwar|d */.X |
|00004ea0| 09 2a 53 52 2c 09 2f 2a | 20 53 63 72 6f 6c 6c 20 |.*SR,./*| Scroll |
|00004eb0| 72 65 76 65 72 73 65 20 | 2a 2f 0a 58 20 20 09 2a |reverse |*/.X .*|
|00004ec0| 53 50 2c 09 2f 2a 20 53 | 65 6e 64 20 63 75 72 73 |SP,./* S|end curs|
|00004ed0| 6f 72 20 70 6f 73 69 74 | 69 6f 6e 20 2a 2f 0a 58 |or posit|ion */.X|
|00004ee0| 20 20 09 2a 56 42 2c 09 | 2f 2a 20 76 69 73 69 62 | .*VB,.|/* visib|
|00004ef0| 6c 65 20 62 65 6c 6c 20 | 2a 2f 0a 58 2b 20 09 2a |le bell |*/.X+ .*|
|00004f00| 42 4c 2c 09 2f 2a 20 61 | 75 64 69 62 6c 65 20 62 |BL,./* a|udible b|
|00004f10| 65 6c 6c 20 2a 2f 0a 58 | 20 20 09 2a 49 50 2c 09 |ell */.X| .*IP,.|
|00004f20| 2f 2a 20 69 6e 73 65 72 | 74 20 70 61 64 20 61 66 |/* inser|t pad af|
|00004f30| 74 65 72 20 63 68 61 72 | 61 63 74 65 72 20 69 6e |ter char|acter in|
|00004f40| 73 65 72 74 65 64 20 2a | 2f 0a 58 21 20 09 2a 6c |serted *|/.X! .*l|
|00004f50| 50 43 2c 0a 58 21 20 09 | 2a 4e 4c 3b 09 2f 2a 20 |PC,.X! .|*NL;./* |
|00004f60| 6e 65 77 6c 69 6e 65 20 | 63 68 61 72 61 63 74 65 |newline |characte|
|00004f70| 72 20 28 75 73 75 61 6c | 6c 79 20 5c 6e 29 20 2a |r (usual|ly \n) *|
|00004f80| 2f 0a 58 20 20 0a 58 20 | 20 65 78 74 65 72 6e 20 |/.X .X | extern |
|00004f90| 69 6e 74 0a 58 20 20 09 | 4c 49 2c 09 09 2f 2a 20 |int.X .|LI,../* |
|00004fa0| 6e 75 6d 62 65 72 20 6f | 66 20 6c 69 6e 65 73 20 |number o|f lines |
|00004fb0| 2a 2f 0a 58 64 69 66 66 | 20 2d 63 20 6f 6a 6f 76 |*/.Xdiff| -c ojov|
|00004fc0| 65 2f 74 75 6e 65 2e 68 | 20 6a 6f 76 65 2f 74 75 |e/tune.h| jove/tu|
|00004fd0| 6e 65 2e 68 0a 58 2a 2a | 2a 20 6f 6a 6f 76 65 2f |ne.h.X**|* ojove/|
|00004fe0| 74 75 6e 65 2e 68 09 54 | 68 75 20 4a 75 6c 20 31 |tune.h.T|hu Jul 1|
|00004ff0| 36 20 30 39 3a 31 35 3a | 32 32 20 31 39 38 37 0a |6 09:15:|22 1987.|
|00005000| 58 2d 2d 2d 20 6a 6f 76 | 65 2f 74 75 6e 65 2e 68 |X--- jov|e/tune.h|
|00005010| 09 46 72 69 20 4d 61 79 | 20 32 39 20 31 31 3a 31 |.Fri May| 29 11:1|
|00005020| 34 3a 34 30 20 31 39 38 | 37 0a 58 2a 2a 2a 2a 2a |4:40 198|7.X*****|
|00005030| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 58 2a 2a 2a 20 |********|**.X*** |
|00005040| 37 2c 31 37 20 2a 2a 2a | 2a 0a 58 20 20 0a 58 20 |7,17 ***|*.X .X |
|00005050| 20 23 64 65 66 69 6e 65 | 20 54 55 4e 45 44 09 09 | #define| TUNED..|
|00005060| 2f 2a 20 64 6f 6e 27 74 | 20 74 6f 75 63 68 20 74 |/* don't| touch t|
|00005070| 68 69 73 20 2a 2f 0a 58 | 20 20 0a 58 2d 20 2f 2a |his */.X| .X- /*|
|00005080| 23 64 65 66 69 6e 65 20 | 4c 53 52 48 53 09 09 2f |#define |LSRHS../|
|00005090| 2a 20 69 66 20 74 68 69 | 73 20 69 73 20 4c 69 6e |* if thi|s is Lin|
|000050a0| 63 6f 6c 6e 2d 53 75 64 | 62 75 72 79 20 52 65 67 |coln-Sud|bury Reg|
|000050b0| 69 6f 6e 61 6c 20 48 69 | 67 68 20 53 63 68 6f 6f |ional Hi|gh Schoo|
|000050c0| 6c 20 2a 2f 0a 58 20 20 | 2f 2a 23 64 65 66 69 6e |l */.X |/*#defin|
|000050d0| 65 20 4d 53 44 4f 53 09 | 09 2f 2a 20 69 66 20 74 |e MSDOS.|./* if t|
|000050e0| 68 69 73 20 69 73 20 4d | 53 44 4f 53 20 2a 2f 0a |his is M|SDOS */.|
|000050f0| 58 20 20 23 64 65 66 69 | 6e 65 20 42 53 44 34 5f |X #defi|ne BSD4_|
|00005100| 32 09 09 2f 2a 20 42 65 | 72 6b 65 6c 65 79 20 34 |2../* Be|rkeley 4|
|00005110| 2e 32 20 42 53 44 20 2a | 2f 0a 58 20 20 2f 2a 23 |.2 BSD *|/.X /*#|
|00005120| 64 65 66 69 6e 65 20 42 | 53 44 34 5f 33 09 2f 2a |define B|SD4_3./*|
|00005130| 20 42 65 72 6b 65 6c 65 | 79 20 34 2e 33 20 42 53 | Berkele|y 4.3 BS|
|00005140| 44 20 2a 2f 0a 58 20 20 | 2f 2a 23 64 65 66 69 6e |D */.X |/*#defin|
|00005150| 65 20 53 59 53 56 09 09 | 2f 2a 20 66 6f 72 20 28 |e SYSV..|/* for (|
|00005160| 53 79 73 74 65 6d 20 49 | 49 49 2f 53 79 73 74 65 |System I|II/Syste|
|00005170| 6d 20 56 29 20 55 4e 49 | 58 20 73 79 73 74 65 6d |m V) UNI|X system|
|00005180| 73 20 2a 2f 0a 58 20 20 | 23 69 66 64 65 66 20 42 |s */.X |#ifdef B|
|00005190| 53 44 34 5f 33 0a 58 20 | 20 23 20 20 20 69 66 6e |SD4_3.X | # ifn|
|000051a0| 64 65 66 20 42 53 44 34 | 5f 32 0a 58 20 20 23 09 |def BSD4|_2.X #.|
|000051b0| 64 65 66 69 6e 65 20 42 | 53 44 34 5f 32 09 2f 2a |define B|SD4_2./*|
|000051c0| 20 34 2e 33 20 69 73 20 | 34 2e 32 20 6f 6e 6c 79 | 4.3 is |4.2 only|
|000051d0| 20 64 69 66 66 65 72 65 | 6e 74 2e 20 2a 2f 0a 58 | differe|nt. */.X|
|000051e0| 2d 2d 2d 20 37 2c 32 33 | 20 2d 2d 2d 2d 0a 58 20 |--- 7,23| ----.X |
|000051f0| 20 0a 58 20 20 23 64 65 | 66 69 6e 65 20 54 55 4e | .X #de|fine TUN|
|00005200| 45 44 09 09 2f 2a 20 64 | 6f 6e 27 74 20 74 6f 75 |ED../* d|on't tou|
|00005210| 63 68 20 74 68 69 73 20 | 2a 2f 0a 58 20 20 0a 58 |ch this |*/.X .X|
|00005220| 20 20 2f 2a 23 64 65 66 | 69 6e 65 20 4d 53 44 4f | /*#def|ine MSDO|
|00005230| 53 09 09 2f 2a 20 69 66 | 20 74 68 69 73 20 69 73 |S../* if| this is|
|00005240| 20 4d 53 44 4f 53 20 2a | 2f 0a 58 20 20 23 64 65 | MSDOS *|/.X #de|
|00005250| 66 69 6e 65 20 42 53 44 | 34 5f 32 09 09 2f 2a 20 |fine BSD|4_2../* |
|00005260| 42 65 72 6b 65 6c 65 79 | 20 34 2e 32 20 42 53 44 |Berkeley| 4.2 BSD|
|00005270| 20 2a 2f 0a 58 20 20 2f | 2a 23 64 65 66 69 6e 65 | */.X /|*#define|
|00005280| 20 42 53 44 34 5f 33 09 | 2f 2a 20 42 65 72 6b 65 | BSD4_3.|/* Berke|
|00005290| 6c 65 79 20 34 2e 33 20 | 42 53 44 20 2a 2f 0a 58 |ley 4.3 |BSD */.X|
|000052a0| 20 20 2f 2a 23 64 65 66 | 69 6e 65 20 53 59 53 56 | /*#def|ine SYSV|
|000052b0| 09 09 2f 2a 20 66 6f 72 | 20 28 53 79 73 74 65 6d |../* for| (System|
|000052c0| 20 49 49 49 2f 53 79 73 | 74 65 6d 20 56 29 20 55 | III/Sys|tem V) U|
|000052d0| 4e 49 58 20 73 79 73 74 | 65 6d 73 20 2a 2f 0a 58 |NIX syst|ems */.X|
|000052e0| 2b 20 2f 2a 23 64 65 66 | 69 6e 65 20 53 59 53 56 |+ /*#def|ine SYSV|
|000052f0| 52 32 09 2f 2a 20 73 79 | 73 74 65 6d 20 35 2c 20 |R2./* sy|stem 5, |
|00005300| 72 65 6c 2e 20 32 20 2a | 2f 0a 58 2b 20 23 69 66 |rel. 2 *|/.X+ #if|
|00005310| 64 65 66 20 53 59 53 56 | 52 32 0a 58 2b 20 23 20 |def SYSV|R2.X+ # |
|00005320| 20 20 69 66 6e 64 65 66 | 20 53 59 53 56 0a 58 2b | ifndef| SYSV.X+|
|00005330| 20 23 09 64 65 66 69 6e | 65 20 53 59 53 56 09 2f | #.defin|e SYSV./|
|00005340| 2a 20 53 59 53 56 20 69 | 73 20 61 20 73 75 62 73 |* SYSV i|s a subs|
|00005350| 65 74 20 6f 66 20 53 59 | 53 56 52 32 20 2a 2f 0a |et of SY|SVR2 */.|
|00005360| 58 2b 20 23 20 20 20 65 | 6e 64 69 66 0a 58 2b 20 |X+ # e|ndif.X+ |
|00005370| 23 65 6e 64 69 66 0a 58 | 2b 20 0a 58 20 20 23 69 |#endif.X|+ .X #i|
|00005380| 66 64 65 66 20 42 53 44 | 34 5f 33 0a 58 20 20 23 |fdef BSD|4_3.X #|
|00005390| 20 20 20 69 66 6e 64 65 | 66 20 42 53 44 34 5f 32 | ifnde|f BSD4_2|
|000053a0| 0a 58 20 20 23 09 64 65 | 66 69 6e 65 20 42 53 44 |.X #.de|fine BSD|
|000053b0| 34 5f 32 09 2f 2a 20 34 | 2e 33 20 69 73 20 34 2e |4_2./* 4|.3 is 4.|
|000053c0| 32 20 6f 6e 6c 79 20 64 | 69 66 66 65 72 65 6e 74 |2 only d|ifferent|
|000053d0| 2e 20 2a 2f 0a 58 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |. */.X**|********|
|000053e0| 2a 2a 2a 2a 2a 0a 58 2a | 2a 2a 20 33 36 2c 34 32 |*****.X*|** 36,42|
|000053f0| 20 2a 2a 2a 2a 0a 58 20 | 20 23 09 64 65 66 69 6e | ****.X | #.defin|
|00005400| 65 20 4e 42 55 46 09 33 | 0a 58 20 20 23 20 20 20 |e NBUF.3|.X # |
|00005410| 65 6e 64 69 66 0a 58 20 | 20 23 0a 58 21 20 2f 2a |endif.X | #.X! /*|
|00005420| 20 23 20 20 20 64 65 66 | 69 6e 65 20 4c 4f 41 44 | # def|ine LOAD|
|00005430| 5f 41 56 09 2f 2a 20 55 | 73 65 20 74 68 65 20 6c |_AV./* U|se the l|
|00005440| 6f 61 64 20 61 76 65 72 | 61 67 65 20 66 6f 72 20 |oad aver|age for |
|00005450| 76 61 72 69 6f 75 73 20 | 63 6f 6d 6d 61 6e 64 73 |various |commands|
|00005460| 2e 0a 58 20 20 23 09 09 | 09 20 20 20 44 6f 20 6e |..X #..|. Do n|
|00005470| 6f 74 20 64 65 66 69 6e | 65 20 74 68 69 73 20 69 |ot defin|e this i|
|00005480| 66 20 79 6f 75 20 6c 61 | 63 6b 20 61 20 6c 6f 61 |f you la|ck a loa|
|00005490| 64 20 61 76 65 72 61 67 | 65 0a 58 20 20 23 09 09 |d averag|e.X #..|
|000054a0| 09 20 20 20 73 79 73 74 | 65 6d 20 63 61 6c 6c 20 |. syst|em call |
|000054b0| 61 6e 64 20 6b 6d 65 6d | 20 69 73 20 72 65 61 64 |and kmem| is read|
|000054c0| 20 70 72 6f 74 65 63 74 | 65 64 2e 20 2a 2f 0a 58 | protect|ed. */.X|
|000054d0| 20 20 23 0a 58 2d 2d 2d | 20 34 32 2c 34 38 20 2d | #.X---| 42,48 -|
|000054e0| 2d 2d 2d 0a 58 20 20 23 | 09 64 65 66 69 6e 65 20 |---.X #|.define |
|000054f0| 4e 42 55 46 09 33 0a 58 | 20 20 23 20 20 20 65 6e |NBUF.3.X| # en|
|00005500| 64 69 66 0a 58 20 20 23 | 0a 58 21 20 23 20 20 20 |dif.X #|.X! # |
|00005510| 64 65 66 69 6e 65 20 4c | 4f 41 44 5f 41 56 09 2f |define L|OAD_AV./|
|00005520| 2a 20 55 73 65 20 74 68 | 65 20 6c 6f 61 64 20 61 |* Use th|e load a|
|00005530| 76 65 72 61 67 65 20 66 | 6f 72 20 76 61 72 69 6f |verage f|or vario|
|00005540| 75 73 20 63 6f 6d 6d 61 | 6e 64 73 2e 0a 58 20 20 |us comma|nds..X |
|00005550| 23 09 09 09 20 20 20 44 | 6f 20 6e 6f 74 20 64 65 |#... D|o not de|
|00005560| 66 69 6e 65 20 74 68 69 | 73 20 69 66 20 79 6f 75 |fine thi|s if you|
|00005570| 20 6c 61 63 6b 20 61 20 | 6c 6f 61 64 20 61 76 65 | lack a |load ave|
|00005580| 72 61 67 65 0a 58 20 20 | 23 09 09 09 20 20 20 73 |rage.X |#... s|
|00005590| 79 73 74 65 6d 20 63 61 | 6c 6c 20 61 6e 64 20 6b |ystem ca|ll and k|
|000055a0| 6d 65 6d 20 69 73 20 72 | 65 61 64 20 70 72 6f 74 |mem is r|ead prot|
|000055b0| 65 63 74 65 64 2e 20 2a | 2f 0a 58 20 20 23 0a 58 |ected. *|/.X #.X|
|000055c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0a |********|*******.|
|000055d0| 58 2a 2a 2a 20 36 37 2c | 37 33 20 2a 2a 2a 2a 0a |X*** 67,|73 ****.|
|000055e0| 58 20 20 23 20 20 20 20 | 20 20 20 64 65 66 69 6e |X # | defin|
|000055f0| 65 20 42 49 46 46 09 09 | 2f 2a 20 69 66 20 79 6f |e BIFF..|/* if yo|
|00005600| 75 20 68 61 76 65 20 62 | 69 66 66 20 28 6f 72 20 |u have b|iff (or |
|00005610| 74 68 65 20 65 71 75 69 | 76 61 6c 65 6e 74 29 20 |the equi|valent) |
|00005620| 2a 2f 0a 58 20 20 23 20 | 20 20 20 20 20 20 64 65 |*/.X # | de|
|00005630| 66 69 6e 65 20 46 5f 43 | 4f 4d 50 4c 45 54 49 4f |fine F_C|OMPLETIO|
|00005640| 4e 09 2f 2a 20 66 69 6c | 65 6e 61 6d 65 20 63 6f |N./* fil|ename co|
|00005650| 6d 70 6c 65 74 69 6f 6e | 20 2a 2f 0a 58 20 20 23 |mpletion| */.X #|
|00005660| 20 20 20 20 20 20 20 64 | 65 66 69 6e 65 20 43 48 | d|efine CH|
|00005670| 44 49 52 09 09 2f 2a 20 | 63 64 20 63 6f 6d 6d 61 |DIR../* |cd comma|
|00005680| 6e 64 20 61 6e 64 20 61 | 62 73 6f 6c 75 74 65 20 |nd and a|bsolute |
|00005690| 70 61 74 68 6e 61 6d 65 | 73 20 2a 2f 0a 58 21 20 |pathname|s */.X! |
|000056a0| 23 20 20 20 20 20 20 20 | 64 65 66 69 6e 65 09 4b |# |define.K|
|000056b0| 49 4c 4c 30 09 2f 2a 20 | 6b 69 6c 6c 28 70 69 64 |ILL0./* |kill(pid|
|000056c0| 2c 20 30 29 20 72 65 74 | 75 72 6e 73 20 30 20 69 |, 0) ret|urns 0 i|
|000056d0| 66 20 70 72 6f 63 20 65 | 78 69 73 74 73 20 2a 2f |f proc e|xists */|
|000056e0| 0a 58 20 20 23 20 20 20 | 20 20 20 20 64 65 66 69 |.X # | defi|
|000056f0| 6e 65 20 53 50 45 4c 4c | 09 09 2f 2a 20 73 70 65 |ne SPELL|../* spe|
|00005700| 6c 6c 20 77 6f 72 64 73 | 20 61 6e 64 20 62 75 66 |ll words| and buf|
|00005710| 66 65 72 20 63 6f 6d 6d | 61 6e 64 73 20 2a 2f 0a |fer comm|ands */.|
|00005720| 58 20 20 23 20 20 20 20 | 20 20 20 64 65 66 69 6e |X # | defin|
|00005730| 65 20 49 44 5f 43 48 41 | 52 09 09 2f 2a 20 69 6e |e ID_CHA|R../* in|
|00005740| 63 6c 75 64 65 20 63 6f | 64 65 20 74 6f 20 49 44 |clude co|de to ID|
|00005750| 63 68 61 72 20 2a 2f 0a | 58 20 20 23 20 20 20 20 |char */.|X # |
|00005760| 20 20 20 64 65 66 69 6e | 65 20 57 49 52 45 44 5f | defin|e WIRED_|
|00005770| 54 45 52 4d 53 09 2f 2a | 20 69 6e 63 6c 75 64 65 |TERMS./*| include|
|00005780| 20 63 6f 64 65 20 66 6f | 72 20 77 69 72 65 64 20 | code fo|r wired |
|00005790| 74 65 72 6d 69 6e 61 6c | 73 20 2a 2f 0a 58 2d 2d |terminal|s */.X--|
|000057a0| 2d 20 37 33 2c 37 39 20 | 2d 2d 2d 2d 0a 58 20 20 |- 73,79 |----.X |
|000057b0| 23 20 20 20 20 20 20 20 | 64 65 66 69 6e 65 20 42 |# |define B|
|000057c0| 49 46 46 09 09 2f 2a 20 | 69 66 20 79 6f 75 20 68 |IFF../* |if you h|
|000057d0| 61 76 65 20 62 69 66 66 | 20 28 6f 72 20 74 68 65 |ave biff| (or the|
|000057e0| 20 65 71 75 69 76 61 6c | 65 6e 74 29 20 2a 2f 0a | equival|ent) */.|
|000057f0| 58 20 20 23 20 20 20 20 | 20 20 20 64 65 66 69 6e |X # | defin|
|00005800| 65 20 46 5f 43 4f 4d 50 | 4c 45 54 49 4f 4e 09 2f |e F_COMP|LETION./|
|00005810| 2a 20 66 69 6c 65 6e 61 | 6d 65 20 63 6f 6d 70 6c |* filena|me compl|
|00005820| 65 74 69 6f 6e 20 2a 2f | 0a 58 20 20 23 20 20 20 |etion */|.X # |
|00005830| 20 20 20 20 64 65 66 69 | 6e 65 20 43 48 44 49 52 | defi|ne CHDIR|
|00005840| 09 09 2f 2a 20 63 64 20 | 63 6f 6d 6d 61 6e 64 20 |../* cd |command |
|00005850| 61 6e 64 20 61 62 73 6f | 6c 75 74 65 20 70 61 74 |and abso|lute pat|
|00005860| 68 6e 61 6d 65 73 20 2a | 2f 0a 58 21 20 2f 2a 23 |hnames *|/.X! /*#|
|00005870| 20 20 20 20 20 20 20 64 | 65 66 69 6e 65 09 4b 49 | d|efine.KI|
|00005880| 4c 4c 30 09 2f 2a 20 6b | 69 6c 6c 28 70 69 64 2c |LL0./* k|ill(pid,|
|00005890| 20 30 29 20 72 65 74 75 | 72 6e 73 20 30 20 69 66 | 0) retu|rns 0 if|
|000058a0| 20 70 72 6f 63 20 65 78 | 69 73 74 73 20 2a 2f 0a | proc ex|ists */.|
|000058b0| 58 20 20 23 20 20 20 20 | 20 20 20 64 65 66 69 6e |X # | defin|
|000058c0| 65 20 53 50 45 4c 4c 09 | 09 2f 2a 20 73 70 65 6c |e SPELL.|./* spel|
|000058d0| 6c 20 77 6f 72 64 73 20 | 61 6e 64 20 62 75 66 66 |l words |and buff|
|000058e0| 65 72 20 63 6f 6d 6d 61 | 6e 64 73 20 2a 2f 0a 58 |er comma|nds */.X|
|000058f0| 20 20 23 20 20 20 20 20 | 20 20 64 65 66 69 6e 65 | # | define|
|00005900| 20 49 44 5f 43 48 41 52 | 09 09 2f 2a 20 69 6e 63 | ID_CHAR|../* inc|
|00005910| 6c 75 64 65 20 63 6f 64 | 65 20 74 6f 20 49 44 63 |lude cod|e to IDc|
|00005920| 68 61 72 20 2a 2f 0a 58 | 20 20 23 20 20 20 20 20 |har */.X| # |
|00005930| 20 20 64 65 66 69 6e 65 | 20 57 49 52 45 44 5f 54 | define| WIRED_T|
|00005940| 45 52 4d 53 09 2f 2a 20 | 69 6e 63 6c 75 64 65 20 |ERMS./* |include |
|00005950| 63 6f 64 65 20 66 6f 72 | 20 77 69 72 65 64 20 74 |code for| wired t|
|00005960| 65 72 6d 69 6e 61 6c 73 | 20 2a 2f 0a 58 64 69 66 |erminals| */.Xdif|
|00005970| 66 20 2d 63 20 6f 6a 6f | 76 65 2f 75 74 69 6c 2e |f -c ojo|ve/util.|
|00005980| 63 20 6a 6f 76 65 2f 75 | 74 69 6c 2e 63 0a 58 2a |c jove/u|til.c.X*|
|00005990| 2a 2a 20 6f 6a 6f 76 65 | 2f 75 74 69 6c 2e 63 09 |** ojove|/util.c.|
|000059a0| 54 68 75 20 4a 75 6c 20 | 31 36 20 30 39 3a 31 35 |Thu Jul |16 09:15|
|000059b0| 3a 32 34 20 31 39 38 37 | 0a 58 2d 2d 2d 20 6a 6f |:24 1987|.X--- jo|
|000059c0| 76 65 2f 75 74 69 6c 2e | 63 09 46 72 69 20 4a 75 |ve/util.|c.Fri Ju|
|000059d0| 6e 20 31 39 20 31 36 3a | 30 31 3a 30 31 20 31 39 |n 19 16:|01:01 19|
|000059e0| 38 37 0a 58 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |87.X****|********|
|000059f0| 2a 2a 2a 0a 58 2a 2a 2a | 20 37 2c 31 37 20 2a 2a |***.X***| 7,17 **|
|00005a00| 2a 2a 0a 58 20 20 0a 58 | 20 20 23 69 6e 63 6c 75 |**.X .X| #inclu|
|00005a10| 64 65 20 22 6a 6f 76 65 | 2e 68 22 0a 58 20 20 23 |de "jove|.h".X #|
|00005a20| 69 6e 63 6c 75 64 65 20 | 22 63 74 79 70 65 2e 68 |include |"ctype.h|
|00005a30| 22 0a 58 20 20 23 69 6e | 63 6c 75 64 65 20 3c 73 |".X #in|clude <s|
|00005a40| 69 67 6e 61 6c 2e 68 3e | 0a 58 20 20 23 69 6e 63 |ignal.h>|.X #inc|
|00005a50| 6c 75 64 65 20 3c 76 61 | 72 61 72 67 73 2e 68 3e |lude <va|rargs.h>|
|00005a60| 0a 58 20 20 0a 58 21 20 | 23 69 66 64 65 66 20 53 |.X .X! |#ifdef S|
|00005a70| 59 53 56 20 2f 2a 20 72 | 65 6c 65 61 73 65 20 32 |YSV /* r|elease 2|
|00005a80| 2c 20 61 74 20 6c 65 61 | 73 74 20 2a 2f 0a 58 21 |, at lea|st */.X!|
|00005a90| 20 73 68 6f 72 74 20 6f | 73 70 65 65 64 20 3b 0a | short o|speed ;.|
|00005aa0| 58 20 20 23 65 6e 64 69 | 66 0a 58 20 20 0a 58 20 |X #endi|f.X .X |
|00005ab0| 20 73 74 72 75 63 74 20 | 63 6d 64 20 2a 0a 58 2d | struct |cmd *.X-|
|00005ac0| 2d 2d 20 37 2c 31 38 20 | 2d 2d 2d 2d 0a 58 20 20 |-- 7,18 |----.X |
|00005ad0| 0a 58 20 20 23 69 6e 63 | 6c 75 64 65 20 22 6a 6f |.X #inc|lude "jo|
|00005ae0| 76 65 2e 68 22 0a 58 20 | 20 23 69 6e 63 6c 75 64 |ve.h".X | #includ|
|00005af0| 65 20 22 63 74 79 70 65 | 2e 68 22 0a 58 2b 20 23 |e "ctype|.h".X+ #|
|00005b00| 69 6e 63 6c 75 64 65 20 | 22 74 65 72 6d 63 61 70 |include |"termcap|
|00005b10| 2e 68 22 0a 58 20 20 23 | 69 6e 63 6c 75 64 65 20 |.h".X #|include |
|00005b20| 3c 73 69 67 6e 61 6c 2e | 68 3e 0a 58 20 20 23 69 |<signal.|h>.X #i|
|00005b30| 6e 63 6c 75 64 65 20 3c | 76 61 72 61 72 67 73 2e |nclude <|varargs.|
|00005b40| 68 3e 0a 58 20 20 0a 58 | 21 20 23 69 66 64 65 66 |h>.X .X|! #ifdef|
|00005b50| 20 53 59 53 56 52 32 20 | 2f 2a 20 72 65 6c 65 61 | SYSVR2 |/* relea|
|00005b60| 73 65 20 32 2c 20 61 74 | 20 6c 65 61 73 74 20 2a |se 2, at| least *|
|00005b70| 2f 0a 58 21 20 73 68 6f | 72 74 09 6f 73 70 65 65 |/.X! sho|rt.ospee|
|00005b80| 64 3b 0a 58 20 20 23 65 | 6e 64 69 66 0a 58 20 20 |d;.X #e|ndif.X |
|00005b90| 0a 58 20 20 73 74 72 75 | 63 74 20 63 6d 64 20 2a |.X stru|ct cmd *|
|00005ba0| 0a 58 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.X******|********|
|00005bb0| 2a 0a 58 2a 2a 2a 20 32 | 37 2c 33 32 20 2a 2a 2a |*.X*** 2|7,32 ***|
|00005bc0| 2a 0a 58 2d 2d 2d 20 32 | 38 2c 33 34 20 2d 2d 2d |*.X--- 2|8,34 ---|
|00005bd0| 2d 0a 58 20 20 7d 0a 58 | 20 20 0a 58 20 20 69 6e |-.X }.X| .X in|
|00005be0| 74 09 49 6e 74 65 72 61 | 63 74 69 76 65 3b 09 2f |t.Intera|ctive;./|
|00005bf0| 2a 20 54 72 75 65 20 77 | 68 65 6e 20 77 65 20 69 |* True w|hen we i|
|00005c00| 6e 76 6f 6b 65 20 77 69 | 74 68 20 74 68 65 20 63 |nvoke wi|th the c|
|00005c10| 6f 6d 6d 61 6e 64 20 68 | 61 6e 64 6c 65 72 3f 20 |ommand h|andler? |
|00005c20| 2a 2f 0a 58 2b 20 64 61 | 74 61 5f 6f 62 6a 09 2a |*/.X+ da|ta_obj.*|
|00005c30| 4c 61 73 74 43 6d 64 3b | 0a 58 20 20 63 68 61 72 |LastCmd;|.X char|
|00005c40| 09 2a 50 72 6f 63 46 6d | 74 20 3d 20 22 3a 20 25 |.*ProcFm|t = ": %|
|00005c50| 66 20 22 3b 0a 58 20 20 | 0a 58 20 20 45 78 65 63 |f ";.X |.X Exec|
|00005c60| 43 6d 64 28 63 70 29 0a | 58 2a 2a 2a 2a 2a 2a 2a |Cmd(cp).|X*******|
|00005c70| 2a 2a 2a 2a 2a 2a 2a 2a | 0a 58 2a 2a 2a 20 35 36 |********|.X*** 56|
|00005c80| 2c 37 36 20 2a 2a 2a 2a | 0a 58 20 20 6c 61 73 74 |,76 ****|.X last|
|00005c90| 6c 69 6e 65 28 6c 70 29 | 0a 58 20 20 72 65 67 69 |line(lp)|.X regi|
|00005ca0| 73 74 65 72 20 4c 69 6e | 65 09 2a 6c 70 3b 0a 58 |ster Lin|e.*lp;.X|
|00005cb0| 20 20 7b 0a 58 21 20 09 | 77 68 69 6c 65 20 28 6c | {.X! .|while (l|
|00005cc0| 70 2d 3e 6c 5f 6e 65 78 | 74 29 0a 58 21 20 09 09 |p->l_nex|t).X! ..|
|00005cd0| 6c 70 20 3d 20 6c 70 2d | 3e 6c 5f 6e 65 78 74 3b |lp = lp-|>l_next;|
|00005ce0| 0a 58 20 20 09 72 65 74 | 75 72 6e 20 6c 70 3b 0a |.X .ret|urn lp;.|
|00005cf0| 58 20 20 7d 0a 58 20 20 | 0a 58 21 20 55 70 70 65 |X }.X |.X! Uppe|
|00005d00| 72 28 63 29 0a 58 21 20 | 72 65 67 69 73 74 65 72 |r(c).X! |register|
|00005d10| 20 69 6e 74 09 63 3b 0a | 58 21 20 7b 0a 58 21 20 | int.c;.|X! {.X! |
|00005d20| 09 72 65 74 75 72 6e 20 | 28 69 73 6c 6f 77 65 72 |.return |(islower|
|00005d30| 28 63 29 20 3f 20 74 6f | 75 70 70 65 72 28 63 29 |(c) ? to|upper(c)|
|00005d40| 20 3a 20 63 29 3b 0a 58 | 21 20 7d 0a 58 20 20 0a | : c);.X|! }.X .|
|00005d50| 58 2d 20 69 6e 74 09 61 | 6c 61 72 6d 65 64 20 3d |X- int.a|larmed =|
|00005d60| 20 30 3b 0a 58 2d 20 0a | 58 20 20 63 68 61 72 09 | 0;.X- .|X char.|
|00005d70| 6b 65 79 5f 73 74 72 6f | 6b 65 73 5b 31 30 30 5d |key_stro|kes[100]|
|00005d80| 3b 0a 58 21 20 73 74 61 | 74 69 63 20 63 68 61 72 |;.X! sta|tic char|
|00005d90| 09 2a 6b 65 79 5f 70 20 | 3d 20 6b 65 79 5f 73 74 |.*key_p |= key_st|
|00005da0| 72 6f 6b 65 73 3b 0a 58 | 20 20 0a 58 20 20 69 6e |rokes;.X| .X in|
|00005db0| 69 74 5f 73 74 72 6f 6b | 65 73 28 29 0a 58 20 20 |it_strok|es().X |
|00005dc0| 7b 0a 58 2d 2d 2d 20 35 | 38 2c 37 34 20 2d 2d 2d |{.X--- 5|8,74 ---|
|00005dd0| 2d 0a 58 20 20 6c 61 73 | 74 6c 69 6e 65 28 6c 70 |-.X las|tline(lp|
|00005de0| 29 0a 58 20 20 72 65 67 | 69 73 74 65 72 20 4c 69 |).X reg|ister Li|
|00005df0| 6e 65 09 2a 6c 70 3b 0a | 58 20 20 7b 0a 58 21 20 |ne.*lp;.|X {.X! |
|00005e00| 09 72 65 67 69 73 74 65 | 72 20 4c 69 6e 65 09 2a |.registe|r Line.*|
|00005e10| 6e 65 78 74 3b 0a 58 21 | 20 0a 58 21 20 09 77 68 |next;.X!| .X! .wh|
|00005e20| 69 6c 65 20 28 6e 65 78 | 74 20 3d 20 6c 70 2d 3e |ile (nex|t = lp->|
|00005e30| 6c 5f 6e 65 78 74 29 0a | 58 21 20 09 09 6c 70 20 |l_next).|X! ..lp |
|00005e40| 3d 20 6e 65 78 74 3b 0a | 58 20 20 09 72 65 74 75 |= next;.|X .retu|
|00005e50| 72 6e 20 6c 70 3b 0a 58 | 20 20 7d 0a 58 20 20 0a |rn lp;.X| }.X .|
|00005e60| 58 21 20 70 72 69 76 61 | 74 65 20 69 6e 74 09 2a |X! priva|te int.*|
|00005e70| 73 6c 6f 77 70 20 3d 20 | 30 3b 0a 58 20 20 0a 58 |slowp = |0;.X .X|
|00005e80| 20 20 63 68 61 72 09 6b | 65 79 5f 73 74 72 6f 6b | char.k|ey_strok|
|00005e90| 65 73 5b 31 30 30 5d 3b | 0a 58 21 20 70 72 69 76 |es[100];|.X! priv|
|00005ea0| 61 74 65 20 63 68 61 72 | 09 2a 6b 65 79 5f 70 20 |ate char|.*key_p |
|00005eb0| 3d 20 6b 65 79 5f 73 74 | 72 6f 6b 65 73 3b 0a 58 |= key_st|rokes;.X|
|00005ec0| 20 20 0a 58 20 20 69 6e | 69 74 5f 73 74 72 6f 6b | .X in|it_strok|
|00005ed0| 65 73 28 29 0a 58 20 20 | 7b 0a 58 2a 2a 2a 2a 2a |es().X |{.X*****|
|00005ee0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 58 2a 2a 2a 20 |********|**.X*** |
|00005ef0| 38 38 2c 39 34 20 2a 2a | 2a 2a 0a 58 20 20 0a 58 |88,94 **|**.X .X|
|00005f00| 20 20 73 6c 6f 77 70 6f | 6b 65 28 29 0a 58 20 20 | slowpo|ke().X |
|00005f10| 7b 0a 58 21 20 09 61 6c | 61 72 6d 65 64 2b 2b 3b |{.X! .al|armed++;|
|00005f20| 0a 58 20 20 09 66 5f 6d | 65 73 73 28 6b 65 79 5f |.X .f_m|ess(key_|
|00005f30| 73 74 72 6f 6b 65 73 29 | 3b 0a 58 20 20 7d 0a 58 |strokes)|;.X }.X|
|00005f40| 20 20 0a 58 2d 2d 2d 20 | 38 36 2c 39 33 20 2d 2d | .X--- |86,93 --|
|00005f50| 2d 2d 0a 58 20 20 0a 58 | 20 20 73 6c 6f 77 70 6f |--.X .X| slowpo|
|00005f60| 6b 65 28 29 0a 58 20 20 | 7b 0a 58 21 20 09 69 66 |ke().X |{.X! .if|
|00005f70| 20 28 73 6c 6f 77 70 29 | 0a 58 21 20 09 09 2a 73 | (slowp)|.X! ..*s|
|00005f80| 6c 6f 77 70 20 3d 20 59 | 45 53 3b 0a 58 20 20 09 |lowp = Y|ES;.X .|
|00005f90| 66 5f 6d 65 73 73 28 6b | 65 79 5f 73 74 72 6f 6b |f_mess(k|ey_strok|
|00005fa0| 65 73 29 3b 0a 58 20 20 | 7d 0a 58 20 20 0a 58 2a |es);.X |}.X .X*|
|00005fb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 0a 58 |********|******.X|
|00005fc0| 2a 2a 2a 20 39 35 2c 31 | 30 34 20 2a 2a 2a 2a 0a |*** 95,1|04 ****.|
|00005fd0| 58 20 20 23 69 66 64 65 | 66 20 42 53 44 34 5f 32 |X #ifde|f BSD4_2|
|00005fe0| 0a 58 20 20 23 09 64 65 | 66 69 6e 65 20 4e 5f 53 |.X #.de|fine N_S|
|00005ff0| 45 43 09 31 09 2f 2a 20 | 77 69 6c 6c 20 62 65 20 |EC.1./* |will be |
|00006000| 70 72 65 63 69 73 65 6c | 79 20 31 20 73 65 63 6f |precisel|y 1 seco|
|00006010| 6e 64 20 6f 6e 20 34 2e | 32 20 2a 2f 0a 58 20 20 |nd on 4.|2 */.X |
|00006020| 23 65 6c 73 65 0a 58 21 | 20 23 09 64 65 66 69 6e |#else.X!| #.defin|
|00006030| 65 20 4e 5f 53 45 43 09 | 32 09 2f 2a 20 62 75 74 |e N_SEC.|2./* but|
|00006040| 20 66 72 6f 6d 20 30 20 | 74 6f 20 32 20 73 65 63 | from 0 |to 2 sec|
|00006050| 6f 6e 64 73 20 6f 74 68 | 65 72 77 69 73 65 20 2a |onds oth|erwise *|
|00006060| 2f 0a 58 20 20 23 65 6e | 64 69 66 0a 58 20 20 0a |/.X #en|dif.X .|
|00006070| 58 21 20 77 61 69 74 63 | 68 61 72 28 29 0a 58 20 |X! waitc|har().X |
|00006080| 20 7b 0a 58 20 20 23 69 | 66 64 65 66 20 45 55 4e | {.X #i|fdef EUN|
|00006090| 49 43 45 0a 58 20 20 09 | 72 65 74 75 72 6e 20 67 |ICE.X .|return g|
|000060a0| 65 74 63 68 28 29 3b 0a | 58 2d 2d 2d 20 39 34 2c |etch();.|X--- 94,|
|000060b0| 31 30 34 20 2d 2d 2d 2d | 0a 58 20 20 23 69 66 64 |104 ----|.X #ifd|
|000060c0| 65 66 20 42 53 44 34 5f | 32 0a 58 20 20 23 09 64 |ef BSD4_|2.X #.d|
|000060d0| 65 66 69 6e 65 20 4e 5f | 53 45 43 09 31 09 2f 2a |efine N_|SEC.1./*|
|000060e0| 20 77 69 6c 6c 20 62 65 | 20 70 72 65 63 69 73 65 | will be| precise|
|000060f0| 6c 79 20 31 20 73 65 63 | 6f 6e 64 20 6f 6e 20 34 |ly 1 sec|ond on 4|
|00006100| 2e 32 20 2a 2f 0a 58 20 | 20 23 65 6c 73 65 0a 58 |.2 */.X | #else.X|
|00006110| 21 20 23 09 64 65 66 69 | 6e 65 20 4e 5f 53 45 43 |! #.defi|ne N_SEC|
|00006120| 09 32 09 2f 2a 20 62 75 | 74 20 66 72 6f 6d 20 31 |.2./* bu|t from 1|
|00006130| 20 74 6f 20 32 20 73 65 | 63 6f 6e 64 73 20 6f 74 | to 2 se|conds ot|
|00006140| 68 65 72 77 69 73 65 20 | 2a 2f 0a 58 20 20 23 65 |herwise |*/.X #e|
|00006150| 6e 64 69 66 0a 58 20 20 | 0a 58 21 20 77 61 69 74 |ndif.X |.X! wait|
|00006160| 63 68 61 72 28 73 6c 6f | 77 29 0a 58 21 20 69 6e |char(slo|w).X! in|
|00006170| 74 09 2a 73 6c 6f 77 3b | 0a 58 20 20 7b 0a 58 20 |t.*slow;|.X {.X |
|00006180| 20 23 69 66 64 65 66 20 | 45 55 4e 49 43 45 0a 58 | #ifdef |EUNICE.X|
|00006190| 20 20 09 72 65 74 75 72 | 6e 20 67 65 74 63 68 28 | .retur|n getch(|
|000061a0| 29 3b 0a 58 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |);.X****|********|
|000061b0| 2a 2a 2a 0a 58 2a 2a 2a | 20 31 30 37 2c 31 31 33 |***.X***| 107,113|
|000061c0| 20 2a 2a 2a 2a 0a 58 20 | 20 09 69 6e 74 09 63 3b | ****.X | .int.c;|
|000061d0| 0a 58 20 20 09 69 6e 74 | 09 28 2a 6f 6c 64 70 72 |.X .int|.(*oldpr|
|000061e0| 6f 63 29 28 29 3b 0a 58 | 20 20 0a 58 21 20 09 61 |oc)();.X| .X! .a|
|000061f0| 6c 61 72 6d 65 64 20 3d | 20 30 3b 0a 58 20 20 09 |larmed =| 0;.X .|
|00006200| 6f 6c 64 70 72 6f 63 20 | 3d 20 73 69 67 6e 61 6c |oldproc |= signal|
|00006210| 28 53 49 47 41 4c 52 4d | 2c 20 73 6c 6f 77 70 6f |(SIGALRM|, slowpo|
|00006220| 6b 65 29 3b 0a 58 20 20 | 0a 58 20 20 09 69 66 20 |ke);.X |.X .if |
|00006230| 28 28 6f 6c 64 5f 74 69 | 6d 65 20 3d 20 61 6c 61 |((old_ti|me = ala|
|00006240| 72 6d 28 28 75 6e 73 69 | 67 6e 65 64 29 20 4e 5f |rm((unsi|gned) N_|
|00006250| 53 45 43 29 29 20 3d 3d | 20 30 29 0a 58 2d 2d 2d |SEC)) ==| 0).X---|
|00006260| 20 31 30 37 2c 31 31 35 | 20 2d 2d 2d 2d 0a 58 20 | 107,115| ----.X |
|00006270| 20 09 69 6e 74 09 63 3b | 0a 58 20 20 09 69 6e 74 | .int.c;|.X .int|
|00006280| 09 28 2a 6f 6c 64 70 72 | 6f 63 29 28 29 3b 0a 58 |.(*oldpr|oc)();.X|
|00006290| 20 20 0a 58 21 20 09 73 | 6c 6f 77 70 20 3d 20 73 | .X! .s|lowp = s|
|000062a0| 6c 6f 77 3b 0a 58 21 20 | 09 69 66 20 28 73 6c 6f |low;.X! |.if (slo|
|000062b0| 77 29 0a 58 21 20 09 09 | 2a 73 6c 6f 77 20 3d 20 |w).X! ..|*slow = |
|000062c0| 4e 4f 3b 0a 58 20 20 09 | 6f 6c 64 70 72 6f 63 20 |NO;.X .|oldproc |
|000062d0| 3d 20 73 69 67 6e 61 6c | 28 53 49 47 41 4c 52 4d |= signal|(SIGALRM|
|000062e0| 2c 20 73 6c 6f 77 70 6f | 6b 65 29 3b 0a 58 20 20 |, slowpo|ke);.X |
|000062f0| 0a 58 20 20 09 69 66 20 | 28 28 6f 6c 64 5f 74 69 |.X .if |((old_ti|
|00006300| 6d 65 20 3d 20 61 6c 61 | 72 6d 28 28 75 6e 73 69 |me = ala|rm((unsi|
|00006310| 67 6e 65 64 29 20 4e 5f | 53 45 43 29 29 20 3d 3d |gned) N_|SEC)) ==|
|00006320| 20 30 29 0a 58 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | 0).X***|********|
|00006330| 2a 2a 2a 2a 0a 58 2a 2a | 2a 20 32 31 34 2c 32 32 |****.X**|* 214,22|
|00006340| 30 20 2a 2a 2a 2a 0a 58 | 20 20 09 45 6f 6c 28 29 |0 ****.X| .Eol()|
|00006350| 3b 0a 58 20 20 7d 0a 58 | 20 20 0a 58 21 20 69 6e |;.X }.X| .X! in|
|00006360| 74 09 4d 61 72 6b 54 68 | 72 65 73 68 20 3d 20 32 |t.MarkTh|resh = 2|
|00006370| 32 3b 09 2f 2a 20 41 76 | 65 72 61 67 65 20 73 63 |2;./* Av|erage sc|
|00006380| 72 65 65 6e 20 73 69 7a | 65 20 2e 2e 2e 20 2a 2f |reen siz|e ... */|
|00006390| 0a 58 20 20 73 74 61 74 | 69 63 20 69 6e 74 09 6c |.X stat|ic int.l|
|000063a0| 69 6e 65 5f 64 69 66 66 | 3b 0a 58 20 20 0a 58 20 |ine_diff|;.X .X |
|000063b0| 20 4c 69 6e 65 44 69 73 | 74 28 6e 65 78 74 70 2c | LineDis|t(nextp,|
|000063c0| 20 65 6e 64 70 29 0a 58 | 2d 2d 2d 20 32 31 36 2c | endp).X|--- 216,|
|000063d0| 32 32 32 20 2d 2d 2d 2d | 0a 58 20 20 09 45 6f 6c |222 ----|.X .Eol|
|000063e0| 28 29 3b 0a 58 20 20 7d | 0a 58 20 20 0a 58 21 20 |();.X }|.X .X! |
|000063f0| 69 6e 74 09 4d 61 72 6b | 54 68 72 65 73 68 20 3d |int.Mark|Thresh =|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.