ANIMAL.LOGO
FILE INFORMATION
FILENAME(S): ANIMAL.LOGO
FILE TYPE(S): PRG
FILE SIZE: 2.1K
FIRST SEEN: 2025-11-30 21:06:56
APPEARS ON: 1 disk(s)
FILE HASH
70019841304662375e706c952879f8d021b8c8f0b2b8b92bcbc1e25d6ac2266f
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| 0020B | ANIMAL.LOGO | PRG | DuncanTwain | 20 | 11 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 00 20 54 4F 20 49 4E 49 54 49 41 4C 49 5A 45 2E |. TO INITIALIZE.| 00000010: 4B 4E 4F 57 4C 45 44 47 45 0D 20 4D 41 4B 45 20 |KNOWLEDGE. MAKE | 00000020: 22 4B 4E 4F 57 4C 45 44 47 45 20 22 46 49 53 48 |"KNOWLEDGE "FISH| 00000030: 0D 45 4E 44 0D 0D 54 4F 20 41 44 44 2E 41 2E 4F |.END..TO ADD.A.O| 00000040: 52 2E 41 4E 20 3A 57 4F 52 44 0D 20 54 45 53 54 |R.AN :WORD. TEST| 00000050: 20 4D 45 4D 42 45 52 3F 20 28 20 46 49 52 53 54 | MEMBER? ( FIRST| 00000060: 20 3A 57 4F 52 44 20 29 20 5B 41 20 45 20 49 20 | :WORD ) [A E I | 00000070: 4F 20 55 5D 0D 20 49 46 54 52 55 45 20 4F 55 54 |O U]. IFTRUE OUT| 00000080: 50 55 54 20 53 45 4E 54 45 4E 43 45 20 22 41 4E |PUT SENTENCE "AN| 00000090: 20 3A 57 4F 52 44 0D 20 49 46 46 41 4C 53 45 20 | :WORD. IFFALSE | 000000A0: 4F 55 54 50 55 54 20 53 45 4E 54 45 4E 43 45 20 |OUTPUT SENTENCE | 000000B0: 22 41 20 3A 57 4F 52 44 0D 45 4E 44 0D 0D 54 4F |"A :WORD.END..TO| 000000C0: 20 47 45 54 2E 53 4D 41 52 54 45 52 20 3A 57 52 | GET.SMARTER :WR| 000000D0: 4F 4E 47 2E 41 4E 53 57 45 52 0D 20 50 52 49 4E |ONG.ANSWER. PRIN| 000000E0: 54 20 5B 4F 48 20 57 45 4C 4C 2C 20 49 20 57 41 |T [OH WELL, I WA| 000000F0: 53 20 57 52 4F 4E 47 2E 20 57 48 41 54 20 57 41 |S WRONG. WHAT WA| 00000100: 53 20 49 54 3F 5D 0D 20 4D 41 4B 45 20 22 52 49 |S IT?]. MAKE "RI| 00000110: 47 48 54 2E 41 4E 53 57 45 52 20 28 20 4C 41 53 |GHT.ANSWER ( LAS| 00000120: 54 20 52 45 51 55 45 53 54 20 29 0D 20 50 52 49 |T REQUEST ). PRI| 00000130: 4E 54 20 5B 50 4C 45 41 53 45 20 54 59 50 45 20 |NT [PLEASE TYPE | 00000140: 49 4E 20 41 20 51 55 45 53 54 49 4F 4E 20 57 48 |IN A QUESTION WH| 00000150: 4F 53 45 20 41 4E 53 57 45 52 5D 0D 20 50 52 49 |OSE ANSWER]. PRI| 00000160: 4E 54 20 28 20 53 45 20 5B 49 53 20 22 59 45 53 |NT ( SE [IS "YES| 00000170: 22 20 46 4F 52 5D 20 41 44 44 2E 41 2E 4F 52 2E |" FOR] ADD.A.OR.| 00000180: 41 4E 20 3A 52 49 47 48 54 2E 41 4E 53 57 45 52 |AN :RIGHT.ANSWER| 00000190: 20 5B 41 4E 44 5D 20 29 0D 20 50 52 49 4E 54 20 | [AND] ). PRINT | 000001A0: 28 20 53 45 20 5B 22 4E 4F 22 20 46 4F 52 5D 20 |( SE ["NO" FOR] | 000001B0: 41 44 44 2E 41 2E 4F 52 2E 41 4E 20 3A 57 52 4F |ADD.A.OR.AN :WRO| 000001C0: 4E 47 2E 41 4E 53 57 45 52 20 29 0D 20 4D 41 4B |NG.ANSWER ). MAK| 000001D0: 45 20 22 51 55 45 53 54 49 4F 4E 20 52 45 51 55 |E "QUESTION REQU| 000001E0: 45 53 54 0D 20 45 58 50 41 4E 44 2E 4B 4E 4F 57 |EST. EXPAND.KNOW| 000001F0: 4C 45 44 47 45 20 3A 51 55 45 53 54 49 4F 4E 20 |LEDGE :QUESTION | 00000200: 3A 52 49 47 48 54 2E 41 4E 53 57 45 52 20 3A 57 |:RIGHT.ANSWER :W| 00000210: 52 4F 4E 47 2E 41 4E 53 57 45 52 0D 45 4E 44 0D |RONG.ANSWER.END.| 00000220: 0D 54 4F 20 45 58 50 41 4E 44 2E 4B 4E 4F 57 4C |.TO EXPAND.KNOWL| 00000230: 45 44 47 45 20 3A 4E 45 57 2E 51 55 45 53 54 49 |EDGE :NEW.QUESTI| 00000240: 4F 4E 20 3A 59 45 53 2E 41 4E 53 57 45 52 20 3A |ON :YES.ANSWER :| 00000250: 4E 4F 2E 41 4E 53 57 45 52 0D 20 4D 41 4B 45 20 |NO.ANSWER. MAKE | 00000260: 22 4B 4E 4F 57 4C 45 44 47 45 20 52 45 50 4C 41 |"KNOWLEDGE REPLA| 00000270: 43 45 20 3A 4B 4E 4F 57 4C 45 44 47 45 20 3A 57 |CE :KNOWLEDGE :W| 00000280: 52 4F 4E 47 2E 41 4E 53 57 45 52 20 28 20 4C 49 |RONG.ANSWER ( LI| 00000290: 53 54 20 3A 4E 45 57 2E 51 55 45 53 54 49 4F 4E |ST :NEW.QUESTION| 000002A0: 20 3A 52 49 47 48 54 2E 41 4E 53 57 45 52 20 3A | :RIGHT.ANSWER :| 000002B0: 57 52 4F 4E 47 2E 41 4E 53 57 45 52 20 29 0D 45 |WRONG.ANSWER ).E| 000002C0: 4E 44 0D 0D 54 4F 20 52 45 50 4C 41 43 45 20 3A |ND..TO REPLACE :| 000002D0: 44 41 54 41 20 3A 57 4F 52 44 20 3A 4E 45 57 2E |DATA :WORD :NEW.| 000002E0: 42 52 41 4E 43 48 0D 20 49 46 20 3A 44 41 54 41 |BRANCH. IF :DATA| 000002F0: 20 3D 20 3A 57 4F 52 44 20 4F 50 20 3A 4E 45 57 | = :WORD OP :NEW| 00000300: 2E 42 52 41 4E 43 48 0D 20 49 46 20 57 4F 52 44 |.BRANCH. IF WORD| 00000310: 3F 20 3A 44 41 54 41 20 4F 50 20 3A 44 41 54 41 |? :DATA OP :DATA| 00000320: 0D 20 4F 50 20 28 20 4C 49 53 54 20 51 55 45 53 |. OP ( LIST QUES| 00000330: 54 49 4F 4E 20 3A 44 41 54 41 20 52 45 50 4C 41 |TION :DATA REPLA| 00000340: 43 45 20 59 45 53 2E 42 52 41 4E 43 48 20 3A 44 |CE YES.BRANCH :D| 00000350: 41 54 41 20 3A 57 4F 52 44 20 3A 4E 45 57 2E 42 |ATA :WORD :NEW.B| 00000360: 52 41 4E 43 48 20 52 45 50 4C 41 43 45 20 4E 4F |RANCH REPLACE NO| 00000370: 2E 42 52 41 4E 43 48 20 3A 44 41 54 41 20 3A 57 |.BRANCH :DATA :W| 00000380: 4F 52 44 20 3A 4E 45 57 2E 42 52 41 4E 43 48 20 |ORD :NEW.BRANCH | 00000390: 29 0D 45 4E 44 0D 0D 54 4F 20 57 41 49 54 20 3A |).END..TO WAIT :| 000003A0: 4E 0D 20 52 45 50 45 41 54 20 3A 4E 20 5B 5D 0D |N. REPEAT :N [].| 000003B0: 45 4E 44 0D 0D 54 4F 20 4E 4F 2E 42 52 41 4E 43 |END..TO NO.BRANC| 000003C0: 48 20 3A 54 52 45 45 0D 20 4F 55 54 50 55 54 20 |H :TREE. OUTPUT | 000003D0: 4C 41 53 54 20 3A 54 52 45 45 0D 45 4E 44 0D 0D |LAST :TREE.END..| 000003E0: 54 4F 20 59 45 53 2E 42 52 41 4E 43 48 20 3A 54 |TO YES.BRANCH :T| 000003F0: 52 45 45 0D 20 4F 55 54 50 55 54 20 46 49 52 53 |REE. OUTPUT FIRS| 00000400: 54 20 42 55 54 46 49 52 53 54 20 3A 54 52 45 45 |T BUTFIRST :TREE| 00000410: 0D 45 4E 44 0D 0D 54 4F 20 51 55 45 53 54 49 4F |.END..TO QUESTIO| 00000420: 4E 20 3A 54 52 45 45 0D 20 4F 55 54 50 55 54 20 |N :TREE. OUTPUT | 00000430: 46 49 52 53 54 20 3A 54 52 45 45 0D 45 4E 44 0D |FIRST :TREE.END.| 00000440: 0D 54 4F 20 41 53 4B 2E 59 45 53 2E 4F 52 2E 4E |.TO ASK.YES.OR.N| 00000450: 4F 20 3A 51 55 45 53 54 49 4F 4E 0D 20 4C 4F 43 |O :QUESTION. LOC| 00000460: 41 4C 20 22 41 4E 53 57 45 52 0D 20 50 52 49 4E |AL "ANSWER. PRIN| 00000470: 54 31 20 3A 51 55 45 53 54 49 4F 4E 0D 20 49 46 |T1 :QUESTION. IF| 00000480: 20 22 3F 20 3D 20 4C 41 53 54 20 4C 41 53 54 20 | "? = LAST LAST | 00000490: 3A 51 55 45 53 54 49 4F 4E 20 50 52 49 4E 54 20 |:QUESTION PRINT | 000004A0: 5B 5D 20 45 4C 53 45 20 50 52 49 4E 54 20 22 3F |[] ELSE PRINT "?| 000004B0: 0D 20 4D 41 4B 45 20 22 41 4E 53 57 45 52 20 52 |. MAKE "ANSWER R| 000004C0: 45 51 55 45 53 54 0D 20 49 46 20 3A 41 4E 53 57 |EQUEST. IF :ANSW| 000004D0: 45 52 20 3D 20 5B 59 45 53 5D 20 4F 55 54 50 55 |ER = [YES] OUTPU| 000004E0: 54 20 5B 59 45 53 5D 0D 20 49 46 20 3A 41 4E 53 |T [YES]. IF :ANS| 000004F0: 57 45 52 20 3D 20 5B 4E 4F 5D 20 4F 55 54 50 55 |WER = [NO] OUTPU| 00000500: 54 20 5B 4E 4F 5D 0D 20 50 52 49 4E 54 20 5B 50 |T [NO]. PRINT [P| 00000510: 4C 45 41 53 45 20 54 59 50 45 20 22 59 45 53 22 |LEASE TYPE "YES"| 00000520: 20 4F 52 20 22 4E 4F 22 5D 0D 20 4F 55 54 50 55 | OR "NO"]. OUTPU| 00000530: 54 20 41 53 4B 2E 59 45 53 2E 4F 52 2E 4E 4F 20 |T ASK.YES.OR.NO | 00000540: 3A 51 55 45 53 54 49 4F 4E 0D 45 4E 44 0D 0D 54 |:QUESTION.END..T| 00000550: 4F 20 46 49 4E 41 4C 2E 47 55 45 53 53 20 3A 43 |O FINAL.GUESS :C| 00000560: 48 4F 49 43 45 0D 20 4C 4F 43 41 4C 20 22 46 49 |HOICE. LOCAL "FI| 00000570: 4E 41 4C 2E 51 55 45 53 54 49 4F 4E 0D 20 4C 4F |NAL.QUESTION. LO| 00000580: 43 41 4C 20 22 52 45 53 50 4F 4E 53 45 0D 20 4D |CAL "RESPONSE. M| 00000590: 41 4B 45 20 22 46 49 4E 41 4C 2E 51 55 45 53 54 |AKE "FINAL.QUEST| 000005A0: 49 4F 4E 20 28 20 53 45 20 5B 49 53 20 49 54 5D |ION ( SE [IS IT]| 000005B0: 20 41 44 44 2E 41 2E 4F 52 2E 41 4E 20 3A 43 48 | ADD.A.OR.AN :CH| 000005C0: 4F 49 43 45 20 5B 3F 5D 20 29 0D 20 4D 41 4B 45 |OICE [?] ). MAKE| 000005D0: 20 22 52 45 53 50 4F 4E 53 45 20 41 53 4B 2E 59 | "RESPONSE ASK.Y| 000005E0: 45 53 2E 4F 52 2E 4E 4F 20 3A 46 49 4E 41 4C 2E |ES.OR.NO :FINAL.| 000005F0: 51 55 45 53 54 49 4F 4E 0D 20 49 46 20 3A 52 45 |QUESTION. IF :RE| 00000600: 53 50 4F 4E 53 45 20 3D 20 5B 59 45 53 5D 20 50 |SPONSE = [YES] P| 00000610: 52 49 4E 54 20 5B 4C 4F 4F 4B 20 48 4F 57 20 53 |RINT [LOOK HOW S| 00000620: 4D 41 52 54 20 49 20 41 4D 21 5D 20 53 54 4F 50 |MART I AM!] STOP| 00000630: 0D 20 47 45 54 2E 53 4D 41 52 54 45 52 20 3A 43 |. GET.SMARTER :C| 00000640: 48 4F 49 43 45 0D 45 4E 44 0D 0D 54 4F 20 47 55 |HOICE.END..TO GU| 00000650: 45 53 53 20 3A 43 48 4F 49 43 45 53 0D 20 49 46 |ESS :CHOICES. IF| 00000660: 20 28 20 57 4F 52 44 3F 20 3A 43 48 4F 49 43 45 | ( WORD? :CHOICE| 00000670: 53 20 29 20 46 49 4E 41 4C 2E 47 55 45 53 53 20 |S ) FINAL.GUESS | 00000680: 3A 43 48 4F 49 43 45 53 20 53 54 4F 50 0D 20 4C |:CHOICES STOP. L| 00000690: 4F 43 41 4C 20 22 52 45 53 50 4F 4E 53 45 0D 20 |OCAL "RESPONSE. | 000006A0: 4D 41 4B 45 20 22 52 45 53 50 4F 4E 53 45 20 41 |MAKE "RESPONSE A| 000006B0: 53 4B 2E 59 45 53 2E 4F 52 2E 4E 4F 20 28 20 51 |SK.YES.OR.NO ( Q| 000006C0: 55 45 53 54 49 4F 4E 20 3A 43 48 4F 49 43 45 53 |UESTION :CHOICES| 000006D0: 20 29 0D 20 49 46 20 3A 52 45 53 50 4F 4E 53 45 | ). IF :RESPONSE| 000006E0: 20 3D 20 5B 59 45 53 5D 20 47 55 45 53 53 20 59 | = [YES] GUESS Y| 000006F0: 45 53 2E 42 52 41 4E 43 48 20 3A 43 48 4F 49 43 |ES.BRANCH :CHOIC| 00000700: 45 53 20 53 54 4F 50 0D 20 47 55 45 53 53 20 4E |ES STOP. GUESS N| 00000710: 4F 2E 42 52 41 4E 43 48 20 3A 43 48 4F 49 43 45 |O.BRANCH :CHOICE| 00000720: 53 0D 45 4E 44 0D 0D 54 4F 20 41 4E 49 4D 41 4C |S.END..TO ANIMAL| 00000730: 0D 20 4E 44 0D 20 50 52 49 4E 54 20 5B 54 48 49 |. ND. PRINT [THI| 00000740: 4E 4B 20 4F 46 20 41 4E 20 41 4E 49 4D 41 4C 2E |NK OF AN ANIMAL.| 00000750: 20 49 20 57 49 4C 4C 5D 0D 20 50 52 49 4E 54 20 | I WILL]. PRINT | 00000760: 5B 54 52 59 20 54 4F 20 47 55 45 53 53 20 49 54 |[TRY TO GUESS IT| 00000770: 20 42 59 20 41 53 4B 49 4E 47 20 51 55 45 53 54 | BY ASKING QUEST| 00000780: 49 4F 4E 53 2E 5D 0D 20 50 52 49 4E 54 20 5B 5D |IONS.]. PRINT []| 00000790: 0D 20 47 55 45 53 53 20 3A 4B 4E 4F 57 4C 45 44 |. GUESS :KNOWLED| 000007A0: 47 45 0D 20 50 52 49 4E 54 20 5B 4C 45 54 27 53 |GE. PRINT [LET'S| 000007B0: 20 54 52 59 20 41 47 41 49 4E 5D 0D 20 57 41 49 | TRY AGAIN]. WAI| 000007C0: 54 20 31 30 30 30 0D 20 41 4E 49 4D 41 4C 0D 45 |T 1000. ANIMAL.E| 000007D0: 4E 44 0D 0D 4D 41 4B 45 20 22 4B 4E 4F 57 4C 45 |ND..MAKE "KNOWLE| 000007E0: 44 47 45 20 5B 5B 44 4F 45 53 20 49 54 20 48 41 |DGE [[DOES IT HA| 000007F0: 56 45 20 46 4F 55 52 20 4C 45 47 53 3F 5D 20 5B |VE FOUR LEGS?] [| 00000800: 5B 44 4F 45 53 20 49 54 20 47 4F 20 4D 4F 4F 3F |[DOES IT GO MOO?| 00000810: 5D 20 43 4F 57 20 5B 5B 44 4F 45 53 20 49 54 20 |] COW [[DOES IT | 00000820: 57 48 49 4E 4E 59 3F 5D 20 48 4F 52 53 45 20 50 |WHINNY?] HORSE P| 00000830: 49 47 5D 5D 20 5B 5B 44 4F 45 53 20 49 54 20 48 |IG]] [[DOES IT H| 00000840: 41 56 45 20 43 4C 41 57 53 3F 5D 20 4C 4F 42 53 |AVE CLAWS?] LOBS| 00000850: 54 45 52 20 5B 5B 43 41 4E 20 49 54 20 52 55 4E |TER [[CAN IT RUN| 00000860: 3F 5D 20 4F 53 54 52 49 43 48 20 46 49 53 48 5D |?] OSTRICH FISH]| 00000870: 5D 5D 0D 4D 41 4B 45 20 22 53 54 41 52 54 55 50 |]].MAKE "STARTUP| 00000880: 20 5B 41 4E 49 4D 41 4C 5D 0D 28 | [ANIMAL].( |
. TO INITIALIZE.KNOWLEDGE. MAKE "KNOWLED GE "FISH.END..TO ADD.A.OR.AN :WORD. TEST MEMBER? ( FIRST :WORD ) [A E I O U]. IF TRUE OUTPUT SENTENCE "AN :WORD. IFFALSE OUTPUT SENTENCE "A :WORD.END..TO GET.SMA RTER :WRONG.ANSWER. PRINT [OH WELL, I WA S WRONG. WHAT WAS IT?]. MAKE "RIGHT.ANSW ER ( LAST REQUEST ). PRINT [PLEASE TYPE IN A QUESTION WHOSE ANSWER]. PRINT ( SE [IS "YES" FOR] ADD.A.OR.AN :RIGHT.ANSWER [AND] ). PRINT ( SE ["NO" FOR] ADD.A.OR .AN :WRONG.ANSWER ). MAKE "QUESTION REQU EST. EXPAND.KNOWLEDGE :QUESTION :RIGHT.A NSWER :WRONG.ANSWER.END..TO EXPAND.KNOWL EDGE :NEW.QUESTION :YES.ANSWER :NO.ANSWE R. MAKE "KNOWLEDGE REPLACE :KNOWLEDGE :W RONG.ANSWER ( LIST :NEW.QUESTION :RIGHT. ANSWER :WRONG.ANSWER ).END..TO REPLACE : DATA :WORD :NEW.BRANCH. IF :DATA = :WORD OP :NEW.BRANCH. IF WORD? :DATA OP :DATA . OP ( LIST QUESTION :DATA REPLACE YES.B RANCH :DATA :WORD :NEW.BRANCH REPLACE NO .BRANCH :DATA :WORD :NEW.BRANCH ).END..T O WAIT :N. REPEAT :N [].END..TO NO.BRANC H :TREE. OUTPUT LAST :TREE.END..TO YES.B RANCH :TREE. OUTPUT FIRST BUTFIRST :TREE .END..TO QUESTION :TREE. OUTPUT FIRST :T REE.END..TO ASK.YES.OR.NO :QUESTION. LOC AL "ANSWER. PRINT1 :QUESTION. IF "? = LA ST LAST :QUESTION PRINT [] ELSE PRINT "? . MAKE "ANSWER REQUEST. IF :ANSWER = [YE S] OUTPUT [YES]. IF :ANSWER = [NO] OUTPU T [NO]. PRINT [PLEASE TYPE "YES" OR "NO" ]. OUTPUT ASK.YES.OR.NO :QUESTION.END..T O FINAL.GUESS :CHOICE. LOCAL "FINAL.QUES TION. LOCAL "RESPONSE. MAKE "FINAL.QUEST ION ( SE [IS IT] ADD.A.OR.AN :CHOICE [?] ). MAKE "RESPONSE ASK.YES.OR.NO :FINAL. QUESTION. IF :RESPONSE = [YES] PRINT [LO OK HOW SMART I AM!] STOP. GET.SMARTER :C HOICE.END..TO GUESS :CHOICES. IF ( WORD? :CHOICES ) FINAL.GUESS :CHOICES STOP. L OCAL "RESPONSE. MAKE "RESPONSE ASK.YES.O R.NO ( QUESTION :CHOICES ). IF :RESPONSE = [YES] GUESS YES.BRANCH :CHOICES STOP. GUESS NO.BRANCH :CHOICES.END..TO ANIMAL . ND. PRINT [THINK OF AN ANIMAL. I WILL] . PRINT [TRY TO GUESS IT BY ASKING QUEST IONS.]. PRINT []. GUESS :KNOWLEDGE. PRIN T [LET'S TRY AGAIN]. WAIT 1000. ANIMAL.E ND..MAKE "KNOWLEDGE [[DOES IT HAVE FOUR LEGS?] [[DOES IT GO MOO?] COW [[DOES IT WHINNY?] HORSE PIG]] [[DOES IT HAVE CLAW S?] LOBSTER [[CAN IT RUN?] OSTRICH FISH] ]].MAKE "STARTUP [ANIMAL].(
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL