diff --git a/notes/game-descriptions.txt b/notes/game-descriptions.txt new file mode 100644 index 0000000..993a3c8 --- /dev/null +++ b/notes/game-descriptions.txt @@ -0,0 +1,677 @@ + CUTTHROATS + + +1984 Adventure + +Difficulty: OOO.. + + +In Cutthroats, you are a skilled diver living on Hardscrabble Island, a +small seaport past its prime. You will try to salvage a treasure from one of +four shipwrecks; if you are successful, you will be fabulously and +enormously respected among old salts. Some characters in the story will help +you; others will try to stop you any way they can. If you can think +logically and keep your throat intact, the treasure can be yours. + +There is more than one shipwreck in Cutthroats, but in each story you will +be trying to recover only one particular treasure. When you restart the +story, you may find yourself diving for a different treasure. + +-- + + DEADLINE + + +1982 Mystery + +Difficulty: OOOOO + + +A wealthy industrialist, Mr. Marshall Robner, locked himself in the upstairs +library of his New England colonial estate one night and committed suicide +by taking a lethal overdose of anti-depressants. Or did he? + +You are the Chief of Detectives. You've been asked by Robner's attorney to +make a thorough investigation of the case, simply to "quash the suspicions +which are inevitable" when a moneyed man dies a sudden and unnatural +death. The Medical Examiner found nothing unusual, and interviews with +family members and family associates are consistent with the idea that +Robner committed suicide. Everything fits neatly -- maybe too neatly. You +smell foul play, and you have 12 hours to crack the case. If you arrest +someone, you'd better have the three traditional ingredients to an ironclad +case for the prosecution: the accused must have had a motive, a method, and +ample opportunity to commit the crime. There are many possible endings to +this case, and the one you reach is determined by your actions and by the +deductions you draw from the evidence you gather. But one ending fits the +facts better than any other, and you will know it when you reach it. + +-- + + ENCHANTER + + +1983 Fantasy + +Difficulty: OOO.. + + +Welcome to the World of the Enchanter saga - a world where magic is +commonplace, a world where guilds of professional magic-users spend their +lifetimes mastering the intricacies of thaumaturgy, a world where great +forces of evil must constantly be held at bay. + +An Evil Warlock has subjugated the land to his power. All who have opposed +him have failed. But many years ago, in another age, the great Elders of the +Circle of Enchanters foresaw the possibility of these dreaded occurences. +They realized that no fully accomplished Enchanter could penetrate the +Warlock's defenses unrecognized, and knew that the task of freeing the land +would fall to a journeyman conjurer. + +You have been identified as the Apprentice Enchanter who must save the land +from the Warlock. + +As a fledgling Enchanter, you have learned your lessons but have not faced +all your tests. You possess great power, but in the ranks of necromancers +you are a lowly and ignorant person indeed. You have been well trained in +the basics of magic, and you will be greatly aided by the spells you know +and the spells you will learn. But you must also rely on your powers of +observation and quick wits. + +-- + +HITCHHIKER'S GUIDE + TO THE GALAXY + +1984 Sci-Fi + +Difficulty: OOO.. + + +Don't Panic! + +In this story, you will be Arthur Dent, a rather ordinary earth creature who +gets swept up in a whirlwind of interstellar adventures almost beyond +comprehension. As the story begins, bulldozers are waiting to reduce your +house to rubble to make way for a motorway bypass. While you attempt to deal +with this problem, your rather strange friend Ford Prefect drops by to tell +you that the Earth is about to be demolished to make way for an interstellar +bypass! If you survive this double threat, you'll embark on a series of +inter-galactic misadventures even funnier than your worst nightmares! And +because anything is possible in The Hitchhiker's Guide to the Galaxy, you +may soon not even be sure of your own identity! + +A special note for people who have read the book The Hitchhiker's Guide to +the Galaxy: although the opening of the game is fairly similar to the book, +the story quickly diverges, with lots of new material and different twists. +Familiarity with the story may make a few of the early puzzles easier, but +if you rely too heavily on this previous knowledge you will certainly +befuddle yourself. + +-- + + INFIDEL + + +1983 Adventure + +Difficulty: OOOO. + + +You like to think of yourself as a bold and adventurous soldier of fortune, +daring to brave the perils of the Egyptian Desert in search of a great lost +pyramid. In fact, you're a small-time explorer, and you've just been +marooned by your crew. Thoughts of getting lost, starving to death, or dying +of thirst cross your mind, but you are sustained by the faint hope that you +can somehow find the pyramid in this smouldering heat. + +You're all alone. Perhaps the sun has affected your thinking. Do you really +expect to find a lost pyramid in this vast, endless desert, much less +survive? Even if you do find it, can you get inside? Hardest of all, are +you capable of matching wits with the ancient Egyptians? + +Still, you're driven onward against desperate odds. Undreamed-of riches and +treasures beyond imagination await you. And your pride and dignity, your +reputation and self-esteem, are at stake. For you are branded INFIDEL. + +-- + + PLANETFALL + + +1983 Sci-Fi + +Difficulty: OOO.. + + +After the fall of the Second Galactic Union in 1716 GY, a ten-thousand-year +dark age settled upon the galaxy. Interstellar travel was non-existent, and +many star systems descended into a near-barbaric state, buring coal and gas +for energy, and growing food directly from exposed topsoil. + +In 11,203 GY, a treaty between the Empires of Tremain and Galium formed the +Third Galactic Union. Ships of the Stellar Patrol (a pseudo-military wing of +the Union government on Tremain) began exploring the galaxy, searching for +the human civilizations that are the remnants of the Second Galactic Union. + +You are a native of the planet Gallium. Although it is one of the most +politically powerful worlds in the Union, Gallium is no garden spot. In +fact, the Gallium Chamber of Commerce brochure entitled "Ten Great Reasons +to Visit Gallium" ends on page 3. The author ran out of reasons after +listing just two. + +For five generations, your family has served in the Stellar Patrol. Your +great-great-grandfather was a High Admiral and one of the founding officers +of the Patrol. It was taken for granted that when you came of age you would +join up. + +Now, more than a year after signing up, and two months after being +transferred to the S.P.S. Feinstein, you are still only ranked Ensign +Seventh Class. You superior officer, Ensign First Class Blather, has been +making your life miserable. You're beginning to wonder if you're really cut +out for the Stellar Patrol... + +-- + + SEASTALKER + + +1984 Adventure + +Difficulty: O.... + + +Welcome to the world of Infocom's junior interactive fiction, a world where: + + * you can become the hero or heroine in a story, + * you can use your own thinking to guide the story from start to finish, + * you can meet other people, who may or may not help you, and + * you can go to new places, figure out mysteries and puzzles, and fight + against monsters or enemies. + +In Seastalker, you become a young inventor working in your father's +business. Your newest invention is a small submarine that has only two seats +inside, for you and your pal Tip. The submarine, called the Scimitar, can +dive deeply into the sea to capture plants and animals for you to study. But +you will have to use it to save your undersea scientific station from a sea +monster that is attacking it! + +-- + + SORCERER + +1984 Fantasy + +Difficulty: OOOO. + + +Welcome to the World of the Enchanter saga - a world where magic is +commonplace, a world where guilds of professional magic-users spend their +lifetimes mastering the intricacies of thaumaturgy, a world where great +forces of evil must constantly be held at bay. + +In your late youth you left home to join the Guild of Enchanters. After +years of schooling, you achieved the rank of Apprentice Enchanter. In +fulfillment of an ancient prophecy, you were sent to find Krill, an evil +warlock who had loosed a pestilence upon the land, and who threatened the +very existence of the Circle of Enchanters. Only someone guileless and +inexperienced in the ways of magic could slip into Krill's realm unnoticed. + +By defeating Krill, you earned a seat on the Circle of Enchanters, sitting +at the right hand of your mentor, the leader of the Guild, Belboz the +Necromancer. Several years have passed, and you have grown very close to +Belboz as you studied under his tutelage, learning the ways of magic from +one of the world's most learned practitioners. + +But lately, Belboz has seemed troubled, preoccupied, withdrawn... small +things only a friend would notice. You have even heard frightening noises +coming from his chamber, and the voices of conversation when Belboz was +supposedly alone. His temper has seemed short the last few days, and the +look in his eyes sends cold shivers down your back. Could some evil spirit +be at work here? You are sleepless from worry - Belboz is possibly the most +powerful Enchanter in the kingdom. If his powers were used by the forces of +darkness instead of the forces of light, who knows what would result? + +And now, unbeknownst to you, Belboz has vanished. + +-- + + STARCROSS + + +1982 Sci-Fi + +Difficulty: OOOOO + + +The year is 2186. Humanity has established colonies on the moon, Mars, and +several of the larger asteroids. Earth's sky is dotted with space habitats, +and the spaceways are always busy. As usual, there is urgent need for energy +to power this advanced civilization; one of the primary sources of that +energy is quantum black holes. + +In Starcross you are a miner of black holes, scouring the asteroid belt in +your one-man survey ship. Finding and harnessing a single black hole can +make a person's fortune. It's a lonely business, fraught with the known and +unknown hazards of space. You've equipped your ship, the M.C.S. Starcross +with the best gear you could afford. You've put everything into this +venture, and though you've tried before, you somehow sense that this time +will be different. + +The ship's computer handles the functions of navigation and maintenance. You +watch the sophisticated mass detector as it unceasingly scans the vicinity +for unchartered masses. To assuage the tedium of your long trip, you browse +through the compact tape library, a compendium of human knowledge and +culture. But the drone of the ship gradually lulls you into a deep sleep. + +As you sleep, you dream of the riches which would be yours if your search +for a quantum black hole is sucessful. Little do you suspect that the alarm +on your mass detector is about to jolt you out of your dream -- but not to +grapple with the long-sought black hole. Your quest hast taken an unexpected +turn, for you are destined to rendezvous with a gargantuan alien space ship +from the outer fringes of the galaxy. + +-- + + SUSPENDED + + +1983 Sci-Fi + +Difficulty: OOOOO + + +You are the Central Mentality on an advanced semi-automated planet. You were +supposed to sleep -- in limited cryogenic suspension -- for the next 500 +years, 20 miles beneath the surface of the planet, while the great Filtering +Computers maintained all surface systems. But the computers have taken you +out of suspension because something is terribly wrong: the weather has +become brutal, food production is dangerously low, and the Transportation +System is malfunctioning, causing unprecedented accidents and casualties. +The planet is in chaos. + +You are physically immobilized. But you have six robots at your disposal, +and you must manipulate them strategically to bring the Filtering Computers +back into balance. Each robot has a distinct perception of the world and +offers you specific abilities. One offers you sight; a second, hearing; a +third, access to information in the computer memory banks. Through the +robots, you must save the planet from destruction. + +-- + + SUSPECT + + +1984 Mystery + +Difficulty: OOOO. + + +Halloween night. + +You are a guest at a very exclusive party: the annual Costume Ball at +Ashcroft Farm. You are mingling with society's blue bloods and power +brokers, sampling caviar and champagne, and enjoying the fine orchestra and +the outlandish costumes. Quite a treat for a newspaper reporter like you - +until someone plays a nasty trick on you. + +You're framed for a murder you didn't commit. + +You'll have a hard time convincing the police of your innocence. You'll have +to figure out who did the heinous crime, and why. You'll need irrefutable +proof. The murderer is no doubt watching your every move. But you have only +a few hours to escape the trap that's been laid for you. + +The murderer is in your midst, laughing behind your back. + +-- + +Title: Spellbreaker +Author: Dave Lebling +Released: 1985 +Genre: Fantasy +Difficulty: Expert (5/5) + +Welcome to the World of the Enchanter saga - a world founded on magic, where +guilds of magicians have mastered the powers of sorcery; a world now +threatened with destruction. + +You distinguished yourself among the young Enchanters by defeating the evil +warlock Krill, whose attempt to subjugate the land was thwarted by your +clerverness, as your inexperience allowed you to succeed where others might +fave failed. This earned you a place on the Circle of Enchanters, second +only to the great Belbox the Necromancer. Then Belboz himself was nearly +destroyed, and your rescue of him from the evil demon Jeearr earned you the +ultimate honor given a mage, the leadership of the Circle of Enchanters. + +Now, a crisis has befallen the kingdom. Magic itself seems to be failing. +Spells fail to work or go strangely awry, the populace is confused and +restive, and even the Enchanters Guild is baffled. And it is at this +conclave that the final conflict between good and evil begins to unfold. + +-- + +Title: Ballyhoo +Author: Jeff O'Neill +Released: 1986 +Genre: Mystery +Difficulty: Standard (3/5) + +Spurred by your natural curiosity, you stick around after the show in the +big top, hoping to catch an after-hours performance. Perhaps you'll get a +peek at an impromptu clown act, or watch the late-night feedings of the +exotic animals you goggled at earlier. But life at the circus isn't +glamorous after the audience has gone home: instead of flashy feats, you +overhear a mysterious conversation: a little girl - the circus owner's +daughter - has been kidnapped! Her father is too naive (or is he too +pompously stupid?) to do more than hire an inept detective to find her. He +remains blindly loyal to his overworked performers, but... could it be an +inside job? The girl might be hidden somewhere on the circus grounds... and +one of the performers might be her abductor! + +So you do what anyone would do in these circumstances: set out to rescue the +damsel in distress. The odds aren't in your favor: you - a spectator, a +bystander, an outsider in a defensive close-knit community - trying to find +a girl you've never met, in a place you know nothing about, among bizarre +people who want nothing to do with you. Some would call you brave. Some +would call you foolish. + +Every circus has its seedy underside. But few are as dangerous as this. + +-- + +Title: Leather Goddesses of Phobos +Author: Steve Meretzky +Released: 1986 +Genre: Comedy +Difficulty: Standard (3/5) + +1936. In the United States, a new miracle fabric called nylon is becoming +popular, the Great Plains continue to suffer from a severe drought that is +turning the region into a Dust Bowl, Alf Landon is running for President, +Victor Hess is receiving the Nobel Prize for Physics for discovering cosmic +radiation, Gone With the Wind is the best-selling novel, and steak is +twenty-five cents a pound. Elsewhere, black track star Jesse Owen is +embarrassing Adolph Hitler by winning four gold medals at the Olympic Games +in Berlin, Edward the VIII of England is abdicating the throne to marry a +commoner, the Spanish Civil War is beginning to heat up, and the Leather +Goddesses of Phobos are completing plans to invade the Earth and turn it +into their private pleasure world. + +Don't let anyone ever tell you that nothing happens in Upper Sandusky, Ohio, +because on this day in 1936, you're snatched out of your favorite bar in +Upper Sandusky - kidnapped by minions of the evil Leather Goddesses. You are +brought back to Phobos as an experimental subject, as preparations continue +to enslave every man and woman on Earth. + +If you succeed in escaping the clutches of the Leather Goddesses, you will +begin an odyssey the likes of which you have never even imagined (except, +perhaps, in certain very enjoyable dreams). With your loyal friend and +fellow Earthmate at your side, you will begin a naughty, bawdy, rowdy, +rousing and very, very amusing romp across the solar system. Your mission, +should you be able to catch your breath long enough to think about it, is to +collect the materials you'll need to ultimately defeat the Leather Goddesses +of Phobos and save humanity! Are you "up" for the job? + +-- + +Title: Moonmist +Author: Stu Galley and Jim Lawrence +Released: 1986 +Genre: Mystery +Difficulty: Introductory (2/5) + +In Moonmist, you are a famous young American detective. An old friend, +Tamara Lynd, has written you a letter, asking for your help. And so you have +travelled to England to test your detective skills. + +As the story begins, you meet some interesting guests. But your visit soon +turns to mystery, as a trail of riddles and clues leads you to a hidden +valuable treasure. + +But Tamara is worried about a ghost that is tormenting her. What does the +ghost want? Is it jealous of her? Does the ghost want the hidden treasure +for itself? Or is the ghost a fake -- just someone dressing up to frighten +Tamara? If so, why? + +These mysteries and others are waiting to test your wits in Moonmist. + +-- + +Title: Hollywood Hijinx +Author: "Hollywood" Dave Anderson and Liz Cyr-Jones +Released: 1987 +Genre: Adventure +Difficulty: Standard (3/5) + +As a child, you spent most of your summers with your Aunt Hildegard and +Uncle Buddy. What memories! Uncle Buddy was a Hollywood big-shot, Aunt +Hildegard his loving (and very rich!) wife. They had no children on their +own, but you and your cousins loved their house, their parties, the +Hollywood memorabilia, and them. Sure, Buddy and Hildy were a bit eccentric +- but that added to their charm. + +Aunt Hildegard kept the house when Uncle Buddy passed away. And now that +she's suddenly died, you remember her unusual will. You will inherit the +entire estate - probably worth millions - if you can spend one night in the +house and on the grounds, and find a treasure or two. But if you can't, then +you inherit nothing. + +And so Hollywood Hijinx begins with you being dropped off in front of a dark +house, not too far from Hollywood... + +-- + +Title: Stationfall +Author: Steve Meretzky +Released: 1987 +Genre: Sci-Fi +Difficulty: Advanced (4/5) + +After the fall of the Second Galactic Union in 1716 GY, a ten-thousand-year +dark age settled upon the galaxy. Interstellar travel was nonexistent, and +many star systems descended into a near-barbaric state, buring coal and gas +for energy, and growing food directly from exposed topsoil. + +In 11,203 GY, a treaty between the Empires of Tremain and Galium formed the +Third Galactic Union. Ships of the Stellar Patrol (a pseudo-military wing of +the Union government on Tremain) began exploring the galaxy, searching for +the human civilizations that are the remnants of the Second Union. + +You are a native of the planet Gallium, one of the most politically powerful +but culturally barren worlds in the Union. Your great-great-grandfather was +a founding officer of the Stellar Patrol, and for five generations, your +family has served in the Patrol. It was always taken for granted that you +would sign up as soon as you came of age. + +Once you joined the Patrol, you discovered that the exciting career promised +in all the Patrol recruitment brochures was nonsense. Your life was drudgery +and demerits. The one time you got to see an exotic planet was right after a +big parade, when they needed a detail to sweep up all the confetti. + +Then came your big moment: shipwrecked on a seemingly deserted world, you +met an exuberant robotic companion named Floyd. Together, the two of you +discovered the secret of that mysterious planet, Resida, and saved it from +near destruction.The story of that heroic deed was told in Planetfall. + +As a result of your heroics, you were offered, and quickly accepted, a juicy +promotion. Good-bye Ensign Seventh Class -- hello Lieutenant First Class! No +more scrubwork! No more bathroom details! No more cleaning groth cages! +Finally, your life in the Stellar Patrol would be as exciting as those +brochures had promised! + +Oh, how naive you'd been. Your daily routine simply replaced tedious +scrubwork with tedious paperwork. Since your planetfall on Resida, five long +years have dragged by, without a single event worthy of note. Why, just look +at today's "thrilling" assignment: scooting over to Space Station Gamma +Delta Gamma 777-G 59/59 Sector Alpha-Mu-79 to pick up a supply of Request +for Stellar Patrol Issue Regulation Black Form Binders Request Form Forms... + +-- + +Title: The Lurking Horror +Author: Dave Lebling +Released: 1987 +Genre: Horror +Difficulty: Standard (3/5) + +In The Lurking Horror, you are a student at G.U.E. Tech. You have braved a +snowstorm to get to the Computer Center and finish work on an assignment. +But the snowstorm has turned into a raging blizzard, and has trapped you in +a complex of buildings late at night. You are not alone, fortunately ... or +perhaps, unfortunately. + +In any event, you soon find yourself wandering away from your computer and +into the dark nether regions of G.U.E. Tech. Suddenly, you're in a world +that rivals your most hideous visions, a realm of horror lurking beneath the +calm corridors and study halls. + +Shapes emerge from dark corners. Eerie sounds draw closer. Slimy passageways +lead to sights so horrifying that they will feed your nightmares for weeks. + +-- + +Title: Plundered Hearts +Author: Amy Briggs +Released: 1987 +Genre: Romance +Difficulty: Introductory (2/5) + +Plundered Hearts is set in the late 1600s, where you are living the gentle +life of a beautiful young Englishwoman. You have received news that your +dear father is ailing, and so you are travelling to the West Indies to care +for him. + +As the story opens, the ship you are aboard is attacked by pirates, and you +are carried off by the dashing pirate captain! But this does not dissuade +you from your determination to find your father. Along the way, you shall +encounter danger, adventure ... and more than a touch of romance. + +-- + +WISHBRINGER: THE MAGICK + STONE OF DREAMS + + 1985 Fantasy + + Difficulty: OO... + + +In Wishbringer, you're a postal clerk in a small seaside village called +Festeron. You deliver a strange envelope to a magic shop, and discover that +an old woman's black cat has been kidnapped by "the Evil One." The old woman +asks for your help, and when you leave the magic shop, you find yourself +trapped in a nightmare world. Your once-quiet town is now full of goons, +trolls, vultures, fortress-like towers, and assorted wickedness. You become +entangled in the struggle between Good and Evil; extraordinary help is found +only in unusual places. Everyone seeks to possess a magic stone of dreams +known as Wishbringer; but only you can find it and use its powers to make +your town safe again. And you only have a few hours! + +-- + + THE WITNESS + + +1984 Mystery + +Difficulty: OOO.. + + +In The Witness, you are a police detective working near Los Angeles. The +year is 1938, and on this stormy February night a wealthy but frightened man +has asked your for protection. In spite of your best efforts, a death will +occur, and you will have twelve hours to solve the mystery and try to arrest +the killer. + +If you think you have enough evidence one or more suspects to convince a +jury of their guilt, you can arrest them and conclude the case. Your +ever-helpful assistant, Sergeant Duffy, will assist you in taking the +accused into custody. (He will also offer help before the arrest if you ask +him for it.) You can can except to receive a letter from your superiors +about the outcome of the grand jury investigation - and, if the District +Attorney gets an indictment, of the trial itself. If the jury does not +convict, your higher-ups will probably tell you where you may have erred, so +that you can profit from your mistakes. + +Because the state cannot win the case unless it can prove guilt beyond a +reasonable doubt, you are expected to establish the traditional ingredients +of an ironclad case for the prosecution: the accused must have had a motive, +a method, an an ample opportunity to commit the crime. There are many +possible endings to this case, and the one you reach is determined by your +actions and by the deductions you draw from the evidence you gather. But one +ending fits the facts better than any, and you will know it when you reach +it. + +-- + +ZORK I: THE GREAT +UNDERGROUND EMPIRE + +1980 Fantasy + +Difficulty: OOO.. + + +Welcome to ZORK! You are about to experience a classic interactive fantasy, +set in a magical universe. The ZORK trilogy takes place in the ruins of an +ancient empire lying far underground. You, a dauntless treasure-hunter, are +venturing into this dangerous land in search of wealth and adventure. +Because each part of the ZORK saga is a completely independent story, you +can explore them in any order. However, since ZORK I is the least difficult, +it is usually the best place to begin. + +Many strange tales have been told of the fabulous treasures, exotic +creatures and diabolical puzzles in the Great Underground Empire. As an +aspiring adventurer you will undoubtedly want to locate the treasures and +deposit them in your trophy case. You'd better equip yourself with a source +of light (for the caverns are dark) and weapons (for some of the inhabitants +are unfriendly -- especially the thief, a skilled pickpocket and ruthless +opponent). + +-- + + ZORK II: THE +WIZARD OF FROBOZZ + +1981 Fantasy + +Difficulty: OOOO. + + +Welcome to ZORK! You are about to experience a classic interactive fantasy, +set in a magical universe. The ZORK trilogy takes place in the ruins of an +ancient empire lying far underground. You, a dauntless treasure-hunter, are +venturing into this dangerous land in search of wealth and adventure. +Because each part of the ZORK saga is a completely independent story, you +can explore them in any order. + +In Zork II, you will explore a long hidden region of the Empire, a region +dominated by the Wizard of Frobozz. The Wizard was once a respected +Enchanter, but when his powers began to fade he was exiled by Lord Dimwit +Flathead the Excessive. Now bordering on senility, the Wizard is still a +force to be reckoned with. Your goal, as you venture into the Wizard's +realm, is to avoid his capricious tricks and learn to control his magic. + +-- + + ZORK III: THE + DUNGEON MASTER + +1982 Fantasy + +Difficulty: OOOO. + + +Welcome to ZORK! You are about to experience a classic interactive fantasy, +set in a magical universe. The ZORK trilogy takes place in the ruins of an +ancient empire lying far underground. You, a dauntless treasure-hunter, are +venturing into this dangerous land in search of wealth and adventure. +Because each part of the ZORK saga is a completely independent story, you +can explore them in any order. + +As ZORK III begins, your greatest challenge beckons as you take the final +step down into the very heart of the Great Underground Empire. Your +character and courage will be tested as the enigmatic Dungeon Master +confronts you with predicaments and perils. Your quest hinges upon +discovering his secret purpose, even as he oversees your ultimate triumph - +or destruction! diff --git a/notes/game-versions.txt b/notes/game-versions.txt new file mode 100644 index 0000000..19868de --- /dev/null +++ b/notes/game-versions.txt @@ -0,0 +1,124 @@ +Ballyhoo + 97/851218 - done +Cutthroats + 23/840809 - done +Deadline + 18/820311 - done + 19/820427 - done + 21/820512 - done + 22/820809 - done + 26/821108 - done + 27/831005 - done +Enchanter + 10/830810 - done + 15/831107 - done + 16/831118 - done + 24/851118 - done + 29/860820 - done +The Hitchhiker's Guide to the Galaxy + 47/840914 - done + 56/841221 - done + 58/851002 - done + 59/851108 - done + 31/871119 - not Z3 +Hollywood Hijinx + 235/861118- done + 37/861215 - done +Infidel + 22/830916 - done +Leather Goddesses of Phobos + 50/860711 - done + 59/860730 - done + 4/880405 - not Z3 +The Lurking Horror + 203/870506- done + 219/870912- done + 221/870918- done +Moonmist + 4/860918 - done + 9/861022 - done +Planetfall + 20/830708 - done + 26/831014 - done + 29/840118 - done + 37/851003 - done + 10/880531 - not Z3 +Plundered Hearts + 26/870730 - done +Seastalker + 15/840501 - done (as "r15a.840501") + 15/840522 - done (as "r15b.840522") + 16/850515 - done (as "r16a.850515") + 16/850603 - done (as "r16b.850603") + 86/840320 - done +Sorcerer [has in-game protection] + 4/840131 - done + 6/840508 - done + 13/851021 - done + 15/851108 - done + 18/860904 - done + 4/840131/deprotected - done (as "r4.deprot") + 6/840508/deprotected - done (as "r6.deprot") + 13/851021/deprotected - done (as "r13.deprot") + 15/851108/deprotected - done (as "r15.deprot") + 18/860904/deprotected - done (as "r18.deprot") +Spellbreaker [has in-game protection] + 63/850916 - done + 87/860904 - done + 63/850916/deprotected - done (as "r63.deprot") + 87/860904/deprotected - done (as "r87.deprot") +Starcross + 15/820901 - done + 17/821021 - done +Stationfall [has in-game protection] + 107/870430- done + 107/870430/deprotected - done (as "r107.deprot") +Suspect + 14/841005 - done +Suspended + 5/830222 - done + 7/830419 - done + 8/830521 - done (as "r8a") + 8/840521 - done (as "r8b") +Wishbringer + 68/850501 - done + 69/850920 - done + 23/880706 - not Z3 +The Witness + 13/830524 - done + 18/830910 - done + 20/831119 - done + 21/831208 - done + 22/840924 - done +Zork I + 2/AS000C - not Z3 + 5/ - not Z3 + 15/UG3AU5 - not Z3 + 20/ - done (as "r20.000000") + 23/820428 - done + 25/820515 - done + 26/820803 - done + 28/821013 - done + 30/830330 - done + 75/830929 - done + 76/840509 - done + 88/840726 - done + 52/871125 - not Z3 +Zork II + 7/UG3AU5 - not Z3 + 15/820308 - done + 17/820427 - done + 18/820512 - done (as "r18a") + 18/820517 - done (as "r18b") + 19/820721 - done + 22/830331 - done + 23/830411 - done + 48/840904 - done +Zork III + 10/820818 - done + 12/821025 - done + 15/830331 - done (as "r15a") + 15/840518 - done (as "r15b") + 16/830410 - done + 15/840518 - done + 17/840727 - done diff --git a/notes/ui.txt b/notes/ui.txt new file mode 100644 index 0000000..0639ed0 --- /dev/null +++ b/notes/ui.txt @@ -0,0 +1,198 @@ +0 1 2 3 4 5 6 7 +01234567890123456789012345678901234567890123456789012345678901234567890123456789 +[Pitch Dark]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][ Exit ] + ____________ _____________ +|_<_Previous_| ZORK I: THE GREAT |_Next_game_>_| + UNDERGROUND EMPIRE + + 1980 Fantasy + + Difficulty: OOOOO + _________ + |__Hints__| + ___________ _________ + |_Play_game_| |_Box_art_| + _________ + |_Options_| +[------------------------------------------------------------------------------] +[------------------------------------------------------------------------------] +| Welcome to ZORK! You are about to experience a classic interactive fantasy, ^ +| set in a magical universe. The ZORK trilogy takes place in the ruins of an | +| ancient empire lying far underground. You, a dauntless treasure-hunter, are | +| venturing into this dangerous land in search of wealth and adventure. | +| Because each part of the ZORK saga is a completely independent story, you | +| can explore them in any order. However, since ZORK I is the least difficult, | +| it is usually the best place to begin. v +|______________________________________________________________________________| + + + + + + + + + + + + + + + + + + + + + + + +[Pitch Dark]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][ Exit ] + ____________ _______________________ _____________ +|_<_Previous_| /_____________________./| |_Next_game_>_| + | ||| + | ZORK I: THE GREAT ||| +Sort by | UNDERGROUND EMPIRE ||| + ____________ | ||| +|____Name____| | 1980 Fantasy ||| + ____________ | ||| +|____Year____| | Difficulty: OOOOO ||| + ____________ | _____________ ||| +|___Genre____| | |_Play_game_>_| ||| + ____________ | ||/ +|_Difficulty_| |______________________|/ + +[-------------------------------------Blurb------------------------------------] +| Welcome to ZORK! You are about to experience a classic interactive fantasy, ^ +| set in a magical universe. The ZORK trilogy takes place in the ruins of an | +| ancient empire lying far underground. You, a dauntless treasure-hunter, are | +| venturing into this dangerous land in search of wealth and adventure. | +| Because each part of the ZORK saga is a completely independent story, you | +| can explore them in any order. However, since ZORK I is the least difficult, | +| it is usually the best place to begin. v +|______________________________________________________________________________| + +Many strange tales have been told of the fabulous treasures, exotic +creatures and diabolical puzzles in the Great Underground Empire. As an +aspiring adventurer you will undoubtedly want to locate the treasures and +deposit them in your trophy case. You'd better equip yourself with a source +of light (for the caverns are dark) and weapons (for some of the inhabitants +are unfriendly -- especially the thief, a skilled pickpocket and ruthless +opponent). + + + + + + ___________________ ___________________ + .-/| 78 ~~**~~ \ / ~~**~~ 79 |\-. + |||| : |||| + |||| Dorothy asked : The Scarecrow |||| + |||| the Scarecrow : answered "Some |||| + |||| "How can you : people without |||| + |||| talk if you : brains do an |||| + |||| haven't got : awful lot |||| + |||| a brain?" : of talking." |||| + |||| She looked at : She replied, |||| + |||| him puzzled. : "That's true." |||| + |||| : |||| + |||| The Wizard Of Oz : boba@wwa.com |||| + ||||___________________ : ___________________|||| + ||/====================\:/====================\|| + `---------------------~___~--------------------'' + + + ___ + _| |_ + / |___| \ + | ___ | + \_| |_/ + |___| + ___/ +| | +|___| + + + ___ + | | + |___| + ___/ + | | + |___| + _|_ +_| |_ + |___| + + + +0 1 2 3 4 5 6 7 +01234567890123456789012345678901234567890123456789012345678901234567890123456789 +1. _You_ don't. +2. Have you tried saying OPEN EGG? +3. It takes a great deal of manual dexterity and the proper + tools. +4. Someone else in the game can do it. +5. Only the Thief can open the egg. Give it to him or leave it + underground where he will find it. + + +01234567890123456789012345678901234567890123456789012345678901234567890123456789 +0[Main Menu]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] [ Exit ] +1 +2>LOOK +3 +4You see a collection of classic Infocom games, all playable. +5 +6________________________________________________________________________________ +7 +8 +9Browse games by [ Name ] [ / Genre ] [ Difficulty ] +0 +1 1. Fantasy +2 +3 2. Science Fiction +4 +5 3. Mystery +6 +7 4. Adventure +8 +9 5. Other +0 +1 +2 +3 + + + + + + + + + + + +|^: Disk 2 (Slot 7) MAIN MENU +_______________________________________________________________________________ + ___________________________ + | Main Menu |_____________________________________ + | | + | | + | 1. Add files to the Desktop | + | | + | 2. Work with one of the files on the Desktop | + | | + | 3. Save Desktop files to disk | + | | + | 4. Remove files from the Desktop | + | | + | 5. Other Activities | + | | + | 6. Quit | + | | + |_________________________________________________________________| + + + +SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS +Type number, or use arrows, then press Return 12/16/17 10:11 pm diff --git a/res/Pitch Dark.interpp20180104.2mg b/res/Pitch Dark.interpp20180104.2mg new file mode 100644 index 0000000..edd5b44 Binary files /dev/null and b/res/Pitch Dark.interpp20180104.2mg differ diff --git a/res/Pitch Dark.master games collection.do.not.edit.2mg b/res/Pitch Dark.master games collection.do.not.edit.2mg new file mode 100644 index 0000000..2bd866e Binary files /dev/null and b/res/Pitch Dark.master games collection.do.not.edit.2mg differ diff --git a/res/artwork/ballyhoo.a2fc b/res/artwork/ballyhoo.a2fc new file mode 100644 index 0000000..dea305e Binary files /dev/null and b/res/artwork/ballyhoo.a2fc differ diff --git a/res/artwork/cutthroats.a2fc b/res/artwork/cutthroats.a2fc new file mode 100644 index 0000000..28fa752 Binary files /dev/null and b/res/artwork/cutthroats.a2fc differ diff --git a/res/artwork/hgttg.a2fc b/res/artwork/hgttg.a2fc new file mode 100644 index 0000000..229f015 Binary files /dev/null and b/res/artwork/hgttg.a2fc differ diff --git a/res/artwork/hollywood.a2fc b/res/artwork/hollywood.a2fc new file mode 100644 index 0000000..8a59eed Binary files /dev/null and b/res/artwork/hollywood.a2fc differ diff --git a/res/artwork/infidel.a2fc b/res/artwork/infidel.a2fc new file mode 100644 index 0000000..78f1a82 Binary files /dev/null and b/res/artwork/infidel.a2fc differ diff --git a/res/artwork/lurking.a2fc b/res/artwork/lurking.a2fc new file mode 100644 index 0000000..6377dbb Binary files /dev/null and b/res/artwork/lurking.a2fc differ diff --git a/res/artwork/moonmist.a2fc b/res/artwork/moonmist.a2fc new file mode 100644 index 0000000..e487388 Binary files /dev/null and b/res/artwork/moonmist.a2fc differ diff --git a/res/artwork/planetfall.a2fc b/res/artwork/planetfall.a2fc new file mode 100644 index 0000000..72083fc Binary files /dev/null and b/res/artwork/planetfall.a2fc differ diff --git a/res/artwork/plundered.a2fc b/res/artwork/plundered.a2fc new file mode 100644 index 0000000..bd0ac63 Binary files /dev/null and b/res/artwork/plundered.a2fc differ diff --git a/res/artwork/seastalker.a2fc b/res/artwork/seastalker.a2fc new file mode 100644 index 0000000..8efbce8 Binary files /dev/null and b/res/artwork/seastalker.a2fc differ diff --git a/res/artwork/suspect.a2fc b/res/artwork/suspect.a2fc new file mode 100644 index 0000000..4a354d9 Binary files /dev/null and b/res/artwork/suspect.a2fc differ diff --git a/res/artwork/suspended.a2fc b/res/artwork/suspended.a2fc new file mode 100644 index 0000000..daafd15 Binary files /dev/null and b/res/artwork/suspended.a2fc differ diff --git a/res/artwork/wishbringr.a2fc b/res/artwork/wishbringr.a2fc new file mode 100644 index 0000000..069bdee Binary files /dev/null and b/res/artwork/wishbringr.a2fc differ diff --git a/res/artwork/zork1.a2fc b/res/artwork/zork1.a2fc new file mode 100644 index 0000000..635d804 Binary files /dev/null and b/res/artwork/zork1.a2fc differ diff --git a/res/artwork/zork2.a2fc b/res/artwork/zork2.a2fc new file mode 100644 index 0000000..64197d1 Binary files /dev/null and b/res/artwork/zork2.a2fc differ diff --git a/src/info.a b/src/info.a new file mode 100755 index 0000000..73a9ace --- /dev/null +++ b/src/info.a @@ -0,0 +1,787 @@ +!to "info#063000",plain +*=$3000 + +save_name = $300 +;;read_size = ?? can be as large as $4000-$300 bytes +read_buffer = $3500 ;read_size bytes, must be page-aligned +file_buffer = $7400 ;$400 bytes, must not overlap with read_buffer, must be page-aligned +record_size = $40 +info_buffer = $7200 ;record_size*8 (currently $200) bytes, can be anywhere +zpage_info = $fe ;word +zpage_ptr = $fd +name_offset = 0 ;1+37 bytes +time_offset = 42 ;1+8 bytes ("12:01 pm") +score_offset = 51 ;1+6 bytes (-12345) +moves_offset = 58 ;1+5 bytes (12345) + + +;zpage used by Infocom code +zp_8C = $8c +zp_8D = $8d +zp_8E = $8e ;word +zp_9C = $9c +zp_9D = $9d +zp_9E = $9e +zp_9F = $9f +zp_A0 = $a0 ;word +zp_A3 = $a3 +zp_AC = $ac +zp_AD = $ad +zp_B0 = $b0 ;word +zp_B2 = $b2 +zp_B3 = $b3 +zp_C9 = $c9 +zp_CA = $ca +zp_CB = $cb +zp_CC = $cc +zp_CD = $cd +zp_CE = $ce +zp_CF = $cf +zp_D3 = $d3 +zp_D4 = $d4 +zp_D5 = $d5 +zp_D6 = $d6 +zp_D7 = $d7 +zp_D8 = $d8 +zp_DB = $db +zp_DC = $dc + + + ;set prefix if not defined, needed only if stand-alone code + +- jsr $bf00 +op_c7 + !byte $c7 + !word c7_parms + ldx $200 + bne + + lda $bf30 + sta c5_parms+1 + jsr $bf00 + !byte $c5 + !word c5_parms + ldx $201 + inx + txa + and #$0f + sta $200 + lda #$2f + sta $201 + dec op_c7 + bne - ++ + + jsr exchange + lda #>info_buffer + sta zpage_info+1 + lda #read_buffer + sta zp_A3 + lda read_buffer+1 + and #2 + sta zp_DC + clc + lda read_buffer+$0d + sta zp_AC + lda read_buffer+$0c + adc #>read_buffer + sta zp_AD + clc + lda read_buffer+$19 + sta zp_B0 + lda read_buffer+$18 + adc #>read_buffer + sta zp_B0+1 + clc + lda read_buffer+$0b + sta zp_B2 + lda read_buffer+$0a + adc #>read_buffer + sta zp_B3 + + ;dump info, actual Infocom code in upper-case + + lda #42 + sta max_chars + LDA #$10 ; location + JSR fetch_obj + LDA zp_8C + JSR decompress + + lda zpage_ptr + !if name_offset>0 { + sec + sbc #name_offset + } + ldy #name_offset + sta (zpage_info),y + + ldy #time_offset + sty zpage_ptr + lda #0 + sta max_chars ;can't overflow anymore + sta (zpage_info),y + + LDA #$11 ; score + JSR fetch_obj + + LDA zp_DC + BNE loc_1627 + + ldy #score_offset + sty zpage_ptr + + LDA zp_8C + STA zp_D3 + LDA zp_8D + STA zp_D4 + JSR sub_215D + + sec + lda zpage_ptr + sbc #score_offset + ldy #score_offset + sta (zpage_info),y + JMP loc_165F + +loc_1627: + LDA zp_8C + BNE loc_164B + LDA #$18 + +loc_164B: + CMP #$0D + BCC loc_1651 + SBC #$0C + +loc_1651: + STA zp_D3 + LDA #$00 + STA zp_D4 + JSR sub_215D + LDA #$3A + JSR emit_char + +loc_165F: + LDA #$12 ; moves or minutes + JSR fetch_obj + LDA zp_8C + STA zp_D3 + LDA zp_8D + STA zp_D4 + LDA zp_DC + BNE loc_1676 + + ldy #moves_offset + sty zpage_ptr + + JSR sub_215D + + sec + lda zpage_ptr + sbc #moves_offset + ldy #moves_offset + sta (zpage_info),y + rts + +loc_1676: + LDA zp_8C + CMP #$0A + BCS loc_1681 + LDA #$30 + JSR emit_char + +loc_1681: + JSR sub_215D + LDA #$20 + JSR emit_char + LDA #$11 ; hours + JSR fetch_obj + LDA zp_8C + CMP #$0C + BCS loc_1698 + LDA #$61 + BNE loc_169A + +loc_1698: + LDA #$70 + +loc_169A: + JSR emit_char + LDA #$6D + JSR emit_char + + sec + lda zpage_ptr + sbc #time_offset + ldy #time_offset + sta (zpage_info),y + rts + +loc_1459: + jmp * ;internal error + +fetch_obj: + JSR sub_1A70 + LDA (zp_8E),Y + STA zp_8D + INY + LDA (zp_8E),Y + STA zp_8C + RTS + +sub_1A70: + SEC + SBC #$10 + LDY #0 + STY zp_8E+1 + ASL + ROL zp_8E+1 + CLC + ADC zp_AC + STA zp_8E + LDA zp_8E+1 + ADC zp_AD + STA zp_8E+1 + +locret_1A85: + RTS + +decompress: + JSR sub_26A0 + LDY #7 + LDA (zp_8E),Y + TAX + INY + LDA (zp_8E),Y + STA zp_8E + STX zp_8E+1 + INC zp_8E + BNE loc_1D23 + INC zp_8E+1 + +loc_1D23: + JSR sub_2474 + JMP sub_2495 + +sub_1FE2: + LDA #0 + SEC + SBC zp_D3 + STA zp_D3 + LDA #0 + SBC zp_D4 + STA zp_D4 + RTS + +sub_1FF0: + LDA zp_D5 + ORA zp_D6 + BEQ loc_2021 + JSR sub_2026 + +loc_1FF9: + ROL zp_D3 + ROL zp_D4 + ROL zp_D7 + ROL zp_D8 + LDA zp_D7 + SEC + SBC zp_D5 + TAY + LDA zp_D8 + SBC zp_D6 + BCC loc_2011 + STY zp_D7 + STA zp_D8 + +loc_2011: + DEX + BNE loc_1FF9 + ROL zp_D3 + ROL zp_D4 + LDA zp_D7 + STA zp_D5 + LDA zp_D8 + STA zp_D6 + RTS + +loc_2021: + LDA #8 + JMP loc_1459 + +sub_2026: + LDX #$10 + LDA #0 + STA zp_D7 + STA zp_D8 + CLC + RTS + +sub_215D: + LDA zp_D4 + BPL loc_2169 + LDA #$2D + JSR emit_char + JSR sub_1FE2 + +loc_2169: + LDA #0 + STA zp_DB + +loc_216D: + LDA zp_D3 + ORA zp_D4 + BEQ loc_2185 + LDA #$A + STA zp_D5 + LDA #0 + STA zp_D6 + JSR sub_1FF0 + LDA zp_D5 + PHA + INC zp_DB + BNE loc_216D + +loc_2185: + LDA zp_DB + BNE loc_218E + LDA #$30 + JMP emit_char + +loc_218E: + PLA + CLC + ADC #$30 + JSR emit_char + DEC zp_DB + BNE loc_218E + RTS + +sub_237E: + LDA zp_9D + CLC + ADC zp_A3 + STA zp_A0+1 + LDX #$FF + STX zp_9F + INX + STX zp_A0 + +loc_23A0: + LDY zp_9C + LDA (zp_A0),Y + INC zp_9C + BNE loc_23B2 + LDY #0 + STY zp_9F + INC zp_9D + BNE loc_23B2 + INC zp_9E + +loc_23B2: + TAY + RTS + +sub_2474: + LDA zp_8E + STA zp_9C + LDA zp_8E+1 + STA zp_9D + LDA #0 + STA zp_9E + STA zp_9F + RTS + +sub_2483: + LDA zp_8E + ASL + STA zp_9C + LDA zp_8E+1 + ROL + STA zp_9D + LDA #0 + STA zp_9F + ROL + STA zp_9E + +locret_2494: + RTS + +sub_2495: + LDX #0 + STX zp_C9 + STX zp_CD + DEX + STX zp_CA + +loc_249E: + JSR sub_2569 + BCS locret_2494 + STA zp_CB + TAX + BEQ loc_24E9 + CMP #4 + BCC loc_2507 + CMP #6 + BCC loc_24ED + JSR sub_255D + TAX + BNE loc_24C1 + LDA #$5B + +loc_24B8: + CLC + ADC zp_CB + +loc_24BB: + JSR emit_char + JMP loc_249E + +loc_24C1: + CMP #1 + BNE loc_24C9 + LDA #$3B + BNE loc_24B8 + +loc_24C9: + LDA zp_CB + SEC + SBC #6 + BEQ loc_24D7 + TAX + LDA byte_2686,X + JMP loc_24BB + +loc_24D7: + JSR sub_2569 + ASL + ASL + ASL + ASL + ASL + STA zp_CB + JSR sub_2569 + ORA zp_CB + JMP loc_24BB + +loc_24E9: + LDA #$20 + BNE loc_24BB + +loc_24ED: + SEC + SBC #3 + TAY + JSR sub_255D + BNE loc_24FB + STY zp_CA + JMP loc_249E + +loc_24FB: + STY zp_C9 + CMP zp_C9 + BEQ loc_249E + LDA #0 + STA zp_C9 + BEQ loc_249E + +loc_2507: + SEC + SBC #1 + ASL + ASL + ASL + ASL + ASL + ASL + STA zp_CC + JSR sub_2569 + ASL + CLC + ADC zp_CC + TAY + LDA (zp_B0),Y + STA zp_8E+1 + INY + LDA (zp_B0),Y + STA zp_8E + LDA zp_9E + PHA + LDA zp_9D + PHA + LDA zp_9C + PHA + LDA zp_C9 + PHA + LDA zp_CD + PHA + LDA zp_CF + PHA + LDA zp_CE + PHA + JSR sub_2483 + JSR sub_2495 + PLA + STA zp_CE + PLA + STA zp_CF + PLA + STA zp_CD + PLA + STA zp_C9 + PLA + STA zp_9C + PLA + STA zp_9D + PLA + STA zp_9E + LDX #$FF + STX zp_CA + INX + STX zp_9F + JMP loc_249E + +sub_255D: + LDA zp_CA + BPL loc_2564 + LDA zp_C9 + RTS + +loc_2564: + LDY #$FF + STY zp_CA + RTS + +sub_2569: + LDA zp_CD + BPL loc_256F + SEC + RTS + +loc_256F: + BNE loc_2584 + INC zp_CD + JSR sub_237E + STA zp_CF + JSR sub_237E + STA zp_CE + LDA zp_CF + LSR + LSR + JMP loc_25AD + +loc_2584: + SEC + SBC #1 + BNE loc_259F + LDA #2 + STA zp_CD + LDA zp_CE + STA zp_8E + LDA zp_CF + ASL zp_8E + ROL + ASL zp_8E + ROL + ASL zp_8E + ROL + JMP loc_25AD + +loc_259F: + LDA #0 + STA zp_CD + LDA zp_CF + BPL loc_25AB + LDA #$FF + STA zp_CD + +loc_25AB: + LDA zp_CE + +loc_25AD: + AND #$1F + CLC + RTS + +byte_2686: + !BYTE 0 + !BYTE $D, '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', ',', '!', '?', '_' + !BYTE '#', $27, '"', '/', $5C, '-', ':', '(', ')' + +sub_26A0: + STA zp_8E + LDX #0 + STX zp_8E+1 + ASL + ROL zp_8E+1 + ASL + ROL zp_8E+1 + ASL + ROL zp_8E+1 + CLC + ADC zp_8E + BCC loc_26B6 + INC zp_8E+1 + +loc_26B6: + CLC + ADC #$35 + BCC loc_26BD + INC zp_8E+1 + +loc_26BD: + CLC + ADC zp_B2 + STA zp_8E + LDA zp_8E+1 + ADC zp_B3 + STA zp_8E+1 + RTS + +emit_char + sty yreg+1 + inc zpage_ptr + ldy zpage_ptr + sta (zpage_info),y + dec max_chars + beq fail_slot +yreg + ldy #0 + rts + +fail_slot +stack_pointer + ldx #0 + txs + rts + +max_chars !byte 0 + +zpage_old +!if *+(zp_DC-zp_8C)>=read_buffer { + !error "Code is too large" +} \ No newline at end of file