home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / GAMES / informosk.lha / shell.z3 (.txt) < prev    next >
Z-code for Z-machine  |  1993-12-07  |  19KB  |  3,198 lines

  1. Resident data ends at 1416, program starts at 1416, file ends at 4bb2
  2.  
  3. Starting analysis pass at address 1416
  4.  
  5. End of analysis pass, low address = 1416, high address = 4b16
  6.  
  7. [Start of code]
  8.  
  9. Main routine R0001, 0 locals ()
  10.  
  11.        STORE           G08,#0d
  12.        CALL            R0027 -> -(SP)
  13.        POP             
  14.        RTRUE           
  15.  
  16. Routine R0002, 7 locals (0000, 0000, 0000, 0000, 0000, 0000, 0000)
  17.  
  18.        CALL            R0025 -> -(SP)
  19.        POP             
  20. L0001: STORE           L03,#00
  21.        DEC             L03
  22. L0002: JL              L03,#09 [FALSE] L0003
  23.        INC             L03
  24.        LOADB           L01,L03 -> -(SP)
  25.        STOREB          G33,L03,(SP)+
  26.        JUMP            L0002
  27. L0003: NEW_LINE        
  28.        PRINT_CHAR      '>'
  29.        READ            L00,L01
  30.        LOADB           L01,#01 -> L02
  31.        JE              L02,#00 [FALSE] L0004
  32.        PRINT           "I beg your pardon?
  33. "
  34.        JUMP            L0001
  35. L0004: LOADW           L01,#01 -> L04
  36.        JE              L04,"o","oops" [FALSE] L0005
  37.        JUMP            L0006
  38. L0005: RET             L02
  39. L0006: JE              G31,#00 [FALSE] L0007
  40.        PRINT           "Sorry, that can't be corrected.
  41. "
  42.        JUMP            L0001
  43. L0007: JE              L02,#01 [FALSE] L0008
  44.        PRINT           "Think nothing of it.
  45. "
  46.        JUMP            L0001
  47. L0008: JG              L02,#02 [FALSE] L0009
  48.        PRINT           ""Oops" can only correct a single word.
  49. "
  50.        JUMP            L0001
  51. L0009: LOADW           L01,#03 -> L05
  52.        LOADW           L01,#04 -> L06
  53.        STORE           L03,#00
  54.        DEC             L03
  55. L0010: JL              L03,#09 [FALSE] L0011
  56.        INC             L03
  57.        LOADB           G33,L03 -> -(SP)
  58.        STOREB          L01,L03,(SP)+
  59.        JUMP            L0010
  60. L0011: MUL             #02,G31 -> -(SP)
  61.        SUB             (SP)+,#01 -> L04
  62.        STOREW          L01,L04,L05
  63.        INC             L04
  64.        STOREW          L01,L04,L05
  65.        RET             L02
  66.  
  67. Routine R0003, 10 locals (0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000,
  68.                           0000)
  69.  
  70.        JE              G1c,#01 [FALSE] L0003
  71.        STORE           L05,#00
  72.        DEC             L05
  73. L0001: JL              L05,#07 [FALSE] L0002
  74.        INC             L05
  75.        LOADB           G40,L05 -> -(SP)
  76.        STOREB          L00,L05,(SP)+
  77.        JUMP            L0001
  78. L0002: STORE           G1c,#00
  79.        RTRUE           
  80. L0003: CALL            R0002 (G10,G11) -> -(SP)
  81.        POP             
  82. L0004: STORE           G49,#01
  83.        LOADB           G11,#01 -> G24
  84.        STORE           G26,#01
  85.        STORE           G14,G08
  86. L0005: STORE           G23,G26
  87.        CALL            R0020 -> G25
  88.        JE              G25,"g" [FALSE] L0006
  89.        STORE           G25,"again"
  90. L0006: JE              G25,"again" [FALSE] L0010
  91.        LOADB           G22,#01 -> L06
  92.        JE              L06,#00 [FALSE] L0007
  93.        PRINT           "You can hardly repeat that.
  94. "
  95.        JUMP            L0003
  96. L0007: STORE           L05,#00
  97.        DEC             L05
  98. L0008: JL              L05,#3f [FALSE] L0009
  99.        INC             L05
  100.        LOADB           G22,L05 -> L06
  101.        STOREB          G11,L05,L06
  102.        JUMP            L0008
  103. L0009: JUMP            L0004
  104. L0010: JE              G25,"again" [TRUE] L0012
  105.        STORE           L05,#00
  106.        DEC             L05
  107. L0011: JL              L05,#3f [FALSE] L0012
  108.        INC             L05
  109.        LOADB           G11,L05 -> L06
  110.        STOREB          G22,L05,L06
  111.        JUMP            L0011
  112. L0012: JE              G25,#00 [FALSE] L0013
  113.        STORE           G49,#0b
  114.        JUMP            L0050
  115. L0013: LOADB           G25,#04 -> -(SP)
  116.        AND             (SP)+,#01 -> L05
  117.        JE              L05,#00 [FALSE] L0025
  118.        STORE           G23,G26
  119.        CALL            R0011 (#01,#00,#00) -> L08
  120.        JE              L08,#03e8 [FALSE] L0014
  121.        JUMP            L0004
  122. L0014: JE              L08,#00 [TRUE] L0015
  123.        STOREB          L00,#00,#1b
  124.        STOREB          L00,#01,#01
  125.        STOREB          L00,#02,L08
  126.        RTRUE           
  127. L0015: JE              G14,G08 [FALSE] L0018
  128.        STORE           L06,#02
  129.        DEC             L06
  130. L0016: JL              L06,G24 [FALSE] L0018
  131.        INC             L06
  132.        CALL            R0020 -> L05
  133.        JE              L05,"xcomma" [FALSE] L0017
  134.        JUMP            L0019
  135. L0017: JUMP            L0016
  136. L0018: STORE           G49,#0b
  137.        JUMP            L0050
  138. L0019: SUB             G23,#01 -> L06
  139.        JE              L06,#01 [FALSE] L0020
  140.        PRINT           "You can't begin with a comma.
  141. "
  142.        JUMP            L0003
  143. L0020: STORE           G23,#01
  144.        STORE           G3d,#01
  145.        CALL            R0011 (G08,G00,#06) -> L08
  146.        JE              L08,#03e8 [FALSE] L0021
  147.        JUMP            L0004
  148. L0021: JE              L08,#00 [FALSE] L0022
  149.        PRINT           "You seem to want to talk to someone, but I can't see
  150. whom.
  151. "
  152.        JUMP            L0003
  153. L0022: TEST_ATTR       L08,#04 [TRUE] L0023
  154.        TEST_ATTR       L08,#1c [TRUE] L0023
  155.        PRINT           "You can't talk to "
  156.        CALL            R0040 (L08) -> -(SP)
  157.        POP             
  158.        PRINT           ".
  159. "
  160.        JUMP            L0003
  161. L0023: JE              G23,L06 [TRUE] L0024
  162.        PRINT           "To talk to someone, try "someone, hello" or some such.
  163. "
  164.        JUMP            L0003
  165. L0024: CALL            R0022 (L08) -> -(SP)
  166.        POP             
  167.        ADD             L06,#01 -> G26
  168.        STORE           G14,L08
  169.        JUMP            L0005
  170. L0025: LOADB           G25,#04 -> -(SP)
  171.        AND             (SP)+,#02 -> G1e
  172.        LOADB           G25,#05 -> -(SP)
  173.        SUB             #ff,(SP)+ -> L05
  174.        LOADW           #00,#07 -> -(SP)
  175.        LOADW           (SP)+,L05 -> L01
  176.        LOADB           L01,#00 -> -(SP)
  177.        SUB             (SP)+,#01 -> L03
  178.        STORE           G38,"it"
  179.        STORE           G39,G3a
  180.        STORE           L02,#00
  181.        DEC             L02
  182. L0026: JL              L02,L03 [FALSE] L0050
  183.        INC             L02
  184.        MUL             L02,#08 -> -(SP)
  185.        ADD             #01,(SP)+ -> -(SP)
  186.        ADD             L01,(SP)+ -> L04
  187.        STORE           G3f,#00
  188.        STORE           G2f,#00
  189.        STORE           G2e,#00
  190.        STORE           G29,#00
  191.        ADD             G26,#01 -> G23
  192.        STORE           G2b,#01
  193.        DEC             G2b
  194. L0027: JL              G2b,#06 [FALSE] L0049
  195.        INC             G2b
  196.        STOREW          G2a,G2b,#00
  197.        LOADB           L04,G2b -> L07
  198.        ADD             G2b,#01 -> L09
  199.        STORE           G3d,#08
  200.        JG              L09,#06 [TRUE] L0028
  201.        LOADB           L04,L09 -> G3d
  202. L0028: JE              G3d,#00 [FALSE] L0030
  203.        STORE           L09,G2e
  204.        JG              L07,#07 [TRUE] L0029
  205.        INC             L09
  206. L0029: LOADB           L04,#00 -> -(SP)
  207.        JL              L09,(SP)+ [TRUE] L0030
  208.        STORE           G3d,#08
  209. L0030: JG              L07,#07 [FALSE] L0034
  210.        ADD             #03e8,L07 -> -(SP)
  211.        STOREW          G2a,G2b,(SP)+
  212.        JG              G23,G24 [FALSE] L0032
  213.        JE              G2f,#00 [FALSE] L0031
  214.        LOADB           L04,#00 -> -(SP)
  215.        JL              G2e,(SP)+ [FALSE] L0031
  216.        STORE           G2f,G2b
  217.        STORE           G30,L07
  218. L0031: JE              G2f,#00 [FALSE] L0032
  219.        JUMP            L0049
  220. L0032: JG              G23,G24 [TRUE] L0033
  221.        CALL            R0018 -> -(SP)
  222.        JE              L07,(SP)+ [TRUE] L0033
  223.        JUMP            L0049
  224. L0033: JUMP            L0048
  225. L0034: LOADB           L04,#00 -> -(SP)
  226.        JE              G2e,(SP)+ [FALSE] L0045
  227.        JG              G23,G24 [TRUE] L0037
  228.        STORE           L09,#00
  229.        DEC             L09
  230. L0035: JL              L09,#07 [FALSE] L0036
  231.        INC             L09
  232.        LOADW           G2a,L09 -> -(SP)
  233.        STOREW          G2c,L09,(SP)+
  234.        JUMP            L0035
  235. L0036: STORE           G2d,G2b
  236.        STORE           G49,#02
  237.        JUMP            L0049
  238. L0037: JE              G29,#01 [FALSE] L0039
  239.        STORE           G23,G41
  240.        STORE           L07,G42
  241.        CALL            R0004 (L00,L07) -> L08
  242.        JE              L08,#03e8 [FALSE] L0038
  243.        JUMP            L0004
  244. L0038: JE              L08,#00 [FALSE] L0039
  245.        JUMP            L0049
  246. L0039: JE              G2f,#00 [TRUE] L0040
  247.        PRINT           "("
  248.        CALL            R0005 (G2f,#01) -> -(SP)
  249.        POP             
  250.        PRINT           ")
  251. "
  252. L0040: LOADB           L04,#00 -> -(SP)
  253.        STOREB          L00,#01,(SP)+
  254.        LOADB           L04,#07 -> -(SP)
  255.        STOREB          L00,#00,(SP)+
  256.        JG              G2e,#00 [FALSE] L0041
  257.        LOADB           L00,#02 -> L05
  258.        JL              L05,#02 [TRUE] L0041
  259.        CALL            R0022 (L05) -> -(SP)
  260.        POP             
  261. L0041: STORE           G31,#00
  262.        JE              G3f,#00 [TRUE] L0044
  263.        STORE           G1c,#01
  264.        STORE           L05,#00
  265.        DEC             L05
  266. L0042: JL              L05,#07 [FALSE] L0043
  267.        INC             L05
  268.        LOADB           L00,L05 -> -(SP)
  269.        STOREB          G40,L05,(SP)+
  270.        JUMP            L0042
  271. L0043: STOREB          L00,#01,#01
  272.        STOREB          L00,#00,#0d
  273.        STOREB          L00,#02,G3f
  274.        PRINT           "(first taking "
  275.        CALL            R0040 (G3f) -> -(SP)
  276.        POP             
  277.        PRINT           ")
  278. "
  279.        RTRUE           
  280. L0044: RTRUE           
  281. L0045: CALL            R0004 (L00,L07) -> L08
  282.        JE              L08,#03e8 [FALSE] L0046
  283.        JUMP            L0004
  284. L0046: JE              L08,#00 [FALSE] L0047
  285.        JUMP            L0049
  286. L0047: JE              G27,#01 [FALSE] L0048
  287.        ADD             G2e,#02 -> -(SP)
  288.        STOREB          L00,(SP)+,#00
  289.        STOREW          G2a,G2b,#00
  290.        ADD             G2e,#01 -> G2e
  291. L0048: JUMP            L0027
  292. L0049: JUMP            L0026
  293. L0050: JE              G14,G08 [TRUE] L0051
  294.        CALL            R0021 (G26) -> G1a
  295.        STORE           G23,G26
  296.        CALL            R0020 -> G19
  297.        STORE           G15,#34
  298.        STORE           G16,#01
  299.        STORE           G17,G14
  300.        STORE           G14,G08
  301.        RTRUE           
  302. L0051: JE              G49,#01 [FALSE] L0052
  303.        PRINT           "I didn't understand that sentence.
  304. "
  305.        STORE           G31,#01
  306. L0052: JE              G49,#02 [FALSE] L0055
  307.        PRINT           "I only understood you as far as wanting to "
  308.        STORE           L09,#00
  309.        DEC             L09
  310. L0053: JL              L09,#07 [FALSE] L0054
  311.        INC             L09
  312.        LOADW           G2c,L09 -> -(SP)
  313.        STOREW          G2a,L09,(SP)+
  314.        JUMP            L0053
  315. L0054: STORE           G2b,G2d
  316.        CALL            R0005 (#00,#01) -> -(SP)
  317.        POP             
  318.        PRINT           ".
  319. "
  320. L0055: JE              G49,#03 [FALSE] L0056
  321.        PRINT           "You can't see any such thing.
  322. "
  323.        STORE           G31,G32
  324. L0056: JE              G49,#04 [FALSE] L0057
  325.        PRINT           "You seem to have said too little!
  326. "
  327. L0057: JE              G49,#05 [FALSE] L0058
  328.        PRINT           "You aren't holding that!
  329. "
  330.        STORE           G31,G32
  331. L0058: JE              G49,#06 [FALSE] L0059
  332.        PRINT           "You can't use multiple objects with that verb.
  333. "
  334. L0059: JE              G49,#07 [FALSE] L0060
  335.        PRINT           "You can only use multiple objects once on a line.
  336. "
  337. L0060: JE              G49,#08 [FALSE] L0061
  338.        PRINT           "I'm not sure what ""
  339.        PRINT_ADDR      G38
  340.        PRINT           "" refers to.
  341. "
  342. L0061: JE              G49,#09 [FALSE] L0062
  343.        PRINT           "You excepted something not included anyway!
  344. "
  345. L0062: JE              G49,#0a [FALSE] L0063
  346.        PRINT           "You can only do that to something animate.
  347. "
  348. L0063: JE              G49,#0b [FALSE] L0064
  349.        PRINT           "That's not a verb I recognise.
  350. "
  351. L0064: JE              G49,#0c [FALSE] L0065
  352.        PRINT           "That's not something you need to refer to in the course
  353. of this game.
  354. "
  355. L0065: JE              G49,#0d [FALSE] L0066
  356.        PRINT           "You can't see ""
  357.        PRINT_ADDR      G38
  358.        PRINT           "" ("
  359.        CALL            R0040 (G39) -> -(SP)
  360.        POP             
  361.        PRINT           ") at the moment.
  362. "
  363. L0066: JUMP            L0003
  364.  
  365. orphan code fragment:
  366.  
  367.        RTRUE           
  368.  
  369. Routine R0004, 6 locals (0000, 0000, 0000, 0000, 0000, 0000)
  370.  
  371.        STORE           G27,#00
  372.        STORE           L05,#00
  373. L0001: CALL            R0020 -> L04
  374.        DEC             G23
  375.        JE              L04,"it","them" [FALSE] L0002
  376.        STORE           G38,L04
  377.        STORE           G39,G3a
  378.        JE              G3a,#00 [FALSE] L0002
  379.        STORE           G49,#08
  380.        RET             #00
  381. L0002: JE              L04,"him" [FALSE] L0003
  382.        STORE           G38,L04
  383.        STORE           G39,G3b
  384.        JE              G3b,#00 [FALSE] L0003
  385.        STORE           G49,#08
  386.        RET             #00
  387. L0003: JE              L04,"her" [FALSE] L0004
  388.        STORE           G38,L04
  389.        STORE           G39,G3c
  390.        JE              G3c,#00 [FALSE] L0004
  391.        STORE           G49,#08
  392.        RET             #00
  393. L0004: JE              L04,"the" [FALSE] L0005
  394.        INC             G23
  395.        JUMP            L0001
  396. L0005: STORE           G3e,#00
  397.        JE              L04,"a","an","any" [FALSE] L0006
  398.        INC             G23
  399.        STORE           G3e,#01
  400. L0006: JE              L04,"either" [FALSE] L0007
  401.        INC             G23
  402.        STORE           G3e,#01
  403. L0007: JE              L01,#07 [FALSE] L0008
  404.        CALL            R0021 (G23) -> G1a
  405.        CALL            R0020 -> G19
  406.        ADD             G2e,#02 -> -(SP)
  407.        STOREB          L00,(SP)+,#01
  408.        ADD             G2e,#01 -> G2e
  409.        STOREW          G2a,G2b,#01
  410.        JUMP            L0041
  411. L0008: STORE           G28,#00
  412.        JE              L04,G43 [FALSE] L0009
  413.        STORE           L04,"all"
  414.        STORE           G28,G46
  415. L0009: JE              L04,G44 [FALSE] L0010
  416.        STORE           L04,"all"
  417.        STORE           G28,G47
  418. L0010: JE              L04,G45 [FALSE] L0011
  419.        STORE           L04,"all"
  420.        STORE           G28,G48
  421. L0011: JE              L04,"everyt","both","all" [FALSE] L0029
  422.        JL              L01,#02 [FALSE] L0012
  423.        STORE           G49,#06
  424.        RET             #00
  425. L0012: JL              L01,#06 [TRUE] L0013
  426.        STORE           G49,#06
  427.        RET             #00
  428. L0013: INC             G29
  429.        JG              G29,#02 [FALSE] L0014
  430.        STORE           G49,#07
  431.        RET             #00
  432. L0014: JE              G29,#01 [FALSE] L0015
  433.        STORE           G41,G23
  434.        STORE           G42,L01
  435.        CALL            R0007 (G00) -> -(SP)
  436.        POP             
  437. L0015: JE              G29,#02 [FALSE] L0021
  438.        JE              L01,#02 [FALSE] L0017
  439.        JE              G00,#0c [FALSE] L0016
  440.        CALL            R0007 (G00) -> -(SP)
  441.        POP             
  442.        JUMP            L0017
  443. L0016: GET_PARENT      G08 -> -(SP)
  444.        CALL            R0007 ((SP)+) -> -(SP)
  445.        POP             
  446. L0017: JE              L01,#03 [FALSE] L0018
  447.        CALL            R0007 (G14) -> -(SP)
  448.        POP             
  449. L0018: JE              L01,#04 [FALSE] L0019
  450.        CALL            R0007 (G14) -> -(SP)
  451.        POP             
  452.        LOADB           L00,#03 -> -(SP)
  453.        GET_PARENT      (SP)+ -> L04
  454.        JE              L04,G14 [FALSE] L0019
  455.        LOADB           L00,#03 -> -(SP)
  456.        CALL            R0009 ((SP)+) -> -(SP)
  457.        POP             
  458. L0019: JE              L01,#05 [FALSE] L0020
  459.        LOADB           L00,#03 -> -(SP)
  460.        CALL            R0007 ((SP)+) -> -(SP)
  461.        POP             
  462. L0020: JE              G28,#00 [TRUE] L0021
  463.        CALL            R0010 (G28) -> -(SP)
  464.        POP             
  465. L0021: INC             G23
  466. L0022: CALL            R0020 -> L04
  467.        JE              L04,"the","of" [FALSE] L0023
  468.        JUMP            L0022
  469. L0023: JE              L04,G43 [FALSE] L0024
  470.        CALL            R0010 (G46) -> -(SP)
  471.        POP             
  472.        JUMP            L0022
  473. L0024: JE              L04,G44 [FALSE] L0025
  474.        CALL            R0010 (G47) -> -(SP)
  475.        POP             
  476.        JUMP            L0022
  477. L0025: JE              L04,G45 [FALSE] L0026
  478.        CALL            R0010 (G48) -> -(SP)
  479.        POP             
  480.        JUMP            L0022
  481. L0026: JE              L04,"except" [FALSE] L0027
  482.        STORE           L04,"but"
  483. L0027: JE              L04,"but" [FALSE] L0028
  484.        STORE           L05,#02
  485.        JUMP            L0001
  486. L0028: SUB             G23,#01 -> G23
  487.        JUMP            L0048
  488. L0029: STORE           G31,G23
  489.        JE              L01,#01 [TRUE] L0036
  490.        CALL            R0011 (G00,G14,L01) -> L02
  491.        JE              L02,#03e8 [FALSE] L0030
  492.        RET             L02
  493. L0030: JE              L02,#00 [FALSE] L0031
  494.        CALL            R0006 -> G49
  495.        RET             #00
  496. L0031: JE              L02,#01 [FALSE] L0032
  497.        ADD             G2e,#02 -> -(SP)
  498.        STOREB          L00,(SP)+,#00
  499.        ADD             G2e,#01 -> G2e
  500.        STOREW          G2a,G2b,#00
  501.        RET             #01
  502. L0032: JE              L01,#06 [FALSE] L0033
  503.        TEST_ATTR       L02,#04 [TRUE] L0033
  504.        STORE           G49,#0a
  505.        RET             #00
  506. L0033: JE              L05,#00 [FALSE] L0034
  507.        ADD             G2e,#02 -> -(SP)
  508.        STOREB          L00,(SP)+,L02
  509.        ADD             G2e,#01 -> G2e
  510.        STOREW          G2a,G2b,L02
  511. L0034: JE              L05,#01 [FALSE] L0035
  512.        CALL            R0008 (L02) -> -(SP)
  513.        POP             
  514. L0035: JE              L05,#02 [FALSE] L0036
  515.        CALL            R0009 (L02) -> L03
  516.        JE              G29,#01 [TRUE] L0036
  517.        JE              L03,#00 [TRUE] L0036
  518.        STORE           G49,L03
  519.        RET             #00
  520. L0036: JE              L01,#01 [FALSE] L0041
  521.        CALL            R0011 (G14,G00,L01) -> L02
  522.        JE              L02,#03e8 [FALSE] L0037
  523.        RET             L02
  524. L0037: JE              L02,#00 [FALSE] L0038
  525.        CALL            R0006 -> G49
  526.        RET             L02
  527. L0038: GET_PARENT      L02 -> L04
  528.        JE              L04,G14 [TRUE] L0040
  529.        JE              G1c,#01 [FALSE] L0039
  530.        STORE           G32,G31
  531.        STORE           G49,#05
  532.        RET             #00
  533. L0039: STORE           G3f,L02
  534. L0040: ADD             G2e,#02 -> -(SP)
  535.        STOREB          L00,(SP)+,L02
  536.        ADD             G2e,#01 -> G2e
  537.        STOREW          G2a,G2b,L02
  538. L0041: CALL            R0020 -> L04
  539.        CALL            R0016 (L02,L04) -> -(SP)
  540.        JE              #00,(SP)+ [TRUE] L0042
  541.        JUMP            L0041
  542. L0042: JE              L04,"and","xcomma" [FALSE] L0047
  543.        JL              L01,#02 [FALSE] L0043
  544.        STORE           G49,#06
  545.        RET             #00
  546. L0043: JL              L01,#06 [TRUE] L0044
  547.        STORE           G49,#06
  548.        RET             #00
  549. L0044: JE              L05,#00 [FALSE] L0045
  550.        STORE           L05,#01
  551. L0045: JE              G27,#00 [FALSE] L0046
  552.        STOREB          G18,#00,#01
  553.        STOREB          G18,#01,L02
  554.        SUB             G2e,#01 -> G2e
  555.        STORE           G27,#01
  556. L0046: JUMP            L0001
  557. L0047: SUB             G23,#01 -> G23
  558. L0048: RET             #01
  559.  
  560. Routine R0005, 6 locals (0000, 0000, 0000, 0000, 0000, 0000)
  561.  
  562.        JE              L00,#00 [FALSE] L0013
  563.        STORE           L02,G25
  564.        STORE           L00,#01
  565.        STORE           L05,#01
  566.        JE              L02,"invent" [FALSE] L0001
  567.        PRINT           "take an inventory"
  568.        JUMP            L0013
  569. L0001: JE              L02,"examin" [FALSE] L0002
  570.        PRINT           "examine"
  571.        JUMP            L0013
  572. L0002: JE              L02,"discar" [FALSE] L0003
  573.        PRINT           "discard"
  574.        JUMP            L0013
  575. L0003: JE              L02,"swallo" [FALSE] L0004
  576.        PRINT           "swallow"
  577.        JUMP            L0013
  578. L0004: JE              L02,"embrac" [FALSE] L0005
  579.        PRINT           "embrace"
  580.        JUMP            L0013
  581. L0005: JE              L02,"squeez" [FALSE] L0006
  582.        PRINT           "squeeze"
  583.        JUMP            L0013
  584. L0006: JE              L02,"purcha" [FALSE] L0007
  585.        PRINT           "purchase"
  586.        JUMP            L0013
  587. L0007: JE              L02,"unscre" [FALSE] L0008
  588.        PRINT           "unscrew"
  589.        JUMP            L0013
  590. L0008: JE              L02,"descri" [FALSE] L0009
  591.        PRINT           "describe"
  592.        JUMP            L0013
  593. L0009: JE              L02,"uncove" [FALSE] L0010
  594.        PRINT           "uncover"
  595.        JUMP            L0013
  596. L0010: JE              L02,"discar" [FALSE] L0011
  597.        PRINT           "discard"
  598.        JUMP            L0013
  599. L0011: JE              L02,"transf" [FALSE] L0012
  600.        PRINT           "transfer"
  601.        JUMP            L0013
  602. L0012: PRINT_ADDR      L02
  603. L0013: SUB             G2b,L01 -> L03
  604.        STORE           L04,L00
  605.        DEC             L04
  606. L0014: JL              L04,L03 [FALSE] L0021
  607.        INC             L04
  608.        JE              L05,#01 [FALSE] L0015
  609.        PRINT_CHAR      ' '
  610. L0015: LOADW           G2a,L04 -> L02
  611.        JE              L02,#00 [FALSE] L0016
  612.        PRINT           "those things"
  613.        JUMP            L0020
  614. L0016: JE              L02,#01 [FALSE] L0017
  615.        PRINT           "that"
  616.        JUMP            L0020
  617. L0017: JL              L02,#0100 [FALSE] L0018
  618.        CALL            R0040 (L02) -> -(SP)
  619.        POP             
  620. L0018: JL              L02,#03e8 [TRUE] L0020
  621.        SUB             L02,#03e8 -> -(SP)
  622.        CALL            R0019 ((SP)+) -> L02
  623.        JE              L02,"agains" [FALSE] L0019
  624.        PRINT           "against"
  625.        JUMP            L0020
  626. L0019: PRINT_ADDR      L02
  627. L0020: STORE           L05,#01
  628.        JUMP            L0014
  629. L0021: RTRUE           
  630.  
  631. Routine R0006, 3 locals (0000, 0000, 0000)
  632.  
  633.        STORE           G32,G31
  634.        SUB             G23,#01 -> G23
  635.        CALL            R0020 -> L01
  636.        STORE           L02,#03
  637.        JE              L01,G38 [FALSE] L0001
  638.        STORE           L02,#0d
  639. L0001: GET_PARENT      G14 -> L00
  640.        TEST_ATTR       L00,#13 [FALSE] L0002
  641.        CALL            R0016 (L00,L01) -> -(SP)
  642.        JE              #00,(SP)+ [TRUE] L0002
  643.        STORE           L02,#0c
  644. L0002: RET             L02
  645.  
  646. Routine R0007, 1 local (0000)
  647.  
  648.        STORE           G27,#01
  649.        STOREB          G18,#00,#00
  650.        GET_CHILD       L00 -> L00 [TRUE] L0001
  651. L0001: JE              L00,#00 [TRUE] L0004
  652.        TEST_ATTR       L00,#01 [TRUE] L0002
  653.        TEST_ATTR       L00,#02 [TRUE] L0002
  654.        CALL            R0008 (L00) -> -(SP)
  655.        POP             
  656. L0002: GET_SIBLING     L00 -> L00 [TRUE] L0003
  657. L0003: JUMP            L0001
  658. L0004: RTRUE           
  659.  
  660. Routine R0008, 3 locals (0000, 0000, 0000)
  661.  
  662.        LOADB           G18,#00 -> L01
  663.        JE              L01,#3f [FALSE] L0001
  664.        STORE           G13,#01
  665.        RTRUE           
  666. L0001: STORE           L02,#01
  667.        DEC             L02
  668. L0002: JL              L02,L01 [FALSE] L0004
  669.        INC             L02
  670.        LOADB           G18,L02 -> -(SP)
  671.        JE              L00,(SP)+ [FALSE] L0003
  672.        RTRUE           
  673. L0003: JUMP            L0002
  674. L0004: ADD             L01,#01 -> L01
  675.        STOREB          G18,L01,L00
  676.        STOREB          G18,#00,L01
  677.        RTRUE           
  678.  
  679. Routine R0009, 5 locals (0000, 0000, 0000, 0000, 0000)
  680.  
  681.        LOADB           G18,#00 -> L01
  682.        STORE           L04,#00
  683.        STORE           L02,#01
  684.        DEC             L02
  685. L0001: JL              L02,L01 [FALSE] L0005
  686.        INC             L02
  687.        LOADB           G18,L02 -> -(SP)
  688.        JE              L00,(SP)+ [FALSE] L0004
  689.        STORE           L03,L02
  690.        DEC             L03
  691. L0002: JL              L03,L01 [FALSE] L0003
  692.        INC             L03
  693.        ADD             L03,#01 -> -(SP)
  694.        LOADB           G18,(SP)+ -> -(SP)
  695.        STOREB          G18,L03,(SP)+
  696.        JUMP            L0002
  697. L0003: SUB             L01,#01 -> L01
  698.        STOREB          G18,#00,L01
  699.        RET             L04
  700. L0004: JUMP            L0001
  701. L0005: STORE           L04,#09
  702.        RET             L04
  703.  
  704. Routine R0010, 4 locals (0000, 0000, 0000, 0000)
  705.  
  706. L0001: LOADB           G18,#00 -> L01
  707.        STORE           L02,#01
  708.        DEC             L02
  709. L0002: JL              L02,L01 [FALSE] L0004
  710.        INC             L02
  711.        LOADB           G18,L02 -> L03
  712.        TEST_ATTR       L03,L00 [TRUE] L0003
  713.        CALL            R0009 (L03) -> -(SP)
  714.        POP             
  715.        JUMP            L0001
  716. L0003: JUMP            L0002
  717. L0004: RTRUE           
  718.  
  719. Routine R0011, 9 locals (0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000)
  720.  
  721.        STORE           G36,#00
  722.        STORE           G35,#00
  723.        STORE           G37,G23
  724.        CALL            R0014 (L00) -> -(SP)
  725.        POP             
  726.        CALL            R0014 (L01) -> -(SP)
  727.        POP             
  728.        ADD             G37,G36 -> G23
  729.        JE              G35,#00 [FALSE] L0001
  730.        INC             G23
  731.        RFALSE          
  732. L0001: JG              G37,G24 [TRUE] L0005
  733.        JE              G35,#01 [FALSE] L0002
  734.        LOADB           G34,#00 -> L04
  735.        RET             L04
  736. L0002: JG              G23,G24 [TRUE] L0005
  737.        JE              G3d,#08 [FALSE] L0003
  738.        RFALSE          
  739. L0003: JG              G3d,#08 [FALSE] L0005
  740.        CALL            R0018 -> -(SP)
  741.        JE              G3d,(SP)+ [TRUE] L0004
  742.        DEC             G23
  743.        RFALSE          
  744. L0004: DEC             G23
  745. L0005: JE              G35,#01 [FALSE] L0006
  746.        LOADB           G34,#00 -> L04
  747. L0006: JG              G35,#01 [FALSE] L0007
  748.        CALL            R0012 (L02) -> L04
  749. L0007: JE              L04,#00 [TRUE] L0009
  750.        JE              G2f,#00 [FALSE] L0008
  751.        STORE           G2f,G2b
  752. L0008: STOREW          G2a,G2b,L04
  753.        RET             L04
  754. L0009: JG              G37,G24 [FALSE] L0010
  755.        JUMP            L0027
  756. L0010: JE              L02,#06 [FALSE] L0011
  757.        PRINT           "Who"
  758.        JUMP            L0012
  759. L0011: PRINT           "Which"
  760. L0012: PRINT           " do you mean, "
  761.        SUB             G35,#01 -> L05
  762.        STORE           L04,#00
  763.        DEC             L04
  764. L0013: JL              L04,L05 [FALSE] L0016
  765.        INC             L04
  766.        LOADB           G34,L04 -> L06
  767.        CALL            R0040 (L06) -> -(SP)
  768.        POP             
  769.        SUB             L05,#01 -> -(SP)
  770.        JL              L04,(SP)+ [FALSE] L0014
  771.        PRINT           ", "
  772. L0014: SUB             L05,#01 -> -(SP)
  773.        JE              L04,(SP)+ [FALSE] L0015
  774.        PRINT           " or "
  775. L0015: JUMP            L0013
  776. L0016: PRINT           "?
  777. "
  778. L0017: CALL            R0002 (G20,G21) -> L08
  779.        LOADW           G21,#01 -> L03
  780.        JE              L03,"all","both","everyt" [FALSE] L0021
  781.        JL              L02,#02 [TRUE] L0020
  782.        JG              L02,#05 [TRUE] L0020
  783.        STORE           L04,#00
  784.        DEC             L04
  785. L0018: JL              L04,L05 [FALSE] L0019
  786.        INC             L04
  787.        LOADB           G34,L04 -> L06
  788.        ADD             L04,#01 -> -(SP)
  789.        STOREB          G18,(SP)+,L06
  790.        JUMP            L0018
  791. L0019: ADD             L05,#01 -> -(SP)
  792.        STOREB          G18,#00,(SP)+
  793.        RET             #01
  794. L0020: PRINT           "Sorry, you can only have one item here.  Which one
  795. exactly?
  796. "
  797.        JUMP            L0017
  798. L0021: LOADB           L03,#04 -> L05
  799.        AND             L05,#01 -> -(SP)
  800.        JE              #00,(SP)+ [TRUE] L0022
  801.        CALL            R0024 (G10,G20) -> -(SP)
  802.        POP             
  803.        CALL            R0024 (G11,G21) -> -(SP)
  804.        POP             
  805.        STORE           L06,#03e8
  806.        RET             L06
  807. L0022: LOADB           G11,#01 -> L07
  808.        ADD             L08,L07 -> -(SP)
  809.        STOREB          G11,#01,(SP)+
  810.        ADD             L07,L08 -> L06
  811. L0023: JG              L06,G37 [FALSE] L0024
  812.        SUB             L06,L08 -> L04
  813.        CALL            R0013 (L06,G11,L04) -> -(SP)
  814.        POP             
  815.        DEC             L06
  816.        JUMP            L0023
  817. L0024: STORE           L06,#01
  818.        DEC             L06
  819. L0025: JL              L06,L08 [FALSE] L0026
  820.        INC             L06
  821.        SUB             L06,#01 -> -(SP)
  822.        ADD             G37,(SP)+ -> L04
  823.        CALL            R0013 (L04,G21,L06) -> -(SP)
  824.        POP             
  825.        JUMP            L0025
  826. L0026: STORE           L06,#03e8
  827.        RET             L06
  828. L0027: JE              L02,#06 [FALSE] L0028
  829.        PRINT           "Whom"
  830.        JUMP            L0029
  831. L0028: PRINT           "What"
  832. L0029: PRINT           " do you want"
  833.        JE              G14,G08 [TRUE] L0030
  834.        PRINT           " "
  835.        CALL            R0040 (G14) -> -(SP)
  836.        POP             
  837. L0030: PRINT           " to "
  838.        CALL            R0005 (#00,#01) -> -(SP)
  839.        POP             
  840.        PRINT           "?
  841. "
  842.        CALL            R0002 (G20,G21) -> L08
  843.        LOADW           G21,#01 -> L03
  844.        LOADB           L03,#04 -> L05
  845.        AND             L05,#01 -> -(SP)
  846.        JE              #00,(SP)+ [TRUE] L0031
  847.        CALL            R0024 (G10,G20) -> -(SP)
  848.        POP             
  849.        CALL            R0024 (G11,G21) -> -(SP)
  850.        POP             
  851.        STORE           L06,#03e8
  852.        RET             L06
  853. L0031: LOADB           G11,#01 -> L07
  854.        JE              G2f,#00 [FALSE] L0033
  855.        STORE           L06,#01
  856.        DEC             L06
  857. L0032: JL              L06,L08 [FALSE] L0033
  858.        INC             L06
  859.        SUB             L06,#01 -> -(SP)
  860.        ADD             G37,(SP)+ -> L04
  861.        CALL            R0013 (L04,G21,L06) -> -(SP)
  862.        POP             
  863.        JUMP            L0032
  864. L0033: JE              G2f,#00 [TRUE] L0036
  865.        STORE           L06,#01
  866.        DEC             L06
  867. L0034: JL              L06,L08 [FALSE] L0035
  868.        INC             L06
  869.        ADD             G37,L06 -> L04
  870.        CALL            R0013 (L04,G21,L06) -> -(SP)
  871.        POP             
  872.        JUMP            L0034
  873. L0035: CALL            R0019 (G30) -> -(SP)
  874.        STOREW          G21,#01,(SP)+
  875.        CALL            R0013 (G37,G21,#01) -> -(SP)
  876.        POP             
  877.        INC             L08
  878. L0036: ADD             L08,L07 -> -(SP)
  879.        STOREB          G11,#01,(SP)+
  880.        STORE           L06,#03e8
  881.        RET             L06
  882.  
  883. Routine R0012, 7 locals (0000, 0000, 0000, 0000, 0000, 0000, 0000)
  884.  
  885.        SUB             G35,#01 -> L02
  886.        STORE           L03,#00
  887.        LOADB           G34,#00 -> L04
  888.        STORE           L01,#00
  889.        DEC             L01
  890. L0001: JL              L01,L02 [FALSE] L0011
  891.        INC             L01
  892.        LOADB           G34,L01 -> L05
  893.        TEST_ATTR       L05,#01 [TRUE] L0010
  894.        STORE           L06,L05
  895. L0002: GET_PARENT      L06 -> L06
  896.        JE              L06,G00 [TRUE] L0003
  897.        JE              L06,G14 [TRUE] L0003
  898.        JE              L06,#00 [TRUE] L0003
  899.        JUMP            L0002
  900. L0003: JE              L00,#00 [FALSE] L0004
  901.        JE              L06,G00 [FALSE] L0004
  902.        INC             L03
  903.        STORE           L04,L05
  904. L0004: JE              L00,#01 [FALSE] L0005
  905.        GET_PARENT      L05 -> -(SP)
  906.        JE              (SP)+,G14 [FALSE] L0005
  907.        INC             L03
  908.        STORE           L04,L05
  909. L0005: JE              L00,#02 [FALSE] L0006
  910.        JE              L06,G00 [FALSE] L0006
  911.        INC             L03
  912.        STORE           L04,L05
  913. L0006: JE              L00,#03 [FALSE] L0007
  914.        GET_PARENT      L05 -> -(SP)
  915.        JE              (SP)+,G14 [FALSE] L0007
  916.        INC             L03
  917.        STORE           L04,L05
  918. L0007: JE              L00,#04 [FALSE] L0008
  919.        GET_PARENT      L05 -> -(SP)
  920.        JE              (SP)+,G14 [FALSE] L0008
  921.        INC             L03
  922.        STORE           L04,L05
  923. L0008: JE              L00,#05 [FALSE] L0009
  924.        GET_PARENT      L05 -> -(SP)
  925.        JE              (SP)+,G14 [FALSE] L0009
  926.        INC             L03
  927.        STORE           L04,L05
  928. L0009: JE              L00,#06 [FALSE] L0010
  929.        TEST_ATTR       L05,#04 [FALSE] L0010
  930.        INC             L03
  931.        STORE           L04,L05
  932. L0010: JUMP            L0001
  933. L0011: STORE           L02,#00
  934.        JE              L03,#01 [FALSE] L0012
  935.        STORE           L02,L04
  936. L0012: JE              G3e,#01 [FALSE] L0013
  937.        STORE           L02,L04
  938. L0013: RET             L02
  939.  
  940. Routine R0013, 5 locals (0000, 0000, 0000, 0000, 0000)
  941.  
  942.        MUL             L00,#02 -> -(SP)
  943.        SUB             (SP)+,#01 -> L03
  944.        MUL             L02,#02 -> -(SP)
  945.        SUB             (SP)+,#01 -> L04
  946.        LOADW           L01,L04 -> -(SP)
  947.        STOREW          G11,L03,(SP)+
  948.        INC             L03
  949.        INC             L04
  950.        LOADW           L01,L04 -> -(SP)
  951.        STOREW          G11,L03,(SP)+
  952.        RTRUE           
  953.  
  954. Routine R0014, 3 locals (0000, 0000, 0000)
  955.  
  956.        JE              L00,G00 [FALSE] L0001
  957.        CALL            R0014 (#01) -> -(SP)
  958.        POP             
  959. L0001: GET_CHILD       L00 -> L00 [TRUE] L0002
  960. L0002: JE              L00,#00 [TRUE] L0017
  961.        JG              G37,G24 [FALSE] L0003
  962.        CALL            R0015 (L00,#01) -> -(SP)
  963.        POP             
  964.        JUMP            L0010
  965. L0003: STORE           G23,G37
  966.        CALL            R0017 -> L01
  967.        JE              L01,#01 [FALSE] L0004
  968.        JE              G3a,L00 [FALSE] L0004
  969.        CALL            R0015 (G3a,#01) -> -(SP)
  970.        POP             
  971. L0004: JE              L01,#02 [FALSE] L0005
  972.        JE              G3b,L00 [FALSE] L0005
  973.        CALL            R0015 (G3b,#01) -> -(SP)
  974.        POP             
  975. L0005: JE              L01,#03 [FALSE] L0006
  976.        JE              G3c,L00 [FALSE] L0006
  977.        CALL            R0015 (G3c,#01) -> -(SP)
  978.        POP             
  979. L0006: CALL            R0016 (L00,L01) -> -(SP)
  980.        JE              #00,(SP)+ [FALSE] L0007
  981.        JUMP            L0010
  982. L0007: STORE           L02,#00
  983. L0008: CALL            R0016 (L00,L01) -> -(SP)
  984.        JE              #00,(SP)+ [TRUE] L0009
  985.        CALL            R0020 -> L01
  986.        INC             L02
  987.        JUMP            L0008
  988. L0009: CALL            R0015 (L00,L02) -> -(SP)
  989.        POP             
  990. L0010: TEST_ATTR       L00,#0a [FALSE] L0011
  991.        JUMP            L0013
  992. L0011: TEST_ATTR       L00,#09 [FALSE] L0015
  993.        TEST_ATTR       L00,#0c [FALSE] L0012
  994.        JUMP            L0013
  995. L0012: TEST_ATTR       L00,#0b [FALSE] L0013
  996.        JUMP            L0015
  997. L0013: GET_CHILD       L00 -> -(SP) [TRUE] L0014
  998. L0014: JE              (SP)+,#00 [TRUE] L0015
  999.        CALL            R0014 (L00) -> -(SP)
  1000.        POP             
  1001. L0015: GET_SIBLING     L00 -> L00 [TRUE] L0016
  1002. L0016: JUMP            L0002
  1003. L0017: RTRUE           
  1004.  
  1005. Routine R0015, 2 locals (0000, 0000)
  1006.  
  1007.        JL              L01,G36 [FALSE] L0001
  1008.        RTRUE           
  1009. L0001: JG              L01,G36 [FALSE] L0002
  1010.        STORE           G36,L01
  1011.        STORE           G35,#00
  1012. L0002: STOREB          G34,G35,L00
  1013.        INC             G35
  1014.        RTRUE           
  1015.  
  1016. Routine R0016, 5 locals (0000, 0000, 0000, 0000, 0000)
  1017.  
  1018.        GET_PROP_ADDR   L00,#01 -> L02
  1019.        GET_PROP_LEN    L02 -> -(SP)
  1020.        DIV             (SP)+,#02 -> -(SP)
  1021.        SUB             (SP)+,#01 -> L03
  1022.        STORE           L04,#00
  1023.        DEC             L04
  1024. L0001: JL              L04,L03 [FALSE] L0003
  1025.        INC             L04
  1026.        LOADW           L02,L04 -> -(SP)
  1027.        JE              L01,(SP)+ [FALSE] L0002
  1028.        RTRUE           
  1029. L0002: JUMP            L0001
  1030. L0003: RFALSE          
  1031.  
  1032. Routine R0017, 2 locals (0000, 0000)
  1033.  
  1034.        CALL            R0020 -> L00
  1035.        JE              L00,"it","them" [FALSE] L0001
  1036.        STORE           L01,#01
  1037.        RET             L01
  1038. L0001: JE              L00,"him" [FALSE] L0002
  1039.        STORE           L01,#02
  1040.        RET             L01
  1041. L0002: JE              L00,"her" [FALSE] L0003
  1042.        STORE           L01,#03
  1043.        RET             L01
  1044. L0003: JE              L00,#00 [FALSE] L0004
  1045.        RFALSE          
  1046. L0004: LOADW           L00,#04 -> L01
  1047.        AND             L01,#80 -> -(SP)
  1048.        JE              (SP)+,#00 [FALSE] L0005
  1049.        RFALSE          
  1050. L0005: RET             L00
  1051.  
  1052. Routine R0018, 2 locals (0000, 0000)
  1053.  
  1054.        CALL            R0020 -> L01
  1055.        JE              L01,#00 [FALSE] L0001
  1056.        RFALSE          
  1057. L0001: LOADB           L01,#04 -> L00
  1058.        AND             L00,#08 -> -(SP)
  1059.        JE              (SP)+,#00 [FALSE] L0002
  1060.        RFALSE          
  1061. L0002: LOADB           L01,#06 -> -(SP)
  1062.        RET             (SP)+
  1063.  
  1064. Routine R0019, 2 locals (0000, 0000)
  1065.  
  1066.        STORE           L01,#0d9c
  1067. L0001: JE              #01,#01 [FALSE] L0003
  1068.        LOADW           L01,#01 -> -(SP)
  1069.        JE              L00,(SP)+ [FALSE] L0002
  1070.        LOADW           L01,#00 -> L01
  1071.        RET             L01
  1072. L0002: ADD             L01,#04 -> L01
  1073.        JUMP            L0001
  1074. L0003: STORE           L01,#0d9c
  1075.        PRINT           "<Adjective not found>"
  1076.        RET             L01
  1077.  
  1078. Routine R0020, 3 locals (0000, 0000, 0000)
  1079.  
  1080.        LOADB           G11,#01 -> -(SP)
  1081.        JG              G23,(SP)+ [FALSE] L0001
  1082.        INC             G23
  1083.        RFALSE          
  1084. L0001: MUL             G23,#02 -> -(SP)
  1085.        SUB             (SP)+,#01 -> L00
  1086.        INC             G23
  1087.        LOADW           G11,L00 -> L01
  1088.        JE              L01,#00 [FALSE] L0002
  1089.        MUL             G23,#04 -> -(SP)
  1090.        SUB             (SP)+,#03 -> L02
  1091.        LOADB           G11,L02 -> -(SP)
  1092.        LOADB           G10,(SP)+ -> L00
  1093.        JE              L00,#2c [FALSE] L0002
  1094.        STORE           L01,"xcomma"
  1095. L0002: RET             L01
  1096.  
  1097. Routine R0021, 10 locals (0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000,
  1098.                           0000)
  1099.  
  1100.        MUL             L00,#04 -> -(SP)
  1101.        ADD             (SP)+,#01 -> L01
  1102.        LOADB           G11,L01 -> L02
  1103.        ADD             L02,G10 -> L04
  1104.        SUB             L01,#01 -> -(SP)
  1105.        LOADB           G11,(SP)+ -> L05
  1106.        JL              L05,#04 [TRUE] L0001
  1107.        STORE           L06,#03e8
  1108. L0001: JE              L05,#03 [FALSE] L0002
  1109.        STORE           L06,#64
  1110. L0002: JE              L05,#02 [FALSE] L0003
  1111.        STORE           L06,#0a
  1112. L0003: JE              L05,#01 [FALSE] L0004
  1113.        STORE           L06,#01
  1114. L0004: STORE           L07,#00
  1115.        STORE           L03,#00
  1116.        SUB             L05,#01 -> L05
  1117.        STORE           L03,#00
  1118.        DEC             L03
  1119. L0005: JL              L03,L05 [FALSE] L0017
  1120.        INC             L03
  1121.        LOADB           L04,L03 -> L09
  1122.        JE              L09,#30 [FALSE] L0006
  1123.        STORE           L08,#00
  1124.        JUMP            L0016
  1125. L0006: JE              L09,#31 [FALSE] L0007
  1126.        STORE           L08,#01
  1127.        JUMP            L0016
  1128. L0007: JE              L09,#32 [FALSE] L0008
  1129.        STORE           L08,#02
  1130.        JUMP            L0016
  1131. L0008: JE              L09,#33 [FALSE] L0009
  1132.        STORE           L08,#03
  1133.        JUMP            L0016
  1134. L0009: JE              L09,#34 [FALSE] L0010
  1135.        STORE           L08,#04
  1136.        JUMP            L0016
  1137. L0010: JE              L09,#35 [FALSE] L0011
  1138.        STORE           L08,#05
  1139.        JUMP            L0016
  1140. L0011: JE              L09,#36 [FALSE] L0012
  1141.        STORE           L08,#06
  1142.        JUMP            L0016
  1143. L0012: JE              L09,#37 [FALSE] L0013
  1144.        STORE           L08,#07
  1145.        JUMP            L0016
  1146. L0013: JE              L09,#38 [FALSE] L0014
  1147.        STORE           L08,#08
  1148.        JUMP            L0016
  1149. L0014: JE              L09,#39 [FALSE] L0015
  1150.        STORE           L08,#09
  1151.        JUMP            L0016
  1152. L0015: RFALSE          
  1153. L0016: MUL             L06,L08 -> -(SP)
  1154.        ADD             L07,(SP)+ -> L07
  1155.        DIV             L06,#0a -> L06
  1156.        JUMP            L0005
  1157. L0017: JG              L05,#03 [FALSE] L0018
  1158.        STORE           L07,#2710
  1159. L0018: RET             L07
  1160.  
  1161. Routine R0022, 1 local (0000)
  1162.  
  1163.        TEST_ATTR       L00,#04 [FALSE] L0003
  1164.        CALL            R0023 (L00) -> -(SP)
  1165.        JE              (SP)+,#01 [FALSE] L0001
  1166.        STORE           G3b,L00
  1167.        JUMP            L0002
  1168. L0001: STORE           G3c,L00
  1169. L0002: JUMP            L0004
  1170. L0003: STORE           G3a,L00
  1171. L0004: RTRUE           
  1172.  
  1173. Routine R0023, 2 locals (0000, 0000)
  1174.  
  1175.        TEST_ATTR       L00,#05 [TRUE] L0001
  1176.        STORE           L01,#01
  1177. L0001: RET             L01
  1178.  
  1179. Routine R0024, 4 locals (0000, 0000, 0000, 0000)
  1180.  
  1181.        LOADB           L00,#00 -> L03
  1182.        STORE           L02,#01
  1183.        DEC             L02
  1184. L0001: JL              L02,L03 [FALSE] L0002
  1185.        INC             L02
  1186.        LOADB           L01,L02 -> -(SP)
  1187.        STOREB          L00,L02,(SP)+
  1188.        JUMP            L0001
  1189. L0002: RTRUE           
  1190.  
  1191. Routine R0025, 0 locals ()
  1192.  
  1193.        JE              G03,#ffff [FALSE] L0001
  1194.        STORE           G01,G06
  1195.        STORE           G02,G07
  1196.        JUMP            L0002
  1197. L0001: DIV             G03,#3c -> G01
  1198.        MOD             G03,#3c -> G02
  1199. L0002: RTRUE           
  1200.  
  1201. Routine R0026, 2 locals (0000, 0000)
  1202.  
  1203.        STORE           G03,L00
  1204.        STORE           G04,L01
  1205.        STORE           G05,#00
  1206.        JL              L01,#00 [FALSE] L0001
  1207.        SUB             #00,L01 -> G05
  1208. L0001: RTRUE           
  1209.  
  1210. Routine R0027, 5 locals (0000, 0000, 0000, 0000, 0000)
  1211.  
  1212.        CALL            R0132 -> -(SP)
  1213.        POP             
  1214.        INSERT_OBJ      G08,G00
  1215.        CALL            R0032 -> -(SP)
  1216.        POP             
  1217.        CALL            R0073 -> -(SP)
  1218.        POP             
  1219.        STORE           L00,#01
  1220.        DEC             L00
  1221. L0001: JL              L00,#64 [FALSE] L0002
  1222.        INC             L00
  1223.        RANDOM          L00 -> L01
  1224.        JUMP            L0001
  1225. L0002: JE              G0a,#00 [FALSE] L0018
  1226. L0003: STORE           G16,#00
  1227.        STORE           G17,#00
  1228.        STORE           G15,#00
  1229.        CALL            R0003 (G12) -> -(SP)
  1230.        POP             
  1231.        STORE           G1d,G1c
  1232.        STORE           G1c,#00
  1233.        JE              G14,G08 [TRUE] L0005
  1234.        LOADB           G12,#00 -> G15
  1235.        CALL            R0029 (G14,#00) -> -(SP)
  1236.        JE              (SP)+,#00 [FALSE] L0004
  1237.        CALL            R0041 (G14) -> -(SP)
  1238.        POP             
  1239.        PRINT           " has better things to do.
  1240. "
  1241. L0004: JUMP            L0015
  1242. L0005: JE              G13,#01 [FALSE] L0006
  1243.        STORE           G13,#00
  1244.        PRINT           "(taking the first sixteen objects only)
  1245. "
  1246. L0006: STORE           L04,#00
  1247.        JE              G15,#00 [TRUE] L0007
  1248.        STORE           L04,#01
  1249. L0007: JE              G15,#00 [FALSE] L0008
  1250.        LOADB           G12,#00 -> G15
  1251. L0008: JE              L04,#00 [FALSE] L0009
  1252.        LOADB           G12,#01 -> L00
  1253.        LOADB           G12,#02 -> G16
  1254.        LOADB           G12,#03 -> G17
  1255. L0009: JE              L04,#00 [TRUE] L0010
  1256.        STORE           L00,#02
  1257. L0010: STORE           G1b,#00
  1258.        JE              L00,#00 [FALSE] L0011
  1259.        CALL            R0028 (#00,#00,G15) -> -(SP)
  1260.        POP             
  1261. L0011: JG              L00,#00 [FALSE] L0015
  1262.        JE              G16,#00 [TRUE] L0012
  1263.        CALL            R0028 (G16,G17,G15) -> -(SP)
  1264.        POP             
  1265. L0012: JE              G16,#00 [FALSE] L0015
  1266.        STORE           G1b,#01
  1267.        LOADB           G18,#00 -> L01
  1268.        JE              L01,#00 [FALSE] L0013
  1269.        PRINT           "Nothing to do!
  1270. "
  1271.        JUMP            L0003
  1272. L0013: STORE           L02,#01
  1273.        DEC             L02
  1274. L0014: JL              L02,L01 [FALSE] L0015
  1275.        INC             L02
  1276.        LOADB           G18,L02 -> L03
  1277.        PRINT_OBJ       L03
  1278.        PRINT           ": "
  1279.        CALL            R0028 (L03,G17,G15) -> -(SP)
  1280.        POP             
  1281.        JUMP            L0014
  1282. L0015: JE              G1c,#01 [FALSE] L0016
  1283.        STORE           G1e,#01
  1284. L0016: JE              G0a,#00 [FALSE] L0017
  1285.        JE              G1e,#00 [FALSE] L0017
  1286.        CALL            R0033 -> -(SP)
  1287.        POP             
  1288. L0017: JUMP            L0002
  1289. L0018: PRINT           "
  1290.  
  1291.     ***"
  1292.        JE              G0a,#01 [FALSE] L0019
  1293.        PRINT           " You have died "
  1294. L0019: JE              G0a,#02 [FALSE] L0020
  1295.        PRINT           " You have won "
  1296. L0020: JG              G0a,#02 [FALSE] L0021
  1297.        PRINT           " "
  1298.        CALL            R0136 -> -(SP)
  1299.        POP             
  1300.        PRINT           " "
  1301. L0021: PRINT           "***
  1302.  
  1303.  
  1304. "
  1305.        CALL            R0042 -> -(SP)
  1306.        POP             
  1307. L0022: PRINT           "
  1308. Would you like to RESTART, RESTORE a saved game, give the FULL score for that
  1309. game"
  1310.        JE              G0a,#02 [FALSE] L0023
  1311.        PRINT           ", see some suggestions for AMUSING things to do"
  1312. L0023: PRINT           " or QUIT?
  1313. "
  1314. L0024: PRINT_CHAR      '?'
  1315.        PRINT_CHAR      ' '
  1316.        READ            G10,G11
  1317.        LOADW           G11,#01 -> L00
  1318.        JE              L00,"quit" [FALSE] L0025
  1319.        QUIT            
  1320. L0025: JE              L00,"q" [FALSE] L0026
  1321.        QUIT            
  1322. L0026: JE              L00,"restar" [FALSE] L0027
  1323.        RESTART         
  1324. L0027: JE              L00,"restor" [FALSE] L0028
  1325.        CALL            R0048 -> -(SP)
  1326.        POP             
  1327.        JUMP            L0022
  1328. L0028: JE              L00,"fullsc" [FALSE] L0029
  1329.        CALL            R0045 -> -(SP)
  1330.        POP             
  1331.        JUMP            L0022
  1332. L0029: JE              G0a,#02 [FALSE] L0030
  1333.        JE              L00,"amusin" [FALSE] L0030
  1334.        NEW_LINE        
  1335.        CALL            R0135 -> -(SP)
  1336.        POP             
  1337.        JUMP            L0022
  1338. L0030: JE              L00,"full" [FALSE] L0031
  1339.        NEW_LINE        
  1340.        CALL            R0045 -> -(SP)
  1341.        POP             
  1342.        JUMP            L0022
  1343. L0031: PRINT           "Please answer RESTART, RESTORE, FULL"
  1344.        JE              G0a,#02 [FALSE] L0032
  1345.        PRINT           ", AMUSING"
  1346. L0032: PRINT           " or QUIT.
  1347. "
  1348.        JUMP            L0024
  1349.  
  1350. orphan code fragment:
  1351.  
  1352.        RTRUE           
  1353.  
  1354. Routine R0028, 3 locals (0000, 0000, 0000)
  1355.  
  1356.        STORE           G16,L00
  1357.        STORE           G17,L01
  1358.        STORE           G15,L02
  1359.        JE              G1e,#01 [FALSE] L0001
  1360.        JUMP            L0004
  1361. L0001: CALL            R0140 -> -(SP)
  1362.        JE              (SP)+,#00 [TRUE] L0002
  1363.        RTRUE           
  1364. L0002: JE              G00,#00 [TRUE] L0003
  1365.        GET_PROP        G00,#05 -> L00
  1366.        JE              L00,#ffff [TRUE] L0003
  1367.        CALL            L00 -> -(SP)
  1368.        JE              (SP)+,#00 [TRUE] L0003
  1369.        RTRUE           
  1370. L0003: JG              G16,#01 [FALSE] L0004
  1371.        GET_PROP        G16,#05 -> L00
  1372.        JE              L00,#ffff [TRUE] L0004
  1373.        CALL            L00 -> -(SP)
  1374.        JE              (SP)+,#00 [TRUE] L0004
  1375.        RTRUE           
  1376. L0004: LOADW           #0c56,G15 -> L01
  1377.        CALL            L01 -> -(SP)
  1378.        POP             
  1379.        RTRUE           
  1380.  
  1381. Routine R0029, 3 locals (0000, 0000, 0000)
  1382.  
  1383.        STORE           G1f,L01
  1384.        GET_PROP        L00,#07 -> L02
  1385.        JE              L02,#ffff [TRUE] L0001
  1386.        CALL            L02 -> -(SP)
  1387.        JE              (SP)+,#00 [TRUE] L0001
  1388.        RTRUE           
  1389. L0001: RFALSE          
  1390.  
  1391. Routine R0030, 2 locals (0000, 0000)
  1392.  
  1393.        STORE           L01,G00
  1394.        GET_PROP        L01,#06 -> L00
  1395.        JE              L00,#ffff [FALSE] L0001
  1396.        JUMP            L0002
  1397. L0001: CALL            L00 -> -(SP)
  1398.        JE              (SP)+,#00 [TRUE] L0002
  1399.        RTRUE           
  1400. L0002: STORE           L01,#00
  1401.        LOADB           G12,#01 -> L00
  1402.        JG              L00,#00 [FALSE] L0003
  1403.        STORE           L01,G16
  1404. L0003: JL              L01,#02 [FALSE] L0004
  1405.        RFALSE          
  1406. L0004: GET_PROP        L01,#06 -> L00
  1407.        JE              L00,#ffff [FALSE] L0005
  1408.        RFALSE          
  1409. L0005: CALL            L00 -> -(SP)
  1410.        JE              (SP)+,#00 [TRUE] L0006
  1411.        RTRUE           
  1412. L0006: CALL            R0141 -> -(SP)
  1413.        RET             (SP)+
  1414.  
  1415. Routine R0031, 2 locals (0000, 0000)
  1416.  
  1417.        STORE           L01,G00
  1418.        JE              L01,#00 [FALSE] L0001
  1419.        RFALSE          
  1420. L0001: GET_PROP        L01,#06 -> L00
  1421.        JE              L00,#ffff [FALSE] L0002
  1422.        RFALSE          
  1423. L0002: CALL            L00 -> -(SP)
  1424.        JE              (SP)+,#00 [TRUE] L0003
  1425.        RTRUE           
  1426. L0003: CALL            R0141 -> -(SP)
  1427.        RET             (SP)+
  1428.  
  1429. Routine R0032, 1 local (0000)
  1430.  
  1431.        PRINT_PADDR     S001
  1432.        PRINT_PADDR     S002
  1433.        PRINT           "Release "
  1434.        LOADW           #00,#01 -> -(SP)
  1435.        AND             (SP)+,#03ff -> -(SP)
  1436.        PRINT_NUM       (SP)+
  1437.        PRINT           " / Serial number "
  1438.        STORE           L00,#12
  1439.        DEC             L00
  1440. L0001: JL              L00,#17 [FALSE] L0002
  1441.        INC             L00
  1442.        LOADB           #00,L00 -> -(SP)
  1443.        PRINT_CHAR      (SP)+
  1444.        JUMP            L0001
  1445. L0002: PRINT           "  (Compiled by Inform v"
  1446.        PRINT           "798"
  1447.        PRINT           ")
  1448. "
  1449.        RTRUE           
  1450.  
  1451. Routine R0033, 1 local (0000)
  1452.  
  1453.        INC             G07
  1454.        JE              G03,#ffff [TRUE] L0002
  1455.        JL              G04,#00 [TRUE] L0001
  1456.        ADD             G03,G04 -> G03
  1457.        JUMP            L0002
  1458. L0001: DEC             G05
  1459.        JE              G05,#00 [FALSE] L0002
  1460.        INC             G03
  1461.        SUB             #00,G04 -> G05
  1462. L0002: CALL            R0134 -> -(SP)
  1463.        POP             
  1464.        STORE           L00,G09
  1465.        GET_PARENT      G08 -> -(SP)
  1466.        CALL            R0038 ((SP)+) -> G09
  1467.        JE              L00,#00 [FALSE] L0003
  1468.        JE              G09,#01 [FALSE] L0003
  1469.        NEW_LINE        
  1470.        GET_PARENT      G08 -> G00
  1471.        CALL            R0073 (#01) -> -(SP)
  1472.        POP             
  1473. L0003: JE              L00,#01 [FALSE] L0004
  1474.        JE              G09,#00 [FALSE] L0004
  1475.        NEW_LINE        
  1476.        PRINT           "It is now pitch dark in here!
  1477. "
  1478.        STORE           G00,#0c
  1479. L0004: RTRUE           
  1480.  
  1481. Routine R0034, 2 locals (0000, 0000)
  1482.  
  1483.        GET_PROP        L00,#15 -> L01
  1484.        JG              L01,G07 [FALSE] L0001
  1485.        RFALSE          
  1486. L0001: JE              L01,#00 [FALSE] L0002
  1487.        RFALSE          
  1488. L0002: PUT_PROP        L00,#15,#00
  1489.        RTRUE           
  1490.  
  1491. Routine R0035, 2 locals (0000, 0000)
  1492.  
  1493.        GET_PROP        L00,#15 -> L01
  1494.        JE              L01,#00 [FALSE] L0001
  1495.        RFALSE          
  1496. L0001: DEC             L01
  1497.        PUT_PROP        L00,#15,L01
  1498.        JG              L01,#00 [FALSE] L0002
  1499.        RFALSE          
  1500. L0002: RTRUE           
  1501.  
  1502. Routine R0036, 2 locals (0000, 0000)
  1503.  
  1504.        ADD             G07,L01 -> L01
  1505.        PUT_PROP        L00,#15,L01
  1506.        RTRUE           
  1507.  
  1508. Routine R0037, 2 locals (0000, 0000)
  1509.  
  1510.        GET_PROP        L00,#15 -> -(SP)
  1511.        SUB             (SP)+,G07 -> L01
  1512.        RET             L01
  1513.  
  1514. Routine R0038, 1 local (0000)
  1515.  
  1516.        TEST_ATTR       L00,#00 [FALSE] L0001
  1517.        RTRUE           
  1518. L0001: TEST_ATTR       L00,#09 [FALSE] L0002
  1519.        TEST_ATTR       L00,#0b [FALSE] L0002
  1520.        TEST_ATTR       L00,#0c [TRUE] L0002
  1521.        RFALSE          
  1522. L0002: GET_CHILD       L00 -> L00 [TRUE] L0003
  1523. L0003: JE              L00,#00 [TRUE] L0006
  1524.        CALL            R0038 (L00) -> -(SP)
  1525.        JE              #01,(SP)+ [FALSE] L0004
  1526.        RTRUE           
  1527. L0004: GET_SIBLING     L00 -> L00 [TRUE] L0005
  1528. L0005: JUMP            L0003
  1529. L0006: RFALSE          
  1530.  
  1531. Routine R0039, 1 local (0000)
  1532.  
  1533.        TEST_ATTR       L00,#06 [TRUE] L0001
  1534.        GET_PROP        L00,#03 -> -(SP)
  1535.        PRINT_PADDR     (SP)+
  1536.        PRINT           " "
  1537. L0001: PRINT_OBJ       L00
  1538.        RTRUE           
  1539.  
  1540. Routine R0040, 1 local (0000)
  1541.  
  1542.        TEST_ATTR       L00,#06 [TRUE] L0001
  1543.        PRINT           "the "
  1544. L0001: PRINT_OBJ       L00
  1545.        RTRUE           
  1546.  
  1547. Routine R0041, 1 local (0000)
  1548.  
  1549.        TEST_ATTR       L00,#06 [TRUE] L0001
  1550.        PRINT           "The "
  1551. L0001: PRINT_OBJ       L00
  1552.        RTRUE           
  1553.  
  1554. Routine R0042, 0 locals ()
  1555.     Action routine for:
  1556.         "score"
  1557.  
  1558.        JE              G0a,#00 [FALSE] L0001
  1559.        PRINT           "You have so far scored "
  1560. L0001: JG              G0a,#00 [FALSE] L0002
  1561.        PRINT           "In that game you scored "
  1562. L0002: PRINT_NUM       G06
  1563.        PRINT           " out of a possible "
  1564.        PRINT_NUM       #00
  1565.        PRINT           ", in "
  1566.        PRINT_NUM       G07
  1567.        PRINT           " turns"
  1568.        CALL            R0133 -> -(SP)
  1569.        POP             
  1570.        RTRUE           
  1571.  
  1572. Routine R0043, 1 local (0000)
  1573.  
  1574.        LOADB           G4b,L00 -> -(SP)
  1575.        JE              (SP)+,#00 [FALSE] L0001
  1576.        STOREB          G4b,L00,#01
  1577.        LOADB           G4a,L00 -> -(SP)
  1578.        ADD             G06,(SP)+ -> G06
  1579. L0001: RTRUE           
  1580.  
  1581. Routine R0044, 2 locals (0000, 0000)
  1582.  
  1583.        PRINT           "  "
  1584.        STORE           L01,L00
  1585.        JL              L01,#00 [FALSE] L0001
  1586.        SUB             #00,L00 -> L01
  1587.        MUL             L01,#0a -> L01
  1588. L0001: JL              L01,#0a [FALSE] L0002
  1589.        PRINT           "   "
  1590.        JUMP            L0004
  1591. L0002: JL              L01,#64 [FALSE] L0003
  1592.        PRINT           "  "
  1593.        JUMP            L0004
  1594. L0003: JL              L01,#03e8 [FALSE] L0004
  1595.        PRINT           " "
  1596. L0004: PRINT_NUM       L00
  1597.        PRINT           " "
  1598.        RTRUE           
  1599.  
  1600. Routine R0045, 2 locals (0000, 0000)
  1601.     Action routine for:
  1602.         "full"
  1603.  
  1604.        CALL            R0042 -> -(SP)
  1605.        POP             
  1606.        JE              G06,#00 [FALSE] L0001
  1607.        RFALSE          
  1608. L0001: NEW_LINE        
  1609.        JG              G0a,#00 [FALSE] L0002
  1610.        PRINT           "The score was "
  1611. L0002: JE              G0a,#00 [FALSE] L0003
  1612.        PRINT           "The score is "
  1613. L0003: PRINT           "made up as follows:
  1614.  
  1615. "
  1616.        SUB             #01,#01 -> L01
  1617.        STORE           L00,#00
  1618.        DEC             L00
  1619. L0004: JL              L00,L01 [FALSE] L0006
  1620.        INC             L00
  1621.        LOADB           G4b,L00 -> -(SP)
  1622.        JE              (SP)+,#01 [FALSE] L0005
  1623.        LOADB           G4a,L00 -> -(SP)
  1624.        CALL            R0044 ((SP)+) -> -(SP)
  1625.        POP             
  1626.        CALL            R0142 (L00) -> -(SP)
  1627.        POP             
  1628. L0005: JUMP            L0004
  1629. L0006: JE              G0d,#00 [TRUE] L0007
  1630.        CALL            R0044 (G0d) -> -(SP)
  1631.        POP             
  1632.        PRINT           "finding sundry items
  1633. "
  1634. L0007: JE              G0c,#00 [TRUE] L0008
  1635.        CALL            R0044 (G0c) -> -(SP)
  1636.        POP             
  1637.        PRINT           "visiting various places
  1638. "
  1639. L0008: NEW_LINE        
  1640.        CALL            R0044 (G06) -> -(SP)
  1641.        POP             
  1642.        PRINT           "total (out of "
  1643.        PRINT_NUM       #00
  1644.        PRINT           ")
  1645. "
  1646.        RTRUE           
  1647.  
  1648. Routine R0046, 1 local (0000)
  1649.     Action routine for:
  1650.         "die"
  1651.  
  1652.        PRINT           "Are you sure you want to quit? "
  1653. L0001: READ            G10,G11
  1654.        LOADW           G11,#01 -> L00
  1655.        JE              L00,"yes","y" [FALSE] L0002
  1656.        QUIT            
  1657. L0002: JE              L00,"no","n" [FALSE] L0003
  1658.        RTRUE           
  1659. L0003: PRINT           "Please answer yes or no."
  1660.        PRINT_CHAR      '>'
  1661.        PRINT_CHAR      ' '
  1662.        JUMP            L0001
  1663.  
  1664. orphan code fragment:
  1665.  
  1666.        RTRUE           
  1667.  
  1668. Routine R0047, 1 local (0000)
  1669.     Action routine for:
  1670.         "restar"
  1671.  
  1672.        PRINT           "Are you sure you want to restart? "
  1673. L0001: READ            G10,G11
  1674.        LOADW           G11,#01 -> L00
  1675.        JE              L00,"yes" [FALSE] L0002
  1676.        RESTART         
  1677. L0002: JE              L00,"y" [FALSE] L0003
  1678.        RESTART         
  1679. L0003: JE              L00,"no" [FALSE] L0004
  1680.        RTRUE           
  1681. L0004: JE              L00,"n" [FALSE] L0005
  1682.        RTRUE           
  1683. L0005: PRINT           "Please answer yes or no."
  1684.        PRINT_CHAR      '>'
  1685.        PRINT_CHAR      ' '
  1686.        JUMP            L0001
  1687.  
  1688. orphan code fragment:
  1689.  
  1690.        RTRUE           
  1691.  
  1692. Routine R0048, 0 locals ()
  1693.     Action routine for:
  1694.         "restor"
  1695.  
  1696.        RESTORE         [TRUE] L0001
  1697.        PRINT_RET       "Failed."
  1698. L0001: PRINT           "Ok.
  1699. "
  1700.        RTRUE           
  1701.  
  1702. Routine R0049, 0 locals ()
  1703.     Action routine for:
  1704.         "save"
  1705.  
  1706.        SAVE            [TRUE] L0001
  1707.        PRINT_RET       "Failed."
  1708. L0001: PRINT           "Ok.
  1709. "
  1710.        RTRUE           
  1711.  
  1712. Routine R0050, 0 locals ()
  1713.     Action routine for:
  1714.         "verify"
  1715.  
  1716.        VERIFY          [TRUE] L0001
  1717.        JUMP            L0002
  1718. L0001: PRINT_RET       "The game file has verified as intact."
  1719. L0002: PRINT_RET       "The game file did not verify properly, and may be
  1720. corrupted (unless you are running it on a primitive interpreter which does not
  1721. properly implement the VERIFY code)."
  1722.  
  1723. Routine R0051, 1 local (0000)
  1724.     Action routine for:
  1725.         "script"
  1726.         "script on"
  1727.  
  1728.        JE              G0b,#01 [FALSE] L0001
  1729.        PRINT_RET       "Transcripting is already on."
  1730. L0001: STORE           G0b,#01
  1731.        LOADW           #00,#08 -> -(SP)
  1732.        OR              (SP)+,#01 -> L00
  1733.        STOREW          #00,#08,L00
  1734.        PRINT           "Start of a transcript of
  1735. "
  1736.        CALL            R0032 -> -(SP)
  1737.        POP             
  1738.        RTRUE           
  1739.  
  1740. Routine R0052, 1 local (0000)
  1741.     Action routine for:
  1742.         "script off"
  1743.         "noscri"
  1744.  
  1745.        JE              G0b,#00 [FALSE] L0001
  1746.        PRINT_RET       "Transcripting is already off."
  1747. L0001: PRINT           "
  1748. End of transcript.
  1749. "
  1750.        STORE           G0b,#00
  1751.        LOADW           #00,#08 -> -(SP)
  1752.        AND             (SP)+,#fffe -> L00
  1753.        STOREW          #00,#08,L00
  1754.        RTRUE           
  1755.  
  1756. Routine R0053, 1 local (0000)
  1757.     Action routine for:
  1758.         "i"
  1759.  
  1760.        GET_CHILD       G08 -> L00 [TRUE] L0001
  1761. L0001: JE              L00,#00 [FALSE] L0002
  1762.        PRINT_RET       "You are carrying nothing."
  1763. L0002: PRINT           "You are carrying:
  1764. "
  1765.        CALL            R0054 (G08) -> -(SP)
  1766.        POP             
  1767.        CALL            R0030 -> -(SP)
  1768.        POP             
  1769.        RTRUE           
  1770.  
  1771. Routine R0054, 4 locals (0000, 0000, 0000, 0000)
  1772.  
  1773.        STORE           L02,#01
  1774.        JE              L01,#00 [TRUE] L0003
  1775.        STORE           L03,#01
  1776.        DEC             L03
  1777. L0001: JL              L03,L01 [FALSE] L0002
  1778.        INC             L03
  1779.        PRINT           "  "
  1780.        JUMP            L0001
  1781. L0002: CALL            R0075 (L00,#00) -> L02
  1782.        NEW_LINE        
  1783. L0003: JE              L02,#00 [FALSE] L0004
  1784.        RTRUE           
  1785. L0004: GET_CHILD       L00 -> L02 [TRUE] L0005
  1786. L0005: JE              L02,#00 [TRUE] L0007
  1787.        ADD             L01,#01 -> -(SP)
  1788.        CALL            R0054 (L02,(SP)+) -> -(SP)
  1789.        POP             
  1790.        GET_SIBLING     L02 -> L02 [TRUE] L0006
  1791. L0006: JUMP            L0005
  1792. L0007: RTRUE           
  1793.  
  1794. Routine R0055, 1 local (0000)
  1795.     Action routine for:
  1796.         "get MULTI"
  1797.         "peel NOUN"
  1798.         "peel off NOUN"
  1799.  
  1800.        CALL            R0056 (G00) -> L00
  1801.        JE              L00,#00 [TRUE] L0001
  1802.        RTRUE           
  1803. L0001: CALL            R0030 -> -(SP)
  1804.        JE              #01,(SP)+ [FALSE] L0002
  1805.        RTRUE           
  1806. L0002: STORE           G1c,G1d
  1807.        JE              G1c,#00 [FALSE] L0003
  1808.        PRINT           "Taken.
  1809. "
  1810. L0003: RTRUE           
  1811.  
  1812. Routine R0056, 4 locals (0000, 0000, 0000, 0000)
  1813.  
  1814.        JE              G16,G08 [FALSE] L0001
  1815.        PRINT_RET       "As the bishop said to the actress."
  1816. L0001: TEST_ATTR       G16,#04 [FALSE] L0002
  1817.        PRINT           "I don't suppose "
  1818.        CALL            R0040 (G16) -> -(SP)
  1819.        POP             
  1820.        PRINT_RET       " would care for that."
  1821. L0002: GET_PARENT      G16 -> L01
  1822.        JE              L01,G08 [FALSE] L0003
  1823.        PRINT_RET       "You already have that."
  1824. L0003: JE              L01,L00 [TRUE] L0007
  1825.        TEST_ATTR       L01,#09 [TRUE] L0004
  1826.        TEST_ATTR       L01,#0a [TRUE] L0004
  1827.        PRINT_RET       "That isn't available."
  1828. L0004: TEST_ATTR       L01,#09 [FALSE] L0005
  1829.        TEST_ATTR       L01,#0c [TRUE] L0005
  1830.        PRINT           "Unfortunately the "
  1831.        PRINT_OBJ       L01
  1832.        PRINT_RET       " isn't open."
  1833. L0005: GET_PARENT      L01 -> L01
  1834.        JE              L01,G08 [FALSE] L0006
  1835.        STORE           L01,L00
  1836. L0006: JUMP            L0003
  1837. L0007: TEST_ATTR       G16,#10 [FALSE] L0008
  1838.        PRINT_RET       "That's hardly portable."
  1839. L0008: TEST_ATTR       G16,#11 [FALSE] L0009
  1840.        PRINT_RET       "Fixed in place."
  1841. L0009: GET_CHILD       G08 -> L02 [TRUE] L0010
  1842. L0010: STORE           L03,#00
  1843. L0011: JE              L02,#00 [TRUE] L0014
  1844.        TEST_ATTR       L02,#02 [TRUE] L0012
  1845.        ADD             L03,#01 -> L03
  1846. L0012: GET_SIBLING     L02 -> L02 [TRUE] L0013
  1847. L0013: JUMP            L0011
  1848. L0014: JL              L03,#64 [TRUE] L0024
  1849.        JE              #00,#00 [TRUE] L0023
  1850.        GET_PARENT      #00 -> -(SP)
  1851.        JE              (SP)+,G08 [TRUE] L0015
  1852.        PRINT_RET       "You're carrying too many things already."
  1853. L0015: GET_CHILD       G08 -> L03 [TRUE] L0016
  1854. L0016: STORE           L02,#00
  1855. L0017: JE              L03,#00 [TRUE] L0020
  1856.        JE              L03,#00 [TRUE] L0018
  1857.        TEST_ATTR       L03,#02 [TRUE] L0018
  1858.        TEST_ATTR       L03,#00 [TRUE] L0018
  1859.        STORE           L02,L03
  1860. L0018: GET_SIBLING     L03 -> L03 [TRUE] L0019
  1861. L0019: JUMP            L0017
  1862. L0020: JE              L02,#00 [TRUE] L0021
  1863.        PRINT           "(putting "
  1864.        CALL            R0040 (L02) -> -(SP)
  1865.        POP             
  1866.        PRINT           " into "
  1867.        CALL            R0040 (#00) -> -(SP)
  1868.        POP             
  1869.        PRINT           " to make room)
  1870. "
  1871.        REMOVE_OBJ      L02
  1872.        INSERT_OBJ      L02,#00
  1873.        JUMP            L0022
  1874. L0021: PRINT_RET       "You're carrying too many things already."
  1875. L0022: JUMP            L0024
  1876. L0023: PRINT_RET       "You're carrying too many things already."
  1877. L0024: INSERT_OBJ      G16,G08
  1878.        TEST_ATTR       G16,#07 [TRUE] L0025
  1879.        SET_ATTR        G16,#07
  1880.        TEST_ATTR       G16,#1b [FALSE] L0025
  1881.        ADD             G06,#04 -> G06
  1882.        ADD             G0d,#04 -> G0d
  1883. L0025: RFALSE          
  1884.  
  1885. Routine R0057, 1 local (0000)
  1886.     Action routine for:
  1887.         "put down MULTIHELD"
  1888.         "put MULTIHELD down"
  1889.         "discar MULTIHELD"
  1890.  
  1891.        GET_PARENT      G16 -> L00
  1892.        JE              L00,G00 [FALSE] L0001
  1893.        PRINT_RET       "Already on the floor."
  1894. L0001: JE              L00,G08 [TRUE] L0002
  1895.        PRINT_RET       "You haven't got that."
  1896. L0002: TEST_ATTR       G16,#02 [FALSE] L0003
  1897.        PRINT           "(First taking it off)
  1898. "
  1899.        CLEAR_ATTR      G16,#02
  1900. L0003: GET_PARENT      G08 -> -(SP)
  1901.        INSERT_OBJ      G16,(SP)+
  1902.        CALL            R0030 -> -(SP)
  1903.        JE              #01,(SP)+ [FALSE] L0004
  1904.        RTRUE           
  1905. L0004: PRINT           "Dropped.
  1906. "
  1907.        RTRUE           
  1908.  
  1909. Routine R0058, 1 local (0000)
  1910.     Action routine for:
  1911.         "get MULTIINSIDE from NOUN"
  1912.         "get MULTIINSIDE off NOUN"
  1913.         "remove MULTIINSIDE from NOUN"
  1914.  
  1915.        GET_PARENT      G16 -> L00
  1916.        TEST_ATTR       L00,#09 [FALSE] L0001
  1917.        TEST_ATTR       L00,#0c [TRUE] L0001
  1918.        PRINT_RET       "Alas, it is closed."
  1919. L0001: JE              L00,G17 [TRUE] L0002
  1920.        PRINT_RET       "But it isn't there now."
  1921. L0002: TEST_ATTR       G17,#02 [FALSE] L0003
  1922.        PRINT_RET       "You'll need to take it off first."
  1923. L0003: CALL            R0056 (G17) -> L00
  1924.        JE              L00,#00 [TRUE] L0004
  1925.        RTRUE           
  1926. L0004: STORE           G15,#0d
  1927.        CALL            R0030 -> -(SP)
  1928.        JE              #01,(SP)+ [FALSE] L0005
  1929.        RTRUE           
  1930. L0005: STORE           G15,#0e
  1931.        CALL            R0030 -> -(SP)
  1932.        JE              #01,(SP)+ [FALSE] L0006
  1933.        RTRUE           
  1934. L0006: PRINT           "Removed.
  1935. "
  1936.        RTRUE           
  1937.  
  1938. Routine R0059, 2 locals (0000, 0000)
  1939.     Action routine for:
  1940.         "put MULTIEXCEPT on NOUN"
  1941.         "put MULTIEXCEPT onto NOUN"
  1942.         "discar MULTIEXCEPT on NOUN"
  1943.         "discar MULTIEXCEPT onto NOUN"
  1944.  
  1945.        JE              G17,#0b [FALSE] L0001
  1946.        STORE           G15,#14
  1947.        CALL            R0028 (G16,#00) -> -(SP)
  1948.        POP             
  1949.        RFALSE          
  1950. L0001: GET_PARENT      G16 -> -(SP)
  1951.        JE              (SP)+,G08 [TRUE] L0002
  1952.        PRINT_RET       "You need to be holding it before you can put it onto
  1953. something else."
  1954. L0002: TEST_ATTR       G17,#0a [TRUE] L0003
  1955.        PRINT           "Putting things on "
  1956.        CALL            R0040 (G17) -> -(SP)
  1957.        POP             
  1958.        PRINT_RET       " would achieve nothing."
  1959. L0003: GET_PARENT      G17 -> -(SP)
  1960.        JE              (SP)+,G08 [FALSE] L0004
  1961.        PRINT_RET       "You lack the dexterity."
  1962. L0004: TEST_ATTR       G16,#02 [FALSE] L0005
  1963.        PRINT           "(first taking it off)
  1964. "
  1965.        CLEAR_ATTR      G16,#02
  1966. L0005: STORE           L00,#00
  1967.        GET_CHILD       G17 -> L01 [TRUE] L0006
  1968. L0006: JE              L01,#00 [TRUE] L0008
  1969.        GET_SIBLING     L01 -> L01 [TRUE] L0007
  1970. L0007: INC             L00
  1971.        JUMP            L0006
  1972. L0008: GET_PROP        G17,#18 -> -(SP)
  1973.        JL              L00,(SP)+ [TRUE] L0009
  1974.        PRINT           "There is no more room on "
  1975.        CALL            R0040 (G17) -> -(SP)
  1976.        POP             
  1977.        PRINT_RET       "."
  1978. L0009: INSERT_OBJ      G16,G17
  1979.        CALL            R0030 -> -(SP)
  1980.        JE              #01,(SP)+ [FALSE] L0010
  1981.        RTRUE           
  1982. L0010: JE              G1b,#01 [FALSE] L0011
  1983.        PRINT_RET       "Done."
  1984. L0011: PRINT           "You put the "
  1985.        PRINT_OBJ       G16
  1986.        PRINT           " on "
  1987.        CALL            R0040 (G17) -> -(SP)
  1988.        POP             
  1989.        PRINT_RET       "."
  1990.  
  1991. Routine R0060, 2 locals (0000, 0000)
  1992.     Action routine for:
  1993.         "put MULTIEXCEPT in NOUN"
  1994.         "put MULTIEXCEPT into NOUN"
  1995.         "insert MULTIEXCEPT in NOUN"
  1996.         "insert MULTIEXCEPT into NOUN"
  1997.         "discar MULTIEXCEPT in NOUN"
  1998.         "discar MULTIEXCEPT into NOUN"
  1999.         "discar MULTIEXCEPT down NOUN"
  2000.  
  2001.        JE              G17,#0b [FALSE] L0001
  2002.        STORE           G15,#14
  2003.        CALL            R0028 (G16,#00) -> -(SP)
  2004.        POP             
  2005.        RFALSE          
  2006. L0001: GET_PARENT      G16 -> -(SP)
  2007.        JE              (SP)+,G08 [TRUE] L0002
  2008.        PRINT_RET       "You need to be holding it before you can put it into
  2009. something else."
  2010. L0002: TEST_ATTR       G17,#09 [TRUE] L0003
  2011.        PRINT_RET       "That can't contain things."
  2012. L0003: TEST_ATTR       G17,#0c [TRUE] L0004
  2013.        PRINT_RET       "Alas, it is closed."
  2014. L0004: TEST_ATTR       G17,#02 [FALSE] L0005
  2015.        PRINT_RET       "You'll need to take it off first."
  2016. L0005: TEST_ATTR       G16,#02 [FALSE] L0006
  2017.        PRINT           "(first taking it off)
  2018. "
  2019.        CLEAR_ATTR      G16,#02
  2020. L0006: STORE           L00,#00
  2021.        GET_CHILD       G17 -> L01 [TRUE] L0007
  2022. L0007: JE              L01,#00 [TRUE] L0009
  2023.        GET_SIBLING     L01 -> L01 [TRUE] L0008
  2024. L0008: INC             L00
  2025.        JUMP            L0007
  2026. L0009: GET_PROP        G17,#18 -> -(SP)
  2027.        JL              L00,(SP)+ [TRUE] L0010
  2028.        PRINT           "There is no more room in "
  2029.        CALL            R0040 (G17) -> -(SP)
  2030.        POP             
  2031.        PRINT_RET       "."
  2032. L0010: INSERT_OBJ      G16,G17
  2033.        CALL            R0030 -> -(SP)
  2034.        JE              #01,(SP)+ [FALSE] L0011
  2035.        RTRUE           
  2036. L0011: JE              G1b,#01 [FALSE] L0012
  2037.        PRINT_RET       "Done."
  2038. L0012: PRINT           "You put the "
  2039.        PRINT_OBJ       G16
  2040.        PRINT           " into "
  2041.        CALL            R0040 (G17) -> -(SP)
  2042.        POP             
  2043.        PRINT_RET       "."
  2044.  
  2045. Routine R0061, 2 locals (0000, 0000)
  2046.     Action routine for:
  2047.         "transf NOUN to NOUN"
  2048.         "clear NOUN to NOUN"
  2049.  
  2050.        STORE           L01,#14
  2051.        TEST_ATTR       G17,#09 [FALSE] L0001
  2052.        STORE           L01,#12
  2053.        JUMP            L0002
  2054. L0001: TEST_ATTR       G17,#0a [FALSE] L0002
  2055.        STORE           L01,#13
  2056. L0002: GET_PARENT      G16 -> L00
  2057.        JE              L00,G08 [TRUE] L0007
  2058. L0003: JE              L00,#00 [TRUE] L0006
  2059.        TEST_ATTR       L00,#0c [TRUE] L0004
  2060.        PRINT_RET       "That isn't in your possession."
  2061. L0004: GET_PARENT      L00 -> L00
  2062.        JE              L00,G08 [FALSE] L0005
  2063.        JUMP            L0007
  2064. L0005: JUMP            L0003
  2065. L0006: PRINT_RET       "First pick that up."
  2066. L0007: INSERT_OBJ      G16,G08
  2067.        CALL            R0028 (G16,G17,L01) -> -(SP)
  2068.        POP             
  2069.        RFALSE          
  2070.  
  2071. Routine R0062, 0 locals ()
  2072.     Action routine for:
  2073.         "empty NOUN"
  2074.         "empty out NOUN"
  2075.         "empty NOUN out"
  2076.  
  2077.        STORE           G17,#0b
  2078.        CALL            R0063 -> -(SP)
  2079.        POP             
  2080.        RTRUE           
  2081.  
  2082. Routine R0063, 2 locals (0000, 0000)
  2083.     Action routine for:
  2084.         "empty NOUN to NOUN"
  2085.         "empty NOUN into NOUN"
  2086.         "empty NOUN on NOUN"
  2087.         "empty NOUN onto NOUN"
  2088.  
  2089.        TEST_ATTR       G16,#09 [TRUE] L0001
  2090.        CALL            R0041 (G16) -> -(SP)
  2091.        POP             
  2092.        PRINT_RET       " can't contain things."
  2093. L0001: TEST_ATTR       G16,#0c [TRUE] L0002
  2094.        CALL            R0041 (G16) -> -(SP)
  2095.        POP             
  2096.        PRINT_RET       " is closed."
  2097. L0002: JE              G17,#0b [TRUE] L0004
  2098.        TEST_ATTR       G17,#09 [TRUE] L0003
  2099.        CALL            R0041 (G17) -> -(SP)
  2100.        POP             
  2101.        PRINT_RET       " can't contain things."
  2102. L0003: TEST_ATTR       G17,#0c [TRUE] L0004
  2103.        CALL            R0041 (G17) -> -(SP)
  2104.        POP             
  2105.        PRINT_RET       " is closed."
  2106. L0004: GET_CHILD       G16 -> L00 [TRUE] L0005
  2107. L0005: JE              L00,#00 [FALSE] L0006
  2108.        CALL            R0040 (G16) -> -(SP)
  2109.        POP             
  2110.        PRINT_RET       " is empty already."
  2111. L0006: JE              L00,#00 [TRUE] L0008
  2112.        GET_SIBLING     L00 -> L01 [TRUE] L0007
  2113. L0007: PRINT_OBJ       L00
  2114.        PRINT           ": "
  2115.        CALL            R0028 (L00,G17,#17) -> -(SP)
  2116.        POP             
  2117.        STORE           L00,L01
  2118.        JUMP            L0006
  2119. L0008: RTRUE           
  2120.  
  2121. Routine R0064, 1 local (0000)
  2122.     Action routine for:
  2123.         "get in NOUN"
  2124.         "go throug NOUN"
  2125.         "enter NOUN"
  2126.  
  2127.        TEST_ATTR       G16,#08 [FALSE] L0001
  2128.        CALL            R0067 -> -(SP)
  2129.        POP             
  2130.        RTRUE           
  2131. L0001: GET_PARENT      G08 -> L00
  2132.        JE              L00,G00 [TRUE] L0002
  2133.        PRINT           "But you're already in the "
  2134.        PRINT_OBJ       L00
  2135.        PRINT_RET       "."
  2136. L0002: TEST_ATTR       G16,#0f [TRUE] L0003
  2137.        PRINT_RET       "A surreal idea."
  2138. L0003: GET_PARENT      G16 -> L00
  2139.        JE              L00,#01 [FALSE] L0004
  2140.        CALL            R0067 -> -(SP)
  2141.        POP             
  2142.        RTRUE           
  2143. L0004: JE              L00,G00 [TRUE] L0005
  2144.        PRINT_RET       "You can only get into something on the floor."
  2145. L0005: INSERT_OBJ      G08,G16
  2146.        PRINT           "You get into the "
  2147.        PRINT_OBJ       G16
  2148.        PRINT           ".
  2149. "
  2150.        CALL            R0069 (G16) -> -(SP)
  2151.        POP             
  2152.        RTRUE           
  2153.  
  2154. Routine R0065, 0 locals ()
  2155.     Action routine for:
  2156.         "get out"
  2157.         "stand"
  2158.         "stand up"
  2159.         "exit"
  2160.  
  2161.        GET_PARENT      G08 -> -(SP)
  2162.        JE              (SP)+,G00 [FALSE] L0001
  2163.        PRINT_RET       "But you're aren't in anything at the moment."
  2164. L0001: INSERT_OBJ      G08,G00
  2165.        PRINT           "You are on your own two feet again.
  2166. "
  2167.        CALL            R0073 (#01) -> -(SP)
  2168.        POP             
  2169.        CALL            R0030 -> -(SP)
  2170.        POP             
  2171.        RTRUE           
  2172.  
  2173. Routine R0066, 0 locals ()
  2174.     Action routine for:
  2175.         "go"
  2176.  
  2177.        PRINT_RET       "You'll have to say which compass direction to go in."
  2178.  
  2179. Routine R0067, 4 locals (0000, 0000, 0000, 0000)
  2180.     Action routine for:
  2181.         "go NOUN"
  2182.  
  2183.        STORE           L03,#00
  2184.        GET_PARENT      G08 -> L00
  2185.        JE              G00,#0c [TRUE] L0002
  2186.        JE              L00,G00 [TRUE] L0002
  2187.        GET_PROP        L00,#05 -> L01
  2188.        JE              L01,#ffff [TRUE] L0001
  2189.        CALL            L01 -> -(SP)
  2190.        JE              (SP)+,#00 [TRUE] L0001
  2191.        STORE           L03,L00
  2192.        GET_PARENT      L00 -> L00
  2193.        JUMP            L0002
  2194. L0001: PRINT           "You'll have to get out of "
  2195.        CALL            R0040 (L00) -> -(SP)
  2196.        POP             
  2197.        PRINT_RET       " first."
  2198. L0002: GET_PROP        G16,#08 -> -(SP)
  2199.        GET_PROP        L00,(SP)+ -> L01
  2200.        JE              L01,#00 [FALSE] L0003
  2201.        GET_PROP        L00,#17 -> L00
  2202.        PRINT_PADDR     L00
  2203.        NEW_LINE        
  2204.        RFALSE          
  2205. L0003: TEST_ATTR       L01,#08 [FALSE] L0008
  2206.        TEST_ATTR       L01,#01 [FALSE] L0004
  2207.        PRINT_RET       "You can't go that way."
  2208. L0004: TEST_ATTR       L01,#0c [TRUE] L0007
  2209.        JE              G16,#0a [FALSE] L0005
  2210.        PRINT           "You are unable to climb "
  2211.        CALL            R0040 (L01) -> -(SP)
  2212.        POP             
  2213.        PRINT_RET       "."
  2214. L0005: JE              G16,#0b [FALSE] L0006
  2215.        PRINT           "You are unable to descend "
  2216.        CALL            R0040 (L01) -> -(SP)
  2217.        POP             
  2218.        PRINT_RET       "."
  2219. L0006: PRINT           "You can't, since "
  2220.        CALL            R0040 (L01) -> -(SP)
  2221.        POP             
  2222.        PRINT_RET       " is in the way."
  2223. L0007: GET_PROP        L01,#13 -> L01
  2224.        JE              L01,#00 [FALSE] L0008
  2225.        PRINT           "You can't, since "
  2226.        CALL            R0040 (L01) -> -(SP)
  2227.        POP             
  2228.        PRINT_RET       " leads nowhere."
  2229. L0008: JE              L03,#00 [FALSE] L0009
  2230.        INSERT_OBJ      G08,L01
  2231. L0009: JE              L03,#00 [TRUE] L0010
  2232.        INSERT_OBJ      L03,L01
  2233. L0010: CALL            R0038 (L01) -> L02
  2234.        JE              L02,#00 [TRUE] L0011
  2235.        STORE           G00,L01
  2236.        STORE           G09,#01
  2237. L0011: JE              L02,#00 [FALSE] L0013
  2238.        JE              G00,#0c [FALSE] L0012
  2239.        CALL            R0137 -> -(SP)
  2240.        POP             
  2241. L0012: STORE           G00,#0c
  2242.        STORE           G09,#00
  2243. L0013: CALL            R0031 -> -(SP)
  2244.        JE              #01,(SP)+ [FALSE] L0014
  2245.        RTRUE           
  2246. L0014: CALL            R0073 (#01) -> -(SP)
  2247.        POP             
  2248.        RTRUE           
  2249.  
  2250. Routine R0068, 5 locals (0000, 0000, 0000, 0000, 0000)
  2251.  
  2252.        NEW_LINE        
  2253.        PRINT           "On "
  2254.        CALL            R0040 (L00) -> -(SP)
  2255.        POP             
  2256.        STORE           L04,#00
  2257.        GET_CHILD       L00 -> L02 [TRUE] L0001
  2258. L0001: JE              L02,#00 [TRUE] L0003
  2259.        GET_SIBLING     L02 -> L02 [TRUE] L0002
  2260. L0002: INC             L04
  2261.        JUMP            L0001
  2262. L0003: JE              L04,#01 [FALSE] L0004
  2263.        PRINT           " is "
  2264.        JUMP            L0005
  2265. L0004: PRINT           " are "
  2266. L0005: GET_CHILD       L00 -> L01 [TRUE] L0006
  2267. L0006: JE              L01,#00 [TRUE] L0010
  2268.        ADD             L03,#01 -> L03
  2269.        CALL            R0075 (L01,#01) -> -(SP)
  2270.        POP             
  2271.        SUB             L04,#01 -> -(SP)
  2272.        JE              L03,(SP)+ [FALSE] L0007
  2273.        PRINT           " and "
  2274. L0007: SUB             L04,#01 -> -(SP)
  2275.        JL              L03,(SP)+ [FALSE] L0008
  2276.        PRINT           ", "
  2277. L0008: GET_SIBLING     L01 -> L01 [TRUE] L0009
  2278. L0009: JUMP            L0006
  2279. L0010: PRINT           ".
  2280. "
  2281.        RTRUE           
  2282.  
  2283. Routine R0069, 6 locals (0000, 0000, 0000, 0000, 0000, 0000)
  2284.  
  2285.        GET_CHILD       L00 -> L01 [TRUE] L0001
  2286. L0001: STORE           L02,#00
  2287. L0002: JE              L01,#00 [TRUE] L0011
  2288.        TEST_ATTR       L01,#01 [TRUE] L0009
  2289.        TEST_ATTR       L01,#10 [TRUE] L0007
  2290.        SET_ATTR        L01,#0e
  2291.        INC             L02
  2292.        TEST_ATTR       L01,#07 [TRUE] L0006
  2293.        GET_PROP        L01,#04 -> L03
  2294.        TEST_ATTR       L01,#08 [FALSE] L0003
  2295.        TEST_ATTR       L01,#0c [TRUE] L0003
  2296.        GET_PROP        L01,#14 -> L03
  2297. L0003: TEST_ATTR       L01,#16 [FALSE] L0004
  2298.        TEST_ATTR       L01,#17 [TRUE] L0004
  2299.        GET_PROP        L01,#14 -> L03
  2300. L0004: JE              L03,#00 [TRUE] L0006
  2301.        NEW_LINE        
  2302.        PRINT_PADDR     L03
  2303.        NEW_LINE        
  2304.        STORE           L04,#01
  2305.        CLEAR_ATTR      L01,#0e
  2306.        DEC             L02
  2307.        TEST_ATTR       L01,#0a [FALSE] L0006
  2308.        GET_CHILD       L01 -> -(SP) [TRUE] L0005
  2309. L0005: JE              (SP)+,#00 [TRUE] L0006
  2310.        CALL            R0068 (L01) -> -(SP)
  2311.        POP             
  2312. L0006: JUMP            L0009
  2313. L0007: TEST_ATTR       L01,#0a [FALSE] L0009
  2314.        GET_CHILD       L01 -> -(SP) [TRUE] L0008
  2315. L0008: JE              (SP)+,#00 [TRUE] L0009
  2316.        CALL            R0068 (L01) -> -(SP)
  2317.        POP             
  2318. L0009: GET_SIBLING     L01 -> L01 [TRUE] L0010
  2319. L0010: JUMP            L0002
  2320. L0011: JE              L02,#00 [FALSE] L0012
  2321.        RTRUE           
  2322. L0012: NEW_LINE        
  2323.        JE              L00,G00 [TRUE] L0013
  2324.        PRINT           "In "
  2325.        CALL            R0040 (L00) -> -(SP)
  2326.        POP             
  2327.        PRINT           " you"
  2328. L0013: JE              L00,G00 [FALSE] L0014
  2329.        PRINT           "You"
  2330. L0014: PRINT           " can "
  2331.        JE              L04,#01 [FALSE] L0015
  2332.        PRINT           "also "
  2333. L0015: PRINT           "see "
  2334.        STORE           L05,#00
  2335.        GET_CHILD       L00 -> L01 [TRUE] L0016
  2336. L0016: JE              L01,#00 [TRUE] L0020
  2337.        TEST_ATTR       L01,#0e [FALSE] L0018
  2338.        ADD             L05,#01 -> L05
  2339.        CALL            R0075 (L01,#01) -> -(SP)
  2340.        POP             
  2341.        SUB             L02,#01 -> -(SP)
  2342.        JE              L05,(SP)+ [FALSE] L0017
  2343.        PRINT           " and "
  2344. L0017: SUB             L02,#01 -> -(SP)
  2345.        JL              L05,(SP)+ [FALSE] L0018
  2346.        PRINT           ", "
  2347. L0018: GET_SIBLING     L01 -> L01 [TRUE] L0019
  2348. L0019: JUMP            L0016
  2349. L0020: JE              L00,G00 [TRUE] L0021
  2350.        PRINT           ".
  2351. "
  2352. L0021: JE              L00,G00 [FALSE] L0022
  2353.        PRINT           " here.
  2354. "
  2355. L0022: RTRUE           
  2356.  
  2357. Routine R0070, 0 locals ()
  2358.     Action routine for:
  2359.         "brief"
  2360.  
  2361.        STORE           G0e,#01
  2362.        PRINT_PADDR     S001
  2363.        PRINT_RET       " is now in its normal "brief" printing mode, which
  2364. gives long descriptions of places never before visited and short descriptions
  2365. otherwise."
  2366.  
  2367. Routine R0071, 0 locals ()
  2368.     Action routine for:
  2369.         "long"
  2370.  
  2371.        STORE           G0e,#02
  2372.        PRINT_PADDR     S001
  2373.        PRINT_RET       " is now in its "verbose" mode, which always gives long
  2374. descriptions of locations (even if you've been there before)."
  2375.  
  2376. Routine R0072, 0 locals ()
  2377.     Action routine for:
  2378.         "short"
  2379.  
  2380.        STORE           G0e,#03
  2381.        PRINT_PADDR     S001
  2382.        PRINT_RET       " is now in its "superbrief" mode, which always gives
  2383. short descriptions of locations (even if you haven't been there before)."
  2384.  
  2385. Routine R0073, 3 locals (0000, 0000, 0000)
  2386.     Action routine for:
  2387.         "l"
  2388.  
  2389.        STORE           L02,G00
  2390.        JE              L02,G0f [TRUE] L0001
  2391.        CALL            R0138 -> -(SP)
  2392.        POP             
  2393. L0001: NEW_LINE        
  2394.        PRINT_OBJ       G00
  2395.        GET_PARENT      G08 -> L01
  2396.        JE              G00,#0c [TRUE] L0002
  2397.        JE              L01,G00 [TRUE] L0002
  2398.        PRINT           " (in the "
  2399.        PRINT_OBJ       L01
  2400.        PRINT           ")"
  2401.        STORE           L02,L01
  2402. L0002: NEW_LINE        
  2403.        JE              L00,#01 [TRUE] L0003
  2404.        JUMP            L0006
  2405. L0003: JE              G0e,#02 [FALSE] L0004
  2406.        JUMP            L0006
  2407. L0004: JE              G0e,#03 [FALSE] L0005
  2408.        JUMP            L0007
  2409. L0005: TEST_ATTR       G00,#13 [FALSE] L0006
  2410.        JE              L00,#01 [FALSE] L0006
  2411.        JUMP            L0007
  2412. L0006: GET_PROP        G00,#02 -> L01
  2413.        PRINT_PADDR     L01
  2414.        NEW_LINE        
  2415. L0007: TEST_ATTR       G00,#13 [TRUE] L0008
  2416.        SET_ATTR        G00,#13
  2417.        TEST_ATTR       G00,#1b [FALSE] L0008
  2418.        ADD             G06,#05 -> G06
  2419.        ADD             G0c,#05 -> G0c
  2420. L0008: JE              L02,G00 [TRUE] L0009
  2421.        CALL            R0069 (G00) -> -(SP)
  2422.        POP             
  2423. L0009: CALL            R0069 (L02) -> -(SP)
  2424.        POP             
  2425.        CALL            R0139 -> -(SP)
  2426.        POP             
  2427.        STORE           G15,#1d
  2428.        CALL            R0031 -> -(SP)
  2429.        JE              #01,(SP)+ [FALSE] L0010
  2430.        RTRUE           
  2431. L0010: RTRUE           
  2432.  
  2433. Routine R0074, 1 local (0000)
  2434.     Action routine for:
  2435.         "l at NOUN"
  2436.         "check NOUN"
  2437.  
  2438.        JE              G00,#0c [FALSE] L0001
  2439.        PRINT_RET       "Darkness, noun.  An absence of light to see by."
  2440. L0001: JE              G16,G08 [FALSE] L0002
  2441.        PRINT_RET       "As good-looking as ever."
  2442. L0002: TEST_ATTR       G16,#1a [FALSE] L0003
  2443.        CALL            R0123 -> -(SP)
  2444.        POP             
  2445.        RFALSE          
  2446. L0003: GET_PROP        G16,#02 -> L00
  2447.        JE              L00,#00 [FALSE] L0005
  2448.        TEST_ATTR       G16,#09 [FALSE] L0004
  2449.        CALL            R0123 -> -(SP)
  2450.        POP             
  2451.        RFALSE          
  2452. L0004: PRINT           "You see nothing special about "
  2453.        CALL            R0040 (G16) -> -(SP)
  2454.        POP             
  2455.        PRINT_RET       "."
  2456. L0005: PRINT_PADDR     L00
  2457.        NEW_LINE        
  2458.        TEST_ATTR       G16,#16 [FALSE] L0007
  2459.        PRINT           "It is currently switched "
  2460.        TEST_ATTR       G16,#17 [FALSE] L0006
  2461.        PRINT           "on.
  2462. "
  2463. L0006: TEST_ATTR       G16,#17 [TRUE] L0007
  2464.        PRINT           "off.
  2465. "
  2466. L0007: CALL            R0030 -> -(SP)
  2467.        JE              #01,(SP)+ [FALSE] L0008
  2468.        RTRUE           
  2469. L0008: RTRUE           
  2470.  
  2471. Routine R0075, 7 locals (0000, 0000, 0000, 0000, 0000, 0000, 0000)
  2472.  
  2473.        JE              L01,#02 [TRUE] L0001
  2474.        CALL            R0039 (L00) -> -(SP)
  2475.        POP             
  2476. L0001: JE              L01,#02 [FALSE] L0002
  2477.        CALL            R0040 (L00) -> -(SP)
  2478.        POP             
  2479. L0002: TEST_ATTR       L00,#00 [FALSE] L0003
  2480.        PRINT           " (providing light)"
  2481. L0003: TEST_ATTR       L00,#02 [FALSE] L0004
  2482.        PRINT           " (being worn)"
  2483. L0004: TEST_ATTR       L00,#09 [FALSE] L0020
  2484.        JE              L01,#02 [TRUE] L0005
  2485.        PRINT           " (which is "
  2486. L0005: JE              L01,#02 [FALSE] L0006
  2487.        PRINT           ", which is "
  2488. L0006: TEST_ATTR       L00,#0c [TRUE] L0007
  2489.        PRINT           "closed"
  2490.        TEST_ATTR       L00,#0b [FALSE] L0007
  2491.        JUMP            L0019
  2492. L0007: TEST_ATTR       L00,#0c [FALSE] L0008
  2493.        PRINT           "open"
  2494. L0008: GET_CHILD       L00 -> L02 [TRUE] L0009
  2495. L0009: JE              L02,#00 [FALSE] L0010
  2496.        PRINT           " but empty"
  2497.        JUMP            L0019
  2498. L0010: JE              L01,#00 [FALSE] L0011
  2499.        STORE           L06,#01
  2500.        JUMP            L0019
  2501. L0011: PRINT           " and contains "
  2502.        STORE           L05,#00
  2503.        STORE           L03,L02
  2504. L0012: JE              L03,#00 [TRUE] L0014
  2505.        GET_SIBLING     L03 -> L03 [TRUE] L0013
  2506. L0013: INC             L05
  2507.        JUMP            L0012
  2508. L0014: STORE           L04,#00
  2509. L0015: JE              L02,#00 [TRUE] L0019
  2510.        INC             L04
  2511.        CALL            R0075 (L02,#01) -> -(SP)
  2512.        POP             
  2513.        SUB             L05,#01 -> -(SP)
  2514.        JE              L04,(SP)+ [FALSE] L0016
  2515.        PRINT           " and "
  2516. L0016: SUB             L05,#01 -> -(SP)
  2517.        JL              L04,(SP)+ [FALSE] L0017
  2518.        PRINT           ", "
  2519. L0017: GET_SIBLING     L02 -> L02 [TRUE] L0018
  2520. L0018: JUMP            L0015
  2521. L0019: JE              L01,#02 [TRUE] L0020
  2522.        PRINT           ")"
  2523. L0020: TEST_ATTR       L00,#0a [FALSE] L0035
  2524.        GET_CHILD       L00 -> L02 [TRUE] L0021
  2525. L0021: JE              L02,#00 [TRUE] L0035
  2526.        JE              L01,#02 [TRUE] L0022
  2527.        PRINT           " (on which "
  2528. L0022: JE              L01,#02 [FALSE] L0023
  2529.        PRINT           ", on top of which "
  2530. L0023: JE              L01,#00 [FALSE] L0024
  2531.        STORE           L06,#01
  2532.        JUMP            L0034
  2533. L0024: STORE           L05,#00
  2534.        STORE           L03,L02
  2535. L0025: JE              L03,#00 [TRUE] L0027
  2536.        GET_SIBLING     L03 -> L03 [TRUE] L0026
  2537. L0026: INC             L05
  2538.        JUMP            L0025
  2539. L0027: JE              L05,#01 [FALSE] L0028
  2540.        PRINT           "is "
  2541.        JUMP            L0029
  2542. L0028: PRINT           "are "
  2543. L0029: STORE           L04,#00
  2544. L0030: JE              L02,#00 [TRUE] L0034
  2545.        INC             L04
  2546.        CALL            R0075 (L02,#01) -> -(SP)
  2547.        POP             
  2548.        SUB             L05,#01 -> -(SP)
  2549.        JE              L04,(SP)+ [FALSE] L0031
  2550.        PRINT           " and "
  2551. L0031: SUB             L05,#01 -> -(SP)
  2552.        JL              L04,(SP)+ [FALSE] L0032
  2553.        PRINT           ", "
  2554. L0032: GET_SIBLING     L02 -> L02 [TRUE] L0033
  2555. L0033: JUMP            L0030
  2556. L0034: JE              L01,#02 [TRUE] L0035
  2557.        PRINT           ")"
  2558. L0035: RET             L06
  2559.  
  2560. Routine R0076, 0 locals ()
  2561.     Action routine for:
  2562.         "feed CREATURE MULTIHELD"
  2563.         "feed MULTIHELD to CREATURE"
  2564.         "feed over MULTIHELD to CREATURE"
  2565.  
  2566.        CALL            R0029 (G17,#19) -> -(SP)
  2567.        JE              (SP)+,#00 [TRUE] L0001
  2568.        RFALSE          
  2569. L0001: PRINT_OBJ       G17
  2570.        PRINT_RET       " doesn't seem interested.
  2571. "
  2572.  
  2573. Routine R0077, 1 local (0000)
  2574.     Action routine for:
  2575.         "open NOUN with HELD"
  2576.         "unlock NOUN with HELD"
  2577.  
  2578.        TEST_ATTR       G16,#14 [TRUE] L0001
  2579.        PRINT_RET       "I can't see how to unlock that."
  2580. L0001: TEST_ATTR       G16,#15 [TRUE] L0002
  2581.        PRINT_RET       "It is in fact unlocked now."
  2582. L0002: GET_PROP        G16,#16 -> L00
  2583.        JE              L00,G17 [TRUE] L0003
  2584.        PRINT_RET       "That doesn't seem to fit the lock."
  2585. L0003: CLEAR_ATTR      G16,#15
  2586.        CALL            R0030 -> -(SP)
  2587.        JE              #01,(SP)+ [FALSE] L0004
  2588.        RTRUE           
  2589. L0004: PRINT           "You unlock the "
  2590.        PRINT_OBJ       G16
  2591.        PRINT           ".
  2592. "
  2593.        RTRUE           
  2594.  
  2595. Routine R0078, 1 local (0000)
  2596.     Action routine for:
  2597.         "lock NOUN with HELD"
  2598.  
  2599.        TEST_ATTR       G16,#14 [TRUE] L0001
  2600.        PRINT_RET       "I can't see how to lock that."
  2601. L0001: TEST_ATTR       G16,#15 [FALSE] L0002
  2602.        PRINT_RET       "It is in fact locked now."
  2603. L0002: TEST_ATTR       G16,#0c [FALSE] L0003
  2604.        PRINT_RET       "First you'll have to close it."
  2605. L0003: GET_PROP        G16,#16 -> L00
  2606.        JE              L00,G17 [TRUE] L0004
  2607.        PRINT_RET       "That doesn't seem to fit the lock."
  2608. L0004: SET_ATTR        G16,#15
  2609.        CALL            R0030 -> -(SP)
  2610.        JE              #01,(SP)+ [FALSE] L0005
  2611.        RTRUE           
  2612. L0005: PRINT           "You lock the "
  2613.        PRINT_OBJ       G16
  2614.        PRINT           ".
  2615. "
  2616.        RTRUE           
  2617.  
  2618. Routine R0079, 0 locals ()
  2619.     Action routine for:
  2620.         "rotate NOUN on"
  2621.         "rotate on NOUN"
  2622.         "switch NOUN"
  2623.         "switch NOUN on"
  2624.         "switch on NOUN"
  2625.  
  2626.        TEST_ATTR       G16,#16 [TRUE] L0001
  2627.        PRINT_RET       "That's not something you can switch."
  2628. L0001: TEST_ATTR       G16,#17 [FALSE] L0002
  2629.        PRINT_RET       "It's already on."
  2630. L0002: SET_ATTR        G16,#17
  2631.        CALL            R0030 -> -(SP)
  2632.        JE              #01,(SP)+ [FALSE] L0003
  2633.        RTRUE           
  2634. L0003: PRINT           "You switch the "
  2635.        PRINT_OBJ       G16
  2636.        PRINT           " on.
  2637. "
  2638.        RTRUE           
  2639.  
  2640. Routine R0080, 0 locals ()
  2641.     Action routine for:
  2642.         "rotate NOUN off"
  2643.         "rotate off NOUN"
  2644.         "switch NOUN off"
  2645.         "switch off NOUN"
  2646.  
  2647.        TEST_ATTR       G16,#16 [TRUE] L0001
  2648.        PRINT_RET       "That's not something you can switch."
  2649. L0001: TEST_ATTR       G16,#17 [TRUE] L0002
  2650.        PRINT_RET       "It's already off."
  2651. L0002: CLEAR_ATTR      G16,#17
  2652.        CALL            R0030 -> -(SP)
  2653.        JE              #01,(SP)+ [FALSE] L0003
  2654.        RTRUE           
  2655. L0003: PRINT           "You switch the "
  2656.        PRINT_OBJ       G16
  2657.        PRINT           " off.
  2658. "
  2659.        RTRUE           
  2660.  
  2661. Routine R0081, 0 locals ()
  2662.     Action routine for:
  2663.         "open NOUN"
  2664.  
  2665.        TEST_ATTR       G16,#0d [TRUE] L0001
  2666.        PRINT_RET       "That's not something you can open."
  2667. L0001: TEST_ATTR       G16,#15 [FALSE] L0002
  2668.        PRINT_RET       "It seems to be locked."
  2669. L0002: TEST_ATTR       G16,#0c [FALSE] L0003
  2670.        PRINT_RET       "It's already open."
  2671. L0003: SET_ATTR        G16,#0c
  2672.        CALL            R0030 -> -(SP)
  2673.        JE              #01,(SP)+ [FALSE] L0004
  2674.        RTRUE           
  2675. L0004: PRINT           "You open the "
  2676.        PRINT_OBJ       G16
  2677.        PRINT           ".
  2678. "
  2679.        RTRUE           
  2680.  
  2681. Routine R0082, 0 locals ()
  2682.     Action routine for:
  2683.         "close NOUN"
  2684.  
  2685.        TEST_ATTR       G16,#0d [TRUE] L0001
  2686.        PRINT_RET       "That's not something you can close."
  2687. L0001: TEST_ATTR       G16,#0c [TRUE] L0002
  2688.        PRINT_RET       "It's already closed."
  2689. L0002: CLEAR_ATTR      G16,#0c
  2690.        CALL            R0030 -> -(SP)
  2691.        JE              #01,(SP)+ [FALSE] L0003
  2692.        RTRUE           
  2693. L0003: PRINT           "You close the "
  2694.        PRINT_OBJ       G16
  2695.        PRINT           ".
  2696. "
  2697.        RTRUE           
  2698.  
  2699. Routine R0083, 0 locals ()
  2700.     Action routine for:
  2701.         "get off HELD"
  2702.         "remove HELD"
  2703.  
  2704.        TEST_ATTR       G16,#02 [TRUE] L0001
  2705.        PRINT_RET       "You're not wearing that."
  2706. L0001: CLEAR_ATTR      G16,#02
  2707.        CALL            R0030 -> -(SP)
  2708.        JE              #01,(SP)+ [FALSE] L0002
  2709.        RTRUE           
  2710. L0002: PRINT           "You take off the "
  2711.        PRINT_OBJ       G16
  2712.        PRINT           ".
  2713. "
  2714.        RTRUE           
  2715.  
  2716. Routine R0084, 1 local (0000)
  2717.     Action routine for:
  2718.         "wear HELD"
  2719.         "put on HELD"
  2720.  
  2721.        TEST_ATTR       G16,#03 [TRUE] L0001
  2722.        PRINT_RET       "You can't wear that!"
  2723. L0001: GET_PARENT      G16 -> L00
  2724.        JE              L00,G08 [TRUE] L0002
  2725.        PRINT_RET       "You're not holding that!"
  2726. L0002: TEST_ATTR       G16,#02 [FALSE] L0003
  2727.        PRINT_RET       "You're already wearing that!"
  2728. L0003: SET_ATTR        G16,#02
  2729.        CALL            R0030 -> -(SP)
  2730.        JE              #01,(SP)+ [FALSE] L0004
  2731.        RTRUE           
  2732. L0004: PRINT           "You put on the "
  2733.        PRINT_OBJ       G16
  2734.        PRINT           ".
  2735. "
  2736.        RTRUE           
  2737.  
  2738. Routine R0085, 0 locals ()
  2739.     Action routine for:
  2740.         "eat HELD"
  2741.  
  2742.        TEST_ATTR       G16,#19 [TRUE] L0001
  2743.        PRINT_RET       "No, it's plainly inedible."
  2744. L0001: REMOVE_OBJ      G16
  2745.        CALL            R0030 -> -(SP)
  2746.        JE              #01,(SP)+ [FALSE] L0002
  2747.        RTRUE           
  2748. L0002: PRINT           "You eat the "
  2749.        PRINT_OBJ       G16
  2750.        PRINT_RET       ".  Not bad."
  2751.  
  2752. Routine R0086, 0 locals ()
  2753.     Action routine for:
  2754.         "y"
  2755.         "no"
  2756.  
  2757.        PRINT_RET       "That was a rhetorical question."
  2758.  
  2759. Routine R0087, 0 locals ()
  2760.     Action routine for:
  2761.         "burn NOUN"
  2762.         "burn NOUN with HELD"
  2763.  
  2764.        PRINT_RET       "In this game, arson is (usually) forbidden."
  2765.  
  2766. Routine R0088, 0 locals ()
  2767.     Action routine for:
  2768.         "pray"
  2769.  
  2770.        PRINT_RET       "Spooky!  For a moment there, a deep voice seemed       
  2771.       to say "you're on your own"."
  2772.  
  2773. Routine R0089, 0 locals ()
  2774.     Action routine for:
  2775.         "awake"
  2776.         "awake up"
  2777.  
  2778.        PRINT_RET       "The dreadful truth is, this is not a dream."
  2779.  
  2780. Routine R0090, 0 locals ()
  2781.     Action routine for:
  2782.         "awake CREATURE"
  2783.         "awake up CREATURE"
  2784.  
  2785.        PRINT_RET       "That seems unnecessary."
  2786.  
  2787. Routine R0091, 0 locals ()
  2788.     Action routine for:
  2789.         "embrac CREATURE"
  2790.  
  2791.        CALL            R0029 (G16,#42) -> -(SP)
  2792.        JE              (SP)+,#00 [TRUE] L0001
  2793.        RFALSE          
  2794. L0001: PRINT_RET       "Keep your mind on the game."
  2795.  
  2796. Routine R0092, 0 locals ()
  2797.     Action routine for:
  2798.         "think"
  2799.  
  2800.        PRINT_RET       "What a good idea."
  2801.  
  2802. Routine R0093, 0 locals ()
  2803.     Action routine for:
  2804.         "smell"
  2805.         "smell NOUN"
  2806.  
  2807.        PRINT_RET       "You smell nothing unexpected."
  2808.  
  2809. Routine R0094, 0 locals ()
  2810.     Action routine for:
  2811.         "hear"
  2812.         "hear NOUN"
  2813.         "hear to NOUN"
  2814.  
  2815.        PRINT_RET       "You hear nothing unexpected."
  2816.  
  2817. Routine R0095, 0 locals ()
  2818.     Action routine for:
  2819.         "taste"
  2820.  
  2821.        PRINT_RET       "You taste nothing unexpected."
  2822.  
  2823. Routine R0096, 0 locals ()
  2824.     Action routine for:
  2825.         "feel"
  2826.  
  2827.        PRINT_RET       "You feel nothing unexpected."
  2828.  
  2829. Routine R0097, 0 locals ()
  2830.     Action routine for:
  2831.         "feel NOUN"
  2832.  
  2833.        TEST_ATTR       G16,#04 [FALSE] L0001
  2834.        PRINT_RET       "Keep your hands to yourself!"
  2835. L0001: PRINT_RET       "You feel nothing unexpected."
  2836.  
  2837. Routine R0098, 0 locals ()
  2838.  
  2839.        PRINT_RET       "The ground is unsuitable for digging here."
  2840.  
  2841. Routine R0099, 0 locals ()
  2842.     Action routine for:
  2843.         "chop NOUN"
  2844.  
  2845.        PRINT_RET       "In this game, cutting things up is never helpful."
  2846.  
  2847. Routine R0100, 0 locals ()
  2848.     Action routine for:
  2849.         "hop"
  2850.  
  2851.        PRINT_RET       "You jump on the spot, fruitlessly."
  2852.  
  2853. Routine R0101, 0 locals ()
  2854.     Action routine for:
  2855.         "hop over NOUN"
  2856.  
  2857.        PRINT_RET       "In this game, it is never useful to jump over things."
  2858.  
  2859. Routine R0102, 0 locals ()
  2860.     Action routine for:
  2861.         "attach NOUN"
  2862.         "attach NOUN to SPECIAL"
  2863.  
  2864.        PRINT_RET       "In this game, it is never useful to tie things."
  2865.  
  2866. Routine R0103, 0 locals ()
  2867.     Action routine for:
  2868.         "drink water"
  2869.         "drink NOUN"
  2870.  
  2871.        PRINT_RET       "There's nothing suitable to drink here."
  2872.  
  2873. Routine R0104, 0 locals ()
  2874.     Action routine for:
  2875.         "fill NOUN"
  2876.  
  2877.        PRINT_RET       "But there's no water here to carry."
  2878.  
  2879. Routine R0105, 0 locals ()
  2880.     Action routine for:
  2881.         "sorry"
  2882.  
  2883.        PRINT_RET       "Oh, don't apologise."
  2884.  
  2885. Routine R0106, 0 locals ()
  2886.     Action routine for:
  2887.         "damn"
  2888.         "damn SPECIAL"
  2889.  
  2890.        PRINT_RET       "Disgraceful!  Once upon a time adventurers had moral
  2891. standards."
  2892.  
  2893. Routine R0107, 0 locals ()
  2894.     Action routine for:
  2895.         "bother"
  2896.         "bother SPECIAL"
  2897.  
  2898.        PRINT_RET       "Quite."
  2899.  
  2900. Routine R0108, 0 locals ()
  2901.     Action routine for:
  2902.         "attack NOUN"
  2903.  
  2904.        TEST_ATTR       G16,#04 [FALSE] L0001
  2905.        CALL            R0029 (G16,#32) -> -(SP)
  2906.        JE              (SP)+,#00 [TRUE] L0001
  2907.        RFALSE          
  2908. L0001: PRINT_RET       "Violence isn't the answer, you know."
  2909.  
  2910. Routine R0109, 0 locals ()
  2911.     Action routine for:
  2912.         "dive"
  2913.  
  2914.        PRINT_RET       "There's not enough water to swim in."
  2915.  
  2916. Routine R0110, 0 locals ()
  2917.     Action routine for:
  2918.         "swing NOUN"
  2919.         "swing on NOUN"
  2920.  
  2921.        PRINT_RET       "There's nothing sensible to swing here."
  2922.  
  2923. Routine R0111, 0 locals ()
  2924.     Action routine for:
  2925.         "blow HELD"
  2926.  
  2927.        PRINT_RET       "You can't usefully blow that."
  2928.  
  2929. Routine R0112, 0 locals ()
  2930.     Action routine for:
  2931.         "polish NOUN"
  2932.  
  2933.        PRINT_RET       "You achieve nothing by this."
  2934.  
  2935. Routine R0113, 0 locals ()
  2936.     Action routine for:
  2937.         "set NOUN"
  2938.  
  2939.        PRINT_RET       "No, you can't set that."
  2940.  
  2941. Routine R0114, 0 locals ()
  2942.     Action routine for:
  2943.         "wave"
  2944.  
  2945.        PRINT_RET       "You wave, feeling foolish."
  2946.  
  2947. Routine R0115, 1 local (0000)
  2948.     Action routine for:
  2949.         "wave NOUN"
  2950.  
  2951.        GET_PARENT      G16 -> L00
  2952.        JE              L00,G08 [TRUE] L0001
  2953.        PRINT_RET       "But you aren't holding it."
  2954. L0001: PRINT           "You look ridiculous waving the "
  2955.        PRINT_OBJ       G16
  2956.        PRINT_RET       "."
  2957.  
  2958. Routine R0116, 0 locals ()
  2959.     Action routine for:
  2960.         "drag NOUN"
  2961.  
  2962.        TEST_ATTR       G16,#11 [FALSE] L0001
  2963.        PRINT_RET       "It is fixed in place."
  2964. L0001: TEST_ATTR       G16,#10 [FALSE] L0002
  2965.        PRINT_RET       "You are unable to."
  2966. L0002: PRINT_RET       "Nothing obvious happens."
  2967.  
  2968. Routine R0117, 0 locals ()
  2969.     Action routine for:
  2970.         "clear NOUN"
  2971.  
  2972.        TEST_ATTR       G16,#11 [FALSE] L0001
  2973.        PRINT_RET       "It is fixed in place."
  2974. L0001: TEST_ATTR       G16,#10 [FALSE] L0002
  2975.        PRINT_RET       "You are unable to."
  2976. L0002: PRINT_RET       "Nothing obvious happens."
  2977.  
  2978. Routine R0118, 1 local (0000)
  2979.  
  2980.        GET_PARENT      G17 -> L00
  2981.        JE              L00,#01 [TRUE] L0001
  2982.        PRINT_RET       "That's not a direction."
  2983. L0001: JE              G17,#0a,#0b [FALSE] L0002
  2984.        PRINT_RET       "Not that way you can't."
  2985. L0002: CALL            R0030 -> -(SP)
  2986.        POP             
  2987.        STORE           L00,G16
  2988.        STORE           G16,G17
  2989.        CALL            R0028 (G16,G17,#1b) -> -(SP)
  2990.        POP             
  2991.        REMOVE_OBJ      L00
  2992.        INSERT_OBJ      L00,G00
  2993.        RTRUE           
  2994.  
  2995. Routine R0119, 0 locals ()
  2996.     Action routine for:
  2997.         "clear NOUN NOUN"
  2998.  
  2999.        PRINT_RET       "Is that the best you can think of?"
  3000.  
  3001. Routine R0120, 0 locals ()
  3002.     Action routine for:
  3003.         "rotate NOUN"
  3004.  
  3005.        TEST_ATTR       G16,#11 [FALSE] L0001
  3006.        PRINT_RET       "It is fixed in place."
  3007. L0001: TEST_ATTR       G16,#10 [FALSE] L0002
  3008.        PRINT_RET       "You are unable to."
  3009. L0002: PRINT_RET       "Nothing obvious happens."
  3010.  
  3011. Routine R0121, 0 locals ()
  3012.     Action routine for:
  3013.         "squash NOUN"
  3014.  
  3015.        TEST_ATTR       G16,#04 [FALSE] L0001
  3016.        PRINT_RET       "Keep your hands to yourself."
  3017. L0001: PRINT_RET       "You achieve nothing by this."
  3018.  
  3019. Routine R0122, 0 locals ()
  3020.     Action routine for:
  3021.         "l under NOUN"
  3022.  
  3023.        PRINT_RET       "You find nothing of interest."
  3024.  
  3025. Routine R0123, 0 locals ()
  3026.     Action routine for:
  3027.         "l inside NOUN"
  3028.         "l in NOUN"
  3029.         "l throug NOUN"
  3030.         "search NOUN"
  3031.  
  3032.        TEST_ATTR       G16,#09 [TRUE] L0001
  3033.        PRINT_RET       "You find nothing of interest."
  3034. L0001: TEST_ATTR       G16,#0b [FALSE] L0002
  3035.        TEST_ATTR       G16,#0c [TRUE] L0002
  3036.        PRINT_RET       "You can't see inside, since it is closed."
  3037. L0002: CALL            R0030 -> -(SP)
  3038.        JE              #01,(SP)+ [FALSE] L0003
  3039.        RTRUE           
  3040. L0003: PRINT           "You peer at "
  3041.        CALL            R0075 (G16,#02) -> -(SP)
  3042.        POP             
  3043.        PRINT_RET       "."
  3044.  
  3045. Routine R0124, 0 locals ()
  3046.     Action routine for:
  3047.         "discar HELD at NOUN"
  3048.         "discar HELD agains NOUN"
  3049.  
  3050.        TEST_ATTR       G17,#04 [TRUE] L0001
  3051.        PRINT_RET       "Futile."
  3052. L0001: CALL            R0029 (G17,#18) -> -(SP)
  3053.        JE              (SP)+,#00 [TRUE] L0002
  3054.        RFALSE          
  3055. L0002: PRINT_RET       "You lack the nerve when it comes to the crucial
  3056. moment."
  3057.  
  3058. Routine R0125, 0 locals ()
  3059.     Action routine for:
  3060.         "answer SPECIAL to CREATURE"
  3061.  
  3062.        CALL            R0029 (G17,#34) -> -(SP)
  3063.        JE              (SP)+,#00 [TRUE] L0001
  3064.        RFALSE          
  3065. L0001: PRINT_RET       "No reply."
  3066.  
  3067. Routine R0126, 0 locals ()
  3068.     Action routine for:
  3069.         "buy SPECIAL"
  3070.  
  3071.        PRINT_RET       "Nothing is on sale."
  3072.  
  3073. Routine R0127, 0 locals ()
  3074.     Action routine for:
  3075.         "ask CREATURE about SPECIAL"
  3076.  
  3077.        CALL            R0029 (G16,#35) -> -(SP)
  3078.        JE              (SP)+,#00 [TRUE] L0001
  3079.        RFALSE          
  3080. L0001: PRINT_RET       "No reply."
  3081.  
  3082. Routine R0128, 0 locals ()
  3083.     Action routine for:
  3084.         "sing"
  3085.  
  3086.        RANDOM          #02 -> -(SP)
  3087.        JE              (SP)+,#01 [FALSE] L0001
  3088.        PRINT           "Your yodelling "
  3089.        JUMP            L0002
  3090. L0001: PRINT           "Your singing "
  3091. L0002: PRINT_RET       "is atrocious, if you say so yourself."
  3092.  
  3093. Routine R0129, 0 locals ()
  3094.     Action routine for:
  3095.         "climb NOUN"
  3096.  
  3097.        PRINT_RET       "I don't think much is to be achieved by that."
  3098.  
  3099. Routine R0130, 0 locals ()
  3100.     Action routine for:
  3101.         "wait"
  3102.  
  3103.        CALL            R0031 -> -(SP)
  3104.        JE              #01,(SP)+ [FALSE] L0001
  3105.        RTRUE           
  3106. L0001: PRINT_RET       "Time passes."
  3107.  
  3108. Routine R0131, 0 locals ()
  3109.     Action routine for:
  3110.         "nap"
  3111.  
  3112.        PRINT_RET       "You must have slept yourself out.  You certainly aren't
  3113. drowsy now."
  3114.  
  3115. Routine R0132, 0 locals ()
  3116.  
  3117.        STORE           G00,#0e
  3118.        PRINT           "
  3119.  
  3120.  
  3121.  
  3122.  
  3123. Welcome to the shell...
  3124.  
  3125. "
  3126.        RTRUE           
  3127.  
  3128. Routine R0133, 0 locals ()
  3129.  
  3130.        PRINT           ", earning you the rank of "
  3131.        PRINT_RET       "vacancy."
  3132.  
  3133. Routine R0134, 0 locals ()
  3134.  
  3135.        RFALSE          
  3136.  
  3137. Routine R0135, 0 locals ()
  3138.  
  3139.        RFALSE          
  3140.  
  3141. Routine R0136, 0 locals ()
  3142.  
  3143.        RFALSE          
  3144.  
  3145. Routine R0137, 0 locals ()
  3146.  
  3147.        RFALSE          
  3148.  
  3149. Routine R0138, 0 locals ()
  3150.  
  3151.        RFALSE          
  3152.  
  3153. Routine R0139, 0 locals ()
  3154.  
  3155.        RFALSE          
  3156.  
  3157. Routine R0140, 0 locals ()
  3158.  
  3159.        RFALSE          
  3160.  
  3161. Routine R0141, 0 locals ()
  3162.  
  3163.        RFALSE          
  3164.  
  3165. Routine R0142, 1 local (0000)
  3166.  
  3167.        STORE           L00,#00
  3168.        RFALSE          
  3169.  
  3170. [End of code]
  3171.  
  3172. [Start of text]
  3173.  
  3174. S001: "SHELL"
  3175. S002: "
  3176. An Interactive Skeleton
  3177. Copyright (c) 1993 by (your name here).
  3178. "
  3179. S003: "a"
  3180. S004: "You can't go that way."
  3181. S005: "the"
  3182. S006: "the"
  3183. S007: "the"
  3184. S008: "the"
  3185. S009: "the"
  3186. S010: "the"
  3187. S011: "the"
  3188. S012: "the"
  3189. S013: "the"
  3190. S014: "the"
  3191. S015: "It is pitch dark, and you can't see a thing."
  3192. S016: "the"
  3193. S017: "An empty room."
  3194.  
  3195. [End of text]
  3196.  
  3197. [End of file]
  3198.