Grumpy 9 9.9 ( Mr. Grumpy (PD)1993 by Garry Rowland p 9890&:l(n,n$ )=9901&ua:i$()=""(9909&ua):c(c$,/h,t$)=9910&ua 9900&ua (&0:0:4:1: 2%yco=23678~\:yco,7:o$="" 76r(26):4330:i=126:r(i):i <(t$="I'm Mr. Grumpy, what do you want!" F 1210 P 1010 Zi$=""1530:70F d$1310:wc>01060$ n.wc=1num01550:70F x1710:t$=""100d 80P X Search data for match in s$ bd$:key=key+1:d$=" " l!s$-w(m)+1wc610b o$=s$(w(m+j)) : 1 Change references to self and add apostrophes 4280:d:720 4030:d  o$="" o$(1)" "o$=" "+o$ i=1d:c$:d$ L=1:c$>o$770  j=Ḻo$-c$ 3o$(jj+c$-1)=c$L=j:790:750 j i:   Exchange pronouns etc %j=1o$=d$+o$(c$+1):  #j+c$>o$o$=o$(j-1)+d$: *#o$=o$(j-1)+d$+o$(j+c$): 4 Test if object$ required >0o=t$1-1:t$(o)="*"700: H#o:: o=0 if object not required R Scroll line up \/yco,yco+16:3582 :3582 : f Find reply to exclamation p%4250:1490:970: z Find reply to directive %4230:1490:970:  Find reply to question 4200h:o$=L$4210r 1490:970:  Find reply to sentence 4170J:o$=L$4180T  1490  Insert object 830>:i=o:i=0 7t$(ii+1)="*s"o$(o$)="s"o$=o$(̱o$-1) "o$(o$)=" "o$=o$(̱o$-1) "o$(1)=" "o$=o$(2) 7t$=(t$(i-(i>1))i>1)+o$+t$(i+1):  Get input 'yco<32 860\:860\: &y=yco:5:#4;"{L9887}";  i$=i$() 1#4;y,0;0;i$:d=c("a",i$):  Look for numbers $ num=0 .i=1wc 8's$(w(i))>"/"s$(w(i))<":"1110V Bi: L Get value of an input number Vd=w(i)w(i+1) `4s$(d)>"/"s$(d)<":"d:num=s$(w(i)w(i+1)) j  Print t$ yco<32 860\ 7t$(1)>"Z"t$(1)=(t$(1)-32 ) %l=1:d=t$:#4;"{L9886" t$(l)=" "l"/"i$(i)<":"s$=s$+i$(i) <"i$(i)>"@"i$(i)<"["s$=s$+i$(i) F"i$(i)>"`"i$(i)<"{"s$=s$+i$(i) P$i$(i)="."i=i+2:1400x Z0i$(i)="?"i=i+2:st=2:1400x d0i$(i)="!"i=i+2:st=4:1400x n i1 4050:t=st "d$:s$>d$s$(̱d$)=d$st=t: d$=" "t=t+1 t<51440   Read output string d:d=(*d+1) i=1d:t$:i   Handle null input 4110:1490  Handle numeric input '4130":num<100d1490 '4140,:num>99941506 " 1490 , Skip space padding 6 i=i$ @i$(i+1)" " Ji=i+1:15906 T" Find object using object clues ^L$=o$:wc=1o$=s$: hnum0o$="number": r/key=0: Not used but required by GOSUB |m=wc-11-1 4090:o$="":610b  o$"" m:  Choose parse method &wc>4t$="Ummm...":1210 21630^:o$=""ť*10 >21770  Base reply on sentence type #st=1950:1210 #st=2920:1210 #st=3900:1210 #1950:880p:1210  Base reply on key-phrase m=wc1-1  4270:key=0:o$="" 6610b:o$=""m:1850 :: Object not found 64290: Find programmed response to key phrase i=1r(key):t$:i (*2)t$ &970:1210: 0 Last attempt to find object :@t$="":i$"": Don't bother if there is more input to parse D"d=4050408010 Nm=1wc:d:610b Xo$""1720 bm ld:o$="thought like that" v 1720  Cap I & apostrophies 12 ," i "," I "," im "," I'm "," ive "," I've "," youre "," you're "," youve "," you've "," youll "," you'll "," dont "," don't "," cant "," can't "," wont "," won't "," arent "," aren't "," havent "," haven't ","ouldnt ","ouldn't "  Sentence types 5"i ","you","we","my ","the ","a "," ": Statements `"what ","can","was","are","is ","when ","will ","would","shall ","how ","do "," ": Questions B"let ","don","go ","tell ","put ","say","give"," ": Directives 1"that ","this ","so ","oh "," ": Exclamations T"a ","the ","this ","that ","those ","your ","my ","on ","be "," ": Object clues  Replies to null string )6,"Hello, is anybody in!","Well I'm plugged in, how about you?","Knock knock...","Well isn't that typical. I go to the trouble of getting filling RAM with my wonderful self and you go off on a journey to another planet!","Go on, make my day. Tickle my keys!","Come on, key in or turn off!"  Replies to numbers "4,"Is that your IQ?","Is that your hat size?","I don't believe it, that's the number of times I've crashed this year!","So what's the VAT on that." ,4,"Is that how much it would cost to replace me?","You are old aren't you!","How much is that in shillings and pence?","I could square that for you if I had a bit more RAM." 64,"What do you think I am, a cash machine?","I don't suppose you've got a modem?","How did you guess! That was the very number I was thinking of.","I think that must be the number of watts I've wasted talking to you!" @ Replies to statements J15,"What or where on Earth is a *?","I'm not really interested in *s.","I was last in the que when they were handing out *!","Do you need any batteries for *s","What use is a *?","Is this a new game?","I should find this interesting?","Yes, very interesting.","Is that it!","I'd like * one day","How depressing.","I wish I had *.","Why?","Don't I know it!","Have you anything to add to that?" T4,"Have you got a thing about *?","Yes, I can see *s are really important to you!","So, your world revolves around * does it?","Are your fingers stuck on the keys? Try moving them around a bit!" ^ Replies to questions h14,"Who wants to know?","I don't know anything about *.","Let me see... *, I don't think I understand.","How many points do I score for answering that?","What I know about * is nobodies business!","Who cares!","How should I know?!","Go ask an Atari!","Do I look like anything that would know about a *?","If I were an Amiga, I would know what a * is!","* is happiness, or it is misery!","* is sometimes useful.","No!","I did!" r4,"Still on about *?","Is this important?","One day I'll be able to answer that question!","I really haven't got time for this." | Replies to directives 14,"That's helpful.","I wouldn't like to try that.","I couldn't do that","Not if my life depended on it!","Are you bearing in mind that I'm a computer?","* indeed!","Words fail me!","I might need a bit of help with that one.","I tried that once and blew my RAM!","Nothing would delight me more!","If only I could.","You would have to show me how!","You're asking for a lot aren't you?","Why don't you try that!"  Replies to exclamations t14,"Your vocabulary is most impressive.","Don't blame me!","Is that the best you can do!","Now I won't have any of that.","Think again buster.","Rubbish!","*, indeed!","What is * anyway?","You're telling me!","The world would be a different place without *!","That's what I say.","Is that physically possible?","Oh dear, oh dear.","There's no need to get excited."  Data for key-phrase mode "can you","can i ","i dont","you are","youre","i feel","why dont you","why cant i ","are you","i cant","make ","making ","to ","i want","because","sorry","no ","your ","always","think","like","yes","stupid","silly","not ","who cares"," " 11 ," are "," am "," were "," was "," you "," I "," your "," my "," yourself "," myself "," youre "," I'm "," ive "," you've "," im "," you're "," me "," you "," didnt "," don't "," wont "," will " ž"I should be able to *, but I won't!","I suppose you don't think I can *.","Only if you were as clever as I am.","Who would want to *?","What makes you think I'm *?","And you wish you were * too?","Why don't you *?","Well I do *!","Oh I am sorry, do you often feel *?","Do you enjoy feeling *?","What a good idea. Perhaps I will *!","Maybe I will, maybe I won't","Why should you be able to *?","Why can't you *?" u"No, perhaps it's you that's *!","ME! *?","Why can't you?","So, I can't *!","Why should I make *?","I think I'd rather plot a graph.","Do you expect ME to *!","Offer me a couple of megabytes and I'd * day and night!","Well I want * too!","I wonder if Big Bird has got *?","That explains everything!","That makes sense.","And so you should be!","It's no good being sorry." ֊"What a shame!","Well it's no good moaning to me about it.","What about your *?","I don't want to talk about *.","Really?","I'm not surprised.","Are you sure *?","I think not.","Really, in what way?","I can't stand *s.","I thought so!","I knew you would end up agreeing with me!","What's so silly about *?","We all make mistakes!","Why not *?","I suppose you're going to say that's my fault!" N"So you're not interesed * then?","Well what DO you want to talk about!"," "  Key-phrase data pointers 1,3,7,5,5,9 ,11 ,13 ,15,17,19,19,21,23,25,27,29,31,33!,35#,37%,39',41),41),43+,45- &tPFN print system by Garry Rowland. All following code placed in the public domain. Delete REMs not required. &font 6 qzq}eYRM@ ,5n)5JVk ]i0$9H4(@IR]uf~ &&C fff|fff >bb< fcccccf b`hxh`b b`hxh`` aaaaaa ``````` ?ac> bdhxlfc ``````b ppxY`]`N`N`D` px\NGCA >cc> fff|```|n ``|ffff\|x <  |t 8h````` ``|ffff `````` ``````` mmmmffffxx t|  |fff|``l```xx `````0fffn7 l??d88 d88 h00X00d 80 00 8ll` `X 0HH0 `````` x $|  ,L  8@x ||    xx\x x| p x 8x@  @@@ @`````@ @@  0hh0rw 00b b48< b48,F cs1;@@ aq2: aaaaaa2 < xp8 fff|lff >cc>  ~x|xx 8 ``cl|ng 0x000000 2\2\UF *Q\ ^(w˞V( W˖~" j~ҟg"}\z2}\| ~w~ ~w{ ˾###u t wwwv({L(l ~> 4^Ÿ#^#Vr+s+-˶###[]\"]\;-͙"]\ ~( n4 DM^#~4 {4qpnf|4~wu t 0 (w( ~Owww:}\0vL!Z_DM~#fo ~ 8 ~ N ~w_#~w#~w#u t :}\0, ~??? F('g:~\g.چ "}\ f K}\ͪ"G>w~??? F('w n f ~ ݦ8!~(5~( 5V# n(^#~O/WF(>wF~ݦ#0w 0, 5('$| %|g} o0 |g /g *}\~o"}\8> ; &PFN-LENGTH3 ! >'x% *O\  N#Fx4qp www* \#~ #ʹ3~,(+yq͙qq6 ~o&) (L!8>Z0:_FN`i~#fo(& n&^T^Vsr~( n&R845 N~NFN  J &INPUT +*}\"2*}\>_"}\v:\n( ( (0 8{0:<2U> > > [a\:Oò*:(=2*a\_*"}\:( *a\G~#*}\> "}\&:CASE * \#~ #ʹ3~,(++ Wx~A8w#