;COMPARISON OF SS:PARSER.ZIL.160 AND SS:GPARSER.ZIL.9 ;OPTIONS ARE /3 **** FILE SS:PARSER.ZIL.160, 1-1 (0) "PARSER for SORCERER (c) Copyright 1984 Infocom, Inc. All Rights Reserved" ;"Parser global variable convention: All parser globals will begin with 'P-'. Local variables are not restricted in any way." **** FILE SS:GPARSER.ZIL.9, 1-1 (0) "Generic PARSER file for The ZORK Trilogy started on 7/28/83 by MARC" ;"WHICH and TRAP retrofixes installed" "Parser global variable convention: All parser globals will begin with 'P-'. Local variables are not restricted in any way. " *************** **** FILE SS:PARSER.ZIL.160, 1-16 (309) ; > ;"INBUF - Input buffer for READ" > ;"Parse-cont variable" > > > ;> ;"Orphan flag" > > > > > ;"Parser variables and temporaries" **** FILE SS:GPARSER.ZIL.9, 1-18 (356) > ;"pointers used by CLAUSE-COPY (source/destination beginning/end pointers)" ;> ;> ;> > ;"INBUF - Input buffer for READ" ;> ;> <> <> <>>> "word pointer to unknown token in P-LEXV" "word pointer to sentence start in P-LEXV" "byte length of unparsed tokens in P-LEXV" "byte pointer to first free byte in OOPS-INBUF" ;"Parse-cont variable" > > ;> ;"Orphan flag" > > > > > ;"Parser variables and temporaries" *************** **** FILE SS:PARSER.ZIL.160, 2-17 (1559) **** FILE SS:GPARSER.ZIL.9, 1-86 (2255) > *************** **** FILE SS:PARSER.ZIL.160, 2-32 (1822) **** FILE SS:GPARSER.ZIL.9, 1-102 (2562) > *************** **** FILE SS:PARSER.ZIL.160, 2-35 (2046) all required orphaning, syntax checking, and noun clause lookup." ) LEN (DIR <>) (NW 0) (LW 0) NUM SCNT (CNT -1)) > ,P-ITBLLEN> ) (T )>> > > **** FILE SS:GPARSER.ZIL.9, 1-107 (2815) all required orphaning, syntax checking, and noun clause lookup." ) (OF-FLAG <>) OWINNER OMERGED LEN (DIR <>) (NW 0) (LW 0) (CNT -1)) > ,P-ITBLLEN> ) (T >)> )>> > > > *************** **** FILE SS:PARSER.ZIL.160, 3-14 (2568) ,VEHBIT>> >)> >)> > <==? ,PLAYER ,WINNER>> **** FILE SS:GPARSER.ZIL.9, 2-20 (3521) > ; ,VEHBIT>> >)> >)> > )> > >) (,P-CONT >> *************** **** FILE SS:PARSER.ZIL.160, 3-33 (3208) )> > GPARSER.ZIL.9, 2-48 (4443) )> > ,W?OOPS> > ,W?PERIOD ,W?COMMA> > >)> > ) ( > ,W?QUOTE>> ) ( )> >> ;"maybe fix oops vs. chars.?" 6>> 7>> <+ <* ,P-LEXELEN> 3>> > > ) (T > )>) (T > )> >)> ,W?AGAIN ,W?G> > ) (,P-OFLAG ) ( ) ( > ,W?PERIOD ,W?COMMA ,W?THEN> > ,W?AND>> >> 2>>) (T )>) (T > 1>>)> 0> ) (T >)> ;> ) (T >)>>) (T > >>>> > >>> > > PARSER.ZIL.160, 3-44 (3530) > ) ( ;"Last NOT added 7/3"> )> > ) ( > **** FILE SS:GPARSER.ZIL.9, 2-145 (7989) ) (T >>)> > ) ( ;"Last NOT added 7/3"> ) (ELSE )>)> *************** **** FILE SS:PARSER.ZIL.160, 3-61 (4143) (T )>)> **** FILE SS:GPARSER.ZIL.9, 2-164 (8688) (T )>)> *************** **** FILE SS:PARSER.ZIL.160, 3-71 (4413) ,ACT?WALK ;,ACT?FLY> > >> **** FILE SS:GPARSER.ZIL.9, 2-173 (8951) % ' ,ACT?WALK ,ACT?FLY>) (ELSE ' ,ACT?WALK>)> > PARSER.ZIL.160, 3-83 (4790) <==? .LEN 2> **** FILE SS:GPARSER.ZIL.9, 2-188 (9378) *************** **** FILE SS:PARSER.ZIL.160, 3-96 (5200) ; >> **** FILE SS:GPARSER.ZIL.9, 2-201 (9791) > *************** **** FILE SS:PARSER.ZIL.160, 3-103 (5451) 2>>>> >>) (> **** FILE SS:GPARSER.ZIL.9, 2-207 (9987) 2>>>> >>) (> *************** **** FILE SS:PARSER.ZIL.160, 3-112 (5772) <==? > ,W?OF> ;> <0? .VAL> > >>) (> > ,W?THEN ,W?PERIOD>>> **** FILE SS:GPARSER.ZIL.9, 2-215 (10288) > ;>> ) (> >> *************** **** FILE SS:PARSER.ZIL.160, 3-129 (6301) (<==? ,P-NCN 2> **** FILE SS:GPARSER.ZIL.9, 2-229 (10755) ( *************** **** FILE SS:PARSER.ZIL.160, 3-135 (6458) **** FILE SS:GPARSER.ZIL.9, 2-235 (10918) *************** **** FILE SS:PARSER.ZIL.160, 3-140 (6607) ;( > ) () ( > **** FILE SS:GPARSER.ZIL.9, 2-241 (11096) ( > ) (T >)>) () ( > *************** **** FILE SS:PARSER.ZIL.160, 3-157 (7127) >> ; ) (T >)> )> > )> ; 0> )> > T)>> ;> > **** FILE SS:GPARSER.ZIL.9, 2-263 (11705) >>)> > % ' ) (T >)>) (ELSE ')> > ) (ELSE )> > > > T)>)>> >)> > > > ;"For AGAIN purposes, put contents of one LEXV table into another." > > > 2>> > 3>> > > )>>> ;"Put contents of one INBUF into another" 1>> > )>>> ;"Put the word in the positions specified from P-INBUF to the end of OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV" > ) (T >> >>>)> > >> > )>> .LEN>> *************** **** FILE SS:PARSER.ZIL.160, 3-180 (7876) for that part of speech to be returned." > .BIT> ) (T > > >)> )>)>> ;" Scan through a noun clause, leave a pointer to its starting location" ) (FIRST?? T) NW (LW 0)) 2>> > **** FILE SS:GPARSER.ZIL.9, 2-336 (14065) for that part of speech to be returned." > .BIT> ) (T > > >)> )>)>> ;" Scan through a noun clause, leave a pointer to its starting location" ) (FIRST?? T) NW (LW 0)) 2>> > *************** **** FILE SS:PARSER.ZIL.160, 4-19 (8626) > )> **** FILE SS:GPARSER.ZIL.9, 3-19 (14811) > )> *************** **** FILE SS:PARSER.ZIL.160, 4-29 (9085) ) (T >>)> ; <==? ,ACT?ACCUSE>> )> > ) ( ) ( **** FILE SS:GPARSER.ZIL.9, 3-29 (15273) ) (T >>)> ) ( *************** **** FILE SS:PARSER.ZIL.160, 4-54 (10039) **** FILE SS:GPARSER.ZIL.9, 3-47 (15975) *************** **** FILE SS:PARSER.ZIL.160, 4-63 (10335) > **** FILE SS:GPARSER.ZIL.9, 3-54 (16174) > *************** **** FILE SS:PARSER.ZIL.160, 4-79 (10850) 0>> **** FILE SS:GPARSER.ZIL.9, 3-70 (16692) >> *************** **** FILE SS:PARSER.ZIL.160, 4-90 (11183) >>> **** FILE SS:GPARSER.ZIL.9, 3-82 (17054) >>> *************** **** FILE SS:PARSER.ZIL.160, 4-99 (11490) **** FILE SS:GPARSER.ZIL.9, 3-91 (17360) *************** **** FILE SS:PARSER.ZIL.160, 4-117 (12007) ) WRD) > >>> >>> ) (<==? ,P-NCN 2> ) (<==? 1> > > > > >) (T )>) (<==? 1> > > > > > ) (T )>) (,P-ACLAUSE > > ) (T > > ) (T > )>) (> ,P-PSOFF> ,PS?ADJECTIVE> > ) ( ,PS?OBJECT> <==? .WRD ,W?ONE>> > ) (T )>)> >>)>)> > ,P-ITBLLEN> ) (T >)>> T> .ADJ> 0>> > > > ;"Print undefined word in input. PTR points to the unknown word in P-LEXV" **** FILE SS:GPARSER.ZIL.9, 3-110 (17882) )> ;"New ORPHAN-MERGE for TRAP Retrofix 6/21/84" ) WRD) > 0>> ,PS?VERB ,P1?VERB> > >>> ) (>> > > > )> >>> >>> ) ( ) ( 1> > > > > > >)> )>) (T >)> >) (T )>) ( 1> > > > > > >)>)> > > ) (T )>) (> > > > ) (T > > >)> > > ) (T > )>) ( ,PS?ADJECTIVE> >> ) ( ) ( ,PS?OBJECT> ) (T )> )> > > )>>)>)> > > > > ,P-ITBLLEN> ) (T >)>> T> ;"New ACLAUSE-WIN for TRAP retrofix 6/21/84" > > > 0>> > > > > 0>> > > > ;"Print undefined word in input. PTR points to the unknown word in P-LEXV" *************** **** FILE SS:PARSER.ZIL.160, 6-10 (14191) **** FILE SS:GPARSER.ZIL.9, 5-10 (21964) )> *************** **** FILE SS:PARSER.ZIL.160, 6-18 (14422) >> 2> 3>> **** FILE SS:GPARSER.ZIL.9, 5-22 (22306) )> >> 2> 3>> *************** **** FILE SS:PARSER.ZIL.160, 6-28 (14826) the syntax is saved in P-SYNTAX." ) (DRIVE2 <>) PREP VERB TMP) >> **** FILE SS:GPARSER.ZIL.9, 5-35 (22814) the syntax is saved in P-SYNTAX." ) (DRIVE2 <>) PREP VERB TMP) >> *************** **** FILE SS:PARSER.ZIL.160, 7-14 (15618) <0? ,P-NCN> >> <==? .PREP >>> ) (<==? > <==? ,P-NCN 1>> ) (<==? > **** FILE SS:GPARSER.ZIL.9, 5-63 (23554) >> >>> ) ( > > ) ( > *************** **** FILE SS:PARSER.ZIL.160, 7-27 (16101) **** FILE SS:GPARSER.ZIL.9, 5-77 (24063) *************** **** FILE SS:PARSER.ZIL.160, 7-46 (16722) ( ) (> **** FILE SS:GPARSER.ZIL.9, 5-97 (24688) ( ) (> *************** **** FILE SS:PARSER.ZIL.160, 7-55 (17029) ) **** FILE SS:GPARSER.ZIL.9, 5-106 (24985) ) *************** **** FILE SS:PARSER.ZIL.160, 7-62 (17254) )> **** FILE SS:GPARSER.ZIL.9, 5-113 (25213) )> *************** **** FILE SS:PARSER.ZIL.160, 7-67 (17443) )>> **** FILE SS:GPARSER.ZIL.9, 5-119 (25410) )>> *************** **** FILE SS:PARSER.ZIL.160, 8-3 (17616) **** FILE SS:GPARSER.ZIL.9, 6-3 (25582) )> > > > *************** **** FILE SS:PARSER.ZIL.160, 8-8 (17784) )> > )> **** FILE SS:GPARSER.ZIL.9, 6-11 (25868) )> > )> *************** **** FILE SS:PARSER.ZIL.160, 8-15 (18064) )>> .THE?>> ) WRD (FIRST?? T) (PN <>)) ) (T >) (T )> > ,W?PERIOD> ) **** FILE SS:GPARSER.ZIL.9, 6-28 (26503) )>> ; .THE?>> ) "AUX" BEG END) > >) (ELSE > >)> > ) (Q? <>)) ) (T > T) ( ) (.NOSP >) (ELSE )> ) ( ) ( ) *************** **** FILE SS:PARSER.ZIL.160, 8-32 (18651) ( ;<==? ,P-IT-LOC ,HERE>> **** FILE SS:GPARSER.ZIL.9, 6-65 (27661) ( > *************** **** FILE SS:PARSER.ZIL.160, 8-42 (18927) ;> 32>> 1> <+ 1>>> > **** FILE SS:GPARSER.ZIL.9, 6-74 (27909) > *************** **** FILE SS:PARSER.ZIL.160, 8-53 (19265) )>)>> ) "AUX" BEG END) > > GPARSER.ZIL.9, 6-81 (28115) )>)>> ) "AUX" BEG END) >> >> *************** **** FILE SS:PARSER.ZIL.160, 8-63 (19559) GPARSER.ZIL.9, 6-91 (28450) *************** **** FILE SS:PARSER.ZIL.160, 8-71 (19748) >> )> >)> >>> **** FILE SS:GPARSER.ZIL.9, 6-99 (28659) >> )> >)> >>> *************** **** FILE SS:PARSER.ZIL.160, 9-6 (20065) > **** FILE SS:GPARSER.ZIL.9, 7-6 (28977) > *************** **** FILE SS:PARSER.ZIL.160, 9-12 (20247) (<==? .PREP> >>)>>> >> **** FILE SS:GPARSER.ZIL.9, 7-12 (29155) ( .PREP> >>)>>> >> ') (ELSE ')> *************** **** FILE SS:PARSER.ZIL.160, 9-29 (20718) 1> > > >> )> > ) (T )>)> .OBJ)>) (T )>> > 0>> > ,P-PRSO> > > >>)> > 0>> > ,P-PRSI> > >> 1> >) (T >)>)>)> > **** FILE SS:GPARSER.ZIL.9, 7-32 (29718) 1> > > > >> )> ) (T )> ) (ELSE )> .OBJ)>) (T )>> > 0>> > ,P-PRSI> >)> > 0>> > ,P-PRSO> >)> >> > >)> >>> >)>)> > *************** **** FILE SS:PARSER.ZIL.160, 10-15 (22298) .NTBL> > > > > > > > > > > > ) LEN WV WRD NW) **** FILE SS:GPARSER.ZIL.9, 8-15 (31421) .NTBL> > > > > > > > > > > ) LEN WV WRD NW (WAS-ALL <>)) > )> *************** **** FILE SS:PARSER.ZIL.160, 11-13 (23035) >>) (T > **** FILE SS:GPARSER.ZIL.9, 9-13 (32074) >> )> ) (T > ) (T >)> *************** **** FILE SS:PARSER.ZIL.160, 11-27 (23508) **** FILE SS:GPARSER.ZIL.9, 9-32 (32693) *************** **** FILE SS:PARSER.ZIL.160, 11-35 (23793) **** FILE SS:GPARSER.ZIL.9, 9-40 (32981) *************** **** FILE SS:PARSER.ZIL.160, 11-39 (23915) (<==? .WRD ,W?OF> )>) (> > **** FILE SS:GPARSER.ZIL.9, 9-45 (33123) ( )>) (> > *************** **** FILE SS:PARSER.ZIL.160, 11-49 (24227) > > )>>> >> ) ( ) ( ) (T )>> ) (OLEN 0) OBJ) **** FILE SS:GPARSER.ZIL.9, 9-55 (33437) > > )>>> ) (OLEN 0) OBJ) *************** **** FILE SS:PARSER.ZIL.160, 11-86 (25068) ,P-ADJ >>> >)> > <0? ,P-GWIMBIT>> )> )> > <0? ,P-SLOCBITS>> **** FILE SS:GPARSER.ZIL.9, 9-73 (33902) ,P-ADJ> >) % '(> > )) (ELSE '( T))>>)> > > )> )> > > *************** **** FILE SS:PARSER.ZIL.160, 11-104 (25573) ; ,VEHBIT> ,OPENBIT>>> ,SOG ,SIR>)> )> .TLEN> >> ) (T )>)>)> .TLEN>> ;>>) ( >> > **** FILE SS:GPARSER.ZIL.9, 9-101 (34729) )> % ' .TLEN> >> )> )>) (ELSE )>)> .TLEN>> ) ( >> > *************** **** FILE SS:PARSER.ZIL.160, 11-128 (26562) >>> **** FILE SS:GPARSER.ZIL.9, 9-124 (35540) >>> *************** **** FILE SS:PARSER.ZIL.160, 11-137 (26815) )> >> ;> ;> **** FILE SS:GPARSER.ZIL.9, 9-133 (35802) )> > *************** **** FILE SS:PARSER.ZIL.160, 11-147 (27140) ,P-NC1) **** FILE SS:GPARSER.ZIL.9, 9-140 (36029) ,P-NC1) *************** **** FILE SS:PARSER.ZIL.160, 11-154 (27327) )> **** FILE SS:GPARSER.ZIL.9, 9-147 (36219) )> *************** **** FILE SS:PARSER.ZIL.160, 11-158 (27434) .GCHECK> > **** FILE SS:GPARSER.ZIL.9, 9-152 (36366) .GCHECK> > *************** **** FILE SS:PARSER.ZIL.160, 11-174 (27882) (T )>)> **** FILE SS:GPARSER.ZIL.9, 9-166 (36821) (T )>)> *************** **** FILE SS:PARSER.ZIL.160, 11-179 (27986) (<0? .LEN> )> **** FILE SS:GPARSER.ZIL.9, 9-170 (36939) ( )> *************** **** FILE SS:PARSER.ZIL.160, 11-187 (28153) )) ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )> )> > **** FILE SS:GPARSER.ZIL.9, 9-176 (37091) *************** **** FILE SS:PARSER.ZIL.160, 11-237 (29574) > 1> >)> > **** FILE SS:GPARSER.ZIL.9, 9-188 (37416) > 0> )> > 0> )> > 1> >)> *************** **** FILE SS:PARSER.ZIL.160, 11-246 (29809) > > **** FILE SS:GPARSER.ZIL.9, 9-198 (37721) >)> *************** **** FILE SS:PARSER.ZIL.160, 11-254 (29997) ) (<==? .TBL ,P-PRSO> >) (T >)> **** FILE SS:GPARSER.ZIL.9, 9-206 (37885) >) (ELSE >)> *************** **** FILE SS:PARSER.ZIL.160, 11-264 (30321) > )> **** FILE SS:GPARSER.ZIL.9, 9-218 (38219) > )> *************** **** FILE SS:PARSER.ZIL.160, 12-2 (30550) **** FILE SS:GPARSER.ZIL.9, 10-2 (38456) > *************** **** FILE SS:PARSER.ZIL.160, 12-15 (31058) >> **** FILE SS:GPARSER.ZIL.9, 10-17 (38995) >> *************** **** FILE SS:PARSER.ZIL.160, 12-27 (31495) .LEN> **** FILE SS:GPARSER.ZIL.9, 10-29 (39435) .LEN> *************** **** FILE SS:PARSER.ZIL.160, 12-32 (31668) ;> > )>)>> **** FILE SS:GPARSER.ZIL.9, 10-34 (39611) > > )>)>> *************** **** FILE SS:PARSER.ZIL.160, 12-44 (32129) (T )>)>> **** FILE SS:GPARSER.ZIL.9, 10-46 (40073) (T )>)>> *************** **** FILE SS:PARSER.ZIL.160, 12-55 (32352) > **** FILE SS:GPARSER.ZIL.9, 10-55 (40274) > *************** **** FILE SS:PARSER.ZIL.160, 12-59 (32497) > > >> ,P-MOBY-FLAG> ,P-SRCALL) ( ,P-SRCALL) (T ,P-SRCTOP)>>>)>)> >) (T )>>)>> **** FILE SS:GPARSER.ZIL.9, 10-59 (40422) > > > >> ,P-SRCALL) ( ,P-SRCALL) (T ,P-SRCTOP)>>>)> >) (T )>>)>> *************** **** FILE SS:PARSER.ZIL.160, 12-82 (33169) > >>> > >> > 0> ) (T >> > ) (T )>)> T) ( >> T) (> T) (> ) (> >) ( > T>> >) (T )> > > ) ( ) (T
)> ) ( >
)>)>)>>) **** FILE SS:GPARSER.ZIL.9, 10-80 (41076) > >>> ) > >> > 0> ) (T >> > ) (T )>)> > >> ) (> >) ( > T>> >) (T )> > )> ) ( > )>)>)>>) *************** **** FILE SS:PARSER.ZIL.160, 12-145 (35104) )> **** FILE SS:GPARSER.ZIL.9, 11-56 (42958) )> *************** **** FILE SS:PARSER.ZIL.160, 12-156 (35487) (T)>> GPARSER.ZIL.9, 11-67 (43346) (T)>> PARSER.ZIL.160, 12-163 (35693) > ) ( )>>> > ) ( )>>> > )) > **** FILE SS:GPARSER.ZIL.9, 11-74 (43548) > >>) ( )>>> > ) ( )>>> > )) > *************** **** FILE SS:PARSER.ZIL.160, 13-18 (36239) **** FILE SS:GPARSER.ZIL.9, 12-20 (44142) % '(> > )) (ELSE '( ))> *************** **** FILE SS:PARSER.ZIL.160, 13-22 (36351) **** FILE SS:GPARSER.ZIL.9, 12-30 (44436) *************** **** FILE SS:PARSER.ZIL.160, 13-33 (36667) ;> 0> ,W?IT>> ) (T <>>)>> ;> 0> ,W?IT>> ) (T <>>)>> ;"former CRUFTY.ZIL routine" GPARSER.ZIL.9, 12-41 (44755) > 0> ,W?IT>> ) (T <>>)>> > 0> ,W?IT>> ) (T <>>)>> )> ;"former CRUFTY routine, re-written by SWG" PARSER.ZIL.160, 13-58 (37463) (> >> )> > **** FILE SS:GPARSER.ZIL.9, 12-69 (45604) (> >> )> > )) ;"can player TOUCH object?" ;"revised 5/2/84 by SEM and SWG" ) ;( ) (T )>) ( ) ( ) ( > ) ( ,HERE >> ) (> ) ( > ) (T )>> ) ( )> ) (T >)>>> ***************