4IBM Uyph >> FastCopy PRO 1.2 << by Martin Backschat, Bergstrae 16, D-85120 Hepberg // (c) 1986-94 Martin BackschatO`  @`! #@%`')+-/1 3@5`79;=?A C@E`GIKMOQ S@U`WY[]_a c@e`gioq s@u`wy{} @` @ ` @ o @ ` @ o ɠ @ ` ׀  @` @`!Aa   !Aa!!#A%a')+-/1!3A5a79;=A!CAEaGIKMOQ!SAUaWY[]_a!cAeagikmoq!sAuawy{}!Aa!Oa!Aa!Aa/Aɡ!Aaׁ١!A!Aa " B b  !"!B!b!!!!!"!""#B"%b"'")"+"-/#1"#3B#5b#7#9#;#=#?$A"$CB$Eb$G$I$K$M$O%Q"%SB%Ub%W%Y%[%]%_&/&cB&eb&g&i&k&m&o'q"'sB'ub'w'y'{'}'("(B(b((((()")b)))))*"*B*o*****+B+b+++++,",B,b,ǂ,ɢ,,,-"-B-o-ׂ-٢---.B.b...../"/B/b/////0#0C0c00 0 001#1C1c111112!#2#C2%c2'2)2O`  @`! #@%`')+-/1 3@5`79;=?A C@E`GIKMOQ S@U`WY[]_a c@e`gioq s@u`wy{} @` @ ` @ o @ ` @ o ɠ @ ` ׀  @` @`!Aa   !Aa!!#A%a')+-/1!3A5a79;=A!CAEaGIKMOQ!SAUaWY[]_a!cAeagikmoq!sAuawy{}!Aa!Oa!Aa!Aa/Aɡ!Aaׁ١!A!Aa " B b  !"!B!b!!!!!"!""#B"%b"'")"+"-/#1"#3B#5b#7#9#;#=#?$A"$CB$Eb$G$I$K$M$O%Q"%SB%Ub%W%Y%[%]%_&/&cB&eb&g&i&k&m&o'q"'sB'ub'w'y'{'}'("(B(b((((()")b)))))*"*B*o*****+B+b+++++,",B,b,ǂ,ɢ,,,-"-B-o-ׂ-٢---.B.b...../"/B/b/////0#0C0c00 0 001#1C1c111112!#2#C2%c2'2)2AUTO (DEMONWINSWRQaDRT_4 SWR7 wEM_HUGHESWR`FONTZ1 SWRnFONTZ2 SWR{ GFA1 SWR.GFA2 SWRaVGRIMBLD SWR HARDBALLSWR0LCP SWR\[9LUSTSPACSWRk^MAN_UTD SWR 1MIGHTMAGSWRPROJECTLSWR$3QUANTUM SWRBmLREDSTORMSWRQZRESOL101SWRdOROGUE SWRqNYSDOG_SOLSWRb SECED SWRSPACECONSWRKSTAC1 SWRCSTAC2 SWR?=SUPERCYCSWR34SYSTEM5 SWR@uTROOPER SWRWU3_CODESSWRdVOODOO SWRn.WORLDGAMSWR{)]. G`.. G`DOC_21 PRG! SOFTWARE PROUDLY PRESENTS DEMON'S WINTER Yeah, we've already covered this in DOC DISK 6....here's a bigger, more complete version for ya. INTRODUCTION 'Twas the seventh day in the month of the Ruby when the battle horns cried out above the setting sun. Beneath the peaceful arc of the orange and violet hues of dusk, the small village of Ildryn lay in terror. Brave men, blacksmith and barkeep, father and grandfather, stood shivering at the southern entrance of the village, hatchets and simple swords held in white-knuckled hands. Long, lonely shadows lent unnatural grandeur to a makeshift army that sought to defend its town from destruction. Three and twenty pairs of eyes scanned the dark horizon for the first sign of the invaders. As the sun sank behind the hills, the sound of hooves was heard, a low rumble at first, growing louder until it rumbled light thunder in the cool autumn air. The inhuman army's blood-red banners flickered in the dying light like candle flames guttering out. As they rode closer, their forms became clearer: hideous, inhuman faces. Kobolds, mostly, the small, sharp-toothed humanoids carrying axes, their numbers twice as great as the villagers. The kobolds were led by goblins, who rallied them with cries of "Glory be to Xeres!" and "Praised be our master Xeres!" Swords flashed in the dim light of dusk and crimson blood stained the ground. The kobolds were driven back at first by the fury of the villagers, but then their numbers took their toll. One by one, the villagers fell, outnumbered and inexperienced in fighting. Blood gave way to flame as the kobolds set fire to the wooden houses and tore the stone buildings to the ground. As the last rays of the sun swept the plains, the battle was over. The sound of hooves faded into the distance, and only the crackling of fire was heard. Night enveloped the village and a cold breeze fanned the embers of Ildryn. Less than a league away, the women and children of Ildryn watched the flames of their homes through tearful eyes. As the sun set, the weary villagers turned their backs on the tomb that was once their home and set off north for the village of Seaside. The last words of their fathers' voices still rang in the ears of the sons and daughters of Ildryn: "If I die this day, avenge me...avenge me...avenge me..." HOW TO USE THIS MANUAL This manual gives you all of the background information you need to play Demon's Winter. If you've already played other role-playing games (especially Shard of Spring), many of the game mechanics will be familiar. If you want to start playing right away, read the "Getting Started" section. As you adventure in different areas, read the particular section in the manual on those areas to learn what commands are available. Finally, read the "Hints On Gameplay" section for some tips on more successful adventuring. The best way to succeed at Demon's Winter is to read through the entire manual before you begin, for there are many things to know about this strange and mysterious world. The canny adventurer arms himself with information before venturing forth into the dangerous reaches of Ymros. A few minutes spent browsing through the rest of the manual before you start playing will give you a little better idea of what to look for in Demon's Winter. May your swords stay sharp... CREATING CHARACTERS The Character Utilities are used to create individual characters and to form parties of five of these characters. Only a party of characters can adventure in the land of Ymros. The Character Utilities are brought up from the title screen by pressing "C". Four options appear: Create, Remove, List, and Initialize Party. Pressing the key corresponding to the first letter of these options activates that option. Create allows you to create a new character; Remove allows you to remove an existing character from the party; List shows you all the characters in the party; and Initialize Party removes all of the characters in the party. Pressing ESC brings you back to the title screen. RACE Press "C" to bring up the Character Creation utility. The first choice you have in character creation is choosing the race of your character. Press the corresponding number to choose the character's race. Characters can be one of five races: Human, Elf, Dwarf, Dark Elf, or Troll. Each race has its advantages and disadvantages, as shown on the following table. RACE BONUS SKILL RACIAL MODIFIERS HUMAN none none ELF Sense magic -2 Str, +2 Int, -1 End DWARF See in dark -1 Spd, +1 Str, -2 Int DARK ELF Power Leech -2 Str, +2 Int, -1 End, -1 Skill TROLL Regeneration -1 Str, -3 Int, +2 End TRAITS After you choose the character's race, you will generate your traits for your character. Each character, regardless of race, is defined by nine traits: speed, strength, intellect, endurance, skill in attack, level of toughness, hit points, and spell points. Each trait is given a numerical value. SPEED: Determines how fast the character moves, how many times per combat round the character can attack, and who gets to attack first. STRENGTH: High strength values add more damage to attacks, while low strength values reduce the damage done. Weapons have a certain minimum strength requirement. INTELLECT: Determines the number and complexity of skills that the character can choose and determines the number of spell points the character gets. ENDURANCE: Determines how much damage the character can take and how many hit points are gained when the character gains a level. SKILL: Determines the character's ability with weapons. LEVEL: Determines the character's toughness. Each character starts at level 1, and gains levels as the character adventures and gets experience. Gaining a level adds to hit points, spell points, and traits. HIT POINTS: Determines how much damage a character can take before death. Hit points may be regained by magic or by sleeping. When Hit Points are 0, the character is dead. SPELL POINTS: Each spell costs Spell Points to cast. Spell Points may be regained by sleeping. EXPERIENCE: Determines when a level is gained. Experience is acquired by killing monsters. The first five traits are determined randomly by the computer. You'll see the five traits listed in the upper left hand corner of the screen; the values are listed to the right of the traits. In a box on the far right are the average values of the traits for that race. You have three chances to affect the values. If a trait has a low value, press the number of the trait (or traits) and then press ESC to generate new numbers, replacing the values you selected. This can only be done twice; the last numbers are used, no matter what they are. You should "reroll" any value under 6. CLASS Now that you know the race and the traits of the character, it's time to choose the character's profession, which determines what skills the character can have. There are 10 classes, which are available to characters of all races. RANGER: A fighter specially trained in outdoor survival. They are skilled with all types of weapons and are experts at recognizing monsters and hunting. Most magic is difficult for them, but they can learn to understand Wind Runes, which can be a powerful advantage. PALADIN: The classic knight in shining armor--a faithful do-gooder and expert swordsman. Almost all are religious, preferring the civilized Priestly gods. Their natural charisma makes them persuasive, which is especially helpful while bargaining. They can learn the Visionary's ability to view a merchant's mind and tell if he is lying. Magic is evil to a Paladin, and therefore abhorrent, except for the Spirit Runes containing the arts of healing and resurrection. BARBARIAN: Powerful fighters with a tendency to go berserk in combat, making them a deadly opponent. Barbarians prefer axes and maces, though occasionally the sword. The only magic they will use are Ice Runes. They rarely worship Priestly gods; some do worship the more barbaric gods. MONK: The violet-robed monks are experts at unarmed combat and skilled with ancient books of lore. Their religious devotion is strong. Many monks have left on long quests to learn kung-fu from the last surviving master. CLERIC: A priest of one of the many gods of Ymros (see the section on Religion). The cleric never uses a bladed weapon, except for a small dagger, often protecting themselves with maces or karate. Like the paladin, clerics have natural charisma and are good at bargaining and detecting lies. THIEF: These shady characters are very handy while adventureing, being proficient at detecting and disarming traps as well as being competent fighters. They will not wear heavy armor that might interfere with the use of their skills. WIZARD: A wielder of magic, specializing in the variety called Rune Magic (see the section on Magic). They are masters of fire, metal, wind, ice, and spirit. They are also good at identifying potions and can learn to use a weapon (though at the cost of giving up some magical power). Wizards are forbidden the use of all but the lightest armor. Wizards tend to be down-to-earth folk, and are therefore more respected than Sorcerers and have an easier time learning to hunt. SORCERER: A master of the dark arts of Summoning and illusion. A sorcerer is more violent than a wizard, and more apt to use weapons. The sorcerer is the only class to have easy access to the art of Possession. VISIONARY: The visionary is a strange character, able to learn the unusual set of skills View Land, View Mind, View Room, and View Item. They are also fighters who can wear armor as heavy as chain mail, and they can learn the arts of the Sorcerer, including Possession. SCHOLAR: A character specializing in knowledge, particularly of potions, items, and monsters; such knowledge often comes in handy while adventuring. They are expert tacticians, always knowing what a monster will do next. With a little training, they can learn to use smaller weapons or karate. Press the key corresponding to the number next to the class you want for your character. Next, you'll be shown a list of skills that you character can learn. SKILLS Each skill allows the character to do something; without the sword skill, for instance, a character cannot use a sword. Each skill has an intellect point cost. Characters may choose skills as long as the total Intellect point cost of the skills doesn't exceed the character's intellect value. For example, a cleric with an intellect of 11 could learn Priesthood (3), Mace (2), View Mind (4) and Persuasiveness (2). Each class has its own point cost for each skill; for instance, Disarm Trap costs a thief 3 points while it costs a wizard 9 points. When characters are first created, you can only choose two skills from a shortened skill list (skills commonly practiced by that class). Later on, while adventuring, you may find colleges where you can learn additional skills (this is discussed in the section on Colleges). All classes can learn all skills, but the costs will differ depending on the class of the character. Left over Intellect points can be used later when you visit colleges to buy new skills. See Appendix A for a list of the Intellect point costs for each skill, by class. WEAPON SKILLS Each of these skills represents the training required to use a weapon of that type. Characters without the appropriate skill for a weapon may not use it. Daggers require no skill. See Appendix F for a complete list. AXE: Use of the small axe and the dreaded battle axe. KARATE: Use of the hands as a weapon. When a character has this skill and "equips" (see the section on Camp) with his hands, he does damage dependent on his Skill Trait. A skillful warrior with karate can do as much damage as the mightiest sword. MACE: Use of the mace and morningstar. SWORD: Use of the short sword, broadsword, or the mighty two-handed sword. OTHER COMBAT SKILLS ARMORED SKIN This skill will give you the tough skin of a veteran warrior, adding the protection of leather armor to whatever armor you may be wearing. BERSERKING: The ability to go beserk in combat, giving the character a 25% chance of doing critical damage instead of the normal 10% chance. FENCING: Advanced swordplay that gives the character an additional 10% bonus to hit and an additional 8% chance to do critical damage. KUNG-FU: Advanced karate that gives the character a chance of stunning his opponent when attacking with his hands. The stunned foe is motionless for one round for each critical hit. In this state the foe is easier to hit. Karate is not necessary to learn kung fu, but it is helpful. TACTICS: Allows the character to know who each monster is planning to attack before it does, which is helpful in deciding what to do. RUNE MAGIC FIRE RUNES: Six spell dealing with fire, an element of destruction. METAL RUNES: Seven spells dealing with metal, an element of weapons and binding. WIND RUNES: Seven spells dealing with the wind, an element of speed, movement, and subtle power. ICE RUNES: Six spells dealing with ice, an element of confinement and damage. SPIRIT RUNES: Nine spells dealing with the spirit, an element of life forces, mental powers, and resurrection. CHANTS: ILLUSION: Allows the caster to conjure an illusionary ally who will fight until killed or is disbelieved. SUMMON: Allows the caster to conjure a true summoned being who will follow the summoner's orders until killed. Costs twice as much as an illusion. POSSESSION: A very powerful chant that allows the caster to take control of one of his foes and command him. See "Possession". VISIONARY SKILLS VIEW LAND: allows the user to get a bird's eye view of his surrounding outdoors, even at night. VIEW ROOM: Allows the user to look forward into a room or passage and see what's there without danger. VIEW MIND: Used to detect if a merchant is lying about an item for sale. LORE WEAPON LORE: Knowledge of various weapons and armaments. POTION LORE: Knowledge of vials and salves. ITEM LORE: Knowledge of miscellaneous magic items. MONSTER LORE: Knowledge of wandering monsters and their abilities. MISCELLANEOUS SKILLS DETECT TRAPS: The ability to check the passage in front of you for traps. DISARM TRAPS: Allows you to disarm traps found with Detect Traps. HUNTING: The ability to hunt for food while outdoors; if the party is on a ship, this skill applies to fishing. PERSUASIVENESS: Improves the party's ability to haggle with merchants for a decent price. PRIESTHOOD: Allows the character choose a deity from the Priestly gods. See "Religion". SHAMAN: Allows the character to choose a deity from the Shaman gods. See "Religion". EXPERIENCE The following table shows the amount of experience needed to gain levels. LEVEL EXPERIENCE 1 300 2 700 3 1,100 4 1,800 5 2,800 6 4,600 7 7,500 8 12,600 9 21,600 10 37,700 11 66,400 12 118,000 13 210,800 14 377,600 15 677,600 16 1,217,500 17 2,189,300 18 3,938,200 19 7,086,100 20 12,752,200 EXPLORING Your party will start their adventure near the ruined village of Ildryn. From there your party is free to wander wherever they like, for most of the game will be spent exploring the land of Ymros and its surrounding territory. Those who have played Shard of Spring may recognize their initial surroundings, though much has changed in the 5,000 years since the events of Shard of Spring took place. Some of the towns still remain, but the landscape has been subjected to subtle changes over the long years. Once you acquire a ship (see "Exploring the Seas"), you may go beyond Ymros and explore new territories. The world of Demon's Winter is 32 times larger than Shard of spring, so take your time and try to draw a rough map as you go along. OVERVIEW The world of Ymros has various terrain types where you can expect different encounters and conditions. This section will describe the various terrains and places in the world of Ymros, and explain any special commands that may apply. TERRAINS While you are wandering around, there are seven different types of terrain that you will encounter: PLAINS: The most common terrain on Ymros. Expect to find all sorts of humanoids, adventurers, and thieves here, as well as wild dogs (coyotes), snakes, and maybe dragons. FOREST: Many kinds of forests exist, from light scrub to dense forests. Forests are home to animals such as bears and timber wolves, as well as humanoids. Undead also wander the woods along with snakes, insects, and the mysterious stalkers. These dwellers of remote forests are like a floating balloon with one eye on a stalk and have the power to summon up illusions and actual monsters to do their fighting. SWAMP: Swamps are rather nasty places to be. The humanoids, such as kobolds, do not wander into the swamps, and neither should weak adventurers. Insects and snakes are common, while undead are rare. Beware of two special swamp dwellers: the Shambling Mounds and the Will o' the Wisp. The Shamblers are large humanoids made of animated vegetable matter that attack with ferocity. The Will o' Wisps are seen as a number of glowing, floating spheres and are creatures of great magical power. HILLS: Hills are the home of many giants and, in more remote areas, the dreaded Cave Bear. Walking through hills is quite tiring; double the normal movement time passes while walking in the hills. Dragons also make their lairs in the hills, and adventurers often come there to slay the dragons and get their treasure. TUNDRA: This icy wasteland is mostly inhabited by arctic bears and winter wolves. An occasional Yeti (abominable snowman) has been seen there. Undead also wander the icelands, immune to the cold. In tougher areas, snow giants, ice dragons, ice demons, and even ice elementals may be found. KUDZU: A kudzu is a purple ground-vine that spreads rapidly. It covers ground like a carpet but doesn't hamper movement. Its large expanses of purple ground have inspired both awe and laughter. Humanoids and adventurers are found there, along with insects and dragons. DESERT: The desert is a lonely place. Humans, except for some thieves, do not go there. Mostly dervishes and salamanders live there. Dervishes appear as a kind of whirlstorm that attacks fiercely. While salamanders appear as flaming snakes who can cast spells dealing with fire. Dragons and snakes are occasionally found. LIGHT AND TIME Each day on Ymros is 26 hours long and each month on Ymros is 34 days long. While you are wandering about, you will notice that the area you can see grows smaller as the day wears on, telling you that darkness is approaching and soon it will be too dark to see. If you don't set up camp at this point, you will be forced into camp when darkness falls. Note that torches and light spells do not help against night in the wilderness. If you press "P" while wandering, the time and other useful information will appear. HUNTING You may find it helpful (not to mention cost effective) to have a hunter in your party. Any time you are outside (or on a ship), each hunter has a chance to go out and look for food once per day. The amount he finds every day depends on luck. Having a hunter saves you money, since you don't have to buy food in a pub unless food is scarce in the area. Being less dependent on towns allows you to wander farther. RELIGION Throughout the petty quests, trials, and tribulations of mortals, Ymros is always watched over by two pantheons of gods. The civilized people worship the Priestly gods, while the barbarians who live in the wilderness find comfort in their Shaman deities. Each god presides over its own realm of power, and its worshippers can call on their god in times of great need. Each character may worship only one deity. PRIEST GODS BALMUR: The God of Time. Balmur is often pictured as a large golden eagle with stars for eyes. His power can cause his foes to wither with age. His temples are often in secluded, peaceful places. The town of Iris has long been the location of his largest following. VEMARKN: The Goddess of Magic. Vemarkn, a remarkably tall woman garbed in prismatic silk, presides over the magical arts of Runes and Chants. If wizards or sorcerers are religious, they usually worship Vemarkn. In times of dire need Vemarkn endows her priests with great amounts of magical power. MALDORATH: The God of Death. Seen only in nightmares as a genderless skeleton garbed in tattered cloaks of black and gold. His temples are few and hidden and no town claims him as its patron deity. A fiery death awaits his foes. ILLO: The God of LIfe. A young child holding a wine glass filled with water, Illo is the patron deity of many towns on Ymros. He shuns combat, but praying to him in camp may persuade him to bring life back to a deceased character. CAMEAR: The God of Peace. Camear has many temples both in the wilderness and in towns. A young man with a dove, Camear can lift his worshippers out of combat and into safety. SHAMAN GODS OMIZEH: The God of Life. Like Illo, Omizeh can bring dead characters back to life. She takes the form of a young woman, a swan, or a great white bird. A few towns are known to contain temples to her. GAMUR: The God of Death. A great feathered beast, Gamur is a sickening eater of carrion. His worshippers stay away from towns. Unlike Maldorath, Gamur kills from within by torturing the very souls of his victims before carrying them away to his lair. ACISC: The God of Combat. Appearing as either an enormous lion or tiger, Acisc is the most common of the Shaman gods. He is often worshipped in towns where weapon skills are taught. When he decides to intervene, he endows mortals with heroic fighting skill for the duration of the combat. VOLOBEWS: The God of Air. Volobews travels with the wind, appearing as a winged male. When prayed to in combat, he endows his worshippers with godlike speed. His temples lie on cliffs or wide open spaces that he can get to easily. THERYNI: The God of Magic. Like Vemarkn, Theryni can bestow great magical power upon his worshippers. Ynoth, a remote town in the kudzu, is the last town to worship him. He often appears as a black raven with violet eyes. DEITY CALLS A character with Priesthood or Shaman Skill may call upon his deity for aid. some gods may only be called upon while the character is in combat or in camp; see the individual descriptions of the gods for details. The first time a deity call is attempted, there is a 20% chance of being heard. If the call is successful, the god comes to your aid as described in the description of each god. After a successful call, the chance of being heard the next time goes down 5%, until finally the god will ignore all your calls. To restore your standing with your god, you must pray at one of the god's temples (see "Temples" and "Churches", below). TURNING UNDEAD Besides an occasional deity call, priests and shaman have the power to dispel undead creatures such as zombies, skeletons, ghosts, spectres, and wraiths. Turning undead may be attempted once per encounter. The chance for success depends on the power of the undead creature and the priest or shaman's intellect. TEMPLES AND CHURCHES While wandering around Ymros you will find many temples to the gods. Churches can be found in towns, if the town has a patron deity. Temples and churches serve many functions. When a worshipper wants to restore his chance of summoning his god, he must find a temple or church of his god and pray. The temple requires a fee based on the power of the character. After paying the required amount of gold and praying, the character again has a 20% chance of successful deity call. If a character is not a priest or a shaman but wants to become one, a temple or church is the place to do it. Simply inform the priests or shaman that you wish to convert to their deity and they will be happy to do it free of charge. Note that the priesthood or shaman skill still requires intellect points; having everyone in your party be a priest or shaman is a waste of intellect points that could be used on other skills. All temples and churches accept donations, regardless of your faith. For every gold piece you donate, the patron deity of that church will reward you with one experience point for your kindness. COLLEGES Along with temples, colleges may also be found while wandering. Many towns also have colleges in them, often more than one. Colleges are run by masters who will teach your characters a given skill (for a fee, of course). Each college teaches only one skill, and the fee depends on how difficult the skill is to learn for the character. A Ranger, for example, will learn hunting quite easily, but a Sorcerer will have a difficult time. Common skills such a Sword and Disarm Traps may have many colleges, both inside and outside of towns, but others may have only one college in the world. Each Rune and Chant have only one college. Possession, Fencing, and Kung fu all have unique colleges. TOWNS The first place you should visit when you go adventuring is a town so that you can buy weapons and armor for your adventurers. Don't go anywhere without weapons and armor, or the characters will have a very short life. Each town has different items for sale. While most carry simple items such as short swords and torches, towns have a little bit of the exotic, too. The more exotic the town, the more exotic the merchandise. Looking at the location, the patron deity and the colleges in a town will give you a hint as to what it has to offer. A few words about the towns of Ymros: PATRON DEITY: Many towns have a patron deity, which means that most of the people in that town worship that deity. the option "C" for "Church of xxx" will appear on the town menu. See "Religion" for an explanation of Temples and Churches. MARKETPLACES: All items for sale are found under the "Go to Marketplace" option. All towns have a central marketplace where merchants attempt to sell their wares. When you select "G" the main screen will clear and present you with the first item for sale in the marketplace. The asking price in gold is in a box below the item. The following commands may be used while in the marketplace: C Continue walking through the market place. B Go back to the last item you looked at. H Haggle with the merchant for a lower price. The merchant may reduce the price, or may stand firm. If you continue to haggle and the merchant feels he is already giving you a fair price, he may be insulted and refuse to sell you the item at any price. If your party has a character with Persuasiveness, this will automatically be taken into account when haggling. P Purchase the item. You are then asked what character to give the item to. Remember that you must go to camp after leaving the town to equip the items. S After buying new equipment you may go back to town and sell your old equipment or you may sell other items found while adventuring. You will be asked which character wishes to sell something (enter 1-5). An item may not be sold if it is currently equipped. When selling an unidentified item you are only paid for what the merchant can see: for a mace you will get about half the price of a new mace, for a silver mace about half the price of a silver mace. If that silver mace actually had a Firestorm spell you didn't know about, you won't be paid for it since the merchant didn't know about it either. I Identifies an item for a set price of about 75 gold per item, regardless of what the item is. You may also try to identify an item if you have the proper Lore skill. # Entering a number from 1 to 5 will let you inspect a character without having to leave the marketplace. HEALERS: Some towns have healers in them who can cure you of poison, wounds, binding, or even death. Note that Spirit Runes allow you to do these things for yourself, but you may want to use a town healer if your wizard dies (or just to save spell points). Healing cost depends on the character's injuries and usually isn't too expensive. Curing poisoning is a flat fee. Unbinding, which removes the effects of a Chain, Freeze, or Still Air spell, has a cost that depends on the level of the binding spell. Resurrection cost is dependent on the level of the character being resurrected. Unlike the spell, resurrection in town automatically works and restores 1 hit point to the character. INNS: Provides a comfortable place to sleep after a long day of slaying dragons. While you can also sleep by going into camp, sleeping in the inn is more agreeable, giving characters twice the recovery rate of sleeping outside (10 spell points and 2 hit points per night). At an inn, characters may sleep for many days in a row (helpful for fast healing). Meals are included in the price. GUILDS: Some towns have a guild where characters can gain levels. Gaining a level is the process of awarding characters extra hit points, spell points, and increasing their traits. Gaining a level can only be done when the character has enough experience points (see "Character Creation"). Entering the guild tells you how much experience each character needs to get to the next level, or, if the character has earned it, the new level is awarded. Spell points and hit points gained are random, but based on your Intellect and Endurance, respectively. A total of three points are distributed to the character's traits, though none of the traits can exceed the maximum for the race. If you wish to buy new skills with your Intellect points, you must find the appropriate college to teach you the skill. Guilds are free of charge. COLLEGES: Towns often have as many as three colleges in them. Typing the number of the college you wish to enter will put you there. These colleges work the same way as outdoor colleges (see "Colleges"). TAVERNS: A good place to buy provisions and pick up some gossip. Note that provisions are for one person for one day. If you have five characters you will use five provisions every night the characters sleep in camp. DOCKS: A ship can be purchased at the docks in most coastal towns. Ship costs will differ from town to town. Damaged ships can also be repaired at the docks. CAMP Camp is a place to heal, regain spell points, change equipment, and other useful tasks. You can set up camp any time the characters are wandering outside, in a dungeon, or sailing, merely be pressing "C". You cannot camp in town or in combat. If the party is out in the wilderness and it gets dark, the party will be forced into camp automatically. The following commands are available in camp: # Typing the number of a character will let you examine the character in detail. First you'll see a page showing the character's attributes. If a plus sign and a number appear after an attribute, it means that a magic item is magically increasing that trait. The number shown INCLUDES the plus already added in. Press any key to go to the next page, or press ESC to return to the menu. The next page lists the character's skills. Press any key to go to the next page, or press ESC to return to the menu. The last page lists the items the character is carrying. The following list of symbols may precede any item name: / Dungeon item $ Valuable content (gold, jewels, well made) * Magic ? Unknown (not yet identified) > Equipped Once you have the list of items, you may press ESC to return to the menu or type the letter of an item to see it in detail. If you see "C)$*Short sword", you know the item is valuable and magical; typing "C" will tell you more about it (for instance, "Jade short sword +3"). Press any key to return to the item listing. Of course, unidentified items will not have their abilities listed. C CAST. Used to cast a spell in camp, such as Heal, Cure Poison, or Resurrect. D DROP. Used to drop an item. Dungeon items must be dropped while walking around, since they can be picked up later. Items dropped from camp can not be retrieved. You can't drop armor or a weapon if it is equipped. E EQUIP. You will be given a list of that character's items and asked what weapon you want to use. Type the letter of the weapon to use or press Return to equip with hands. Note that you cannot use a weapon if your Strength is less than the minimum required or you don't have the appropriate skill. Then you are asked what armor to wear. This must be done every time you buy new armor or weapons. If your character is using a cursed weapon or armor, he will not be able to equip a different weapon or armor. Then you know you're in trouble. H HUNT. In camp, each character with the Hunting skill may attempt to find food. At sea, this is called Fishing, but you still use the "H" key. If successful, some food will be added to your provisions. Hunting may only be tried once per day per character with the skill. I IDENTIFY. Used to reveal the proper ties of an item you found. The character with the proper Lore must have the item to be identified. Check under "Skills" to see which Lore (Weapon, Item, or Potion) applies. The chance of successful identification is dependent on the user's intellect. A character may use one Lore skill per day. P PRINT. If you have a printer, it is often handy to have a printout of your characters in front of you. To get a printout, turn on the printer, put it on line, press "P" for print, and then enter the slot number your printer card is in. Then enter the number of the character you wish to print, or press "A" to print them all. Also, you may press "E" to get an extended character print. R REORDER. When you are attacked, your characters are placed in the order you have specified. Use Reorder to change this formation. You may want to put weaker characters in the center, since the party can be attacked from any side. The computer will go through each character in your party and ask where to place them on a 3 x 3 grid lettered from A to I. As you place them, their numbers appear on the grid. S SLEEP. At night you may sleep in order to regain hit points and spell points. If it is too early in the day you will be informed that your party is restless and not able to sleep yet. Sleeping restores 1 hit point and 5 spell points per day and consumes 1 provision per character. T TRADE. When moving weapons around or identifying items you may wish to trade items from one character to another. You cannot be equipped with the armor or weapon you wish to trade. U USE. To use an item such as a ring with a Heal spell, a potion, a salve, etc., use this command. V VIEW LAND. The Visionary skill. You will always see your surroundings in bright daylight. Press I, J, K, and M to move around and view your surroundings. You can only see a given distance from your body's position. This is very handy for finding nearby towns or where you left your ship. View Land is usable once per day. Press ESC to return to camp. W WORSHIP. Used to perform a deity call in camp. The only gods worth calling in camp are the gods of Magic and Life. X EXORCISE. A character with priest or shaman skill can attempt to exorcise a cursed item that a character has equipped. If successful, the item will be unequipped (it's wish to drop it at this point). Exorcism may be attempted once per day. L LEAVE CAMP. When you are ready to leave camp, press ESC. MERCHANTS Many travelling merchants wander the countryside selling their wares to adventurers. Merchants can often offer good bargains or exotic items that you cannot find in towns. Some items are overpriced and some are great buys, so be a good shopper. Some items, such as empty vials or rods with no spells on them, can be purchased only from merchants and can later be enchanted (see "Enchantment"). When a group of merchants approaches you, you may immediately ignore them and continue adventuring, or greet them, in which case they set up shop. LEVEL OF MERCHANTS The level of the merchant reflects the quality of the merchandise (or the quality he pretends to have). The level of merchants depends on your location; initially you'll find poor and ragged merchants, but as you travel you may find wealthier ones. CAVEAT EMPTOR While most merchants are respectable businessmen, some are outright crooks. When you buy a staff with a 22 point Flame Strike on it, you have only the merchant's word that it actually does that. Something like the content of the item (jade, gold) can be seen and you can't be ripped off for that. A merchant who lies about one item will be more likely to lie about another. Your only recourse is the View Mind skill used by many Visionaries and Paladins. This skill is usable only once per group of merchants, regardless of how many characters have the talent. Pressing "V" for View Mind will automatically scan the merchant's mind about all the items for sale and detect which he is lying about. The skill is not infallible and may not detect all lies. Items that were lied about will be marked "LIE" when you look at them in the gold box. UNDERGROUND Twisting catacombs, dark tunnels, and fabulous tombs are but a few of the places you will encounter in your adventures. The wise adventurer should know the special rules of the underworld--there's more to dungeons than slaying a wizard and leaving. LIGHT While the light on the surface changes as the sun rises and sets, the underground is always shrouded in darkness, concealing many tricks, traps, and hidious monsters. Light can be provided in a number of ways. The simplest and most inexpensive method is the torch. To light a torch, set up camp and Use a torch. It will provide a little bit of light. Sleeping puts it out. Lanterns cost a bit more, but the extra light is comforting. Use a lantern the same way as a torch. The underground is a natural setting for dwarves, who have the skill of Dark Vision. Dwarves see in total darkness as if they had a torch, and if they do have a torch their vision is even better. The best you can see is with Dark Vision and a lantern. Magical light can be created with Fire or Ice Runes. The spells Magic Torch and Crystalight give off a magical light. The more spell points put into a spell, the farther you can see. The Crystalight spell is the more powerful of the two. TRAPS With a few exceptions, you are wandering the underground as an intruder, and the designers of these dungeons have established many ingenious devices to rid themselves of unwanted guests. While monsters must be fed and cannot stay in one place forever, a trap is always ready for a careless adventurer. This is why thieves are handy to have in your party: they are experts at detecting and disarming traps. Types of traps known to seasoned adventurers are: POISON NEEDLE: Shoots out from the wall striking one character doing 1-4 damage (armor doesn't help) and has a slight chance of poisoning the victim. PUNJI PIT: A pit with spikes of sharpened wood at the bottom. These traps are often covered with rotting wood or other weak material and then covered with dirt. Each character has a 50% chance of falling in the pit, in which case they will take 1-6 points of damage. In more dangerous areas the spikes are sometimes poisoned. DARTS: A common trap consisting of 2-6 darts that shoot out at the party when they hit a tripwire. Each dart has a chance of hitting a character and doing 1-3 points of damage. SPEARS: A nastier version of the dart trap that does 2-7 points of damage. POOL: Either a pit filled with water or a natural pool hidden like a punji pit. One character falls into the pool, and that character has a 33% chance to escape each round. Every round the character doesn't escape, there's a chance he'll take some damage from water inhalation. ACID POOL: A very dangerous version of the pool trap that does 2 points of damage per round. ALARM: A tripwire which sets off a buzzer or gong, alerting a party of monsters to come and see what's going on. DETECTING AND DISARMING TRAPS Traps are placed only in straight passages; press "L" while walking to scan for traps. This will check all spaces in the walls or floor directly in front of you, as far as your light allows. The chance of finding a trap is 25%, so if you're very suspicious, look twice. If your party has a character with Detect Traps skill, the chance is 100%, but you still have to press "L". A white box will indicate where each trap lies; if no traps are found, a message will appear to that effect. Once a trap is found, it will automatically be disarmed if you have Disarm Traps skill. If you don't have this skill, the trap will be "noticed" and it may not go off as you go past. Such traps are remembered as long as the characters are alive, so if you leave the dungeon and come back, the trap will still be "noticed". VIEW ROOM Press "V" to use this Visionary skill while walking to allow the character with this skill to see through doors into the next room. This skill may be used once per day. ITEMS Dungeon items such as candles, fireplaces, altars, etc. may be manipulated by these commands: Inspect Surroundings, Examine, Take, Drop, Move, and Use. Dungeon items are different form normal items in several ways. While normal items tend to be generic (swords, chain mail, torches), dungeon items are singular and have a specific purpose (anvil, flower, gold key). All dungeon items are preceded by a "/" in a character listing. If you drop a normal item (such as a ring), it cannot be retrieved again. If you drop a dungeon item, it may always be picked up again exactly where you dropped it (in the forest, desert, dungeon, or anywhere). Dungeon items have no value of their own and cannot be sold. Finally, while normal items must be used in camp, dungeon items must be used while moving around. I Inspect Surroundings. Pressing "I" automatically scans all spaces you can see for dungeon items. Normally a fireplace or something wouldn't be seen while you are walking around, but pressing "I" will display the dungeon item icon wherever one or more items of interest are located. E Examine Item. Press "E" to examine an item a character is holding or an item in the room on the spot you are standing. T Take item. Press "T" and select the item from the menu to take it with you. Of course, items such as a fire place or fountain can't be carried. D Drop item. All items dropped by pressing "D" may be picked up later. No more than 10 items will fit on one space. Items may be dropped anywhere, including outside. M Move item. This allows you to move a dungeon item to see what is behind or beneath it. U Use item. Use an item you are holding on another item. Select each item from the menu and see what happens. Experimentation cannot hurt you. SECRET DOORS AND PASSAGES Many important rooms and passages are hidden by ingenious and magical devices. Hidden passages and doors appear exactly like walls, but you will be able to step through them like nothing is there. If you suspect a secret door is somewhere, try walking into the walls. SAVING THE GAME Saving the game in the underground works just as it does outdoors: press "S" to save the current status of the game. You will be asked to switch disks since the game must be saved onto side B. SEAS While much adventure can be found on the island where Ildryn is located, that island accounts for less than one-twentieth of the explorable world. Only be sailing can you find exotic places such as deserts, tundra, and sweeping expanses of kudzu. BUYING A SHIP Ships can be bought in any town with a dock. Expect to pay around 600 gold pieces for a ship and its crew. When your ship has been purchased it will be placed outside of town in the dock. Some larger towns have two docks, each of which can hold one ship. If the dock is full you will not be able to purchase a ship yet; first, move one of the ships out of the dock. A new ship has 75 hit points of its own and comes complete with crew. You may own up to 10 ships. SHIP REPAIRS As your ship gets damaged by sea creatures and pirates, you will need to repair it. Repairs can be performed in the dock; the cost depends on the amount of damage. Remember that if your ship is destroyed, you go down with it! BOARDING/UNBOARDING When you get outside you'll see your ship along the coastline somewhere. If you just purchased it, it will be in the dock outside the town. To board the ship, simply step on to it; to leave it, just step off onto the shore and your ship will be moored there until you return. A ship may only be anchored in deep water, so you may not be able to leave the ship on a curve of land. Find a straight section of coastline to dock your ship. You may also go directly from a ship into a town, college, or temple, all of which are assumed to have docks if they're on the coast. SEA COMBAT While sailing, you are generally safer than travelling on land, but there are a few sea monsters and pirates. Ship combat is much like normal combat (see "Combat"), with the following differences. MOVEMENT POINTS: Since it's easier to keep going in one direction on a ship than to turn, the following adjustments are made: KEY ACTION MOVEMENT POINTS Return Move forward 1 > Turn clockwise 2 < Turn counter-clockwise 2 / Turn around 3 I,J,K,M Fire cannonball 3 ATTACKING: To fire a cannonball, use the I,J,K, or M keys to fire up, left, right, and down, respectively. You will see the cannonball fired and whether it veers off its path. Cannonballs inflict 1-10 points of damage. If you miss, it's possible you'll hit something you didn't intend to. Some smart ship captains try staying off target and hope their shots will veer into the target. The closer you are, the better the chance of hitting your target. Pirates fire cannonballs just like you do, but sea monster get next to your ship and try to tear it to shreds. DAMAGE: When your ship is hit, it loses hit points. The "?" command tells you how many hit points your ship has remaining. If your ship is reduced to zero hit points it sinks, and your party dies along with it. RUNNING: Running is accomplished by touching any of the exit dots at the border of the map. You may not dock on land during combat. TREASURE: Any treasure a ship is carrying sinks along with it, but you do get a good amount of experience for destroying pirate ships or killing sea monsters. COMBAT Combat is an essential part of Demon's Winter, and to be successful you should understand combat quite well. This section will describe the combat screen and the various commands available to you in combat. HOW ENCOUNTERS ARE CHOSEN Encounters are chosen by the area you're in; each area has its own difficulty level and each terrain type has its own variety of monsters as described in "Exploring." If you find yourself in combats too deadly for your party, go back to an easier area. THE BATTLEFIELD When your party is attacked, the party is placed on a magnified map of the area. This battlefield is bordered by "exit dots," where your characters can leave the battle. Your party is placed in the center of the battlefield in the formation you set using the Reorder command. The formation can be changed after the combat is over by going into camp and using Reorder again. Demon's Winter keeps track of the direction each character and monster is facing. When it is a character's turn, and arrow is displayed in the upper right corner of the information box to help you see the direction you are facing. You can also tell the facing direction by looking at the character icons on the battlefield. MOVEMENT Characters and monsters move in an order determined by their speed ratings, from highest to lowest. Each character has movements points equal to their speed, which they can spend on the following actions: KEY ACTION MOVEMENT POINTS Return Move forward 2 < Turn clockwise < Turn counter-clockwise 1 / Turn around 1 A Attack 3 C Cast a spell 3* U Use an item 3* T Turn undead 3* D Dodge special ? Examine 0 S Sound 0 P Pray (deity call) 3* L Power leech 3* ESC End turn * *Ends character's turn In order to run, touch an exit dot or a door. After you have touched the exit dot or the door it turns into an exit icon (four opposing arrows). From then on, all remaining characters must run through the same icon to escape. ? This command is used to examine all characters and monsters on the battlefield. It helps you find out who is who, which mage is 8the level, and so on. After pressing "?" the cursor will inverse video your character and the text window will tell you the character's name, strength, skill, speed, armor, and weapon. If you are bound or poisoned, it will tell you. Press ">" or "<" to move forward or backward through the characters and monsters or press ESC to return to combat. When you look at the monsters, you will not be told a monster's attributes unless someone in the party has monster lore. If a character in the party has Tactics, beneath each monster it will tell you who the monster is likely to attack. If the monster you are looking at is a summoned being or illusion controlled by you, you will be told its remaining hit points and spell points. ATTACKING: Pressing "A" will attack the monster directly in front of you with your equipped weapon. Your chance of hitting depends on your skill. You will be told if you hit or missed. If you hit, you will be told how much damage you did (if any). On occasion the word "hits" will be replaced with "hacks" to indicate an unusually good blow that does double damage. Modifiers to your chance to hit and damage are: Position: A +3 bonus is awarded for attacking from behind. Strength: bonus damage is awarded for strong characters and damage is subtracted from unusually weak characters (Strength 6 or less). Karate: Used automatically if the character has the skill and is equipped with his hands. Damage depends on the character's skill and strength. Kung-fu: Like karate, kung fu requires that you attack with your hands. When a critical hit is scored, the victim is stunned for a round. The effects are cumulative. Stunned: Monsters can be stunned by kung fu; the more stunned it is, the easier it is to hit. Stunned characters cannot do anything for a round. Fencing: A character with fencing skill using a sword has a 10% bonus to hit and an 8% better chance to score a critical hit. Armor: Armor absorbs damage, instead of affecting the chance to hit. Thus, if a fighter in plate mail is hit for 7 points of damage, he only takes 2 points because the armor absorbs 5. Therefore, it's possible to hit some- one and do no damage. Monsters often have natural armor in the form of thick hide or scales. Plus Weapons: Weapons such as an axe +1 add to the chance to hit and the damage done. Flaming Weapons: Flaming weapons add only to the damage done, and against ice creatures the damage is doubled. Ice elementals and ice demons are not subject to this double damage. Dormant powers: This is one kind of magical power that can be found in a weapon. These powers only work on rare occasions when you hit a monster. Such powers can wither a monster, hack it in two, freeze it to death, or other things. Such weapons are naturally in great demand. DODGING: Pressing "D" at any time will automatically end the character's turn and apply all remaining movement points to dodging. For every 3 movement points, all attackers are at a -1 to hit you. You may attack and dodge in the same round--in fact, it's a smart thing to do. A player with 12 movement points could attack twice and then dodge, being at -2 to be hit. This is very handy for weak characters who are better off staying out of trouble until help arrives. Even strong characters should dodge a little bit each turn to help them out. Only when you're going for the kill should you attack with every movement point you have. Combinations of attacking and dodging determine how aggressive or defensive the character is fighting. CASTING A SPELL: Press "C" to cast a spell. The Runes and Chants your character knows are displayed at the bottom of the screen. Some spells (such as Resurrection and Magic Torch) cannot be cast in combat. After typing the name of the spell, you are asked how many spell points you wish to put into the spell, then you are presented with a cursor. Use I,J,K, or M to move the cursor over the monster, character or space you wish to cast the spell and press the space bar to cast the spell. For a listing of spells see "Magic." TURNING UNDEAD: A character with priest or Shaman skill may attempt to turn undead once per combat, during his turn. Each character with the skill may try once. Each undead monster will be checked; if the turning is successful, the undead monster will be eliminated. The chance of successful turning depends on the level of the monster and the intellect of the Priest or Shaman. DEITY CALL: If your party needs help, your Priest or Shaman can attempt to summon the help of his god by pressing "P" for Pray. See "Religion" for a listing of the powers of the different gods. POWER LEECH: Dark elves may attempt to Power Leech one monster each turn, at a cost of 3 movement points. Press "L" to use Power Leech and then move the resulting cursor over the target monster using the I,J,K, or M keys and press the space bar to activate the Power Leech. If successful, the victim will be drained of some spell points. The chance of Power Leech succeeding depends on the dark Elf's intellect. SOUND: To turn the sound on or off, press "S". END TURN: Press ESC to end a character's turn at any time. AFTER COMBAT After the combat is over, each character is awarded experience and the party gets a certain amount of gold, depending on the difficulty of the encounter. Dead or bound characters do not get experience. If any items are found, they are then printed at the bottom of the screen. You are asked which character will take the item; press the number of the character to take the item or press ESC to leave the item. If anyone in your party is an elf with Detect Aura, you may be told if an item is magical by the words "aura detected" below the item. Detect Aura does not always work. MONSTER LIST Here is an abridged list of monsters: KOBOLD: Small, annoying creatures with 7 hit points, a small axe, and a nasty disposition. SKELETON: The weakest form of undead. COBRA: Very fast snakes, but one hit usually kills them. They may have speeds up to 14, and their fangs are poisonous. BUGEM: Large bipedal bugs that carry small axes. their carapace acts as a thin layer of armor and they often have 10 hit points or more. TIMBER WOLF: Often found in the forest. they have been known to kill a brown bear on occasion. SWARM: A mass of insects that act as a unit. Instead of hit point, Demon's Winter keeps track of how many insects are left in the swarm. when all the insects are gone, the swarm is dead. Swarms consist of 20 to 30 large insects. DRAGONS: Come in many sizes, form babies to the Great Dragon. Dragons have the ability to use a breath weapon as well as striking with their claws. Baby and small dragons have not yet developed a breath weapon. Breath weapons move outward in a cone striking anything in their path, so don't all stay on the same side of a dragon. Fire dragons, the classic dragon, can breathe a cone of fire. Wind dragons breathe a torrent of wind that can blow a party away. Ice dragons breathe freezing hail. Great dragons can breathe any of these three weapons. ELEMENTALS: Elementals are creatures made entirely of one of the five elements: fire, metal, wind, ice, or spirit. each is incredibly powerful and they are favorite objects of summoning by Sorcerers. THIEVES: Thieves roam the countryside in many forms, from simple thugs to deadly assassins. DEMONS: Demons are very strict, hierarchical creatures. The lowest form for demons are manes which are the soulless bodies of dead men who have been put to work by more powerful demons. Slavers are demons with morningstars who boss the manes around. Gargoyles are much more powerful and have great amounts of natural armor. Fire and ice demons are even more powerful than gargoyles, and the only thing more powerful than they are devils and demon lords. MAGIC Ymros is a magical place, and magic takes many forms. This section will explain how the different spells are cast, and the effects of each spell. Magic items are also discussed in this section. RUNES: Runes are most often used by Wizards, but are highly prized by other classes as well. The Runes give the Wizard power over the five elements of nature: fire, metal, wind, ice, and spirit. Knowing a Rune allows you to cast all the spells associated with that Rune. All Runic spells are of variable power. After casting the spell you are asked how many spell points you wish to put into the spell; the more spell points, the more powerful the spell. In combat, spells can be cast anywhere on the battlefield. After casting the spell, a cursor appears. Move this cursor over the character, monster, or spot on the board where you want the spell to take effect using I,J,K, or M, then press the space bar to activate the spell. Make sure you don't cast a Heal spell on a monster by accident! All spells which change traits such as skill, speed, or strength, only last for the duration of the combat. Binding spells are permanent and must be removed by the appropriate unbinding spell. A summary of these spells and their point costs is given in Appendix D. FIRE RUNES COLUMN OF FIRE: Causes the victim to be engulfed in a column of scorching fire. Anywhere from 1 to all of your spell points may be put into it. Only one creature is affected by this spell. The spell will always do a minimum of 1 point of damage for every spell point you put into it. Armor does NOT help against this spell. FIRE STORM: A mass damage spell that affects a 5 x 5 square area. All monsters AND characters in this area will take damage. Place the cursor on the spot you want to be the center of the fire storm. This spell (and all mass damage spells) cannot be cast on the first round of combat. FLAME SHIELD: Protects the recipient of the spell with magical flames which do not burn the character they protect, but keep foes at bay. The more power in the spell, the hotter the flames. FLAME STRIKE: Attempts to conjure up a flaming bolt that will kill the target outright. The spell is very costly and difficult to cast successfully without great amounts of power. Of all death spells, this is the most powerful. MAGIC TORCH: A Camp spell used to provide light. The minimum cost of 3 will provide as much light as a torch for one day; more spell points will make the light brighter. MELT: Reverses the effects of a Freeze spell. Put 11 spell points into the spell for each level of binding. METAL RUNES ARMOR: The person or monster this is cast on is clothed in magical armor that protects from all physical attacks. The more power put into the spell, the thicker the armor. The minimum 2 spell points will yield the protection of cloth armor. BREAK BONDS: Breaks the effects of a Chain spell. Automatically works with the proper power (11 points per level of binding). CHAINS: A binding spell. Attempts to create magical chains and binding around the victim, making the victim immobile. Every 10 spell points yields one level of binding. While 1 level of binding does as good a job as 5, the higher the level, the greater the chance the spell will work. The Chains can only be broken by a Break Bonds spell. DEATH BLADE: A magical sword appears and attempts to slice the victim to death. If unsuccessful, no damage is done. The chance of it working is not very great unless a very powerful Death Blade is cast. RUST ARMOR: Rusts the victim'a armor or deteriorates his skin, making him more vulnerable to taking damage. If the victim already has no armor, its skin will become sensitive and actually increase the damage inflicted. STRENGTH: Gives its recipient improved Strength for the duration of the combat. This results in increased damage with each attack. SWORD: A damage spell similar to Column of Fire. An invisible blade slices the victim, even through any armor they may be wearing. It is powerful, but not as cost effective as Column of Fire. WIND RUNES BREATH OF LIFE: A healing spell, not nearly as powerful as Healing, but useful in emergencies. FREEDOM: Negates the effects of a Still Air spell (13 points per level of binding must be put into this spell). STILL AIR: Puts the victim in a state of suspended animation, like the Chains spell. This spell can be broken by Freedom. TEMPEST: A mass damage spell with a 5 x 5 area of effect. A powerful storm does damage to all in the storm area. While not as powerful as the Fire Storm, it requires only a minimum of 6 spell points. WIND WALK: A spell that can magically teleport the caster and the entire party to a place of safety. Can be used anywhere in camp. WINGS: Makes the recipient move with increased speed. Rather expensive, but each 3 speed points equals 1 extra attack per round, so such spells are most useful when cast at the beginning of a battle. The increased speed does not take effect until the next round. WINGS OF VICTORY: Provides the recipient with magical courage and greater skill in combat. Any amount of spell points can be put into it. ICE RUNES CHILL: Chills its victims, decreasing their fighting abilities. A very useful spell to cast on powerful fighters or monsters who use physical attacks. CRYSTALIGHT: An eerie blue light appears and lights the way for the party. FREEZE: The most powerful binding spell, this attempts to freeze its victim in a block of ice, rendering him immobile until a Melt spell is cast. The cost of 9 spell points per binding level is the lowest of any binding spell. HAIL STORM: A mass damage spell that has a 5 x 5 area of effect. Freezing hail rains down and strikes the victims. ICE SHIELD: A layer of ice, flexible enough to move, but non- yielding to weapons, surrounds the recipient. Three spell points adds the protection of cloth armor, and more points yield more protection. SLOW: Slows down the victim. Every 3 speed the victim is slowed, he loses one attack per round. This spell does not take effect until the next round of combat. SPIRIT RUNES CLUMSINESS: Decreases the victim's skill, making it harder for him to strike his opponents. CURE POISON: Halts the effects of poison from venomous bites and poison needles. The damage a poison has done up to the time this spell is cast is not affected. This spell usually works, but to be sure, put a few more spell points into it. When a character is poisoned he will continue to lose hit points at a constant rate while walking around until he is cured or dies. Sleeping gives the poison many hours to do its work and usually kills the poisoned character. HEAL: Heals damage done to the character. Any number of spell points may be used; at least as many hit points will be healed as spell points used in the spell. The subject may not be healed over his maximum hit points. This spell may be used in combat or in camp. RESURRECT: Used to bring a dead character to life. This spell is only usable in camp. The minimum cost of 25 spell points will only give a 25% chance of a successful casting. To be sure of success, find a healer in town to cast this spell. If the spell fails it has no adverse effects (other than wasting 25 spell points!). If the character is raised, all ailments such as poison or binding are cured and the character will have 1 hit point. SANCTUARY: A spirit of peace surrounds the recipient of this spell, taking some of the power out of attacks aimed at him. SPIRIT WRACK: Attempts to torment the very soul of the victim and bring about a horrible death. It is very costly, but quite powerful. TRANSFERENCE: With this spell, the caster can transfer some of his magical energy (at least 3 spell points) to another character. Often, some of this magical energy is lost in transit. The recipient of the spell points can be "supercharged" and possess spell points ABOVE his normal maximum capability. At night, any spell points above maximum wears off. The spell is handy to channel a great amount of energy into one spell caster for a big spell such as Resurrection or a big Fire Storm. WEAKEN: Weakens the victim, decreasing the damage he can do with a weapon. WITHER STRIKE: A dangerous spell that causes the victim to wither with age. Strength, skill, and speed are reduced. The effect lasts for the duration of the combat. The more spell points used, the greater the chance the spell will work. CHANTS Chants are most often used by sorcerers. Two of the spells deal with conjuring, and the third is perhaps the most powerful spell of all: Possession. ILLUSION: Both Illusion and Summon allow the Sorcerers to conjure up beings to fight for the party. Illusory beings have two disadvantages: they are temporary and they have no magical power. Illusions can disappear at any time and, since conjured beings don't get to act until the next round of combat, they can even disappear before they get to do anything. They also have no spell points. Simple creatures like coyotes don't have any magic to begin with, so this restriction doesn't matter, but when summoning an Evil Spirit or an Elemental, this is a disadvantage. Of course, Illusions are much easier to summon, costing half the spell points a similar Summoned being would cost. Illusion may only be cast in combat and the creature only lasts for the duration of the combat (sometimes not even that long). When casting Illusion you are presented with a menu of the creatures you can summon. Enter the letter next to the creature to be summoned, place the cursor where you want the monster to appear (using the I,J,K, and M keys), and press the space bar. You control the Illusion as though it were one of your characters. Illusions have hit points and other traits of their own. No more than three conjured beings can be in any one combat. Conjured beings continue to exist even after their summoner has been killed, but if everyone in the party has been killed, they disappear too. Remember: conjured beings don't need to be killed to end the combat. No experience is given for killing conjured beings. SUMMON: Summoning is a more sophisticated and more costly version of Illusion. Summoned beings last until the end of the combat or until they are killed. They also possess one half the spell points of their real-life counterparts, so they can cast spells. True summoned Demons and elementals are very powerful. POSSESSION: This powerful spell, if successful, places the victim under the caster's control. The caster can make the victim cast any spells desired or attack his friends. Warning: this spell can also be cast on characters by powerful monsters who know Chants. It can be removed by Possessing the victim back, waiting for him to snap out of it, or waiting until combat ends. LORE Lore is special knowledge usually studied by scholars. Lore, except for Monster Lore, can be used once per day in camp to attempt to identify an unknown item. The chance of this working depends on the intellect of the user. This knowledge can be used for many purposes: WEAPON LORE: Required to identify weapons and armor. POTION LORE: Required to identify vials and salves. ITEM LORE: Identify miscellaneous items such as staves, rings, and amulets. MONSTER LORE: Constantly in effect, this allows the party to see a monster's traits during combat by pressing "?". VISIONARY VIEW LAND: Allows the user to see great distances in order to find the nearest town, find a ship, etc. Usable only in camp (see "View Land" in the "Camp" section). VIEW ROOM: Allows the user to see what lies on the other side of a door or what lies a few spaces ahead of him in a corridor. Used while walking around (see "Underground"). VIEW ITEM: Lets you determine how one item could be used with another. It works better on stationary objects such as statues than on easily mobile ones such as keys. VIEW MIND: Used to determine if a merchant is lying to you. Usable once per group of merchants (see "Merchants"). ITEMS There are many kinds of magical items on Ymros, and there are a very large variety possible. See Appendix C for a list of the items that can have spells on them. PLUS: The simplest form of magic item are "plus" armor or weapons. A "+1" weapon has +1 chance to hit and +1 damage, while "+1" armor protects a little better. INVOKED POWERS: Invoked powers are called up by the Use command. These are spells such as Column of Fire or Weakness that are cast by the item instead of you. If an item has an Invoked Power, it will be shown like this when you list the item: Ring Invoked: 12 pt. Flame Shield Usable 1x per day Once a day you may Use the ring in combat and it will be just as if you had cast a 12 pt. Flame Shield spell. Besides items that are usable 1,2, or 3 times a day, some items (such as wands, staves, and rods) have charges. For example, a wand may have 10 uses before it runs out of power. Charges may not be restored, and the price of an item goes down as the charges are used. Some items are also breakable and have a certain chance each time they are used that the object will break. The item will have a listing of "Breakable (%)" with a percentage chance after it. Any percentage is possible. CONSTANT POWERS: These powers can only be put on weapons or armor. These include skills an item gives you (berserking, hunting, etc.) or an increased attribute (+2 Speed) or flaming. Unlike Invoked Powers, these powers are constantly in effect as long as you are equipped with that weapon or armor. DORMANT POWERS: The most powerful kind of magic found on weapons are spells that the weapon occasionally casts on its own. The power to cast the spell is taken from the life force of the creature you are attacking. For example, a dagger with a dormant 6 pt. Weaken spell on it will (at random times) cast a 6 pt. Weaken spell on the monster you just hit, weakening it. Some dormant powers cast a spell on you instead of on the target; such weapons are marked with an asterisk. There are nine common kinds of dormant powers, although many others are possible: MITHRIL: These weapons, a favorite of the ancient dwarves, cover you in an ever thickening layer of magical protection. UNHOLY: Often used by Paladins of the Death Gods, these dark weapon have the power to torment the soul of the creature they hit, bringing automatic death. These weapons are rare, powerful, and expensive. LIFE STEALING: The favorite weapon of wizards and sorcerers, a weapon of Life Stealing will take the enemy's life force and transfer it to the wielder in the form of Spell Points. VORPAL: Very rare and powerful weapons that appear as incredibly shiny metal, gold, or jade. The weapon on rare occasions will slice through a foe and kill it with a single blow. DWARVEN: Another weapon of the dwarven smiths, these weapons tend to increase the wielder's courage, thereby increasing his Skill. SHARPNESS: Appearing as very sharp weapons, they occasionally do more damage due to their sharp edges. BLOODSTONE: This fearsome weapon causes the victims blood to flame on contact. BERSERKER: These weapons increase the wielder's strength during battle for the duration of the combat. STASIS: These weapons occasionally put their victims in a state of suspended animation with the Still Air spell. Note that these powers do not take effect every time a foe is hit, but about 1 in 10 times damage is done. Items such as vorpal or stasis weapons may attempt to slay or freeze their victims, but fail. CURSED: It is a good idea to identify any weapon or armor before you put it on because it may be cursed. Cursed weapons and armor may have any number of ill effects, like decreasing your traits, lowering your chance to hit, or even have dormant powers that affect you instead of your target. The worst thing about cursed weapons and armor is that once you equip with them, you cannot get rid of them unless a Priest or Shaman can exorcise it. ENCHANTMENT: Legend tells of the workshop of Brolor, where the dwarves still work on fabulous weapons. It is rumored to be somewhere in the vast expanse of kudzu. Here, for a price, weapons can be custom made and enchanted to your specifications. Enchantment is by no means cheap, but you will find it cheaper if your weapon is better made or made of precious materials like gold or jade. HINTS ON GAMEPLAY A few things to remember when starting out: CREATING CHARACTERS: Make sure you create at least one wizard and give him Spirit Runes. Otherwise you won't be able to heal people at first. Don't accept a speed of less than 5. It will slow down the party. Characters start with only two skills, and even then you must have enough intellect for them. The skills you can start with depend on your class. If you can, be sure to pick at least one Weapon skill. BUYING EQUIPMENT: Haggle once, maybe twice, before buying anything. Why pay more than you have to? Look at the strength requirements for the weapons you are about to buy (Appendix E). If you only have a 10 strength and try equipping with a morning star, you won't succeed. Go to camp and equip immediately after buying equipment. During adventuring, write down ALL clues and save the game often. This will help you complete the game. APPENDICES APPENDIX A: SKILL COSTS BY CLASS SKILL POINT COSTS BY CLASS SKILL 1 2 3 4 5 6 7 8 9 10 ---------------------------------------------------------------------- Axe 3 5 1 6 10 3 9 8 8 8 Armored Skin 5 6 4 6 10 10 10 10 10 10 Berserking 4 6 2 4 5 4 9 9 8 8 Detect Traps 3 4 3 3 4 1 6 6 5 6 Disarm Traps 6 7 7 7 8 3 9 9 9 8 Fencing 4 3 5 10 8 6 10 10 7 7 Fire Ruins 10 10 10 9 8 10 5 10 10 9 Hunting 1 4 2 4 5 4 7 9 7 6 Ice Runes 10 10 6 9 8 10 4 10 9 9 Illusion 9 9 10 8 7 8 10 3 5 9 Item Lore 9 10 10 6 10 10 6 7 7 4 Karate 3 6 5 1 3 2 6 6 4 4 Kung Fu 6 8 8 3 5 5 8 8 7 7 Mace 2 4 1 4 2 1 6 6 5 5 Metal Runes 10 10 10 9 8 10 4 10 9 9 Monster Lore 2 4 5 4 5 5 5 5 4 2 Persuasiveness 4 2 7 5 2 4 5 7 6 7 Possession 10 10 10 9 8 10 10 5 7 10 Potion Lore 8 10 10 4 8 10 3 4 8 2 Priesthood 5 2 9 4 3 9 5 7 4 8 Shaman 5 8 5 4 3 9 7 5 4 8 Spirit Runes 10 7 10 9 6 10 4 10 7 9 Summoning 10 10 10 10 9 10 10 5 8 10 Sword 3 2 4 6 10 3 8 7 6 6 Tactics 3 2 5 4 4 4 6 6 4 1 View Items 10 10 10 10 8 10 10 10 2 8 View Land 10 10 10 10 10 10 10 10 3 7 View Mind 9 2 10 8 4 5 8 8 2 10 View Room 10 10 10 9 10 9 10 10 4 10 Weapon Lore 7 7 7 8 10 7 9 9 8 3 Wind Runes 6 10 10 9 8 8 5 10 10 9 ------------------------------------------------------------------ 1=Ranger, 2=Paladin, 3=Barbarian, 4=Monk, 5=Cleric, 6=Thief, 7=Wizard, 8=Sorcerer, 9=Visionary, 10=Scholar APPENDIX B: RACIAL TRAIT MAXIMA TRAIT HUMAN ELF DWARF DARK ELF TROLL ------------------------------------------------------------------ Speed 20 20 15 22 14 Strength 24 15 30 14 24 Intellect 32 40 24 40 20 Endurance 22 15 25 15 30 Skill 21 20 22 17 18 ------------------------------------------------------------------- APPENDIX C: MAGIC ITEMS WEAPONS: May be enchanted with Invoked, Dormant, and Constant powers. For Invoked powers, they may have a wide variety of spells such as damage spells, storm spells, healing, light spells, death spells, and chants. Invoked spells must be of the "usable x times per day" type; no charges or breakable weapons. ARMOR: May contain Invoked or Constant powers. The only invoked powers found on armor are such spells as Flame Shield and Ice Shield. Like weapons, Invoked spells must be of the "usable x times per day" type; no charges or breakable weapons. CROWN: Not found in breakable form or with charges. Crowns possess powers dealing with death, summoning, illusions, magic power transference, and armor spells such as sanctuary. VIAL: All vials are breakable (100% chance), yielding only one use. They contain useful spells like Heal, Wings, Strength, Cure Poison, or Transference. Don't drink them without knowing their contents, because vials of Weakness, Slow, Clumsiness, and Withering exist. RING: Can have any form of power (breakable, charges, etc.). They can cast just about any spell except Resurrection and Wind Walking. WAND: All wands work on the charge system. They can possess spells for increasing and decreasing traits (Strength, Slow) and conjuring. STAFF: Also has charges. Staves are much more powerful than wands, and possess death spells, damage spells, armor spells, and occasionally healing spells. ROD: Rods possess freezing and unfreezing spells, damage, healing spells, and Cure POison. They also use charges. GEM: Magical gems can use charges, be usable x times per day, or be breakable. Different gems are used to gain strength, magical power, light, and conjuring. AMULET: Amulets may have any type of power, including armor spells, cure poison, and rarely Resurrection. MEDALLION: Medallions only exist in the "x times per day" form. They can contain damage and mass damage spells as well as Heal, Wings of Victory, Chill, and Clumsiness. TALISMAN: A talisman will always work on the charge system. They are very powerful and often contain spells such as Flame Strike, Spirit Wrack, Freeze, Strength, Weaken, and Possession. FIGURINE: Figurines may be of any form of power (charges, breakable, etc.). They appear in the shape of an animal or creature, and this is the creature they conjure. They are only used for summoning or illusions. SALVE: Salves are like vials, but have more than one use. They work with charges. While salves can heal, be careful to identify them first, for they may also Wither, Flame, or even slice up the victim. RUNES MINIMUM SPELL POINT COSTS ---------------------------------------------------------------------- FIRE RUNES: METAL RUNES: Column of Fire 1 Armor 2 Fire Storm 10 Break Bonds 11 Flame Shield 4 Chains 10 Flame Strike 16 Death Blade 15 Magic Torch 3 Rust Armor 3 Melt 11 Strength 1 Sword 2 ICE RUNES: WIND RUNES: Chill 1 Breath of Life 5 Crystalight 2 Freedom 13 Freeze 9 Still Air 11 Hail Storm 7 Tempest 6 Ice Shield 3 Wind Walk 10 Slow 3 Wings 4 Wings of Victory 1 SPIRIT RUNES: Clumsiness 2 Cure Poison 9 Heal 1 Resurrect 25 Sanctuary 3 Spirit Wrack 20 Transference 3 Weaken 1 Wither Strike 15 ---------------------------------------------------------------------- CHANTS CREATURE ILLUSION SP COST SUMMONED SP COST ---------------------------------------------------------------------- Coyote 2 4 Zombie 4 8 Brown Bear 6 12 Small Dragon 8 16 Ogre 10 20 Evil Spirit 14 28 Fire Demon 18 36 Fire Elemental 20 40 Metal Elemental 20 40 Wind Elemental 20 40 Ice Elemental 20 40 Spirit Elemental 20 40 ---------------------------------------------------------------------- APPENDIX E: STANDARD EQUIPMENT LIST WEAPONS: WEAPON MINIMUM DAMAGE STRENGTH SKILL ---------------------------------------------------------------------- Dagger 1-3 N/A N/A Small Axe 1-4 N/A Axe Short Sword 1-6 6 Sword Mace 1-6 7 Mace Morning Star 1-7 11 Mace Broad Sword 1-8 13 Sword Battle Axe 1-10 16 Axe 2-Handed Sword 1-12 18 Sword ---------------------------------------------------------------------- ARMOR: ARMOR PROTECTION RAN PAL BAR MON CLE THF WIZ SOR VIS SCH ---------------------------------------------------------------------- Cloth 1 X X X X X X X X X X Leather 2 X X X X X X X X Chain 3 X X X X X X Scale 4 X X X Plate 5 X X ---------------------------------------------------------------------- ATARI ST VERSION LOADING INSTRUCTIONS: Before beginning play, please make a backup copy of the disks for play use. The disks have no physical protection so you may use the normal TOS copy program for making these backups. Once the copies have been made, simply put your master disks away and use the copies for play. To load your game of Demon's Winter, turn on your computer and insert your backup copy of the Game Disk. Double-click on the DEMON.PRG icon that appears in the window and the game will load. The next menu that you will see offers three options: Go Adventuring Character Utilities Alternate Character Set COMMANDS: The keyboard commands are keyed to the first letter of the item being activated. For instance, in order to enter the "Marketplace" within a city, you use the "M" key. However, due to the availability of a mouse on your system, you may use the mouse to select any movement or menu option. In order to use the mouse instead of the keyboard commands, simply click on the desired menu option shown on the right of the screen during play. MOVEMENTS: Movement in dungeons and in the wilderness may be accomplished by moving the mouse in the direction that you wish to move and clicking on the mouse button. As you move the mouse, a movement arrow will appear on the screen showing you which way you are going to move. If you are in tactical combat and an enemy is adjacent to you in the direction you are trying to move, you will attack it by moving that direction.Sewer Software presents.....Little Computer People INSTRUCTIONS ENTERING YOUR NAME. You will be asked to enter your name in the guestbook each time you visit your little computer person (hereafter referred to as your LCP) Using the keyboard type your name (christian name first) in the spaces provided on the screen. Once you have typed in your name press return. ENTERING THE DATE. The format for entering the date is MM/DD/YY, where MM stands for the month, DD stands for the date, and YY stands for the year. Be sure to enter the numeric digit for each space. Use zeros in front of numbers less than 10. For example, if you visit your LCP on January 1st, 1987, type 010187 then press RETURN. ENTERING THE TIME. The format for entering the time is HH/MM, where HH stands for the hour and MM stands for the minute. As when entering the date use zeros in front of numbers less than 10. Type A for AM or P for PM. for example, to enter three minutes past one o'clock in the afternoon. type 01 03 then P, then press RETURN. Twelve o'clock midnight should be entered 12 00 A. then press RETURN. Twelve o'clock noon should be entered 12 00 P. then press RETURN. MOVING IN. The first time you visit your LCP, his house will be empty when it appears on the screen. This is because most LCP's are quite shy and will not readily rush into a new situation. In fact, it may take several minutes before yours actually musters the courage to step inside the new home you're providing for him. On the other hand, LCP's are also quite loyal. Once he's moved in, you can expect him to be home on subsequent occations. When an LCP enters a house for the first time, he will usually inspect the new home for 5 to 10 minutes. Then he'll leave to retrieve his belongings. Yours will probably return shortly with his suitcase. Most LCP's bring their dog. Although only one LCP will occupy any given "HOUSE-ON-A-DISK", most computers have more than one LCP living inside of them. In order to contact another LCP in your computer, you will need another "HOUSE-ON-A-DISK". NOTE Keyboard commands do not function during the move-in sequence. CARE AND FEEDING OF YOUR LITTLE COMPUTER PERSON OR HOW TO MAKE SURE THE PERSON INSIDE YOUR COMPUTER IS HEALTHY, HAPPY AND TOTALLY AT HOME. Although LCP's are basically quite independent, once yours moves into his new home he will be, in a sense, living in your world. So he will need your help in certain areas. To ensure that your LCP is healthy, see that he always has food and water. (The dog also needs food.) Both hunger and dehydration can make LCP's sick. Also, because they tend to be quite active, they should not be allowed to sleep too much. The following is a list of keyboard opperations to help you take optimum care of your LCP. CARING FOR PHYSICAL NEEDS. Hold the CTRL or CONTROL key down and press the designated letter to care for your LCP's physical needs. CTRL F - Food is delivered to his front door. CTRL W - Fills the water tank. each time you press W, approximately one glass of water is added to the water tank. CTRL A - Rings the alarm clock. CTRL D - Leaves dog food at the front door.Your LCP will do the rest. CARING FOR EMOTIONAL NEEDS. Addressing the physical needs of your LCP is relatively easy. To know if he needs food or water, you simply look to see if his supply is running low. Addressing emotional needs, however, takes much more sensitivity and careful study. First of all, you must be aware of his different moods. So far, four distinct moods have been observed in Little Computer People. MOODS. HAPPY He's probably getting plenty of attention CONTENT He's fine but could do better. (See "Mood Boosters".) SAD Needs mood boosting immediately SICK This happens when he has gone without food and water for quite a long while. MOOD BOOSTERS. There are several ways to elevate the mood of your LCP. You'll find that some ways are more effective than others. CTRL - C A phone call. Many LCP's enjoy receiving phone calls unless they are constantly interupted to the point of irritation. CTRL - P Physical contact (or "petting"). In order to pet your LCP, he must be in his easy chair in the living room. CTRL - R Leaves a record for your LCP's stereo at the front door. PLAYING GAMES - This is one of all LCP's favourite pastimes, so naturally it makes them feel great. (For more on playing games see below). RECREATION AND RELAXATION. Most LCP's are very good at entertaining themselves. They're good pianists and can play compositions from classical to jazz. They also like their record collections. In fact albums make great gifts for them. Some LCP's exercise frequently. Many seem to enjoy playing with their computers or sitting down in their easy chairs with the newspaper. You may even be able to talk them into building a fire in the fireplace. KEYBOARD COMMUNICATION. You can communicate quite extensively with an LCP by typing sentences using the computer keyboard. These sentences can be in the form of questions, suggestions, or requests. They'll evoke a wide range of responses and reactions from your LCP. Here are a couple of requests that other friends have tried: Please type a letter to me. Please light a fire. LCP's are especially responsive to good manners. So remember to incorporate words like "Please" and "Thank-you" into your requests. PLAYING GAMES. Almost all LCP's like to play games, although each LCP has his own individual favourites. Here are a few of the games along with simple instructions for playing them. An LCP will usually allow you to make the game selection. He will knock on the glass of your TV or Monitor to get your attention and ask you to select game from the list at the top of the screen. Type in the number of the game you want to play. 1. ANAGRAMS. When you play anagrams with your LCP, he'll insist on being the one to think of the word. You'll be the one who unscrambles it. A scrambled version of the word he's thinking of appears in big type on the screen. You type in what you think is the correct word, and he will tell you whether your guess is right or wrong. He'll let you guess 8 or 9 times before he tells you the word. If you need a hint, press F1. Each time you press F1, one letter will assume it's correct place in the scrambled word. For example, suppose the word the LCP is thinking of is CAT, if the scrambled letters are ATC, then pressing F1 will leave CTA. The C switches with the A. thus putting the C in the proper location for the answer. NOTE: An LCP will not give you two hints in a row. You must guess at least once between hints. Press F10 to quit the game. 2. CARD WAR. This is a simple game in which you are each dealt 25 cards from a 52 card deck (LCP always prefer to deal) You both draw the top card from the pile. Your LCP will show you his card first. To show your card, press F1 as indicated by the command menu in the upper right corner of the screen. Whoever has the higher card wins the hand, and both cards are added to the winners stack. When both cards shown are of equal value, this is called WAR. At this point your LCP deals out four more cards to himself and four more cards to you, face down. He will then turn over his last card, press F1 to show your last card. Whoever has the higher card wins the hand, and both cards are added to the winners stack. If the last cards shown during WAR are of equal value, then your LCP continues to deal 4 more cards each until someone wins the hand using the same rules. The game is over when one of you has all 52 cards. You can press F10 at any time if you decide that you want to quit. 3. 5 CARD DRAW POKER. Standard poker rules apply. As usual your LCP will probably insist on being the dealer. You're just going to have to go along with it. You both start out with 400 poker chips, as displayed at the top left of the screen. Your number of chips is below his. Bets and raises are limited to 20 chips each. Press F1 to ANTE UP 1 poker chip and begin the game. The LCP will deal each of you 5 cards (yours are face up) and ask if you feel lucky (This is really asking you if you want to bet any chips). The menu in the upper right corner gives you three choices. BET F1 - Bets 1 poker chip every time you press A. ENTER F3 - Enters your bet. PASS - CLR F5 - Let's you pass when you feel you have weak hand and do not want to bet, or CLEARS your bet if you decide to bet a different amount. After you make a bet or pass, the LCP will either match your bet or pass. When the LCP asks if you want cards, press any combination of numbers from 1 to 5 on the keyboard to discard the cards that you don't want. (As examples, to discard the card on the far left, press 1. To discard the card second from the far right, press 4.) Press the number again to make your original card re-appear. You can discard all five of your cards if you like. Once you've discarded the cards that you don't want, press F1 to DRAW replacement cards. Your LCP deals them to you. If you want to keep all 5 of your original cards, press F3 to STAY. You will not be dealt any replacement cards. Your LCP then tells you on the screen how many cards he discards and deals himself replacement cards. You now have the option to make another bet. At this point, your LCP may raise his bet and give you two choices. SEE - F1 Let's you match his bet. FOLD F3 - Lets you abandon the hand, losing whatever you have bet so far. If you opt to SEE, you'll be given three more choices: RAISE F1 - Lets you RAISE the bet even higher. ENTER F3 - ENTERS your raise. CALL F5 - Stops betting for that hand and lays the cards on the table. After each hand you have the option to QUIT the game (F10.) 4. BLACKJACK. Blackjack is a special favourite of most LCP's. Your LCP will always be the dealer, and you both start out with 400 chips each. Standard BLACKJACK rules apply. Before any cards are dealt, your LCP will ask "What's your bet ?". To place a bet, press F1 as indicated by the command menu in the upper right hand corner of the screen. Each time you press F1 your bet increases by 1, up to a maximum of 20. If you decide to change your bet, press F5 to CLEAR your bet. You can then start betting all over again. Press F3 to ENTER your bet. Entering your bet lets your LCP know that you are ready to play. (Note : You cannot CLEAR your bet after you ENTER it). After entering your bet, your LCP will deal the cards. Yours will both be face up, whereas one of his will be face down and the other face up. When your first two cards add up to 21, you have BLACKJACK, and your LCP will pay you two times the number of chips you bet. When your LCP's cards add up to 21, he'll let you know, and he'll take two times the number of chips you bet from you. When your first two cards do not add up to 21 and are not two cards of the same value, your LCP will ask. "Do you wish to Double-Down?" If you double-down, your bet will automatically double and your LCP will deal one more card. You will not be given an opportunity to take any more cards. Press F1 to DOUBLE-DOWN, or F3 if you do not want to DOUBLE-DOWN. If you do not double-down, your LCP will ask if you want any more cards ("take a HIT"). Press F1 to take a HIT. You can take up to three hits, allowing a maximum of five cards. Press F3 to STAND. When you double-down or stand, your LCP will then show you his down card. If he has 17 or more points, he will stand. If he has less than 17 points, he will take cards until he has at least 17 points. The winner of the hand is the one with the most points not to exceed 21. If either of you has more than 21 points at any time, the hand is immediately ended and the other player wins. Ties are replayed with all bets return to your stack. If you are initially dealt two cards of equal value, your LCP will ask you if you want to split. Press F1 to SPLIT, or F3 if you choose not to. When you SPLIT each card is treated as an individual hand and your initial bet becomes your bet for the first card. An equal number of chips are taken from your pot and become the bet for your second card. The hands are then played individually, like all previous hands. Press F10 to quit playing Blackjack. 5. WORD PUZZLES. Word puzzles is a challenging game that most LCP's thoroughly enjoy. The rules are simple, all you have to do is fill in the missing words in the sentence that your LCP provides. He'll give you the first letter of the missing words. Here is a sample puzzle. There are 50 S in the US Your LCP will ask you to type in the first word that needs solving, which in this case begins with the letter S. You would type in the word STATES and press RETURN. He will then ask for the second word - You would type in UNITED and press the RETURN key. He will then ask for the third word, which in this case would be STATES. Your LCP always know how many words must be solved in each word puzzle. After you have entered your word solutions, your LCP will place your answers in the word puzzle and tell you if you are right or wrong. At the start your LCP will show you word puzzle 1. You can easily cycle through all of the puzzles by pressing F1 to go forwards or F2 to go backwards. When a puzzle you want to solve appears on the screen, press F5. Pressing F5 tells your LCP that you are ready to begin solving the puzzle. He will then start asking for your word solutions. Make sure to press RETURN after each word. Press F10 to quit playing word puzzles. Sewer Software presents.... Lust in space walkthru: By:Namor Here's a brief runthru of this sequel to sex vixens. You start off in the control room of your ship. At the bottom of the screen from right are three letters I, L, S, click on theses for INVENTORY, LOOK, or SANDIE(your computer). To the left of that are four arrows, these are up and down, to the left of that are four more arrow icons for n,s,e,w. and to the left of that is a box, click on it for game functions. Walkthru- Sit down, type "blastoff". Enter destination as Arbora (ask Sandy) tap the space bar to scroll thru txt. get up, so south to the airlock, click on door button, go south. Now your in the jungle, you don't want to get lost here so go south then east and pick the apple (be sure to avoid any snakes), then go west and south you should see the cave. Go south once more and you will see the priestess. Uhoh seems your too tired to please her, better eat the apple to regain your strength, there, now you can make love. When your thru type "ask" and the woman will show you on your way. In the cavern- go east and fill the vase the priestess gave you. go east and then north twice, you should be back at the ship go up and north to the control room. Sit down and then blastoff to the space station. Once there exit the ship and you will be knocked out. When you recover you will be in a cell with the princess. The girls been here a long time and looks thirsty so give her the water you got from the cave. Boy that lit her fire! When it's over touch her face and then "ask", she should then take you to Dildo, if guards come instead then reload from a prior save and try again. The princess will take you to dildo. Hit him. Now "grab switch". You'll be transported back to your ship as the station begans to destuct. Quick! Sit down, blastoff to Erotica. The End... Sewer Software presents..... QUANTUM PAINTBOX Yeh, covered on DOC DISK 2, but this is the FULL manual. This screed is taken from the one they had the nerve to call an instruction book. It would have served a far better purpose as a postage stamp book. There may be a few mistakes in this, some mine but a good few of the publishers. Perhaps deliberate. IT DOES WORK ALL THE SAME All the words asked for have been in the correct place Perhaps after this little effort I will be able to be a member of the Esteemed Body of ! Perhaps on reflection not with this one Quantum Paintbox is a comprehensive graphics and animation design package written to take full advantage of the latent power of the Atari ST.It is the first ST art package to allow the artist to paint in any of 4096 colours on screen simultaneously. No other ST art package comes close to this ability.Quantum Paintbox achieves this feat by allowing the user to allocate a varying amount of the 68000 processor`s power to the display of images. 128 colours out of a palette of 512 may be displayed on screen together,with only a loss totalling 5% of the ST's normal processing power,but by allocating most of the power to graphics display,any colour out of a palette of 4096 colours may be displayed at once. Quantum Paintbox is supplied on a single-sided 3.5 inch floppy disk.The disk is not copy- protected and you are advised to make a backup of your distribution disk as soon as possible. You are permitted to make 2 archival copies of Quantum Paintbox for your personal use only- no more than one copy may be in use at one time. To run the program,locate the file named 'PAINTBOX.PRG' and just double-click on it in the usual way. After a few seconds you will see 2 the Quantum Paintbox main display. Quantum Paintbox can be run on both Monochrome and Colour systems, but you should note that to say the least, many of its best features are only applicably to a low resolution colour display. NOTE: if you have cold-started (switched-on) your ST and are running Quantum Paintbox for the first time, you will be asked by the program to enter a word from this manual. To continue, look up the word in this text and enter it - hit when you are ready to proceed (or click on the copyright notice). After entering the word correctly, even when re-running Quantum Paintbox, assuming you haven`t turned-off the ST in the meantime, you will not be bothered by the request again. Quantum Paintbox, like most other sophisticated software packages, is continually being improved, you should therefore locate the README file on the distribution disk and examine it to find out what changes have been made to the program since the writing of this manual. Consult your Atati ST User's Guide for more details on how to read or print text-files from the Desktop. When Quantum Paintbox was originally 3 designed, the intention was to write a manual consisting of just three words : "PLAY WITH IT!". Although (as you may have guessed by now)that idea was dropped, it is still the underlying intention. Quantum Paintbox is a fun package that has a lot of features, some of which can only be understood by actually using them, therefore this manual is aimed at being a get-you-started guide, rather than a comprehensive step-by-step guide. Of course, if you still feel in need of more detail you may either hook up your modem and dial into one of our online suport services and ask us any questions you may have, or you can obtain a copy of our Quantum Paintbox User's Reference. The Quantum Paintbox Users Reference is only available to REGISTERED USERS - to get hold of it you must send in your registration card, properly completed - consult the separately enclosed sheet 4 The Control Menu is that screen of icons and text- boxes that you see whe you first run Quantum Paintbox. This is the primary method of selecting drawing functions and stetting controls. There are two main parts to the Control Menu, one containing the drawing controls, the other one being labelled 'ANIMATOR' - which is in charge of controlling the built in animation system. To make it easier for users. Quantum Paintbox has been styled similarly to various other available ST art packages. Although some of the features operate in a different ways, the overall concepts are the same. Quantum Paintbox uses the popular technique of using one screen for actually drawing on, and one screen for holding the Control Menu. The RIGHT MOUSE BUTTON will swap between the two screens OK let's explore the Control Menu. In the top left hand corner you will see a box containing the colour palette controls. In low resolution there are 16 boxes available - each one containing a different colour. In medium resolution there are only 4 and in monochrome mode only black and 5 white are available for use. Underneath the paint pots you will see 4 buttons, labelled: CPY. SPR. RST. MAP. The CPY box allows you to copy colours between paint pots or between different palettes (more on which later). SPR allows you to generate a range of different colours, that are SPRead between a start colour and an end colour. If you click on CPY the mouse arrow will change to a 'FROM' shape and you should click on the first paint pot - the starting colour. If you now click on another pot. Quantum Paintbox will generate a series of colours between the two you selected - each one mixing a different proportion of the two colours. For example, if the first colour is white and the second colour is black, the spread will consist of a range of greys. The RST box will reset the palette to the default palette - you can save a palette under the name of 'DEFAULT.PAL' and this is always available as the default palette. The MAP box is more complicated. This box will also produce the TO and FROM mouse pointers. This function will MAP the current picture using the colour range you select. In this way you can free palette colours for use elsewhere. The colour associated with each 'paint pot' may be altered by DOUBLE - CLICKING on the paint 6 pot that you wish to change. After double clicking on the paint pot box, a dialogue box will open up, showing three slider controls, and some buttons. The three sliders are labelled R,G and B and the value set on each represents the RED, GREEN and BLUE colour components - values are from 0 to 7. To change the slider setting either drag the slider to a new position, or click above or below the slider to change the setting by 1. A further way to set a paint pot colour is to pick one colour out of the 512 colours available. To do this just click on the PICK button. On clicking the button you will be presented with a display of all 512 colours - the current colour is shown in a vertical bar in the lower right hand corner, along with a readout of the current RGB value. To pick one of the colours just point at it with the mouse and perform a single mouse click. The colour will be transferred to the colour bar so that you can examine it more closely. You can also just hold down the LEFT mouse button and move the mouse around the palette display adjust the chosen colour quickly. WHen you have found the right colour, just click on the large sample colour bar.If you don't wish to choose a colour from the 512 colours display, just press the RIGHT mouse button. Below the palette function boxes you will see a 7 set of boxes numbered 1 to 8. These numbers refer to the different palettes available fo use in each picture you draw. Quantum Paintbox allows you to use 8 different palettes in ONE PICTURE. Each palette may be positioned vertically on the screen, so each zone of the screen may have its own set of colours - completely independant of any other zone. Taking a simple example of just two palettes, one for use in the top half of the screen, one for use in the second half of the screen. Say you were painting a picture of a landscape, you would probably like to have plenty of blues availably for painting the sky, and plenty of greens available for the grass and bushes. To do this you could define two palettes, one with plenty of blues, one with plenty of greens. You could then position the second palette to start below the horizon in your picture - thus freeing up all the useless blues blues used in the sky areas, for use as greens when you draw the bushes and grass. Each of the palettes can be selected by just clicking on its button - when you select a palette it becomes the main screen palette - you will see the screen colours on the Control Menu change. You can copy colours between palettes by using the CPY button. You may copy whole palettes by CoPYing one palette button to another, or you may copy a single 8 colour from the displayed palette to another palette by clicking CPY, the clicking on the paint pot you wish to duplicate, then clicking on the palette into which you wish to copy the selected colour. A CoPY or SPRead may be aborted by clicking the RIGHT mouse button, or by clicking outside the palette control areas. Double - clicking on a palette selector box will cause a colour - cycling dialogue box to be displayed.This allows you to cause a particular palette to be colour - cycled. To use the cycling control boxyou must first define a range of colours that will be cycled. To do this move the mouse pointer over the left - most colour, hold down the mouse and move the pointer towards the right - most colour. While you are doing this a 'rubber-box' will appear to show you what you are doing. When the mouse is positioned over the right - most colour box, just release the mouse button. The speed of cycling for the selected palette may be altered by using the speed slider. The direction of cycling may be altered by clicking on either the '<<<' button, or the '>>>' button. Cycling for the palette may be disibled by clicking on the OFF button. Finally click on OK to 9 fix the changes you have made. Colour cycling may be enabled on any of the 8 palettes - each may have a different speed, direction and range of cycling. You can use this facility to have a river flowing near the bottom of a picture, and have snow falling at the top of the picture - each effect using different colour cycling setting in two different palettes! TOOLS Having briefly examined the palette controls, we can now move on to the drawing tools. Each of these drawing tools may be selected by clicking on the appropriate button-box. All these drawing tools do exactly what you might expect - the CIRCLE tool draws outline circles, the DISC tools draws filled circles and so on. FREEHAND: This causes the mouse to 'sketch' on the drawing screen with a particular brush-shape. The currently defined 12 brush shapes are shown in a box positioned to the right of the palette controls. These brush shapes may be selected by clicking on them. To change the shape of the brush, just DOUBLE-CLICK on the brush shape ( click on it twice - quickly in succession ). 10 ERASE: The ERASE tool works identically to the FREEHAND tool, except that instead of laying down colour pixeks, it removes pixels by painting in background colour. Although it is eqiuvalent to using the FREEHAND tool with the background colour selected, the brush mouse pointer remains in the currently selected drawing colour with the ERASE tool, and so makes the mouse more easily visible when it moves into areas of background colour. RUBBER LINE: RUBBER-LINE allows you to draw a single line between two points. To use this tool in the drawing screen, just click on the first point, move the mouse pointer to the second point and click once more on the LEFT mouse button. If you click on the RIGHT button in the middle of drawing a rubber-line, the action will be aborted. POLY-LINE: Same as RUBBER- LINE, but it remembers the last point and uses it for a new starting point. The effect of this is to allow the user to draw a series of connected lines. To finish drawing POLY-LINES, just use the RIGHT mouse button. 11 POLYGON: This tool allows you to draw polygon shapes. It works similarly to POLY- LINE, but fills the shape outline. To finish off drawing the polygon you should move the mouse pointer close to the starting point and click the LEFT mouse button. The RIGHT mouse button will abort the whole POLYGON function. RAYS: The RAYS tool is like POLY-LINE, but every line drawn has the same starting point. When you have drawn enough lines from the central point, just click the RIGHT mouse button to finish. FRAME: This draws an box shaped outline - a frame. To use it, click on the starting point - this point will anchor one corner of the frame. You may now adjust the frame by moving the mouse around. To fix the frame, just click once more on the LEFT mouse button. Clicking on the RIGHT button will again abort the FRAME drawing function. BOX: Exactly like frame, except the outline is filled with the currently selected colour/fill-pattern. 12 CIRCLE: This tool causes a rubber-circle outline to be drawn. To draw the circle, click on the intended centre of the shape, and move the mouse around until the radius is correct. If you switch off the Circle Lock flag in the Settings menu (see later), then Quantum Paintbox will allow ellipses to be drawn. In the case of elipses, move the mouse around until the shape of the ellipse is correct. When you are satisfied with the shape, click on the LEFT button to fix it. The RIGHT button again will cancel any circle/ellipse drawing in progress. DISC: As for CIRCLE, but draws filled circles - i.e. discs. The current colour/ fill-pattern is used. The CIRCLE LOCK applies to discs as well - allowing filled ellipses to be drawn. R-FRAME: This is similar to the FRAME tool, but corners are drawn 'rounded- off' with circular arcs. R-BOX: Again, this is similar to the BOX tool, but the corners are drawn rounded- off. FLOOD FILL: FLOOD FILL allows irregular areas to be filled with the current colour/ 13 fill-pattern. The flooding will stop at the edges of the screen or at a colour boundary. A colour boundery is defined as a colour that is different from the colour at the starting point of the fill. AREA FILL: This tool allows irregular filled areas to be drawn. It is the solid equivalent of freehand drawing. To draw a filled area move the mouse pointer to the starting point on the perimeter of the shape to be drawn, hold down the mouse and just draw the outline. When you release the mouse button the drawn outline will be filled. AIRBRUSH: This tool works like a traditional spray-can, or 'airbrush'. The current brush shape is dotted randomly over a specified circular area. The rate of paint flow and the radius of the spraying-circle may be altered by using the Airbrush option in the settings menu. When using AIRBRUSH for the first time. Quantum Paintbox will allow you to adjust the radius/flow-rate befor you start. TEXT: This is a lettering tool. It allows text to be drawn on a picture-e.g. for titling a picture. When you enter the drawing mode using the text tool, you will see a simple vertical 14 bar cursor that moves with the mouse. If you type some characters they will be plotted at the cursor position. When you have entered enough characters, and the cursor is in the right place, click on the LEFT mouse button to lay down the lettering on the picture. The RIGHT mouse button will abort this tool function. Pressing key will have the same effect as pressing the LEFT mouse button. Text in Quantum Paintbox can be drawn in four directions - selected via the Text Control box which is activated by double- clicking on the Font Box (see later). COPY AREA: This tool allows areas of the drawing screen to be copied and repositioned elsewhere. The selected area effectively becomes a huge multicoloured brush and may be painted over the screen, or just dotted around. When the COPY AREA tool is used a cross-hair cursor appears. Move the cross-hair to the top- left corner of the intended copy area. Hold down the left mouse button and you will see a rubber box appear - just stretch out the box until itjust surrounds the required area - then release the mouse button. The copied image will 'come- away' and may be moved around with the mouse. To plot the image, just press the LEFT mouse button. You can paint with this image by holding 15 down the LEFT mouse button and just 'painting' with the mouse. MOVE AREA: This is identical to the COPY AREA tool, except that the original image is erased. This tool actually MOVes the image rather than just COPYing it. ZOOM AREA: This tool allows selected areas of the screen to be magnified and then permits you to alter individual pixels. When ZOOM is active, clicking on the RIGHT mouse button in the Control Menu will cause the zoom display to be shown rather than the full-size drawing screen. To select a new area, just click on the ZOOM AREA box again. To return to normal mode, and access the full-sized drawing screen, just select one of the other available tools in place of ZOOM AREA - FREEHAND for example. To select a colour in the ZOOM mode, flip back to the Control Menu and select a drawing colour as usual. The ZOOM display has three control buttons visible : ERASE, DRAW, PICK. ERASE will cause the ZOOM editor to set individual pixels to background colour. DRAW will re-enable the current drawing colour. PICK will allow you to click on one pixel and use its colour as the current drawing colour. 16 In addition to the actual drawing tool selections, there are also buttons available to modify a tool's action. Most obvious is the box containing the 12 currently defined brush shapes, which has already been discussed. There are three control areas of particular importance: the Font Box, Fill Box and Line Box. These boxes show the current font settings, fill-pattern and line style/width respectively. The Font Box is the largest of the preview boxes -it shows a sample of the currently loaded text font, in the currently selected point size, with the currently selected font attributes. The point size of the font may be changed by clicking on the left- arrow box next to the Font Box to decrease the size, or on the right-arrow box to increase the size. To change the current font attributes, double click on the Font Box itself. This action will call up a dialogue box which will allow you to choose whether the font should be displayed OUTLINED, THICKENED, LIGHTENED, SKEWED, or UNDERLINED, or any combination of them all. You can also specify in which direction the font should be displayed by clicking on the appropriate arrow button. 17 The next box. the Fill Box, contains a sample of the current fill pattern. You can choose the different patterns available by clicking on the right/left arrow boxes. The last box, the Line Box, shows the currently selected line pattern/width. The right/left arrow boxes next to the Line Box allow the line thickness to be altered. By clicking on the Line Box itself, you may select another line-style, for example a dashed line style. There are 4 further boxes in the control menu that alter the results of various drawing tools. These boxes are labelled SOLID, PATRN, PAINT and STIPL. SOLID and PATRN are used to select whether or not a drawing tool uses the currently defined fill pattern. If SOLID is selected the fill pattern is ignored and a solid fill pattern is used. If PATRN is selected, the currently defined fill pattern will be used when using a tool that actually supports fill patterns. Text and outline drawing tools do not support fill patterns. PAINT & STIPL are used to modify the action of brushes used when using the FREEHAND and ERASE tools. PAINT mode will cause brush strokes to be joined to each other,STIPL mode 18 will not join brush strokes but will produce a much more responsive painting affect. At the lower right corner of the drawing tool area are the screen selection buttons. These select which of the drawing screens is to be used. Quantum Paintbox currently supports two independent screens - Screen 1 and Screen 2. The selected screen is used for ALL operations- this includes saving and loading screens, clearing screens and entering frames into the animation frame buffer. The remaining button which on start-up is labelled 'Mode 128' is used to switch between the available Quantum Paintbox graphics modes. It has been ignored up till now because it leads to the more advanced sections of Quantum Paintbox, which will be described next. 19 Unlike the first generation paint packages which made up for the ST's lack of graphics hardware by offering weird and 'wonderful' graphics novelties. Quantum Paintbox actively overcomes these limitations not by masking them in exotic functions, but by REMOVING them. The ST is a powerful computer, but to keep the cost low enough to attract the wide support it now has, the designers had to make compromises on the number of colours available for use on a single screen. Up until now, the most colourful mode available on the ST was 320*200 low-resolution, which allowed a palette if 16 colours out of a possible 512. Quantum Paintbox includes revolutionary code to allow not only many many more colours to be displayed on screen at once, but actually extending the available colours CHOICE. There are 5 graphic modes available in Quantum Paintbox - Mono, Mode 32, Mode 128, Mode 512 and Mode 4K. Mono merely refers to the black & white monochrome mode that can be used - even Quantum Paintbox can't get more than one colour out of a monochrome monitor, but it can still be used to create monochrome pictures. Mode 32 is only available in medium resolution mode (640*200 pixels), it allows 8 palette changes to occur in the midst of a med rez screen 20 -thus giving 4*8=32 colours. Mode 128, only available in the low resolution mode (320*200 pixels) allows the low resolution pelette to be changed 8 times in the midst of the display. This mode gives 16*8= 128 colours. The next two modes are highly processor intensive, they work by effectively taking over the drawing of the screen and handing over the task to the 68000 CPU itself. The disadvantage is that very little processing time is left for other tasks, but it does still allow page-flip animation and VBI driven music to run. Mode 512 splits the screen into zones 80 pixels wide, and 1 pixel high. Each of these areas has its own 8 colour palette, although Quantum Paintbox uses some special 'intelligent' code to squeese more than 8 colours out of these zones. Mode 4096 is a closely associated mode to Mode 512, but instead of selecting colours from a standard palette of 512 colours. Mode 4096 uses an interlace Mode to generate 4096 colour hues. If all this sounds hard to comprehend, just forget it! Quantum Paintbox does all the hard work for you -all you need to provide is imagination. 21 Ignoring Mono mode, which is unchanged from any other painting package, we will examine the closely related Mode 32 and Mode 128. These modes use a system of horizontal Blank interrupts to completely exchange a new palette of colours for the current one, while the picture is actually being displayedon the video screen.On a normal low resolution display, 16 colours are available anywhere on the screen, under Quantum Painrbox, in 128 Mode, 16 colours are available in each of upto 8 sections of the screen. These sections are as wide as the screen, but may be a variable number of pixels high and positioned freely on the screen. Mode 32 is very similar, but as medium resolution mode only has 4 palette colours, you can only change 4 colours at each palette change zone-giving a total of 32 different colours The mechanism for positioning the palette change points is quite simple. After you have set the colours in the palettes you wish to use, the position of each palette change may be changed by selecting the 'Palettes...' option, which may be found in the Tools menu. Selecting this option will display a dialogue box which consists of several buttons, plus a set of 8 slider bars. The 8 slider bars represent the 8 colour palettes available 22 The first palette is always fixed at the very top of the screen - the colours found in the first palette are set-up in the vertical blanking period. Each palette change can be enabled or disabled by selecting or de-selecting its flag button - these flag buttons are located to the right of the palette sliders. Note that as the first palette must be present (you must have SOME colours to work with), its flag button is permanantly selected. After setting the palette changes to the required positions, and setting the flag buttons accordingly, you can view the resulting picture by clicking on the VIEW button and holding down the mouse button. To return to the palette adjuster, just release the button. The best way to learn about this mechanism is to play around with it - try defining several palettes, activating them and see what effect the changes you make to the palettes have on the resulting picture. To keep the changes you make to the palette positions, just click the OK button. To ignore the changes you made, just click on CANCEL. Although Modes 32 and 128 have more rigid limitations on the placement of colours than the super palette modes yet to be discussed, they have one important advantage - compatibility. Because these modes only use 5-10% of the 23 68000 processor's time, you can display them while other things are going on-disk files can be read, music can be playing, sprites can be moving around, the keyboard/mouse can be read and so on. We are producing the Quantum Paintbox Commercial Programmer's Kit for utilising Quantum Paintbox pictures in your own programs - along with a license to distribute the code without royalties - the bindings are compatible with most C compilers, Assembler and most ST BASICs. Contact your nearest Eidersoft office more details on this. For non-commercial programmers we will also be releasing a very low-cost subset of the routines to REGISTERED QUANTUM PAINTBOX USERS ONLY - details are included on a separately enclosed sheet. OK, so what about those Super Palette modes? These modes consume almost all of the available processing power to maintain a solid omni-colour display. The only system resource left is the vertical blank period-the time when the video beam has finished drawing ther display and is moving back up to the top of the screen in order to start drawing again. Luckily much of the ST's 24 hardware doesn't need much of the processor to keep it running - the keyboard/mouse controller has its own processor for example, and the built- in sound chip can perform 3-voice sound effects/ music with virtually no processor intervention. There are two very similar Super Palette modes - Mode 512 and Mode 4K. Mode 512 allows you to use any of the 512 standard ST colours pretty much anywhere you like on the screen. There are some limitations to the number of different colours that can occur in a small area of screen - but depending on what sort of images are being drawn anywhere from 32 - 40 colours are available on EACH SCREEN LINE - hardly a limitation, really! Because there is not enough free processor time to actually draw straight onto the Super Palette display, Quantum Paintbox uses a fairly straightforward two screen system. To convert from a pseudo-10-bit-plane screen map to a SP (Super Palette) display requires some very complex statistical calculations. Although these calculations are coded in very tight assembler, to convert a whole 10-bit-plane screen into SP format can take around 10 seconds. This is obviously not done on each change of screen! You are given the option of having the update performed either on demand, 25 or after a preselected amount of user-inactivity. The latter option means that if you leave stop moving the mouse around for than a certain period of time, Quantum Paintbox will assume you are ready for a screen update and will take the opportunity to do so. After calculating the new SP display, the screen will display the resulting image. Moving the mouse, or pressing a key will turn off the SP display and return you to the main work screen, Because painting cannot be carried out on SP display itself, you actually paint on a 'draft' copy of the image-actually a standard 16 colour display. This is a bit like writing a document on a word-processor, where you get a rough idea of what it looks like, and then printing it out properly when you have finished editing it. To activate the Super Palette display, click on the Mode button located in the bottom right hand corner of the drawing tools selection box. It should read Mode 128. If it reads Mono, or Mode 32 then you must re-run Quantum Paintbox in low-resolution colour to access these modes. They can only operate if Quantum Paintbox was started up in 16-colour low resolution (320*200) mode. After clicking on the mode button you will be presented with a set of options. The currently selected mode should be STANDARD MODE. In 26 addition to the mode options, you also have the option to switch the graphics chip from 50 to 60Hz mode. In US only 60Hz mode is ever used, but in the UK and certain other countries that use the PAL TV standard the 50Hz mode is the one used. This value refers to the speed at which the video display is 'refreshed', the higher the refresh rate, the less flicker you will see - especially when using the interlace mode. If your video display can handle it, then you should always try to use 60Hz mode. Most colour MONITORS will quite happily operate with 60Hz refresh - even in PAL TV countries. The only PAL displays that often don't like 60Hz refresh are normal TV receivers. If you are a UK or German Quantum Paintbox user and you are using a standard TV receiver as a colour display for your ST, you may find that it only operates at 50Hz. If you are using a colour monitor such as the Atari SC 1224 then you will find no problem with 60Hz mode, and so you should use it. The only difference between the Super Palette and the Interlaced Palette modes is that Super Palette mode only allows the use of the 512 standard unmixed ST palette colours. Interlaced Palette mode allows the use of 4096 colours generated by a unique interlacing mode. Which 27 mode you use is a matter of personal preference - with a 50Hz refresh rate the brighter colours in Interlace Mode may exhibit a slightly objectionable flicker Choose one of the SP modes and select it. Then click on the OK button. Changing screen display modes forces Quantum Paintbox to purge all its screen buffers and animation frame buffers. You will be warned of this and given a chance to change your mind, save any important work and then select the new mode again. Assuming you have OKed the change, the Control Menu will be redrawn. After the redraw you will notice that some of the control areas have changed. The Mode button will reflect the name of the new mode - Mode 512 or Mode 4K. More importantly the colour palette box willhave been replaced by a set of RGB sliders and some other buttons. There two paint pots - one labelled BG for BackGround colour, one labelled FG for ForeGround colour. Either of these may be selected by clicking on them. Because you can select ANY of the available colours it is impossible to display them individually on the Control Menu. To change a paint pot colour just select the paint pot (BG or FG) and adjust the RGB sliders. In addition you can DOUBLE- 28 CLICK on the paint pot and select a colour out of a 512 colour palette display - just as you can in Standard Mode using the PICK facility. You can only select non-interlacing hues using the latter system however. Having selected a drawing colour, and a drawing tool, you can do some painting! Click on the RIGHT mouse button to access the drawing screen as usual and put some colour down. You may be surprised the colour actually used isn't quite the same as the one you selected. What happened was that Quantum Paintbox chose the nearest colour it could find in its work palette of 16 colours to the one you wanted. This screen is merely a draft area - it is purely to allow you to have some feedback and see where you are on the picture. You will only see the final image after the SP display has been recomputed. To see it just leave the mouse alone and wait a few moments. The mouse pointer will change to a 'busy' marker and after a few seconds you will see the real colour display appear. Moving the mouse causes the draft screen to reappear - until you leave the mouse alone again. This action can be modified by options in the Settings menu (see later). After you have put down lots of different colours you will probably find that the draft colours aren't 29 sufficient to allow you to easily work on the picture -two adjacent colours may be represented by the same draft colour for example. To get around this, you can 'colour zoom'. A colour zoom allows you to zoom in on an area of the picture and select a new draft palette that will display that part of the picture more visibily. For example suppose you are drawing some trees and consequently using a lot of greens. The default draft palette only contains two greens - and you may find that you can't see what you are doing - all the greens are represented by the same two colours! The soloution is simple - click on ZOOM button just under the BG colour box. You will enter the draft screen display mode and you will be able to move around a white box. Move the box over the area in which you are particularly interested - in this case over the trees. Click on the LEFT mouse button. Quantum Paintbox will redisplay the draft picture using a palette more favourable to the area of interest. Going back to the example of the trees, after zooming in on the trees you will find the whole picture takes on an overall green tinge (maybe with some browns), but that the trees look a lot more like their Super Palette displayed counterparts. When you have finished painting in the trees you can colour - zoom in on a different part of the picture and work on that in more colour 30 detail. Another solution to doing detailed work in only slightly differing colours is to use the normal ZOOM AREA function which allows you to work on small areas of the SP image, pixel-by-pixel, as with normal graphics modes. The MEM button positioned next to the Colour Zoom button, is used to recall colours you have previously used for drawing the SP picture. Quantum Paintbox can 'remember' upto 8 different colours and recall them with two mouse- clicks. To store a FG colour in the memory just click the MEM button and it will be stored. DOUBLE-CLICKING on the MEM button will allow you to access the recall mechanism. You will be presented with a dialogue box labelled 'Paint Store' (every pun intended). You will see 8 paint pots that store the last 8 stored colours - you can just click on one of these and the colour it contains will be transferred to the main FG paint pot box. The Paint Store also has an option to pick a colour up from the Super Palette display. On clicking the PICK button in the Paint Store you will be placed in the draft drawing screen mode and you can position a zoom-area box over a portion of the screen. After selecting an area, you will be presented with a display similar to the one you get when doing a ZOOM AREA operation. 31 Click on the pixel whose colour you wish to pick, and you be returned to the Control Menu, with the FG box containing the colour you selected. That's just about all there is to the Super Palette modes. After a little practice, the methods will become guite easy to use. Almost all of the normal drawing tools are usable in the SP modes - some are not however - FLOOD FILL is not possible in SP modes for example. Unusable tools will be displayed as disabled and will therefore not be selectable. The COPY AREA and MOVE AREA functions are much slower in SP modes due to them having to work with upto 10 colour planes instead of the usual 4 - it is therefore not possible to 'paint' with a cut-out area, you may only stamp the cut-out at individual locations. A couple of special drawing options are available in SP modes - allowing 'tinting' fills (useful for colourizing digitised pictures for example), and various other special effects. These are set-up using options in the Settings menu (again, see the section on this menu later). 32 Quantum Paintbox is not only useful for creating static artwork, it also has a powerful animation facilities built-in. Quantum Paintbox animation is based on the old 'flip-books', where you could animate a simple cartoon by thumbing through a book of pictures. Of course the program doesn't employ a book as such. instead it utilises the latest kind of 'delta frame' compression. This technique is used in industry to generate some of the wonderful effects you see on television where a series of animation frames are generated over a period of hours and then stored in a frame buffer, at which point they can be played back in real-time. The Quantum Paintbox frame buffer is controlled using the Animator control panel which you will have seen on the Control Menu screen. It is extremely simple to use, but with a little imagination and creative input, it can create some attractive animation affects. The frame buffer works by basically storing pictures in memory. However, unlike some other programs that provide this kind of facility, Quantum Paintbox delta-compresses the frames before storing them. What this means in practice is that instead of being able to store say 10 frames of animation, Quantum Paintbox could perhaps store 100 frames! Quantum Paintbox 33 doesn't store the frame as a whole, but it stores the DIFFERENCES between the frame being stored and the one stored just before it (if there is one). NOTE: Due to the amount of processor time delta-decompression takes on playback, delta- compression is not carried out if you are drawing in the Super Palette modes. If you wish to use SP modes for animation you will probably need at least 1Mb of RAM or more to get the best out of the system as the frames are stored uncompressed The frame-store is always available, and if you are not using animation you can use it to store a large number of separate static pictures - much better than having multiple workscreens available! To enter a frame into the buffer all you have to do is draw the frame and then click on the INSERT button located on the ANIMATOR panel. The frame will be inserted and you will see four zeroes '0000' appear in the frame counter (which is blank when no frames are stored) - this indicates that Frame 0 is now in the frame-store. When you have designed the next frame of animation, you can just click INSERT again, and the counter will move onto '0001'. It is that simple. 34 You can examine frames you have already entered by using the rewind buttons ('<<','<','>','>>') PLEASE BE CAREFUL WHEN USING THESE BUTTONS AS THEY WILL CAUSE THE SELECTED FRAME TO BE STORED IN THE MAIN DRAWING SCREEN THUS CAUSING ANY PICTURE THERE TO BE LOST! If you wish to keep the drawing screen intact and still page through the animation frames, switch to the alternate screen (using the control buttons labelled 1 and 2 in the lower-right- hand corner of the drawing tools box) and use that to view the frames. The fast-wind buttons '<<' and '>>' cause the counter to increment or decrement respectively for as long as how hold the mouse down. When you release the mouse button the currently displayed frame is decompressed and stored in the drawing screen - use the RIGHT mouse button as usual to view (or edit) it. If you make changes to a frame and you wish to actually alter the frame buffer, click on the RPLC button to store the updated picture. The ordinary wind buttons'<'and'>' are for flipping through the animation frame by frame. These buttons will alter the frame counter by just one, no matter how long you hold down the mouse button 35 To delete the currently displayed frame, click on the CUT button - but BE CAREFUL there is no way to restore the CUT frame. Having created a nice animated sequence you are now in a position to view your efforts. To playback the sequence you must first decide how fast the playback should be. The speed is set by means of the control slider near the bottom of the Animator panel. This slider works like all the others - you can either 'drag' the slider itself, or click in the box to change it only a little. The currently set frame-rate (in Frames Per Second) is shown just above the slider and changes as you select new FPS values. The highest rate is 60FPS, but this rate is not always possible to maintain during complex animation sequences - it depends on how much work the delta- decrompressor has to do to create each new image - it is a matter of experimentation. There is one further button in the Animator panel - labelled 'INS FX'. This is used to insert special effects into the animated sequence - things like sound effect, MIDI handling, screen-fades, and so on. These are handled as 'code patches' and allows you to create your own special effects. For more details on this consult the Appendix on 36 Animation Effects. When you click on the INS FX button you will get a dialogue box displayed, allowing you to enter which effect(s) you wish to associate with the current frame. After you have finished your animated masterpiece, you can save it to disk using the " Save SEQ..." option in the File menu. You can also of course load a sequence of frames, using the "Load SEQ..." option in the same menu. If you wish to clear the whole frame-buffer (CAUTION!!) then you can do so using the "Erase SEQ" option - you will be warned about the dire consequences of performing that action! As a last point, you should note that one non- animation related use for the frame-buffer is to create a slide-show of Quantum Paintbox pictures. Quantum Paintbox SEQ files can be played-back using PBXSHOW. PRG on your distribution disk. PBXSHOW. PRG is a slide- show and animation play-back program that does not require Quantum Paintbox itself to run. This program will allow those people who do not own Quantum Paintbox (few as they may be!) to see the results of your handiwork. PBXSHOW> PRG may be distributed FREELY, or uploaded to Bulletin Boards (perhaps using 37 Eidersofts MiniComm background-processing desk accessory comms package?) or other online services, as long as... 1. The act does not affect the copyright of the authors of PBXSHOW. PRG itself. 2. PBXSHOW. PRG is not distributed for profit. Any media/handling charges for distributing the program on disk must not exceed 3 ($5) in total. 3. You understand that PBXSHOW. PRG is still a copyrighted work, and NOT actually Public Domain. 4, It is not incorporated into or used in any other software package no matter whether that package is PD or commercial. Bear in mind that if you do have commercial applications for Quantum Paintbox images, then we are making the routines and a usage license available at a very reasonable cost (see previous discussion on this topic)... we obviously want you to USE Quantum Paintbox, but we would also like to receive some rewards for the many months of development that went into the package. In good faith we have released Quantum Paintbox at a very low cost so that as many people as possible can afford to use it, and hopefully get a lot of pleasure out of doing so- 38 please don't give us cause to regret this action, we could have released the package at four times the cost or even kept it to ourselves! Time to stop the violin music now - on a lighter note, if you come up with any interesting Quantum Paintbox work and YOU would like some reward for it - then get in touch with us and if it is of a high enough standard we will make you an offer to use it as demo artywork. 39 In addition to the Control Menu itself,Quantum Paintbox uses the standard GEM menu bar to access the less often used commands. Some of these have already been mentioned, but in this section we will examine each menu command individually. Knowledge about the use of GEM menu bars is assumed in this section - consult your Atari ST User's Guide if you have trouble using the menus. 40 The desk menu contains only one Quantum Paintbox specific entry - the "About Paintbox..." menu selection. Clicking on this option produces a copyright notice showing the author's name and more importantly (for you maybe!) the current version number of the program - the first release version being numbered 1.0 and so on. The rest of this menu contains a list of available Desk Accessories. 41 The Files Menu This menu contains the functions relevant to handling Quantum Paintbox files. Load Pic and Save Pic allow a single Quantum Paintbox image to be loaded or saved respectively. With Load Pic you can not only load .PBX (the standard Quantum Paintbox file-type)files, but also .NEO and Plx type files as well. This feature allows you to import existing artwork and the enhance it by the use of Quantum Paintboxe's enormous range of available colours and effects.There is no need to tell Quantum Paintbox what sort of file you wish to load - it will look at the file name extension (.PBX, .NEO, .Pl1, .Pl2, .Pl3) and will make an assumption based on that. Files are currently allways saved in .PBX format. "Load Seq" and "Save Seq" allow animation sequences to be loaded or saved. Animation files are saved as PSQ files. All stored frames are included in the file along with the current frames- per-second setting and any pertinent FX information. "Print Pic" will generate a printer-dump of any Quantum Paintbox image. The settings entered using the standard Install Printer desk accessory 42 are used to generate the printout. Currently only a simple dot-matrix monochrome halftone output is supported. Printer output of Quantum Paintbox images is a bit of a problem, unlike normal graphic modes there can be any mixture of thousands of colours on screen at once, and so any easily affordable colour printer will be out of its depth - we therefore opted to support a basic monochrome output (especially as colour printers are not that common). Hooks have been included to allow replacement printer drivers to be used and we will be making efforts to provide colour drivers, and new monochrome drivers as soon as possible. "Erase Pic" and "Erase Seq" are simply included to allow you to clear out the current picture or animated sequence. You should use these options with care as you could lose a lot of work! A warning alert will be given before the process is carried out. The last item."Quit", is the simplest of all - it just cleans up the system and returns you to the normal GEM Desktop display. 43 The Tools Menu This menu contains selection relevant to the drawing tools you use to create Quantum Paintbox images. "Load Font" allows a different display font to be used for all subsequent text output.Quantum Paintbox allows most standard GDOS fonts (.FNT files) to be individually loaded with this option. Normally using the standard GDOS font drivers any required fonts must be listed in an ASSIGN.SYS file when you first boot-up your system. This is fine, but it does assume you know exactly WHICH fonts you will need for any work you do. The Quantum Paintbox method is far simpler - you just load each font as you need it. GDOS.PRG is NOT required to use Quantum Paintbox fonts, but Quantum Paintbox will quite happily co-exist with GDOS if you have it loaded for another program you use regularly. Some sample fonts are included on your distribution disk - in the FONTS folder. You should be careful about using extremely large fonts as these can sometimes overflow the available buffers and cause the system to crash 44 The "Palettes..." option has been previously discussed. It allows you to position the multiple colour palettes in Mode 32 and 128 "Anti-Alias" allows a simple 'smoothing' algorithm to be applied to areas of the screen. This can improve the appearance of 'jagged' lines or curves and also sometimes improve the quality of digitized images. When selected you are placed in display mode with a set of cross- hairs available. To Anti-Alias an area just hold down the left mouse button, drag out a box and let go of the button. The anti-aliasing will take place in the selected area. If you change your mind about anti-aliasing, then just hit the LEFT mouse button - or hit UNDO after the process has finished. The "Draw Modes..." entry allows you to select special brush effects to use when drawing. These modes will be fairly familiar: CYCLE, SMOOTH, SMEAR, and NORMAL. CYCLE mode is related to the colour cycling options available. It causes the current brush to change paint colours as you draw with it. The way in which the colours change is dependent on the current colour cycling settings for the CURRENTLY SELECTED palette. SMOOTH mode will blur any edges that 45 the brush passes over. SMEAR will cause pixels to be randomly mixed in the vicinity of the brush. NORMAL mode is the default and just applies colour to the screen in the usual way - it is simply the way in which you turn the other modes off! Because of the powerful way in which the Super Palette modes (Modes 512 and 4096) operate certain interesting special affects are made possible. These are selectable using this option. As with the previous item selecting the "SP Modes..." menu option will present you with a dialogue box. You can select which of the modes you wish to use. The modes available are: AND, OR, XOR, ADD, SUB, and NORMAL. These modes define how colours applied to the SP screen interact with the existing image. Normally (i.e. with the NORMAL mode selected) colour applied simply REPLACES the colour that was there originally, however using the other options the original paint colour and the new paint colour may be combined. In each case the paint colours are processed as RGB values - the actual amount of Red, Green and Blue in each colour. 46 The modes work as follows... AND: Resulting colour = (Old colour) AND (New colour) OR: Resulting colour = (Old colour) OR (New Colour) XOR: Resulting colour = (Old colour) XOR (New Colour) ADD: Resulting colour = (Old colour) + (New Colour) SUB: Resulting colour = (Old colour) - (New colour) NORMAL: Resulting colour = (New colour) The ADD mode is very useful for adding colour to black-and-white digitized pictures. By selecting a very dark paint colour and painting with the ADD mode enabled, the dark paint colour will 'tint' the greys used in the picture. A very dark red/brown colour, for example, will produce a flesh-tone when ADDed to a light grey area. The last option available in the Tools menu, "Airbrush..." allows you to define the speed and size of the airbrush tool. 47 The Settings Menu This menu controls various global options that alter the way in which Quantum Paintbox operates "X_Ray Mode" toggles whether or not operations such as COPY AREA and TEXT should be done in replace or x-ray (transparent) drawing modes. In replace mode any colour-zero pixels are solid, in x-ray mode they allow the pixels behind them to be seen. "Circle Lock" toggles whether you wish the CIRCLE and DISC tools to generates circles or ellipses. With circle lock active only true circles and discs are produced. When inactive, ellipses and filled-ellipses may be produced. "Lasso Mode" toggles the kind of COPY and MOVE AREA functions that are used. With lasso mode, selecting COPY AREA or MOVE AREA allows a general area of the screen to be selected by just tracing around it. With lasso mode turned off, COPY AREA and MOVE AREA work with rectangular areas only and you will be presented by a set of cross-hairs when using them. "Coords" toggles the on-screen coordinate readout on the drawing screen. 48 The "Compress..." option produces a dialogue box that allows the type of compression that Quantum Paintbox uses for its picture and animation files to be selected. The last option "Update..." is a comfort control relating to the draft and display screens inthe Super Palette modes. This option produces a dialogue box that allows the update timeout to be selected. When drawing in SP modes, after a period of mouse inactivity ( when you are not moving it about!) Quantum Paintbox will update the SP buffer to incorporate the changes you have made since the last update - it is this period that may be controlled. In additionyou can select the " ON DEMAND " option which will ONLY perform the update if a) it has to or if b) you press the ALT key. As stated previously, when the SP display is on screen moving the mouse or hitting a key will revert to the draft editing display. That's realy all there is to say about Quantum Paintbox to getb you started at least. Happy Quantum Paintboxing! 49 Appendix 1 This is just a brief preliminary summary of the FX routines that may be inserted into Quantum Paintbox animation sequences. A full description is provided with the Quantum Paintbox toolkit, FX patches are loaded when Quantum Paintbox is first executed, the routines to be loaded are included in a single file called QUANTUM.FX which is formatted thus... HEADER 1 HEADER 2 HEADER 3 ... HEADER 10 CODE If a header is not required then it must be replaced by 16 zero-bytes... the total header size must ALWAYS be 160 bytes. Each header is coded thus... 4-bytes : Word sized BRA instruction to start of FX routine 9-bytes : Name of the FX routine (max. 8 chars. null-terminated) 3-bytes : Unused - three zero bytes. Appendix 1 The code for each FX routine must be relocatable (PC-relative addressing). When each routine is called register AO points to a parameter block with the following layout... 2-bytes : Current frame number 2-bytes : Passed paramenter value 2-bytes : Frames-per-second value 2-bytes : Video-frames per second (50,60 or 70) 4-bytes : Pointer to current physical screen buffer 4-bytes : Pointer to current palette buffer 4-bytes : Current playing time (in video frames) The routine should end with an RTS and should return a value in the DO register. If the returned value is zero the sequence playback will continue, if non-zero the playback will terminate. Any registers may be altered during the routine without saving them. Appendix THIS IS THE BOTTOM. LENGTH =66 LINES 58 SEWER SOFTWARE presents... ROGUE Instruction Manual For the Atari ST _________________________________________________________________ THE QUEST FOR THE AMULET How long has it been? How many lifetimes have passed since I began my sojourn through this maze of underground passageways, of damp dimly-lit chambers? How long have I been alone, the only human among a menacing crew of hideous subterranean beasts, stumbling over forlorn reminders that others have passed this way before me....never to return! Long before I forgot the warmth of the noonday sun or the refreshing coolness of the evening breeze, I forgot my name. Call me what you will. I am the Rogue. As I wander, I hold fast in my mind the one object that stands out from all the others: the sacred Amulet of Yendor. This precious gift was left behind by magicians of old to remind mankind of its origins. Stolen by the evil Dungeon Lord, who despised its beauty and purity, the Amulet has remained hidden in the deepest reaches of this tortuous maze, calling those who seek it to sure destruction. Long ago I began my quest for this object, this prize spoken of only in hushed tones by even the bravest Knights and Guildmasters around the dying embers of evening fires. Long ago, the magic Amulet of Yendor began burning its way into my heart, began drawing me here to my uncertain fate. Through these unlit corridors I wander, stumbling in the dark, encountering new ordeals at every turn. In one chamber, heat causes my suit of armor to burn the very skin it was designed to protect. In another, a chill penetrates to the bone, turning my limbs to ice. Everywhere, I am relentlessly pursued by beasts and demons. I cannot begin to count them. There are creatures of every low and mean quality lurking in here. Formless slimes and aquators, bats and goblins, centaurs, and that most hideous and unnatural of creatures, the Ur-Vile. Fortunately, my ever ready mace serves to quickly dispatch many of my adversaries. Against other, stronger beasts, I must defend myself with other weapons: arrows, daggers, magic wands or deadly potions. I stumble from battle to battle, taking care to rest occasionally, or to partake of few morsels of food. One gift the magicians make available to true seekers of the amulet-and them alone- is the gift of life after life. Yet even this gift is tainted with a curse by the Lord of the Dungeon. For each time I sleep the sleep called death, I find myself carried, unknowlingly, back to the very first room of the highest level of the dungeon, from whence I must again begin the tortuous, unpredictable journey time and time again. Why does nothing now look familiar? I this another Dungeon Lord's tricks - or is it my rapidly eroding memory that makes everything seem changed. I wake from the sleep called death to find that nothing is the same. Everything is transformed, familiar yet treacherously rearranged. As I plumb the uncharted depths of this Dungeon of Doom, I wonder. Where am I? Is this a passageway I've trudged before? Is this the chamber in which I left my cloak of chain mail? Does this wall conceal a trap door I found and lost lifetimes ago? On my way I must aquire the provisions that make themselves available to me - despite the fact that they were left behind by the miserable victims of this place. Here a bit of food, and there a suit of armor from an unfortunate owner. Quivers of arrows for my sturdy short bow...oh yes, and magic wands, enchanted staffs, and potent elixers, some powerfully good, some horribly evil. Manuscripts of ancient texts, meaningless to my eyes, which vanish in thin air before I can understand them. And of course gold! A king's ransom of it, yet useless unless I somehow make my way to the very bottom of the dungeon and back again. As I collect these objects and put them in my knapsack, I must discard others...or use them at once to fend off the adversaries that dog my every step. Still, even my few possessions are affected by the Dungeon Lord's spells. Potions which in lifetimes past revitalized me now send me sprawling on the floor, clutched in spasms, burning with fever. Armor which served me in battle after battle becomes a crushing burden, cursed by Dungeon Lord. Each time I venture into these depths, I am constantly attentive. Should my guard slip for a moment, I will fall prey to the horrors that surround me. In my mind, shining like a beacon in the darkness, the Amulet of Yendor beckons me on, deeper and deeper. One day I shall hold it in my hand, caress it in the void, then race, level by level, back to the surface. There I shall hold it high, deliver it once again to the light of day, and reclaim again the name so long forgotten. YOU ARE THE ROGUE Your quest through the Dungeons of Doom for the fabled Amulet of Yendor will challenge your wits, courage and prowess. Monsters lie waiting for you to falter or act with foolhardy courage. For you protection, you have been given armor, and enchanted mace, a bow and a quiver of arrows. At the beginning of your quest you have food to last one meal. But in the dark passages and rooms of the Dungeon you will find more food and weapons left behind by less fortunate seekers of the Amulet. As you descend, you must search for these hidden treasures, gold pieces and magical potions to help you achieve the highest of honors. A triumphant quest for the Amulet of Yendor and immortal enshrinement in the Guildmaster's Hall of Fame. Getting Started Insert the Rogue disk into drive A or B. At the DESK TOP, move the pointer to the appropriate drive icon and double-click to open the Rogue disk, then move the pointer to the ROGUE.PRG icon and double-click the mouse again. IMPORTANT NOTE: Some early versions of the Atari 520 ST do not have the operating system built-in (resident in ROM). These systems require that you first load TOS (Operating system) for a disk before you can play Rogue. Because of the varying file size of DESK accessories that are loaded along with TOS, Rogue may have trouble loading due to memory limitations. If this should occur, you can prevent a DESK accessory from loading by changing its file extension from .ACC to anything else. To change the file name of a DESK accessory, do the following: 1. Load TOS in drive A. 2. Click on the drive A icon to see the files on the TOS disk. 3. Click on one of the DESK#.ACC icons so that it is highlighted. 4. Select the FILE pull-down menu and click on "Show Info." 5. Use the backspace key to delete the last character of .ACC. For example, changing DESK1.ACC to DESK1.AC will prevent the file from loading when you boot TOS. 6. Click on "OK" when finished. 7. Repeat steps 3-6 to remove additional DESK accessories. 8. Reboot TOS, then follow normal loading instructions for Rogue. Starting Play When the Rogue title screen appears you'll see a small menu screen at the bottom that says: "Rogue's Name" and a blank box to enter your Rogue character's name. Here you have a choice: you can give your character a name or simply press return and the game will name the character "Rodney." Playing Rogue The Rogue game screen is divided into three windows. In the title bar of the Rogue window is the name of your character followed by the current dungeon level. The main body of the window is divided inth three sections: On top are four command buttons for moving your character UP a level, DOWN a level, SEARCH a room, and REST. The main section is the level map which shows your Rogue character moving through the dungeon rooms and dungeon level you are exploring. The bottom of the screen is the status area which provides information on your character's state. The level map may either be 'zoomed-in', which shows a small area around the Rogue character in great detail, or 'zoomed-our' which shows the entire level. The game may be played wither way, and you may wish to zoom-in or our thoughout the game. To zoom-in or out, click the mouse in the small box with the diamond in it in the upper right-hand corner of the Rogue window. If you're using the keyboard, pressing the key will work also. Mouse Movement 1. To move your character using the mouse, just move the mouse pointer over an area a short distance from the Rogue character and click the mouse. The Rogue will run toward the area where the mouse was clicked. 2. If you hold down the key and click on something on the level map, you will be given a short description of what that object is. 3. To pick up something in the dungeon, simply move on top of it. If you wish to walk over an object without picking it up, hold down the key while you are moving. 4. To fight a monster in the dungeon, you want to move the character so that it runs into the monster. You might try positioning the pointer such that when you click the mouse, the Rogue character has to run over the monster to reach the pointer's location. Command Buttons The four command buttons allow you to go up or down stairs, to rest and to search for secret doors and booby traps. To execute a command, simply point the mouse at the botton and click. The buttons will only work if they are not "dimmed." If all the bottons are dimmed, it means that one of the other windows besides the Rogue window is currently selected. To select the Rogue window, just click anywhere inside of it. Resting and searching will be explained later in greater detail. Status Area The bottom of the Rogue window has three bar charts. The first bar chart shows you how healthy your character is. The green area of the chart shows you his current "hi-points." The grey area shows his potential hit points. As your character gains experience in the dungeon, his maximum number of hit points will increase. As monsters injure you, the green area will slowly be replaced with red. Be careful! If the green goes away completely, your character will die and the game will be over. When you are not fighting, the green area will slowly move back until you are at full hit points again. If you are resting, the hit points will come back faster. The next bar shows your current strength. It works the same way as the hit point chart, but resting will not restore your strength, and you won't die no matter how low your strength gets. However, the lower your strength is, the less able you will be to battle monsters. The final bar chart shows the strength of the armor you are wearing. The stronger your armor, the harder it will be for enemies to hit you. In the are of the right of the last bar chart, a message will appear from time to time telling you that you are hungry. It is a wise idea to eat at the earliest opportunity when this message appears. Playing With The Keypad An alternate way to move your Rogue character is with the numeric keypad instead of the mouse. | | | | | | | |<--FAST PLAY | \| |/\| | /| | |<--UPSTAIRS |<-| | | |->| | |<--DOWNSTAIRS |/ | |\/| | \| | | | |<--ZOOM IN/OUT | | | | | | ^ REST____| |_____SEARCH Pressing the <*> (asterisk) key turns "fast-play" mode on and off. When Fast-Play is OFF, the rogue moves one space every time you press the direction key. When Fast-Play is turned ON, the character will move in the direction pressed until he comes upon something interesting. Pack Window The pack window shows you every object you currently have in your possession. At the bottom of the window, the amount of gold that you have accumulated is shown. Full Button If you click on the diamond button in the corner of the pack window, the window will expand to the width of the screen and a very short description of the objects in your Pack will appear next to their icons. To return the window to its small state, click on the diamond box again. "USE" Dialog Box To use any item in the pack, simply click on the item. A dialog box will pop up allowing you to use the item. Notes Box If the object has not been identified, the next line will contain a "notes" area. Here you may type notes to yourself concerning the object for later use. Dialog Buttons Also contained in the dialog box will be a series of buttons describing what you may do with the selected object. Your specific options at this point will depend on what object has been selected. Most objects may be thrown or dropped. Here is an explanation of some of the other buttons: Wield/Unwield Weilding an object makes it your current weapon. Any creature you attack will be hit with this weapon. If you unwield an object and don't wield another, you will be fighting with your bare hands! Wear/Remove You may wear or remove armor or rings with this command. You may not wear more than two rings at a time. You must remove one piece of armor before you can put on another. Identify If a button appears saying "IDENTIFY." you have the power to identify that object. Identifying an object will give you greater information on its purpose. Message Window The window at the bottom of the screen contains important information on your character's quest through the dungeons. Three messages appear in the window at one time, but it will keep track of the last 10 messages you received. If you miss a message, you can click on the message window to make it active, then click in the arrows at the right edge of the window to scroll to previous messages. When you find the message(s) you missed, scroll forward again so that new messages will appear in the window. Menu Commands At the very top of the Rogue screen are three menus. The first menu, "DESK," includes the desk accessories, if any, that you have installed, and a menu entry called "About Rogue." If you choose this item, information about the creators of Rogue will appear. The next menu is the "File" menu. It has the following entries: * QUIT - This will abandon the current game and return to Desktop. * SAVE GAME - This will save the current game for later play. * RESTORE GAME - This will bring back a game that was saved earlier. The next menu is the "Command" Menu. It has the following entries: * Again(Repeat the last Throw, Shoot or Zap command.) * Reweild(Wield the previously wielded object.) * Show Rank(Display your character's current rank.) * Hall of Fame(Show Guildmasters' Hall of Fame.) * Change Name(Change the Rogue Characters name.) Function Keys At the top of the keyboard are ten function keys. The first four of these may be used as "short-cuts" in Rogue. F1 - Repeat the last Throw, Shoot or Zap command. F2 - Wield the previously wielded object. F3 - Display your character's current rank. F4 - Show Hall of Fame. F5 - Change Rogue characters name. Taking On Dungeon Dwellers If you find yourself suddenly being attacked by one of the monsters, you do battle by moving directly towards it. Blow by blow descriptions of the battle will appear in the Message window. Sometimes, a monster will be sleeping and you can sneak by or attack it unawares. But, remember: discretion is the better part of valor - it's most discrete to let a sleeping moster lie. Every action in ROGUE, including fighting, is a random event. Therefore you must devise a play strategy that includes all possibilities. If you are defeated in battle, pull yourself up by your bootstraps and fight again. If your strategy in discovering the secrets of the dungeon or battling your adversaries fails you, try another. Here are some examples: * Practice fighting the monsters at easier levels to develop a strategy for the more difficult adversaries you'll encounter deeper in the dungeon. * Stalk certain foes with your bow and arrow, remaining safely at a distance. * Magic wands and staffs are also effective for fighting powerful adversaries from a distance. Resting After a particularly grueling encounter with an adversary, you will probably find that your Hit Points have diminished due to blows administered by your opponent. You can regain Hit Points while resting. To rest, click on the Rest box. You rest one turn with each click. If you press and hold the key as you click, you will rest ten turns with each click. But be on guard, for even while pausing to catch your breath, there is no respite from the denizens of the dungeon. NOTE: Resting does not restore you strength. Searching Sometimes the forces of the dungeon will prevent you from finding all the ins and outs of a level. You may have to search down the entire length of a wall of several rooms in order to find hidden doorways or passageways. To search for secret doors or hidden traps, you select and click the "Search" box. Here's a step by step outline of the search feature: 1. Place the Rogue character at the place or point where you want to search. 2. Point and Click the Search box. The eight spaces surrounding the Rogue character will be searched. 3. The hidden object may be revealed if it is present. If not, nothing will appear. However, don't be so easily fooled. Try again if you're sure there's something hidden at this spot, one time may not be enough. 4. You search one time with each click. If you press and hold the Shift key as you click, you will search that area 10 times in one click. 5. If you still haven't located anything, move the Rogue character further down and search the next spot by clicking the Search box. Continue searching dead-end passages in this manner. Mastering Your Weapons As mentioned earlier, you fight monsters by moving directly into them and bludgeoning them with your mace - a club with a spiked ball on the end. However, there may be times when you wish to avoid hand-to-hand combat. If this is the case, you can also choose to Zap a particularly troublesome monster with Magic Wands or Staffs. Outlined below are step-by-step commands for Throwing, Shooting, and Zapping. Throw An Object Select the object you want to throw from the Pack window. Clicking on the object's corresponding letter will bring up a dialog box containing options to Wield, Throw, or Drop the object. Remember, you must first Wield an object before you can throw it. When you are ready to shoot, click the Throw box and a window with direction boxes will appear. Point to and click in the direction of your adversary. If your aim is true, the monster will be "hit" and the results printed in the Message window. If not, the weapon will zoom past. To throw again, repeat(or press the key to repeat previous command). NOTE: If you first wield the object you wish to throw (double click when selecting) your accuracy will improve. Shooting Arrows Arrows and Crossbow Bolts can be "thrown" as described above, but they inflict much more damage if they are shot. To shoot an arrow, first select and wield the bow, then select the arrow with one click. When the dialog box appears, select "shoot". When the direction window appears, point to and click the appropriate direction arrow. Zapping Select the item you want to ZAP with from the Pack window. Clicking on its icon will bring up a dialog box with ZAP being one of the selections. After selecting ZAP, choose the direction as you did with Throw and Shoot. Weapons Performance Certain weapons and other objects in your Pack window have numbered values beside the icon caption. Objects such as arrows, darts and crossbow bolts have three numbers: the first number indicates the quantity, the second number indicates how likely the object is to hit the monster, and the third number indicates how much additional damage it will do. The higher the number, the more effective the object. Other objects have two numbers, the first indicating the probability of hitting, and the second the additional damage. Picking Up and Using Objects Everything you encounter in your sojourn can be picked up and put into your Pack - until it's full. When this happens, you will have to use or drop an object. To drop an object, refer back to the Rogue Commands section To use an object such as a potion, scroll or food, just point and double-click its icon in the Pack window. The effect or double clicking will vary depending on the type of object you clicked. If you're not "wielding" or "zapping" the object, the game assumes you want to drink a potion, eat food, read a scroll or put a Magic Ring on your finger. Saving A Game To save a game, select "Save Game" from the pull down File menu. Restarting A Game To restart a saved game from your disk, select "Restore Game" from the pull-down File menu after starting up Rogue. Sewer Presents.... Sundog SOLUTION: If you are going to make a try for solving Sundog, it's best to create a new character. When buying abilities, take a lot of Charisma and Luck...it helps when avoiding the 'nasties' who plague the game. To conserve as many of your hard-earned credits as possible, replace all the missing or broken pieces in your ship as possible with shunts. Certain pieces are un-shuntable, so some purchasing is necessary. Then, fill up on fuel and repair your ship, but don't buy auxiliary fuel, as this will take up space in your cargo hold. Take out all your money from the Bank. Buy a lot of extra food (don't over-do it though) and store it throughout the numerous lockers aboard your ship. Now you should Warp over to Woremed, where they have the best illegal equipment credits can buy. If you don't know how to warp yet, then don't use these hints...get familiar with the game first, or see HavokHintz #su0094. Once on Woremed, peek in the Bank and see if there is any more dough stashed there...a litle more money couldn't hurt. Find a bar, and ask the bartender for Information about Buying a Cloaker and then a Ground Scanner. Replace a Cryofuse in the force shield with the Cloaker, and replace a Scanner in Pilotage with the Ground Scanner. The Ground scanner lets you see a few cities missing from your maps as well as get to them, and the Cloaker makes you invisible when your shields are on. Start your wheelings and dealings on Woremed...might as well, since you happen to be there already. Buy as much as you can, and fly to another city by selecting Navigate and choosing City To City. Sell, everything you have, because this is the only way for you to get credits to finance your mission. Check to see if the warehouse has any Cryogens, and take note of whatever else is there too. Don't buy any goods now, but collect the Cryogens and take them back to Jondd. One of your last actions should be to to pick up all the cash that is left on Woremed...there are other means of banking, but direct cash transactions are easier and less bothersome. If you don't take your dough with you, then you won't have anything at all back on Jondd. Once you get back to Jondd, buy a LOT of food, which you will need while travelling in the wilderness. Leave Drahew, and hunt around for 'The Lost Colony', known as Banville Center. Once found, your Ground Scanner will store its position in memory, and you will be able to land there directly. Visit their warehouse, and find out which goods they need. Remember to store your cryogens there, too. From here on, it's just a matter of finding where the goods Banville Center needs. Just keep flying around picking up credits and the needed goods. However, a certain 'low class' element also roams the spaceways...pirates! When faced with pirates (you will hear the alarm, believe me) select Tactical. The least damaging (to you) method of dealing with the buccaneers of the spaceways is to wait for them to close in (your ship is moving...remember that) and try to Communicate. Refuse to deal with them, and Bluff. This usually doesn't work, so if not, select Cloaker from the menu, which will make you effectively invisible. When the pirates reach the center of the screen, they will warp off, and shut off the Cloaker as fast as possible...its a real gas guzzler. The pirates will leave you alone if your cargo hold is empty, or carrying cryogens. If you are the more agressive type, and hate to see these pirates walk all over you, then you'll want to pick up on Woremed a Concentrator and an Autoslew. Put the Concentrator in your gun panel, and the Autoslew in the tactical panel. However, pirates don't work alone as a rule, but you do...they have the advantage on number, so don't push your luck. If you feel like a fight once in a while, then go ahead, but don't make it a habit (unless you happen to be Buck Rogers, Luke Skywalker, or Han Solo). List of Cities and Trade Goods: (*=Starport) SYSYTEM PLANET CITY TRADE GOODS Jondd Jondd Drahew* Antimatter Oddburg Art Objects Esposito Biochips Darvilton Cancams Dranning Chronographs Heavy Lightening* Clothing Ft.Ligon Comgear Ft.Savon Droids Lafser Tcana Ifwerl/Tennow* Exotic Metals Storel Fruits/Vegetables Glory GloryI Lagosal* Furs/Silks Abran Gems/Crystals Abundan Gold Paran Grains/Cereals Corian Handweapons GloryII Fielno* Meats Gennewa Nullgravs Jemba/Loth Organics GloryIII Dark* Pharmaceuticals Shoot Shoot Shoothan* Radioactives Knuth Rare Earths Temlonton Seeds/Sprouts Waslat Spices/Herbs New Shoot New Shoot N'Waslat* Silichips New Tenal Stock Embryos Wildera Stimulants N.Shooth Sunsuns Tranel Synthesizers Edrired Wood/Fibers Hell Sheol* KolManDaa Kala Man* Daa New Davya Chalne'ij Sosai D'helro N'ljones* J'behjon N'kander Woremed W'orrad Sheshco* Aylika Zadansa Alran Jadul Krakorus Malesti* Illdono Pelako D'esgid Ferr Ferr Ferring* Lonax Barnun Bantin Ferrwyck Industron* The Mines Snowball Icebox* Enlie Enliah Plepa* Tuie Hepah Hepah Arlenair* Velanie Essoit NOTE: The TRADE GOODS are a separate list...most everything can be found at every Exchange. And that's all...I'm not guaranteeing this, because I cannot type, and my notes on the game were very sloppy. This solution was compiled from a group of dudes who had it, so some parts might not be correct (I couldn't find an Autoslew anywhere). If you have any comments, questions, additions, just call: Alternate Reality BBS: (516)423-9803 or Bandit's Hideout BBS : (516)643-4963 and leave mail for me, HAVOK. That's all...have fun and good luck! Well, I can't see any reason why a non-lamer would need these, but since there's so many pathetic turds out there who can't do anything but change other people's programs, here's a list of ASCII characters for you. Just make sure you use it to alter your own work, and DON'T TOUCH ANY Sewer Doc Disks with your trusty sector editor !! SECED CODES FOR CHANGING NUMBERS & LETTERS A = 65 a = 97 0 = 48 B = 66 b = 98 1 = 49 C = 67 c = 99 2 = 50 D = 68 d = 101 3 = 51 E = 69 e = 102 4 = 52 F = 70 f = 103 5 = 53 G = 71 g = 104 6 = 54 H = 72 h = 105 7 = 55 I = 73 i = 106 8 = 56 J = 74 j = 107 9 = 57 K = 75 k = 108 L = 76 l = 109 M = 77 m = 110 N = 78 n = 111 O = 79 o = 112 P = 80 p = 113 Q = 81 q = 114 R = 82 r = 115 S = 83 s = 116 T = 84 t = 117 U = 85 u = 118 V = 86 v = 119 W = 87 w = 120 X = 88 x = 121 Y = 89 y = 122 Z = 90 z = 123 SECED CODES FOR CHANGING NUMBERS & LETTERS A = 65 B = 66 C = 67 D = 68 E = 69 F = 70 G = 71 H = 72 I = 73 J = 74 K = 75 L = 76 M = 77 N = 78 O = 79 P = 80 Q = 81 R = 82 S = 83 T = 84 U = 85 V = 86 W = 87 X = 88 Y = 89 Z = 90 0 = 48 1 = 49 2 = 50 3 = 51 4 = 52 5 = 53 6 = 54 7 = 55 8 = 56 9 = 57Sewer Software presents.... SPACE CONQUEST: A Galactic Odyssey ****LOADING INSTRUCTIONS**** Insert the "SPACE CONQUEST Disk A" in drive A: and turn on the machine. Double-click on the file titled LOAD_ME.PRG. SPACE CONQUEST may be run from a hard drive. Copy the disks directly to a partition of the hard drive. Load the file LOAD_ME.PRG. Be sure the monitor is in LOW resolution. ****INTRODUCTION**** You have just been given command of the Enola Gay II, a vessel designed for colonization by the Association of Solar Systems. Your orders are to colonize a section of the galaxy consisting of nine solar systems. Simple enough..... too simple. In the early hours of May 24th, 2112, at exactly 03:23:00 AM, you receive a message from your commanding officer, Admiral Omega. It seems a vessel identified as the Mancer, commanded by Admiral Necro, has entered this section of the galaxy with the intent to colonize the very planets that YOU were ordered to colonize. The Association sees this action by Mancer as a threat. You are given following priorities: 1. Colonize a majority of the planets in each solar systems. 2. Seek out and destroy the Mancer. You are to carry out your duties in that order. Colonize first, destroy later. The Mancer is far too powerful of a ship to be taken by your colonization craft. You will need the support of the solar systems in order to assure the security of the area. If these planets fall into an empire created by Admiral Necro, then be will be powerful enough to overthrow the Association of Solar Systems. When you have colonized the majority of solar systems in the area, the Association will feel confident enough to send out enough fighters to destroy the Mancer. Until then, the Association can not be sure that the people of this galaxy are not supporters of Necro. The Association can not risk sending fighters to their possible destruction. ****GETTING STARTED**** You will first see the introduction. Press any key to bypass the introduction. After a period of time, the main program will be loaded and you will be prompted to insert Disk B of SPACE CONQUEST. Do so and hit return. (Hard drive users will bypass this prompt). Next, you will be asked to choose a level. NOVICE is the easiest level, as the Mancer will colonize rather slowly in the Novice level. The Mancer colonize at a moderate speed in the ADVANCED level. In the EXPERT level, the Mancer colonizes planets at the highest rate of speed. You will next be required to identify yourself to the Ship's Computers. The Computers will then do a Retina Scan to verify the identification. Afterwards you should set your warp for the solar system you wish to begin colonization. ****PLAYING THE GAME**** Once you have entered a solar system, you should move around the System Map. Do this by placing the mouse pinter on one of the square adjoining your ship and pressing the left button. Continue doing this until the ship reaches its destination. When you have stablished orbit (by moving your ship on top of the desired planet), you should Communicate with the planet, Scan the planet, Board your shuttle with a crew, and Launch the shuttle to the planet in order to colonize it. Once you have colonized a majority of the planets in that solar system, you should set warp for another solar system and proceed to colonize that system. Sound simple enough, but there are several obstacles that will get in the way. For one, there are hundreds of fighter pilots that Admiral Necro has sent out to destroy anyone who oppose him. Then there is the fact that you command a small ship that can only carry a small crew, so you will need to restock your crew at the STARBASE or from the planets that you colonize. After fighting the enemies and hopping about the solar systems, your supplies tend to run low. Your Fuel, along with your Missiles and Beam Energy, will need to be restocked at the STARBASE. Then there is the Mancer itself. Should you even dare to occupy the same co-ordinates with this monster of a space craft, you will feel the wrath of Admiral Necro. ****THE SHIP - ENOLA GAY II**** At the top of the ship you will see the Date Counter. On the left side of the screen are four buttons: [COMM]UNICATE, [SCAN], [BAY], AND [DRIV]ES. On the right side of the screen are the other four buttons: [DEFL]ECTORS, [MISS]ILES, [STAT]US, AND [DIST]RESS. In the middle of the screen is the viewing are where an array of different things will happen. At the bottom of the screen is the Message area where important information will be conveyed to you. ****SHIP'S FUNCTIONS**** [COMM]UNICATE - This function allows you to Communicate with the planet that you are orbiting, or with the STARBASE. If you choose to Communicate with the STARBASE, they will send you an update on how many planets and solar systems you have colonized and how many plantes and solar systems the Mancer has colonized. If you Communicate with the planet, several things may happen. If the planet has the technology to Communicate with you, then it will. If not, there will be no response. The people of the planet may be willing to help or they may be hostile towards you. Act accordingly. [SCAN] - This function allows you to Scan your ship's Damage, the Universal and Galatic maps, or the Planet you are orbiting. If you decide to Scan your ship's damage, a blueprint of the ship will appear on the screen. The damaged areas, if any, will be highlighed in red. If your shields are on, a purple outline will appear around the ship. If you Scan the Galactic Map, then grid maps of solar systems will appear on the screen. You may choose a solar system and view the planets within. If you choose to Scan the planet, several bits of information will appear on the screen: the precentage of land, the thickness of atmosphere, the density of the gravity, the level of technology, the name of the galaxy that the planet is located in, the name of the planet and how many moons orbit it. This information will be used for colonization purposes, and helps you figure out the crew requirements to successfully colonize that planet. ( See " THE SHIP'S CREW" for more details). [BAY] - This function will take you to the shuttle bay of the ship. Here you can Board the shuttle with the crew, or Launch the shuttle to the planet in an attempt to colonize it. [DRIV]ES - This function allows you to access your ship's drives. You may Set your warp or Engage the warp drive engines. By choosing the Set Warp option, you will be able to select the next solar system you wish to enter, or select the STARBASE in order to resupply or repair your ship. The Engage option will, if you have set your destination, warp you into the selected solar system. [DEFL]ECTORS - This function will enable you to activate or deactivate your deflectors or shields. The deflectors will absorb a lot of the damage that the enemy may inflict upon your ship. The deflectors, however, require a lot of fuel to operate. [MISS]ILES - This is a combat function only. With this option, you will lock your missiles on the target and fire the missiles. The missiles are your most powerful artillery. The missile will destroy any of the fighter pilots that Admiral Necro has sent after you. There are only four missiles, however, so use them conservatively. [STAT]US - This fuction will give a complete status of the Enola Gay II. On the screen will be listed the following items: 1. How much beam energy is left. 2. How many missiles are left. 3. How much fuel is in tanks one and two. 4. How many marines, colonists, and linguists are in the crew's quarters. 5. How much damage has been done to the ship. 6. How many planets and galaxies you have colonized. [DIST]RESS - This is "Last Resort" button. This function will give you the options of surrendering to Admiral Necro, or activating, the self-destruct procedure of the ship. Either one will end your career with the Association of Solar Sytems. You can abort the self-destruct procedure by clicking on ABORT or pressing the letter [A]. ****THE SHIP'S CREW**** There are four types of people on board the Enola Gay II aside from the ship's captain. These four types are as follows: MARINES - These are necessary for colonizing planets when the technology on the planet reaches a certain level. When the TECHNOLOGY level is: 1-4, no marines are needed. 5-6, one marine is required. 7-8, two marines are necessary. 9-10, three marines are needed. The higher the technology, the more advanced the people are with their weapons, and so more marines are needed to protect against uprisings. COLONISTS - These are the people that will actually establish an Association colony on the planet. The more land there is, the more colonists are needed. If the LAND is: 1-25% , one colonist is needed 26-50% , two colonists are needed. 51-75% , three colonists are needed 76-100%, then four colonist are needed. SCIENTISTS - These are usually required for every planet. A scientist and his equipment is needed if the atmosphere is too thick or too thin. If the ATMOSPHERE is: 1-2 or 9-10, then a scientist is needed, If the GRAVITY is less that 3.8m/s or greater than 14.8m/s, then a Scientist and his equipment are required to colonize the planet. LINGUISTS - This linguists are seldom used. If you should communicate with a planet and your linguist needs to translate the message, then you must also send one with the rest of the crew so that the colony may communicate with the native of the planet. ****COMBAT**** Combat may occur in three different situations: The first would be a chance encounter with one of Admiral Necro's fighter pilots; the second situation would be while you are in orbit around a planet colonized by Admiral Necro, and the final situation would be with the Mancer itself, but that would be a most unwelcomed encounter. You have two types of weapons available to you. There are the Missiles which are operated through the [MISS] button, and there are the Beams which are activated by simply positioning the crosshairs on the screen where you wish to fire, and clicking the mouse button. The Missiles are much more deadly that the Beams, but the Beams are in greater supply. ****SHIP'S DAMAGE**** When your ship receives damage, then something will become inoperative. Some things may still work, but only half as well. Here is a list of what each section of the ship controls: 1. Impulse Engines - There are two separate impulse engines. If one is destroyed, the other will still move the ship. If both are destroyed, then the ship can not move within the solar system until they are fixed. 2. Warp Drives - If the Warp drives are destroyed, you will not be able to Engage your Warp, so interstellar travel will be disabled until the drives are repaired. 3. Crew's Quarters - This is where the crew lives, and also where the shuttle bay is located. If this is damaged, then some of the crew will be killed, and the shuttle will be in operative. 4. Laser Cannons - These are where your Beams are fired from. If one is destroyed, the other will still function, then you will not be able to use Beams during combat. 5. Missile Launchers - These are where your Missiles are launched from. If one is destroyed, then the other Missile will still be fired. If both are damaged, then you will be without Missile until they are repaired. 6. Central Computers - The central computers control most of what you see on the screen. They control the Scan, Communication, Status, and several other options. If they are damaged, you are in bad shape until they're repaired. 7. Pilot - This is more or less the cockpit of the Enola Gay II. If this is damaged, then no functions of the ship will work. Not because everything is damaged, but because no information will be carried from the cockpit to the rest of the ship. (NOTE: When something is damaged, it will be repaired in time by the ship's own repiar crew; but when systems are severely damaged, they require a long time to repair. ****STARBASE**** The Starbase is where you begin your mission of colonizing the planets, but you may also return to the Starbase as often as you like. The Starbase provides several services for your ship: First, you may restock your ship. This consists of refueling, restocking the missiles, and recharging the beam energy. Secondly, you will receive a full crew. This will replace your Marines, Colonists, Scientists, and Linquists so that you have at least 15 of each when you depart. Finally, the Starbase will repair any and all damage that the Enola Gay II has suffered during your mission. All these benefits have one drawback: they take time. The Mancer will be busy colonizing planets while you are resting at the Starbase Inn. ****PLANET INHABITANTS**** There are four major races that you will encouter on your conquest to colonize the solar systems. There are the BELLUVIANS, the TENTAGENS, the EMULTIONS, and the ALIANTS. BELLUVIANS usually welcome the Association colonization, although some may be against the idea. These purple-skinned creatures are generally peaceful in nature and want to resist the evil empire of the Mancer. TENTAGENS are a harmless and peaceful species found mostly in the Cygnus and Xanadu systems. They are against the Mancer empire, but don't have the knowledge of war to protect themselves. The Tentagens have requested Association colonization for their own protection. EMULTIONS are usually split on the Association's colonization. While some welcome the idea, others oppose it. They are generally reasonable, and very diplomatic about negotiations. These green creatures pose no threat to the Association and are considered friends. ALIANTS are a barbaric race that thrive on hate and war. Thet are very unreasonable in their thinking and are thought to be allies with the Mancer empire. These ant-like creatures should be dealt with very carefully for the sake of peace. A two-front war is not a welcomed idea by the Association. ANDROIDS are the robotic henchmen of Admiral Necro. Thet fly his hordes of fighter crafts and they patrol his conquered planets. These androids have been programmed to resist any opposition to the Mancer empire. ****SOLAR SYSTEMS**** There are nine solar systems in this section of the galaxy. Therefore, you must colonize five of those in order to have a majority of the solar system in your favor. Each solar system contains nine planets. Therefore, you must colonize five of these planets in order to have a majority of the planets in the solar system in your favor. There are also asteroid fields in each solar system. These will do tremendous damage to your ship if you stay within one for any length of time. Here is an advance scouting report telling you what is known about the solar systems you will encounter: ZETA - The planets in this sytem are predominantly inhabited by Belluvians. This system is most known for their neutral policies concerning other organizations in war. Overall this is a peaceful system. CYGNUS - The planets in this solar system are inhabited mostly be Tentagens. This is a weak system, and is a prime candidate for conquest by any organization since the Tentagens are harmless in nature. ALPHA - The Alpha system is inhabited mostly be Emultions. This system has no distinct feelings towards colonization by Association. The Emultions are divided in their opinions. LUTHORS - A solar system inhabited mostly by Aliants. The hard feelings between the Association and the Aliants is constantly building. The tense situations may evolve into war against the Association in the future. Colonize with caution. OMEGA - Another system that is inhabited mostly by Belluvians. This sytem is much like the Zeta system. The Belluvians in this system however have mixed feelings. Although most welcome the Association, some may be against the idea of colonization. XANADU - Inhabited mostly be Tentagens. Again, since these creatures are peaceful in nature, the system should be easy enough to colonize. Remember though, Admiral Necro knows this too. RENAISE - Predominantly inhabited by the Aliats. Keepong the tenseness between the Aliants and the Association in mind, it may be wise to leave the Aliant planets in peace to avoid future revolutions. ORION - The last solar system in this section of the galaxy. It is also inhabited by the Belluvians, so it should be looked at for colonization purposed. Be sure to communicate with the planets to determine their attitudes towards colonization. ****THE BLACK HOLES**** The silent, but deadly, menaces in the universe are the Black Holes. There is only one Black Hole in this section of the galaxy and your Central Computers know how to steer around it. If your Computers or your Warp Drive are damaged though, you may run right into it and that spells the end for you and your crew. Warping from one solar system to the next is a very complex process, though for you it happens very quickly. There are literally millions of calculations involved before the warp takes place. If one of these calculations is off by as little as .00001%, you could end up a trillion miles from nowhere. If one of these malfunctions should send you into a Black Hole, then you've just made your last entry in the Captain's Log. ****ATTACKING THE MANCER**** After you have successfully colonized all the required planets, you will receive a message saying, that the Association's fighter pilots are being sent to your coordinates. You will then lead them to the location of the Mancer, the full-scale battle will be on. The hordes of Association fighter pilots, Necro's fighter pilots, the Mancer itself and Enola Gay II will engage in a huge battle. Should you win, then the threat of Admiral Necro will be erased from these worlds, if you lose, and the Mancer survives the conflict, then the Mancer squadrons will retreat and swear to return, as all bullies do when they're licked. With the support of the solar systems, however, Admiral Necro will not be able to return to this area of the galaxy. ****KEY COMMANDS**** [B] - SHUTTTLE BAY [C] - COMMUNICATION [D] - DRIVES [F] - FORCE SHIELDS [M] - MISSILES [Q] - DISTRESS [R] - REPORT/STATUS [S] - SCAN [UNDO] - RESTART All commands may be choosen with the keyboard or by the mouse. Only the use of Beams during combat requires the mouse. ****ENOLA GAY II SHIP SPECIFICATION**** (OMITTED AS NOT NEEDED TO COMPLETE THE GAME) ENJOY ........................... TYPE BY, Shaihulud & ST/AMIGOS Sewer Software proudly presents another CHUCKLES doc of voluminous proportions...our thanks to Chuckles and the many other contributors who have made the SEWER DOC DISKS possible. Without them, you wouldn't be reading this! THE ST ADVENTURE CREATOR USER MANUAL by CHUCKLES CHAPTER ONE Introduction Page 1 CHAPTER TWO Writing Adventures Page 3 CHAPTER THREE Use of Conditions Page 8 CHAPTER FOUR Graphics Page 27 CHAPTER FIVE Music in messages Page 32 CHAPTER SIX Our small adventure Page 34 CHAPTER SEVEN Disk and printer menus Page 42 CHAPTER EIGHT The font editor Page 45 CHAPTER NINE Special conditions and commands Page 48 APPENDIX A Keys and control characters Page 52 APPENDIX B Glossary Page 54 APPENDIX C Contents of QSTART file Page 58 APPENDIX D Character key sequences Page 62 APPENDIX E ConditilBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBC(((x8BBBBBBBBBBBBBBBBBBBBBCPPP'<<̐|~~~~~~~~~| p$~~~~~~~~~~~~~~~~~~~~~~~~~~| 5 then ( do something ) wait will do the ( do something ) if and only if the weight of object one is greater than 5. There are several of these types of tests. Using any two numbers ( which I shall call a and b since they could be anything ), there are the following tests: a > b will work if number a is greater than number b a < b will work if number a is less than number b a = b will work if number a is equal to number b 11 a >= b will work if a is greater than or equal to b a <= b will work if a is less than b or equal to b and a <> b will work if a is not equal to b So the following tests will work ( they are true ) 3 > 1 4 < 7 3 = 3 4 >= 4 5 < 9 3 <> 4 but these will not 1 > 3 6 < 4 3 = 9 4 >= 7 3 > 9 3 <> 3 Many of the words used by STAC return numbers, and these numbers can be manipulated further using simple arithmetic. Although this is not used too often, it can provide some quite useful "short cuts" in some situations. You can use + ( add ), - ( subtract ), * ( multiply ) and / ( divide ). To illustrate, here are the results of several simple calculations: 4 + 3 =7 4 * 3 =12 4 - 3 =2 4 / 2 =2 In a more complicated calculation, the *'s and /'s are always worked out first, before the +'s and -'s so: 5 * 3 + 9 =24 | 15 + 9 | 24 To alter this, use brackets - anything in brackets will be worked out first. Note also that words that require numbers ( like weight ) have preferences even over multiplication. weight 3 * 5 will return five times the weight of object 3, not the weight of object 15. Again, brackets would overrule this order of preference. The final three words to do with objects are not used very often. cntobj counts the objects in a particular room, firstob gives you the number of the first object found in a particular room, and whereis gives the room number where the object is. MESSAGES So far, we have met quite a few words, but not many print things on to the screen. The few that do ( list for example ) give a rather bare response. If you were carrying a lamp and some gold, the inventory condition above would print a lamp, some gold 12 When you ask for an inventory. Messages can be used to liven it up and make it a bit more friendly. Would it not be better if we could make that into You are carrying a lamp, some gold Well, we can using the messages. Messages are entered like room descriptions and objects, and are called by their numbers. So, if we entered message 1 as "You are carrying ", then we could add to the condition like this: if verb "inventory" then message 1 list with When you type "inventory", the condition first prints message number 1 ( "You are carrying " ), then lists the objects you have with you. Note that some of the messages are used by the STAC, but you can change the wording if you wish, as long as you don't change the meaning significantly. If you want your message to appear on a new line, then use the word if first. This stands for linefeed, and will move the printing position on to a new line, scrolling the screen up if necessary. You can also print out numbers, using print. If you want to weigh an object, for instance, you could use if verb "weigh" and noun "lamp" then print weight 1 wait which will print the weight of object 1 ( the lamp ) when you type "weigh lamp". ROOMS Since you can move about in the rooms of the adventure, some words to do with this might come in handy. The first of these is look, which will print a description of the room you are in, along with a list of any objects that are here, and a picture if there is one. This one is very useful if you have been in a room a long time, and wish to see the description of the room once more. To move between rooms, use goto, which takes you to a specified room. This can be used for ma99999999999999999999999999999998d$ p9999999999999999999998 1{C )++qKq {{ihS c{s9Kk)a s!KAy+)C)#+KK{q{1C){{i{s)hSk{)phPhQyk{)+++q{{ka);{yaCKA [+{y +K3K+!hS{{iqCK q)+!3{he short description if you have, or the long description if not. moveto is exactly the same, except it does not print the room description. The goto is also very useful for movements which cannot be included in the connection table. Connections take place no 13 matter what, but if you require something to be done before you can go somewhere, then use a condition. As an example, say you are in room 1, and there is an opening to the east. However, you need the lamp to pass through the opening. So, you must type "east", and be carrying object 1 ( the lamp ) to go east to room two... if verb "east" and carried 1 then goto 2 wait You can describe other rooms at a distance using descing, which prints the long description, and descsht, which prints the short one. This could be useful for, say, a magic crystal ball which allows you to look through it at another, distant, room. For looking through doorways, you will need to know which room is connected in which direction. This is accomplished using connect. It gives you the number of the room lying in a direction described by a verb... a bit confusing to say, easier to show. Again, one of my myriad examples should help. If you are in room two, and room three is in the connections to the north, then connect "north" will give you the result 3 since room 3 is to the north of your current location. This will only work with those doorways that are entered in the connections for that room, not those that have to be dealt with otherwise. To find out which room you are in, use room. So, to list all the objects in this room, use list room. To draw a picture, use draw. In conjunction with this, pictof gives you the number of the picture associated with a particular room. So if room 2 has picture 17 associated with it, pictof 2 will give the result 17. The construction draw pictof room will draw the picture associated with where you are. Pictures can be turned off using text, and turned back on again using pict. The text beneath the pictures can be in either low resolution ( 40 characters across ) or medium resolution ( 80 characters across ). To switch between these use the word split. The adventure will always start up in low resolution since those of you who have TV sets rather than monitors will probably find 80 character text rather small and difficult to make out. Note that this word will also clear all the text, but will not affect the picture. To change colours on the screen, there are two words colour and topcol. Both work in the same way, but colour changes the colours in the text region of the screen, below the picture, and topcol changes those in the top part of the screen, that is the picture itself. As an example, 0 colour 666 will change the background colour of the bottom part of the screen to grey. The first number ( 0 ) is the number of the colour you want to change - 0 is the background - and the second number represents the amount of red, green, and blue you want in the colour. This may range from 000 ( black ) to 777 ( bright white ). If you are unsure about the exact colour that will result, go to the graphics screen ( see next chapter ) and use the colour sliders to get the shade you want. Then just read off 14 their positions in order and voila - your colour ! As another example, q99999999999999999999999999999998hO9999999999999999999998 31hPhPhQhWhPhSC+K{KK{sKq{#+ s!{Kc i{{c{   s{C+hS+ kc)a+! 3-26 Find Same [Control][F] 3-27 Replace [Control][U] 3-27 Replace Same [Control][R] 3-30 Show Clipboard [Control][K] 3-30 The Format Menu 3-31 Draw Ruler [Control][=] 3-31 Draw Boundary [Control][ [ ] 3-31 Snap to Grid [Control][.] 3-32 Align Vertical 3-32 Align Horizontal 3-33 Space Vertical 3-34 Copying the Spacing Between Two Regions to Selected Regions 3-34 Evenly Spacing Regions Between Two Reference Regions 3-36 Space Horizontal 3-37 Copying the Spacing Between Two Regions to Selected Regions 3-38 Evenly Spacing Regions Between Two Reference Regions 3-38 Setup Pen [Control][J] 3-39 Pen Thickness 3-39 Pen Type 3-40 Frame [Control][M] 3-40 Frame Shape 3-41 Frame Thickness 3-41 Header/Footer [Control][H] 3-41 Even Pages 3-43 Odd Pages 3-43 Add Page Number 3-43 Remove Header 3-43 Float Region/Unfloat Region [Control][B] 3-44 Creating a Floating Write Region 3-45 Creating a Floating Calc Region 3-46 Unfloating a Floating Region 3-46 Setup Region [Control][I] 3-47 Setting Up The Background Write or a Write Region 3-47 Title 3-48 Alignment 3-49 Line Spacing 3-49 Setting Up a Calc Region 3-49 Title 3-50 Format 3-51 Symbol 3-51 Align 3-52 Decimal Places 3-52 Formula 3-52 Linking Calc Cells 3-53 Paste Formula 3-54 Function Parameters 3-55 AVG (list of numbers) 3-55 EXP (number) 3-55 FV (payment, interest rate, number of payments) 3-55 IF (expression, value 1, value 2) 3-56 LN (number) 3-56 NPV ((rate, list of transactions)-initial investment) 3-56 PMT (principal, rate, number of payments) 3-57 PV (payment, rate, number of payments) 3-58 RND (number, number of digits) 3-58 SDV (list of numbers) 3-59 SQR (number) 3-59 SQRT (number) 3-59 Setting Up a Graph Region 3-59 Title 3-60 Type 3-61 V-Axis 3-62 H-Axis 3-62 Data Set 3-62 Linking Calc Regions to a Graph 3-62 Labels 3-63 Graph Regions with Imported Graphics 3-64 The Record Menu 3-64 New File [Alternate][F] 3-66 Open File [Alternate][O] 3-68 Close File [Alternate][W] 3-69 Save Selections 3-69 New Record [Alternate][R] 3-70 Change Record [Alternate][C] 3-73 Delete Record [Alternate][E] 3-75 Select Record [Alternate][S] 3-76 Sort [Alternate][T] 3-79 File Info [Alternate][I] 3-80 The Font Menu 3-82 Specifying a Font for a Region 3-83 Specifying a Font for Selected Text 3-83 The Style Menu 3-84 Plain,Bold,Italics,Underline,Outline, Superscript,Subscript 3-84 Specifying a Style for a Region 3-84 Specifying a Style for Selected Text 3-85 10, 12, 18, 24... Point 3-85 Specifying a Point Size for a Region 3-85 Specifying a Point Size for Selected Text 3-86 The Page Menu 3-86 Next Page [Shift][right arrow] 3-87 Back Page [Shift][left arrow] 3-87 First Page [Shift][up arrow] 3-87 Final Page [Shift][down arrow] 3-87 Page Break [Alternate][B] 3-87 Insert Page 3-88 Cut Page 3-89 Paste Page 3-91 Units [Alternate][U] use. They are, from left to right, airbrush, paintbrush, line draw, rectangle, circle, ellipse, fill area, filled rectangle, filled circle, filled ellipse, merge picture, import picture, resize window, undo, clear screen, and drop back to main menu. Again, selection of these is by positioning the mouse pointer over one of them and pressing the left hand mouse button. The third and fourth rows represent the different "brushes" you can use. Selection of these is again the same. The brush affects everything you do with the airbrush and paintbrush, and also line draw, rectangle, circle, and ellipse. Here is a brief guide to each of the functions: Airbrush acts like a spray can. Position the mouse pointer and press the left mouse button to spray colour on to the screen. Paintbrush acts like a paintbrush. Again, pressing the mouse button allows the brush to work. Try using different brushes and colours with this and the airbrush to see what different effects you can get. Try moving at different speeds. Line draw introduces a concept called "rubber banding", which describes the way that the line can be seen before it is placed on the screen permanently. Move the mouse pointer to the start of the line, and press and hold the left mouse button. Whilst holding it down, move the mouse to the end of the required line. The line can be seen, acting like a stretched rubber band, allowing you to position it exactly. Release the mouse button, and the line will be drawn permanently. 27 This page intentionally left blank due to the fact that it containes a drawing of the picture screen which I cannot reproduce in a text file. 28 Rectangle uses the same technique. Move the mouse to one corner, hold the left button down, and move to the diagonally opposite corner, and release. Circle and ellipse require you to start with the mouse at the centre, then drag the outline of the figure. Don't worry if the rubber band figure seems incomplete - it is merely a guideline. The real thing will be perfect (!) . By now you have probably got a messy screen, so we will skip ahead to the clear screen option ( the icon is meant to look like an eraser, and is the second from the right hand end ). To use this, position the mouse over it and click the left hand mouse button, then move the mouse into the drawing area and click it again. The window will clear, and you will be returned to whatever tool you were using before. The next function is area fill ( the paint can icon ). Using lines, or the paintbrush, draw an enclosed area. Any shape will do. Then select the fill icon, and click the left hand mouse button inside the closed area. The area will then fill up with colour. Be sure to not leave even the tiniest gap, otherwise the colour will leak out. Clicking on the UNDO icon will solve that, cancelling the last thing you did. Filled rectangles, circles, and ellipses are managed in the same way as normal ones, but their outline is not affected by the brush being used, and, of course, they are filled in with solid colour. Merge picture requires that you have another previous picture to merge with this one, so to preserve your current masterpiece, click on the picture number you typed in at the start. After a couple of seconds, which is STAC compressing your picture to save memory, it will be replaced by a cursor and you should then type a different number. The screen will clear, and you will be able to draw another picture. We are now ready to merge pictures. Click on the icon ( two overlapping boxes ), and you will be asked to enter a picture number to be merged, on the right in the usual place. Type in the number of your first picture. It will be loaded onto the screen, overlapping your current picture. This is useful for adding subtle detail to a sequence of largely similar screens. Import picture allows you to cut a rectangular piece from an uncompressed NEOCHROME or DEGAS slide which has been saved to disk previously. Click on the disk icon, and you will be asked "Neo or Degas ?". Press D for Degas, or N for Neochrome. A file selector box will then appear, from which you can make your slide selection. Click on OK to load the slide, or NO to cancel the function. If you selected OK, the slide will be loaded in, and the colours set up. You can then draw a rectangle around any part of the screen, which will be cut out and used as your picture. Draw the rectangle as if you were using the rectangle function. 29 Resize allows you to change the size of the window which you wish to use for drawing in. Note that it also clears the picture - you cannot get it back. Click on the resize icon ( rectangle with arrows ), and draw a rectangle in the usual way on the upper part of the screen. It will then be centered, and you can use it for drawing in. Undo allows you to undo the last thing that you did, and only that one last thing. The final icon drops you back to the main menu. By this time, you will probably have noticed that there is a small window towards the right of the screen, in which appears coloured squares. This is a magnify window, and with it you can see the area around your mouse position with pixel accuracy. It can be used to pinpoint the position of your mouse for sensitive things, like joining lines together, or small area fills. Underneath this, at the bottom of the screen, is a small horizontal line. Clicking on this with the left mouse button will change the selected line style. There are 16 different styles, so clicking 16 times will bring you back to the start pattern again. The line style affects lines, of course, but also the paintbrush and the draw rectangle options. There are many useful effects which can be achieved using a combination of brushes and linestyles. At the extreme right are three boxes which slide up and down a scale marked 0 to 7. These represent the amount of red, green and blue that go to make up the currently selected colour. You can move them by clicking the mouse at the position you want them to move to. The colour "palette" that you set up will be remembered when you leave the picture. This is an almost indispensable feature - the default palette of colours is useful for only a very few pictures. You can get quite subtle shade variations using this feature, since there are 512 colours available. When they are printed on the screen during an adventure, the pictures can either sit snug against the top of the screen, or space can be left at the top for an extra line of text. This space at the top of the screen is set up in pixels from the Begin where? option on the Main Menu. They are not surrounded by the frame shown on the drawing screen - you can draw your own if one is needed. The pictures are stored in a compressed format, to save on memory. If a picture cannot be compressed ( as is the case for some digitized pictures, and for highly detailed or random pictures ), then it is stored as a complete section of screen. This is why you may notice that some pictures are loaded more quickly than others. A full sized, uncompressed screen will take about 18000 bytes of memory. Compression will take this figure down by a significant factor, as will reducing the size of the window. You may have up to 9999 pictures, memory permitting, but in practice this will not be possible. The number of pictures you can fit in varies according to the amount of detail you include. 30 The simpler the pictures, the less memory they take up. In the worst case, 16 full size very detailed pictures will fill 300000 bytes of available memory. One thing it is worth remembering is that a picture is not necessarily worth a thousand words. Many of the best adventures ever produced were purely textual ( ie no pictures ! ). It is better to have a sparsely illustrated adventure that has many locations and is fun to play than one that has a lot of brilliant pictures but which is unplayable. Many adventurers maintain that pictures are a waste of time, effort, and memory. I disagree. There is plenty of scope for including pictures in adventures, but as I have said, don't neglect the adventure to produce the pictures. 31 CHAPTER FIVE MUSIC IN MESSAGES The music system used in STAC is quite basic in construction, but needs a separate chapter to explain - so here it is ! The tunes are entered in messages, and are played when the message is printed. They can even be mixed with normal text. But how does the STAC know what to play and what to print? Tunes are started by typing Cntrl-T ( T for tunes ). Now anything after this will be interpreted as music, until either the end of the message is reached, or a Cntrl-U character. The first thing to do, usually, is to set the volume and tempo of the tune. This is done using the v and t commands. Each of these is followed by a number, then a space ( remember the space on the end ! ). So, to set the volume to 15 ( loudest ), and the tempo to 5 ( 10 beats per second ), use v15 t5 Ok. So far so good, but what about playing notes ? Notes are represented by the letters abcdef and g, as in normal music. You have two octaves for use immediately - to get the upper octave use upper case ( ABCDEFG ). So, to play a scale of C, you might try v15 t5 cdefgABC Remember to include the Cntrl-T and Cntrl-U to show that this is a tune. ( You will have to actually print the message to hear the tune ). All the notes here are in the key of C. To sharpen a note, append "#". Here is a scale in the key of C#: v15 t5 c#d#ff#g#A#CC# To change the duration of the notes, add a number afterwards. Notes with no number afterward will sound for the amount of time dictated by the last number. Here is a scale with an odd rythm: v15 t5 c2 de1 f.g2A.BC4 Notice the use of "." as a rest here. The duration can be altered just as if it were another note. Two octaves is a bit restrictive. You can access the full range provided by the sound chip by using + and -. These transpose up and down one octave respectively. Here is an example of an extended scale in C: v15 t5 cdefgAB+cdefgAB+cdefgABC Repeats can be handled easily. The start of the repeat is marked by an r with the number of repeats. The end is marked by a colon ( : because it looks a bit like a repeat mark ). Hence to play a scale 4 times, use: v15 t5 r4 cdefgABC 32 Finally, chords can be played like ordinary notes. Just replace the note with curly brackets {} around the notes you want to play as a chord. Here is an example: v15 t5 cdefgAB{Cec} which is a scale with a chord at the end. You may have up to 3 notes in a chord. You can change durations in the same way as a normal note: v15 t5 cdefgAB{Cec}4 will carry the chord on for four "beats". The relation of tempo to "beats" per second is given here. Also, if we assume that 4 "beats" is a crotchet note, then the tempo in beats per minute is also given. Tempo "Beats"/sec Crotchets/min 1 50 750 2 25 375 3 16.7 250 4 12.5 187 5 10 150 6 8.3 125 7 7.1 107 8 6.2 94 9 5.6 83 10 5 75 11 4.5 68 12 4.2 62 13 3.8 58 14 3.6 53 15 3.3 50 Here are the names of the notes on the treble stave: x -----------------------------------------------------x---- x -------------------------------------------------x-------- x ---------------------------------------------x------------ x -----------------------------------------x---------------- x -------------------------------------x-------------------- x -x- x b c d e f g A B C D E F G Notice that the STAC does not wait for the tune to finish before going on to the next thing. If another tune is to be played before this one is finished, then the old tune is stopped, and the new one takes over. 33 _________________________________________________________________ CHAPTER SIX OUR SMALL ADVENTURE Having seen how to set out an adventure in chapter two, and how to use the conditions in chapter four, we will now attempt to get a complete adventure running. I am assuming that you have already typed in the room and object descriptions from chapter two. As a recap, here they are again. ROOM DESCRIPTIONS Room 1: Above Ground Connections: None You are standing outside a large cave entrance, which runs into the cliff face to the east. Room 2: Large Cave Connections: east 3 You are inside a large cave. A lit tunnel leads west, and two dim passages lead east and south. Room 3: Passage Connections: west 2 You are in an east-west passage. A snake is asleep in a corner at the eastern end. Room 4: Lakeside Park Connections: None You are in a small park by a lake, which surrounds you on all sides except the west, where there is a cave entrance. The lake looks cool to swim in. Room 5: Outside Castle Connections: None You are outside a giant castle built into a cliff. A cave entrance leads north and there is a door to the east. Room 6: Strong Room Connections: West 5 You are in the castle strong room. It has obviously not been used for some time, and the only way out is to the west. OBJECTS The five objects from chapter two were: No. Description Weight Start Room 1 a lamp 10 1 2 a dead rat 10 5 3 a key 1 4 4 a bar of gold 100 6 5 a lit lamp 10 0 MESSAGES The next thing to do is to enter the messages we will need to alert the user to what is happening. Press M from the main menu to get into the message editor. This is essentially similar to the editor used for the room descriptions, and the object descriptions. There will already be some messages in there, 34 numbered 9900 upwards. These are the ones that are used in most adventures, and were loaded along with everything else in the QSTART file. To insert a new message, press Insert, then alter the message number if necessary. You can now type in your message in the normal way. Here are the messages we will need ( don't type in the comments ): 1. It lights up. When the player lights the lamp. 2. It goes out. When the player extinguishes the lamp. 3. It tastes even better than it looks! If the player eats the rat. Think of everything! 4. The snake wakes up, comes over, and bites you. If the player tries to go past the snake without the rat. 5. The snake wakes up, comes over, and eats the rat. It then falls asleep again. When the player goes past the snake with the rat. 6. You hear shuffling footsteps nearby... After two moves in the dark. 7. An eight foot spider with glowing red eyes jumps from the shadows and neatly severs your head from your twitching body. After three moves in the dark. Gruesome stuff, eh ? 8. The door unlocks and swings open. When the player unlocks the door. 9. You bump your nose on the door. Ouch! If the player tries to walk through a closed door. 10. You got out with the gold! When the player succeeds. 11. The snake does not like being touched and bites your hand. The venom courses through your veins like liquid fire. If the player tries to pick up the snake. 12. You find nothing much. If the player tries to examine an unknown object. 13. I'm afraid I don't know what that is. If the player tries to examine something. 14. It is a large snake, which looks poisonous. If the player examines the snake. This covers all the situations that need a message during the game. VERBS and NOUNS _______________ In addition to those present in the QSTART file ( see appendix D ), we will need some verbs and nouns to cover specific actions in this adventure. The nouns are quite straightforward, and refer to the objects in the adventure. Also, the player will need to unlock the door, so "door" must be included. Notice that nouns which mean the same have the same number, and the nouns for the actual objects have the same number as the object they refer to... ie "rat" is noun 2, and object 2 is the rat. This is so we can use a short cut later on. Here are the extra verbs and nouns we need: 35 NOUNS VERBS 1 lamp 20 extinguish 1 torch 20 off 2 rat 21 feed 3 key 22 score 4 gold 23 eat 4 bar 23 devour 4 treasure 24 unlock 5 door 25 light 6 snake 25 on To enter these, press N or V from the main menu. You will be presented with a familiar list of items. To insert a new item, use Insert as usual, then type the number and word on the bottom line of the screen. As usual, the Space Bar will allow you to edit a word, and F1 will delete it. The words are inserted in alphabetical order, so you may not actually see your word go in. You can scroll, as usual, with the arrow keys. LOW PRIORITY CONDITIONS At this point we have all the raw data we need for the adventure, but nothing to say how the adventure will react to player commands. These are mostly handled by the low priority conditions. To enter these, press L from the main menu, which will give the familiar scrolling list. Insert will insert a new line of conditions before ( above ) the line you are currently on. All the lines after this will then be shuffled up one. For example, if the conditions are listed as: 1 print 1 2 print 2 3 and you are on line 1, then inserting a line "print 7777" will result in: 1 print 7777 2 print 1 3 print 2 4 You will be asked to type the conditions in a line at a time. Here they are: ( don't type in the comments ) Line Condition 1 if verb "score" then message 9902 print counter 0 message 9903 print turns message 9904 wait If you typed "score", then print score and number of turns taken. Score is held in counter 0. 2 if zero? noun1 and verb "get" then message 13 newcom If you typed "get" but no recognized noun, say "I don't know what that is" 36 3 if zero? noun1 and verb "drop" then message 13 newcom and the same for drop 4 if zero? noun1 and verb "examine" then message 12 newcom and again for examine 5 if verb "get" and noun "gold" then get 4 20 +count 0 ok give player 20 points for getting the gold 6 if verb "drop" and noun "gold" then drop 4 20 -count 0 ok and minus 20 points for dropping it again! 7 if ( noun1 < 5 ) and verb "get" then get noun1 ok this is the short cut I mentioned. If you typed "get", and the noun number was less than 5 ( ie 1,2,3 or 4 ) then get object 1,2,3 or 4. This only works if the nouns and objects have the same number. 8 if verb "drop" and noun "lamp" and carried 5 then drop 5 1 swap 5 message 14 20 -count 0 reset 2 wait if you typed "drop lamp", when you are carrying a lit lamp, then drop the lit lamp and make it go out, printing a message to that effect. 9 if ( noun1 < 5 ) and verb "drop" then drop noun1 ok the same short cut for drop 10 if verb "examine" and noun 1 and avail 5 then objlng 5 wait if you typed "examine lamp" and the lit lamp is available then describe that 11 if ( noun1 < 5 ) and verb "examine" then if avail noun1 then objlng noun1 wait useful thing, this short cut ! Here it is again for examining things 12 if verb "eat" and noun "rat" and carried 2 then drop 2 2 to 0 message 3 wait if you eat the rat, and it is being carried, then drop it, move it to room 0 ( ie destroy it ) and print the relevant message 13 if verb "light" and noun "lamp" and carried 1 then 1 swap 5 20 +count 0 message 1 set 2 wait if you typed "light lamp", and the unlit lamp is available, then swap it for the lit lamp, add 20 to your score, print a relevant message, set marker 2 to show you now have a source of light, and wait for a new command. 14 if verb "extinguish" and noun "lamp" and avail 5 then 5 swap 1 20 -count 0 message 2 reset 2 wait and vice versa for extinguishing the lamp. The rest of the low priority conditions are to be found in the QSTART file. HIGH PRIORITY CONDITIONS These take care of events the player cannot control, for the most part. They are accessed from the main menu by pressing H. Here are the ones we will need ( with comments as usual ): 37 N0. Condition 1 if set? 1 and reset? 2 then dec 1 if it is dark, ( marker 1 set ) and we have no source of light ( marker 2 reset ), then decrease the "turns- left-in-the-dark" counter. 2 if ( 1 =count 1 ) and set? 1 and reset? 2 then lf message 6 if you have only one turn left in the dark, then print the "scuffling footsteps" message to warn the player that something nasty is about to happen. 3 if ( 0 =count 1 ) then lf message 7 death if the player has no moves left in the dark, then kill him off! 4 if at 1 and carried 4 then lf message 10 20 +count 0 success if the player is in room 1 with the gold, then he has won! Give him another 20 points! Those are all the high priority conditions needed. The turns-in- the-dark counter is set up at the start of the game by special condition 17 ( the start of adventure condition that is executed only when you first enter the adventure ). This is available from the main menu under key S. Enter 17 for the condition number, and insert line one as follows: 1 3 setcntr 1 setstr 110 This gives you three moves in the dark before being eaten. Marker 1 is already reset, therefore it is not dark. Also, set the strength so you cannot carry everything! To get back to the main menu, press Esc, then enter a condition number 0 when asked. LOCAL CONDITIONS These are conditions specific to one place only, and are used for movement between rooms that cannot be handled by the connections, and also for interaction with scenery, such as unlocking the door to the strong room, and dealing with the snake. They are found on key C from the main menu ( key L was already taken up by the low priority conditions... ). Enter the number of the room in which the conditions apply, then you will be asked to enter the actual conditions in the usual way. Here they are: Room 1 1 if verb "east" then set 1 goto 2 wait if you typed "east" then set the dark marker, and move to room 2 Room 2 1 if verb "west" then reset 1 goto 1 wait if you typed "west", then reset the dark marker and go back to room 1. Most of the other local conditions are of this form - setting or resetting the dark marker then moving. 2 if verb "south" then reset 1 goto 5 wait 38 Here concludes part 1 of the STAC docs ... Now load part 2. death if you tried to get the snake, then print a message and kill the player off. 2 if verb "east" and set? 4 then reset 1 goto 4 wait marker 4 is set if the snake has already been fed and will let you past. If so, and you typed "east", then you will get outside again 3 if verb "east" then message 8 death if you typed "east", and the snake had not been fed ( if it had been, the last condition would be true and we would not have got this far ), then print a message and kill off the player. 4 if verb "feed" and noun "snake" and carried 2 then message 5 set 4 drop 2 2 to 0 20 +count 0 wait if you Here's part 2 of the extensive STAC docs .. Thanks again Chuckles Room 3 1 if verb "get" and noun "snake" then message 11 death if you tried to get the snake, then print a message and kill the player off. 2 if verb "east" and set? 4 then reset 1 goto 4 wait marker 4 is set if the snake has already been fed and will let you past. If so, and you typed "east", then you will get outside again 3 if verb "east" then message 8 death if you typed "east", and the snake had not been fed ( if it had been, the last condition would be true and we would not have got this far ), then print a message and kill off the player. 4 if verb "feed" and noun "snake" and carried 2 then message 5 set 4 drop 2 2 to 0 20 +count 0 wait if you typed "feed snake" then say the snake has eaten the rat, and set marker 4 to record that it has been fed. Then destroy the rat and give the player 20 points. 5 if verb "feed" and noun "snake" then message 8 death if you typed "feed snake" and you don't have the rat, then it will come over and bite YOU! 6 if verb "examine" and noun "snake" then message 14 wait if you examine the snake then print its description ( in message 14 ) and wait for a new command. Room 4 1 if verb "west" then set 1 goto 3 wait Room 5 1 if verb "north" then set 1 goto 2 wait 2 if verb "east" and reset? 3 then message 6 newcom if you try to go east, and the door ( mrkr 3 ) is closed, then print the appropriate message and wait for a new command line. 3 if verb "east" then goto 6 wait if the door is open, goto room 6 4 if verb "unlock" and noun "door" and carried 3 then message 8 set 3 20 +count 0 wait if you type "unlock door", and you have the key, then printing an appropriate message, mark the door as being unlocked, and give the player another 20 points. Room 6 No local conditions To get back to the main menu, press Esc twice. BEGIN WHERE? On the main menu there is an option Begin where ?, accessed by pressing the B key. This sets up where in the adventure you will start, space at top of screen, and keys to use for yes and no, and asks you to supply a name for a loading picture. If you do not wish to have a loading picture for your runnable adventure, just click on the No button on the file selector box when it appears. 39 SAVE THE ADVENTURE Now would be a good time to save the adventure. This is done from the disk menu ( press D from the main menu ). On the disk menu is the option Save adventure data. Press key S, and a file selector will come up, showing the files that are on the disk currently in your drive. Replace this with a disk which you don't mind cluttering up with adventure data ( preferably a blank, formatted disk ). To check what files are on the disk, click on the drive letter ( it will usually be A: ) on the right of the file selector box. To enter a name for your adventure data, click on the filename at the bottom of the selector, and type in the name of your adventure data. This can be up to eight letters long, and you should follow it by ".ADV" to show that it is an adventure file. Press Enter when you have a satisfactory name, then click on the OK box to start saving the data. The disk drive will whirr for a short while while the data is being saved. When it has finished, you can return to the main menu by pressing Esc as usual. PLAYING THE ADVENTURE You can test the adventure from within the STAC by pressing Enter from the main menu. You should then be able to play the adventure. If anything goes wrong, you can call up a help screen by pressing Help then Enter when the system asks "What now ?". This shows the state of all the markers and counters, as well as where all the objects are, and various other helpful information. You can scroll up and down using the arrow keys as usual, and return to the game using Esc. If anything really major goes wrong, then you will be given an error message, and a list of the line of conditions where the error occurred. You can force an error by pressing both Shift keys at the same time in case you get stuck in an infinitely repeating loop. This will return you to the main menu. Alternatively, pressing the Esc key when asked for a command will do the same. The errors are listed in Appendix E, with a brief explanation of what is likely to have caused them. Remember to test everything the user is likely to say - don't just test that the adventure is solvable. Attempt to be as stupid as possible. If a room description says: You are in a cave. Entrances lead north and east. Try going south and west too, and up, and try examining the elderberry bush that is not there, and so on. This can uncover many a mistake! If, however, everything went all right, you can save the adventure as a stand-alone program. This means that you can just start it up in the usual way from the desktop, and other people will be able to play it even if they do not own the STAC. Note 40 that this will require around 30K of extra space on the disk, since the part of STAC that is responsible for running the adventure must also be saved. If you wish to sell your adventures, that is fine - we ask for no licensing or royalty payments. However, the adventure should contain a credit along the lines of : Developed using the ST Adventure Creator by Sean Ellis for Incentive Software 1988 preferably on starting the adventure. To do this, go to the disk menu and press key R for Runnable adventure program. Then follow the same procedure as for saving an adventure data file, except give the file a ".PRG" extension rather than ".ADV". If you have one of the larger ST computers, with double sides disks and over 512K of memory, it is a good idea to remember that most people who will want to play your adventure will probably have single sided disk drives and 512K of memory, so format your disks single sided and try not to use more than about 290K for your adventure. This will ensure the widest possible market. 41 CHAPTER SEVEN THE DISK AND PRINTER MENUS So far, we have glossed over the printer and disk menus. This chapter explains what the options in each menu do. DISK MENU The disk menu contains the options: Encode and save link file Format a disk Load adventure data Merge data section Output data section Runnable adventure program Save adventure data X - erase a file ? Disk information as well as Esc to return to the main menu. We have already met Load, Save, and Runnable. Format sets up a completely blank disk so that you can save data on it, Output allows you to save a single section of data onto the disk, such as just the verbs, or just the pictures. Merge allows you to merge these saved sections back into your adventure. This is useful for building up, say, a library of pictures which can be merged in after an adventure is written and tested. The X option erases a file from the disk, and the Disk information option gives you an indication of how much space is free on a disk. The Encode option is used to create files to link to in multi- disk adventures. It would not be a good idea to let other people just load these link files into the STAC and look at them, so these files are encoded, using a sort of secret password known only to the program. Only if you know the password and how it is used can you get the original data back again. This is only an analogy; you will not be able to load these files by typing in a password, so I thought I would save everyone a lot of wasted time and energy looking for it! All of these use the file selector, which we have come across before, but not all of its features have been mentioned. At the top is the pathname, which indicates which area on the disk in which to search for files. The name at the bottom is the filename, the name of the file to search for. In the middle is the directory window, which shows a list of files that are on the disk in the area specified by the pathname. You can select one of these by clicking on it, or entering a new filename by clicking on the old filename at the bottom. On the left hand edge of the directory window are a close box, and four arrows, up, down, fast up and fast down. If there are more files on the disk than can fit in the window, you can scroll up and down by clicking on the arrows. 42 Sometimes you will find that a seemingly normal file will be displayed with a small mark alongside it. This is not a file, but a folder. It can contain more files and folders, and is used to organize the disk better. To open a folder and see what is inside, click on it. The close box closes it again. Note how the pathname at the top changes when using folders. You can alter the pathname if you like by clicking on it. There are several disk selector buttons on the right hand side of the file selector. These will only be of any use if you have more than one disk drive, as they allow you to switch between drives quickly and easily. Clicking on the disk selector button for the disk you are already on will update the directory - if you have just changed disks you should do this to see what is on the new disk. Finally, there are the OK and NO buttons. Clicking on OK will confirm that you want to continue with what you are doing, and clicking on NO will abandon it. Thus if you select the Delete file option by accident, click on NO and nothing will happen. A short cut for selecting a file and then clicking on OK is to double-click on the file you want in the window. Also, the OK button can be activated by pressing Enter or Return, and the NO button by pressing Esc. If you try to load a file which is obviously wrong - like selecting a file called TIMES.FNT ( a font file ) when asked to provide a name for an adventure file - the STAC will realize that the file is the wrong type, and a box will appear in the middle of the screen saying Invalid file format. To continue, press Return. This prevents you loading incorrect types of data and confusing the STAC! PRINTER MENU Many of you will have printers, but those that don't will still find the printer menu useful. With it you can list any part of the data to the screen or to the printer. You can also send it to the serial port or down the midi lines if you like - this might be useful for transferring data between computers. To use the printer menu, Press P from the main menu, then the letter for the data area you want to use - R for room descriptions, O for objects, etc. Then the program will ask whether you want to send the output to the screen, the printer, the RS-232 port, or the midi. Responding with either S,P,R or M. You will then be asked to supply a range of items to be sent, from one value to another. Thus you can list only messages 1 to 10, for example. The list will then appear on the screen or the printer ( or be sent to the serial port or the midi ). This is invaluable when you are writing adventures, as you can print out all your messages and not have to swap between messages and conditions all the time whilst looking for the right message number. In addition, option X allows you to set up the program to recognize your printer's needs. Some printers need to be sent a linefeed signal to advance to the next line - others do it 43 themselves, hence the Auto-linefeed question. If your printer does this itself, press Y for yes, otherwise N for no. Many of the newer high quality printers are 24 pin dot matrix printers, so the next questions ask 24 pin ? Again, answer Y or N. This is for the graphics printing - it uses a higher quality screen dump for 24 pin printers. NOTE - the graphics screen dump will only work if you have an Epson compatible printer. This is true of most printers which can handle graphics. The new printer dump routine is also patched into the normal screen dump. This is activated by pressing Alternate and Help at the same time. The contents of the whole screen are then sent to the printer. If you do not have a printer and hit this option by mistake, be patient. It takes the computer nearly a minute to realize that the printer is not attached and return to normal operation. Also note that since this feature was included primarily to print out pictures, it will not give a faithful reproduction of text from a medium resolution ( 80 character ) screen, or a split mode screen when running an adventure. The Printer width question is used to determine whether a picture will fit across the paper or not ( if not, then it is printed along the paper ). Try experimenting with different values for this - the higher the number, the wider the paper. Since it is in printer units, it will vary from printer to printer. I find a value of about 128 works well with an Epson LQ800, which is what I use. The linefeed length is again used for graphics, and represents the distance between successive scans of the print head whilst printing graphics. If you get white stripes across your picture, try reducing it. Dark stripes suggest increasing this spacing. Since control codes are widely used on screen, but can cause havoc on a printer, they are translated on printing to a more readable form. The abbreviations for each can be found in appendix B, along with what the control characters actually do on the screen. 44 CHAPTER EIGHT THE FONT EDITOR Using the STAC, it is possible to change the style in which text is printed on the screen ( though not to the printer ). This is known as the font, and the font editor can be called up from the main menu with key F. There are 256 characters in the character set, including letters, numbers and punctuation. The first 32 are reserved, and are not actually printed. These are known as control characters, and cause different effects on the screen ( see appendix B ). The other 224, however, are printable, and they can be redesigned by you to add a personal touch to the adventure. When you call up the font editor, the 256 characters are displayed on the left, and an 8 by 8 grid on the right. There are also three buttons at the bottom, marked Exit, Save and Load. By the grid are four rectangles of colour, which are black, red, white and blue. You can draw in the grid using the mouse. Click on one of the coloured rectangles ( not white for the moment - it will not show up... ), and click in a square on the grid. It will be filled with the colour you selected. This will allow you to construct and change characters. To see how a character is constructed, click on the character you want using the left mouse button. The grid will show a magnified view of the character, which you can then edit by selecting colours and clicking in the grid. This is easier to do than to explain. The character will also be displayed life size in the top left hand corner of the screen. When you have finished redesigning the character, you can put it back in the character set by moving the mouse over the character you wish to replace, and clicking using the right mouse button. You can redesign all the characters in the character set, including the control characters. When you are satisfied with the font, you can save it to disk. To do this, click on the SAVE button. This will give you a file selector, in which you can enter the name of the font in the normal way. In order to show up on the file selector, font files should be followed by a .FNT extension. Loading fonts is just as easy. The font is then displayed ready for editing. There are several font files on the disk in a folder called "FONTS". If you open this up with the file selector, you can select and load any of these for use in your adventure. The EXIT button takes you back to the main menu, as does the Esc key. The font you designed will now be used for all the printing to the screen that STAC does. The UNDO button takes you back to the main menu, but restores the previous font that you had, just in case you make a complete mess. 45 This page left blank as the original is a screen dump of the Font Editor screen. 46 You may notice that the font is broadly divided into two sections: the first half, which you can for the most part see on the keyboard, and the second half, which you cannot. How do we type in the characters in the second half ? This is relatively straightforeward. When typing in a message or a room description, for instance, pressing the Insert key will let you use the second half of the character set. If you press a key on the keyboard, it will now return the character directly underneath it by 8 lines on the character set ( ie it adds 128 to the character code for those of you who do a little programming ). For a full list of how to get all the characters see Appendix E. To access control characters that also do things to the line you are typing ( like Control-M which acts like return ), press Shift-Help and then the control character. Shift-Help means, in effect, "put the next character into the line no matter what it is". This is useful for inserting additional control characters into messages etc. for special effects. Successful fonts follow some general rules. Firstly, try to make the letters look distinct from each other, or there is a danger of the text becoming unreadable ( try loading BLOCK.FNT to see what I mean - all the letters look more or less the same ). If all the vertical lines are double width, then this makes the font look darker and it is consequently more readable. Don't be tempted to use the whole 8 by 8 grid for a character - if you do all the characters will but up against one another and the result will again be unreadable. You can put special characters in the top half of the character set since they can be typed in by pressing the Insert key. This could be useful for, say, italics, or bold, or maybe double width characters or monograms. You could even have mirror writing for puzzles ! The possibilities are endless, and by using four colours you can get some great effects. 47 CHAPTER NINE SPECIAL CONDITIONS AND COMMANDS SPECIAL CONDITIONS The special conditions are a part of the STAC that can be loaded with the QSTART file and safely left alone. They control the adventure's responses to errors and other extraordinary situations. A full list of the default conditions can be found in Appendix C, but here I would like to show what each special condition does, and how you can tailor the responses to your own needs There are 18 special conditions that are used by the system. You can use the others by using the Special word in conditions, and they can be useful for often repeated sections in conditions. Here are the first 18 special conditions. 1. Death This condition is called when the user dies ( ie when the death word is executed in a condition ). It should at the very least exit the game, possibly giving a message as well. 2. Success This is similar to 1, but is called when the player wins. Again, it should at least exit the player from the game. 3. Quit This should ask the player whether he really wants to quit or not. If he answers yes, he should exit the game. Special conditions will always return to where they were called from unless they include wait, ok, newcom, or byebye, which will be executed as normal. 4. Ok This is called when the ok word is executed. It should print a message "Okay", and wait for a new command. 5. Can't get an object that is not here This is called when the player attempts to get an object that is not here. It should print a message to that effect, then either wait for a new command, or scrap the rest of the commands on the line and wait for the player to type a new one by using newcom. In the first case, if the player had typed a whole string of commands, then any after where he could not pick up the object will be executed. In the second case it gives him a chance to correct his mistake before continuing. This is a common thing to do in situations that are errors. 6. Carrying too much to get object Is similar to 5, and is handled in the same way. 48 7. Already got that object Is again similar to 5. 8. Haven't got that object to drop This is called when you try to drop an object you do not have, and is handled in much the same way as 5. 9. Dropall This is what is actually executed when the STAC comes across a dropall command. It should include a loop that goes through each object that you are carrying and drop it, repeating until you are carrying nothing. The default action also gives a list of items dropped. 10. Getall This is like dropall, cycling through all the objects in the room and attempting to pick them up. It will stop if you try to pick up too much. 11. You can't This is called when you have asked the system to do something it does not recognize ( ie it has gone through all the local and low priority conditions and has not recognised anything ). It should just print a message "You can't" and then scrap the command line with newcom. Again, similar to 5. 12. Pardon ? This is called if you enter a command containing no verbs that are recognised. Yet again, another one similar to 5. 13. What now ? This is called when a prompt is required to tell the player he is expected to give a command. The default also prints a status line at the top of the screen showing where you are, your score, and the number of moves taken. 14. Look This is called when the look word is executed. It should at least display the long description of the room you are in, and a list of any objects that are there, or a message to show that it is dark if marker 1 is set ( ie it is actually dark ) and marker 2 is reset ( ie you do not have a lamp ). 15. Describe room on entry When moving from one room to another, you will want to be given a description of the room you have just entered. This is what this condition is fore. The default action is to check if it has been visited, and if so only print the short description, otherwise to print the long description. The room is then marked as having been visited. Again, if dark, a suitable message is printed. 49 16. Strength reduced to below load When using setstr, it is possible to set your strength to 1 while carrying a combined weight of 10. If this happens, this condition is called. The default is to drop items one by one until the amount you are carrying is less than or equal to your strength. 17. Start up This is called once, at the start of the adventure, and is used to set up things. It is too specific to be included in QSTART but typically it will be used to set your strength, ask for your name if necessary, set light or dark markers, and moves-in-the-dark counters. 18. Load prompt This is called if load cannot find the link file it needs on the current disk. This condition should print a prompt to tell the player to change disks, and then press a key. It should also wait for the keypress ! COMMANDS The commands that the player enters are processed by the STAC so that they can be passed to the conditions in usable form. This process is quite complex, but will allow you to see how a player command is interpreted, and thus what sort of commands you can use. Let us take a very small vocabulary: NOUNS VERBS ADVERBS 1 lamp 1 take 1 green 2 box 2 put 2 red 255 it 3 in 254 , and look at the player's command Take the lamp, put it in the green box The STAC goes through the command one word at a time, checking through the verb, noun and adverb tables, and filling in the recognized numbers in verb1, noun1, noun2, adverb1 and adverb2. If it comes across an adverb with number 254 or 255, then it stops and saves its position, having got a complete command. Let's see what happens: Word Take the lamp , put Verb? Yes NO NO NO Noun? | NO YES NO Adverb? | NO | YES | | | verb1=1 ignore noun1=1 254 so end command So we have: verb1 = 1 TAKE noun1 = 1 LAMP 50 as our first command. Having dealt with this, we come back to the next word in the line: Word put it in the green Verb? YES NO NO NO NO Noun? | YES NO NO NO Adverb? | | YES NO YES | | | | verb1=1 noun1=222 advb1=3 ignore advb2=2 becomes 1 Word box Verb? NO Noun? YES Adverb? | noun2=2 Any occurrence of noun 255 ( it ) is immediately replaced by the last noun referred to ( in this case noun 1, the lamp ). Thus the command is: verb1 = 2 PUT noun1 = 1 LAMP noun2 = 2 BOX advb1 = 3 IN advb2 = 2 GREEN We then come to the end of the line, so processing stops and the command is passed through to the conditions. Since there are no more commands on this line, the next time through a new line will be requested from the player. The difference between adverbs with numbers 255 and those with 254 is a subtle one. In a command which was separated by a 254 adverb, if there is no verb in the command then the one from the previous command is used. This allows such things as ( assuming adverb and had number 254 ) get the lamp and the rat since it preserves the get from one part to the next. Of course, if there is a verb in the next part, the previous verb is abandoned. It does, however, add a useful additional touch to the command interpreter. In addition to all this, a verb with number 255 is recognized as an "again" feature, and recalls the relevant information about the last command. Even if your last command was throw the green pot at the monster, a verb 255 again will repeat it. This can be very useful. 51 APPENDIX A EDITING KEYS AND CONTROL CHARACTERS KEYS USED WHEN TYPING If you make a mistake, or leave something out when typing a line into the STAC, then the following keys will help you to correct it. The cursor is a black rectangle which shows where your typing will appear. If it is before something, then what you type will be inserted, shuffling the rest of the text up rather than overwriting it. Key Action Backspace Erase character to left of cursor Delete Erase character under cursor Arrow Keys Move cursor up, down, left, right if possible Shift-Up Move to start of what you typed Shift-Down Move to end of what you typed Shift-Left Move to left hand screen edge Shift-Right Move to right hand screen edge Home Move to start of what you typed Shift-Home Clear everything after cursor Shift-Undo Clear everything you typed Insert Toggle between first and second halves of character set ( press again to cancel ) Shift-Help Insert next character no matter what it is CONTROL CHARACTERS FOR USE IN MESSAGES These are accessed by holding down the Control key and then pressing the letter key indicated. Note that some of these mimic the actions of certain keys ( these are noted after the description of the key ), and should thus be preceded by pressing Shift-Help before typing them in. Also, you can quite legally include any of the characters marked "ignored" if you like, but as it says, they will be completely ignored. They will not even leave a space. Character Prints as Action taken Cntrl-A [TAB4] Tab across by 4-character tab Cntrl-B [CT-B] Ignored Cntrl-C [CT-C] Ignored Cntrl-D [CT-D] Ignored Cntrl-E [BUZZ] Sound a buzz Cntrl-F [BEEP] Sound a beep Cntrl-G [PING] Sound a ping Cntrl-H [LEFT] Move left one character / Backspace Cntrl-I [RIGHT] Move right one character / Tab Cntrl-J [DOWN] Move down one character Cntrl-K [ UP ] Move up one character Cntrl-L [CLRS] Clear the screen / Shift-Home 52 Key Prints as Action Cntrl-M [ CR ] Move to left edge of screen / Return Cntrl-N [SAVE] Save this cursor position Cntrl-O [REST] Move back to saved position Cntrl-P [CT-P] Ignored Cntrl-Q [CLRL] Clear this line Cntrl-R [LARG] Large window size enabled / The large window size covers the entire screen Cntrl-S [SMAL] Small window enabled / The small window size covers the area below the picture if there is one. Cntrl-T [TUNE] Tune starts here Cntrl-U [TEXT] Tune ends here Cntrl-V [STR0] Print string 0 Cntrl-W [STR1] Print string 1 Cntrl-X [INVS] Inverse on/off Cntrl-Y [NORM] Inverse off Cntrl-Z [TB10] Tab to 10 characters short of right margin Cntrl-[ [ESC ] Ignored Esc Cntrl-\ [CT-\] Ignored Cntrl-] [CT-]] Ignored Cntrl-_ [HOME] Home cursor to top left corner / Home Cntrl-? [CT-?] Ignored 53 APPENDIX B GLOSSARY OF TERMS This section gives the meanings of some of the less common phrases and words in the manual. ADVENTURE UNIVERSE - is the setting for the adventure, and includes all the locations and objects that the player will visit or use. ADVENTURER - simply the person playing the adventure. AUTHOR - the person who actually wrote the adventure. BRUSH - on the screen, the shape you are drawing with. This need not look anything like a "real" brush ! CHARACTER - any number, letter, piece of punctuation, or symbol that the computer can display. CHARACTER SET - the sum total of all the characters the computer can display. CHORD - playing more than one note at once ( in music ). CLICK - to click on something, move the mouse over it and hit the left-hand mouse button quickly. COMMAND - anything the player types to get the adventure to do something. Typical commands are "Go north" or "Get the gold". COMMAND LINE - what the player types in. It may contain several commands, seperated by punctuation or words loke and or then. COMMAND INTERPRETER - the part of the STAC that extracts meaning from the player's commands. Also known as a "parser". The STAC parser can make sense of multi- part commands and complex actions such as: "Get the screwdriver, the axe and the dog then hit the log with the axe and examine the dog." CONDITIONS - are the part of the adventure which make the decisions. See chapter 3 for a full explanation. CONNECTIONS - the means by which different rooms are connected to each other. CONTROL CHARACTER - is a character which is not printed on the screen, but which instead controls some action on the screen, such as clearing it or moving on to the next line. These are for the most part typed by holding the Control key down and typing a letter. CURSOR - a small rectangle which shows where the next thing you type will appear. CURSOR KEYS - the four keys with arrows on to the right of the main keyboard. They move the cursor in the direction of the arrow on the key. 54 DEFAULT - the state something is in before you do anything to it. The default message number, for instance, is one more than the last one you used. DOUBLE CLICK - to click twice very quickly. ELLIPSE - a squashed circle; an oval. EDIT - changing information about something is called editing. ENTER - when asked to enter information, type the information and then press either the Enter key or the Return key. FILE - everything stored on a disk is in the form of files. Each one stores a separate set of information, much like files in a normal filing cabinet. FILENAME - the name of a file on the disk. This consists of two parts: a name and a type. The name can be up to 8 letters long, and the type up to 3 letters. They are seperated by a dot. It is customary to give files that hold the same sort of information the same type ( also called its extension ). An example is SANSERIF.FNT ,whose type of ".FNT" proclaims it as a font file. FILE SELECTOR - is a useful tool for selecting files to save on to disk, or to load from it. Rather than having to remember names of files and type them in, the file selector allows you to pick one from the disk using the mouse. It also handles opening and closing folders, and changing disks. FONT - when printing characters on the screen, the font specifies exactly how they look. FOLDER - files can be grouped together in folders for conven- ience. Rather than having to look through a whole load of files for the one you want, you can just open the revelant folder. All the font files on the STAC disk come in a folder called FONTS to keep them all together. See also "pathname". GAC - short for Graphic Adventure Creator, an adventure writing system for many 8-bit computers, upon which the STAC was based. See also "STAC" ICON - a small picture representing a function to be performed. To "do" the function, click on the icon with the mouse. These are used mostly in the graphic editor - see also chapter 4. IMPORT - use a picture which has been produced using a different program (either NEOCHROME or DEGAS ). INTELLIGENCE - is generally the decision making property of an adventure, rather than its ability to think. We are still a very long way from a true thinking computer program. INVENTORY - a list of objects, usually the ones you are carrying. LINESTYLE - how a line is drawn. Examples are dotted, dashed, continuous. 55 LOOP - a programming term for something which is done over and over again. It is called a loop because of flowcharts ( a convenient programming aid consisting of little boxes connected to each other with squiggly lines ), the lines all join up in a loop. Infinite loops just go round and round forever - for an example of this see "LOOP". MAGIC - a convenient cheat for letting the adventurer do something very difficult ( if not impossible ). OBJECTS - generally, anything in the adventure which can be picked up and moved. OPERANDS - the pieces of information that are manipulated by operators. OPERATOR - ( in conditions ) is a word that does something to operands. For example, in 1 + 2, the operands are 1 and 2, and the operator is +, which simply adds them together. PALETTE - the set of colours that you can use on the screen. You can use 16 chosen from the 512 available on the ST. PARSER - see "command interpreter". PATHNAME - this specifies in which folder(s) a file may be found. A pathname that looks like A:\FONTS\TIMES.FNT means "file TIMES.FNT in folder FONTS on disk A:". See also "filename", "folder". PIXEL - the smallest dot you can produce on the screen. PLAYER - the person who plays the adventure. RANDOM - an action for which you do not know the outcome. The action of rolling a dice provides a random number between 1 and 6. RUBBER BAND - not a pop group ! A rubber band object is one that can be stretched using the mouse until it is the proper shape. SPLIT MODE SCREEN - the ST can display three screen modes, usually referred to as high, medium, and low resolution. The STAC allows a split screen so that you can have full colour low- resolution pictures in the top half, and 80 character medium resolution text in the bottom part of the screen, something which is not usually possible. STAC - short for the ST Adventure Creator. STRING - a string is a sequence of characters ( letters or numbers ). It may be up to 39 characters long. Here are some examples of strings: "Hello", "99-64", "Aardvarks are not common in Iceland". TELEPORT - to move from point A to point B instantly without going through any point in between. Star Trek and Larry Niven fans will know all about teleporting. 56 TEMPO - how fast a piece of music is played. Most music by Motorhead, for example, has a faster tempo than that favoured by Val Doonican. TEXT - words and numbers, as opposed to graphics. USER - the person using the STAC, as opposed to the adventurer. VOCABULARY - the sum total of all the words that the adventure game will respond to. VOLUME - how load a piece of music is played. Again, this might merit another Motorhead / Val Doonican comparison. 57 APPENDIX C CONTENTS OF QSTART FILE The QSTART file supplied with the STAC contains many things which are used in almost all adventures, no matter what the story or the precise nature of the adventure. Here is a list of exactly what you get when you load the QSTART file, with additional comments. 254 , / Adverbs with numbers 254/5 are taken to be 255 . separators between different commands on the 255 ? same line. 255 ! 254 and 255 then LOW PRIORITY CONDITIONS 1 if verb "drop" and noun "all" then dropall wait 2 if verb "get" and noun "all" then getall wait / Get and drop all objects 3 if verb "l" then look wait / Describe room when player types "look". 4 if verb "i" and notzer? cntobj with then message 9916 list with wait / Inventory when you are carrying something. 5 if verb "i" and zero? cntobj with then message 9916 message 9917 wait / Inventory when you are carrying nothing. 6 if verb "quit" then quit ok 7 if verb "text" then text draw 0 ok 8 if verb "graphics" then pict draw pictof room ok 9 if verb "save" then save ok 10 if verb "load" then load look wait 11 if verb "split" then split lf message 9932 wait 12 if verb "ramsave" then ramsave 1 ok 13 if verb "ramload" then ramload 1 look ok MESSAGES 9900 You have died When the player dies 9901 Well done ! When the player wins 9902 You scored a total of 9903 points in 9904 moves. To show the score 9905 Okay Message printed for Ok. 9906 I can't see that ! Can't find object to get. 9907 You are carrying too much already. 9908 Why? You've already got it. / When you try to get something you already have. 9909 You don't have that. Drop something you don't have. 58 MESSAGES ctd 9910 You can't do that ! 9911 Pardon ???? 9912 What now ? 9913 You can also see When listing objects in a room. 9914 . 9915 Are you sure (Y?N) ? Ask when quitting 9916 You are carrying For inventory 9917 nothing. 9918 You feel weak, and stumble. / When strength reduced too much to carry load. 9919 You drop For dropall 9920 taken. For getall 9921 You can't examine that, I'm afraid. 9922 You see nothing special For examining things 9923 [SAVE][LARG][HOME][INVS][CLRL] / Move to top line, make it black with white letters. 9924 [TB10] Move across to print score 9925 / Between score and turns 9926 [NORM][SMAL][REST] Go back to cursor position 9927 Dark in here, isn't it? For when you enter a dark room. 9928 It's no use looking, it's dark ! 9929 You don't have anything to drop. 9930 There's nothing here to pick up. 9931 : 9932 Text size changed. 9933 Please insert disk containing NOUNS 254 all 254 everything 255 it "it" must always be noun 255 255 them SPECIAL CONDITIONS 1. Death 1 lf message 9900 lf Print "You have died" 2 message 9902 print counter 0 message 9903 print turns message 9904 pause 5000 byebye / Print score and number of turns, wait for keypress, then end the game 2. Success 1 lf message 9901 lf Print "Well done" 2 message 9902 print counter 0 message 9903 print turns message 9904 pause 5000 byebye 59 SPECIAL CONDITIONS ctd 3. Quit 1 message 9915 if yesno then lf message 9902 print counter 0 message 9903 print turns message 9904 pause 5000 byebye 4. Ok 1 message 9905 wait Print "Okay", wait for new command 5. Get failed - object not here 1 message 9906 newcom Print "I can't see that", scrap rest of command line, wait for new command 6.Get failed - carrying too much 1 message 9907 newcom 7. Get failed - already got object 1 message 9908 newcom 8. Drop failed - not carrying object 1 message 9909 newcom 9. Dropall 1 if zero? firstob with then message 9929 newcom / If not carrying anything, say so. 2 if firstob with then repeat lf message 9919 itis firstob with objsht firstob with drop firstob with until zero? firstob with / A little complex, this one. Print "You drop ", then describe the first object you have with you, set "it" to refer to this object, and drop it. Repeat until all objects have been dropped. 10. Getall 1 if zero? firstob room then message 9930 newcom 2 if firstob room then repeat lf caps objsht firstob room itis firstob room message 9931 get firstob room message 9920 until zero? firstob room / Similar to above. Describe object you are about to pick up, then make "it" refer to it. Attempt to get the object ( this may fail if you are carrying too much already ). If it does not fail then print "taken", and repeat until there are no objects left in the room. 11. You can't ! 1 message 9910 newcom 12. Pardon ?? 1 message 9911 newcom 13. What now ? 1 lf message 9912 Print "What now ?" 2 message 9923 descsht room message 9924 print counter 0 message 9925 print turns message 9926 / Print the status bar at the top of the screen. 60 SPECIAL CONDITIONS ctd 14. Look 1 if set? 1 and reset? 2 then message 9928 return / If it is dark and you have no source of light, print "It's dark" and return to where you were. 2 set 0 desclng room draw pictof room / Otherwise print room description and picture if any, and set marker 0 as confirmation of this. 3 if firstob room then message 9913 list room message 9914 / if there are any objects here, list them 15. Describe room when entering it 1 lf 2 if set? 1 and reset? 2 then message 9927 return / test if it is dark as above 3 set 0 4 if visit? then descsht room draw pictof room else desclng room draw pictof room / if this room has already been visited, use the short description, otherwise use the long one. 5 visit mark this room as having been visited 6 if firstob room then message 9913 list room message 9914 / list any objects that are here 16. Strength reduced to below load 1 message 9918 Print "You stumble" 2 repeat lf message 9919 objsht firstob with drop firstob with until stren? >= amount newcom / Drop objects until the amount carried is less than your strength 17. Start of adventure Not included - adventure start is very specific 18. Load prompt 1 lf message 9933 asslink 0 pause 5000 / Print "Please insert disk containing " then link file name, then wait for keypress. VERBS 255 a 9 l 2 s 255 again 10 list 14 save 6 d 15 load 2 south 6 down 9 look 17 split 8 drop 1 n 17 t 3 e 1 north 7 take 3 east 13 pictures 12 text 16 exam 11 quit 17 textsize 16 examine 18 ramload 5 u 7 get 19 ramsave 5 up 13 graphics 14 restore 4 w 10 i 18 rl 4 west 10 inventory 19 rs 12 words 61 APPENDIX D CHARACTER KEY SEQUENCES When using the font editor, it can be seen that there are considerably more characters than are actually displayed on the keyboard. How do you type these in ? This generally requires use of the insert and shift-help keys mentioned in appendix B. Here is a list of how to get all the characters. Since they may change in appearance from font to font, they are organized by row and column as they appear on the font editor. In order to compact the list, the following keys have been abbreviated: Control = Cnt - means "with" ( eg ! is Shf-1 ) Insert = Ins / means "then" ( eg row 1 column Shift-Help = Hlp 9 is Hlp/Backspace ) Shift = Shf Row Col Key sequence Row Col Key Sequence 1 1 Not available 3 4 # 1 2 Cnt-A 3 5 Shf-4 1 3 Cnt-B 3 6 Shf-5 1 4 Cnt-C 3 7 Shf-7 1 5 Cnt-D 3 8 ' 1 6 Cnt-E 3 9 Shf-9 1 7 Cnt-F 3 10 Shf-0 1 8 Cnt-G 3 11 Shf-8 1 9 Hlp/Backspace 3 12 Shf-= 1 10 Cnt-I 3 13 , 1 11 Cnt-J 3 14 - 1 12 Cnt-K 3 15 . 1 13 Hlp/Cnt-L 3 16 / 1 14 Hlp/Return 1 15 Cnt-N 4 1 0 1 16 Cnt-O 4 2 1 4 3 2 2 1 Cnt-P 4 4 3 2 2 Cnt-Q 4 5 4 2 3 Cnt-R 4 6 5 2 4 Cnt-S 4 7 6 2 5 Cnt-T 4 8 7 2 6 Cnt-U 4 9 8 2 7 Cnt-V 4 10 9 2 8 Cnt-W 4 11 Shf-; 2 9 Cnt-X 4 12 ; 2 10 Cnt-Y 4 13 Shf-, 2 11 Cnt-Z 4 14 = 2 12 Esc 4 15 Shf-. 2 13 Cnt-\ 4 16 Shf-/ 2 14 Cnt-] 2 15 Hlp/Home 5 1 Shf-' 2 16 Hlp/Cnt- - 5 2 Shf-A 5 3 Shf-B 3 1 Space bar 5 4 Shf-C 3 2 Shift-1 5 5 Shf-D 3 3 Shift-2 5 6 Shf-E 62 Row Col Key sequence Row Col Key sequence 5 7 Shf-F 7 8 G 5 8 Shf-G 7 9 H 5 9 Shf-H 7 10 I 5 10 Shf-I 7 11 J 5 11 Shf-J 7 12 K 5 12 Shf-K 7 13 L 5 13 Shf-L 7 14 M 5 14 Shf-M 7 15 N 5 15 Shf-N 7 16 O 5 16 Shf-O 8 1 P 6 1 Shf-P 8 2 Q 6 2 Shf-Q 8 3 R 6 3 Shf-R 8 4 S 6 4 Shf-S 8 5 T 6 5 Shf-T 8 6 U 6 6 Shf-U 8 7 V 6 7 Shf-V 8 8 W 6 8 Shf-W 8 9 X 6 9 Shf-X 8 10 Y 6 10 Shf-Y 8 11 Z 6 11 Shf-Z 8 12 Shf-[ 6 12 [ 8 13 Shf-\ 6 13 \ 8 14 Shf-] 6 14 ] 8 15 Shf-# 6 15 Shf-6 8 16 Hlp-Delete 6 16 Shf- - 9 .. Insert, see row 1 7 1 ' 10 .. Insert, see row 2 7 2 A 11 .. Insert, see row 3 7 3 B 12 .. Insert, see row 4 7 4 C 13 .. Insert, see row 5 7 5 D 14 .. Insert, see row 6 7 6 E 15 .. Insert, see row 7 7 7 F 16 .. Insert, see row 8 For rows 8 to 16, press Insert, then follow the key sequence 8 rows above ( eg row 16 column 1 would be Insert then row 8 column 1 which is P giving the sequence Insert/P ). 63 APPENDIX E CONDITIONAL WORDS For a full description of the words in each section, see also the page numbers indicated. DECISION MAKING [p9,24] if...then...else Tests if a condition is true or false. If true, performs action after then, otherwise performs that after else, if present. PLAYER COMMANDS [p4,9,21,22,25,35,50,64] verb v Was verb v typed ? noun n Was noun n typed ? adverb a Was adverb a typed ? noun1 noun2 Return numbers of first and second nouns typed by the player. advb1 advb2 Return numbers of first and second adverbs typed. verb1 Return number of verb typed. itis n Force "it" to refer to noun n. ROOMS [p13-15,39] goto r Move player to room r and redescribe. moveto r Move player to room r. desclng r Print long description of room r. descsht r Print short description of room r. look Print description of this room, with picture if present, using short description if already visited. draw p Draw picture number p. pictof r Get picture number associated with room r. split Turn split mode screen on and off. c colour xxx Change colour c in bottom part of screen to RGB value xxx. c topcol xxx Change colour in top part of screen. visit Mark this room as already visited. visit? Has this room been visited before ? room Get number of this room. at r Is the player at the room number r ? COMMENTS [p21] ; \ Either of these signals that the rest of the line is to be treated as a comment and ignored. 64 OBJECTS [p10-12,22-25,48-49] get o Get object o drop o Drop object o getall Get every object in this room dropall Drop every object you are carrying o to r Move object o to room r o swap O Swap object o and O bring o Bring object o here find o Move player to object o objlng Print long description of object o objsht Print short description of object o o in r Is object o in room r ? carried o Is object o being carried ? here o Is object o in this room ? avail o Is object o available ( ie here or being carried ) ? weight o Return the weight of object o whereis o Return location of object o stren? Return your current strength amount Return the total weight of everything you are carrying setstr e Set player's strength to e firstob r Return number of first object in room number r cntobj r Return the number of objects in room number r list r List all objects in room r list with List all objects with you ( being carried ) MARKERS [p15,38] set m Set marker m reset m Reset marker m change m Change state of marker m ( ie if it was set before then reset it, and vice versa ). set? m Is marker m set ? reset? m Is marker m reset ? COUNTERS [p16,24,38] e setcntr c Place value e in counter c counter c Return value stored in counter c inc c Add one to value of counter c dec c Subtract one from counter c e +count c Add e to counter c and put value back in the counter e -count c Subtract e from counter c e =count c Is the value e the same as the value in counter c ? 65 COMBINATIONS [p23] t and T Are both t and T true ? & && ( Both same as and ) t or T Is either t, or T, or both, true ? | || ( Both same as or ) t xor T Is either t, or T, but not both, true ? ^ ^^ ( Both same as xor ) not t Is t false ? ~ ( Same as not ) ARITHMETIC [p11] e + E Return result of adding e to E e - E Return result of subtracting e from E e * E Return result of multiplying e by E e / E Return result of dividing e by E Note that this returns whole numbers only. So 9 / 2 is 4, not 4.5 e mod E Returns the remainder when e is divided by E. 9 mod 2 is 1 COMPARISONS [p11-12] e < E Is e less than E ? e > E Is e greater than E ? e = E Is e equal to E ? e <= E Is e less than or equal to E ? e >= E Is e greater than or equal to E ? e <> E Is e not equal to E ? zero? e Is e zero ? ( e = 0 ) pos? e Is e positive ? ( e > 0 ) neg? e Is e negative ? ( e < 0 ) notzer? e Is e not zero ? ( e <> 0 ) notpos? e Is e not positive ? ( e <= 0 ) notneg? e Is e not negative ? ( e >= 0 ) LIFE AND DEATH [p16,38,39,48] death Kill the player and stop the game. success End the game since the player has succeeded. quit Ask the player if he is sure he wants to quit, and if yes, end the game. byebye Exit from the game immediately. DISKS [p17,18,50] save Save game position to disk. load Load a previously saved game position. 66 DISKS (ctd.) ramsave n Save game position to memory slot n. ramload n Load a previously ramsaved position. link m Load and play an extension file. Note that this will only actually work in a runnable adventure. The filename to load is put in message m. asslink Prints the filename of the expected link file. MESSAGES AND STRINGS [p18-21,36] message m Print message m to the screen. caps Make sure first character of next message is a capital letter. get$ s Get string s from the player. print$ s Print string s to the screen. edit$ s Allows player to edit string s. value s Get numeric value of string s. n number$ s Put numeric value n in string s. s add$ S Add string s on to end of string S. s copy$ S Copy string s to string S. s swap$ S Swap strings s and S. m mess$ s Copy message m into string s. n cutst$ s Cut n characters off start of string s. n cutens$ s Cut n characters off end of string s. length$ s Return length of string s. c addchr$ s Add character c to end of string s. c first$ s Find first occurrence of character c in string s. c last$ s Find last occurrence of character c. ascii$ s Get character code of 1st character of string s. obey$ s Obey string s as if the player typed it in. parse$ s Fill in additional nouns, verbs and adverbs from string s. comm$ s Put the rest of the command line into string s. s =$ S Is string s equal to string S ? s <$ S Is string s less than string S ? s >$ S Is string s greater than string S ? s <>$ S Is string s not equal to string S ? s <=$ S Is string s less than or equal to string s ? s >=$ S Is string s greater than or equal to string S? print e Print number e. 67 MISCELLANEOUS wait Wait for a new command. [p10] ok Print "Ok", wait for a new command. [p10,48] newcom Ask player for new command line. All commands not already done on the current line are discarded. [p23] turns Return the number of turns since the start of the game. [p21-23] false Returns the same result as a false test. [p23] true Returns the same result as a true test. [p23] yesno Waits for the user to press "Y", which returns a true result, or "N", which returns false. [p22] repeat..until t Repeat conditions between repeat and until condition t is true. [p24] lf Move printing on to a new line. [p13] text Disable pictures. [p14] pict Enable pictures. [p14] e word n Set word n to be equal to value e. The value of n may be 1 ( noun1 ), 2 ( noun2 ), 3 ( verb1 ), 5 ( adverb1 ) or 6 ( adverb2 ). [p22] connect v Gives the number of the room which is connected to this room by verb v. [p14] random e Gives a random number between 1 and e inclusive. [p21] special s Executes special condition number s. [p23,24] return Returns early from special condition. [p23] pause e Pause for e fiftieths of a second, or until a key is pressed. [p18,23] setamnt e Set amount to value of e. [p22] setturn e Set turns to value of e. [p22] setwith e Set with to value of e. [p22] cursor e Sets the height of the text cursor to e. e may be 0 to 7. 68 ERRORS 1. Number out of range Occurs when you try to access counters, markers, or objects with numbers greater than 511, and when you try to use nouns, verbs, or adverbs with numbers greater than 255. 2. Internal error Will only happen if a very complex expression is being evaluated and STAC runs out of space to store its results. This should never happen, as very complex is really VERY complex ! 3. Object not found Occurs when you try to describe an object which does not exist. 4. Room not found Occurs when you try to describe a room which does not exist. 5. Message not found Occurs when you try to print a message which does not exist. 6. Break Occurs when both shift keys are depressed at the same time whilst executing the conditions. 7. Not a valid link file Occurs when the file whose name was given to link is not actually a previously saved link file. Also occurs when testing an adventure - actually loading a link file would destroy all your carefully typed adventure data ! 8. No repeat for this until Occurs when an until is found which does not have a matching repeat before it. DISK ERRORS Several errors can occur whilst trying to access the disks. Some of these are not obvious, so here is a list: 1. File not found There is not a file with the requested name on the disk. 2. Pathname not found You have tried to enter a folder that is not there. Typing a pathname of "A:\FONTS\SANSERIF.FNT" effectively opens a folder called FONTS. If there is no folder on the disk with that name, then this error will occur. 3. Disk write protected The disk you are trying to save to has its write protect tab removed. 4. Disk full There is no more room on the disk for the file that you are trying to save. The warning box for all these file errors can be cleared by pressing a key. 69 This page left blank, due to it containing a flow chart which cannot be reproduced in a text document. 70 APPENDIX G HANDY REFERENCE SHEET RANGES OF NUMBERS Rooms: 1 to 9999 Messages: 1 to 9999 Pictures: 1 to 9999 Objects: 1 to 511 Special conditions: 1 to 255 Verbs: 1 to 255 Nouns: 1 to 255 Adverbs: 1 to 255 Markers: 0 to 511 Counters: 0 to 511 ( which stores -2,147,483,648 to +2,147,483,647 ) Colours on screen: any 20 from 512 (16 in graphics screen, 4 in text ) Maximum picture size: 288 pixels horizontally X 132 pixels vertically. SPECIAL CONDITIONS 1. Death 2. Success 3. Quit 4. Ok 5. Can't get object ( not here ) 6. Can't get object ( too heavy ) 7. Can't get object ( already got ) 8. Can't drop object 9. Drop all 10. Get all 11. Print "You can't" 12. Print "Pardon ?" 13. Print "What now ?" 14. Look 15. Describe room on entry 16. Strength reduced below load 17. Startup condition 18. Load prompt Markers etc. used by STAC Marker 0: Set when room described Marker 1. Set means dark Marker 2: Set means lamp available Counter 0: Score Noun 255: It Verb 255: Again Adverb 254/255: Seperators 71 INDEX Item Page Adventure universe .......................................... 3 Adverbs .............................................. 9,64,71 Again .................................................. 22,51 And,or,xor,not ............................................. 66 Arithmetic ............................................. 12,66 Begin where ? .............................................. 39 Characters ........................................... 45,58,68 Chords ..................................................... 33 Colour palette ............................................. 30 Combinations ............................................... 66 Commands ................................................... 50 Comparisons ................................. 11,12,21,23,66,67 Conditions ............................................... 8,64 .....high priority 37; local 38; low priority 36,58; special 48,59,70,71. .....arithmetic 11,66; commands 9,64; comments 21,64; disks 16,66; markers/counters 15,65; messages 12,67; objects 10,65; pictures 14,64; rooms 13,64; strings 18,67; testing 9,64; .....other 21,68. Connections.......................................... 4,5,14,68 Contents of package ........................................ 1 Control characters ...................................... 45,58 Counters - conditional words .......................... 16,24,65 Counters - general ................................... 38-40,65 Dark marker ......................................... 5,37,38,71 Decision making ....................................... 9,24,64 Demonstration disk ......................................... 1 Disk menu ............................................... 6,42 Disks .............................................. 6,40-43,55 Drawing screen ............................................ 28 Dropping objects ........................................ 10,25 Eating .................................................. 37,39 Editing data ........................................... 6,64,68 Encode ................................................ 18,50,61 Equipment .................................................. 1 Errors ................................................ 26,40,57 Examine objects ......................................... 37,39 Files ...................................................... 43 File selector ............................................ 6,42 Flowchart .................................................. 70 Folder ..................................................... 43 Fonts ...................................................... 45 Font editor .............................................. 45,46 Format disk ................................................ 42 72 Get objects .............................................. 10,25 Getall ..................................................... 65 Glossary ................................................... 60 Graphics ................................................. 14,27 Help screen ................................................ 40 High priority conditions ................................... 37 If-then-else ........................................... 9,24,64 Importing pictures ........................................ 29 Initialization ........................................ 30,50,51 Inventory ................................................. 13 It ........................................................ 51 Itis ...................................................... 64 Keys .................................................... 58,68 LF ( line feed ) ........................................... 68 Life and death - conditional words ................ 16,21,23,66 Life and death - general .................... 38,39,48,59,60,66 Light ............................................. 5,37,38,71 Lighting a lamp ........................................... 5 Link files ............................................. 18,67 Load adventure ............................................ 40 Load game position ........................................ 16 Loading screen ............................................ 39 Loading STAC .............................................. 1 Local conditions .......................................... 38 Loops ............................................ 24,40,56,68 Low priority conditions ................................ 36,64 Main menu .................................................. 6 Map ........................................................ 4 Markers - conditional words ......................... 15,26,65 Markers - general ............................... 5,38-40,65,71 Messages - conditional words ................... 12,13,18-21,67 Messages - general ............................. 34,53,56,58,67 Mistakes ................................................. 7,58 Music .................................................... 32 Nesting .................................................. 24 Newcom ................................................... 68 Nouns .............................................. 9,65,71 Numbering ................................................ 25 Objects - conditional words ............. 4,5,10-12,14,22-25,64 Objects - general ............... 3,34,37,39,40,48-50,60,61,64 Ok ................................................... 10,48,68 Oops ...................................................... 25 Palette ................................................... 30 Pause ................................................... 23,68 Pardon .................................................. 49,60 Pictures ................................................ 14,27 Plot ..................................................... 3 Printer ................................................... 43 Program disk .............................................. 1 Purpose of adventure ...................................... 3 73 Questioning the player .................................... 21 Quick adventure .......................................... 3 Quick start file ............................... 6,16,35,48,58 Ranges of numbers .......................................... 71 Reference sheet ............................................ 71 Repeat - until ........................................... 24,68 Return .................................................. 23,68 Rooms - conditional words ............................ 13-15,65 Rooms - general ......................... 34,38,39,49,56,61,65 Royalties ................................................. 41 Runnable adventure program ............................. 40,41 Save adventure .......................................... 40 Save game position ......................... 17,18,21,25,26,66 Scale ................................................... 33 Scoring ................................................ 36,37 Screen display .......................................... 52 Screen dump ............................................. 44 Separators ........................................ 50,51,58,71 Short cuts .............................................. 25 Special conditions ................................ 48,65,70,71 Starting the adventure .................................. 39,40 Strings - conditional words .................... 12,13,18-21,67 Strings - general .............................. 34,53,56,58,67 Testing ................................................... 40 Text .................................................... 14,68 Tricks and tips ............................................ 25 Turns counter .............................................. 68 Verbs ................................................. 9,67,71 Vocabulary - conditional words ................ 4,9,21,22,25,64 Vocabulary - general ........... 34-37,39,40,48-50,58-61,64,71 Wait ................................................ 10,48,68 Wearing things ........................................... 25 What now ? ............................................. 49,60 Yes and no .............................................. 22,68 You can't ............................................... 49,60 THE END 74 Sewer Software presents... Another bit of documentation brought to you by the "Arthritic Hand Foundation". This is an easy one. THANK GOD !!! SUPER CYCLE Place your SUPER CYCLE disk in the drive. (Easy right?) Turn on the computer. (Again Easy, right?) The disk has an autoboot directory. Press the SPACE BAR to bring up the screen to select your cycle and leathers. Choose your difficulty leve. At any time while racing, pressing function key F10 will return you to the Title Screen. From the TITLE SCREEN, RACING SCOREBOARD, or SELECT SCREEN, pressing F1 takes you to the top of the RACING SCOREBOARD. On the RACING SCOREBOARD, F3 scrolls down and F4 scrolls up. You're off! (Told you it was a snap!) To clear out the names and scores from the RACING SCOREBOARD, simply press the function key F9 while viewing the SCOREBOARD. TOS is required in ROM for this disk to operate on a 540ST. INTRODUCTION Open road racing -- wheel to wheel -- piston screaming and rubber burning. That's the challenge of SUPER CYCLE. Before you begin, choose your machine and your leathers. Choose carefully, there's an ordeal ahead. You and your machine will be pushed to the max by the course, The other competitors, and the relentless clock. You must complete each of the race courses within a time limit in order to continue. Crash, and you lose valuable seconds. Each of the more than seven courses poses unique challenges -- water on the road, ice, road barricades and other dangerous obstacles. When you see a road sigh that means slippery when wet, you better listen. There's day and night courses, city and country, hills and mountains, desert courses and streaking through the sunlight next to Cape Canaveral. Accelerate up through the gears, jockey for position and bump the other riders. Go for top speed, but try not to go out of control. Good luck. Your reflexes better be as sharp as the turns up ahead. OBJECTIVE You must complete each race course within the specified time, in order to go on to the next course. Watch out for the other riders -- you can bump them and they can bump you. Steer through the pack, and avoid road obstacles -- crashing eats up valuable time. Complete all the courses at one of the difficulty levels and you can get a checkered flag next to your name on the racing scoreboard. THE CONTROLS Push forward on the joystick to accelerate, and pull back to slow down. Push left or right with the joystick to steer. There are three gears. To gear up, push the joystick forward and press the fire button. With the joystick centered, simply press the fire button to gear down. The three lights in the center of the dash indicate what gear you're in. The top light is the highest gear. The bottom light is the lowest gear. The light is colored yellow for the gear you're in. RACING Each course has a set time limit. The bottom of your dash shows your elapsed tie, and your total points. The more distance you cover, the more points you accumulate. Watch out for road conditions and unusual obstacles. You never know what you're going to find out there. Lamp posts, oil slicks, even road pylons that narrow the course to a single lane. Watch for special bonus flags -- hit those for extra points and time. Time it just right, cut and accelerate with split second precision, and you could end up on top. On top of the racing scoreboard! Sewer Presents... CODE NAME: SYSTEM 5 INSTRUCTION MANUAL INSTRUCTIONS Welcome to the world of Espionage. Espionage is dangerously exciting and realy does happen. Although espionage is usualy investigated internally by the government, it is known that persons outside the government are contracted to research personnel. As from now on we will not use the word "game" as Espionage is not a game but a way of life and people can and do get hurt. THE PROCEDURE First you will need to log-on with the system 5's Network unit. This is a central data base control unit situated in London, England. It's purpose is specifically programed to help you, but as you well know it's function is to tap into other computers throughout the world. This is also known as HACKING, and as hacking happens in the world today we must imform you that your task is not the simplest of things, we must instruct the terminal to withhold a good deal of imformation from outsiders. It will offer you many alternatives and try to fool hackers. M.I.N.D. Military Intelligence and National Database is situated in New York, USA. The function of M.I.N.D. is to investigate any or all of goverment affairs that can offer danger to personnel or outsiders. the package you received will connect you to the central terminal in London, which has direct link to M.I.N.D. M.I.N.D. is investigating an internal theft of TOP SECRET documents from one of the many departments in the government buildings in England. They have instructed one of their intelligence men to find and inform someone of their needs. In turn this person has contacted you (read letter). M.I.N.D. has a large database with all information needed for their files, but of course they haven't got all information on personnel. That is where you come in. They want you to pass on this vital information. If they instruct you to contact them, do so immediately and that uis IMMEDIATELY. There are security eliments of which you may come across or others which may just creep up on you.There are no easy ways past theses, you must accept them as part of security. TRACERS Beware of the high security tracers who can trace your signal if you can not get into a computer terminal while you are on-line. This can be seen on your Status Board so keep a sharp eye on the Static Count which the tracers equipment effect. A static count of above 60 will cause the tracers to put a block on your transmission and shut you down immediately and without warning. i am sorry but we must keep the information that you have received a priority Top Secret and we cannot inform the tracers of your intentions or that you are working for M.I.N.D. LETTER TO WHOME IT MAY CONCERN First of all may i thank you for accepting this contract and wish you the very best of luck. There has been a theft from one of our departments of official Top secret plans for a nuclear powered space drive and the blueprints of the base at which it is situated. We do not want you to investigate their whereabouts or of whom stole them. All we wish you to do is to forward the vital information on some personnel within M.I.N.D. (there is a few who are working undercover and will look suspect to you) I am now instucting you to leave wel alone all of which does not concern you or your mission. We will inform you when we have completed our investigations and then will terminate your contract of employment. As soon as you have connected up and logged-on your equipment please contact with me through your bullitin boards message page. I will endeavor to contact you as ofern as i can and offer you help. So bye for now and again good luck....... Brain Taylor `*o$|B?< NA/@ L&JY(JY,|@: gtae `6xva|fb4`ahd6adda`eraBRB`aNex6<aPf6DV6a"J!Q`f Nuxrtf BQ2RAISAfNurtf BQNua6t`v `&|*q4,tybv!E;ߜDmp$2#O0<?"Qx>n|!Uf2urZ* Q/hNNyd6:ʢTSʺmSMʢN BAp8\dmt)ШШB@h]qP&D\Sdh] mt)Z"Лh]RAsI$4PAsȡt)dШШBЛh]rAsIp'ߚ:Xdddd;Qd7Y[d80#H;RP;ZX5`FhFpe;Sx;[qq(F0;T"b;\8*H^ k<"Q\N!,"l̉'$v^ъ%$ d^ 63 =*&Z,.jd/2b2PRS"<cL +㜁6O6l!*͕,D&9}Ėp ph/;r8<5_p,&<%" &Ya^ͿfZ!^TcTmTTTTmTTTTmTTTTmTTTBES9eaq(0F8mHaPXF`hapxF#D)$L(L<"#PC"#E aDܳ?K5K4kۓMP)E?e'/OCD D*K!zGkm{ה! mby < !r!ءNkoE2CC.C(018 CnCHPX1` Chpx13X1NuB:PJd?KQr${9(3 7膛D$Hlle0P]?R<" ԶpBpz&I&sޓP$fHkl60۴Pؘ0m}D:hp0ueԘ``5k :TӐ|XN##^Z Z ^aoLպv""/aup44(f#4b #r ax̠X@L3[Z|(018nHP|X`|hp|xFG>4thD"HBC0ԈN+94Pn "g 213V?`~RQdJSŮ6v55/a/4dbY1ORD SD"N\r/ r<R }e x=%n"e"JQ~ʼZ< /TL/CQ#jr*X*5D`ϗEו$8D&_xctI)D:C2mB, BїƓK6eQ%؈ib;<'IepC^L?vb/uNh7_wMĶ? pb8D6/jQxIp3쪔 x p26P| \bPS☯ʃD12%4KˤD/a0,1U&c4F3cqa!ҢYξ{_LHR$?ylH|ꎐDNuH.PL].SD/Fթ`z^QfN4?Btۺ˺f XΡq`ְ6akf^`\!&vpYEȋ$CEa"OlR/Ѩ_RFΧLwLC"P"PL0cLHxaH>΅Nuab.x:9]GF 4BDN8^0BX(Qȥ+Q9%p5&BF!~H -AXtO;e/9.H0PxFKMz 0Ҍ#.0 0 0V#.L#0T1~F2&;&?Ra J8FkBB:aC2FD*rb$B"f\x̼|NÄ#,dwgR= 9 M`@Yĺe>3* &u'|Ǭ̮8|LnX 1U%XbU%Xb ZHL NA[?c>c^' ZF&& qY1 dd~S^کyOy?e>c޲](46V%F,ItL`.z&y1="~b碠#]88ҏ8D| &X0n?V<ԦyOQld,(}pV"22*HB&p hh&ʊhL0bH%EFjG,Ad̀ J&'օֆևL:D]H03ākkkiSgD@&u1& PTYFCYM WIp# g\#16O:BD.:AbP ESDrDlEނq]ZHܴOfL5 ``D`_\1Vb1TLy&P2/xp1/9>`PEyB/D@ZEt MئN#xGe]~Jb,RQF(̾Qz/Jde>Qf\FSRٗ8ԊH2PJ 2* X<*UH,VB D (Byў 7L10*˳DjDtL ,d?BqwXRDSĎL,(LC)LtzB)"!fY^~ak)4|q1zJ XPa 1AS (j=J&~x ʔ4,Ib%1 JdJ^n O\cWfMއd]/ʉ'2BKxfQD/, NAT`' ?9 K;%C/b8-Sxj|UV&Rc8#86h&0cdF-W3H z,8f!:0`RbU*R*=R`(4_pZ+"~$&<<NLe&*[~ `&VV XQJ ":8X2e`8b Y[Ebr')C*%c3KFI+S`XITlj#?txZZ0XJ*_/Nul>#>:;Q ~aa>~X~{kÄX}~`;i~m. p`zhv"\VE0`UP ԏ2ܐF <8G 8Cp ԇ20)`m T`er~T0GFxtX([*[Bpd'/fDV"ۢ:4< 1  C:$1( C,0418 C<ېDH1L CPTX1\ C`dh1l Cp;\t̂J I<:ܤB%t&u.r5LQؔFSOf:8c:^( 6B'E'C 9 FN GZ0G\0 F0V0EP0 D(Jɗ42(6ʤ|,)"0:Խ-a hLg85j)F!CQ$ D2d5j(PDCQ* D45hj)GCQ! D&L,,5Xj.KaQ D\5j/pIjNuC}"a|}avf}a a aavfffffff-""$$&&((**,,..نa22a44a66a88a::a<>avBBfDDfFFfHHfJJfLLfNNfPPfRRfTTfVVfXXfZZf\\f^^f`bb0dd0ff0hjjllnnpprrttvvxxzz||~~ه}؂mmmmmmmmmmmmmm#hӰQCPsAY^B"RӨaDgu gR``#QyH#8p""Q~FϺ IJLq4GDq4G.MѤ 9(c=$9y\9ТX("b} &NM,vJ /я \Q??`L4̪tqqsZondnj/bs'A'⹊Ab,ZlRtZrEQv:p Y"ިNo$۾!q2SewSoftwڒOCŤzeV*3.01 Coma/Keys#5 ~ 1JS2StF%%G2$Eؤ_U"Z S=g(3bRH$i- G$F4ҙKcle0"q M5~|ShiF5-F010.ᓔV1-6Re4ectivelyNR9Į}zz (BIO8 KIDO4ODGOGNI9 XO:b tDx-@O$gnvv!y="v v̭Ix-4#'I4J.Kz'A%AgO 'bKĭ=9Drx 6ODjOErxF=Dz%B'"^gD_=z-@8]7>r xQA9 Ģ8c"<14l[fQ< 4pB4~E36Ls?|1bi;_l_l6A&zJO,z 0,,z%%bREǢ+D]k㰼V*OD؞,?Q ,AnCt@؞O!$Ka؂]K1D ǢgDO%@i؈;)3X Dc('xH1'3tF؟)blD2e EO*L^OD"yhz%D؜]A OǢjuHNR9Įx6=~"DYLjn2XO'xz"<"x"=rIbu<ឈ=[#lDJx-$<葌hӱ !#DelDx/("Km<؊OQtM X='olAؗ5#P#|*#X1KD6ZB]̕n"X& QYYu^X#ɸa&S9; # /(h2aW\pB8R~rr\(!08bkHPX!`hbpx!!Bhcc/QNumnmlkjigeca_][XUROLIEA="TI:741.+'$! o !$'+.147:<>BGHGFEDB><96p30.,*)('()*,.0369=AEILORUX[]_acegijklmno{p{qyx>+uO+s/ߠS|W=Oh_it5NtStTt>^X]}=O(v4&+vEjgP_j= ʌ|x)| >|Ä_03ŢaSOlhf]t.2pNu/Z$ZG"D~PbЫQЫQPPTbPb鼽@V]{$*a{`Xe$UI;D>.ƺ"fn(K|ģZK&6/PH]SPACEY,9öhWAWHI=3ebO,i RGWah2džgҝF*- Q?TAc_HAnB+}V|FJO4YiNrUClTAdn$a)COMPh!MUQAXIPR8:\کO6JmP$,g=CG3DMDL,jQOF>KEYBOARv -4TRIKCx$L 6THdONA#`ߟ8Qސ?㿳acepck_/a0X6WG8 BMH@nGHfN6IElyOw 6…[9lTn 3J7e'0T ?3Nb w|$QE/ cp NA^QH|Q\_gJ0PQdNq,~|!Q:,3tX0>M+ |c=Og h=}|pT14WK&|4mhSF'pq9.7ff:RFS O{ԩF(-%#p4R^pFeC42/C?<oN\Nu1H$A~8۱DH1LP1TX#Hr. )|fs lxÈNSfLJF%NMK'rvGɭOQ7fNxM:QNˡ; ݤ&8 \Q"$J'r5".WFJ<c ҧ:UQQ:Tq}D$`=%JHt' N0 1ϗFXu EЬ(eYs4js\PQQ:'ܦ'ܧww+9Wɨm0?D3(bb!Ri[I/ɢ hb=ZbyHLoֆSgy,GH+T1NnUq/gyxPT|X#/ł\X(9_B\9O!:D#N؋_90Ns8 %wiwdrt_4f]em_huP:g.fȊtzFG fahG gvrimbldhardba|Qlcp FluB:yn_ut54mightm@ag,p3j>tquantuFd>VrQ10#*igue edh p eYUn\F1ưtbac2S FCg_solYQucyLcsystem5TtrpJer&*u3_c esSOvdo{worldgam.swrfEo{~ud EƔY4HU꤇*UAD%Ρ#ʪG^GQ&#*}DžjG[P82 $9 " 2B5RbjAdqub*RrC DER49A7'd?2 : .0 ۠P`5 2 : pq2r s tu2v w gW2G:,"{D蟒H⭱_$|B~ב?%E&XDtOxqerj/N5j"Ѭ6^#y^)cUrD8 YtXR8Rxf¨Kǧ#yd] Rj^(khJbqD)|+ߊ]$)1>1,TX-)4FK XT 4F#qbR)Kr_ sM/+'YJ hmE/49LZLCzqb4p1j#RP jI4)|_BD)K SaUx43J > L)4>"&%* GdRx.,'(1ŗKR.)aK⨎"ZW_Ex,2bgD.^%ذY"X6K/eabat'(΁w šbPZ H_{x -D׊G]Is?C0WQ2j!ӕx+zg/aWI'ļVZK."OfD,%s'_@JC㇃ROhK>̇++Xdl_]gO!ENZ:,vÑ?xE(dY&0;r-Ab"x/4 PR؍I'T]3)lF17%=./xh4R|6:KI}NQk*F?_X.D0ɑpgÎU<Y$a* )< x?0'<E.*-I5x\Cp0RR=f*4}?"^)tHO4X^ _./3$])ešx$?"E&O!,D?R`0KU8?>$Z\i,zx?x 1IOj,RyB5I_4I>U^Ge(gFgD1H^4xDLV\]|)=R&$)=˼4)~+SF?eKRJ ?24 x>lL}l)b >)(,2E.,w))"?(}]IOXQ@"?? z NH@! @53@!<}dTo^=$qGĐ n b^~u o I zH#$Lm$#i @3RG-{?t܏T^=$ <BLm$~"4@X3RGw+>Q@"?? z zHJ1.;1Qd,m$D~ @9 JHGL5'Q'$CqH zH=$x>1Ԑ f ܐ1FH zH=$~jC ߈h='6c#$D~ @9 6ꚻ\@:>G$фAH?|@ >GDIbUࢼ XGq D~ @9 v~UQ` @5S@C@GGDIjW/C]ݠ@=kg\߈$zH=&BT&0T^@=kg&Cҟ@GzH=$3>pP^(D#{IƀCBqk礀C+ECs|*~5-$#@9 ۵ސ}8~_*  }|@=kgC&I0DA'?|@CҼJuTT~vՙ"lzFU @53@!pl I Hz1b/IIC (̰=P z @53@!x\6$$F)$Z=${-Cw}jL6(ܢ#*zH?x+~!'$F'''V"z bԐ~lk[ 8U:@!(տflD(J?_=$x?(o?s$IH)$]7?f?l!;_wCݵ&~- kgC*[GB1 ?t^H#$g~g *|J(j3Dx^z/VD~x=?|Dh2@!65C3_vgD?w ~}!ςPCpB$R?,@!{|C3VCtN(B1(+`zH?p*!?C?'>$OV@!/CWgCxyx?{DAPZ(?CH-$[!$vCѽCM>{|D_x:?>UCTD姃XB #I!߇x{ {}=|mBH-~{e \GUz{#xECQ> Ck }dC@ޢ!Dտy#^e PAq~J,D>j?CEC?$’@!?D<CսS|dϯuψ;Ffz=#vx.CqvOd GuDq?ƈcK!%`l?z D~UTjC|$F#d4 c"?!{_<Cn{0wbF=W4w!8yR>x! $w(;$~XCh7V?'Ec_qc=uoc1%c>~ 6mɟ_%Barp>L7/he<@ʼn"|DeY8DmX,B $O<}2c;qƢ l2v>0YdObN+=cD#6QqxmlN,Am\Aى8G-X1I'-B1%qq,8GZ$?ލYɨڲS.1;юbtAmI'ڤc)*tlI;_UF1h Iʤi*##xBI/H=FThϴQ*~ K & R Q:3Eǣ3&!WFbBK,/H6FTh #%I/~ K ?U IcIRb -h,A>ޒ*y->A`H8GХ☔S9ٴ^!+(6eI]]c]1.^b^<#20^DD D`)DDD D`)DD@ڴCD!E v CCĞ1 C6]Џwl)&SUd14J_W_k{ a5=oIGk)"1SE'qq@ofBL$)xWF+2I2,iQL0%F3(t|#hSQBI=r~GyCn[4)x6Gݢ!C9PR abd ^EK?UCIxjC Ws>__ &頯.Fz$UQ~|tFDYE:Lkb؎lKayMAX(RhBZIPOIxCQ UKoMR hL9G^4\/>|oȳV_vŭ#yZ6_l^LklLWx/vcCRAZɑwbb'$/FԐWyK窓Q%Jl X؞r̋M(["/җH#)rLȱ~=ɚ].ɖ2GLzSJz4 pABEERC7aSP"G)RBUS _RLN6M~EoZ +Z/GGU.KIMUN{4j)p0_F/ٝiD.SA,OLDHYtS݅6`Hڊ 2P9J PA5WOś'Тb FRULI1ȴomB"hJU|=SAFI\zXţTUZJOYNQSP:K)~-KLI0KtQAVOUa m1TdMU(tvuDɞ>a_YPyN)i;_W;4G_h$DytvLvG 2v-! vg>"ABOTRY0+׹CnkTEXEQUICK CL@U'YKSGEIqRZYAR?E*"prb7I3B AZDY /mLEAZ+AAT6]KWIUTIFM[*ISHFNPOZG5BYF2*M,WE'SEYOUAG.TOMOoROW .+KE2aWF.aH~/ x#_CL5 Ţ0CI^y Wñ{?F(?X9 *<=iB~OYUQb]IGZ&pi t~IY|$܋1h_A~xLC?!UFщ(=ҴHNB§4@{*RNyh*zj'& x0N: q3TTrL!}cd*Җͳ< UX-ܦ}bPP<*\uW'YdqD*m:WFPB?lUEƹ2/~kw~~&~|>xhTPV} h,:t*Ѕr$A)$"4" !!b!b&&HC1 C1 C1 C1 C5Z!!!y |cJXq/a?-Y.&WS& TWfOFCPORAABUD} jTdFISKNUMBS2oMcD#J5WxpDT'SE-C4fEMYHUR'Ec>FTZrS$1GFAAr3ZGb~BLzB1HDBAQLL}t}MP@EOP(DrNthCNC^zv.MIGH!1[MAGIBI8PCJUYL[4dAjUTTBOX=:5;RISER@UK>0G-VI U IPCEDITZSCONQUZ1 4Sv>##v^ Aa"ѴAat? '$O(i|=[/0Df)DRђ,1AnRoQ@V4 tCK1/KDNђ |`~/A~C~cOVbx؃1I%, 'yZ F&1E +sK$z$>u\,4 -s&' &tAo-&z#ZA'}RF}!~1QVx? Ǘvf#@M$w#2XdK^۾-DW$8XHGQZƢ@5xS3HΉ, z=h~0Zmt rd%a#qz'0w TLn~~ 'QXJg tB| DZ D/?d=?,w Lb5adB# SŦAou$&X4#TZ hވ,68 tD:fAx b@rضQeb6O)ʋHQt>!XF!(AfY$[DX-@|@\?|Mx^1ŝڈQ=(z$}E ~wY$sj lN9D2;Q7?@,A>=^5ǑhC=[?Z%e`Xş'N ix_.G=YOl҃ =8>8?/"LM_QEK,2z#99$L =|~O/Y$9<h"qi )jY D??tz> j?#XAgR$đׁO|U+Ǣ ||@ !hO?ᝣh"!>1? Z)P:zaF Œ XN0!hפZ TA.?+?'E?X>b~D??/D"hD誛c5Q4 bϤM| \V*|k6[J؃pۏ}1^<x6Af\rQ%q5/^uE$/?:Q`-Q\Hg]Z?йl= 6O &BO?Q 4 Iph~y? A7{1 , |OWuC0ƎbڭxZ3m Iթ2,{`$=?qMwQB< +BsF1,dqH-R }>|1? fT0.epYS,0L l2P*9ia(tH,~cJ2 X8, p4gy8?7,gwl`610À[LTC2[fWz`£<$~ tp\>idxH8/`F6g`-?rhv࠰Lp=R tN`[uBaCA%:bV#" 6|x(dOp8v|&BK>")E`c ~qP?ww:y 7H?B_8 p` ;L? 0PP`0O)>6JɆ!_ B")$6{YhW^7hB:X{(S P& |ak=۠[$y8ى pnO,0 K!˹`_sUaITˏ:xnnj3r=KD F9cn ݎ]]" X6jx-_&??qp q1du]Bqyi7_!maM:[3`N Ddn:-p>:z Ѵ3A>py?eU 9rY Y{4߁`[o 0Q>J }D?M>`O@b >rH7X~ q 4J,O-?, 1dW{2~np,~ G4<̇Kҟh>jx &T@D ,x"o~GT M;k>QXd{W-Өc+PuOb`,`)0`}0(g+^ K?1pBFA&p+mud} =ݐSNu?Ol;D3Dy:B?b!_?W\%5eQ,@x"F-M=3?(uKÛ.yysf 0.N݃|TA?fJ1 gQ|ƾ>`# y!? C|'΂ 0_cH \>v?`PPp-|)s',>Y,X/gF; zC>?`|cyXs<1,?MLV)0=|'Q`i^wVB#xz#Zh _?fUO &?// (yKa@}cy~`wΌ1*-- /UL-QjgS,9OƁ_Q40q xV7?CV#wg;szyyZ$/T#l;׏?7?;#ibs`/l;(C3NJ  P/<6 L^_?P`֏GgZ]i!7? 36p}ZZ]1l0ρÑ]>Yj1z9H\̏R1=y8#HаHqR;LBÂp&K1ҡ>X N{ N?:P/݀~ DAPLSH`r,a~|wMy1oJ[bx-Q> qDÚ{O=F`u*;yx`plT,h·0,-Y-~VFB׺Y|bOp;O&P>p7{PϿ`a"̓q js X,XM߶Wx|yé&?!apA~,ҥ9? BG98?aA~@EPj炥~A;8 d8:Ff璟]`|>v?\~L g|ܥ|#ߐc S L8]n W>OY?~_>GxP|` ΢ )9`~?ǝH _?߾?ݰG5=3x4>/x ~Y}`Ţ ٬[wyej8a! mwQ=+뾡"/><g?p?㗍b熿GCr XLi0H¾1=j<¿Q6>䮼Wwϧ? ǔ?kfwCc?,} p )196j<ĞR `û, ;*/¢vo`x3l#Byx<,l}??yQ`=x.Nt1;x0\O8w8{린LiMix~x<6|~s {E㨌^'=`09>m|q+*LٵuWv~6$U{^ ~?~qj$t>b6 ҬRQx.k]; 9Ggx3cYWyϙ?^UT@މypv-a8h`]}|܀??;pt<2 ~;mcC}PE)@exW1]]vlol B m g| ݢ ~U l`pP[% zÔ~_?…_UsOvޏg">Z`f ˪:_gd'X~^àՇixHH;zp"Ap( kpߌ0,gh!]e^]Dx?yw AaH88Zx >fQ q-Yf? F%>7q>?#ƥ'`Z8@,qdž:5 t[Tuc| |ٗ/J)Է^g;fb߁dBv<{{s<Fb|W2-נFWx~ /1?4H7-ƻ漽>27WNA6Dx^EʣCY)W;X|s; c>?1mCv$vp 6 ^aӸ-?9 tt|q};?dU>`-GQx <>.(..A98_ so opXT,ncR$<-TpC+^n z,<#s- Gp))ǴE..rqWG>-9c~ Q8+t`㍝ϼ9$H)7&?7lKnX$KecK?]g#YchǮrq ?4Y$a?^YkF/Js$JQ (Y2XӤ 6t'wϨQ `:++Opd/`L3B.,G%"Lx0ip&,e0r, @(^xS΢jð-Oԫ4p ܞepG.a9H^'7,?x[L~8prٚe`Fxf#w;l`Zt&oSp8 xQTK=pGx܀=-q<7F#{ؐ)fGzFdoi|`(E76f,o#xÿǷ87yb ''-Hd13 B!P|dl!N}] :u (J~BxTqxV(0Y>]BķHq %{&1#3EBKrw1Π`8; Qc( <# _ S>34\$qW`#0I0 ?>d[R<#CxGjΞq1`v+ʗ>6?`C?w{6 ##j*#r 0aQΎz_?? G:8'\Ѕ2'̀DU):BŠ#k>xv`w>L 0(jnI qNَ&n5J'efPy#2耠_{6|^|a(A4E/ JYTzϩ0VB۬UY3Qks =CٶH]y 鵿4hn铰?5W1ߚsd/Xeg H~Bh *f/##D<IJK5cpg[D L; Sx[Y l1<?g ?%;]*o`6k<`Q;OW0$* ;;?,pf{6Ggpz"j+ ?:?g`Ċ mL-2edb \HL}pMxcS,3fo/~P~_E?G _A<<Đ[A6#:>A'ta<#/ŋ5h>lc{аY!h0)lz8Xnh?_.pB: T,W; _ u XWZ8H "/'`i>RXн| vp;ʼnӑ,xǣ$pAH7i UV  ?)\3 ^",$?o`0Q3Ƕҵ80'/n,1D TAPAAkբ *h _aZ5!:X?A ``CYII_Q|h;Ԭ+SR IC6AnjVu+>2=_AX )$ q0DIQ7^LIj|@tFRAa?E [Ũcr ׂ q6^8$iђ |9^= E> xWҋmXp7ӿ$y Z[B15BZx/`E4S |Gm#YD+vpZev56Ɂ\^KiuB1 )d _ K ELDVDi=0# 151hH5#Z!|ADNދQEwubx@jS,=(a#hc$-1z>!+f X5Z><ZAޤFK42-r@x|[bD/# DF# D>/Xdb <菢 Z#D#.- $if!8A1h"1*F1EoH4j#[⥏{$ps$*_;W4 ~0Y7Ű"",EehI!~!D8ֈF1l9#aD!F"DIh]?4~$6ƄOC"Al D>Xbz-An!Dh6FOAPR7Dp#$"h1g*DXD?b)D-`=A^ d/ D{'+kDA^?HGH{߆ ] 'F 4chTZ ?1n!]/Kz"V @P/I ) g BxcQ$?F3(RcAax_# YגOD}ݏƱxLĐBHXb!' BhۣMGO% `vH[ A>pz-EQ}&1f8Gl<`RAo$1 㗉YmTgcDZ!NAo4@o,b^ 4mbxsAWťC~"vJZ"@>EjN,wkDZ_$1"vZ#pIw%xqRK#Ao*KD+_`XF A~-/;~H-F!E/Dq>{b)|Gm -5DPQ&DPȒ g먰YcRH8ťG'ڱ d$c '?YY[DdE$jJ~-*2[i#E?xZ-F 0P1 D OxbH-[Ê@"$F "rO&İZKxV"z9̵hK""C,c?Jbg4n!"cFr@h21 Xeqb6Ŧh$ޤ t_n9KFGɦ &OFqQL['EI,*A4#QbEdGkZdbn!F1b6ǝ,Fy ?ı*$O-Xd#)? Y7DxjQec ,BIg<h[?jH-{a_MZ,X,B "Z#D#3[ nbYtXwR L&4L=XthQOE)&bf Iǣ3Ĭ0?_1 K<\51>:c;^/|HS< CFL}8D1_GPO=< PQ<,~H " (z>(R.G ,v0 <0&-MC G|;Bwf`A#Gb]LH z>:pt1( Ƶg(f`(&X4UVTf4$PrwHKj xE *B<&&z`TK U(]Y"&f.lJA`|d8Qy&IJtfk CkZQaƇ/qopKD$^x%ba=E؆&Nu~ag!j tDe$Ybf`r0,}|z"1ELoh ; J(R dB8r ,Df7"zb/!"Rx≚Z*NMfG)Ey>>f`/*rF$&f W~`< 6fV^e<Ū:Nq&^+0;*RMsfL3"l feTi# `60gf)\Fy?[3!`Q-Rb,k?:,C`72l0 !&*Tq/fmPɕ`. @f"&ha\+j b:}D c`VCXgqrD.9  Cj.JQgS`V(̜Jj"aSf&T@fAduj`Ҡvde,u'< dvA#e3AdA G.=bW~Y2bH$a8v @!B8HBB`jrmNu.΄,`R pCpEt &hgs !LIl]03Ht!01ēCP.!jh!*dQ* 4ߐא!@& r&Ppj08(z#.!L"BPe&*&,t+k$< jf+QVUg<-&h8>QȘ(.0-Bhg42:JB.tAzKȏ'b!ES|zp C_<Re t|.`B6Z61 $zl`!JY!E)0B (RA;QSNuyEg+4V(gMW]:= WQk" &*}S)0͢.luŐ Z+DcL AN~3}":ЉWXPFaH62,ډ҈bʐНJW9 M / gggaw GG'''p'0S#ѣ}Y8{eQ>,3^ȭ۟m~mwpjdm^YMOKmGC?;m852/m,*۾%#!&MmmVQFTFMXm(nC @iBkx:jZ' t@5哅@h NGY~OH旐C够`z䚣@i@H)_tO K=6"怎 VA@$(HAHg   8 #@<#y y3U |1}"f6    UUk#&)U-3U45U67U89U:;VGXؤ>oL5ҩ~@]1ӁDƐ)0bT!R }; `45!Q"zs vj ( GiM8 HM D  ߰̀w ȴ O )N☇D M x |X^KH B7CvRLjnb v48n[(W J  ptݤ8">?!qT^Z *,UtNpx  'GTW:\sj pb.'D~"d(^H\Z "K rE]#0D40@S DH;f?K1t@#).ⱾH$ (_I1H(*<[$rKb1tA-$3 cMZ,@eI:0R' gDIxeDfytG@dlbM $b j3 : *$ #62k& <%,iq31O3 iT\Ǝp у$ؙ*fI*f98 <&lJ$h%Gby L%lL#( (04C 6#' gLh6̞2aӥ $%&!#" uIB tIA sB,rDq1 Np;q`$0P=s{%XP+7B0J0bc\I&6 HV#ۣ>L9,,tM} Ŵ< Rj5h  tcԬZv/,8 (G/c1XV/*NUX/1uPR{jLsQQ$je =di' 60 y $0 eec0 *0 s.*/E Y &D& B *,z,y:7((Nt|x "2 q#QEV" ( . 8}>$ G+H~4N 06r &O3>ڀI^|)l,m"v &6( z:R> N**  کdglAId)POPI,POPISewer Software presents......a King Tut doc THE LAST TROOPER Climb into your camo gear, load up that machine gun and go for it! Feel the adrenalin course through your veins as you escape from a prison camp and battle through the enemy's defences. Are YOU trooper enough to destroy their base? Loading Instructions Connect your computer and monitor together according to the manufacturer's instructions, put the disk in drive A and switch on. Last Trooper load automatically. Leave well alone for about a minute, and you'll be treated to a rolling demo of the levels that await. Controls The landscape scrolls diagonally in four directions, and there are two joystick control modes, toggled by the J key--try both modes to find which one you are most comfortable with. In mode on 'e' movement is achieved by shifting the stick left, right, up and down while in mode two the diagonal directions are used: up/left, up/right, down/left and down/right. Providing you have some ammunition, the fire button shoots the gun: holding fire down for half a second while the trooper is carrying a grenade kills all the enemy soldiers on screen. M toggles music on/off S toggles sound effects on/off P pauses game; fire or P to restart A aborts current game Objects The trooper, hard though he is, can only carry three things at a time. Walk him over an object, and if he can pick it up, he will. Food, which replenishes energy, and ammunition (useful for killing guards) don't count amongst the three objects that the trooper can carry--they just replenish the corresponding status readouts. In the later levels, where bombs have to be placed on targets, all your man has to do is walk over the appropriate spot while he is carrying a bomb and it is automatically dropped. Look out for the lightning symbol which appears from time to time--walk the trooper into it, and he becomes invincible for a while. While the enemy meter is flashing the soldier becomes super hard, and can walk into guards, absorb bullets and stomp over minefields with impunity. The Game Objective With little more than a set of designer camo gear, a machine gun and three lives, your man has a mission. A mission to escape from the holding compound of a prisoner of war camp, fight through the enemy's defences, collect up bombs and sabotage the bad guys' underground HQ. Life insurance is difficult to get as a commando, so to really succeed in the mission the hero needs to plant his explosives in the enemy base and escape before they detonate. Level One On the first level, the four strands of wire surrounding the POW compound have to be cut before the mission can begin. Four cheap Taiwanese wire cutters have been left lying around by the guards--they are only good for cutting one strand of wire each, so a couple of trips to the same section of the fence are called for. If the trooper is carrying a pair of cutters, nudging him against the fence cuts the wire. After breaking out of the inner defences, a key has to be collected to open the steel door that leads to the outer perimeter wall of the prison. To make good the escape, trooper needs a rope to scale the wall, a passport and a disguise. Clamber over the outer wall with the rope and go to one of the orange squares which lead to the next level. Levels Two and Three War is hell. Fighting a war single-handed is really hellish. But that's what you have got to do here, taking on the enemy's crack troops as you attempt to penetrate the defences that surround the objective--an underground bunker. In between dealing death and dodging bullets, make sure you collect all the bombs on the way--without them, there's no hope of destroying your target. Level Four A welcome dose of R and R awaits the trooper if he can pull this one off...Bombs have to be laid in specific rooms in the bunker, but some of the doors are locked so it's off in search of the appropriate keys. Once the bombs collected in levels two and three have been put in the right place, the enemy HQ will be destroyed. So will trooper, if he doesn't get out in time.Sewer Software presents... Some Doc's and Codes to get started for Universe 3 You CAN NOT carry more than 10 items at one time. FUNCTION KEY COMMANDS: F1 - NEW GAME F2 - RESUME GAME F3 - SAVE GAME IN PROGRESS F4 - SAVE GAME IN PROGRESS AS.... F5 - CLOSE GAME IN PROGRESS F6 - DELETE GAME F7 - SOUND OFF/ON F8 - ANIMATION SWITCH F9 - ABOUT UNIVERSE 3 F10 - QUIT-EXIT UNIVERSE 3 LETTER KEY COMMANDS: D - DROP OBJECT E - EXAMINE ROOM F - FACING H - HIGHLIGHT OBJECT/PERSONS I - INVENTORY L - CHANGE LEVEL O - OPEN/CLOSE DOOR P - TRACE PATH S - STATUS T - TAKE V - VERB LIST W - USE WEAPON SPACE BAR - PAUSE ARROW KEYS - MOVE/JUMP You can play with either the key board or the mouse. some code words are: WORD PAGE LINE CODE WORD ----------------------------------------------------------- 1 4 6 PLAYING 1 7 5 WORLDS 1 6 5 CONSISTED 1 11 2 USE 1 14 5 WHEN 1 13 2 LEFT THESE ARE ONLY A FEW HOPE THEY HELP LL A King Tut doc.... VOODOO CASTLE Part One Ah, VooDoo Castle! Nothing like a little spooky stuff now and then! This time around, you're trying to remove a nasty curse from Count Christo (who is a good Count, unlike Count Dracula, whom you polished off in the previous adventure). The game starts with you standing in the chapel, next to the Count's wearing a sapphire ring. Take the ring, then go West to the ballroom. Enter the fireplace and get the idol. Leave the fireplace by going South, then clean off the idol, which is your source of light. Now go East to the chapel, then South, West, South, and East into the armory. Plenty of rusting old junk here! However, some of it is still useful, so pick up the shield and the sword. From there, return to the stairwell, then go East into the Kettle Room and then North to the room with the animal heads. Pause (paws?) here for a moment, and move the heads (that's what you need the sword for). This will reveal a safe. You don't have the combination yet, but you will soon enough. For now, just drop the sword and the head, then continue onward by going Eastward until you come to the lab. Ignore the Ju-Ju bag for now and get the chemicals. Don't worry if anything explodes, the shield will protect you. Once you have the chemicals, go West and drop the shield. Make your way back to the torture chamber, moving the kettle (when you come to it) along the way. When you get to the torture chamber, mix and then drink the chemicals. ZAP! You are now small enough to fit through the tiny doorway. Go through the door, and pick up the saw. Look at the graves, and get the four- leaf clover. Return East, then go back to the chapel. From there, go East to the huge stone door with the sapphire set in it. Sapphire? Hmm, does that remind you of anything? Yep, sure does! Wave the ring, and the door disappears to be replaced by a tunnel with a slippery chute heading down. Drop the ring, then slide down the chute into room below. Pick up the plaque, then enter the hole in the wall. VOODOO CASTLE Part Two You now emerge into the Medium's room. She runs out when you enter, but she will return if you "Summon Medium", and will make helpful, if cryptic, remarks. Now look at the crystal ball, and you will be magically returned to the tunnel. Get the knife, and go back to the chapel. Drop the knife there, then go on to the stairwell. Once at the stairwell, pick up the glass, then go East to the kettle room. Since you moved the kettle before, you will notice there is now a dark hole in the floor. Drop the idol, then enter the hole. Read the plaque, which has the combination of the safe written on it (the writing is tiny, so you needed the glass to see it. The plaque itself glows in the dark.). Once you know the combination, drop the plaque and the glass. Now get the rabbit's foot. Even though you can't see it, it is there, and you can pick it up. Climb out of the hole and get the idol again, then head along North to the room with the safe. Enter the combination by saying Turn (first number) and then Turn (second number). Open the safe and get the antique hammer that's inside. Now you're ready to tackle the fireplace again, so return to the ballroom fireplace. On the way, stop off at the chapel, and put the rabbit's foot on Count Christo. VOODOO CASTLE PART III Saw through the grating, to reveal a button. Push the button, and a giant fan sucks you further up the chimney, to where a chimney sweep is stuck. Give him a good push, and he's free! In return for helping him, he gives you a piece of paper with a magic word written on it. Remember that word, because it's important. Climb back down to the fireplace, and then once again, go to the stairwell. This time, go upstairs to the parlor, where the Ju-Ju statue is. Say the magic word from the paper, then go back down and head for the laboratory. Remember to pick up the shield before you go in! In the lab, get the Ju-Ju bag, and make tracks for the tunnel with the chute. You can drop the shield along the way, since you won't be needing it any longer. Slide down the chute, then wave the bag. Voila! The little crack in the wall is now large enough for you to pass through. Go crack, and get the torn page. Now, open the bag, and get the book. Read both the book and the page, and make careful note of the ritual needed for freeing Count Cristo from the curse. Drop the book and the page, and get the stick. Go South back to the chute room, then enter the hole. Look once again into the crystal ball. So, here you are in the tunnel once more. Hang in there, you're almost done! Go West, then North to the room with the window. Go window, and get the little VooDoo doll on the ledge. Go back South into the room, then return to the chapel. You now have everything you need to revoke the curse. Following the instructions from the magic book, complete the ritual, freeing the Count. TA-DA! You have successfully finished the adventure! Now that you're finished, how about a little vacation? In fact, how about taking a Strange Odyssey.... Covered in DOC DISK 1, but here's a more complete version.... ENJOY !!!!! A very important point -- In order to work, Disk #2 must be write enabled. If not, disk #2 will not run (crashes, freezes, etc.). ================================================================== WORLD GAMES WORLD GAMES challenges your competitive skills with a series of athletic contests for one to eight players. The lineup of eight realistic and colorful events takes you on a journey around the world: RUSSIA - Weightlifting GERMANY - Barrel Jumping MEXICO - Cliff Diving FRANCE - Slalom Skiing CANADA - Log Rolling UNITED STATES - Bull Riding SCOTLAND - Caber Toss JAPAN - Sumo Wrestling When the WORLD GAMES title screen appears, press the FIRE BUTTON on your joystick to load the menu screen. The WORLD GAMES menu offers a choice of seven options for practicing and competing in the events. To make a selection, use your joystick to move the cursor to one of the options and press the FIRE BUTTON. You may also select an option by typing the corresponding numbered key. OPTION 1 - Compete in all the events Compete in all eight events: Weight Lifting, Barrel Jumping, Cliff Diving, Slalom Skiing, Log Rolling, Bull Riding, Caber Toss and Sumo Wrestling. The computer tallies the number of medals awarded to each player as you compete. To enter your name, type your name on the keyboard and press RETURN. (Or press RETURN to return to the menu without entering name.) To choose your country, use the joystick to move the cursor to the flag of your choice, then press the FIRE BUTTON to make the selection. Repeat the name and country selection for each additional player (up to eight). When all player' names and coutries are entered, press RETURN. A verification screen appears. If all names and countries are correct, select YES with the joystick and press the FIRE BUTTON. If you need to make any changes, select NO with the joystic. OPTION 2 - Compete in some events Similar to OPTION 1, but you compete only in the events you select. Use the joystick to choose the event, then press the FIRE BUTTON. The events you select will be displayed in white. When you are finished selecting the events, move the cursor to the word DONE and press the FIRE BUTTON. OPTION 3 - Compete in One Event Similar to OPTIONS 1 and 2, but you compete only in the event you select. Use the joystic to choose the event, then press the FIRE BUTTON. OPTION 4 - Practice one event Use the joystick to choose the event, then press the FIRE BUTTON. No scoring records are kept during practice rounds. OPTION 5 - Number of Joysticks For one player, plug your joystick into PORT #2 and select 1. For two or more players, plug in two joystics and select 2. Select 1 or 2 by pressing the FIRE BUTTON. OPTION 6 - See World Records Displys the highest score recorded in all events, with the names and country of the player who achieved each world record. Prss the FIRE BUTTON to return to the menu. OPTION 7 - Include Travelogue Displays the location and description of each event before you compete. Press the FIRE BUTTON to select NO if you don't want to see the descriptions. Select YES if you would like to read them before each event. *************************** THE GAMES ************************** WEIGHTLIFTING The scene for this event is Russia, home of the best Olympic weightlifters in the world. The Soviets have ruled the "Iron Game" since 1960, when 360-pound giant Leonid Zhabotinsky squashed his competition by hoisting 1262 pounds in three lifts. Weightlifting is more than a test of strength -- it is also a sport of strategy and style. The "snatch" and "clean and jerk" require timing, skill, and determination. In practice rounds, select the type of lift by moving the joystick FORWARD or BACK. Press the FIRE BUTTON to continue. In competitions, you must complete the "snatch" before competing in the "clean and jerk". To select the weight, move the joystick LEFT or RIGHT. Press the FIRE BUTTON to continue. If no lifter wants to increase the weight after a successful round of lifts, the judges raise the weight 5kg. Press the FIRE BUTTON to begin the lift A total of three attempts at each type of lift are allowed for each player in the weight lifting competition. THE SNATCH Several up and down joystick movements are necessary to complete a successful Snatch, and each must be made at the right moment. To bend down and grasp the bar, pull the joystick BACK. To begin lifting the bar, push the joystick FORWARD. During the lift, pull the joystick BACK to drop underneath the bar and "snatch" it over your head. To stand up from the squatting position, push the joystick FORWARD. When two or more judges' lights in fron of the platform turn WHITE, pull the joystick BACK to lower the weights back down to the floor. THE CLEAN AND JERK A successful lift is even harder in the Clean and Jerk - extra up and down movements are required, timing is more critical, and you'll need to rest to "gather your strenght" momentarily before each part of the lift. To grasp the bar, pull the joystick BACK. To begin lifting the bar, push the joystick FORWARD. During the lift, pull the joystick BACK to "clean" the bar and drop into a squat with the bar resting on your chest. To stand up from the squatting position, push the joystick FORWARD. To "jerk" the bar above your head, pull the joystick BACK again. To straighten your legs and complete the lift, push the joystick FORWARD one more time. When two or more judges' lights in front of the platform turn WHITE, pull the joystick BACK to lower the weights to the floor. SCORING: The winner is the lifter who successfully lifts the greatest weight. At least two of the judges must give white success lights for a lift to be considered successful. The judges vote on the accuracy of your timing. Two "hesitant" white votes mean your timing was poor. Three quick white votes mean your timing was perfect. TIMING: As the weidht increases, timing becomes more critical. The right moment to clean the bar to your chest is easy to judge at lower weights, but extremely difficult as the Clean and Jerk approaches 200 kg. After you clean the bar, wait the right amount of time to gather your strength for the final lift. Too short and the lifter isn't ready, too long and his strength gives out. The key to leaning the timing is practice. STRATEGY: The key to strategy in weightlifting is knowing when to increase the weight - and how much to increase it. Know your limits and those of your opponents. A sudden 50 kg. increase may knowck your opponents out of the competition - but make sure you can lift the wiehdft before you take the gamble. BARREL JUMPING Barrel Jumping takes you to Germany, where skaters compete to jump over the most barrels in a single attempt. The sport started about 300 years ago in Europe where ice skating was a common form of transportation. In their dash before take-off, jumpers hit speeds above 40 m.p.h., risking painful bruises if they fail to clear the last barrel. However, barrel jumpers keep protective gear to a minimum for lighter weight and longer leaps. To choose the number of barrels to jump, move and HOLD he joystick LEFT or RIGHT. Press the FIRE BUTTON to continue. Your skater appears on the ice ready to start. Press the FIRE BUTTON to begin skating. To move the skater's legs, move the joystick LEFT and RIGHT, alternating in rhythm with the movement of his legs. To skate faster, maintain your joystick movements in rhythm with his legs. To jump, press the FIRE BUTTON. The flag indicator on the ice shows a good take-off point for most jumps. To prepare for landing, pull the joystic BACK. Each player is allowed three attempts. SCORING: The winner is the skater who clears the greatest number of barrels in one of theri attempts with a successful landing. STRATEGY: Build up as much speed as possible before jumping. The length of the jump depends on the speed at take-off. The timeing of the jump is also important. If you jump too soon, you may not clear the last barrel - but if you jump too late, you may crash into the first barrel. CLIFF DIVING The cliffs of sunny Acapulco, Mexico, provide the setting for this dangerous sport. High on a cliff named La Quebrada ("the break in the rocks"), courageous divers launch themselves from a craggy ledge toward the crashing surf far below. To avoid the rocks at the cliff base, divers have to jump outward 27 feet during their 118-foot descent. Diver Raul Garcia has taken the leap from La Quebrada over 35,000 times. To select the height of your dive, push the joystick FORWARD or pull BACK. Press the FIRE BUTTON to prepare for the dive. Your diver will appear on the ledge you selected. Press the FIRE BUTTON to start the dive. To arch your back during the dive, push the joystick FORWARD. Before you enter the water, pull the joystick BACK to straighten out and complete the swan dive. To avoid hitting the bottom surface under the water, move the joystick LEFT immediately after entering the water. Each player is allowed three attempts. SCORING: Each diver is scored on the style and height of his dive. Smoothly executed swan dives score the highest style points. The highest scores are obtained with perfect swan dives from the highest ledge on "La Quebrada", while barely missing the rocks at the foot of the cliff. WIND: The wind velocity for each dive is indicated by the length of the arrow at the top of the screen. The stronger the wind, the longer you must keep your diver's back arched to avoid the rocks. STRATEGY: The depth of the water varies as waves go in and out. Try to time each dive in order to enter the water at its maximum depth. To achieve a better score, try to barely miss hitting the rocks near the foot of the cliff by arching your back as long as necessary during the dive. Also remember, that holding the joystick LEFT, RIGHT, FORWARD, or BACK at the time of your leap adds extra velocity in that direction. BULL RIDING Bull riding is the most dangerous event in rodeo, a sport born over 100 years ago in the American West when cowboys challenged each other to contests of riding and roping for entertainment. The rider sits bareback on a wild bull weighing two-thousand pounds or more, and holds onto a rope to avoid being thrown. When a rider fall in real competition, rodeo clowns draw the bull's attention so the cowboy can escape. To choose which bull you want to ride, move the joystick FORWARD or BACK. The bulls are named (from easiest to hardest) Ferdinand, Elmer, Bob, Tornado, and Earthquake. Press the FIRE BUTTON to start the event. To respond to the bull's movements, hold the joystick as follows: BUCK: If the bull is bucking, hold the joystick LEFT or RIGHT, in the direction that the bull is moving. SPIN: Pull the joystick BACK to stay on the bull when it is spinning around. HALT: Hold the joystick LEFT or RIGHT in the opposite direction that the bull is moving. (ie. If the bull faces left, move the joystick RIGHT.) SCORING: Scoring is based on style and length of the ride. The length of the ride is eight seconds. Riding harder bulls is worth more points. For the highest scores, ride Earthquake...if you dare. STRATEGY: Try to anticipate the bull's moves correctly. Quick response to each move is the key to finishing a ride. The practice mode allows another player to control the bull's actions. Use this to develop a fast response to all of the moves a bull can make. CONTROLLING THE BULL WITH THE JOYSTICK IN PRACTICE MODE: FORWARD: 360 degree spin. The bull makes a full circle. FORWARD WITH FIRE BUTTON PRESSED: 540 degree spin. The bull spins through a circle and a half. CENTER JOYSTICK: The bull bucks and runs. BACK: The bull halts suddently. Guaranteed to throw the toughest hombre. LOG ROLLING Log rolling brings a visit to Canada, where two lumberjacks try to dislodge each other from a large floating log, spinning it back and forth until one contestant plunges into the icy river. (Splash.) Needless to say, log rolling requires great balance and agility. Log rolling began in Canadian lumber camps around 1840. The novice lumberjack always gets the same piece of advice: "never take your eyes off your opponent's feet". You may compete against another person or the computer. When "PRESS YOUR BUTTON" appears on either half of the screen, the player whose name appears on that half must press the joystick FIRE BUTTON. The next player does the same. This begins the event. To move the lumberjack's feet, move the joystick continuously LEFT or RIGHT. Stay in rhythm with the log or you may lose your balance. To slow the rolling of the log from forward or backward, and change its direction, press the FIRE BUTTON while running. Each player gets three attempts. SCORING: The winner is the last lumberjack to remain on the log. A scoring bonus is awarded to the winner based on the balance of the two contestants. A balance meter is displayed at the bottom of the screen. You score points whenever your balance is better than your opponent's. Scoring also depends on the length of the event; if you take too long to finish off your opponent, you'll receive a lower score. BALANCE: Establish a rhythm with your lumberjack's legs; if you don't build speed at the correct rate he may lose his balance. The computer keeps balance meters (shown at the bottom of the screen) for both players. When a lumberjack is off-balance, his arms extend to help him recover. STRATEGY: Make your opponent lose his balance by stopping the log, then changing the direction of the log's rotation quickly back and forth. Finish off you opponent by rolling the log rapidly in the direction that will cause him to fall off. SLALOM SKIING The setting for this event is Chamonix, France, where the first Winter Olympics took place in 1924. Skiing originated in Norway thousands of years ago. Ski racing dates from the earliest days of skiing in Norway, and modern slalom racing probably evolved from old traditional Nordic obstacle races. Slalom courses are designed as a test of reflexes, agility, precision and control. Of course, speed is vital - but skiers rarely exceed 25 mph in slalom. To start sking down the course, press the FIRE BUTTON. Control your skier's turns by moving the joystick LEFT or RIGHT to turn in that direction. Press and hold the FIRE BUTTON as you move the joystick to increase your speed and turning sensitivity (how shape you turn). Complete the course by passing through each gate. A gate is two flags of the same color - you must pass between each pair of flags. The gates alternate colors, so you must ski between blue flags, then red flags. Missing a gate adds a five second penalty. SCORING: The winner is the skier who successfully completes the course with the fastest time. You will be disqualified if you fall. If you collide with a gate head-on, you'll "wipe out". STRATEGY: Shapr turns slow you down. Try to use moderate turns as often as you can, timing each turn to position yourself for the next gate. As you pass through one gate, you should be setting up your approach for the next gate down the hill. CABER TOSS The heather-splashed hills of Scotland are the birthplace of the ancient Caber toss. In this famous event from the Scottish Highland Games, athletes lift and throw a tree trunk the size of a small telephone pole. Cabers vary in size but once tossed successfully they can never be shortened. The Braemar caber, one of Scotland's greatest challenges, is 19 feet long and weighs more than 120 pounds. To run with the caber, move the joystick LEFT and RIGHT in rhythm with the athlete's feet. To gain speed, increase the tempo of the rhythm smoothly. To plant your feet and throw the caber, press and hold the FIRE BUTTON. As the caber pivots in your hands, release the FIRE BUTTON to complete the throw. If you release too soon or too late, the caber may not flip correctly. SCORING: The caber must flip over completely for a legal toss. The toss that travels the farthest distance wins the event. STRATEGY: The secret to the longest throws is building up your speed before the toss, while conserving as much energy as possible. The player who learsn how to reach top speed the fastest will usually win the event. Be careful not to run any further than necessary to build up your speed - long runs with the heavy caber will only sap your strength. SUMO WRESTLING Sumo is an ancient Japanese sport with many traditions. Two huge wrestlers grapple in a clay-surfaced ring, trying to topple each other to the ground or push each other out of the ring. In on part of the elaborate pre-match ceremonies, the contestants throw salt to purify the ring. Japanese boys must weigh 160 pounds at the age of 13 to enter sumo apprenticeship, and today's professional sumo wrestlers often weigh 400 pounds. Press the FIRE BUTTON to begin the event and go into the crouch. Control your wrestler by repeatedly moving the joystick as indicated for the following moves: ------------------------------------------------------------- NO FIRE BUTTON FOREARM / \ | | | BACKWARD <____________|___________> FORWARD PUSH /|\ PUSH / | \ / | \ / | \ BACKWARD \/ | \/ FORWARD SLAP | FLAP \ / SLAP ------------------------------------------------------------- Press and hold the FIRE BUTTON to attempt to grasp your opponent's belt. Then perform one of the following moves by repeatedly moving the joystick in the direction indicated, while still holding the button down. ------------------------------------------------------------- WITH FIRE BUTTON UTCHARI / \ | | | BACKWARD <____________|___________> FORWARD PULL /|\ PULL / | \ / | \ / | \ TRIP LEFT \/ | \/ TRIP RIGHT | \ / SNATCH ------------------------------------------------------------------ The computer maintains stamina and balance factors for each wrestler. Release the FIRE BUTTON to let go of your opponent's belt. The first wrestler to leave the ring or touch the ground with any part of his bond but the feet loses the match. NOTE: The diagrams shown above are for the wrestler on the LEFT side of the ring. If your wrestler is on the RIGHT side, all directions are flipped according to the direction he is facing (ie. a FORWARD GRAB or PUSH would be a joystick movement to the LEFT). SCORING: Scoring is based on reaction time -- both yours and that of your opponent. The player who can execute moves the quickest will get the highest scores. If you throw your opponent to the ground or push him out of the ring, you'll receive enough points to win the match. The shorter the match, the higher your score. STRATEGY: Timing is important to success in the sumo ring. When you perform a move with the FIRE BUTTON pressed, be sure to release the button at the proper time to complete the move successfully. You can learn the timing through practice. Also keep in mind that the UTCHARI is a good strategic move. Try using it when you're about to be pushed out of the ring. ================================================================== WORLD GAMES SCORING AWARDS CEREMONY AFTER EVERY EVENT, THE NAMES, COUNTRIES AND SCORES OF ALL COMPETITORS ARE LISTED IN THE ORDER THEY PLACED. THE NAME OF THE GOLD MEDAL WINNER APPEARS AT THE TOP OF THE SCREEN, AND HIS OR HER COUTRY'S NATIONAL ANTHEM IS PLAYED. CHAMPION CEREMONY IF THE PLAYERS COMPETE IN ALL WORLD GAMES EVENTS, A GRAND CHAMPION OF THE GAMES IS SELECTED BASED ON THE NUMBER OF POINTS AWARDED. GOLD MEDAL = 5 POINTS SILVER MEDAL = 3 POINTS BRONZE MEDAL = 1 POINT THE POINTS ARE TOATLED AFTER ALL EVENTS HAVE BEEN COMPLETED, AND THE PLAYER WITH THE MOST POINTS IS HONORED AS THE GRAND CHAMPION. THE CEREMENY TAKES PLACE AFTER THE AWARDS CEREMONY FOR THE FINAL EVENT. WORLD RECORDS IF A WORLD RECORD IS ACHIEVED IN ANY EVENT, WORLD GAMES SAVESTHE NAME OF THE RECORD-BREAKING PLAYER. THE RECORDS ARE DISPLAYED ON THE WORLD RECORDS SCREEN. IF A NEW RECORD IS SET FOR AN EVENT, THE PREVIOUS RECORD IS ERASED AND THE NEW INFORMATION APPEARS IN ITS PLACE. GREAT SOCCER GAME! SEWER SOFTWARE presents.... Emelyn Hughes International Soccer ---------------------------------- Make sure you alwayz remove the Datadisk after loading,saving and creating ! The first thing you gotta do when you start the game is to select a team The following 8 teams are available : England, Scotland, Italy, Holland, Ireland, West-Germany, Brazil and France Go to the pulldown menu that sayz 'Edit Team',click at the top where it sayz 'Played by Computer' , and then type over the word computer your own name Edit as much teams as the number of players you want Exit by going to the top of the screen and click the right mouse button Click the X sign for cancel,the V sign for o.k. and the ? to cancel exit Now select Play match to play a match or if the match is not with your team but computer to computer you can also press Play match to see the computer playing against itself or select 'Postpone match' to only display the results of the computer to computer match Or if you dont want to see the computer playing click on 'View C. vs. C.' so an X sign appears and you wont see the computer playing against itself Or arrange a friendly match by clicking 'Arrange Friendly' and click the two teams that will play X = Cancel V = O.k. and ? go back Have fun...SEWER SOFTWARE presents......... FONTZ! MENUS Desk Menu This menu is at the top left corner of the screen. Any GEM desk accessories which are loaded into your system are accessible through this menu. About FONTZ! Choosing this menu choice will display the FONTZ! title box on the screen. Simply click either mouse button and it will go away. File Menu This menu contains all the disk operations which are available in FONTZ! A Warning About Loading Font Files Do not attempt to load font files in other formats besides what the menu choice indicates, as this can cause the system to crash. Fontz! will always attempt to ensure that the font is in the expected format before actually using it, however, it is possible for something to sneak through. File Not Saved Warning If you attempt to load a font file, either one already in GEM format or one in another file format, and your presently loaded font has not been saved since you last changed something, then an alert box will warn you that you haven't saved your font. At this point, you can choose to load the new font anyway, or you can cancel so that you can save your font. Load GEM Font This option lets you load either GEM fonts or fonts saved in the N-Vision/Paintworks format. Since these two formats are very similar to each other, the FONTZ! program is able to determine which of these formats the font is in and acts accordingly. The user should keep in mind the fact that each GEM device, such as the monochrome and colour display screens, or different types of printers, has its own resolution, and the font files for that device must match that resolution to produce correct results. GEM fonts created or edited and then saved with FONTZ! include information to indicate the resolution of the device the font is designed to be used with. When you load a GEM font which does not have this information in it already, FONTZ! will inform you with a dialog box. After this, you will be asked in another dialogue box to tell FONTZ! what the correct device is for this font. The default device will be the monochrome screen. If this is not correct, and the correct device is shown as one of the choices, simply choose that device. For more information on this dialog box, see the Set Font Device menu choice description. If the pointsize setting does not match the size of the font for the device you have chosen, then another dialog box will appear and show you the height of the font in points, and the current pointsize setting, and ask you if you want to reset the pointsize setting to match the font height, as measured in points. Load Hippo Font This option lets you load font files which use the format used by the programs HippoWord and HippoPixel, from Hippopotamus Software, and automatically converts them into standard GEM format. Fontz! will always convert fonts from Hippo format into monochrome screen fonts. You can use the Scale Font To A Different Device function to create fonts for other devices once you have converted the font. See the section of this manual titled Converting Hippo Fonts for more information on this subject. Load Macintosh Font This allows you to load font files from the Apple Macintosh and automatically convert them into standard GEM format. However, you should know that there are a few conditions on your abilities to do this. First of all, there are two kinds of font files used on the Apple Macintosh, screen fonts and LaserWriter fonts. A LaserWriter font is basically a set of small programs written in the Postscript page description programming language, and is designed to be used with the Apple LaserWriter and other Postscript Laser Printers. At this time, FONTZ! cannot load this type of font. Screen fonts can be loaded by FONTZ! with just one restriction: The font file must contain only one size of one type of font face. Let me explain what I mean by that. Fonts on the Macintosh are kept in Macintosh Resource Files, which are very similar to the resource files used by GEM programs on the ST. However, these Macintosh Resource files can contain a few more different type of data than their GEM counterparts. Besides data such as icons, menus, or dialog boxes, these resource files are also used to contain Macintosh fonts. To be used with FONTZ!, Macintosh Resource Files which contain more than one font or other type of information must first be separated into smaller files with only one font information for one size and typeface each. Fontz! will always convert fonts from Macintosh formats into monochrome screen fonts. You can use the Scale Font To A Different Device function to create fonts for other devices once you have converted the font. See the section of this manual entitled Converting Macintosh Fonts for more information about this subject. Load Amiga Font This option lets you load standard format Amiga font files and automatically converts the to GEM format. Fontz! will always convert fonts from Amiga formats into monochrome screen fonts. You can use the Scale Font To A Different Device function to create fonts for other devices once you have converted the font. See the section of this manual entitled Converting AMIGA Fonts for more information about this subject. Load DEGAS Font This option allows you to load font files created with the font editor which was included with the original version of the DEGAS paint program, from Batteries Included, and automatically convert them into GEM format. This option applies ONLY to fonts designed with the original version of DEGAS. Fonts which have already been converted with the font conversion program included with the newer versions, entitled DEGAS Elite, are in standard GEM format already, and should be loaded with the Load GEM Font menu option. As a general rule, older-style DEGAS fonts will have a file size of about 2050 bytes. Fontz! will always convert fonts from DEGAS formats into monochrome screen fonts. You can use the Scale Font To A Different Device function to create fonts for other devices once you have converted the font. See the section of this manual entitled Converting DEGAS Fonts for more information about this subject. Save GEM Font This option saves the font currently being edited as a standard format GEM font. In order to use this font, you must include the filename in the ASSIGN.SYS file and reboot your system with GDOS. (see the section of the manual entitled Using GEM Fonts.) Although GEM font files can legally use any valid TOS filename, Atari has come up with some general rules to follow in creating font filenames. The idea is that a standard way of naming fonts will make them easier to deal with. The format for a font filename using the guidelines laid down by Atari as shown below. ATxxyyzz.FNT The 'AT' portion of the name indicates that the file is an Atari font. The 'xx' portion of the name is an abbreviation of the fonts actual name, such as the examples show below: SS -- Swiss TR -- Times Roman TP -- Typewriter The 'yy' portion of the filename is used to indicate either the font's pointsize for proportional fonts, or the pitch (the number of characters which fit in one inch horizontally) for fonts which are monospaced, and must be an integer number ranging from 00 to 99. The 'zz' part of the filename is used to indicate which GEM device the font is supposed to be used with. Some current GEM devices have the following codes (Resolution in dots per inch horizontally and vertically shown in parenthesis): "EP" Epson FX/Compatible Printer (120*144) "SP" Star NB/Compatible Printer (180*180) "NP" NEC P6/P7/Compatible Printer (360*360) "LB" Atari SMM804 Printer (160*72) "LS" Atari SLM804 Laser Printer (300*300) "MF" Atari GEM Metafile Device (254*254) " " High or Low Resolution Screen (90*90) "LO" Low Resolution Screen (45*45) "CG" Medium Resolution Screen (90*45) "HI" High Resolution Screen (90*90) Of course, these are just general guidelines, and you are not restricted to using them. If you want to use other names, go right ahead. However, if you use your own filename rules, you should keep a list with all the information about all of your fonts, and include this list if you distribute fonts that you name in your own way. Save Paintwork Font This option saves the fonts currently being edited in the format used by the paintworks and N-Vision paint programs. You may wish to note that not all fonts created or edited with FONTZ! can be used with these programs, however. Both programs only allocate a limited amount of memory to use to hold a font. Some fonts, such as those larger than 36 points, may require more memory than these programs make available. Unfortunately, there is now way to find out if a font is too large to be used with these programs except to try it. Quit This option allows you to leave the FONTZ! program, and return to the GEM desktop. If you have not saved your work, then before actually leaving, you will be shown an alert box actually telling you so. If you have not saved your work, you should cancel the QUIT and do so now, and then quit. If your work is saved, then the program will exit immediately. Options Menu This menu contains choices which allow you to change several settings about how the program works. Font Conversion Operation This option brings up a dialog box which lets you set several options for converting fonts from non-GEM formats. You can set the lowest and highest characters to be converted by simply typing in their ASCII values. The default setting is to convert characters with ASCII values from 32 to 127. You can also choose if the font name and ID number of the previous font is useful when you are converting several font sizes of the same typeface into GEM format. It saves you from having to re-enter the font's name and ID number for each size. Grid Display Size This option displays a dialog box which allows you to set the size of the boxes used in the edit grid. You can set the boxes to be any size from 3 to 20 pixels wide and tall. Since the width and height of the boxes can be set separately, you can adjust the size of the editing grid to suit your own tastes. Display Font Lines This option toggles the display of the ascent lines, halfline, baseline, and descent line in the font display window. (These terms are all defined in the section titled GEM Font Definition.) Get Device Resolution This option allows you to determine the resolution, in dots per inch, of all the currently installed GEM devices, including the display screen, printers, or plotters. For this option to work with anything but the screen devices, GDOS must be loaded into the system, and the device you wish to test must be named in your ASSIGN.SYS file. Also, the device driver file must be in the correct drive and directory. A dialog box will be displayed which shows you the resolution of each device, expressed as a number of dots per inch, both horizontally and vertically. When you are done looking, click on the OK button to exit the box. If you change the GEM device driver entries in the ASSIGN.SYS file between the time you boot your system and loading FONTZ!, you may get an error message. If you do, some of the currently installed GEM devices may not appear in the dialog box, or the dialog boxes for the Set Font Device and Scale Font To A Different Resolution functions. As a general rule, any time you alter the ASSIGN.SYS file, you should reset your computer system so that the new configuration file becomes recognized by the GEM VDI system. Otherwise, programs will try to use the information in the ASSIGN.SYS file will not have the current information. See the section of this manual titled The ASSIGN.SYS File for more information. Character Menu This menu contains a number of options for working on the individual character which is currently being edited. All of these operations, such as rotate, flip, shift, and so on, effect the entire character. Make Inverse This option inverts all of the pixels in the character in the opposite colour. All of the pixels in the character which are set to 1 are set to 0, and all of the pixels which are set to 0 are set to 1. Clear -- Clr/Home This option sets all of the pixels in the character to 0 clearing the entire character. Fill This option sets all of the pixels to 1, filling in the entire character. Flip Left/Right This option flips all of the pixels in the character from the left side to the right side and vice versa, making the character into a mirror-image of itself. Flip Up/Down This option works like the Flip Left-Right option, except in the vertical direction. All the pixels at the top are moved to the bottom, and vice versa, making the character into an upside down version of itself. Shift Up -- Up Arrow This option shifts all of the pixels in the character up by a specified number of rows. The very top row is moved to the bottom of the character, the next to the top row is moved to the top, and so on. A dialog box will appear allowing you to enter the number of steps to shift the character and the direction of the shift by clicking on one of the arrows. Also, hitting the Up-Arrow key will shift the character by one step without calling up the dialog box. Shift Down -- Down Arrow This option works in a similar manner to the Shift Up function, except that it shifts it in the down direction. Also, hitting the Down-Arrow key will shift the character by one step without calling up the dialog box. Shift Right -- Right Arrow This option works in a similar manner to the Shift Up function, except that it shifts it in the right direction. Also, hitting the Right-Arrow key will shift the character by one step without calling up the dialog box. Shift Left -- Left Arrow This option works in a similar manner to the Shift Up function, except that it shifts it in the left direction. Also, hitting the Left-Arrow key will shift the character by one step without calling up the dialog box. Rotate Clockwise -- Shift Right Arrow This rotates the character in a clockwise direction, using the bottom left corner of the character as a base point. The Top of the character is moved to the right side, the bottom to the left side. The left of the character is moved to the top, and the right of the character is moved to the bottom. If the character is not as wide as it is tall, then the top of the character is clipped off the edge of the character when it is rotated. Rotate Counter-Clockwise -- Shift Left Arrow This rotates the character in a counter-clockwise direction, using the top right corner of the character as a base point. The Top of the character is moved to the left side, the bottom to the right side. The left of the character is moved to the bottom, and the right of the character is moved to the top. If the character is not as wide as it is tall, then the bottom of the character is clipped off the edge of the character when it is rotated. Add column -- Insert This allows you to add a column to the character currently being edited. You will be shown an alert box, and be asked if you want to add the column to the column to the left or right side of the character, or if you want, you can cancel. Remove Column This allows you to delete a column from the character currently being edited. You will be shown an alert box, and be asked if you want to delete the column from the left or right side of the character, or if you want to cancel. Edit Menu This menu contains all the options in FONTZ! for cutting and pasting blocks or entire characters, as well as options for changing the character being edited and the offset value of the character currently being edited. Cut Char to Buffer -- F! This option copies the entire character currently being edited into a copy buffer. This can then be copied into another character, replacing it altogether. Or, it can be pasted into a character as a block. When you cut a character, a message will inform you that it has been saved in the cut buffer. Paste Buffer to Char -- F2 This option copies the contents of the copy buffer into the character currently being edited. By using the cut option to cut a character to the copy buffer, and then this option to paste it to another character, you can copy character to one another. The width of the character is always reset to the width of the copy buffer. Merge Buffer Into Char -- F3 This option merges the contents of the copy buffer with the character currently being edited. The resulting character will have pixels set where the either the original character or copy buffer has pixels set. The width of the character is left unchanged if the character is wider than the contents of the copy buffer. If the copy buffer is wider than the character, the character is expanded to contain the entire buffer. Cut Block to Buffer This allows you to copy a rectangular block of the character into the copy buffer. You move the mouse to the top left corner of the block, and then click the left mouse button. While holding the mouse button down, you move the mouse to the bottom right corner of the block, and release the mouse button. While you move the mouse, the screen will show a rectangle outline to indicate where the block is located. If you decide to cancel, press the right mouse button and hold it down before you release the left mouse button. Paste Block in Char This allows you to paste the contents of the copy buffer back into the character currently being edited. You move the mouse to the box of the character where you want the top left corner of the block in the copy buffer to go into the character, and click the left mouse button. Clicking on the right mouse button cancels the operation. If the block contained in the copy buffer is wider than the area available between the box you have chosen and the right edge of the character, you will be asked if you want to cut off the block at the edge of the character, or if you want to make the character wide enough to accommodate the block. simply choose whichever is appropriate for your needs. Merge Block Into Char This option works exactly the same way as the Paste Block Into Char option, except that it merges the block in the copy buffer into the character, instead of replacing that portion of the character with the block. The resulting character will have pixels set where either the original character or the copy buffer had pixels set. Any pixels which were clear in both the origin character and the copy buffer will be left clear. If the block contained in the the copy buffer is wider than the area between the box you have chosen and the right edge of the character, you will be asked if you want to cut of the block at the edge of the character, or if you want to make the character wide enough to accommodate the block. Simply choose whichever is appropriate for your requirements. Change Character's Offset Value This brings up a dialog box which shows you the current offset value for the character currently being edited, and allows you to enter a new offset value. If the font being edited does not have an offset table enabled, this option is disabled. (The offset value indicated how far to the left or right to move before actually printing the character. See the GEM Font Definition section for more information about offsets.) Enter ASCII Value to Edit This option display a dialog box which displays the lowest and highest characters in the font, and allows you to type in the ASCII value of the character that you want to edit. If you click on the OK button, the edit display will now switch to the new character. You can also choose characters with ASCII values ranging from 0 to 127 by simply pressing the corresponding key on the keyboard. Characters with ASCII values outside this range must be selected with the menu choice or with the following method. You also have the option of selecting a character to edit by double-clicking on it in the font display window. However, if the character has a width of zero, it cannot be selected in this fashion unless it is the last character in the font, or unless it is the first of several characters with zero width at the very end of the font. Global Menu This menu contains options which affect the entire font which is being edited. You can change the special effects info, add or delete entire rows from the font, and more! Font Name/ID/Pointsize This brings up a dialog box which displays the settings for the font's name, ID number, and pointsize setting, as well as the font alignment line values. The range of characters is displayed for you, and the font height is shown in both rows and points. You can change the font's ID number by typing in a different value. The font's typeface is also shown and can be changed. You can also change the pointsize setting to whatever you want. However, we very strongly recommend that you always have the pointsize setting match the font height as measured in points. Otherwise, it can cause problems with some programs that expect the font height and pointsize setting to match. You can change the values for the font alignment line simply by typing in new values. These are the ascent line, halfline, baseline, and the descent line. (They are shown in the order they occur, as you go down from the top of the font, and the other lines are offsets, in rows from the baseline. See the section of the Fontz! manual entitled GEM Font Definition for more information on what these settings actually do.) Special Effects Info This option allows you to set the values in the GEM font header of the font currently being edited which are used by GEM for special effects. A dialog box will appear and show you the current settings for the Boldface Factor, Underline Size, Skew Text mask, and Light Text mask as well as the right and left offset values (used for skewed text and allow you to change them). Simply type in your desired new values. See the section titles GEM Font Definition for more information on what these settings actually do. Set Font Device This option displays a dialog box and allows you to set the device for which the font being edited is intended. The name of each currently installed GEM device driver will be shown in it's own separate button. The resolution of the currently selected device will be shown at the top of the box. You can also set the font to the resolution of a device that is not currently installed by clicking on the "Uninstalled Device" button and entering the resolution of that device, measured in the number of dots per inch. (Unless you click on the "Uninstalled Device" button, you are not allows to enter the resolution.) When you are down, click on the "OK" or "Cancel" to exit the dialog box. If you choose a new device, FONTZ! calculates how many rows are required at the resolution of that device to make a font the same height as the font's current pointsize setting. If the font's height in rows does not match the result, meaning the font is too tall or too short for the pointsize setting, then another dialog box will appear. This will tell you the calculated pointsize, and ask you if you want to reset the pointsize setting to match the calculated pointsize. If you want, you can choose to leave the pointsize at the current setting. However, we do not recommend this unless you are certain that you know what you are doing. If you change the ASSIGN.SYS file between the time you start your system and when you load FONTZ!, then the device entries in the Set Font Device dialog box may not be complete or completely accurate. Please always reset your system after changing the ASSIGN.SYS file. FONTZ! attempts to determine if the file has been changed, but this is not always possible. Change Hi/Lo Characters In Font This option displays a dialog box and allows you to change the lowest and highest characters in the font. If you change the high character to a higher value, or the low character to a lower value, then the font header is changed to indicate the new characters, but each of the new characters will have a width of zero pixels. Also, you cannot enter a low character value that is higher than the high character value, or vice versa. Doing so will cause an alert box to appear and warn you. (The user should be aware that it will probably be necessary to use the Enter ASCII Value To Edit option to access some of these new characters, because of their zero pixel width. If you delete characters from the font, then the data is actually cleared and those characters are gone forever. It is therefore recommended that you delete characters only after saving a complete version of the font. Enable/Disable Offset Table This option allows you to enable or disable the horizontal offset table for the font. A checkmark in the menu indicates when an offset table is enabled. Most characters in most fonts will have offset values of zero. And in many fonts, all the characters have offset values of zero. In these cases, the offset table serves no purpose and just takes up memory and disk space, so this option allows you to enable or disable the font's offset table to avoid this. If no previous offset table exists and you enable one, a new table is generated with values of zero for each character. If the font you are editing had an offset table when you loaded it, but you later disabled it then choosing this option again will restore it. Add Row To Font This allows you to add a row or number of rows to the font currently being edited. A dialog box will appear asking where to add the rows, and how many rows to add, from 0 to 999. Simply click on "Top" or "Bottom" and enter the number of rows. Now click on "OK" to add them, or "Cancel". The user should note that adding or deleting rows from the font will affect the font height as measured in points. You may want to change the pointsize setting after adding or deleting rows from the font. Delete Rows From Font This allows you to delete a row or number of rows from the font currently being edited. A dialog box will appear asking where to delete the rows, and how many rows to delete, from 0 to 999. Simply click on "Top" or "Bottom" and enter the number of rows. Now click on "OK" to delete them, or "Cancel". The user should note that adding or deleting rows from the font will affect the font height as measured in points. You may want to change the pointsize setting after adding or deleting rows from the font. Scale Menu This menu contains all of the special font scaling features to FONTZ! You can scale to different pointsizes, different device resolutions, or even by some arbitrary amount. Scale Font To A Different Pointsize Using this function, you can scale the entire font to a different pointsize. A dialog box will appear and show you several choices of common sizes. You can either click on one of these sizes, or Custom Pointsize, then you can enter your custom pointsize and FONTZ! will scale to that size. Click on OK or Cancel to exit the dialog box. Once you have selected the new size, the font will be scaled in both the x-axis and the y-axis by the ratio of the font height for the size you've selected over the current font height. Scale Font To A Different Device By using this function, you can scale the entire font to a resolution used by a specified device. This allows you to do things such as create a printer font from a screen font. (Or vice versa, for that matter.) A dialog box will appear with the current device highlighted and it's resolution shown. Now you just choose the name of the device you want to scale to, and the resolution for that device will be displayed. If the device you want to scale to is not one of those listed, but you know the device resolution, then you can choose the Uninstalled Device button and the dialog box will change to allow you to enter the resolution for the device, for both the horizontal and vertical directions. When you scale a font to a different device, you can also change the pointsize. This allows you to do things such as scaling a 24 point monochrome screen font to a 12 point printer font. Often, the amount of scaling can be reduced by using such methods, making the result more pleasing. If you want to change the pointsize as well as the device, simply type in the pointsize at the bottom of the box before you hit the OK button, otherwise simply leave it alone and the font will be scaled to the same pointsize for the new device. When you hit the OK button, the font will be scaled to the correct size for the device and pointsize you have chosen. If you hit Cancel then the font will not be changed. Scale Font By A Certain Percentage Using this function, you can scale the entire font by some arbitrary value in either or both directions. A dialog box will appear and allow you to enter in the amounts by which to scale the font. You can enter separate amounts for horizontal and vertical scaling. Vertical scaling will affect the font's pointsize setting, and it will be recalculated using the current device resolution and the new height of the font in rows. Click on the OK to scale your font or on Cancel if you change your mind. A Note Regarding The Scale Functions First of all, you should realise that the scaling functions are a fast and easy way to create a starting point for a particular pointsize of a font. Except in a few rare cases when scaling from one device and pointsize to a different device and pointsize, the resulting font after scaling will need to be touched up in order to be considered finished. However, you must consider that improving a font where the characters are already the correct size and general shape is easier than creating an entire font from scratch. One thing you should always do after scaling a font is check the special effects information, as well as the values for the baseline, halfline, ascent line and descent line. The best settings for these values are not always directly proportional to the font size, especially the boldface factor, so scaling these values will not always provide the best results. Check them by hand using the Special Effects Info function and change them if you think it's necessary. It is best to avoid scaling a font down if it is possible. This is because information is lost when you are scaling down and the results can be unpredictable. If you are using fonts which have thick strokes to the characters, or if you only scale down by a small amount, then scaling to a smaller size can be successful, but otherwise, it is best to avoid scaling down to smaller sizes. When you are enlarging a font, the worst side effect is that the result may be blocky and require touching up. For this reason, I suggest that you start out with creating smaller sizes and work your way up, rather than doing things the other way around. DRAW Menu This menu contains all of the drawing functions which are available in the FONTZ! program. The use of each function is described below. Colour 0 (erase) This function sets the current drawing colour used for all operations to 0, or erase mode. A checkmark will appear in the menu next to this choice to indicate if it is active. Colour 1 (draw) This function sets the current drawing colour used for all operations to 1, or draw mode. A checkmark will appear in the menu next to this choice to indicate if it is active. Draw Line Draws a straight line between two points. After choosing this option, you move the mouse into the edit window. First you click with the left mouse button on one point and hold it down, and then a rubber line appears on the screen until you move the mouse to the 2nd point and release the button. When you release the button, a line is drawn between the two points. To cancel, press the right mouse button before releasing the left button. Draw Box Frame This option draws an outline, or frame, of a box, instead of a filled one. Upon choosing this option, you will be shown a message telling you what to do. You click the mouse on the top left corner of the box, and hold the left mouse button down until you have moved to the bottom right corner. When you release the mouse button, lines are drawn in the appropriate colour between all neighbouring corners to make a box frame. To cancel, press the right mouse button before releasing the left button. Draw Filled Box This option works like the box frame option, except that the box is filled in, instead of being an outline. The box will be cleared or filled, according to the current drawing colour. 2 Point Circle This option will allow the user to draw a circle within his character. You will be shown a message telling you what to do. Simply click on the centrepoint with the mouse and hold the left mouse button down. Now when you move the mouse, a circle outline will be drawn to indicate where the circle will be drawn. The centrepoint of the circle may be anywhere within the character, and the circle itself may be as big as can fit on the screen. When you release the mouse button, the circle will be drawn in the -----------------PLEASE LOAD FONTZ Part II--------------- FONTZ Part II ------------------- continuing current drawing colour. Only those portions of the circle which would be inside the character will be put into the circle. To cancel, press the right mouse button before you release the left button. 3 Point Circle This option will draw a circle defined by three points along the circumference. A message box will instruct you to click on three points within the character which fall somewhere on the outside perimeter of the circle, in counter-clockwise order. A marker will be placed on screen to indicate each point as it is entered. After all three points have been entered, the program will computer the radius and centrepoint and draw the circle in the current drawing colour. To cancel, press the right mouse button before entering the third point. 3 Point Arc This draws an arc between three points. You will be prompted to click on three points within the character which fall somewhere on the arc. A marker will be placed on screen to indicate each point as it is entered. After all three points have been entered, the program will computer the radius and centrepoint and draw the arc intersecting all three pointers, using the current drawing colour. To cancel, press the right mouse button before entering the third point. 2 Point Disk This option is basically the same as the 2 Point Circle command, except that the interior of the circle is filled in, using the current drawing colour, instead of being outlined only. To cancel, press the right mouse button before releasing the left button. This function can be slow, so please be patient. Hitting the right mouse button while drawing the disk will cancel, but the portion of the disk which has already been drawn will still remain. 3 Point Disk This option is basically the same as the 3 Point Circle command, except that the interior of the circle is filled in, using the current drawing colour, instead of being outlined only. This function can be slow, so please be patient. Hitting the right mouse button while drawing the disk will cancel, but the portion of the disk which has already been drawn will still remain. 3 Point Pieslice This option is basically the same as the 3 Point Arc command, except that the area between the arc and the centre of the circle is filled in, like a slice of pie. This function can be slow, so please be patient. Hitting the right mouse button while drawing the disk will cancel, but the portion of the disk which has already been drawn will still remain. A Note Regarding Circle & Arc Draw Functions Because the screen locations representing the character in the editing grid must be scaled down to the appropriate locations within the character, and because the arc and circle drawing commands require several mathematical calculations to compute the centrepoint coordinates and the radius values, there is sometimes a small amount of error in the points where the circles or arcs are drawn and where you wanted them to be drawn. This is unavoidable, and fortunately is usually only a pixel or two off at most. You may wish to experiment somewhat to become familiar with how the drawing routines work. Creating A New Font Creating a new font can mean one of several things. It might mean creating a new size of an existing typeface. It might mean creating a printer font from a screen font, or vice versa. Or, it might mean creating an entirely new typeface and size. If you are interested in creating a new size of an existing typeface, then skip down to the section titled Creating A New Size. If you are interested in creating a font for a different device, such as making a printer font from a screen font, then skip down to the section titled Creating Fonts For Different Devices. Still with us? Good! If you want to create an entirely new typeface and size, read on. When Fontz! is first loaded, you will need to load a font file before you can do anything. Even if you want to create an entirely new font, instead of working on an old one, you must load a font to start from. There are several reasons for this, but it all comes down to the fact that it's much easier to start from an existing font than generate all the information for a new font from scratch, for both the program and the user. The SAMPLE.FNT file on your Fontz! disk is a very basic simple font, designed to be used only as a starting point when creating new fonts. By scaling it to different pointsizes and/or devices, you will be able to make it a good starting point for any size font you want to create from scratch. Another way of creating a new font is to convert a font from another file format into GEM format. Obviously, the closer you start to what you want your finished result to be, the less work you'll have to do. See the sections of this manual on converting fonts for more information. Creating A New Pointsize If what you want to do is create a new size of font from an existing font, then you can do it in one of two different ways. First, if you know what size you want to create, you can use the Scale Font To A Different Pointsize command to scale the font to the new size. See the section on the Scale menu choices for more information. If you don't know what pointsize you want to end up with, you can use the Scale Font By A Certain Percentage command. This will let you scale the font by a value that you enter into the dialog box. You can also change the relative width by entering a different value for the horizontal scaling, in case you want to make the characters wider overall or narrower overall. See the section on the Scale menu for more information. If you used Scale By A Certain Percentage with different values for the horizontal and vertical directions, then you have, in effect, created a new typeface. For example, you might scale an 18 point "Swiss" font by 1.0x vertically and 1.5x horizontally, producing what you might call a "Swiss Extended" or "Swiss Wide" instead of "Swiss". In fact, if you do something like this, you should definitely give the result its own unique font name and font ID number. Creating Fonts For Different Devices Each font is designed to be used with a device that has a certain resolution. (You may wish to go take a look at the sections titled Using Fonts and The ASSIGN.SYS File before continuing with this section.) Fontz! will allow you to take a font intended for one device, and scale it to the appropriate size for a different device. Let's say that you have a 24 point Dutch screen font and you need to create a 24 point Dutch printer font that matches it. You can do this by choosing the Scale Font To A Different Device choice from the Scale menu. This will allow you to choose a different device from among those which are currently installed, or you can enter the resolution of a device which is not currently installed. If you want, you can also change the pointsize for the font to be created. When you are done with making your choices, Fontz! will create a new font which will be the correct size for the device and pointsize you have selected. Notes On Scaling In General Once the font has been scaled, it will probably need to be fixed up a bit. This is because scaling a font only makes sure that everything is the right size; it will get the correct general shape of the characters, but it cannot do the fine detail work to make everything as pretty as it could be. You will have to edit the character information to make things look better. In order to reduce the amount of retouching that a font will require after scaling, it is recommended that you always try to scale to a larger size if possible. Scaling to a smaller size is possible, but it causes a loss of information which can be difficult to fix. If you must scale downward, try to do so by as little as possible, and please remember that parts of the characters that are only a dot or two in width or height may be lost in scaling. After you have rescaled a font to a different device and/or pointsize, it is recommended that you do not change the width of a character unless you are certain you know what you are doing. This is because the idea is for the different sized fonts of the same typeface to be proportionally correct to one another. If you change the width of characters, then things might not be correct from one size or device to another any longer. When you scale a font to a different pointsize and/or device it is often worth your time to investigate all of the different completed fonts of that same typeface (fonts of different devices as well as different pointsizes) before deciding which font to scale. For example, if you want to create a 12 point Typewriter printer font to match your 12 point Typewriter screen font, you may discover that scaling your 18 point Typewriter screen font to a 12 point Typewriter printer font provides better results than scaling a 12 point Typewriter screen font. Or if you want to create a 24 point Swiss screen font, you may discover that scaling your 18 point Swiss printer font provides better results than scaling the 12 point Swiss screen font. Experiment with scaling all of the available fonts to the desired size and device before you decide on which one to keep. This way, you can reduce the amount of retouching to the absolute minimum required to make a font look correct. Creating And Using A Logo A logo is actually nothing more than a special character which has been changed to have a special design or picture instead of a letter. By including a logo as part of a font, you can use it by simply typing in that character where you wanted the logo to appear. (Because a logo is a character within a GEM font, it is subject to the same rules as GEM fonts. See the section entitled Using Fonts for more information about this.) First of all, you should choose a character to contain the logo. You can choose a character from an existing font and include the logo as part of the overall font. Or you could give the font containing your logo it's won unique name and ID number, and delete the regular characters from it so that only the logo remains. (This has the advantage of not taking over a character in your regular font. You can also have more than one logo in a font. Since a logo is just a character, you could have as many different ones in a font as you have characters available.) If you decide to include a logo character in a font which also has regular characters in it, choose a character that is not commonly used in most text, avoiding numbers, letters, and punctuation marks. You might try brace or bracket characters. The character should also be able to be typed in using regular keystrokes available from any program. Also remember that the logo will be restricted to the overall height used by the rest of the font, unless you add rows to the entire font. If you put your logo or logos into a font by themselves, then it is suggested that you start with the letter "A" and go up from there, since it will be easily remembered and accessed. You should also delete the other characters from it to avoid wasting memory and disk space. Finally, give the font it's own font ID number and font name, such as "Logos". To create your logo, simply choose the character which will contain it and get it into your editing window. (If you choose a character with zero width, you should add some columns to it right off the bat, or you won't be able to fit anything!) Once you have the character in your edit window, all you have to do is edit it to create your own logo design. All of the drawing and editing tools of Fontz! can be used for this purpose. You can even cut blocks or characters to be copied into your logo. When you are done, make sure that your design is saved into the font by choosing another character to edit. Or you can simply save your font from the file menu. Don't forget that printer fonts must also contain versions of the logo if the logo is to be used on a printer. You can do this using the following method. Create your logo for the screen font. Save this out to disk if you haven't already. Now scale the font to the printer device. If your font contains only logos, then you can save it now (or after touching up the details) and you are done. If your font contains regular characters also, and you do not have a printer font already, save now and you are done. If your font contains regular characters and you already have a printer font for it, then save the font using a temporary name line TEMP.FNT. Go to your logo character, and cut it into the copy buffer using the F1 key. Now load your printer font and go to the same character and paste in your logo. Save the font. If you have more than one logo, then reload the TEMP.FNT file, and repeat for each character. Converting Macintosh Fonts Although the Fontz! program converts Macintosh font files into GEM font format and sets all of the GEM font parameters automatically, there are certain parameters which may need to be adjusted by the user in order to provide the best results. This is because some of the parameters in the GEM font definition do not have exact counterparts in Macintosh fonts, and vice versa. First of all, Macintosh font files do not have top line and bottom line definitions. Instead, the Ascent Line is the topmost line of the font data, and the Bottom Line is the bottommost line. When Fontz! converts a Macintosh font into GEM format, the Top Line and Ascent Line values are set to the same number, as are the Bottom Line and Descent Line values. With GEM fonts, the blank spaces between the Top Line and the Ascent Line and between the Descent Line and the Bottom Line are used to determine the spacing between different lines of text. But since the Macintosh font does not have Top Line and Bottom Line parameters, there is another value used to specify the space between lines. But in many Macintosh fonts, this value, called the Leading value, is set to zero and the blank space used to separate lines of text is actually built into the font information. In this case, the Ascent Line and Descent Line values may not actually show up on the correct rows of the font, and you should change them as required. Otherwise, you may need to add some rows to the top and/or bottom of the font in order to keep lines of text printed in that font from sitting right on top of each other. Also, Macintosh font definition does not use the Half Line value that GEM fonts do. Fontz! attempts to generate a value for the Half Line setting, but it is merely an approximate value, and may need to be changed by the user to be correct. Remember that the Half Line value should fall across the top of most of the lowercase letters. One very important thing to remember is that the Macintosh fonts do not have a pointsize parameter. This is generated by the conversion routine from the height of the font. But it will not match the pointsize used on the Mac. Keep this in mind. Macintosh fonts do not have special effects information such as underline or bold face values. During the conversion, these values are generated for the GEM fonts using constants or according to the size of the font being converted, but they may need changing. Use the Special Effects Info option to change these values. Finally, Macintosh fonts are designed for a screen resolution of 72 dots per inch (dpi) horizontally and 72 dpi vertically. But GEM fonts for the high resolution Atari ST screen are based on 90 dpi horizontally and 90dpi vertically. For the most part, you do not need to worry about this small difference, because Fontz! automatically sets the pointsize to be correct for the Atari ST screen. Since the dots are square on both the Mac and the Atari ST, the only difference will be the pointsize setting. Some of you may be asking the question, "Where do I get Macintosh Fonts?" The answer is that there is a large number of places. First of all, if you have a modem, you should be able to find a fair selection of fonts on Macintosh-based bulletin board systems. Also, commercial telecommunications systems such as Genie or CompuServe that have Macintosh sections often have literally hundreds of public domain or shareware Macintosh fonts. Another idea is to find a Macintosh User's Group in you area that has a public domain software library. There are a few more things to keep in mind when you download font files for the Macintosh. Macintosh fonts are stored in Macintosh Resource Files. These are similar to the *.RSC files used by the Atari ST, except that they contain more different types of information, including fonts and desk accessory programs. A program for the Macintosh called Font/DA Mover can be used to separate Macintosh fonts and desk accessories from a resource file into separate files. This is important, because Fontz! expects a Macintosh font file to be a Macintosh resource file with just one font of one size and style in a file. Anything else may not work at all or all but the first font may be ignored. Finally, there are some special file compression programs which are commonly used on the Macintosh, such as StuffIt or PackIt III (which are somewhat similar to ARC on the ST), and if you download font files which have been compressed using one of these programs, Fontz! will not be able to recognise it as a Macintosh font file. Another route to obtaining Macintosh fonts if the Magic Sac cartridge, from Data Pacific. This is a Macintosh emulation cartridge for the Atari ST. Combined with Data Pacific's Translator One disk drive adaptor, you can run Macintosh software and read and write Macintosh disks on your Atari ST. You could obtain the Mac fonts using the Magic Sac, and then after making sure there was only one font size and style per file, you could use a file conversion utility to transfer the files to ST disk format. Converting Amiga Fonts Although the Fontz! program converts Amiga font files into GEM font format and sets all of the GEM font parameters automatically, there are certain parameters which may need to be adjusted by the user in order to provide the best results. This is because some of the parameters in the GEM font definition do not have exact counterparts in Amiga fonts, and vice versa. First of all, Macintosh font files do not have top line and bottom line definitions. The baseline parameter is given, however, so the top Line and Bottom Line values for the GEM font are determined using this value and the total height of the font. The Ascent Line is set to the same value as the Top Line, and the Descent Line is set to one less than the Bottom Line. Also, Amiga font definition does not use the Half Line value that GEM fonts do. Fontz! attempts to generate a value for the Half Line setting, but it is merely an approximate value, and may need to be changed by the user to be correct. Amiga fonts do not have special effects information such as underline or bold face values. During the conversion, these values are generated for the GEM fonts using constants or according to the size of the font being converted, but they may need changing. Use the Special Effects Info option to change these values. Finally, one very important thing to remember is that Amiga fonts do not have a pointsize parameter. This is automatically generated by the Fontz! conversion routine from the height of the font to be correct for the Atari ST monochrome screen device. Usually the filename of the Amiga font file will contain the pointsize, so keep in mind that the pointsize of the converted font will most likely not match the pointsize used on the Amiga, even though the actual size of the characters is not changed. Where do you get Amiga Fonts? As with Macintosh fonts the answer is that there is a large number of places. First of all, if you have a modem, you should be able to find a fair selection of fonts on Amiga-based bulletin board systems. Also, commercial telecommunications systems such as Genie or CompuServe that have Amiga sections often have literally hundreds of public domain or shareware Amiga fonts. Another idea is to find a Amiga User's Group in you area that has a public domain software library. Unlike Mac fonts, Amiga fonts come come in files of one size and style each, like the Atari ST. Also unlike Mac fonts, Amiga font files which have been compressed to save disk space and file transfer time often use a format which is compatible with the ST. A public domain program called ARC is the most popular such file compression utility on both Amiga and Atari ST. If you download files which have been ARCed on the Amiga, you can use the ARC of the ST to deARC them. These files usually end with ".ARC" Converting DEGAS Fonts Although the Fontz! program converts DEGAS font files into GEM font format and sets all of the GEM font parameters automatically, there are certain parameters which may need to be adjusted by the user in order to be completely accurate. This is because DEGAS fonts are very simple, and do not have the many parameters of the GEM font definition. These parameters have to be created on the fly by the conversion routine, and you may wish to change them. First of all, DEGAS font files are always 16 lines high, so Fontz! uses constant values to set the GEM font parameters. The Baseline and Top Line settings are always set to the 13th line from the top. The Ascent Line value is set to 12. The Half Line value is set to 7. The Descent Line Value is set to 2. The pointsize setting is always set to 13. The special effects information is also set, but you may wish to change it. Where can you get DEGAS fonts? If you owned the original DEGAS program, you probably already own several. Typesetter ST and Typesetter Elite, from Xlent Software, also used DEGAS-style fonts, and came in different styles. Besides this, many Atari ST BBS systems have DEGAS style fonts in their download section, and most Atari ST user's groups will have public domain libraries with at least some DEGAS format fonts. Converting Hippo Fonts Although the Fontz! program converts Hippo font files into GEM font format and sets all of the GEM font parameters automatically, there are certain parameters which may need to be adjusted by the user in order to provide the best results. This is because Hippo fonts do not have many of the parameters of the GEM font definition, and these parameters have to be created on the fly by the conversion routine, and you may wish to change them. First of all, Hippo font files do not have Top Line and Bottom Line or Ascent Line and Descent Line definitions. The Baseline parameter is given, however, so the Top Line and Bottom Line values for the GEM font are determined using this value and the total height of the font. The Ascent Line is set to the same value as the Top Line, and the Descent Line is set to one less than the Bottom Line. Also the Hippo font definition does not use the Half Line value that GEM fonts do. Fontz! does generate a value for the Half Line setting, but it is merely an approximate value, and may need to be changed by the user to be correct. Hippo fonts do not have special effects information such as light text mask value or skewed text mask value. During the conversion, these values are generated for the GEM font using constants or according to the size of the font being converted, but they may need changing. Use the Special Effects Info option to change these values. Finally, one very important thing to remember is that Hippo fonts do not have a pointsize parameter. The Hippo font assumes the height of the font in rows is the same as the pointsize, but this is not true for GEM fonts. Fontz! recalculates the correct pointsize setting for the Atari ST monochrome screen. Where can you obtain Hippo format font files? Fontz! has this conversion mostly for benefits of users of the HippoWord word processor. If you use this program now, or in the past, then you should have a number of fonts in this format, and can now convert them to GEM format for use with programs such as NEOTRON's WordUp word processor. Unfortunately for Hippopotamus Software, this program and font format never caught on with the larger portion of the Atari ST world, so it may be difficult to locate fonts in this format on bulletin board systems or commercial telecommunications systems, or in user's public domain software libraries. Using Fonts How do you go about using fonts created and edited with FONTZ! with your programs? There are three main requirements. Number one, you must boot up your system with GDOS.PRG in the AUTO folder of your startup disk, with the ASSIGN.SYS file in the main directory of the same disk. The number two requirement is that the font filename be listed in the ASSIGN.SYS file along with the appropriate device. Lastly, the program must be capable of loading and using standard GEm fonts. Many different types of programs load and use GEM fonts, but the most common applications are word processors, desktop publishing, and drawing packages of various types. If a program does not use GEM fonts, then you will not be able to use fonts created or converted with FONTZ! with that program. (Programs can either use GEM to perform their output, or access the output device directly. Unless a program uses GEM to perform it's output, it will probably not use GEM fonts. And unless the publisher rewrites the program to do so, it is extremely unlikely there is any way to make it use GEM fonts.) 1) Some of the fonts I have installed are not available from my program. This can be caused by one of four things. You may not have enough memory left over after the program is loaded for GEM to be able to load all of the fonts named in the ASSIGN.SYS file. When this happens, GEM will load as much as it can. There isn't much you can do about this except remove any unnecessary desk accessories which might be present and restart your system. Some of the fonts you have listed in the ASSIGN.SYS file may not be required for this program, so you could change your ASSIGN.SYS file so that GEM will not load them, leaving more memory for the fonts you really do need. Or you could add more memory to your computer system. Another possibility is that the fonts may have been loaded into memory without any problems, but your program might only recognise a certain number of different typefaces (fonts with the same ID number). For example, if a program has only 5 menu spaces for font names, then any font past #5 will not be available while in that program. Three, while the font's filename might be listed in the ASSIGN.SYS file now, was it there when the computer was last turned on or reset? The ASSIGN.SYS file is only read once, when the computer is turned on or reset. If you make changes to it, they do not take effect until you restart your system. Also, make certain that all font filenames in your ASSIGN.SYS file are spelled correctly and match the files you actually have available. Four, all of your font files and device driver programs must be all together in the same folder on the disk. If they are not, GEM will not find them. See the section entitled The ASSIGN.SYS File for more information about this. 2) One (or more) of my fonts is listed twice in the menu of my program. GEM keeps track of different fonts by two ways; font id number and pointsize. normally, all of the different sizes of the same typeface will have the same font id number. Or at least they are supposed to. But if for some reason they do not, then you can get the same font listed twice in your menu. Check to see what sizes are available for each of the two entries for that font, and then check those sizes with FONTZ! to make sure that all of the sizes have the same font id number and font name. (For consistency, you should make sure the font names match exactly, in regards to uppercase & lowercase letters.) change the font id number of any sizes that are incorrect. You may want to keep a list of all the sizes you have for each font, with the font name and font ID number. Another possibility is that you have a font which does not have the correct name. Try looking at both of the fonts to see if they are the same typeface, or different ones. If they are different sizes of the same typeface, then the problem is the font id number, but if they are different typefaces, then the problem is that one (or more) of the fonts has the wrong name. You will have to use FONTZ! to look at the names and the font id numbers and change them if necessary. Only fonts with the same id number should have the same name. 3) I have all my fonts installed, but some programs don't use them at all, or don't use some of them. First of all, if your program does not seem to use your installed fonts at all, then chances are that this program does not use standard GEM fonts. Some programs which use multiple fonts use their own format for fonts instead of the GEM format. In this case, you should refer to the manual for that program to determine the options available to you. Also see the answer to question #1 for more details. The ASSIGN.SYS File The ASSIGN.SYS file used by GEM to keep track of the names of the available GEM devices, and the fonts which go with them. What's a GEM device, you ask? A GEM device can be several things, such as a printer, a plotter, or the display screen. The GEM system that is in the Atari ST has built-in programs for running the standard display screens. However, when it comes to other devices, such as printers, there could be many different kinds, such as the Atari SLM804 Laser Printer or Atari SMM804 Dot Matrix Printer. Each of these printers has it's own protocol for accomplishing its functions. And since GEM must be able to run a variety of such devices, it's impractical to have built-in programs for each one. It would simply take up too much memory. To get around this, GEM is capable of loading programs which tell it how to run various sorts of output devices. Such programs are called device drivers. When GEM needs to use a device, it loads the device driver program from disk into memory. This way, the program does not take up memory until it is required. GEM graphics output is always printed with the graphics mode of that device, how else? And GEM graphics text is also done the same way. Think of each character of text being a little picture that gets put into the page individually. Since different devices can have very different resolutions, each one must have it's own set of font files for proper output of text. Otherwise, the character data would have to be scaled to be the correct size or the characters would be printed in the wrong size, compared to everything else on the page. Obviously, GEM must have a way of keeping track of what device driver programs are available, as well as knowing which font files go with which device. This is where the ASSIGN.SYS file comes in. It is a simple text file in a fairly simple format which lists all of this information for GEM. GEM reads this file when your system is started at powerup or reset time, and stores the information for later use. The format of this file is the subject of the rest of this section. The first thing you do in the ASSIGN.SYS file is specify the disk drive and directory where the device driver programs and font files will be found. This is done with a line at the very beginning of the file like this: Path = C:\GEMSYS\ This directory path can be a maximum of 64 characters long, and must be the very first non-comment line within the ASSIGN.SYS file. (Comments begin with ";" and you can start a comment anywhere in the line, including at the very beginning. Everything on a line which follows a comment marker is ignored by GEM when it reads the file.) The next thing you have to do is to identify your GEM devices. Each particular type of device has a certain range of numbers which it uses for identification, allowing more than one device of the same type to be available at once by using different ID numbers within the proper range. The various devices and their ranges are shown below. 01-10 -- Screen Device 11-20 -- Pen Plotters 21-30 -- Printers, including Laser 31-40 -- Metafile 41-50 -- Polaroid Palette Camera 51--60 -- Graphics Tablets You identify a device in the ASSIGN.SYS file by starting a new line with the ID number of the device, followed by the complete filename of the device driver program. You can also use one of two optional modifiers after the device ID . These will affect how GEM will obtain that device driver program. Valid modifiers are: r - Load Driver after GDOS Initialization and keep in memory. p - Device driver is located in Atari ST ROM chips. After a device driver name, you list all of the font files which will be associated with that device id number. All of the non- comment lines will be interpreted as font filenames, until you reach another device driver id number and filename or the end of the ASSIGN.SYS file. SOFTWARE OF THE CORPORATION PRESENTS The NEW Features of GFA BASIC 3 Typed by MERLIN for SEWER SOFTWARE The Editor In the following section, only the commands which are new to GFA BASIC Version 3, or commands which have changed from earlier versions of GFA BASIC are shown. In this section, the symbol '^' followed by an additional character means press the Control key and another character (For instance, ^E means you should press the control key and the 'E' key). Direct Mode The last 8 commands entered in direct mode can be displayed by using the cursor up or cursor down keys. These are then available for editing or executing as though they had just been entered. HELP By positioning the cursor on the line containing a PROCEDURE name, and pressing the HELP key, procedures can be 'hiden' or 'displayed'. The Numeric Keypad The numeric keypad has tow modes of operation. With the NumLock turned on (default), numbers and symbols can be entered. When NumLock is turned off, the keys adopt the functions listed below. NumLock can be toggled at any time by pressing '^-' or '^('. 0 Is equivalent to Insert 1 Jump to the end of the program 2 Cursor down one line 3 Page down 4 Cursor left 6 Cursor right 7 Jump to the start of the program 8 Cursor up one line 9 Page up * Same as Return . Same as delete If the NumLock is turned on, the functions listed above can also be obtained by holding down the control key when using the numeric keypad. New Control Commands ^Delete Delete the line where the cursor is ^U (Undelete) Inserts the last line that was deleted ^Y Delete the line where the cursor is ^N Insert a blank line ^B Mark the start of a block ^K Mark the end of a block ^R Page up ^C Page down Shift and ^E Request Search and Replace strings Shift and ^F Request Search string Shift and ^L Request Search string ^E Perform Search and Replace ^F Perform Search and Replace ^G Goto Line (Opens line number field in menu bar) ^1 to ^7 (Main keyboard only, not keypad) Set a bookmark which can be jumped to by pressing Alternate and the numeric key. Alt 0 Go to last changed line Alt 7 Go to the position before the last RUN or DIRECT mode command Alt 8 Go to the last edited line Alt 9 Go to where the last search was started Printout A printed listing of the program may be formatted by the following printer commands: .ll x Set maximum line length to x characters .pl x Set the length of the page to x lines .pa Advance the page .cp x Advance the page if x is true (<>0) .n x Line numbering, x (0-9) is the number of character positions reserved for the line numbers .lr x Set the left margin .ff x Set the form feed character. Default is .ff 012 .he head Text of 'header' .fo foot Text of 'footer' .l- Turns off the printer output .l+ Turns on the printer output again The following special features may be inserted into headers aend footers: \xxx Display character with ASCII code xxx \d Display date \t Display time \# Display page number In order to include the characters \ and # into the header or footer, \\ or \# must be used. DEFLIST x (command) establishes the format of the program listing. The following options exist: 0 Upper case command words, lower case variable names. Variables defined by the DEFxxx commands (see below) do not show their postfixes. 1 Displays the first letter of commands words and variables as upper case, the remainder of the word is displayed in lower case. Variables defined by the DEFxxx commands do not show their postfixes. 2 As DEFLIST 0 but variables defined by the DEFxxx commands show their postfixes. 3 As DEFLIST 1 but variables defined by the DEFxxx commands show their postfixes. DEFvar (command) Variables can be assigned a type by using the DEFvar instruction. The following types are possible: DEFBIT Boolean (!) DEFBYT Byte (|) DEFWRD Word (&) DEFINT Long (%) DEFFLT Float (#) DEFSTR String ($) The following examples show the application of these instructions: DEFINT a,d,k" ! defines all variables that begin with a, d and ' k as 4 byte integers DEFWRD "w-x" ! defines all variables that begin with the ' letters between w and x (inclusive) as 2 byte ' integers DEFFLT "a-c,x-z" ! defines all variables beginning with letters ' between a and c, or x and z, as floating point ' variables Summary of Commands The following list of GFA BASIC instructions shows only the ones that are new compared to Version 2.02 or that were changed for some reason. ~function(x,y,...) VOID function(x,y,...) The tilde '~' is an abbreviation fro the instruction VOID. By using VOID or ~, GFA BASIC processes a function, but discards any return value. The difference between ~ and VOID, is that an integer expression is determined and disregarded with ~, while VOID determines and disregards a floating point numbers. For this reason VOID is somewhat slower than ~. Variables and memory management Types of variables: Name Postfix Memory Required Boolean ! 1 byte (in arrays one bit) Byte | 1 byte Word & 2 bytes Long Word (integer) % 4 bytes Float # 8 bytes String $ 1 byte per character plus fill byte for an uneven number of characters, a 6 byte descriptor and 4 byte backpointer. t=TYPE(*x) (Function) TYPE returns the type of variable after being passed a pointer to a variable. The following values for the different type of variables which are returned in t are shown in the following table: 0 Float 1 String 2 Long Integer 3 Boolean 4 Float Array 5 String Array 6 Integer Array 7 Boolean Array 8 Word 9 Byte 12 Word Array 13 Byte Array STR$(x [,y [,z]]) (Function) BIN$(x [,y]) OCT$(x [,y]) HEX$(x [,y]) This group of functions converts a numerical expression, x, into a character string. The length of the returned string can be stated as an option in y. If y is larger than the number of characters needed to display it, the string is padded with null characters. TRIM$(a$) (Function) Removes spaces from the end of a string. CVx(a$) (Function) MKx$(y) (Function) (x is replaced by one of these characters I, L, S, F, or D.) The function CVI, CVL, CVS, CVF, and CVD convert character strings into numbers. Therefore, the string must always contain the number in the equivalent form. The following assignment is valid for each of the CVx functions: CVI converts a 2 byte string into a 16 bit integer number CVL concerts a 4 byte string into a 32 bit integer number CVS converts a 4 byte string in ST BASIC format into a 6 byte floating point number in GFA BASIC 2.xx format CVF converts a 6 byte string into a 6 byte floating point number is GFA BASIC 2.xx format CVD converts an 8 byte string into an 8 byte floating point number in GFA BASIC 3 format MKI$, MKL$, MKS$, MKF$, and MKD$ are the complementary string conversion functions, similar to the CVx functions. The following instructions are able to to store certain types of variables starting at a specified address, or to read them from a specified address. BYTE{x} 1 byte. INT{x} 2 byte signed integer. CARD{x} 2 byte unsigned integer. LONG{x} 4 byte signed integer with {x} and an abbreviation for LONG{x}. FLOAT{x} 8 byte floating point variable in GFA BASIC 3 format. SINGLE{x} 4 byte floating point variable in IEEE single format. DOUBLE{x} 8 byte floating point variable in IEEE double format. CHAR{x{ a null byte terminated string. Example: {adr%}=100 ! equivalent LPOKE adr%,100 y%={adr%} ! equivalent y%=LPEEK(adr%) These functions do not all work in supervisor mode. Generally, this means you should not use them for addresses below 2048. However, this group of instructions are faster that xPEEK and xPOKE, which do work in supervisor mode. V:x (Function) VARPTR(x) (Function) Using this function V: or VARPTR permits the address of the variable x to be determined. ABSOLUTE x,y (Command) ABSOLUTE forces the variable x to be stored at address y. QSORT x([+ or -]) [,n] [,y%()] (Command) QSORT x$([+ or -]) WITH b|() [,n[,y%()]] (Command) SSORT x([+ or -]) [,n] [,y%()] (Command) SSORT x$([+ or -]) WITH b|() [,n[,y%()]] (Command) The commands QSORT (quick sort) and SSORT (shell sort) permit an array to be sorted. The sorting direction may be specified (descending with the minus '-' character, or ascending with the plus '+' character). The default mode is to sort in ascending order. In addition, the order may be influenced by a string array by using the optional word WITH. The parameter n specifies that only the first n elements of the array are to be sorted. Another array, y%(), may be defined, that will then be sorted with the first. However, this array may only be a 4 byte integer array. INSERT x(i)=y (Command) DELETE x(i) (Command) INSERT places the value of the expression y at the position specified by i in the array x. All elements of the array that have an index higher than i are moved 'up' one position. The contents of the highest element is lost. DELETE removes the element of the array x which is located at the position indicated by i. All array elements that have an index larger than i, are moved 'down' one position. The last element of the array becomes equal to zero (or a null string for a string array). FRE() (Function) The function FRE(), without any parameter in brackets, returns the amount of free memory without performing a garbage collection. ERASE x() [,y() [,z() ,...] (Command) The ERASE instruction deletes arrays and frees their storage space. In older versions, one ERASE was necessary per array, in GFA BASIC 3, several arrays may removed at once. RESERVE [n] (Command) RESERVE + or - n (Command) The RESERVE command can change the size of memory used by GFA BASIC. The arithmetical expression n contains the number of bytes to be available for use by the interpreter. The memory may be reserved only in steps of 256 bytes. Unlike GFA BASIC 2.xx versions, an arithmetical expression with a poitive or negative sign can now be used with RESERVE. This means RESERVE +/-n is equivalent to RESERVE FRE(0)+/-n. All storage space reserved with RESERVE is released by a RESERVE commands without parameter. Example: ' Reserve space for resource file RESERVE FRE(0)-33000 ! in 2.xx RESERVE -33000 ! in 3 If the memory area used by GFA BASIC was reduced with RESERVE, it must be enlarged again at the end of the program; otherwise the available storage space will be reduced each time the program is called. INLINE x%,k (Command) INLINE reserves the number of bytes specified by k. k must be a constant which is smaller than 32600. The starting address of this storage area is returned in x%. With each LOAD and SAVE of the program, this memory block is also loaded and saved. Pictures, indexes, or assemble language routines may be stored in this memory block. No REM statement (!) can be on the same statement line as INLINE. Example: ' INLINE.LST ' INLINE x%,32000 adr%=XBIOS(2) FOR cnt%=80 TO 32000 STEP 80 BMOVE x%+32000-cnt%,adr%,cnt% NEXT cnt% If you position the cursor on the line with INLINE x%,32000 and press the help key, you can load a picture in screen format by selecting LOAD from the menu that is displayed. This may be displayed later by the program that follows. The program has a length of over 32300 bytes when stored, because the memory block defined in the first line is also stored. y=MALLOC(x) (Function) MALLOC is equivalent to GEMDOS function 72, and reserves blocks of memory. If: x=-1 y contains the length of the largest continguous available block of memory. x>0 x bytea are reserved, and y contains the starting address of the reserved memory block. y=0 If any error occurred during MALLOC. If larger memory block are to be allocated, the memory used by GFA BASIC must first be reduced with RESERVE. Allocated storage space must be released at the end of the program. y=MFREE(x) (Function) MFREE is equivalent to GEMDOS function 73, and releases the memory block reserved with MALLC. x is the starting address of the memory block to be released. (x is the value returned by MALLOC.) If: y=0 No error occurred. y=-40 An invalid address (x) was given. z=MSHRINK(x,y) (Function) MSHRINK is equivalent to GEMDOS function 74, and reduces a reserved memory block that was previously allocated by MALLOC. x Contains the address of the reserved memory block (returned by MALLOC). y The new length of the meory block. If: z=0 Processed without errors. z=-40 x contained an invalid address. z=-67 The new length is larger than the current length. RINSTR([n, ] x$,y$) (Function) RINSTR(x$,y$ [,n]) (Function) RINSTR searches a string, x$, beginning at the nth character, for the string specified in y$. INSTR is equivalent to this function, but RINSTR begins searching from the end of the string. MODE x (Command) MODE establishes the type of display for numbers that are output with PRINT USING. This command also affects STR$(x,y,z) and DATE$. The following is valid: Mode 0 1,000.00 08.07.1988 (dd.mm.yyyy) Mode 1 1,000.00 07/08/1988 (mm/dd/yyyy) Mode 2 1,000,00 08.07.1988 (dd.mm.yyyy) Mode 3 1,000,00 07/08/1988 (mm/dd/yyyy) MODE 0 is the default setting in Europe, MODE 1 in the USA. Numerical Instructions ROUND(x[,y]) (Function) The function ROUND(x) returns a rounded value, and the variant ROUND(x,y), permits formatting of a numerical expression. x contains the expression to be rounded, and y is the number of positions to be rounded. Example: FOR cnt%=-3 TO 3 PRINT ROUND(1234.56789,cnt%)""to";cnt%;"positions rounded" NEXT cnt% SINQ(degree) (Function) COSQ(degree) (Function) The functions SINQ and COSQ expect their arguments in degrees (as opposed to SIN and COS which take radians). The letter Q stands for quick, because the functions are approximately 10 times faster than SIN and COS, but they are less accurate. Their main application will be graphics, where high accuracy is not required. ASIN(rad) (Function) ACOS(rad) (Function) The functions ASIN and ACOS calculate the angle which has the sin or cos value given. DEG(rad) (Function) RAD(deg) (Function) DEG calculates the angle in degrees of an angle specified in radians (rad). RAD does the opposite. y=RAND(x) (Function) RAND returns an integer random number in the range between 0 (inclusive) and x (exclusive); the decimal places are ignored if a floating point value for x is given. RANDOMIZE x (Command) RANDOMIZE initialises the random number generator with tyhe value x. This permits initializing the random number generator with the same number to produce several identical sequences. Without this command, the random number generator is initialised at the start of every program with a random value. Integer Arithmetic PRED(x) (Function) SUCC(x) (Function) PRED returns the next smaller value and SUCC the next higher value than the value stored in x. The parameter x is handled as an integer expression. If x is a string, the predecessor or successor of the first character string, according to the ASCII value, is returned. ADD(x,y) (Function) SUB(x,y) (Function) MUL(x,y) (Function) DIV(x,y) (Function) MOD(x,y) (Function) The following terms are equivalent to each other when x and y are integer expressions. Any decimal places of x and y are truncated. ADD(x,y) x+y SUB(x,y) x-y MUL(x,y) x*y DIV(x,y) x/y MOD(x,y) x MOD y Example: X%=ADD(y%,2*3) BCLR(x,y) (Function) BSET(x,y) (Function) BCHG(x,y) (Function) BTST(x,y) (Function) BCLR sets the yth bit of expression x equal to 0. BSET sets the yth bit of expression x equal to 1. BCHG sets the y bit equal to 0 if it was 1 or equal to 1 if it was 0. BTST results in TRUE if the yth bit of x is equal to 1, otherwise the result is FALSE. After decimal places are truncated, x and y are handled as integer expressions. Bits are counted starting from 0. Example: w%=BSET(2,0) PRINT BTST(w%,1) SHL(x,y) SHL&(x,y) SHL|(x,y) (Functions) SHR(x,y) SHR&(x,y) SHR|(x,y) (Functions) ROL(x,y) ROL&(x,y) ROL|(x,y) (Functions) ROR(x,y) ROR&(x,y) ROR|(x,y) (Functions) The functions beginning with SH (for shift) move the value of the numerical expression x by y bits. The functions beginning with RO (for rotate) rotate the value of the expression x by y bits. L stands for left, and R for right. If the variable type is not specified, the default length used is four bytes. However, with &, a length of two bytes, and with | a length of one byte is used. x and y are handled as integer values. Example: a%=SHR(6,2) PRINT BIN$(6,8),a%,ROR(6,2) AND(x,y) (Function) OR(x,y) (Function) XOR(x,y) (Function) IMP(x,y) (Function) EQV(x,y) (Function) These functions logically compare the numerical compare the numerical expressions x and y. The specifications are the same as for the logical operators with the same name. The following terms are equivalent: AND(x,y) x AND y OR(x,y) x OR y XOR(x,y) x XOR y IMP(x,y) x IMP y EQV(x,y) x EQV y x and y are handled as integer expressions. Example: a%=AND(5,12) PRINT BIN$(5,8) PRINT BIN$(12,8) PRINT BIN$(a%,8) SWAP(x) (Function) The numerical expression x is treated as a 4-byte integer value. The lower and the upper pairs of bytes (low and high words) are exchanged. Example: PRINT BIN$(SWAP(&X11111111111111110000000000000000),32) BYTE(x) (Function) CARD(x) (Function) WORD(x) (Function) Byte returns the lower eight bits of the numerical expression x. Similarly, CARD reads the lower 16 bits of x as a 2 byte integer unsigned value. WORD extends a word to long word length (32 bits) by copying bit 15 to bits 16 to 31, thus preserving the sign. Example: PRINT BYTE(256),BYTE(&HFF) Peripheral Commands LOCATE line,column (Command) LOCATE positions the cursor at a specified column and line on the screen. It is not possible to text with LOCATE. Note that the line ('y') is specified before column ('x'). Example: LOCATE 2,20 PRINT "line 2 and column 20" HTAB column (Command) VTAB line (Command) The commands HTAB and VTAB positions the cursor at a specified column or line position. Example: HTAB 6 ! sixth column VTAB 4 ! fourth line PRINT "Here is the cursor" KEYPAD n (Command) The KEYPAD command controls the function of the numeric keypad. The numerical expression contained in n is analysed bit by bit and has the following meaning: Bit Meaning 0 1 0 NumLock off on 1 NumLock non-switchable 2 Ctrl-KEYPAD normal cursor 3 Alt-KEYPAD normal ASCII input 4 KEYDEF w/o ALT off on 5 KEYDEF with ALT off on The NumLock mode is turned on when bit 1 is set, meaning the numeric keypad operates like an IBM PC key pad. If bit 2 is set, the cursor can be moved by pressing the control and an arrow key. With bit 3 set, ASCII characters may be entered by pressing the ALTERNATE key, followed by the ASCII value. A total of 20 character strings may be stored and used by pressing a function key, or ALT and the function key when bits 4 or 5 are set respecitvely. A function key definition may contain a maximum of 31 characters (see KEYDEF). The GFA BASIC interpreter uses the default setting of KEYPAD 46 in the editor (meaning that bits 1,2,3 and 5 are set). KEYTEST n (Command) KEYGET n (Command) KEYLOOK n (Command) KEYTEST returns the ASCII value of a character typed at the keyboard, if a key was pressed since the last check. The alternat, control, shift and CapsLock keys are not recognised If no key was pressed, zero is returned; otherwise, the ASCII value of the character is contained in the lower 8 bits of the value retained in the integer variable n. The Scan-code is returned for special keys (meaning a null in the low word, and the scan-code of the key in the high word). KEYGET waits for a key to be pressed (similarly to INP(2). KEYLOOK allows the reading of the keyboard buffer, without altering it's contents. The last character of the buffer is always read. Example: WHILE INKEY$<>CHR$(196) WEND DO KEYTEST asc_code| LOOP UNTIL asc_code|=196 KEYPRESS n (Command) Simulates the pressing of a key. The numerical expression n contains the value of the ASCII key whose input is to be simulated. Example: a$="GFA BASIC 3" FOR i&=1 TO LEN(a$) ! loop from 1 to length of string KEYPRESS(ASC(MID$(a$,i&))) ! simulates pressing of key with NEXT i& ! the ASCII value of letter KEYPRESS 13 ! simulates the pressing of the return key LINE INPUT a$ KEYDEF n,a$ (Command) The command KEYDEF permits the function keys to be defined with any character string. These strings can have a maximum length of 31 characters. Example: KEYDEF 1,"Alt+F1" KEYDEF 11,"Shift+Alt+F1" INPUT [t$; or ,] v1 [,v2,...] (Command) The INPUT command and related instructions FORM INPUT and LINE INPUT permit the switching between over write mode and insert mode. INPAUX$ (Function) INPMID$ (Function) By unsing INPAUX$ and INPMID$, strings may be read from the serial and MIDI port. Example: a$=INPAUX$ b$=INPMID$ PRINT a$,b$ STICK n (Command) STICK(n) (Function) STRIG(n) (Function) The command STICK switches to a mode where mouse coordinates are returned when n is equal to 0. Jostick coordinates are reported when n is equal to one. Each interrogation of the mouse or joystick switches the applicable mode on automatically. The Port to be checked may be defined by n. STICK returns a value between 0 and 10, for the direction in which the joystick is moved. STRIG returns a value of -1 (TRUE) if the joystick button was pressed, otherwise 0 (FALSE) is returned. Example: STICK 1 ! joystick (Port 1) REPEAT PRINT STICK(1) UNTIL STRIG(1) ! until fire button is pressed STICK 0 ! switch to mouse mode (Port 0) SETMOUSE x,y[,k] (Command) SETMOUSE positions the mouse cursor and simulates a mouse button combination k. Example: SETMOUSE 100,100 !positions the mouse cursor at the point with the coordinates 100,100 File Management RECALL #i,lines$(),read,done (Command) Reads text from the file associated with the channel opened as i into the string array lines$(). The numeric variable 'read' is the maximum number of lines to be read. The variable 'done' returns the number of lines actually read from the file. STORE #i,lines$()[,store] (Command) Saves the contents of the string array lines$() into the file associated with data cghannel i. The number of lines to be stored can be specified in 'store'. CHDRIVE$ drive$ (Command) In contrast to the versions 2.xx, the drive change now also allows a string-type parameter. (e.g. CHDRIVE "C:\"); only the first character is processed. RENAME old$ AS new$ (Command) NAME old$ AS new$ (Command) Renames the file from old$ as new$. TOUCH [#]channel (Command) TOUCH updates the time parameters of a file. Example: OPEN "O",#1,"test.txt" TOUCH #1 FOR cnt%=1 TO 20 PRINT #1,STR$(cnt%) NEXT cnt% CLOSE #1 RECORD #n,x (Command) AT(*x) (Command component(FIELD)) The commands RECORD and AT are new: We can now say: RECORD #1,i% instead of GET #1,i% AT permits simple handling of numerical values in Random files. a pointer to the desired variable is passed. Example: FIELD #n,num AS set$ [,num AS set$,...] or [,num AT(*x),...] The following example program sets up a random access file. 'RA_SAVE.LST ' OPEN "R",#1,"\litera.dat",120 FILED #1,30 AS a$,44 AS t$,30 AS j$,4 AT(*year%),4 AT(*band%),8 AS s$ ' FOR cnt%=1 TO 3 READ author$,title$,journal$,year%,band%,page$ LSET a$=author$ LSET t$=title$ LSET j$=journal$ LSET s$=page$ PUT #1,cnt% NEXT cnt% CLOSE #1 ' DATA "Richards, W.",Stereoposis and stereoblindness DATA Experimental Brain Research,1970,10,380-388 DATA "Posner,M.I.et.al.",On the selection of signals DATA Memory and cognition,1973,1,2-12 DATA "Lehmann,H.J.,Gloeckner,R.J." DATA Cerebral disconnexion in multiple sclerosis DATA Europ.Neurol.,1972,8,257-269 The file created with this program can be read with the following listing. ' RA_LOAD.LST ' OPEN "R",#1,"litera.dat",120 FIELD #1,30 AS a$,44 AS t$,30 AS j$,4 AT(*year%),4 AT(*band%),8 AS s$ ' FOR cnt%=1 TO 3 GET #1,cnt% PRINT ">>>set number:"'cnt% PRINT "Author :"'a$ PRINT "Title :"'t$ PRINT "Journal:"'j$ PRINT "Year :"'year% PRINT "Band :"'band% PRINT "Page :"'s$ PRINT NEXT cnt% CLOSE #1 ~INP(2) FSETDTA(adr%) (Function) Sets the disk transfer address (DTA buffer) to the address adr%. Uses GEMDOS 26. FGETDTA() (Function) This function determines the starting address of the current DTA buffer. Uses GEMDOS 47. FSFIRST(find$,attr%) (Function) Searches for the first file string variable, find$ (e.g. "A:\*.LST"), and stores that name in the DTA buffer. The variable attr% contains the attributes which the files to be found must have (see example program DISK_DIR). Uses GEMDOS 78. FSNEXT() (Function) Continues the search started by FSFIRST. Uses GEMDOS 79. Program Structure Each program structure developed by the appropriate structure instruction is explained here. New decision instruction: IF option_1 ' ELSE IF option_2 ' ELSE IF option_3 ' ELSE ' ENDIF New Multiple Branching: SELECT term CASE 1 ' CASE 2 TO 5 ' CASE 6,7,8 ' CASE 9 TO 11,20 ' DEFAULT ' ENDSELECT New Loop Constructs: DO WHILE cond DO ' ' LOOP LOOP WHILE cond DO UNTIL cond DO ' ' LOOP LOOP UNTIL cond New Subroutines with VAR parameter and array passing: test(a) ' PROCEDURE test(VAR x) ' RETURN test(field()) ' PROCEDURE test(VAR x()) ' RETURN Multiple line functions as subroutines: value=@function(x,y,..,z) ' FUNCTION function(a,b,..,c) ' RETURN return_value ENDFUNC DELAY x (Command) Wais x seconds. QUIT[x] (Command) SYSTEM[x] (Command) These commands end the program and pass the parameter to the calling program (usually the desktop). Graphic and Window programming CLIP x,y,w,h [OFFSET xO,yO) (Command) CLIP x1,y1 TO x2,y2 [OFFSET xO,yO] (Command) CLIP# n [OFFSET xO,yO] (Command) CLIP OFFSET x,y (Command) CLIP OFF (Command) The CLIP instruction defines a clipping rectangle and the origin for VDI graphic instructions. The parameters x,y,w and h define the upper left corner and the width and height. The second format shown above defines the rectangle by specifying two opposite corner points (x1,y1 and x2,y2). CLIP #n confines the clipping to the dimensions of the window with the index n. Clipping may be turned off by using CLIP OFF. The expression OFFSET xO,yO defines the origin fior the graphic output to be the point xO,yO. DRAW d$ (Command) DRAW(I) (Function) The string expression d$ may contain any of the following commands as well as the parameters associated with them. MA x,y MOVE ABSOLUTE Moves the pen to the absolute coordinates x and y. DA x,y DRAW ABSOLUTE Moves the pen to the absolute coordinates x and y and draws a line in the current colour to the point (x,y). MR xr,yr MOVE RELATIVE Similar to MA, but relative to previous position. DR xr,yr DRAW RELATIVE Similar to DA, bute relative to previous position. CO c COLOUR Set colour c as drawing colour. PU PEN UP Lifts pen. PD PEN DOWN Lowers pen. FD n FORWARD Moves pen n pixels forward. BK n BACKWARD Moves pen n pixels backward. SX x SCALE X Scales the value statements of the command FD and BK which concern the x axis, by multiplying by x. SY y SCALE Y Similar to SX, but for the y axis. LT w LEFT TURN Defines left turn by angle w. RT w RIGHT TURN Defines right turn by angle w. TT w TURN TO Defines the absolute angle w. 0 (or straight ahead) | | | 270 ---------- ---------- 90 Origin (or pen position) | | 180 The angle (w) is defined in degrees. These functions return the following values: DRAW(0) returns x-position. DRAW(1) returns y-position. DRAW(2) returns angle in degrees. DRAW(3) returns scaling of x-axis. DRAW(4) returns scaling of y-axis. DRAW(5) returns pen flag (0=PD, -1=PU). BOUNDARY n (Command) The instruction BOUNDARY is the equivalent to the VDI function SET FILL PERIMETER VISIBILITY and turns on the automatic perimeter drawing on or off. If the integer expression n is equal to zero, the perimeter is turned off; if n is not zero, the perimeter is turned on, or displayed. DEFTEXT colour,style,angle,size,font (Command) A font number may be stated as a fifth number with DEFTEXT. RC_INTERSECT(x1,y1,w1,h1,x2,y2,w2,h2) (Function) The function determines if the two rectangles intersect. They are specified in the standard way (x,y position, width w, height h). TRUE (-1) is returned if the rectangles overlap; if not, FALSE (0) is returned. The coordinates of the overlapping area are put into the variables specifying the second rectangle. x1,y1,w1,h1 may all be variables, constants, or numerical expressions. x2,y2,w2,h2 must all be variables. RC_COPY x_adr%,x1%,y1%,w%,h% TO d_adr%,x2%,y2% [,mod%] (Command) Copies a section of the screen beginning at address s_adr% to the address d_adr%. The section of the screen is locatyed at coordinates x1,y1% and has a width and height of w%,h%. The section is positioned on the destination screen at position x2%,y2%. The parameter mod% establishes the drawing mode (has the same meaning as modes used with PUT): Source and destination may be identical. OPENW [#] n[[,x,y][,w,h,attr] (Command) Opens the window with the index n, the width w. height h at the coordinates x,y. The term attr defines which elements the window should have (see WIND_CREATE). The character # must be set when all possible parameters are listed, otherwise it is not necessary. TOPW# n (Command) Activates window number n as the top window. WINDTAB(x,y) (Function) The parameter x is a window number between 0 and 4. Depending on the value of y, WINDTAB for this wondow results in: y=0: Handle y=3: y position y=1: Attributes y=4: width y=2: x position y=5: height Interrupt Programming EVERY ticks (Command) EVERY STOP (Command) EVERY CONT (Command) AFTER ticks (Command) AFTER STOP (Command) AFTER CONT (Command) The instructions EVERY, EVERY STOP, and EVERY CONT, permit the calling of procedures at regular intervals. The numerical expression 'ticks' contains the interval in units of 1/200 seconds. In GFA BASIC, the timer is checked once every 1/50 second. The instruction AFTER is similar to the command EVERY, but branching occurs only once to the procedure named by AFTER. System Routines ACLIP flag,xmin,ymin,xmax,ymax (Command) This command extsablishes a clipping rectangle for line-A graphics output. The coordinates of the diagonally opposite corner points of this rectangle are defined by the variables xmin, ymin, xmax and ymax. Turning the clipping on or off is done with the perimeter 'flag'. If: flag=1 Clipping is turned on; flag=0 Clipping is turned off. PSET x,y,colour (Command) PSET is the equivalent to the PLOT command, and sets a point at the co-ordinates x and y in the defined colour. Depending on the resolution, 'colour' may be any value between 0 and 15. PSET is much faster than PLOT, though it will allow you to draw into memory off the screen, if clipping is not used. PTST(x,y) (Function) The function PTST is the equivalent to the POINT function and return the colour value at the screen location specified by x,y. Depending upon the resolution, the value returned is between 0 and 15. ALINE x1,y1,x2,y2,colour,pattern,mode (Command) ALINE is equivalent to the LINE command, and draws a line betweem the point (x1,y1) and (x2,y2). The parameter 'colour' has the same meaning as the PTST. The desired line pattern is passed as the word-sized value 'pattern'. In the monochrome mode, each set bit corresponds to a point to be drawn. The parameter 'mode' contains the graphics mode. HLINE x1,y,x2,colour,mode,pattern_adr,num_pattern (Command) HLINE is somewhat similar to the LINE command, but HLINE only draws horizontal lines. A group of line aptterns may be displayed with HLINE. The parameters colour and mode have the same meaning as the ALINE command. The address of a memory area is defined in pattern_adr, and is the address which contains the information for the line aptterns. The length of each pattern must be 16 bits. The parameter num_pattern contains the number of the line pattern, minus one. This value is ANDed with the y-coordinate to decide which pattern is to be used. ARECT x1,y1,x2,y2,colour,mode,pattern_adr,num_pattern (Command) ARECT is equivalent to the PBOX command and draws a filled rectangle. The coordinates of the diagonally opposite corner points are x1,y1 and x2,y2. The parameters colour, mode, pattern_adr and num_pattern have the same meaning as for the ALINE command. APOLY adr_pnt,num_pt,y0 TO yn,colour,mode,adr_pattern,num_pattern (Command) APOLY fills the enclosed area by a sequance of lines with any pattern. The address adr_pnt is the address of an array which contains alternating x and y coordinates for each corner point. The number of points is num_pt. In addition, the lowest and highest y coordinates must be defined. The coordinates define which part of the area willbe filled. The parameters colour and mode are the equivalent of ALINE, and adr_pattern and num_pattern are the same as those for ARECT. ACHAR asc_code,x,y,font,style,angle (Command) ACHAR displays a single character at any screen position. It is otherwise similar to the TEXT command. The desired ASCII value, as well as the x and y coordinates are given by the parameters. Also, the font in which the character output will occur must be specified. Depending on the resolution, the parameter 'font' can accept values between 0 and 2. The following character sets are assigned to these values: Font Output in character set 0 6x6 pixels, icon script. 1 8x8 pixels, normal script in colour mode. 2 8x16 pixels, only available in monochrome mode. Larger numbers are interpreted as the address of a font header. As with TEXT, the style and angle of the character to be displayed may be specified. The parameter 'style' can be between 0 and 31 (as for DEFTEXT). The angle the text is displayed at is specified by the parameter 'angle', where the desired andgle is defined in 0.1 degree steps. However, only 90 degree steps are actually valid (0,900,1800 and 2700). The coordinates define the upper left corner of the character as opposed to the lower left corner with TEXT. ATEXT x,y,font,string$ (Command) ATEXT displays character strings at the screen position specified by x,y. The desired font may be specified. The dting to be output is string$. As with ACHAR, the coordinates refer to the upper left corner of the character. Numbers larger that 2 for the font are interpreted as the address of a font header. L~A (Function) This expression contains the base address of the Line-A table. VDISYS [opt[,c_int,c_pts[,subopc]]] (Command) The VDI function with the function opc is called by using the command VDISYS. If opc is not specified, the function number, as well as all the other parametrs, must be entered into the VDI parameter arrays. The number of values in the integer input field and in the point coordinate input field can now be defined in the parameters c_int and c_pts. These values no longer need to be entered into the control field. The optional parameter subopc contains the called VDI routines supopcode. This code may only be used with a few VDI routines, e.g. the escape routines. The parameters c_int, c_pts, and subopc are inserted in certain of the CONTRL field positions: c_int -> CONTRL+6 c_pts -> CONTRL+2 subopc -> CONTRL+10 Example: VDISYS 5,0,0,13 PRINT "inverse" VDISYS 5,0,0,14 PRINT "normal" WORK_OUT(x) (Function) Values returned by the VDI function may be determined by specifying the appropriate table element in the variable x. x=0 to 44 INTOUT elements x=45 to 56 PTSOUT elements All vdi and aes parameter blocks may be addressed as arrays (CONTRL, INTIN, INTOUT, PTSIN, PTSOUT, ADDRIN, ADDROUT, GCONTROL, GINTOUT). INTOUT+2 is equivalent to INTOUT(1). V_OPNWK(x) (Function) V_OPENWK(x,i1,i2,i3,i4,i5,i6,i7,i8,i9,i10) Calls the vdi Function 1 (open workstation). The handle of the output device is passed in x (21=printer, 31=meta file). these handles are defined in the ASSIGN.SYS file. The parameters i1 to i10 contains the values of the INTIN array elements (WORK_IN) 1 to 10. This function works correctly only with GDOS; otherwise it will cause a system crash. The returned value of the function is the vdi handle of the output device. V_OPNVWK(x) (Function) V_OPENVWK(x,i1,i2,i3,i4,i5,i6,i7,i8,i9,i10) Uses VDI Function 100 (open virtual workstation). x is the INTIN(0) element, and i1 to i10, the elements INTIN(1) to INTIN(10)(WORK_IN). V_CLSVWK() (Function) Uses VDI Function 101 (close virtual screen workstation). V_CLSWK() (Function) Uses vdi Function 2 (close workstation). Closes an output device which was opened with V_OPNWK. This function will also cause a system crash without GDOS. V_CLRWK() (Function) Calls VDI Function 3 (clear workstation). Initialises the graphic work station and the data buffer. Works correctly only with GDOS. V_UPDWK() (Function) Calls VDI Function 4 (update workstation). Carries out all stored graphic commands (e.g. on printer). VST_LOAD_FONTS(0) (Function) Uses VDI Function 119. Loads the additional GEM characters sets. The number of loaded character sets is returned. The passed parameter is always zero. This function only works with GDOS. VST_UNLOAD_FONTS(0) (Function) Uses VDI Function 120. The character sets loaded with VST_LOAD_FONTS are removed from memory. This function works only with GDOS. GDOS? (System Variable) The function GDOS? is TRUE (-1), if GDOS is loaded (GDOS version 1.0 or later). If GDOS has not been loaded, GDOS? reports FALSE (0). V~H=h% (Command) Stores the handle h% into the VDI CONTRL array. VQT_EXTENT(s$,x0,y0,x1,y1,x2,y2,x3,y3) (Function) Uses VDI Function 116. Returns the displayed dimensions of the string s$, returned either in the optional eight or PTSOUT(0) to PTSOUT(7). The first corner point os the one at the bottom left with the remaining points numbered counterclockwise: x0 Relative x coordinate of the first corner point. y0 Relative y coordinate of the first corner point. x1 Relative x coordinate of the second corner point. y1 Relative y coordinate of the second corner point. x2 Relative x coordinate of the third corner point. y2 Relative y coordinate of the third corner point. x3 Relative x coordinate of the fourth corner point. y3 Relative y coordinate of the fourth corner point. VQT_NAME(i%,fn$) (Function) Uses the VDI Function 130. Returns the index of the font with the number i%. The name of the font is returned in fn$. Assembly Language Subroutines MONITOR [x] (Command) MONITOR calls assembly language routines. This is accomplished by pointing the illegal instruction vector (address 16) to the address of the routine. The MONITOR command creates an illegal instruction exception, which must end with RTE (return from exception). The parameter x does not have any meaning. (In GFA BASIC version 2.xx, the address of a 32 byte long index was put in a0 by the command call. Such an index does not exist in GFA BASIC 3, because of changes in variable management. RCALL adr,reg%() (Command) RCALL permits calling assembly language routines (that are ended with RTS). adr is the starting address of the assembly language program in memory. It is also possible to place values in the registers before beginning the routine, and to read the contents of the registers after the routine ends. The array reg%() serves this purpose; it's elements must be 4 byte integers, and must have at least 16 elements. Defore starting the assembler routine, the elements of this array are copied into the registers. When the routine is finished, the contents of the registers are written back into the appropriate array elements. The following assignment is valid (with OPTION BASE 0): data register d0-d7: reg%(0) to reg%(7) address register a0-a6: reg%(8) to reg%(14) user stack pointer a7: reg%(15) AES Libraries The parameters of the AES functions not only use variables for passing, but also returning values from the function. Variables are given as vehicles for returned values. For example: rs_greturn=RSRC_GADDR(re_gtype,re_gindex,re_gaddr) A value is returned in rs_gterurn if an error occurred during the processing. The variables re_gtype and re_gindex contain passed parameters. If you do not want to use the function's returned value just put a tilde (~, VOID) in front of the call: ~RSRC_GADDR(re_gtype,re_gindex,re_gaddr) or VOID RSRC_GADDR(re_gtype,re_gindex,re_gaddr) Parameters that contain addresses must be 4 bytes long: parameters for coordinates must be 2 bytes long. The function calls show a strong similarity to the calls in C. Load PART 2 of this DOC please.......................Part 2 of the GFA 3.0 docs........ Therefore the varaiable names listed in the functions list were selected mainly from the literature about GEM programming in C. Some differences may be found. For instance, with the method strings are passed as parameters. The address of a string is (usually) passed in C; in GFA BASIC, (usually) the string itself is passed. Application Library ap_id=APPL_INIT() Registers the current program as a GEM application. This function is called automatically by GFA BASIC. It returns here only the application number of the current program. ap_id Contains the identification number of the current application when successful, otherwise -1. ap_return=APPL_READ(ap_rid,ap_rlength,ap_rbuff) Reads bytes from a message buffer. ap_return Zero if an error occurred. ap_rid Application number of program whose buffer is to be read. ap_rlength Number of bytes to read. ap_rbuff Starting address where bytes read should be filed. ap_wreturn=APPL_WRITE(ap_wid,ap_wlength,ap_wpbuff) Write bytes into the message buffer. ap_wreturn Zero if an error occurred. ap_wid Application number of program whose buffer is to be written to. ap_wlength Number of bytes to be written. ap_wpbuff Address where bytes are to be written. ap_fid=APPL_FIND(ap_fpname) Determines the identification number of an application whose file name is known. ap_fid Identification number of the desired program, - 1=error happened, program not found. ap_fpname Contains the 8 character long file name (without extension) of the application to be found. The name of the file must be eight characters long and, if necessary, padded out with space characters. ap_tpreturn=APPL_TPLAY(ap_tpmem,ap_tpnum,ap_tpscale) Enables automatic repeating of a sequance of mouse movements, key pressings, and similar user actions possible. ap_tpreturn Always the value 1. ap_tpmem Pointer to the memory block where the events are stored. ap_tpnum Number of events which should be returned. ap_tpscale Acceleration factor of returned values: 50=half, 100=normal, 200=double speed. ap_trreturn=APPL_TRECORD(ap_trmem,ap_trcount) Allows the storing of user events for later play back with APPL_TPLAY; each event occupies 6 bytes, and the first word as well as the following long word contain the kind of events and the information associated with them: 0 = timer Number of elapsed milli-seconds. 1 = button Mouse button status in low word: 0 = not pressed, 1 = pressed number of key pressings in high word 2 = mouse High word = x coordinate, low word = y coordinate 3 = keyboard Low word = passed character. High word = keyboard status Bit 0 = shift key right Bit 1 = shift key left Bit 2 = control key Bit 4 = alternate key ap_trreturn Number of events stored ap_trmem Pointer to the storage space in which the events are stored (at least six times as large as ap_trcount). ap_trcount Number of events to be reproduced. ap_xreturn=APPL_EXIT() Exits a program from AES. This function is called autonmatically by GFA BASIC and shoudl not be used. ap_xreturn Zero if an error occurred. Event Library ev_kreturn=EVNT_KEYBD() Waits for a keyboard event and returns the applicable keyboard code in the low-order byte. ev_kreturn Keyboard code of the pressed key. ev_breturn=EVNT_BUTTON(ev_bclicks,ev_bmask,ev_bstate[,ev_bmx ev_bmy,ev_bbutton,ev_bkstate]) Waits for a mouse button event to be established. ev_breturn Number of mouse button clicks used. ev_bclicks Number of necessary mouse button clicks. ev_bmask Mask for the mouse button: Bit 0 = left Bit 1 = right ev_bstate Status required to release the event, bit settings are the same as ev_bmask. ev_bmx x coordinate of the mouse cursor at event release. ev_bmy y coordinate of the mouse cursor at release. ev_bbutton Status of the mouse buttons, like ev_bstate. ev_bkstate Condition of the keyboard shift keys by event: Bit 0 = Right shift key Bit 1 = Left shift key Bit 2 = Control key Bit 3 = Alternate key ev_moresvd=EVNT_MOUSE(ev_moflags,ev_mox,ev_moy,ev_mowidth ev_moheight[,ev_momx,ev_momy,ev_mobutton,ev_mokstate]) Waits until the mouse pointer enters or leaves a defined rectangular part of the screen. ev_moresvd Reserved, always 1. ev_moflags Reports the mouse cursor entering (0) or leaving (1) of the defined rectangular part of the screen. ev_mox Left x of the rectangle. ev_moy Upper y coordinate of the rectangle. ev_mowidth Width of the defined rectangular part of the screen. ev_moheight Height of the defined rectangular part of the screen. ev_momx x coordinate of the mouse cursor. ev_momy y coordinat of the mouse cursor. ev_mobutton Mouse button status at the beginning of event: Bit 0 = Right mouse button Bit 1 = Left mouse button ev_mokstate Condition of keyboard when event happens: Bit 0 = Right shift key Bit 1 = Left shift key Bit 2 = Control key Bit 3 = Alternate key ev_mgresvd=EVNT_MESAG(ev_mgpbuff) Waits for a message to appear in the event buffer. ev_mgresvd Reserved, always 1. ev_mgpbuff Address of the 16 byte long buffer (message buffer) to receive the message. ev_tresvd=EVNT_TIMER(ev_tcount) Waits for a period of time, stated in milli-seconds, to elapse. ev_tresvd Reserved, always 1. ev_tcount Number of milli-seconds to wait. ev_mwhich=EVNT_MULTI(ev_mflags,ev_mbclicks,ev_mbmask,ev_mbstate, ev_mm1flags,ev_mm1x,ev_mm1y,ev_mm1width,ev_mm1height, ev_mm2flags,ev_mm2x,ev_mm2y,ev_mm2width,ev_mm2height, ev_mmgbuff,ev_mtcount[,ev_mmox,ev_mmoy,ev_mmobutton, ev_mmokstate,ev_mkreturn,ev_mbreturn]) Waits for different events to occur. ev_mwhich Contains the event which has happened, bits as in ev_mflags. ev_mflags Establishes which events the application should wait for by checking bit settings: Bit 0 keyboard MU_KEYBD Bit 1 Mouse button MU_BUTTON Bit 2 First mouse event MU_M1 Bit 3 Second mouse event MU_M2 Bit 4 Message event MU_MESAG Bit 5 Timer MU_TIMER The remaining parameters have already been explained by EVNT_MOUSE, EVNT_KEYBD, EVNT_BUTTON, and EVNT_MESAG; but we may wait for two different mouse events (ev_mm1 and ev_mm2). ev_dspeed=EVNT_DCLICK(ev_dnew,ev_dgetset) Establishes the speed for the mouse double-clicks. ev_dspeed Old speed. ev_dnew New speed (0 to 4). ev_dgetset Type of adjustment: 0 = Determine actual value, ignoring to ev_dnew. 1 = Establish new value as ev_dnew. Menu Library me_return=MENU_BAR(me_btree,me_bshow) Displays or erases the menu bar of a menu object tree. me_return Zero if an error occurred. me_btree Address of the menu object tree. me_bshow 1 = Display menu bar 0 = Erase menu bar (always at the end of the program). me_creturn=MENU_ICHECK(me_ctree,me_citem,me_ccheck) Sets or deletes a 'tick' in front of a menu item (each menu item should start with at least two space characters). me_creturn Zero if an error occurred. me_ctree Address of the menu object tree. me_citem Object number of the applicatble menu item. me_ccheck 0 = install tick 1 = Delete tick. me_ereturn=MENU_IENABLE(me_etree,me_eitem,me_eenable) Enables or disables menu items. Disabling means that the application item is shown in light script and cannot be selected. me_ereturn Zero if an error occurred. me_etree Address of the menu object tree. me_eitem Object number of the applicable menu item. me_eenable 0 = Disable 1 = Enable. me_nreturn=MENU_TNORMAL(me_ntree,me_ntitle,me_nnormal) Switches menu title to inverted or normal representation. me_nreturn Zero if an error occurred. me_ntree Address of the menu object tree. me_ntitle Object number of the applicable menu title. me_nnormal 0 = inverted representation 1 = normal representation. me_treturn=MENU_TEXT(me_ttree,me_titem,me_ttext$) Changes the text of a menu item, allowing it to be controlled by the program. me_treturn Zero if an error occurred. me_ttree Address of the menu object tree. me_titem Object number of the item to be changed. me_ttext$ String that contains the new menu entry (should not be longer than the old entry). me_rmenuid=MENU_REGISTER(me_rapid,me_rpstring) Enters the name of an accessory under the first menu title. A maximum of six accessory menu items can be used. me_rmenuid Contains 0 to 5 for the first to sixth accessory entry, and -1 if no additional entry is possible. me_rapid Identification number of the applicable accessory. me_rpstring$ The applicable menu entry. Object Library ob_areturn=OBJC_ADD(ob_atree,ob_aparent,ob_achild) Adds an object to the specified object tree, and establishes the pointers between existing objects and the new objects. ob_areturn Zero if an error occurred. ob_atree Address of the applicable object tree. ob_aparent Objecy number of the 'parent object' to which the new object is to be added. ob_achild Object number of the 'child object' which is to be added. ob_dlreturn=OBJC_DELETE(ob_dltree,ob_dlobject) Changes the object pointers within the applicable object tree so that the object is effectively deleted until these pointers are restored. ob_dlreturn Zero if an error occurred. ob_dltree Address of the applicable object tree. ob_dlobject Object number to be deleted. ob_drreturn=OBJC_DRAW(ob_drtree,ob_drstartob,ob_drdepth, ob_drxclip,ob_dryclip,ob_drwchip,ob_drhclip) Displays object trees or parts thereof, on the screen; also, a clipping rectangle may be specified. ob_drreturn Zero if an error occurred. ob_drtree Address of the applicable object tree. ob_drstartob Number of the first object to be drawn. 0 = draw only first object. ob_drdepth Number of object 'generations' to be drawn. ob_drxclip Left x coordinate. ob_dryclip Upper y coordinate. ob_drwchip Width of the clipping rectangle. ob_drhclip Height of the clipping rectangle. ob_fobnum=OBJC_FIND(ob_ftree,ob_fstartob,ob_fdepth,ob_fmx,ob_fmy) Determines the number of an object positioned at the specified screen position. ob_fobnum Number of the object found: -1 = no object number found. ob_ftree Address of the object tree to be checked. ob_fstartob Number of the first object to be checked. ob_fdepth Number of 'generations' to be checked. ob_fmx Specified x coordinate of the screen position to be stated. ob_fmy Specified y coordinate of the screen position to be stated ob_ofreturn=OBJC_OFFSET(ob_oftree,ob_ofobject,ob_ofxoff,ob_ofyoff) Calculates the absolute screen coordinates of the specified object. ob_ofreturn Zero if an error occurred. ob_oftree Address of the applicable object tree. ob_ofobject Number of the applicable object. ob_ofxoff Calculated absolute x coordinate. ob_ofyoff Calculated absolute y coordinate. ob_orreturn=OBJC_ORDER(ob_ortree,ob_orobject,ob_ornewpos) Changes the sequence of objects within an object tree. ob_orreturn Zero if an error occurred. ob_ortree Address of the applicable object tree. ob_orobject Number of the object to be changed. ob_ornewpos Number of the new object plane ('generation'): -1 = one plane higher 0 = lowest plane 1 = lowest plane+1 2 = lowest plane+2, etc. ob_edreturn=OBJC_EDIT(ob_edtree,ob_edobject,ob_edchar$,ob_edidx, ob_edkind,ob_ednewidx) Permits the input and editing of text into the object types G_TEXT and G_BOXTEXT. ob_edreturn Zero if an error occurred. ob_edtree Address of the applicable object tree. ob_edobject Object number of the applicable object. ob_edchar$ Input character (scan code). ob_edidx Position of the character in the input string. ob_edkind Function selection: 0 ED_START Reserved 1 ED_INIT Calculate formatted string and turn on cursor 2 ED_CHAR Read applicable character and display string. 3 ED_END Turn off cursor. ob_ednewidx New position of the character input string. ob_creturn=OBJC_CHANGE(ob_ctree,ob_cobject,ob_cresvd,ob_cxclip, ob_cyclip,ob_cwclip,ob_chclip,ob_cnewstate,ob_credraw) Changes the status of an object (OB_STATE) and, if redraws it, within the limits of the required clipping rectangle. ob_creturn Zero if an error occurred. ob_ctree Address of the applicable object tree. ob_cobject Number of the object to be changed. ob_cresvd Reserved, always 0. ob_cxclip Left x coordinate of the clipping rectangle. ob_cyclip Upper y coordinate of the clipping rectangle. ob_cwclip Width of the clippin rectangle. ob_chclip Height of the clippin rectangle. ob_cnewstate New object status (see OB_STATE). ob_credraw 0 = Do not redraw objetc 1 = Redraw object. Form Library fo_doreturn=FORM_DO(fo_dotree,fo_dostartob) Takes over the complete management of a form object (dialog box) until an object with EXIT or TOUCHEXIT status is selected. fo_doreturn Number of the object that was clicked on to finish (if by double click, the 15th bit is set). fo_dotree Address of the applicable object tree. fo_dostartob Number of the first object in the object tree. fo_direturn=FORM_DIAL(fo_diflag,fo_dilittlx,fo_dilittly, fo_dilittlw,fo_dilittlh,fo_dibigx,fo_dibigy,fo_dibigw,fo_dibigh) Reserves or releases rectangular areas of the screen, and also draws shrinking or expanding boxes. fo_direturn Zero if an error occurred. fo_diflag Function type: 0 FMD_START reserves screen area. 1 FMD_GROW Draws expanding rectangle. 2 FMD_SHRINK Draws shrinking rectangle. 3 FMD_FINISH Releases reserved screen area. fo_dilittlx,y Coordinates of the top left corner of the rectangle at minimum expansion. fo_dilittlw Width of the minimum rectangle. fo_dilittlh Height of the minimum rectangle. fo_dibigx,y Coordinates of the top left corner of the rectangle at maximum expansion. fo_dibigw Width of the maximum rectangle. fo_dibigh Height of the maximum rectangle. fo_aexbttn=FORM_ALERT(fo_adefbttn,fo_astring$) Displays an ALERT BOX. fo_aexbttn Number of the button with which the alert box was exited. fo_adefbttn Number of the default button: 0 None 1 First 2 Second 3 Third fo_astring$ String containing the text of the message in the following format: [icon symbol][message][button] icon symbol 0 No icon 1 Exclamation mark(!) 2 Question mark (?) 3 Stop sign message Text not exceeding 5 lines with 40 characters each, lines seperated from each other with |. button No more than three, format as message. fo_eexbttn=FORM_ERROR(fo_enum) Displays a warning message for TOS errors. fo_eexbttn Number of the button with which the warning message was exited. fo_enum TOS error number. fo_cresvd=FORM_CENTER(fo_ctree,fo_cx,fo_cy,fo_cw,fo_ch) Centres an object on the screen. fo_cresvd Reserved, always 1. fo_ctree Address of the applicable object tree. fo_cx Left x coordinate of the centered rectangle. fo_cy Upper y coordinate of the centered rectangle. fo_cw Width of the centered rectangle. fo_ch Height of the centered rectangle. fo_kreturn=FORM_KEYBD(fo_ktree,fo_kobject,fo_kobnext,fo_kchar$, fo_knxtobject,fo_knxtchar$) Permits keyboard input in a form (see OBJC_EDIT). fo_kreturn Returns a value equal to 0 when an object is slected with EXIT status. Otherwise returns and value larger than 0 indicating that the dialog has not ended. fo_ktree Address of the current EDIT object. fo_kobject Number of the current EDIT object. fo_kobnext Number of the next EDIT object. fo_kchar$ Input character. fo_knxtobject New EDIT object for the next call. fo_knxtchar$ Next character. fo_breturn=FORM_BUTTON(fo_btree,fo_bobject,fo_bclicks,fo_bnxtobj) Permits mouse input in a form. fo_breturn Value equal to 0=an object with EXIT status was clicked on last. Value larger than 0=dialog not ended. fo_btree Address of the applicable object tree. fo_bobject Current object. fo_bclicks Number of mouse clicks. fo_bnxtobj New object. Graphics Library gr_rreturn=GRAF_RUBBERBOX(gr_rx,gr_ry,gr_rminwidth,gr_rminheight, gr_rlastwidth,gr_rlastheight) Displays an outline of a rectangle on the screen while the mouse button is pressed. The upper left x and y coordinates are fixed. The diagonally opposite corner, as well and the width and height of the rectnagle, depend on the mouse cursor position. The function call is useful only when the mouse button is pressed, as the function is quitted as soon as the mouse button is released. gr_return Zero if an error occurred. gr_rx Left x coordinate. gr_ry Upper y coordinate. gr_rminwidth Minimum width of rectangle. gr_rminhheight Minimum height of rectangle. gr_lastwidth Width of rectangle at function end. gr_lastheight Height of rectangle at function end. gr_dreturn=GRAF_DRAGBOX(gr_dwidth,gr_dheight,gr_dstartx, gr_dstarty,gr_dboundx,gr_dboundy,gr_dboundw,gr_dboundh, gr_dfinishx,gr_dfinishy) Moves an (inner) rectangle within a larger, fixed rectangle (the frame rectangle). The function should be called only when a mouse button is pressed, as it terminates when the button is released. gr_dreturn Zero if an error occurred. gr_dwidth Width of inner rectangle. gr_dheight Height of inner rectangle. gr_dstartx Left x coordinate of inner rectangle. gr_dstarty Upper y cordinate of inner rectangle. gr_dboundx Left x coordinate of fram rectangle. gr_dboundy Upper y coordinate of frame rectangle. gr_dboundw Width of frame rectangle. gr_dboundh Height of frame rectangle. gr_dfinishx Left x coordinate of the inner rectangle at function end. gr_dfinishy Upper y coorinate of the inner rectangle at function end. gr_mreturn=GRAF_MOVEBOX(grmwidth,gr_mheight,gr_msourcex, gr_msourcey,gr_mdestx,gr_mdesty) Draws a moveable rectangle with an unchangable height and width. gr_mreturn Zero if an error occurred. grmwidth Width of moveable rectangle. gr_mheight Height of moveamble rectangle. gr_msourcex Left x coordinate of rectangle during function call. gr_msourcey Upper y coordinate of rectangle during function call. gr_mdestx Left x coordinate of rectangle at end of function call. gr_mdesty Upper y coordinate of rectangle at end of function call. gr_greturn=GRAF_GROWBOX(gr_gstx,gr_gsty,gr_gstwidth,gr_gstheight, gr_gfinx,gr_gfiny,gr_gfinwidth,gr_gfinheight) Draws an expanding rectangle. gr_greturn Zero if an error occurred. gr_gstx Left x coordinate at beginning of function. gr_gsty Upper y coordinate at beginning of function. gr_gstwidth Width of rectangle at beginning of function. gr_gstheight Height of rectangle at beginning of function. gr_gfinx Leftx coordinate at end of function. gr_gfiny Upper y coordinate at end of function. gr_gfinwidth Width of rectangle at end of function. gr_gfinheight Height of rectangle at end of function. gr_sreturn=GRAF_SHRINKBOX(gr_sfinx,gr_sfiny,gr_sfinwidth, gr_sfinheight,gr_sstx,gr_ssty,gr_sstwidth,gr_sstheight) Draws an expanding rectangle. gr_sreturn Zero if an error occurred. gr_sfinx Leftx coordinate at end of function. gr_sfiny Upper y coordinate at end of function. gr_gfinwidth Width of rectangle at end of function. gr_sfinheight Height of rectangle at end of function. gr_sstx Left x coordinate at beginning of function. gr_ssty Upper y coordinate at beginning of function. gr_sstwidth Width of rectangle at beginning of function. gr_sstheight Height of rectangle at beginning of function. gr_wreturn=GRAF_WATCHBOX(gr_wptree,gp_wobject,gr_winstate, gr_woutstate) Establishes the state of an object depending upon the mouse cursor. gr_wreturn Returns the status of the mouse cursor when the mouse button is released: 0 = outside, and 1 = inside the object to be watched. gr_wptree Address of the applicable object tree. gr_wobject Object number of object to be watched. gr_winstate Status (OB_STATE) of the object to be watched, if the mouse cursor is inside the object. gr_woutstate Status (OB_STATE) of the object to be watched, if the mouse cursor is outside the object. gr_slreturn=GRAF_SLIDEBOX(gr_slptree,gr_slparent,gr_slobject,gr_slvh) Returns slider information. The outline of a rectangle (slider) may be moved within a frame rectangle. But the moveable rectangle may only be moved horizontally or vertically. The moveable rectange must, in addition, be a 'child' object of the frame rectangle in an object tree. This function should only be called when a mouse button is pressed; the function is exited when the mouse button is released. gr_slreturn Relative position of the slider within the frame rectangle (0=left or above, 1000=right or doen). gr_slptree Addres of the applicabe object tree. gr_slparent Object number of the frame parent. gr_slobject Object number of the slider. gr_slvh Slider orientation: 0 = Horizontal 1 = Vertical. gr_handle=GRAF_HANDLE(gr_hwchar,gr_hhchar,gr_hwbox,gr_hhbox) Returns the handle of the current VDI workstation. gr_handle Handle of the VDI workstation. gr_hwchar Width in pixels of a character from the standard character set. gr_hhchar Height in pixels of a character from the standard character set. gr_hwbox Width of a rectangle that embraces a standard character. gr_hhbox Height of a rectangle that embraces a standard character. gr_moreturn=GRAF_MOUSE(gr_monumber,gr_mofaddr) Determines the appearance of the mouse cursor. Eight predefined or one user defined form may be selected. gr_moreturn Zero if an error occurred. gr_monumber Number of the mouse cursor form: 0 ARROW Arrow 1 TEXT_CRSR Vertical Line 2 HOURGLASS Bee 3 POINT_HAND Pointing hand 4 FLAT_HAND Flat hand 5 THIN_CROSS Thin reticule 6 THICK_CROSS Thick reticule 7 OUTL_CROSS Reticule outline 255 USER_DEF Defined by user 256 M_OFF Turn mouse cursor off 257 M_ON Turn mouse cursor on. gr_mofaddr Address of the bit information for the user defined mouse cursor. 37 words are expected as follows: 1 x coordinate of the hot-spot. 2 y coordinate of the hot-spot. 3 Number of colour planes, always 1. 4 Colour of mask, always 0. 5 Mouse cursor colour, always 1. 6 to 21 Mask data. 22 to 37 Mouse cursor data. gr_mkresvd=GRAF_MKSTATE(gr_mkmx,gr_mkmy,gr_mkmstate,mr_mkkstate) Returns the current mouse cursor coordinates as well as the mouse button and keyboard status. gr_mkresvd Reserved, always 1. gr_mkmx x coordinate of the mouse cursor. gr_mkmy y coordinate of the mouse cursor. gr_mkmstate Mouse button status: Bit 0 Left button Bit 1 Right button gr_mkkstate Keyboard status with the following bit settings: Bit 0 Right shift key Bit 1 Left shift key Bit 2 Control key Bit 3 Alternate key. Scrap Library sc_rreturn=SCRP_READ(sc_rpscrap$) Reads the current scrap directory path. sc_rreturn Zero if an error occurred. sc_rpscrap$ Buffer into which the path is copied; must be enough for the names of many subdirectories. sc_wreturn=SCRP_WRITE(sc_wpscrap$) Establishes a new path for the current scrap directory. sc_wreturn Zero if an error occurred. sc_wpscrap$ New path. File Selector Library fs_ireturn=FSEL_INPUT(fs_iipath$,fs_insel$,fs_iexbutton) Calls up the standard file selector box. fs_ireturn Zero if an error occurred. fs_iipath$ Initial directory path; contains final directory path on exit. fs_insel$ Default filename; contains the chosen filename on exit. fs_iexbutton Button status. 0 Cancel button selected. 1 Ok button selected. Window Library wi_return=WIND_CREATE(wi_crkind,wi_crwx,wi_crwy,wi_crwh,cr_wiwh) Registers a new window, sets the window attributes, as well as the maximum size, and returns the window handle. wi_return Zero if an error occurred, otherwise window handle. wi_crkind Window attributes with the following bit settings: $0001 NAME Title bar with name. $0002 CLOSE Closing field. $0004 FULL Field for full size. $0008 MOVE Moving bar. $0010 INFO Info line. $0020 SIZE Adjustment of window size. $0040 UPARROW Arrow up. $0080 DNARROW Arrow down. $0100 VSLIDE Vertical slider. $0200 LFARROW Arrow left. $0400 RTARROW Arrow right. $0800 HSLIDE Horizontal slider. wi_crwx Left-most x coordinate. wi_crwy Upper y coordinate. wi_crwh Width of window. cr_wiwh Height of window. wi_oreturn=WIND_OPEN(wi_ohandle,wi_owx,wi_owy,wi_oww,wi_owh) Displays a window previously created with WIND_CREATE. wi_oreturn Zero if an error occurred. wi_ohandle Window handle. wi_owx Left x coordinate. wi_owy Upper y coordinate. wi_oww Width of window at start of function. wi_owh Height of window at start of function. wi_clreturn=WIND_CLOSE(wi_handle) Closes the applicable window. wi_clreturn Zero if an error occurred. wi_handle Handle of the applicable window. wi_dreturn=WIND_DELETE(wi_dhandle) Deletes the window, and makes the reserved storage area, as well as the applicable window handle, available again. wi_dreturn Zero if an error occurred. wi_dhandle Handle of the applicable window. wi_greturn=WIND_GET(wi_ghandle,wi_gfield,wi_gw1,wi_gw2,wi_gw3, wi_gw4) Depending on the function number, returns information about a window. wi_greturn Zero if an error occurred. wi_ghandle Handle of the applicable window. wi_gfield Depending on the function number, information about the applicable window is returned in wi_gw1,wi_gw2,wi_gw3 and wi_gw4. 4 WF_WORKXYWH Calculates the coordinates of the work area: wi_gw1 Left x coordinate. wi_gw2 Upper y coordinate. wi_gw3 Width of the applicable window. wi_gw4 Height of the applicable window. 5 WF_CURRXYWF Calculates the coordinates of the whole window including the borders: wi_gw1 Left x coordinate. wi_gw2 Upper y coordinate. wi_gw3 Width of the applicable window. wi_gw4 Height of the applicable window. 6 WF_PREVXYWH Calculates the total size of the previous window: wi_gw1 Left x coordinate. wi_gw2 Upper y coordinate. wi_gw3 Width of the applicable window. wi_gw4 Height of the applicable window. 7 WF_FULLXYWH Calculates the total size of window at it's largest possible expansion: wi_gw1 Left x coordinate. wi_gw2 Upper y coordinate. wi_gw3 Width of the applicable window. wi_gw4 Height of the applicable window. 8 WF_HSLIDE Returns the position of the horizontal slider: wi_gw1 (1=fully left,1000=fully right). 9 WF_VSLIDE Returns the position of the vertical slider: wi_gw1 (1=completely up,1000-completely down). 10 WF_TOP Returns the handle of the upper window: wi_gw1 Window handle. 11 WF_FIRSTXYWH Returns the coordinates of the first rectangle in the rectangle list of the applicable window: wi_gw1 Left x coordinate. wi_gw2 Upper y coordinate. wi_gw3 Width of the applicable window. wi_gw4 Height of the applicable window. 12 WF_NEXTXYWH Returns the coordinates of the next rectangle in the rectangle list of the applicable window: wi_gw1 Left x coordinate. wi_gw2 Upper y coordinate. wi_gw3 Width of the applicable window. wi_gw4 Height of the applicable window. 13 WF_RESVD Reserved. 15 WF_HSLIZE Calculates the size of the horizontal slider relative to the bar: wi_gw1 -1=minimum size (1=small,1000=total width). 16 WF_VSLIZE Calculates the size of the vertical slider relative to the bar: wi_gw1 -1=minimum size (1=small,1000=total height). wi_sreturn=WIND_SET(wi_shandle,wi_sfield,wi_sw1,wi_sw2,wi_sw3, wi_sw4) Depending upon the function number, changes parts of the applicable window. wi_sreturn Zero if an error occurred. wi_shandle Handle of the applicable window. wi_sfield Parts of the applicable window are changed, depending on the number of the function. 1 WF_KIND Sets new window parts (established like WIND_CREATE). wi_sw1 New window part. 2 WF_NAME Establishes a new window title. wi_sw1 Contain the address of the string. wi_sw2 Contain the address of the string. 3 WF_INFO Establishes a new info line. wi_sw1 Contain the address of the string. wi_sw2 Contain the address of the string. 5 WF_CURRXYWH Establishes window size. wi_sw1 Left x coordinate. wi_sw2 Upper y coordinate. wi_sw3 Width of the applicable window. wi_sw4 Height of the applicable window. 8 WF_HSLIDE Positions the horizontal slider. wi_sw1 (1=fully left,1000=fully right). 9 WF_VSLIDE Positions the vertical slider. w1_sw1 (1= fully up,1000=fully right). 10 WF_TOP Establishes the upper (active) window. wi_sw1 Handle of the new active window. 14 WF_NEWDESK Establishes a new desktop menu tree. wi_sw1 High word, wi_sw2 Low word of the menu tree address. wi_sw3 Number of the first object to be drawn. 15 WF_HSLIZE Establishes the size of the horizontal slider relative to the bar. wi_sw1 -1=minimum size (1=small,1000=total width). 16 WF_VSLIZE Establishes the size of the vertical slider relative to the bar. wi_sw1 -1=minimum size (1=small,1000=total width). wi_freturn=WIND_FIND(wi_fmx,wi_fmy) Determines the handle of a window at the specified coordinates. w1_freturn 0=no window with these coordinates, otherwise the handle of the window found is returned. wi_fmx x coordinate of the applicable screen position. wi_fmy y coordinate of the applicable screen position. wi_ureturn=WIND_UPDATE(wi_ubegend) Coordinates all actions connected with the construction of the screen, especially in relation to pull down menus. wi_ureturn Zero if an error occurred. wi_ubegend Function number: 0 END_UPDATE Screen construction finished. 1 BEG_UPDATE Screen construction begins. 2 END_MCTRL Application hands over mouse control. 3 BEG_MCTRL Application takes total mouse control; pull down menus, in particular, are blocked. wi_creturn=WIND_CALC(wi_ctype,wi_ckind,wi_cinx,wi_ciny,wi_cinw, wi_cinh,wi_coutx,wi_couty,wi_coutw,wi_couth) Calculates the total expansion of a window from the size of the workstation, or revises the size of the workstation from the size of the window. wi_creturn Zero if an error occurred. wi_ctype 0 Calculate total expansion. 1 Calculate workstation. wi_ckind Window parts: $0001 NAME Title bar with name. $0002 CLOSE Closing field. $0004 FULL Field for full size. $0008 MOVE Moving bar. $0010 INFO Info line. $0020 SIZE Adjustment of window size. $0040 UPARROW Arrow up. $0080 DNARROW Arrow down. $0100 VSLIDE Vertical slider. $0200 LFARROW Arrow left. $0400 RTARROW Arrow right. $0800 HSLIDE Horizontal slider. wi_cinx Known coordinates. wi_ciny wi_cinw wi_cinh wi_coutx Calculated coordinates. wi_couty wi_coutw wi_couth Resource Library re_lreturn=RSRC_LOAD(re_lpfname$) Reserves RSRC_LOAD storage space and loads a resource file. re_lreturn Zero if an error occurred. re_lpfname$ Path of the applicable resource file. re_freturn=RSRC_FREE() Releases the storage space,reserved by RSRC_LOAD. rs_freturn Zero if an error occurred. re_greturn=RSRC_GADDR(re_gtype,re_gindex,re_gaddr) Determines the address of the resource structure after loading with RSRC_LOAD. re_greturn Zero if an error occurred. re_gtype Structure type sought: 0 Object tree 1 OBJECT 2 TEDINFO 3 ICONBLK 4 BITBLK 5 STRING 6 Image data 7 Obspec 8 te_ptext 9 te_ptmplt 10 te_pvalid 11 ib_pmask 12 ib_pdata 13 ib_ptext 14 bi_pdata 15 ad_frstr 16 ad_frimg re_gindex Object number of structure sought. re_gaddr Address of structure sought. re_sreturn=RSRC_SADDR(re_stype,re_sindex,re_saddr) Files the address of a resource data component in storage. re_sreturn Zero if an error occurred. re_stype Structure type: 0 Object tree 1 OBJECT 2 TEDINFO 3 ICONBLK 4 BITBLK 5 STRING 6 Image data 7 Obspec 8 te_ptext 9 te_ptmplt 10 te_pvalid 11 ib_pmask 12 ib_pdata 13 ib_ptext 14 bi_pdata 15 ad_frstr 16 ad_frimg re_sindex Position within the data structure where re_saddr is to be written to. re_saddr Address to be stored. re_oresvd=RSRC_OBFIX(re_obtree,re_oobject) Changes the object coordinates from character to pixel representation. This is necessary when objects are integrated directly into the program, instead of loading the tree with RSRC_LOAD. re_oresvd Reserved, always 1. re_obtree Address of the applicable object tree. re_oobject Object number of the object to be changed. Shell Library sh_rreturn=SHEL_READ(sh_rpcmd$,sh_rptail$) Returns the name and the command line which called the application. sh_rreturn Zero if an error occurred. sh_rpcmd$ String for the command line. sh_rptail$ String for the name. sh_wreturn=SHEL_WRITE(sh_wdoex,wh_wisgr,sh_wiscr,sh_spcmd$, sh_wptail$) Tells the AES that another application should be started. The actual program does not remain memory resident, as with the GEMDOS command PEXEC. sh_wreturn Zero if an error occurred. sh_wdoex 0=Do not start an additional application. 1=Load new program. wh_wisgr 0=Not graphic application. 1=Graphic application. sh_wiscr 0=Not GEM application. 1=GEM application. sh_spcmd$ String with the command line. sh_wptail$ String. sh_greturn=SHEL_GET(sh_gaddr$,sh_glen) Allows reading from the environment storage. sh_greturn Zero if an error occurred. sh_gaddr$ Destination memory area. sh_glen Number of bytes to read. sh_preturn=SHEL_PUT(sh_paddr$,sh_plen) Allows writing of a number of characters to the environment memory block. sh_preturn Zero if an error occurred. sh_paddr$ Address of the character buffer. sh_plen Number of bytes to be written. sh_freturn=SHEL_FIND(sh_fpbuff$) Searches for a file to be loaded. sh_freturn Zero if an error occurred. sh_fpbuff$ String containing the filename. After the function, this string contains the complete path to the file. For that reason, the maximum length must be defined. sh_eresvd=SHEL_ENVRN(sh_epvalue,sh_eparm) Determines the variable values in the DOS environment (i.e. PATH=A:\) sh_eresvd Reserved. sh_epvalue Starting address of search string. sh_eparm String containing the search parameter (i.e PATH) AES Data Structures Object structures: Offset Contents Type 00 ob_next word Pointer to next object. 02 ob_head word Pointer to first child. 04 ob_tail word Pointer to last child. 06 ob_type word Type of object. 08 ob_flags word Object information. 10 ob_state word Status of the object. 12 ob_spec long Pointer to additional info. 16 ob_x word x position of the object. 18 ob_y word y position of the object. 20 ob_w word width of the object. 22 ob_h word height of the object. These variables may be accesses in GFA BASIC 3 with the following functions: OB_NEXT(tree_adr%,obj&) OB_HEAD(tree_adr%,obj&) OB_TAIL(tree_adr%,obj&) OB_TYPE(tree_adr%,obj&) OB_FLAGS(tree_adr%,obj&) OB_STATE(tree_adr%,obj&) OB_SPEC(tree_adr%,obj&) OB_X(tree_adr%,obj&) OB_Y(tree_adr%,obj&) OB_W(tree_adr%,obj&) OB_H(tree_adr%,obj&) Furthermore, the address of the object may be found with OB_ADR(tree_adr%,obj&). While tree_adr% is the address of the object tree, and obj& the number of the object about which the information is required. The following OB_TYPE values are possible. Depending on the value of OB_TYPE, OB_SPEC is the address of different information structures. OB_TYPE OB_SPEC G_TEXT 21 Address of a TEDINFO structure. G_BOXTEXT 22 Address of a TEDINFO structure. G_IMAGE 23 Address of a BITBLK structure. G_USERDEF 24 Address of a USERBLK structure. G_BUTTON 26 Address of string, containing the text. G_STRING 28 Address of the applicable string. G_FTEXT 29 Address of a TEDINFO structure. G_FBOXTEXT 30 Address of a TEDINFO structure. G_ICON 31 Address of a ICONBLK structure. G_TITLE 32 Address of the applicable string. G_BOX 20 G_IBOX 25 G_BOXCHAR 27 OB_SPEC contains information that concerns the characters, frames, and object colour of the applicable object for G_BOX,G_IBOX and G_BOXCHAR. Only the upper eight bits of G_BOXCHAR are used. They contain the following values for the frame: 0 No frame. 1 to 128 Frame is 1 to 8 pixels inside the applicable object. -1 to -128 Frame is 1 to 128 pixels outside the applicable object. Bit settings for the object colour: 1111222234445555 1 frame (0 to 15) 2 text (0 to 15) 3 text mode (0=transparent 1=replace) 4 fill pattern (0 to 7) 5 colour of the inside object. OB_FLAGS NORMAL $0000 SELECTABLE $0001 DEFAULT $0002 EXIT $0004 EDITABLE $0008 RBUTTON $0010 LASTOB $0020 TOUCHEXIT $0040 HIDETREE $0080 INDIRECT $0100 OB_STATE NORMAL $0000 SELECTED $0001 CROSSED $0002 CHECKED $0004 DISABLED $0008 OUTLINED $0010 SHADOWED $0020 Text Information structure (TEDINFO) Offset Contents Type Meaning 00 te_ptxt long Pointer to text 04 te_ptmplt long Pointer to text mask 08 te_pvalid long Pointer to text type mask 12 te_font word Character set 14 te_resvd word Reserved 16 te_just word Text justification 18 te_color word Color of the surrounding box 20 te_resvd2 word Reserved 22 te_thickness word Thickness of frame 24 te_txtlen word Length of text 26 te_tmpln word Length of text mask Icon Structure (ICONBLK) Offset Contents Type Meaning 00 ib_pmask long Pointer to icon mask 04 ib_pdata long Pointer to icon data 08 ib_ptext long Pointer to icon text 12 ib_char word Character within icon 14 ib_xchar word x position of the character 16 ib_ychar word y position of the character 18 ib_xicon word x position of the icon 20 ib_yicon word y position of the icon 22 ib_wicon word Width of the icon 24 ib_hicon word Height of the icon 26 ib_xtext word x position of the text 28 ib_ytext word y position of the text 30 ib_wtext word Width of the text in pixels 32 ib_htext word Height of the text in pixels 34 ib_resvd word Reserved Bit Image Structure (BITBLK) Offset Contents Type Meaning 00 bi_pdata long Pointer to image data 04 bi_wb word Width of image in bytes 06 bi_hl word Height of image in pixels. 08 bi_x word x position of the image. 10 bi_y word y position of the image. 12 bi_color word Color of the image. Application Block Structure (USERBLK) Offset Contents Type Meaning 00 ub_code long Pointer to a user-defined assembler or C function, but not a GFA BASIC function. 04 ub_parm long Pointer to a PARMBLK structure. Parameter Block Structure (PARMBLK) Offset Contents Type Meaning 00 pb_tree long Pointer to object tree 04 pb_obj word Object number 06 pb_prevstate word Previous state 08 pb_currstate word Current state 10 pb_x word x position of the object 12 pb_y word y position of the object 14 pb_w word Width 16 pb_h word Height 18 pb_xc word x pos. of clipping rectangle 20 pb_yc word y pos. of clipping rectangle 22 pb_wc word Width of clipping rectangle 24 pb_hc word Height of clipping rectangle 28 pb_parm long Param. from USERBLK structure. Transfer of GFA BASIC 2 Programs To transfer programs from older GFA BASIC versions to GFA BASIC 3, the programs must first be stored on disk as .LST files, and then they may be MERGED into Version 3. These programs should be able to run without alteration. Only a few incompatibilities exist when going from GFA BASIC 2.xx to 3. The most important ones concern the commands MUL AND DIV. If we use an integer variable as the first parameter, and a floating point expression as the second parameter, 2.xx versions do the calculations in floating-point arithmetic, then the result is converted into an integer. Version 3, however, first 'integerises' the parameters, then does an integer calculation, producing an integer result. Thus x%=100 MUL x%,1.8 PRINT x% In 2.xx, this results in x% equal to 180. However, in Version 3, x% becomes equal to 100. Version 2.xx calculates: x%=TRUNC(100*1.8) but in Version 3: x%=100*TRUNC(1.8) x%=100 DIV x%,2.5 PRINT x% This example for DIV results in 40 in GFA BASIC 2.xx, but in version 3, the value of x% is 50. There are a few additional minor incompatibilities, Refer to the GFA BASIC 3 manual for information. Typed by MERLIN - 1990 February. sewer software presents...... Grimblood --------- This Doc file was typed for your benefit by Joe, So without any further bullshit, I'll hand you over... Hi gang. GRIMBLOOD. starting off.The start screen greets you once grimblood has loaded;it allows a new game to be started, or a game position to be saved or loaded. clicking on start initiates a new game,and passes control to the main castle screen. To save a game,insert a blank formatted disc in the drive before clicking on save. each saved game requires its own disc: the filename is identical for all saved games-so take care when labelling discs. To load a saved game ,put the appropriate disc into the drive and click load; once a game has loaded;control is passed to the main castle screen. if you come to this screen from the middle of a game, perhaps to save the current game position, game time is suspended while you remain here. clicking start returns you to the game in play. A FEW HINTS ON PLAY.... The murderer will continue killing people until everyone is dead or your detective work puts an end to the reign of terror. the occupants of the castle bustle about, moving objects and weapons around the place according to pre-determined ritual patterns. in order to kill again, the murderer has to find an unattended weapon. once a weapon has been secured,the murderer picks a victim and starts moving through the castle... when the murderer finds the murderee alone in a room- then another crime is comitted. a number of variables affect how often the murderer can kill- for instance,its possible to delay the next murder by following the murderer around the castle. on the other hand,game time can be speeded up if you dont want to wait too long for the next death. THE INTERROGATION SCREEN. game time pauses while you use this control screen to talk to the people you meet,ask questions and give orders. the people in the same room as you are shown in the portrait gallery-they are the only people you can talk to. click on an individuals portrait to start a converstion, or click on a tombstone to recap on a murder that has already taken place. click on maximus in the bottom right window as he opens and closes his mouth. TO TOGGLE BETWEEN PORTRAITS click on the left window to swop the portraits between the main view and the left window. TO TALK TO A PERSON click on one of the portraits in the main view window. this calls a close up into view,and by pressing keys F1-F10 you can ask questions of the person. everyone tells the truth- but the murderer lies in response to questions F1 and F4. F1-WAS ANYONE WITH YOU (AT THE TIME OF THE MURDER) F2-EVERYONE MAY GO NOW-RELEASE ANYONE IN THE ROOM WHO HAS BEEN ORDERED TO STAND WATCH F3-WHERE ARE YOU GOING? F4-WHERE WERE YOU AT THE TIME OF THE MURDER? F5-YOU ARE THE MURDERER!(THE MURDERER WILL CONFESS.INNOCENT PEOPLE WILL BE OFFENDED AND DENY YOUR ACCUSATION. BE CAREFUL THOUGH,YOU MAY ONLY HAVE A LIMITED NUMBER OF CHANCES) F6-ARE YOU CARRYING ANYTHING? F7-DID YOU SEE ANYONE(WHILE STANDING WATCH)- ONLY APPLIES TO THOSE PREVIOUSLY ORDERED TO STAND WATCH F8-GO TO ROOM FOR 1/2/3/HOURS-AN ORDER TO STAND WATCH; ORDER NOT ALLWAYS OBEYED .THE CASTLE APPEARS IN THE WINDOW;SELECT A ROOM BY CLICKING ON A PANE ,THEN CONFIRM BY CLICKING ON THE LEFT SCREEN WINDOW -SELECT 1,2 OR 3 HOURS BY CLICKING ON THE CANDLE, THEN CONFIRM BY CLICKING ON THE LEFT SCREEN WINDOW.THE CHARACTER MAY OR MAY NOT AGREE TO ORDER. F9-HAVE YOU USED A WEAPON F10-CARRY ON WITH YOUR DUTYS-RELEASES THE PERSON FROM AN ORDER TO STAND WATCH OK LADS HAVE FUN . AND HAVE A CRACKING DAY TO ALL CREWS. BIG AND SMALL. Sewer Software presents... HARDBALL! BATTER UP Welcome to the most realistic baseball game ever designed. Step up to the plate and try to knock that ball out of the park. You can choose to bunt, steal a base, and control base running. When your team is in the field, you can control the type and location of pitch as well as the fielders. --------------------------------------------------------------- TO START THE GAME: 1. Turn on your color monitor and disk drive. 2. Insert the "HardBall" disk into the disk drive with the label side up. 3. Turn on your Atari ST. 4. Double click on "HARDBALL.PRG". TO RESTART GAME: To restart the game, press the control key in combination with the "R" key. CONTROLS Once the game is loaded, a prompt will appear asking what is plugged into port 0. Answer, keeping in mind the following: For a two player game, two joysticks must be used. If a mouse is used, only one player games are possible. One player games may also be played with a joystick plugged into port 1. SELECT GAME OPTIONS Once the game is loaded and the first prompt has been answered, a "Game Options" menu will appear. This will allow you to choose which team will be the "Home" team, (and of course the other team will be the "Visitors") whether or not to play with a designated hitter(someone who bats in the place of the pitcher(This is now a Hulk Hogan comment: It seems that anyone who need an explanation of a designated hitter doesn't need this game!!)), and which(if any) of the two teams will be played by the computer. Use the mouse/joystick to highlight your selection. Press the button to proceed. ALL-STARS(RED) CHAMPS(BLUE) Home Visitor Visitor Home Home Visitor(DH) Visitor Home(DH) If you have a mouse connected to port 0, you will then highlight and select one of the following choices in the same manner as above: ALL-STARS CHAMPS Joystick 1 Computer Computer Joystick 1 Mouse Computer Computer Mouse Computer Computer Note: You will only be able to play the computer with the mouse plugged in port 0. If you have a Joystick plugged into port 0(for two player games), you will have the following options: ALL-STARS CHAMPS Joystick 0 Joystick 1 Joystick 1 Computer Computer Joystick 1 Computer Computer Make your selection and press button to proceed. How to select the pitch type: When the pitcher screen is first displayed, you will see(on the bottom left) the four pitch types this pitcher can throw. When using a joystick, simply move the stick in the direction of the arrow that is next to the desired pitch and press the fire button. When using a mouse, move the mouse up or down until your desired pitch type is highlighted, then press the mouse button. Your pitch type has now been selected. How to throw the pitch: After you have made your pitch type selection and the batter has selected what he wants to do: If using a joystick, move it in the position you wish to throw the ball and press the fire button. For example, moving the joystick left will cause the ball to be thrown left, and so on. If using a mouse you will see a "tic-tac-toe" grid. By moving the mouse, you can move the white box around the grid. If the box is in the middle, the pitch will go to the middle, if it is on the left, the pitch will go to the left, etc. Press the mouse button when you get to the box corresponding to where you throw the pitch. Your pitch type has now been selected. The pitch will be thrown when you release the mouse button. Fielding the ball: After the ball has been hit, either the left side or the right side of the field will be shown(the side with the ball in it). The fielder who is closest to the ball will be flashing, and will run in the direction selected by moving the mouse/joystick. Throwing to a base: Once the fielder has got the ball, if using a mouse, a grid comes up in the lower left-hand corner of the screen with the numbers(and letter) "1 2 3 H". Move the mouse in the direction of the base you want to throw to and press the button. For a joystick, move the joystick int the direction indicated by the arrow and press the fire button. Manager's Decision Screen The four screens displayed during Hardball are: The Manager's Decision Screen, the Pitcher/Batter Screen, Left Field View, and Right Field View. The game begins with the Manager's Decision Screen. It will also appear if a player presses the space bar on the keyboard at any time during the pitcher screen. In the Manager's Screen, pressing the space bar will "Play Ball"(starting the game action or continuing where you left off). This screen will display a selected line-up for both teams. A check mark will indicate who is at bat and there will also be an indication of who is on which base(1b,2b, or 3b), how they bat(Right, Left, or Switch), the position they play and their batting average. Below each team's roster will be a menu of management decision options which each player may select by highlighting the option and pressing the mouse/joystick button. In the case of "substitution" or "exchange positions" additional screen prompts will be displayed at the bottom. For the other options, highlight your selection and press the mouse/joystick button. The options are as follows: For the team in the field(defense) * 5 choices: *Player substitution *Exchange positions *Outfield(Normal, shift right, or shift left)__ *Infield(Normal or double play) | Parameter Options *(No) intentional walk -- For the team at bat(offense)* 3 choices *Player substitution *Exchange Positions *Switch Hit(if appropriate) If either player selects "substitution" or "exchange positions", the lower portion of the Manager's decision screen will change to the appropriate team. In these modes, press the space bar in the middle of an activity to cancel and return to the game. SUBSTITUTION A line will be displayed to select "substitute" (from bench) with (on roster) at which time the highlighted entry can be selected by moving the joystick/mouse up/down(selecting a player)and pressing the fire button/right mouse button. When the bench entry is specified, you can scroll the list of players on the bench up or down within a 3-line window at the bottom of the screen. Then select the desired player to come onto the field by pressing the fire/right mouse button. When the roster entry is selected, the curser can be moved up or down the roster list, then press the fire/right mouse button to select the player to come off the field. Note: Once a player is substituted out(after the first pitch), he can't return to the field and doesn't go to the bench list. The new player coming onto the field will replace him at his current position. Exchange Positions: Choose the entry to be filled first in a manner similar to that defined above for "substitution" on the line "exchange _____________position with______________position". This will allow vertical scrolling of curser through the roster positions and will show each players full performance statistics at the bottom of the screen. Press fire button/right mouse button to select positions to be exchanged. If you select a player in a position for which he is not suited, then an appropriate message(I.E., "player out of position") will be displayed later. There will be a likelihood of an error in play or poor pitching. Remember, press space bar to start(or continue)play of the game. Game Play Play begins with the pitcher's screen depicting the pitcher, batter, and umpire. At the bottom of the screen there will be two sets of commands. The commands on the left are for the team pitching, (fielding team) and the commands in the middle of the screen are for the team at bat. The right side is reserved for displaying the score, strikes, balls, and other information. The pitcher must select one of the four types of pitches displayed. Each pitcher has only four types of pitches he can throw. There are eight types of pitches altogether: *Fastball!(straight and very fast) *Fastball(straight and fast) *Offspeed(straight) *Change-up(straight slower pitch) *Curve ball(a big sweeping curve) for lefthanded pitchers, the ball curves to the right for righthanded pitchers, the ball curves to the left *Screwball(opposite of curve ball) *Sinker(breaks downward) *Slider(fast breaking curve) The batter must also decide what he wants to do, His options are bunting and stealing bases(any base can be stolen if there is a player in the position to do so). If the batter wants to swing normally, just press fire button/mouse button. If using a joystick and you wish to select steal or bunt, hold the fire button down while moving the joystick in the direction of the arrow next to the desired option. Do not release the button until you have selected all your options. If using a mouse, highlight each option and press button. Once both players have made their selections, a new set of choices are presented at the bottom of the screen. THe pitcher will be able to select the location of the pitch(I.E.,high, inside, etc..)according to the indicated mouse positions or joystick direction. The batter will be able to swing in the desired location according to his mouse or joystick selection. Nine pitching zones over home plate: 2 1 2 x=always a strike 1 x 1 1=high probability of being a strike 2 1 2 2=low probability of being a strike When the ball is hit, the receiving fielder will be identified by blinking. The player may use the mouse/joystick to move the fielder so he can catch(or pick up) the ball. Once he has the ball, he can throw to any of 4 bases(1st, 2nd, 3rd, or home). The team at bat can decide which bases to run to according to the mouse positions or joystick direction in his command window. You may not run to a base if there is already someone on it. You cannot change your mind once you start running. Miscellaneous Notes *As a pitcher gets tired, the probability of throwing a strike goes down. *Certain pitchers will be stronger in some pitching types. *If pitch is not in the strike zone, the batter can swing but can't hit the ball. *When the ball is hit, the fielding screen is displayed and (unless it's a foul ball)when the play is completed, the manager's decision screen will be displayed momentarily before returning to the pitching/batting screen. *When bunting with 2 strikes against you, if the ball goes foul, it is considered your 3rd strike. *Runners have the option of running to the next base upon reaching a base after a hit. *If you tell a runner to steal a base and the batter doesn't hit the ball, then the catcher will attempt to throw the lead runner out. *When someone first steps up to bat, some of his statistics will be displayed. *You may change the flag on the manager's decision screen by pressing alt-A for American flag(default) or alt-C for Canadian flag. Scouting Tips from Bob Whitehead Say hey! Well, I don't know about you but I'll never get a chance to play and manage a big league baseball team, probably the same goes for you. Real baseball that is, like you see at the ballpark or on network T.V. So I used HardBall to fulfill some of my fantasies and I hope you enjoy doing the same. And, like any good manager, you need to develop a good scouting report. So I thought I would give you a partial report on some of the pitchers to give you a head start. ALL-STARS CHAMPS RUSH-Throws a lot of junk EULER-Good screwbSewer Software presents..... MANCHESTER UNITED - THE OFFICIAL COMPUTER GAME DOCS TYPED BY ZARCH! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ At the start of the manual their is a fuckin long story about MANCHESTER UNITED which is irrelevant to the game so i didnt bother typing the it in! Ee! AMIGA Turn on computer, insert managment disk in drive and follow on screen prompts for disk swapping, this product supports external drives! On loading the game you will be presented with screen of animated icons, by positioning the cursor over any of these and pressing the left mouse button twice you select the section the icon represents TEAM SQUAD (Piccy of Full Squad) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This gives you details of the current available first team squad for UNTIED, players that are unavailable through injury or suspension are not shown in this section. By moving the cursor over the players name and pressing the left mouse button once the players details are displyed, this will include the players ratings these ratings are derived from the computers record of the player attributes in 16 catergories and which are then converted to a rating for the player relevant to his actual position in the team, these ratings will change through- out the season due to injury, form and results as well as by the sucessfull use of training. You start the season with a fully fit squad and no suspended players. PLAYERS INJURED (Piccy of Injured Player being carried off!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This section contains the players who are unavailable for selection due to injury it also contain details of the number of weeks the player will be out for. However he may need a deal of training to regain match fitness, particularly after a serious injury. PLAYERS SUSPENED (Piccy of Whistle, Pencil and Notepad!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This gives a list of players suspended, if any, together with how many more weeks they have to serve in their ban. TRANSFERS (Piccy of TV Screen With Player on Screen!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This section allows you to buy and sell players to strengthen your sqaud. BUYING A PLAYER : To try to buy a player you position the cursor over the icon of figures and press the left mouse button twice you will then select either to view the transfer list of players available or scout for a player. The transfer list is the list of players currently being circulated by their clubs that are available for transfer this information is being circulated to all clubs not just UNITED. The player has a club valuation which is based on his actual player ratings. If you wish to try and buy a player at the asking price simply select the buy option in the usual way. If you wish to bid for a player then you can adjust the bid price by changing the players valuation up or dwon in tens of thousands use the mouse cursor. Once you have made a bid then the decision of the club is given. If you are sucessful in buying a player then that player is immediatley included in the first team squad. If you elect to scout for a player the computer will then display a list of potential players for purchase. The price of the player will be higher this way as a selling club will not be so willing to sell. SELLING A PLAYER : To sell a player you must click on the PLAYER LEAVING ICON. You can then indicate which player you wish to put on the transfer list. Once a player is on the transfer list other clubs may bid for him. If another club is interested in one of your players on the transfer list or not, then an icon of A CLUB CHAIRMAN WITH A BRIEFCASE FULL OF MONEY is then displayed if you click on this icon then he will make you an offer on a player you may then elect to accept, refuse or if you wish insult the chairman for his derisory (in your view) offer. Selling players will generate funds for you to strengthen the team in other areas or simply look for a replacement. TRAINING (Piccy of 2 players Pumping Iron!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Training takes place on the days between matches and follows a set schedule. As manager you are free to alter the training schedule of any or all of the players according to their needs. Each player is assigned training to certain aspects of the game, and may train on any four in each week. The manager may change either the content or the emphasis of the training for each and every player. Throughout the season the players needs in training will alter as their fitness and form varies with results. Each session has a positive effect on the players attributes that it is designed to affect so that over the season the benefits will show themselves in the player ratings. In certain circumstances, however, training can have a negative effect, both on fitness and morale. Heavy training also increases the risk of incurring injuries during training. Training requires balance and thought. Too little and the players will lose fitness and form. Too much and the players will be tired and injury prone. DISK OPTIONS (Piccy of Disk & Machine!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This section allows you to save off partially completed seasons onto formatted disks, and also includes a disk formatting options. This is accomplished by following the on-screen prompts after selecting the relevant SAVE/LOAD/FORMAT option. The central icon represented by the question mark allows you to adjust the game parameters. SET GAME TIME - Allows the player to set the arcade game duration to any time between 10 and 90 minutes in 10 minute steps CHANGE LANGUAGE - Allows the player to choose the language the game is presented in, with the default being English. CHANGE NAME OF MANAGER - The default setting is, of course Alex Ferguson, but this allows the player to change the manager to any name he likes. DEFINE KEYS FOR JOYSTICK - Allows the player to select his own keys to control the arcade section of the game. CHANGE NAMES OF PLAYERS - Allows the player to change the names of the players in the UNITED squad, although not their rating, to allow him to play alongside Bryan Robson. SET DIFFICULTY - This unique feature allows the player to set how well the computer will play, either as UNITED, their opponents or as both. This will enable him to play the computer opponent at varying levels until he can win 100%, at which point he can reduce his own effiency! CHANGE GAME TYPE - Allows the player to choose between a full management simulation, or a pure arcade game. SET KEYMAP - selects the appropriate keymap for the computer based on the flag selected. PROGRESS CHART (Piccy of Man Holding Chart!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The player can keep his eye on the results and tables as well as his own popularity through the Daily Sport newspaper. Good or Bad - the news is here first! THE MATCHBALL (Piccy of Football!! - Obvious or what!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This takes the player to the matchday section of the game. The player can also review the league tables and fixture list at this point. This may affect the team selection, and show how well future opponents are doing. The player may change the name of any team in the division to a team of his choice. That team will then automatically included in the fixture list. Should MANCHESTER UNITED progress to the latter stages of the cup competitions then the cup draw will be displyed `LIVE' on the screen for the player to watch. MATCHDAY SECTION (Piccy of Player Standing With Ball At His Feet!!) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Once the player has decided to go to the next match then the managers job really begins. First he must decide his formation and the players he wishes to play. FORMATION To choose formation single click on the number representing your choice of the following formations: 4-4-2 4-3-3 4-2-4 1-3-3-3 2-3-5 After you have made your choice of formation a list of players availbale for selection will appear on your clip-board, and you will then be asked to select your team by clicking on the name of the player. Once the match is over then the computer will update both the fixtures list and the league table with the other results from the days fixtures. In addition the Daily Sport will give the press verdict on the result or the seasons progress in typical tabloid fashion. On completion of the match, the manager is returned to the management section of the game, where he can check on the progress of the team in the league, or the health of his squad. Any players injured during the match will be added to the injury list, as will any players who have gained suspension through yellow or red cards. He can then begin again the process of strengthening his squad, and adjusting the players training schedule. During the season the manager may wish to save his progress to date, so as to return his position later. He can do this by clicking on the disk icon. This will allow the player to enter the section of the game that allows him to format a disk to save his position, and once he has done so to save out or load in a previously saved postion. To perform any of these operations the manager simply has to select the appropriate disk icon and follow on-screen prompts. ARCADE SECTION ~~~~~~~~~~~~~~ On entering the arcade section the player will be in view mode. To enter play mode press joystick after kick-off. In view mode the computer will play the game so that the player can watch and suffer just like a real manager. The players will carry out their instructions to the best of their ability. In play mode the manager controls the team either through the joystick or keyboard. The player nearest the ball at any time is highlighted by four arrow-heads on the pitch pointing at the player. This changes as the ball moves around the pitch. By moving the joystick the highlighted player moves in the chosen direction. Once in possession the player can run with the ball using the method above or kick it, either to pass or shoot. The ball is kicked in the direction the player is facing by pressing the fire button, and the durationof the press dictates the power of the kick. A rapid, quick press of the button will kick the ball along the ground with resonable strength. Two quick presses will chip the ball with a resonable strength. Holding down the fire button will set the strength of the kick depending on how long the fire button is held. If the fire button is pressed again the ball will be chipped, otherwise passed along the ground. When not in possession the player can challenge for the ball by interposing a player as the opponent runs with the ball. A sliding tackle may be performed by pressing the fire button. If a goal is scored then the video screen at the ground will replay the goal for the crowd. CORNERS ~~~~~~~ For corners in play mode a cursor will appear on the screen which you must position where you want the ball to land. There is a strict time limit which you are allowed to take corners before the computer will take them for you. This will stop any tme wasting. FREE KICKS ~~~~~~~~~~ SAME AS FOR CORNERS!! PENALTIES ~~~~~~~~~ If you have been awarded a penalty move the joystick in the direction you wish the ball to go as viewed behind the player who is taking the penalty. Press fire to take. If a penalty has been given against MANCHESTER UNITED hold the joystick in the direction you wish the goalkeeper to dive as viewed form behind the goalkeeper. After the ball is struck you cannot change direction. The season can be played with any combination of VIEW and PLAY matches, as the player requires. TWO PLAYER MODE ~~~~~~~~~~~~~~~ Replace mouse with second joystick and press fire to enter the game at anytime after the kick-off. Docs Typed In By ZARCH! Greetings to..... Cosy, Teknichian, Spreader, Scooter, Annihilator, Mike & The Rest. P.S - If their are any spelling Mistakes (Very Probably), I Apologise - OK! Later............................................................ZARCH!ce of the player will be higher this way as a selling club will not be so willing to sell. SELLING A PLAYER : To sell a player you must click on the PLAYER LEAVING ICON. You can then indicate which player you wish to put on the transfer list. Once a player is on the transfer list other clubs may bid for him. If another club is interested in one of your players on the transfer list or not, then an icon of A CLUB CHAIRMAN WITH A BRIEFCASE FULL OF MONEY is then displayed if you click on this icon then he will make you an offer on a player you may then elect to accept, refuse or if you wish insult the chairman for his derisory (in your view) offer. Selling players will generate funds for you to strengthen the team SEWER SOFTWARE PRESENTS.... Might and Magic II - Gates to Another World A Fantasy Role-Playing Simulation The Complete Docs Typed by: Ollie North Spell List Typed by: Evil Priest Prologue 'An account of Corak the Mysterious' unsettling disappearance as told by his apprectice, Gwyndon the Young: Corak has always held many dire secrets, but recently he had shown signs of being outwardly distressed. This troubled me greatly as what could disturb one so powerful and composed as Corak the Mysterious? Was he not only High Priest as well as being regarded by all as a most accomplished warrior and being the most powerful Archmage other than King Kalohn the Vanquished? He was all that the knowledgable strive to be and what the ignorant claim to be. Corak used to tell me stories of different, wondrous worlds with hideous monsters and mighty warriors. he once even mentioned that he came from another world. I thought his stories mere fables or myths meant to entertain me. Little did I know that he spoke the truth and that a problem would arise from this truth that would drive him mad. One day while I was working on translations of a sorcerous scroll, Corak burst into the library with a harried look on his brow. He told me of an alien criminal from another reality who had escaped into our beloved CRON! Corak then promptly forgot that I was present and proceeded to curse and mumble profusely as he searched through the books for some lost text which contained a gleaming of information which might help him expel the dangerous alien. Being insatiably curious, I attempted to eavesdrop on the conversation he was having with himself. He spoke of CRON being out of alignment with other worlds, of a highly destructive alien being named Sheltem, and of an anointed champion who could reaqlign CRON before a horrific wave of fiery destruction would sweep across and destroy the land. After his foray in the library, Corak acted quite strangely during the next few days. He would lock himself up in his private study for hours at a time. Frightful noises emanated from behind the locked door and then, suddenly, they would stop. He would emerge changed each time in some subtle fashion. He would enter the study after devouring almost an entire banquet by himself and exit with an appetite as if he had not eaten in days. Other times he would be wan and pale from long hours of intensive research done in the library. He would then go to the study and exit in a few hours with a tan as if he had just returned from Murray's Resort Isle, baski in the sun there for a week. This weird behavior continued for almost a fortnight. One day, he left his study after an unusually long session and immediately started screaming about the end of the world and how he could not stop it. Amazingly, he was covered in snow and yet it was mid-summer! He then looked about it desperation and withdrew a strange, four-taloned claw which i had never even seen before. Corak then uttered a spell which caused a blinding glow of sheer power to evelope his body. He was terrible to behold, bathed in an eerie shower of what must of been pure ethereal energy, just standing there, exalting in his newfound might. Might and Magic II Page 1 Seconds later, a clap of thunder shook the building and Corak was gone. I believe that he transported himself away in order to try to stop the mystifying doom which lay upon CRON. Unfortunately, I have my doubts. Maybe the spell of power was too much for Corak the Mysterious and he brought about his own destruction. I do not know anything for sure. After all, I am now only an apprentice without a master to tell me if I am right or wrong. A week later, Lord Pinehurst visited and went into Corak's study. The strange, eerie noises started again and Lord Pinehurst was gone. I entered the study and noticed that one of Corak's machines was missing. Next day I received a sealed letter delivered by special courier from Lord Pinehurst. He wrote that he was fine, not to worry and that I should travel to Castle Pinehurst to continue my studies. I go now and hope that this growing chaos in my life will soon end. Page 2 History of CRON 'This being a synopsis of the histories of CRON as gathered by Corak the Mysterious and found in his study in the Luxus Palace Royale by Gwyndon the Young: I, Corak,, called the Mysterious, have gathered these histories of the world aptly called CRON through personal experiences gained by the use of a magical artifact which allows travel through the very fabric of time itself. At first, there was only void. Yet, in the nothing something arose. An ethereal substance capable of supporting life came into existence. From the time of this forming shall I, as do all in CRON, reckon time. The shaping of this etherealness took well-nigh one century to occur and develop into recognizable form. Next, water in vast amounts came from disorder and remained to mix with the ether. Strange beings arose out of this chatoic union. Elemental lords of great power warred for control of the waters. The greatest of these was powerful Acwalandar, mightiest and most majestic of all the Water Kings. Preternatural fierceness combined with uncanny intelligence allowed him to hold unquestionable dominion over all of the other elementals. He reigned supreme for three score and a generation years, then turmoil erupted. Potent creatures from an unknown, mystical land charged into CRON with conquest of the brutal Water Lords as their goal. A battle which would last centuries began. Acwalandar and his minions were taken by suprise and the strange beings gained a foothold which they would not release. Puzzlement and fear of the unknown swept through the ranks of the normally stolid water elementals. Who were these warriors who suddenly came from nowhere? They were Spirits of the Air come from afar to expand their empire. Their lord was terrible indeed, a creature of tumultuous air named Shalwend who could call upon tremendous legions of vicious air elementals to blow back the shocked Water Lords. Air fought with Water for over a century, until reaching a level of equilibrium which neither side could change. Seeking to upset the deadlock and gain the momentum in the war against the air elementals, Aswalandar charged his servitors to create an ultimate weapon. He received much more than he wanted. His vassals summoned forth incredibly powerful creatures of destruction that would remain under the Water Lords total dominance. Fire elementals were issued forth . These hateful monsters sole purpose in life was to destroy, and at destruction their like will never be approached. They sucked the life out of the Air Spirits without mercy forcing them to endure a slow, consuming burn until there was nothing left. However, the Fire Lords were few in number and could not totally destroy the Masters of the Wind. The leader of the burning horde, Pyrannaste, Master of Flame, dislike the iron-fisted fule of Acwalandar and the Water Lords. Any hesitation of a fire elemental in carrying out an order issued by a Water Lord would result in extinguishment. Pyrannaste waited, for he was patient, and even though he and his vassals chafed under the rule of the water elementals they hated Shalwend and the air elementals even more. Page 3 Eighty years of servitude and war passed for the Fire Lords until Pyrannaste deemed the time proper for rebellion against Acwalandar. Wanting only to escape servitude while still being able to crush the ranks of the despised Shawend, the Master of Flame attempted to break away peacefully from the air elementals. At first they succeeded, but resentment and overconfidence built up in the Legions of Water. Are not hte fire elementals our servants, brought forth by us to serve our needs? Can we not crush them as we crushed the Masters of the Winds? This the armies of Acwalandar thought, forgetting that the might of the air horde must be fought once again without aid. Also forgetting that in order to extinguish a fire elemental, a Water Lord loses much of himself in the struggle that ensues. Shrewd Acwalandar realized that the Water Lords could not hope to end victorious in a war against both the air and the fire elementals. However, his counsel fell upon deaf ears. What good is the voice fo reason to an angry mob? For fifty years Water fought Air and Fire, Fire fought Water and Air, and Air fought Fire and Water. Battle were bloodthirsty and allies were nonexistent. CRON had transformed into a chaotic battlefield with no one group able to assert itself over the others. And then came disaster. From places vaguely rumored to exist came the most fearsome creatures yet. Emperors of Earth they called themselves. They were led by Gralkor the Cruel. In one fell stroke they invaded CRON and caused the petty struggles between Water, Air, and Fire to come to an utter halt. Ancient enemies were forced to unite for survival against the new, common enemy. At first, the earth elementals appeared invulnerable. Eighty years and innumerable battles later, a method was found to stop them. Acwalandar and the Water Lords would soak the earth elementals with a flood of water. Then, Pyrannaste and the Fire Lords would bake the dissipated creatures into dry silt. Finally, Shalwend and the Air Spirits would lift the si lt into the sky and spread all of the particles across the world, leaving the earth elemental utterly eradicated. Alas, the effort by the three elemental tribes was too late to stop Gralkor the Cruel and the Emperors of Earth. They had pooled together and formed a giant mass of earthen matter which floated upon water, was immune to fire, and which would not scatter as leaves upon the wind. For twenty more years the elementals attempted to overcome the earthen landmass of Gralkor the Cruel. They failed miserably and the Emperors of Earth assumed command of what would become CRON. By the year 500, Gralkor and the earth elementals were busily constructing a fixed land area with the toil of their slaves. For almost one hundred years all of the elementals, Water, Air, Fire, and Earth, struggled to perfect the landmass. What they came up with is what we know as the physical land of CRON. Rumor of CRON spread to other worlds somehow and an inexorable flow, of what were to the elementals, small pitiful creatures began to populate the work of Gralkor in the seventh century. The creatures were of many different humanoid types, but they all had basic similarities and resistances which enabled them to survive in CRON. Water beaded off them, air swirled past them, fire did burn them, but only under extremes, and might earth they trod upon. The humanoids were able to extract properties from each of the four element's features and use it for their own benefit. But perhaps most Page 4 important of all, they could weave magic. At first, there were few of these pathetic creatures, but they multiplied rapidly and spread across the landmass. The humanoids strengthened after years of toil and pain. Ambitions grew and they attempted to make CRON their own. This aroused the attention of Gralkor the Cruel and forced him into action. Unfortunately for the elementals, Gralkor acted too late. The humanoids had been in CRON for over seventy years and had acclimated themselves to all the difficulties which the elementals could produce They had weapons and spells which would immobilize all but the most powerful elemental lords. Gralkor did not realize this and made a most fatal error, he attacked. He marshalled his forces for the obliteration of the feeble humanoids. The humanoids knew what to expect and lay a trap for the elemental forces. All of the most powerful spell-casters gathered on the Isle of the Ancients and combined their efforts to creat an orb of power. This orb had a mystic receptacle, a four taloned claw. There was a talon for each elemental force and alone, that talon could control the elemental creatures it represented. The four talons could be combined to form a holder for the orb. This formed a weapon of incomparable power which could guarantee the complete submission of destruction of any and all elemental creatures. Many tests were made in order to perfect this weapon. Gross mutilations and horrible deaths were the result of most of these. In the latter part of the eighth century there was a human male weak in magic but strong in courage named Kalohn who tested the orb and survived unmolested. Many humanoids died before this because of Gralkor's attack and the testing of the orb. Kalohn resolved to end it all immediately. He went to the tallest mountain in all of CRON alone. He then challenged the four elemental lords to do battle. Much damage to the land followed, including the transformation of the mountain into the crater we know as The Dead Zone. Kalohn, armed with orange, glowing orb emerged victorious and then banished each of the four elemental tribes to a seperate corner of CRON and formed barriers to keep them imprisoned. Within each elemental zone he placed the corresponding talon of the mightly claw in the order of the elementals' appearance, water, air, fire, and earth. He kept the orb for himself . With the elemental forces banished from direct interaction with the humanoids of CRON, civilization evolved and everyone prospered. Kalohn gained much magic power due to his battle with the elementals and his frequent use of the orb. He became King Kalohn the Conjurer and ruled wisely for thirty or more years. Peace spread throughout the land. Education began of the young and living conditions improved. Communities formed and trade developed. People were happy and content. Then in the mid ninth century, the elementals struck back. Unable to physically enter CRON and maddened at the elemental's defeat at the hands of a single, puny human, Acwalandar studied that which defeated him, magic. He had a great aptitude for sorcery and learned quickly by studying the humanoids who ventured near his realm. He gained particular skill in forming and summoning. Using this skill, Acwalandar formed a fell creature of enormous girth and power. He filled it with life from many of his followers and endowed it with the most fearsome of weapons known to him, fire. He had created the first dragon, a creature of mindless destruction and incredible strength. This dragon was formed just outside of the water barrier and left Acwalandar with the intent to destroy Kalohn and then CRON. Page 5 King Kalohn the Conjurer sensed the dragon's creation and the threat it posed. He sought it out ot vanquish it and quell the elemental lords forever. He met the dark creature in the beautiful Savannah of Plenty. Unfortunately, mighty as he was, Kalohn had only the power of the now faintly glowing orb with him and perished after a disappointingly quick battle. The dragon breatherd barrels of flame and engulfed Kalohn entirely, consuming him in a bath of fiery death. Kalohn had attempted to cast a spell which would form a shield of water to protect himself, but the spell was changed as a last minute surge of power from teh orb went through Kalohn's body and caused a flood to ravage the Savannah. For all the might of the dragon, he could not fly without wings and was too heavy to swim. He died a slow death, powerless against the natural habitat of his master. Aftereffects of the battle were numerous and disastrous. The Savannah of Plenty was destroyed and became the Quagmire of Doom, an area of great evil. However, it is rumoured that the orb still exists somewhere in the Quagmire, though no one has ever found it. Dragons entered CRON through once closed corridors and wreaked havoc amoung the populace. Pricess Lamanda, Kaholn's daughter, assumed a tentative command of the land. All of these factors led to regression and the ultimate downfall of the level of civilization which had been achieved. Now it is the tenth century and chaos reigns. Swords and sorcery have replaced law and order as the way of life. Monsters roam the land of CRON freely and do as they please. Isolated areas hold out against barbarism, but are doomed to fall. All the remains of CRON's glorious past are old wives' tales of mighty warriors and wizards doing battle against evil hordes and of a tragic lord, King Kalohn the Vanquished. Page 6 Table of Contents Introduction......................................................1 Chapter One: The Opening Options Menu.............................9 Main Options Menu.................................................9 Create New Characters.............................................9 View all Characters..............................................12 Hirelings....................................................12 Character Profile............................................12 Delete a Character...........................................13 Rename a Character...........................................13 Transfer Characters..............................................14 Go to Town.......................................................14 Set Up Your Party............................................15 Chapter Two: The Adventure Begins................................16 Moving & Mapping.................................................16 Game Commands While Marching.....................................19 Chapter Three: Encounter With Danger.............................23 Encounter Commands...............................................24 Combat...........................................................25 Saving Your Game.................................................29 Chapter Four: Beginners Guide to Adventure.......................30 The World........................................................30 Your Characters..................................................31 Weapons & Armor..................................................32 Monsters.........................................................33 Quests...........................................................33 Spells...........................................................33 Appendix A: Details & Options....................................34 Character Statistics.............................................34 Character Classes................................................35 Character Race...................................................36 Character Alignment..............................................36 Sex of Character.................................................37 Character Status.................................................37 Secondary Skills.................................................38 Armor, Weapons & Equipment.......................................39 Time Travel......................................................39 Auto-Mapping.....................................................39 Appendix B: Spells...............................................40 Spells...........................................................40 Clerical Spells..................................................41 Sorcerer Spells..................................................50 Page 7 Might and Magic II Gates to Another World Is an ongoing journey that can last up to hundreds of hours. As you begin, let Chapters 1-3 of this book guide you through the first steps of your journey. If you are new to fantasy games, Chapter 4 will help acquaint you with the terms and conventions of this new world. As you gain in exprerience, your primary guide will become your computer screen. Even then you will find important reference information, on game options and spells, in the appendices of this book. Might and Magic One players should skim through the manual for new features. (Picture of a Gate) HAPPY ADVENTURING! Page 8 Chapter One Opening Options Menu Start Game Allows you to proceed with the Game. It is recommended that you copy your disks before selecting this option. Demo Demonstrates features of the game, ie. walking around, encounters, combat, etc. To return from the demo press "ESC". Copy Disks Allows you to make Backup copies of your original disks. The Source disk is the Original. The Target disk is the disk you want to copy on to. # of Drives Lets you play with one or two drives. This option also works with Copy Disks. Main Options Menu Create New Characters If you decide to play Might and Magic using the pre-programmed characters provided, you can skip this section. Much of the fun of any fantasy game, however, lies in the creation of the characters with whom you go adventuring. If you are creating characters for the first time, or need to refresh your memory on character options, read Appendix A before continuing. The information in that appendix will help you create more varied and interesting characters, who have a greater chance of succeeding in their quest. To create a new character, display the Main Options Menu and TYPE C. A character's class is determined by 7 vital statistics. MIGHT INTELLECT PERSONALITY ENDURANCE SPEED ACCURACY LUCK Each statistic is randomly assigned a rating between 3 to 21, with 21 being the highest. To generate a new set of random ratings, press RETURN (or SPACE BAR for animation). Page 9 Exchange Statistic You may exchange any of the 7 statistics by pressing the letter of the statistic you want to exchange. Select a Calss A Character my belong to one of 8 classes. KNIGHT PALADIN ARCHER CLERIC SORCERER ROBBER NINJA BARBARIAN To the right of the statistics are the eligible classes for the ratings given. These are the classes from which you may choose. Notice how the eligible classes change as you generate different sets of statistic ratings. To chose a class, type the NUMBER next to the desired class. At any time 'before' selecting a class, you can return to the Main Options Menu by pressing ESC. Assign a Race After selecting a class, choose the character's race. HUMAN ELF DWARF GNOME HALF-ORC To select race, type the NUMBER next to the desired race. Page 11 View all Characters From the Main Options Menu you can view a list of all the Characters and Hirelings stored on your copy of disk B. The View All List includes: * KEY LETTER for character * NAME of character * CLASS of character * TOWN in which character is currently located From the View All list you can: 1) Press ESC to return to the Main Options Menu; 2) Type the LETTER (A-X) of the character to view a detailed Character Profile. 3) Press the Space Bar to toggle between Characters and Hirelings. Hirelings Hirelings are characters that are not created but hired at various ins throughout the game. When hired they act, and are controlled as normal party members except: 1) Initially there are no hirelings for the characters to choose from. After completing various quests, deeds, etc. Hirelings will be made available to the party at selected inns. Note: After signing into an inn, check to see if any Hirelings have become available for your party. 2) At the end of each day you must pay the Hirelingss daily fee. If you are unable to pay the fee that day they will leave your party and be waiting at the inn in which they were last saved. 3) Hirelings may be dismissed at any time and will return to the last inn at which they stayed (see Dismiss command). 4) When viewing a Hireling, instead of gold being displayed their cost per day will be shown. 5) Hirelings are not included in the process of Gathering or Sharing gold. Page 12 6) Hirelings may train for free when gaining Experience levels and Spells, consequently their cost per day will increase. 7) A Hirelings name may not be changed nor may the Hireling be deleted. Caution: Abuse of Hirelings (ie. always placing them in the first position, removing their items and not replacing them with comparable items, etc.) may lead to a disgruntled Hireling, consequently increasing their cost per day. Character Profile A Character Profile gives you all the facts and figures on a specific character. It is an invaluable aid in decision making, when factors of strength, vulnerability, spells and wealth must be considered. Character Profiles are available at most times during game play. Only from the View All Characters list, however, can you display the profile of any character on the disk. All information on the Character Profile screen is in abbreviated form. A detailed description of each item on the screen is provided in Appendix A. Below is a brief overview of the screen. Lvl = Experience Level Mgt = Might Int = Intellect Per = Personality End = Endurance Spd = Speed Acy = Accuracy Luc = Luck HP = Hit Points SP = Spell Points AC = Armor Class SL = Spell Level Exp = Experience Points Cond= Current Condition Delete a Character To delete a character displayed by the Character Profile, hold down the CONTROL (CTRL) key and press D. When asked: 'Are you sure (Y/N)?' press Y to confirm. The character will then be deleted from the disk B copy which you are using. Rename a Character To rename the character displayed by the Character Profile, hold down the CONTROL key and press N. Then type the NEW NAME, up to 10 characters and press RETURN. The new name will replace the old name. Page 13 Transfer Characters There is no Might and Magic I from the Amiga to transfer characters from. Go to Town Each time you play Might and Magic II, your party of adventurers sets out from the inn in one of five towns: 1 MIDDLE GATE 2 ATLANTIUM 3 TUNDARA 4 VULCANIA 5 SANDSOBAR The town from which you set out is the town containing the characters in your party. All characters, pre-programmed or created, first start out in Town 1, so this is where you begin the game. Later, as your party travels to and lodges in other towns, you will set out from Towns 2-5. From the Main Options Menu, type G to go to the towns. The screen will show the last town you signed into and the last characters you used will be selected. (To quickly continue playing, press Z to exit) If there are no characters in that town, no characters will appear in the list. From the list of characters in the town, you can: 1) View the Character Profile for any character on the list. Press ESC to return to the list of characters in the town. 2) Press SPACE BAR to switch between Characters and Hirelings. 3) Return to the Main Options Menu by pressing ESC. 4) Add or remove Characters or Hirelings from the party. Page 14 Set Up Your Party To add a character to your party, hold down CONTROL and press the KEY LETTER next to the character's name on the list of available characters. A (check) will appear next to the character's name, marking him/her as a member of your party. A party of adventurers may consist of a combinatoin of created Characters and Hirelings: a. One created Character minimum and six maximum. b. Seven Hirelings maximum. The total of a and b may not exceed eight. Example: A standard party consists of 6 created Characters and 2 Hirelings. Experimentation with other combinations may prove more valuable. When you have marked 8 party members, a message will indicate the party is full. To add a character at this point, you must first remove a character. To remove a character from your party, hold down CONTROL and press the KEY LETTER next to the character's name. The (check) marking the character as a member of your party will disappear. As soon as you have marked one character as a member of your party, a new command option -Z(Exit)- will appear on the screen. Pressing Z will take you to the 3-D view of the inn, from which you may start out on your adventure. NOTE: To stop the game and save information, you must get your party to the inn in one of the five towns, and sign in. See Chapter 3, Battle Over. Page 15 Chapter Two The Adventure Begins Moving and Mapping After you give the Z command, you truly enter the world of Might and Magic II. The screen shows a 3-D view of your present position, a list of possible commands, and a list of characters in your party, shown in marching order. (If a character is highlighted it indicates a condition other than good.) Since your view of the world is from your party's perspective, you do not see the members of your party. You start inside the inn, facing the door. Turn around to sign back in, or simply move your party forward to leave the inn. To move your party, use the following keys: (UP ARROW) or Return Move Forward (DOWN ARROW) Move Back (LEFT ARROW) Turn Left (RIGHT ARROW) Turn Right When you press a forward or back movement key, the entire party moves on square forward or backward. When you press the <-- or --> key, the entire party turns 90 degrees in that direction. Unlocked doors open automatically as you move your party forward through them. However if a door is locked, you must unlock it with the UNLOCK or BASH command...or find a way around it. (Warning: many locked doors are also booby-trapped, with the traps set to go off when you unlock or bash in the door.) When you come up against an obstacle, such as a wall or mountain, a message will appear (i.e., SOLID, IMPASSABLE, etc.) These messages are particularly useful when traveling in the dark or testing for secret passageways. Remember that you are now in a world of magic and danger, where all is not as it seems. Doors may lock behind you. Areas may be darkened by spells, requiring you to "feel" your way through them. Certain squares may teleport you acress vast distances, into unmapped areas. And of course, any square may contain treasure or monsters. Page 16 The Map as Guide Map Not Included. Tips on Mapping.. Each grid is 16 x 16. Exact Coordinates see Sorcerer Spell: Location Sorcerer Spells: Eagle Eye and Wizard Eye, will also help in mapping. Page 17 Game Command while Marching While your party moves through the 3-D view of the world, you may use any of the commands shown on the screen. The key used to give the command appears to the left of the command. When the # sign is given, type the CHARACTER NUMBER from the character list at the bottom of the screen. COMMAND PRESS DESCRIPTION -------------------------------------------------------------------- FORWARD (Up arrow) or Ret Move entire party one square forward BACK (Dn arrow) Move entire party one square back LEFT (Left arrow) Turn entire party 90 degrees left RIGHT (Right arrow) Turn entire party 90 degrees right BASH B Attempts to knock down a locked door. If successful, the party moves forward through the door. If the attempt fails, the party does not move. In either case, bashing a trapped door is likely to set off the trap. CONTROLS C Lets you select the sounds, party disposition and message delays. Party Disposition - This is the party's outlook and adventuring style. Novice players should set their disposition to Inconspicious until they become more familiar with the game. When seeking more challenging encounters and more valuable treasure, the Aggressive or Thrill Seeker options may be selected. We recommend the Average setting for the majority of play. DISMISS D Lets you select a Hireling to dismiss. When you rest, you pay the Hirelings. If you do not wish to pay a Hireling for the next day, you must dismiss him/her. Before resting, the Hireling will return to the last inn in which they stayed. EXCHANGE E Character exchanges battle position with any other member of the party. A prompt asks with which party member the exchange is to take place. Press ESC before selecting the exchange party member to abort the command and return to the combat options list for another selection. QUICK REF Q Displays a brief overview of all partyA Character Profile gives you all the facts and figures on a specific character. It is an invaluable aid in decision making, when factors of strength, vulnerability, spells and wealth must be considered. Character Profiles are available at most times during game play. Only from the View All Characters list, however, can you display the profile of any character on the disk. All information on the Character Profile screen is in abbreviated form. A detailed description of each item on the screen is provided in Appendix A. Below is a brief overview of the screen. Lvl = Experience Level Mgt = Might Int = Intellect Per = Personality End = Endurance Spd = Speed Acy = Accuracy Luc = Luck HP = Hit Points SP = Spell Points AC = Armor Class SL = Spell Level Exp = Experience Points Cond= Current Condition Delete a CharSEWER SOFTWARE PRESENTS.... Projectyle dox typed by Flux of Mirage UK LAY DOWN THE TRUTH ABOUT TRIBAL GAMES ------------------------------------- "Sweet!", a voice spoke from the darkness. "Get this ?" A tungsten light shone accross the cold orbital rock, a mass of small almost indistinguishable shapes huddled in the beam. "Uncle, you are out of your tree, they ain't nothing but a bunch of rocklife waitin' for the skip'town to come back." "Fool, not them; look over beyond that Jello tip, past the edge of the skip'town blast-wall. Get those three! What in Jiva's name are they about?" Uncle M. Troid the third, was first caught by the Tribal bug at a lone Skipped town shuttle outpost on Jupiter's second moon. He found a wild A bunch of lost throwout gangs from Earth's satellite cities, fighting a violent and furious game through the strange pattern of the shuttles blast-walls. Uncle, never one to miss the passion and sprit of such a event exploited and dominated the creation of the sport now known as Tribal. Tribal, a game of three halves, a systematic sport, a media extravaganza and Uncle's weekend job. Since the birth of Tribal in the blast-walls of mans outposts, the sport has grown and grown. The teams have now evolved into tribes of physical and mental beings born to boost the projectyle. The blast-walls have been replaced by dedicated pitches, designated home to each tribe. THE PLAYERS ----------- The Eldritch Cats The Podium, Mersey Docks, Liverpool, England The Uzteks Barnsley Megadome, Grimethorpe, S. Yorkshire England Sledge Hammers Estadio Deporte, L'Estartit, Catalonia, Espana Manic Moose Foster City Ice Rink, Bay Area Landfill San Mateo, CA, USA (Pause)...More(y/n/ns)?  Vectors Battlezone, An arcade somewhere in time and space Jovian Jello Juggernauts Cell Block Park, 2001 Ramsey Street, Melbourne Jupiter Devils Its hell down there Terminators Kwikitilla Complex, Checkout point, Wossissan Bahkoad Rheeda UNCLE'S CONTROL METHODS ----------------------- When starting a game of Tribal, hit fire on either a regular or parallel joystick or the keyboard, when your team is flashing, to select your controler. KEYBOARD -------- These are the keyboard equivelents to the joystick control. (all numbers are for the numeric keypad only) LEFT Q E T U O 7 9 RIGHT W R Y I P 8 - UP A S D F G H J K L 4 5 6 DOWN Z X C V B N M 1 2 3 [ENTER] FIRE 0 [SPACE] [ALT] [AMIGA KEY] OTHER KEYS ---------- Pause [HELP] Unpause [DEL] Low Pass Filter ON/OFF [F1] Game Music [F2] Abort Game [F10] (Pause)...More(y/n/ns)?  Abort Menu option [ESC] UNCLE'S QUICK GUIDE TO DOING THE TRIBAL THING --------------------------------------------- Once the game has loaded, press the fire button -from here on is known as Hit Fire. You and your tribe will be the Eldritch Cats. Hitting fire selects your control device. At the GET READY screen, you will be shown the pitch layout. Your tribe's starting position is shown here (see THE PITCH). You will have two goals to defend, one in your defence zone, and one in the frantic zone. You score by Hitting the projectyle into any of the other tribes goal mouths. When prompted Hit Fire to begin game. You will begin in the central zone. The central zone has four gates leading to the attack1, attack2, defend, and frantic zones. The attack and defend zones have coloured markers above them to indicate whose zones they are. A countdown will commence in the top left corner of the screen. As soon as the countdown reaches zero, play starts. Move your player around the central zone. Hit Fire to boost your player towards the projectyle. Boost and bounce the projectyle through your opponents gates and into your opponents zones. Stay sweet, take time out to get the feel of play. As with many sports, the aim is to score goals against your opponents, and to prevent them scoring against your tribe. Various shapes and letters will appear on the pitch these are special bonus objects. (see BONUS OBJECTS) After a goal has been scored, a REPLAY box will appear on the screen. Hit Fire to skip the replay; it will automatically play upto twice if you do nothing. If you score an own goal, the goal is credited to the last opposing player to touch the ball. Tribal is a game of three halves, each half is actually called a set, the time remaining in the current set is reflected by the horizontal bars on the right of the screen. Each set is split into 64 time units. As the end of a set approaches, a countdown will start in the bottom right hand corner of the screen. At the bottom right of the screen are two displays. One indicates which is the current zone, the other tracks the positions of the players and projectyle in the current zone. At the start of a new set, the position of your tribe is rotated clockwise on the pitch, and your new position is shown on the pitch layout. MENU SCREEN ----------- DISK SCREEN Allows you to load or save a League or Sudden Death. To save you will need a blank disk. The program will format this automatically, and save out your current standings in the League or Sudden Death. The save disk can only contain one each of League and Sudden Death; any second game will be overwritten. TOP GOAL SCORERS Tracks the top six goal scorers for any game type. CREDITS Take a look, these guys have worked hard!!! MUSIC Hits the vibes. Hit Fire on here again to select a driffrent tune, there are eight in all. GO! Starts the game. OPTIONS SCREEN The status of all the options will be recorded when a game is saved - Projectyle will set these automatically depending on your memory and drive configuration. Use the joystick to select options. Faces shown when a goal is scored - After a goal a picture of the player is displayed if this is set to YES. The elapsed game time is also displayed with the scorer. Player positions displayed at start of game - The pitch layout is displayed to show new positions for the next set. Computer intelligent during solo matches - This allows you to practise without the computer getting in the way. Watch matches that have no human players involved - Turn this on to watch three computer tribes battle it out. Sound effects enabled - toggles all sound on or off. Music (M) or Extended Sound Effects (FX) - Toggles between music or sound fx in the game. Each team has its own anthem played at thier home pitch. League updated if the match is aborted - The scores for the league will be calculated and teams positions updated. See position tables at end of match - This will display the league position at the end of each match. Goal replays - This toggles on/off the slow motion replays. Set skill level - Low, Medium, or High. The higher the skill level the better the computer tribes will play. Deploy/train players in between matches - This allows you to train and redeploy the players in your tribe before each match. It also means that your players are open to injury. Drive for saving and loading games - as it says Ball/player player/player sound effects - This toggles all sound resulting between players and the ball and players and other palyers. Buffer sound effects - This toggles the sound fx from collisions with the buffers at the corner of the pitch. Wall sound effects - This toggles the sound fx from collision with walls. Parallel port joystick in use - a parallel port adaptor allows you to use a third joystick. Weeks in league - This option allows you to change the number of weeks that are to be played in the league. The number of weeks can't be changed for a Sudden Death game. Exit - returns to Projectyle menu. League Table This shows the placings and overall performance of all the tribes partaking in a League or Sudden Death. League and Sudden Death scoring: 8 points for a win 4 points for a second place 0 points for a lose 6 points for a winning draw 4 points for a three way draw 2 points for a losing draw Game Type LEAGUE - Allows you to play a league of between 6 and 21 weeks with all 8 teams. SUDDEN DEATH - Six preliminary games will decide which six teams will proceed to the semi-finals. The winners of the two semi-finals, plus the best runner-up will enter the final to decide the Sudden Death Champion. If at the end of a semi-final or the final there is no single victor then the game will enter extra time until a tribe is sole victor. SOLO - Is a single match for one, two, or three players. On selecting a game type, you will be asked to select the number of players. Use the joystick to move up and down and Hit Fire to select a tribe for each player. On completion you will be returned to the Projectyle menu screen. Disk Extras For future expansion. Not used in the standard game. THE PITCH --------- G ------------- | | | | | DEFEND | G = GOAL | ZONE | | | | | ------------- | | ------------- ------------- ------------- | | | | | | | ATTACK |---| CENTRAL |---| ATTACK | G| ZONE 1 | | ZONE | | ZONE 2 |G | |---| |---| | | | | | | | ------------- ------------- ------------- | | ------------- | | | FRANTIC | G| ZONE |G | | | | ------------- G Each tribe plays best on there home pitch. The game starts with the home team defending the top zone. The attack and defence zones rotate clockwise after each set. DEPLOY YOUR PLAYERS Your tribe has eight players, each with particular attributes. Use your joystick to select a zone and Hit Fire. Move left and right to select a player and Hit Fire to deploy that player in the chosen zone. You may then exit or train your tribe. TRAIN YOUR TRIBE You may alter the following attributes of any member by spending your DOSH. Values are relative to other teams, rather then absolute. The attributes have maximum and minimum values which can't be exceded. RATE is your maximum speed. The faster the better. POWER is your ability to accelerate, for boosting towards and colliding the projectyle. SLIDE is your ability to decelerate. The higher the slide value, the slower your rate of deceleration. BOING is your bounce factor. This is important on collisions. MASS is your physical mass. Useful in collisions. NOUS shows the intelligence of computer players. No effect for human players. Hit Fire on SELECT and move left and right to choose a player. Hit Fire to pick a player and move the joystick up or down through the various attributes. The fire button toggles between increasing or decreasing an attribute. To buy an attribute, move the joystick to the right so that BUY is highlighted and Hit Fire. Naturally, you can only buy when you can afford, so watch your CREDITS REMAINING. Collect the DOSH bonus objects to increase the size of your wad. (credit balance) When you have trained one player, move the joystick down to SELECT and repeat the process with any other players you wish to train. On compleation of training, click on DEPLOY to return to the DEPLOY YOUR PLAYERS screen, and click on EXIT if you are ready to play. INJURY ------ When you have selected the Deploy/train players option in between matches your players will be susceptible to injury. This will effect an indivduials playing attributes. It is advisible to monitor injuries in the TRAIN YOUR PLAYERS screen, you may heal injured players or replace them on the DEPLOY YOUR PLAYERS screen. BONUS OBJECTS Bonuses last for 9 seconds and will end if the projectyle leaves the zone the bonus was collected in. Only pitch effects continue when switching zones. PLAYER EFFECTS(triangle) SPECIAL EFFECTS(circle) PITCH EFFECTS(square) B+ Boing plus X seal exits S+ Slide plus B- Boing minus T teleport S- Slide minus P+ Power plus F free kick B+ Boing plus P- Power minus L loney ball B- Boing minus S+ Slide plus C chip shot S- Slide minus @ about face DOSH dosh -|-- stamina up Teleport transports all players to the frantic zone. Chip Shot when hit, the projectyle jumps in the air and cannot be hit again until it lands. About Face the collector will boost away from the ball when hitting fire. Dosh 25 credits for use in training your team. Stamina during the game your power will decrease, picking this up will maintain your power. Loony Ball the projectyle will act unpredictably for the collector. CREDITS Programming Marc Dawson and Steve Wetherill Associate Producer Kevin Shrapnell Product Manager Simon Jeffery Cover Art design Planet X the feel of play. As with many sports, the aim is to score Pilfered from an IBM source....this doc may be some use. Someone want to do us some real docs for this (or any other?) game?? RED STORM RISING TECHNICAL SUPPLEMENT Package Contents Your Red Storm Rising should contain a manual, this technical supplement folder, two 5 1/4" disks or one 3 1/2" disk, keyboard overlays, a map of the Norwegian Sea Theater, a registration card, and an order card for backup disks. Required Equipment Computer: This simulation requires an IBM PC, XT, AT, PS/2, Compaq 386, Tandy 1000, or a computer 100% compatible with one of those models. The machine must have at least 384K of RAM and DOS 2.x or 3.x. When using higher versions of DOS, more RAM may be necessary. Controls: The simulation can be run entirely from the keyboard, or with a joystick and keyboard. Display: The simulation requires a color monitor with an IBM CGA, EGA, MCGA, VGA or Tandy 1000 graphics system. EGA systems must have 256K on the graphics card (standard on all but the earliest boards). The simulation will run on a system with a monochrome monitor if you have a Hercules Monochrome Graphics card. If you are using a compatible graphics card/monitor, it must be 100% hardware compatible to one of the above. DOS: You must have IBM or MicroSoft DOS, version 2.0 or higher. A version between 2.11 and 3.31 is recommended (3.1 or less on 384K machines). Saving Games Red Storm Rising can save games only if you follow the installation procedure and "run" the game from copies on either floppy disks or a hard disk. If you run the game using the disk(s) in the box, no games can be saved. The original MicroProse disks are write-protected to avoid inadvertent damage. Accelerated Time This is a new feature for the IBM version of Red Storm Rising. If you find the pace of action too slow, or are pursuing a slowly-developing strategy, press ALT and the T key to accelerate time. Press it again to restore normal time rate. This option only functions during a battle. Tandy 1000 Keyboards On Tandy 1000 computers, do not attempt to use the numeric keypad for cursor key movements. Instead use the marked cursor keys. For diagonal movements, use two keys in combination. Installation Concepts Red Storm Rising is copy-protected using a "key disk" technique. This means you can copy the game files from the original disks however you prefer - to other floppy disks, and/or to a hard disk. These files are normal in all respects. They can be backed up, restored and optimized on a hard disk. However, the original disks have special "invisible" markings that cannot be copied or removed. The program will ask you to insert temporarily the original Disk A into your floppy drive. MicroProse regrets that continuing casual and organized software piracy within the USA and around the world requires that we copy-protect this product. Remember, you cannot save games or final scores unless you install Red Storm Rising on floppy disk or hard disk. Installation on Floppy Disks This simulation is designed to run using copies of the original (distribution) disks supplied in the box. You can run the game using the distribution disks, but no information will be saved. We suggest you format new disks and then copy the game onto them. If you're using 5.25" 360K drives (standard for PCs and XTs) format two disks. If you're using any other type of drive (5.25" 1.2MB, or any 3.5" size) format just one disk. Format a Floppy Disk: Formatting a disk requires that you boot your computer with DOS, then at the ">" prompt type the appropriate format command. For example, on most machines type FORMAT A: to format a floppy disk in the A: drive. For details, consult the description of "FORMAT" in your DOS manual. Copy to Newly Formatted Disks: After formatting the disk(s), use the DOS "COPY" command to copy the disks with *.* as the file designators. Typically this command is entered as COPY A:*.* B:*.*, even if you just have one floppy drive. For details, consult the description of "COPY" in your DOS manual. Avoid Diskcopy: Do not use the "DISKCOPY" command to copy disks. You must use the "COPY" command. Installation on a Hard Disk You can copy the original (distribution) disks onto a hard disk. The files copied are standard DOS files. They can be copied, erased, and optimized as desired. Install Program: For you convenience, a batch file called "INSTALL" is included on disk B. It automatically installs the program onto your hard disk. To use the program, insert your disk (if using 5.25" disks, insert disk B) into a drive. Type A:INSTALL and press Return if you put the original disk into drive A. Type B:INSTALL and press Return if you put the original disk into drive B. The install program will then ask which disk you wish to install onto. Most hard disks are set up as drive C. Type the appropriate letter and follow any instructions that appear. Technical Notes: If you have problems with the install program, use DOS commands to make a subdirectory titled RSR and then copy all the files from all original disks into that subdirectory. Finally, copy the RSRLOADR file into the root directory and then rename it REDSTORM.BAT. The install program simply automates this process. If you're an experienced IBM user, feel free to modify or move "REDSTORM.BAT". Note that Red Storm Rising requires all its files to be in the same subdirectory, and that subdirectory must be the default while the program is running. Loading from Floppy Disks (1) Boot you machine using a DOS disk (version 2.11 to 3.31 recommended). (2) Insert Disks: When the "A:>" prompt appears, remove the DOS disk and insert Red Storm Rising disk A. If you have two floppy drives, put disk B in the second drive. Use the copies made in the install instructions above. (3) Set Speed: If you have a "turbo" or multi-speed computer, use your normal speed setting. Actually, you can use any speed, but do NOT change speeds during the game. (4) Load Program: Type the following: REDSTORM and press Return. The simulation will begin loading. It will ask you to insert your original disk A (the key disk) at some point, and then press a letter key indicating which drive contains this disk. When the screen after that appears, replace the original disk with your copy disk. Loading from a Hard Disk This assumes your machine runs under DOS when it boots, which is true of 99+% of all IBM and compatible machines with hard disks. (1) Turn on your machine. If it is already on, exit all programs and return to the root directory with the "cd" DOS command. For example, if your hard disk is C: then "cd C:\" does this. (2) Set Speed: If you have a "turbo" or multi-speed computer, use your normal speed setting. Actually, you can use any speed, but do NOT change speeds during the game. (3) Load Program: Type the following: REDSTORM and press Return. The simulation will begin loading. Graphics Options When Red Storm Rising loads it asks you to select a graphics option. The current options include the following: EGA: Select this option if your machine has an EGA graphics board. This option provides 16 colors. Any RGB monitor can be used (a special high-resolution EGA monitor is not required). CGA: Select this if you have a CGA graphics board. This option provides 4 colors. Tandy 1000: Select this option if you have a Tandy 1000. This option also provides 16 colors. VGA/MCGA: Select this if you have a PS/2, or any other machine with a VGA graphics board and monitor. Hercules Monochrome: Select this if you have a Hercules Monochrome Graphics board, or a compatible monochrome graphics board, sometimes termed "MGA". Note that the original IBM graphics board and IBM MGA compatibles won't work, since that design only supports text. A Suggestion to CGA Users: We suggest that you purchase an EGA graphics board (which are now quite inexpensive) and attach your CGA RGB monitor to that. Red Storm Rising, other MicroProse products, and most other IBM EGA games run in this fashion. A new, expensive EGA monitor is not required if the board has a standard output. Of course, it's true that certain high-resolution and special-color-palette modes are not available without a new, expensive monitor. However, in that case we'd recommend a VGA board and monitor instead. Sound Driver Options When Red Storm Rising loads it asks you to select a sound option. The current options include the following: IBM sound: This default sound is appropriate to all IBM PC, XT, AT and PS/2 and compatible machines with no special sound hardware. Tandy 1000 Sound: Only use this option on Tandy 1000 computers, which include a special music chip. Innovation Sound Board: Only use this option if your computer contains the Innovation music/joystick board. Ad Lib Sound Board: Only use this option if your computer contains the Ad Lib music board. No Sound: This makes the entire simulation silent. Automated Loading When the program loads, it asks a variety of questions about your computer system. You can automate this process by adding additional characters after the "REDSTORM" loading command. Separate "REDSTORM" and each of these command with a space. Automated loading options include: /J if you use a joystick /NJ if you use a keyboard without a joystick /GE if you use EGA with 16-color graphics capability /GC if you use CGA with 4-color graphics capability /GT if you use Tandy 1000 with 16-color graphics /GM if you use MCGA or VGA with 256-color graphics /GH if you use Hercules monochrome graphics /AI if you always use IBM sounds /AT if you always use Tandy sounds /AB if you always use Innovation sounds /AA if you always use Ad Lib sounds /AX if you always use no sounds Examples: If you use a standard PC or XT without joystick, CGA graphics, and standard PC sounds you would load the game with "REDSTORM /NJ /GC /AI". If you have a Tandy 1000 with joystick, you would load the game with "REDSTORM /J /GT /AT". If you have an AT with EGA graphics, but wish to select joystick and sound options normally (at the start of each game), you would load with "REDSTORM /GE". Loading Problems? The latest notes regarding this program and problems with "compatibles" can be found on disk B, in an ASCII file named "READ.ME". You can read this file using standard DOS commands, such as "TYPE READ.ME". If the program does not load or run correctly, turn off your entire machine and restart it. Make sure DOS and Red Storm Rising are the only programs loading into memory. Certain RAM-resident programs or tools can conflict with Red Storm Rising. If you continue to have trouble, try the original Red Storm Rising disks. Your copies may be bad. If the original doesn't work, try the original Red Storm Rising disks in another PC. If the disks do work in another machine, then your machine has compatibility problems (i.e., some aspect is not entirely IBM compatible). Try a different machine speed, or a different keyboard/joystick, graphics, or sound option. Sometimes an alternate setting will work. If you have trouble loading on other machines as well as your own, you may be one of the tiny percentage with a defective disk. In such a case contact MicroProse Customer Service at (301) 771-1151, Monday through Friday, 9am-5pm Eastern time. Please have a pencil and paper handy when you call. STARTING OPTIONS Activity with keyboard with joystick Move Arrow or Highlight cursor keys push joystick Select Option return key either trigger button Quit Game alt Q (exits to DOS) alt Q (exits to DOS) STRATEGIC TRANSIT Only available in the RED STORM RISING Scenario Strategic Map Color Key EGA/Tandy CGA Meaning dark blue black Deep water light blue cyan-black mix Shallow water green cyan NATO-controlled land areas red purple Warsaw Pact-controlled land areas white white Mountains and polar ice pack white dots white dots Drifting ice red-brown dot purple-black dot US Submarine base at Holy Loch Strategic Map Symbols Feature EGA/Tandy CGA Meaning SOSUS flashing flashing Enemy ships and subs passing over Seabed white cyan a "SOSUS line" are detected Sensors Your yellow cyan The current location of Submarine your boat Enemy flashing flashing Contact accurate to this instant Surface red-purple white-purple Force light red purple Contact not accurate, but very recent cyan purple Contact old light gray purple Contact very old Enemy flashing flashing Contact accurate to this instant Subs-only red-purple white-purple Force red purple Contact not accurate, but very recent cyan purple Contact old light gray purple Contact very old NATO flickering flickering Friendly aircraft that can spot P-3C "Orion" yellow white-purple enemy forces which it flies near USSR flickering flickering Enemy aircraft that can spot you Tu-142 red purple if it flies close enough to "Bear-F" your position NATO flickering flickering Satellite will spot enemy forces Satellite yellow cyan beneath its orbital path USSR flickering flickering This satellite will spot you Satellite red purple if you're under its orbital path Map Movement Activity with keyboard with joystick Drifting no keys down joystick centered (0-5 kts) (hands off keyboard) Cruising cursor keys push joystick (12-18 kts) Flank Speed hold down shift and trigger down and (25-36 kts) cursor keys push joystick Pause return, space bar, return, space bar, or alt and p key or alt and p key Menu Options Activity with keyboard with joystick Move Arrow or Highlight cursor keys push joystick Select Option return key either trigger button Quit Game alt Q (exits to DOS) alt Q (exits to DOS) BATTLE Tactical Map Symbols Symbol EGA/Tandy CGA Meaning Open light blue cyan Your submarine rectangle (open side is your stern) Box dark purple purple Enemy, course unknown Open bright red purple Enemy, course known Rectangle dark red purple Enemy, last known position yellow flashes Enemy, using active sonar white Box purple purple Enemy helicopter when your periscope is above water (Invisible) (none) (none) Enemy helicopter when your periscope is below water Dotted line light blue cyan Track of your weapon Dark dot light blue cyan Your weapon not activated Bright dot flashing white white Your weapon after activation Dotted line green purple Track of enemy weapon Dark dot green purple Enemy weapon not activated Bright dot yellow white Enemy weapon, activated Dotted light blue cyan Enemy sonobuoy hexagon (dropped from helicopter) Small sub dark blue cyan Decoy appears as long as it's active Starburst dark blue cyan Noisemaker appears as long as it's active "S" Symbol dark blue cyan Knuckle in water appears as long as it's active No Drop Bar medium blue white Underwater pack ice to 50' depth 1 Drop Bar medium blue white Underwater pack ice to 100' depth 2 Drop Bars medium blue white Underwater pack ice to 150' depth 3 Drop Bars medium blue white Underwater pack ice to 200' depth 4 Drop Bars medium blue white Underwater pack ice to 250' depth Number dark blue white Shallow bottom; number indicates depth of the bottom in hundreds of feet ATTACK CENTER CONTROLS The Primary Displays Activity with keyboard with joystick Tactical Display F1 key F1 key Map Overlay (toggles on/off) shift & F8 key shift & F8 key Zoom Map z key z key Unzoom Map x key x key Sea Conditions F8 key F8 key Compare Sonar F6 key F6 key Change enemies on display c key c key Weapon Control F2 key F2 key Map Overlay (toggles on/off) shift & F8 key shift & F8 key Zoom map z key z key Unzoom map x key x key Change to another weapon n key n key Defense Display F3 key F3 key Map Overlay shift & F8 key shift & F8 key Zoom map z key z key Unzoom map x key x key Periscope F4 key F4 key Manually rotate scope left/right cursor keys left/right joystick Snap scope to contact c key c key Identify periscope image backspace key backspace key Acoustic Signature F5 key F5 key Compare vessel signature shift & letter key shift & letter key Make identification positive return key return key Ship Data Base F7 key F7 key Select ship shift & letter key shift & letter key The Secondary Displays View Contacts c key c key press again for another contact Weapons Loadout v key v key press again for store list Damage Report b key b key Torpedo Control n key n key press again for next active torpedo Threat Weapons m key m key Navigation Controls Increase Speed Level =+ key =+ key Decrease Speed Level -_ key -_ key Set Depth F9 key, F9 key, then three digits, or then three digits, or finish w/return key finish w/return key Set Course F10 key, F10 key, then number keys, then number keys, finish w/return key finish w/return key Silent Running (min speed) 0 key 0 key L. Rudder (5, 10 or 15 deg) ,< key ,< key R. Rudder (5, 10 or 15 deg) .> key .> key Straight and Level /? key /? key Active Sensor Controls Active Sonar (on/off toggle) 8 key 8 key Active Radar (on/off toggle) 9 key 9 key Weapon Loading & Firing Load Torpedo into tube shift & 4 key shift & 4 key Load Sealance into tube shift & 5 key shift & 5 key Load Harpoon into tube shift & 6 key shift & 6 key Load Tomahawk into tube shift & 7 key shift & 7 key Fire Stinger SAM 3 key 3 key Fire Torpedo 4 key 4 key Fire Sealance 5 key 5 key Fire Harpoon 6 key 6 key Fire Tomahawk 7 key 7 key Torpedo Controls Move PAP point (if inactive) cursor keys joystick Run Shallow shift & F1 key shift & F1 key Run Deep shift & F2 key shift & F2 key L/(Left) Search Pattern shift & F3 key shift & F3 key R/(Right) Search Pattern shift & F4 key shift & F4 key Activate Torpedo shift & F5 key shift & F5 key Steer Torpedo (if active) cursor keys joystick Drop Torpedo shift & F9 key shift & F9 key Countermeasures Drop Noisemaker 1 key 1 key Drop Decoy 2 key 2 key Other Controls Cancel an order in progress escape (ESC) key escape (ESC) key Normal/Accelerated Time alt & t key alt & t key Pause (on/off toggle) alt & p key alt & p key Help from tactical computer alt & h key alt & h key Action Track (on/off toggle) alt & a key alt & a key Sound (on/off toggle) alt & v key alt & v key Replay battle (at end only) alt & r key alt & r key Quit (exit to DOS) alt & q key alt & q key Contact very old NATO flickering flickering Friendly aircraft that can spot P-3C "Orion" yellow white-purple enemy forces which it flies near USSR flickering flickering Enemy aircraft that can spot you Tu-142 red purple if it flies close Sewer Software presents.... docs typed by STRYPER!!!!! -------------------------- YOUR TASK RESOULTION 101..SUB SECTION (A) IT IS HEREBY PASSED AS LAW THAT, FROM THE 19TH OF JANUARY 2038, ANY OFFENDER HELD WITHIN A STATE OR FEDERAL OWNED PRISON OF THE U.S. OF NEW AMERICA WISHING TO RECEIVE AMNESTY FROM THE GOVERMENT FOR ANY PAST CRIMES THAT HE/SHE HAS BEEN JUDGED GUILTY OF, MAY RECEIVE HIS/HER AMNESTY THROUGH THE SUCCESSFUL APPLICATION AND COMPLETION OF A STATE SHERRIF`S TERMINATION WARRANT. THESE WARRANTS SHALL ONLY BE FOR THE TERMINATION OF THE MOST HIGHLY DANGEROUS CRIMINALS IN THE U.S. OF NEW AMERICA- NFBI CLASSED `A` ONLY. IT HAD TO HAPPEN. CRIME WAS RIFE AND THE GOVERMENT COULD NO LONGER CONTROL IT. IN A DESPERATE ATTEMPT TO CONTAIN THE SOARING LEVELS OF CRIME THE US SENATE HAS PASSED A NEW ARTICLE OF LAW-RESOULTION 101, UNDER THIS RESOLUTION CONVICTED CRIMINALS ARE BEING OFFERED THE CHANCE TO EARN THEIR FREEDOM BY TRACKING DOWN AND TERMINATING HIGH PROFILE CRIMINALS AND GANGLAND BOSSES. YOU ARE ONE OF THE CONVICTED CRIMINALS AND YOU HAVE BEEN GIVEN YOUR SEARCH/DESTROY LICENSE AND A THETA 4000 GROUND SKIMMER VEHICLE WITH A LIGHT MACHINE WEAPON SYSTEM. YOU WILL ALSO BE GIVEN INSURANCE WITH THE INTERNATIONAL VEHICLE INSURANCE CORPORATION(IVI CORP) WITH AN INITIAL INSURANCE RATING OF FIVE(THIS IS BASICALLY YOUR NUMBER OF LIVES). YOUR MISSION BRIEFING IS TO TRACK DOWN FOUR DRUG RUNNING CRIMINALS OPERATING IN LOS ENVEGAS, A SMALL CITY IN THE SOUTH, AND CONFISCATE THEIR DRUG SUPPLIES HAVE BEEN AMASSED TO CONVICT THEM YOU MAY PROCEED WITH THEIR TERMINATION. EACH QUARTER OF THE CITY IS CONTROLLED BY A DIFFERENT DRUG RUNNER, THE EASTSIDE BY TOBY KOMAZUKI, THE SOUTHERN BOULEVARDS BY JOHNNY PSYCLOPS, THE WEST END BY JAKE JOUKOWSKI.YOU WILL CONFRONT EACH RUNNER INDIVIDUALLY. EACH RUNNER IS ALSO INSURED BY THE IVI CORP.AND WILL RECIEVE A NEW VEHICLE EACH TIME YOU DEFEAT HIM. THE RUNNER WILL THEN LIE LOW, RE-EQUIPING HIS VEHICLE, MAKING IT EVEN MEANER AND TOUGHER AND RECRUITING EVEN MORE CRIMINALS WHILST YOU CARRY OUT YOUR MISSION TO DEFEAT THE OTHER THREE SECTORS OF THE CITY. WHEN YOU HAVE DEFEATED A RUNNER FOR THE THIRD TIME, HIS INSURANCE RATING WITH THE IVI CORP. WILL HAVE EXPIRED AND YOU CAN FINALLY TERMINATE HIM FOR GOOD. ONCE YOU HAVE TERMINATED ALL FOUR OF THE RUNNERS(IE COMPLETED 12 LEVELS) YOU WILL HAVE WON THE GAME AND EARN YOUR FREEDOM. HOWEVERE YOU SHOULD BEWARE THAT YOUR OWN INSURANCE RATING WILL BE REDUCED BY ONE EVERY TIME THAT YOUR GROUND SKIMMER IS DESTROYED AND HAS TO BE REPLACED BY THE IVI CORP. YOUR RATING WILL ALSO BE REDUCED BY ONE IF A RUNNER EVER MANAGES TO COMPLETE HIS DRUG RUN. WHEN EVER YOUR RATING IS REDUCED YOU WILL BE ALLOWED ANOTHER ATTEMPT TO DEFEAT THE CURRENT ACTIVE RUNNER. IT IS NOT UNKNOWN FOR SHERRIF`S TO PLACE DISCREET BETS ON THE SUCCESS OF THEIR MEN BEFORE EMBARKING ON A MISSION INDEED YOU HAVE EVEN HEARD RUMOURS THAT THE SHERRIF IN CHARGE OF YOUR MISSION, SHERIFF STONE HAS PLACED HIS ENTIRE LIFE SAVINGS ON YOU- TO WIN!, IT IS ALSO NOT UNKNOWN FOR CRIMINALS TO MEET WITH SEVERE AND HARMFULL `ACCIDENTS` AFTER RETURNING FROM MISSIONS EMPTY HANDED AND WITH THEIR TARGETS STILL AT LARGE. SHOULD THIS BE THE CASE, THEN IT CAN BE PRESUMED THAT YOU WILL MEET WITH A RATHER LARGE `ACCIDENT` IF YOU FAIL THIS MISSION AND WILL BE MAKING A STAY AT THE PRISON HOSPITAL. IF YOU RUN OUT OF CREDIT WITH THE IVI CORP(IE YOUR INSURANCE RATING REACHES ZERO) YOU WILL NOT RECEIVE ANY MORE VEHICLES AND YOU WILL BE TREATED IN HOSPITAL FOR ANY INJURIES RECEIVED FROM CRASHES BEFORE BEING RETURNED BEING RETURNED TO THE STATE PEN!!!.. THE CITY.. ON THE CITY STREETS, EVERY ONE TRAVELS AROUND IN A VEHICLE OF SOME SORT-AND EVERY VEHICLE IS ARMED WITH SOME FORM OF WEAPONARY FROM A HUMBLE MACHINE GUN TO THE DEEPLY MENACING SPIDER-MINES. YOUR VEHICLE IS A THETA 4000 WHICH HAS VARIOUS ITEMS OF INSTRUMENTATION MOUNTED ON THE DASHBOARD. A TURBO THRUST JET ENGINE, AND AUTOMATIC LIGHT MACHINE GUN WEAPON SYSTEM AND FULL TITANIUM ARMOUR. THE SKIMMER HAS THE ABILITY TO FLOAT ABOVE THE GROUND ON A CUSHION OF AIR,EVEN OVER ROUGH TERRAIN AND WATER BUT YOU SHOULD BEWARE NOT TO STOP MOVING OVER THE LATTER OR YOUR VEHICLE WILL SINK,YOU WILL HAVE THEOPPORTUNITY DURING THE GAME TO VISIT SHOPS WITHIN THE CITY TO RE-EQUIP OR UPGRADE YOUR VEHICLE AND THIS WILL BECOME NECESSARY AS YOUR VEHICLE BECOMES DAMAGED AND AS YOUR ADVERSARIES BECOME TOUGHER. THERE ARE NINE SHOP COMPLEXES THROUGHOUT THE CITY AND EACH COMPLEX(N/S/W) CONTAINS 3 SHOPS. AS YOU PROGRESS THROUGH THE CITY YOUR VEHICLE ARMOUR WILL BECOME DAMAGED BY COLLISION OR BY COMING UNDER FIRE. WHEN YOUR ARMOUR HAS BEEN COMPLETELY PENETRATED YOUR VEHICLE WILL BE COMPLETELY DESTROYED. ARMOUR `PATCHES` ARE AVAILABLE FROM ANDROID MABELS `ODDS N ENDS`SHOP. IF YOUR ARMOUR IS LESS THAN 1/4 FULL STRENGHT THEN ENEMY FIRE MAY RESULT IN THE LOSS OF AN ITEM OF INSTRUMENTAION WHICH CAN BE REPLACED AT A SHOP. IN THESE CONDITIONS,IF THE PARTICULAR FIRE IS RECEIVED FROM ENEMY MINES THEN THE DAMAGE SUSTAINED TO THE UNDER SIDE OF THE VEHICLE, DIRECTLY INTO THE ENGINE AND YOU WILL SLOW DOWN, ENGINE BOOSTER PACKS ARE AVAILABLE FROM HENRY`S STATUS `ENGINE SHOP`. WEAPONDRY CAN BE BOUGHT AT OLD TIMER CLIVES `SMOKING GUN SHOP` MORE DETAILS IS GIVEN ON THE SHOPS LATER ON. THE SHERIFFS OFFICE. IF YOU HAVE JUST LOADED THE GAME, YOU WILL BE ASKED TO TYPE IN THE CRIMINALS NAME BEFORE YOU START. IF YOU DO NOT TYPE IN A NAME YOU WILL BE ISSUED WITH THE NAME `CRUSADER`. YOU START THE GAME FROM THE SHERIFFS OFFICE, ABOUT TO ENTER THE CITY. THE FOLLOWING OPTIONS ARE AVAILABLE TO YOU FROM THE SHERIFFS OFFICE: PLAY- SELECTING THIS OPTION WILL PUT YOU IN THE CITY IN YOUR THETA 4000 GROUND SKIMMER. LOAD: WHEN YOU SELECT THIS OPTION 10 OF YOUR SAVED POSITIONS WILL APPEAR ON SCREEN.EACH SAVED POSITION WILL APPEAR AS A CRIMINAL NAME FOLLOWED BY THE AMOUNT OF CASH THAT NHE HAS AND WHAT LEVEL HE IS ON. CLICKING ON THE POSITION WILL LOAD IT(AMIGA REQUIRES A DOUBLE CLICK). SAVE: AS PER LOADING A POSITION BUT BY CLICKING ON A POSITION. YOUR CURRENT STATUS WILL BE SAVED OVER THAT POSITION(AMIGA NEEDS A DOUBLE CLICK). NEW- THIS IS TO START OVER AGAIN/NEW WARNING USING THIS OPTION WILL ERASE YOUR CURENT CRIMINAL STATUS IN MEMORY..YOU WILL BE ASKED TO TYPE IN A NEW NAME AND YOU WILL BE GIVEN BASIC WEAPONARY AND WILL HAVE TO RESTART THE GAME FROMLEVEL 1. WHEN YOU SELECT PLAY THE AUTHIRITIES WILL GIVE YOU DETAILS OF THE CURRENT DRUG RUNNER THAT YOU HAVE TO HUNT DOWN. THIS INCLUDES HIS NAME, THE LEVEL NUMBER THAT YOU ARE ABOUT TO START ON,AND THE SECTOR OF THE CITY THAT YOU ARE ABOUT TO ENTER. YOU WILL ALSO BE ISSUED YOUR CRIMINAL RECORD SHOWING THE FOLLOWING INFO:YOUR CRIMINALS RECORD NoALONG WITH YOUR ALIAS OR NAME(PC ONLY) YOUR RESOURCES(CASH) CURRENT LEVEL No(1-12) INSURANCE RATING AND NUMBER OF YELLOW LIFE CANISTERS COLLECTED SO FAR.YOUR VEHICLE HARDWARE IS ALSO DISPLAYED SHOWNG YOUR VEHICLES CURRENT ARMOUR STATUS AND WEAPONS THERE ARE THREE WEAPON TYPES AVAILABLE(THOUGH IF YOU HAVE JUST STARTED YOU WILL ONLY HAVE A LIGHT MACHINE GUN) OF EACH WEAPON SYSTEM AND EACH HAS A CLASS OF 1-2-3 DESIGNATING IT AS LIGHT/MEDIUM/HEAVY. THE DRUG RUNNER AND HIS GANG BOSSES: WHEN THE DRUG RUNNER BEGING HIS RUN THE SKY WILL DARKEN.WHENEVER ONE OF HIS HENCHMEN APPEARS,A BOLT OF LIGHTNING WILL PROCEDE IT FOR A SECOND TO SHOW YOU WERE THE HENCHMAN IS ABOUT TO APPEAR. THE RUNNER HAS A SET ROUTE THROUGH HIS SECTOR, DROPPING OFF DRUGS FROM BUILDING TO BUILDING-THIS IS CALLED HIS DRUG RUN. HE APPEARS IN THE GAME AS A DISTINCTIVE ORANGE/RED SHIP STOPPING AT BUILDINGS TO DO HIS DEALS BEFORE MOVING ON TO THE NEXT ONE. WHENEVER THE RUNNER STOPS OFF AT A BUILDING, THE WHOLE BUILDING WILL DISAPPEAR SO THAT YOU CAN SE THAT THE RUNNER IS THERE. DRUG RUNNERS ARE PROTECTED BY BODYGUARDS, SOME OF THEM WILL HANG AROUND THE RUNNER AND FOLLOW HIS MOVEMENTS. IF HE COMES UNDER FIRE HE CAN DESPATCH ANY NUMBER OF GUARDS TO PROTECT HIMSELF. THE RUNNER CANNOT BE DEFEATED UNTIL YOU COLLECT ENOUGH OF HIS DRUG CANNISTERS(SE LATER) AS EVIDENCE AGAINST HIM. IF YOU FIRE ON THE RUNNER BEFORE COLLECTING ENOUGH OF THE CANNISTERS, THEN YOU WILL NOT BE ABLE TO HARM HIM. BUT HIS BODY GUARDS WILL ATTACK YOU. THE NUMBER OF CANNISTERS THAT YOU NEED TO COLLECT IS DISPLAYED ON THE DASHBOARD UNDERNEATH YOUR CASH BALANCE IN THE FORM OF A CONTRABAND COUNTER. THERE ARE ALSO A NUMBER OF GANG BOSSES WITHIN THE CITY WHO ARE MAINLY CONTROLLED BY THE DRUG RUNNER WHO HAS GIVEN EACH OF THEM A SPECIAL TASK. EACH BOSS HAS A NUMBER OF HENCHMAEN THAT FOLLOW HIM ABOUT TO HELP HIM CARRY OUT THAT TASK. TASKS INCLUDE PROTECTING THE RUNNER GOING TO PARTICULAR POINTS IN THE CITY, MAKING THE DRUG PICK UPS, DEFENDING PARTICULAR AREAS AND BUILDINGS OR EVEN ATTACKING YOU(IF YOU HAVE UPSET THE RUNNER ENOUGH) IF YOU DESTROY A BOSS YOU WILL AUTOMATICALLY BE ATTACKED BY ANY OF HIS HENCHMEN THAT ARE STILL ALIVE. THE DRUG RUNNER WILL HAVE ORIGANISED ALL OF THE GANG BOSSES AND THEIR TASKS IN A CUNNING STRATEGY TO PREVENT YOU FROM DEFEATING HIM. ON THE LAST LEG OF THE DRUG RUNNERS RUN, A RED `RUN COMPLETE` WARNING LIGHT WILL FLASH ON THE RIGHT-HAND SIDE OF THE DASHBOARD. WARNING YOU THAT THE RUN IS ABOUT TO BE COMPLETED. IF THE RUNNER COMPLETES A RUN, YOU WILL SEE HIM LAUGHING AT YOU AND SHERIFF STONE WILL `SEE TO IT` THAT YOU LOSE YOUR INSURANCE RATING. YOU WILL THEN BE GIVEN ANOTHER ATTEMPT TO DEFEAT HIS RUN UNLESS,OF COURSE YOUR INSURANCE RATING HAS EXPIRED, IN WHICH CASE THE AUTHORITIES WILL `PUT`YOU INTO HOSPITAL FOR FAILING. THROUGHOUT EACH LEVEL,MORE AND MORE CRIMINALS WILL APPEAR IN THE FORM OF ROBOTIC SNIPERS,GUARDIANS,ASSASSINS AND DRONES THAT JUST HAPPEN TO GET IN THE WAY. AND AS THE LEVELS PROGRESS,EACH RUNNER WILL BE PROTECTED BY MORE AND MORE OF HIS BODYGUARDS AND GANG BOSSES MAKING YOUR TASK MORE DIFFICULT. EVERY CRIMINAL IN THE CITY HAS A PRICE ON HIS HEAD AND YOU WILL BE CREDITED WITH A BOUNTY FOR EACH CRIMINAL THAT YOU TERMINATE. YOU WILL RECEIVE A PARTICULARY HIGH BOUNTY FOR KILLING BOSSES AND EVEN MORE FOR BOSSES MAKING A PICKUP.(SEE LATER) CASH AND DRUG CANISTERS: AS YOU DESTROY CRIMINALS,THEY WILL DROP EITHER CASH OR DRUG CANISTERS ON THE GROUND. YOU SHOULD DRIVE YOUR VEHICLE OVER THESE TO COLLECT THEM. CASH CANISTERS ONLY REMAIN ON THE GROUND FOR A SHORT TIME THEY DISAPPEAR. THEY CONTAIN THE ILLICIT TAKING OF THE CRIMINALS AND WILL VARY IN VALUE ACCORDING TO HOW IMPORTANT THE CRIMINAL WAS. REMEMBER THE BOSSES CARRY THE MOST CASH. UNDER THE RESOULTION 101 SUB SECTION (B)1): ANY MONIES CONFISCATED OR SEIZED FOR OR ON BEHALF OF THE GOVERMENT, THAT ARE KNOWN TO HAVE ILLICITLY,IMMORALLY,OR ILLEGALLY EARNED , MAY BE USED BY THE OFFENDER SEEKING AMNESTY TO AID OR FURTHER HIM IN THE SUCCESSFUL COMPLETION OF HIS/HER TERMINATION WARRANT. PUT INTO PLAIN ENGLISH THIS MEANS THAT YOU WILL BE CREDITED FOR ANY CASH CANISTERS THAT YOU COLLECT AND THIS MONEY CAN BE USED BY YOU IN THE SHOPS AT ANY TIME TO UPGRADE OR REPAIR YOUR SKIMMER. DRUG CANISTERS CONTAIN THE ILLICIT CONTRABAND OF THE DRUG RUNNER AND REMAIN ON THE GROUND FOR NEARLY A MINUTE. VARIOUS COLOURED CANISTERS CAN BE DROPPED BY BOTH THE RUNNER HIMSELF OR ANY OF HIS HENCHMEN. EACH OF THESE CANISTERS COLLECTED WILL CAUSE THE CONTRABAND COUNTER ON YOUR DASHBOARD TO TICK DOWN ONE AND YOU WILL ALSO BE CREDITED WITH 50 NEW AMERICAN DOLLARS ON YOUR DASHBOARD CASH BALANCE. AS THE RUNNER MAKES HIS RUN, HE WILL DELIBERATELY DROP DRUG CANISTERS AT SET POSITIONS ALONG HIS RUN. THESE CANISTERS COME IN ONE OF FOUR COLOURS AND EACH HAS ITS OWN DIFFERENT EFFECT.. RED `DRUG ` CANISTERS- SAFE TO PICK UP YELLOW `LIFE ` CANISTERS- SAFE TO PICK UP-FOR EVERY FOUR OF THESE CANISTERS THAT YOU COLLECT, YOUR INSURANCE RATING WILL BE INCREMENTED BY ONE. GREY `BOOBY ` CANISTERS- BOOBY TRAPPED-THESE WILL EXPLODE AND DAMAGE YOUR ARMOUR. BLACK `DEATH ` CANISTERS TERMINATED TRAPPED-THESE WILL EXPLODE AND DESTROY YOUR GROUND SKIMMER CAUSING YOUR INSURANCE RATING TO BE REDUCED BY ONE. SOMETIMES, WHEN A DROP IS MADE BY THE RUNNER, ONE OF THE GANG BOSSES WILL BE ORDERED TO PICKUP THE DRUG CANISTER AND TAKE IT SOMEWHERE. THE BOSS WILL THEN MAKE THE PICK-UP. ONCE THE PICK UP IS MADE, THE BOSS WILL FLASH AND TAKE THE CONTRABAND ELSEWERE. DESTROYING THE BOSS WHILST HE IS FLASHING WILL CREDIT YOU WITH A VERY HEALTHY SUM OF CASH.ALSO,DESTROYING A BOSS WHO HAS MADE A PICKUP WILL CAUSE HIM TO DROP A NORMAL RED DRUG CANISTER,EVEN IF THE CANISTER HE PICKED UP WAS NOT A RED ONE. THIS IS A VERY USEFUL WAY OF OBTAINING A DRUG CANISTER WHICH WAS BLACK. IN SOME SITUATIONS, BLACK DRUG CANISTERS WILL BE THE ONLY CANISTERS THAT YOU WILL FIND IN A SECTOR IN WHICH CASE THIS TACTIC WILL BECOME ESSENTIAL TO BE ABLE TO PROCEED FURTHER IN THE GAME. HENCHMEN HOLDING DRUG CANISTERS WILL ALWAYS DROP RED COLOURED CANISTERS WHEN SHOT AND THESE ARE SAFE TO PICK UP. DASHBOARD CONTROLS.... TOP ROW.... (1ST LEFT) LOCAL RADAR (2ND) ARMOUR STATUS INDICT (3RD ) COMPASS (4TH) WEAPON INDICATOR (5TH) CBTV LINK BOTTOM ROW. (1ST LEFT) DIRECTION FINDER (2ND) CITY MAP (3RD) CONTRABAND COUNTER (4TH) RESOURCES (5TH) RUN COMPLETE WARNING LIGHT ON THE DASHBOARD YOU WILL SEE 4 SMALL VID-SCREENS ON THE LEFT HAND SIDE FROM TOP LEFT GOING CLOCKWISE, THESE UNITS ARE: LOCAL RADAR: THIS UNIT SHOWS ALL OF THE SURROUNDING ENEMIES IN YOUR LOCAL VICINITY WITH YOUR OWN POSITION AT THE CENTRE OF THE VID-SCREEN. THIS RADAR WILL ROTATE AS YOU TURN SO THAT YOUR FORWARD VIEW IS ALWAYS SHOWN NORTH ON THE RADAR. MOVING VEHICLES APPEAR AS RED`BLIPS`. CASH AND DRUG CANISTERS APPEAR AS `GREEN` `BLIPS`. THE DRUG RUNNER WILL APPEAR AS A WHITE `BLIP` ARMOUR STATUS INDICATOR- THIS UNIT SHOWS THE STATUS OF YOUR VEHICLE ARMOUR.WHEN YOUR ARMOUR DROPS BELOW 1/4, ENEMY FIRE MAY PENETRATE YOUR ARMOUR AND INTERNAL DAMAGE MAY OCCUR. WHEN YOUR ARMOUR IS COMPLETELY PENETRATED, YOUR VEHICLE WILL BE DESTROYED. CITY MAP: THIS UNIT SHOWS ENEMY ACTIVITY IN THE FORM OF RED`BLIPS`FOR MOVING VEHICLES AND AMBER`BLIPS` FOR STATIC DRONES OVERLAID ON A TINY MAP OF THE CITY. YOUR OWN POSITION IS SHOWN WITHIN THE CITY AS A WHITE`BLIP`. PC PLAYERS CAN PRESS F4 KEY TO MAKE A MORE DETAILED MAP OF THE CITY APPEAR ON THE SCREEN.USE UP/DOWN TO EXAMINE THE MAP. NOTE THAT THE GAME ACTION IS PAUSED WHILST THIS DETAILED MAP IS UP ON SCREEN. DIRECTION FINDER: THIS UNIT POINTS TO THE POSITION OF YOUR NEAREST SHOP OR THE DRUG RUNNER HIMSELF. IF THE TARGET IS VERY CLOSE TO YOU THEN THE MIDDLE OF THE POINTER WILL LIGHT UP. IF THE TARGET IS THE DRUG RUNNER AND HE HAS NOT STARTED HIS RUN YET THEN THE FINDER WILL APPEAR INACTIVE. PRESS F5 TO TOGGLE THE TARGET BETWEEN YOUR NEAREST SHOP COMPLEX AND THE DRUG RUNNER HIMSELF-A SMALL ICON WILL APPEAR FOR A SPLIT SECOND SO THAT YOU KNOW WHAT YOUR CURRENT TARGET IS. NOTE: THAT IT IS POSSIBLE FOR ANY OF THESE UNITS TO BE DESTROYED BY ENEMY FIRE PENETRATING AREAS OF YOUR ARMOUR. WHEN A UNIT HAS BEEN DESTROYED, THE EXPANSION UNIT PLUG WILL BE REMOVED NEXT TO THE RELEVANT VID-SCREEN AND THE VID-SCREEN WILL APPEAR BLANK. THE CBTV LINK- ON THE FAR RIGHT HAND SIDE OF THE DASHBOARD IS THE CBTV LINK.THIS ENABLES TO SEE THE DRUG RUNNER OPERATING ON THIS LEVEL AND IT ALSO ENABLES HIM TO SEE YOU!!, HE WILL LAUGH AT YOU WHENEVER ONE OF HIS HENCHMEN SCORES A HEAVY HIT ON YOU OR HE WILL SNEER AT YOU WHENEVER YOU YOU MANAGE TO WIPE OUT ONE OF HIS HENCHMEN. WEAPON INDICATOR- THIS SHOWS YOU WHICH WEAPON YOU HAVE CURRENTLY SELECTED. ONE OF THE THREE INDICATORS WILL ALWAYS BE LIT TO SHOW YOU WHICH WEAPON YOU CURRENTLY HAVE ACTIVE. THE LIGHTS REPRESENT FROM LEFT TO RIGHT..MACHINE GUN..CANNON..AND HEAT SEEKER MISSILE LAUNCHER. COMPASS- IT SHOWS YOU WERE YOUR GOING IN THE CITY..EASY EH RESOURCES- THIS IS THE DIGITAL READOUT(8 DIGITS) OF YOUR CURRENT CASH BALANCE IN NEW AMERICAN DOLLARS. CONTRABAND COUNTER- THIS IS A DIGITAL READOUT OF THE NUMBER OF DRUG CANISTERS THAT YOU NEED TO CONFISCATE BEFORE YOU ARE ABLE TO DEFEAT THE DRUG RUNNER. RUN COMPLETE WARNING LIGHT- THIS LIGHT WILL FLASH RED WHEN THE DRUG RUNNER IS ABOUT TO COMPLETE HIS RUN. THE LIGHT STARTS TO FLASH WHEN HE LEAVES HIS LAST BUILDING BEFORE RETURNING TO HIS HOME BUILDING. THE AMOUNT OF TIME HE TAKES TO REACH `HOME` WILL VARY FROM LEVEL TO LEVEL. SHOPS THERE ARE THREE SHOPPING COMPLEXES WITHIN EACH QUIARTER OF THE CITY. REFER TO THE MAP ENCLOSED IN YOUR PACKAGE(THE BRILL ONE DONE BY ME!!!) TO SEE WHERE THEY ALL ARE. YOU SHOULD USE YOUR DIRECTION FINDER TO LOCATE THE CLOSEST ONE. ONCE YOU HAVE REACHED A SHOPPING COMPLEX YOU SHOULD PARK OUTSIDE IT(JUST STOP YOUR VEHICLE ON THE DARK GREY FORECOURT) AND YOU WILL THEN AUTOMATICALLY ENTER THE SHOPPING COMPLEX. INSIDE THE SHOPPING COMPLEX YOU CAN ACCESS ANY OF THE 3 SHOPS AND BUY ITEMS,CLICK ON THE `NEXT`WINDOW IN A SHOP(PC OWNERS PRESS F1) TO MOVE AROUND TO THE NEXT SHOP KEEPER. YOU WILL BE ABLE TO LOIGHT UP A SMALL LIGHT UNDER EACH ITEM FOR SALE AND A PRICE FOR THE ITEM WILL APPEAR IN THE `PRICE` WINDOW. IF A LIGHT DOES NOT APPEAR OR A SOLD MESSAGE APPEARS IN THE WINDOW THEN THE ITEM IS NO LONGER AVAILABLE FOR SALE. NOTE: THAT IN CLIVES SHOP THE WEAPON TRADE IN PRICE IS DISPALYED IN THE `PRICE` WINDOW. USING THE LEFT MOUSE BUTTON, CLICK ON THE ITEM THAT YOU WISH TO BUY AND THEN CLICK ON THE BUY WINDOW TO BUY THE ITEM. CLICK ON THE EXIT WINDOW TO LEAVE THE SHOP. WHEN YOU BUY AN ITEM, THE SHOPKEEPER WILL WINK AN EYE AT YOU, THE COST WILL BE DEDUCTED FROM YOUR CASH BALANCE AND THE ITEM WILL BE FITTED ON BOARD YOUR VEHICLE. NOTE: THAT WHEN YOU LEAVE A SHOP, YOUR DIRECTION FINDER WILL AUTOMATICALLY TARGET BACK TO THE DRUG RUNNER. SHOPS/SHOP KEEPERS.... ANDROID MABELS `ODDS AND ENDS` ARMOUR AND INSTRUMENTS RADAR..CITY MAPS OLD TIMER CLIVE `SMOKING GUNS` MACHINE GUNS L/M/HEAVY CANNON L/M/HEAVY HEAT SEEKERS MISSILES LIGHT/MEDIUM/HEAVY HENRY`S STATUS `ENGINE SHOP` ONLY 1 ITEM AVAILABLE AN `ENGINE` THE CONTROLS- THE GAME CAN BE CONTROLLED USING KEYBOARD.MOUSE,OR JOYSTICK(KEYBOARD OPTION NOT AVAILABLE ON THE ST/AMIGA) USING A MOUSE LEFT,RIGHT WILL MOVE YOU LEFT AND RIGHT, USE THE LEFT MOUSE BUTTON TO THRUST YOU FORWARD AND THE RIGHT MOUSE BUTTON TO FIRE. HOLD DOWN THE MOUSE BUTTON TO FIRE AUTOMATIC WEAPONS. AMIGA OWNERS WILL AUTOMATICALLY START IN MOUSE MODE, [PRESS F9 TO TOGGLE TO JOYSTICK CONTROL..SAME MOVEMENTS AS ON MOUSE. IN THE CITY, THE FOLLOWING KEYS CAN BE USED. F1- SWITCH TO MACHINE GUN FIRE F2- SWITCH TO CANNON FIRE(IF YOU HAVE ONE) F3- SWITCH TO HEAT SEEKERS(IF YOU HAVE THEM) F4- TOGGLE TO DETAILED MAP(PC ONLY-IF YOU HAVE A CITY MAP) F5- TOGGLE DIRECTIONAL FINDER TARGET(IF YOU HAVE ONE) F6- TOGGLE SIGHTS ON/OFF AT ANY TIME THE FOLLOWING KEYS CAN BE USED: F7 TOGGLE MUSIC ON/OFF F9 TOGGLE JOYSTICK/MOUSE F10 PAUSE ON/OFF SHIFT AND HELP-QUITS GAME HELP RESTART THIS LEVEL(AND LOSE AN IVI RATING) STRATEGY THERE ARE MANY WAYS TO APPROACH THIS GAME, THE BASIC STREATEGY BEING TO KILL ALOT AND COLLECT THE RED CANISTERS, IT IS ALWAYS SAFER TO KILL HENCHMEN AND BODY GUARDS BEFORE GANG BOSSES AND DRUG RUNNERS AS THESE CAN BE TACKLED IN ISOLATION. IT IS WORTH TRYING A LEVEL A FEW TIMES TO FIND OUT WETHER GANG BOSSES USED TO PICK UP CONTRABAND, AND IF SO TO WAIT UNTIL THEY HAVE MADE THERE PICK UP, BEFORE KILLING THEM. TO EARN MORE CASH AND CONVERT BLACK CANISTERS TO RED. IT IS IMPORTANT TO KEEP BUYING WEAPONS-BIGGER GUNS= BIGGER POWER AND YOU NEED EM AS LEVELS GO ON. YOU DONT NEED ENGINE BOOSTERS UNLESS YOU START TO SLOW DOWN. KEEP SHEILD LEVELS TO 1/2 AS TO AVOID TAKING ANY EXTRA DAMAGE. ALSO YOU CAN FIRE THROUGH THE BUSH..YOUR ENEMIES CAN`T..KEEP MOVING , KEEP BUYING... GOOD LUCK!!!!THE ILLI Here's part 4 to the Dr. T's KCS Docs ....... Check out Doc Disk 20 for the first three parts. Chapter 14 ~~~~~~~~~~ TROUBLESHOOTING ~~~~~~~~~~~~~~~ While MIDI is one of the most successful and consistent interfacing standards in the computer industry, it is still possible that certain types of equipment won't work well together. Many times, what might seem like a perfectly reasonable configuration won't give the expected results. This could be because you are trying to use a feature which is not implemented on a particular machine, or because you haven't initialized your synths correctly, or for many other reasons. When you get into a situation like this, a MIDI data display program can be very helpful. You can then determine if a piece of equipment is doing what it is supposed to do, or if the problem lies elsewhere. A MIDI display program for the Commodore 64 was published in the September 1986 issue of Electronic Musician, and instructions for adapting this program to the ST appeared in the June 1987 issue. We're sorry, but Dr. T's can only answer directions directly regarding the operation of our software, and not questions regarding the idiosyncrasies of a particular piece of equipment. See Appendix 1 for further information on customer support. There are two general approaches that are useful when troubleshooting a complex system. you can attempt to isolate the source of the trouble by changing one aspect of the system at a time, or you can simplify the system by using fewer pieces of equipment or program features. You should try both approaches when confronted with a problem in the use of the software. Don't forget the Doctor's prescription for dealing with MIDI technical problems, REXMAN (Relax, EXperiment, and read your owner's MANuals). The remainder of this chapter outlines solutions to various common problems. Program Gives Errors on Loading ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Does the computer load other programs? If so, you might have a bad disk. In this case, contact Dr. T's to arrange for a replacement disk. DO NOT send back your disk without contacting Dr. T's for a return authorization number. Returned products which do not display such a number on the outside of the package will be returned to the sender. And remember, NEVER save your data files on your KCS program disk! Program Gives Errors While Running ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ If you booted your Atari ST from a system disk containing disk accessories, try re-booting from the KCS program disk. If you are using an Amiga, it is possible that some other programs may cause problems when run concurrently with the KCS. Try eliminating all other programs from the Amiga's memory, or re-booting from the KCS program disk. We are interested in hearing about any problems you may have when multi-tasking the KCS with another company's product, but we cannot guarantee that we will be able to solve the problem. Computer Appears to be Dead ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Adjust your monitor settings and check for a loose monitor cable. is the disk drive on and is the drive cable OK? Is the mouse properly inserted in the correct jack? Try turning the computer's power off for at least 15 seconds, then re-boot. This forces the computer to completely clear it's memory. Instruments Do Not Respond ~~~~~~~~~~~~~~~~~~~~~~~~~~ First check to see that all your MIDI cables are connected properly, that data reception is enabled on each instrument, and that the correct channel assignments are being used. If nothing plays at all, the program might be set to sync to a nonexistent external clock. check the clock source on the SET OPTIONS page. The program may have crashed. Save your files (if possible), remove the disk, power down or reset the computer, and then run the program again. If a sequence or track that you've just finished recording won't play back, use the edit screen to confirm that you have acutally recorded data, and that it's on the right channel. Check your master synth, as well as the ECHO and FILTER settings on the SET OPTIONS screen if not. Continuous Controllers are Recorded Incorrectly ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Occasionally, a long string of continuous controller messages, such as pitch bend or the modulation wheel, may be recorded as a string of program changes or other incorrect message types. This happens if the instrument used for recording employs running status, and recording is turned on after the start of the controller motion. When running status is used, a MIDI status byte is sent only at the start of the controller motion, rather than with each individual message, and if recording is enabled after this single status byte is sent, the KCS (or any MIDI devide, for that matter) will not interpret the subsequent data correctly. If this happens, simply re-record the controller data, but play a single note before moving the controller. This ensures that a status byte will be sent at the beginning of the controller motion, and the note can be easily removed on the edit screen. Note that changing the RUNNING STATUS switch on the SET OPTIONS screen of the KCS will not help with this problem. Some Instruments Don't Respond Correctly All the Time ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Some instruments can't respond to MIDI information at the full specified MIDI rate. This is especially true for some DX7's. The symptom is that the instrument appears to be missing notes. Sometimes changing programs will fix the problem; a more drastic action is to re-power the instrument. Use the MIDI SLOW function in the SET OPTIONS section of the program to slow down the MIDI transmission rate. Use the lowest value which provides acceptable results. MIDIed Drumulators are also susceptible to this problem. Sequencer Plays Back, but Notes are Garbled ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Using nonstandard MIDI cables on the Atari ST's MIDI output can cause this problem, especially if you're playing an instrument that's connected to the computer's MIDI in at the same time. Check your cables to make sure that pins 1 and 3 are not shorted to pins 4 and 5. Some synthesizers also have these pins shorted together at their MIDI inputs, which will cause problems if you are using a 5 conductor MIDI cable, though three conductor cables do not exhibit this problem. Are notes overlapping improperly? If an instrument is in mono mode and notes overlap, the instrument may not retrigger its envelopes. If an instrument is in poly mode and notes of the same pitch overlap, undesirable results might occur. If a note ends and a new note begins in the same time step, the new note will start before the old one ends, causing an overlap. Sending program changes too close to a note on or off message can cause missing or stuck notes on some synths. Try moving any program changes in the area of the affected notes. Synthesizers Spit Out Notes at High Speed ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ If you loop an Open mode sequence that contains one or more MIDI events, all with times of zero, the program will send these MIDI events as fast as it can, causing your synthesizer to sound as if it's going haywire. If you loop a control sequence of length zero, and the control sequence does not have a WAIT programmed, that sequence will keep restarting all of the sequences it is controlling, and they will keep replaying their first notes. Don't loop any sequence whose times are all zero, unless it has a WAIT programmed and a DE event at the end. A MIDI loop condition, where the computer's MIDI out is fed back to its own MIDI in through a merger, can also cause this to occur. Instrument Sends Data, but Doesn't Receive ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The instrument may not be set to receive on the MIDI channel that it is sending on. Are your MIDI cables good? Some sync cables look like MIDI cables, but won't work properly for MIDI. Check that the synth's MIDI receive channel is the same as its send channel, and that ECHO and FILTER are set properly. MIDI Controllers Are Not Recorded ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Have you set the KCS to record controllers? Does this instrument send and receive the controllers you're using? Some early MIDI synths, such as the Roland Jupiter 6, won't send control changes over MIDI. Others, like the Prophet 600, must have controllers enabled from the front panel each time the synth is turned on. Early DX7's sent aftertouch as controller 3. Sequencer and Drum Machine Go Out of Sync When Looping ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This can occur if the length of the sequence in Open mode or of track 1 in Track mode is not a multiple of the length of the drum box pattern. Check to make sure that the sequence ends on the first step of a measure, rather than step 96 or some other nearby value. If you do not use the ALIGN feature while recording you will almost always end the recording process a little before or after the end of a measure. On playback each loop will put the sequence further out of sync. When using ALIGN, you must press the F10 key DURING the last measure that you wish to record. Pressing F10 a fraction of a beat into the next measure will force the program to continue recording for another entire measure, even if you do not play any notes. Clicking on STOP or pressing F1 immediately stops recording and defeats the ALIGN feature. If a drum box is synced to the program via MIDI, it may lose timing clock information if too much MIDI information is being sent. As the piece progresses the drum machine will go further out of sync. Does the drum keep sync when only playing a few sequences? Does it play better if no sequences with PB, AT or CC events are running? Select RUNNING STATUS on the SET OPTIONS screen may help. Other ways around this are to use the drum machine as the master, or to have the KCS play the drums instead of sending time to the drum machine to play its own patterns. Synths Not Accepting Program Changes ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Some synthesizers, for example Sequential's instruments, power up in a mode in which they do not accept program changes via MIDI. Your synthesizer manual should contain instructions on how to make them accept program changes. Many instruments only accept a limited range of program numbers, and reject all others. A Programmed Wait Does Not Occur ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Sequences which call other sequences and use the WAIT feature should have a DE event with a time of zero for the last event. If you do not do this, you will encounter problems when you try to chain this sequence into a higher level control sequence. Noticeable Time Delays Occur When Sequences Start or Loop ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The computer is a powerful, but finite tool. If you attempt to play several sequences simultaneously, which in turn each play a lot of notes simultaneously, the computer may lag. If this occurs, rearrange your sequence structure to reduce the amount of work the computer has to do in one time step. Edit the timing so that not as many sequence start events occur at the same time. Most instruments will react strangely if you try to send a patch change and play a note in the same time step. See the note on program changes under Sequencer Plays Back, But Notes Are Garbled. Synthesizer Not Functioning in Multi-Timbral Mode ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Some multi-timbral synthesizers (the Sixtrak and the CZ-101, for example) power up in poly mode. To use the multi-timbral feature, you must set them to mono mode, either through MIDI (see the MIDI chapter) or by following the instructions in your owner's manual. The Sixtrak will always transmit on its basic channel, so you may need to use Local Control Off and ECHO to record in real time. you will have to use the edit screen to insert program changes for each channel recorded, as selecting a program on the Sixtrak affects all six voices. If a synth appears to be responding sluggishly in multi-timbral mode (short staccato notes are lost or one note may have a rough attack), try using the MIDI SLOW option on the SET OPTIONS screen. Chapter 15 ~~~~~~~~~~ APPLICATION NOTES ~~~~~~~~~~~~~~~~~ This Chapter contains tips for making better use of certain instruments with the Keyboard Controlled Sequencer. Since new equipment continues to be released at an increasing rate, it is not possible to make a complete listing of products that will work with the program. Many instruments share design features, so the following information may be useful even if you do not own the instruments discussed. Casio CZ Series ~~~~~~~~~~~~~~~ The Casio CZ-101 is a programmable eight voice polyphonic digital instrument. It can hold 32 programs (16 of these are presets and may not be changed) or 48 programs if you buy the optional RAM cartridge. Dr. T's also has available a patch librarian/editor for the CZ, and RAM cartridges pre-loaded with 64 of our favorite sounds. The CZ-101 is very useful with the KCS because it can also function as four mono synths. It may be programmed to work on any four adjacent MIDI channels, with each channel playing a different sound. One drawback is that there is only one output jack for the four different sounds. You will have to change DCA envelope levels to balance the relative volumes. There is no MIDI thru on the CZ synthesizers, so you'll need a MIDI junction box or else patch the CZ at the end of the MIDI chain. The CZ's are not sensitive to velocity but respond well to variations in duration because of their three 8 stage envelope generators. you can put the CZ-101 in mono multi-timbral mode by pressing the SOLO button. You can then use the MIDI, cursor right, and up arrow buttons to select programs, or you can select programs from the sequencer. Note in the multi-timbral mode the CZ may not always react predictably. Notes may ge chopped or missed. If doing serious recording, you may wish to use a syncing device and record each Casio part in normal rather than in mono mode. This will also depend on what patches you are using and the value of the notes it is receiving. Casio has an "overlap" in its program calling. A program on the Casio can be specified with either of two numbers when selected from the sequencer. KCS PG Value CZ Program ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 0 - 15 Presets 1 - 16 16 - 31 Presets 1 - 16 32 - 47 Internal 1 - 16 48 - 63 Internal 1 - 16 64 - 79 Cartridge 1 - 16 80 - 95 Cartridge 1 - 16 The CZ's have one MIDI controller conflict with other instruments. MIDI controller 6, which is assigned to the data slider on most instruments, is used for a tune control on the CZ's, which can cause problems if data slider information is accidentally sent to a CZ. Another quirk of the CZ's is that in Mono mode, pitch bend is only received on one channe - and not the basic channel, as you'd expect, but the most recently selected voice channel, which is shown beside the letters VO in the Casio's MIDI display. Korg EX-800, Poly-800 and DW-6000 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The Poly-800 and EX-800 are similar, with the newer EX-800 being a keyboardless version of the Poly-8OO with a few more features. Both machines send on channel 1 and may be set to receive on any channel and both may select an external MIDI clock to drive their own sequencer along with the KCS. The Poly 800 sends its sequence data on channel 2. The DW-6OOO is a 6 voice synth with 64 programmable memories. It features a digital waveform generator system. The DW-6000 will send and receive note data, program change, pitch bend, OSC mod, VCF mod, damper pedal, podamento switch and system exclusive messages. Korg instruments use a modifed octal numbering system to arrange patches into "banks", as described in the MIDI chapter. These Korg instruments neither send or receive velocity but they do respond to MIDI volume information. Standard MIDI controller assignments are used except for mod wheel and breath control (controllers 1 and 2), which are used for joystack up and joystick down on the Korgs. MIDI Clock and Merge Boxes ~~~~~~~~~~~~~~~~~~~~~~~~~~ The MIDI interfaces used by the Amiga and ST do not provide any inputs other than MIDI in. If you want to sync to tape or to an external drum machine, you need a device that provides MIDI clock to the computer. If you want to be able to use the real time record features of the KCS while syncing to tape, you need a device that can combine the MIDI clock signal from your drum machine or sync box with the MIDI output of your keyboards. The Yamaha KX76 and KX88 keyboards do this automatically, and some others may as well. Harmony Systems, JL Cooper and others make MIDI merge boxex, which merge two MIDI inputs into a single MIDI output. Yamaha makes a device which does MIDI merge and provides several additional continuous controllers. Any of these will allow you to merge MIDI clock with MIDI keyboard data, and newer models will simultaneously generate a MIDI clock and merge it with data from one or more MIDI instruments. MIDI Junction or Thru Boxes and MIDI Switcher Boxes ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Many companies manufacture MIDI thru boxes. They consist of one MIDI input and several MIDI outputs, and are useful if you have several instruments with no MIDI thrus. Kamlet, 360 Systems, JL Cooper, and others make MIDI switcher boxes. These are more elaborate boxes that allow you to choose among several MIDI inputs for each of 8 or 10 MIDI devices. We find these invaluable in our setups. Ensoniq Mirage ~~~~~~~~~~~~~~ The Mirage samplwr responds to vwlocity changes particularly well with velocity controlled ADSR's velocity sensitive oscillator mix, and keyboard scaled decay. You may have several samples spread across the keyboard, giving the impression that it is several instruments (although there is only one audio output). You can balance the volunle between the two keyboard sides. The instrument powers up in omni mode. The Mirage Operating System Version 3 update adds a lot more MIDI control to the instrument which the KCS can address using CC events or single byte messages. Among the performance enhancements are aftertouch, breath controller, and Local Control Off. The Mirage can also be made to initiate a disk load by sending it an appropriate program change command; see your Mirage manual for details. Ensoniq ESQ1 ~~~~~~~~~~~~~ The ESQl is a very powerful eight voice multi-timbral synthesizer, which can receive on up to nine channels simultaneously when the instrument is in multi mode. Channel assignments are controlled by the ESQ1's internal sequencer. Since each sequence on the iESQ1 can be selected from MIDI by sending an appropriate song select command, it is possible to re-assign the channel that the ESQ receives on from one instant to the next. Since voices are assigned to channel on an "as needed" basis, it is possible to play up to eight voices on any of the nine channels at one time, without worring about which channel has how many voices assigned to it. The keyboard sends release velocity through MIDI, though the ESQ won't recognize this information. It is also possible to push any button on the ESQ's front panel via system exclusive messages; see the version 2.0 update documentation for details. Yamaha KX76 and KX88 Master Keyboards ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CAUTION: KX76's and KX88's can have problems when using the MIDI merge feature of the KCS. If you patch a KX76 or 88 to receive data from the KCS, and then send it on to the receiving synths, and the KX76 or 88 (or at least ours) receives too much MIDI data at one time, it will erase its internal memory and go back to the state it was in when it was shipped from the factory. Beware of MIDI loops and length 0 sequences when using a KX76 of KX88 in this manner. Yamaha RX11 and RX15 Drum Machines ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The RX11 features several variations of the most essential drums. There are 8 snares, 3 kicks, 3 closed hats, 2 open hats, 2 cowbells, 2 claps, and 2 rimshots. It is possible to set the instrument select, note number, volume, pan, and MIDI channel assignment for each drum from the KCS using system exclusive messages; the codes for doing this are contained in the RX11 service manual. One problem with the RX11 is that it can not record when wynced to an external device, either through MIDI or the tape sync input; nor will it send a MIDI clock or tape sync pulse while recording. It also "hangs up" and refuses to accept MIDI information for about two seconds after receiving a MIDI start command, if it is set to an empty pattern or song. For these reasons, it is best to ignore the RX11's pattern recording features and use it strictly as a drum synthesizer, with the KCS controlling the drums via MIDI note commands. In this case, set the RX11's clock source to EXTERNAL. The RX15 is similar to the RX11, but has fewer features. There are not as many drums, fewer patterns and only two audio outputs. Nor does it receive the system exclusive messages that the RX11 recognizes. One problem the RX15 has when syncing to MIDI clock is that occasionally, if it receives too much data (such as note information intended for another instrument) it will start to miss MIDI clocks. This causes the drum machine to lose sync, and the musician to pull his hair out. Try activating RUNNING STATUS on the SET OPTIONS screen. Appendix 1 ~~~~~~~~~~ SERVICE AND SUPPORT ~~~~~~~~~~~~~~~~~~~ This program and the associated documentation are copyright (C) 1986, 1987, and 1988 by Emile Tobenfeld. This program is licensed to be used on a single machie, by the original purchaser only. It may not be copied without explicit written permission. The diskette on which the program is furnished is warranted for ninety (90) days from the date of delivery. The program is not guaranteed to meet your requirements, and operation of the program is not guaranteed to be uninterrupted or error free. In no event will Emile Tobenfeld or Dr. T's Music Software be liable for any damages, including any lost savings, lost profits, or other incidental or consequential damages arising out of the use or inability to use this program, even if we have been advised of the possibility of damages. Dr. T's Music Software and Emile Tobenfeld shall not be responsible for any damages claimed by any other party, resulting from the use or attempted use of this program. All warranties implied are Dr. T's, not your local dealer. If problems arise, call Dr. T's directly. Copy Protection and Backups ~~~~~~~~~~~~~~~~~~~~~~~~~~~ The disk containing the KCS is copy protected, and must be inserted in drive A: on the Atari ST, or any disk drive on the Amiga, when running the program from either the hard or floppy disk. We regret the necessity for copy protection, but experience has shown this to be the only way to deal with unauthorized distribution of our programs. Software piracy is a crime and deprives your fellow artists of their rightful income. Because of this problem, we are much more fun to deal with if we have your completed warranty card in our hands when you call for technical support. Backup disks may be obtained from Dr. T's for $15, when you send in your warranty registration card. You must include either your completed warranty card or your diskette serial number and a copy of the sales receipt. When calling Dr. T's for customer service, there are a number of things that you can do to help us help you, which can also save you money on your long distance bill. Here is a check list of things to have ready when calling Dr. T's. 1. Your diskette regstration number 2. Your manual 3. Computer turned on and KCS booted 4. Any data related to the problem 5. Information on your computer's disk configuration, monitor type, printer type, etc. 6. Paper and pencil When you call us, we will walk you through the program and ask you questions about what happens, so it is very important that you have this material at hand when calling. If you don't have this ready, we will ask you to call back later with the required information. After you've completed the checklist, call us at (617) 244-1542 between 10 AM and 4 PM Eastern Standard Time, Monday through Friday. Appendix 2 ~~~~~~~~~~ COMMAND KEY REFERENCE LISTS ~~~~~~~~~~~~~~~~~~~~~~~~~~~ The next few pages contain reference lists of the keyboard functions on the Track, Open, and Song mode play and record screens, and the step time record screen. You may make copies of these pages and keep the copies close at hand when using the KCS, if you like. TRACK MODE PLAY/RECORD SCREEN ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ TRACK SELECT KEYS ~~~~~~~~~~~~~~~~ 1 - 9 : Tracks 1 - 9 A - Z : Tracks 10 - 35 Numeric 1 - 9 : Tracks 36 - 44 Numeric ( : Track 45 Nvmeric ) : Track 46 Numeric ' : Track 47 Numeric / : Track 48 CONTROL PANEL ~~~~~~~~~~~~~ F1 :EXIT F2 :RECORD F10/SPACE :PLAY ESC :PAUSE ENTER :STOP . :TEMPO UP , :TEMPO DOWN UNDO :RE-RECORD ? :ERASE TRK : :CONTROLLERS ' :AFTERTOUCH * :NOTE OFF VEL ; :MIDI MERGE BACKSPACE :ECHO > :ECHO CHAN UP < :ECHO CHAN DOWN TAB :CUE CRSR UP :START CUE UP CRSR DOWN :START CUE DOWN CRSR RIGHT :END CUE UP CRSR LEFT :END CUE DOWN LIVE EDIT ~~~~~~~~~ RIGHT SHIFT :DELETES NOTES CONTROL :RESTORE NOTES ALTERNATE :VEL = 127 LEFT SHIFT :VEL = 64 ALT/L.SHIFT :VEL = 16 AMIGA KEY SUBSTITUTIONS ~~~~~~~~~~~~~~~~~~~~~~~ Atari ST Amiga ~~~~~~~~~~~~~~~~~~~~~ UNDO :Right AMIGA key INSERT :Right ALT key CLR HOME :Shift-DEL Numeric ( :Numeric - Numeric ) :Shift-Numeric - Numeric * :Numeric . Numeric / :Shift-Numeric . The four numeric key substitutions apply to the Amiga 1000 only. TRACK OPTIONS ~~~~~~~~~~~~~ F3 :MUTE/UNMUTE F4 :SET PUNCH F5 :CLEAR PUNCH F6 :ERASE PUNCH F7 :COPY PUNCH F8 :SOLO F9 :SET SWITCH F11 :SHIFT +1 F12 :SHIFT +3 F13 :SHIFT +12 F14 :SHIFT -1 F15 :SHIFT -3 F16 :SHIFT -12 F17 :EDIT SELECT F18 :SWAP F20 :NAME CLR HOME :ERASE ALTERNATE :MUTE ONLY SHIFT :UNMUTE ONLY HIDDEN CONTROLS ~~~~~~~~~~~~~~~ DELETE :ALIGN RETURN :TRACK SWITCH \ :TRACK MERGE | :AUTO-RECORD % :VISIBLE METRONOME $ :AUDIBLE METRONOME ! :ALL TRACKS TO SEQ ^ :TEMPO CHG BY RATIO & :STEP DELAY # :MUTE ALL TRACKS @ :UNMUTE ALL TRACKS * :EDIT/PUNCH BUTTONS - :SILENT PUNCH / :CUE LOOP ] :CUE BACK 1 BAR [ :CUE BACK 2 BARS ' :CUE BACK 4 BARS = :CUE BACK 8 BARS INSERT :CUE MOVE AMOUNT ( :TRACK LOOP ) :FILTER _ :FILTER CHAN DOWN + :FILTER CHAN UP F19 :VELOCITY PEDAL ~ :PANIC BUTTON 0 :SET OPTIONS SONG MODE PLAY SCREEN ~~~~~~~~~~~~~~~~~~~~~ SEGMENT KEYS ~~~~~~~~~~~~~ 1 - 9 : Segments 1 - 9 A - Z : Segments 10 - 35 Numeric 1 - 9 : Segments 36 - 44 Numeric ( : Segment 45 Nvmeric ) : Segment 46 Numeric * : Segment 47 Numeric / : Segment 48 SEGMENT OPTIONS ~~~~~~~~~~~~~~~~ F4 :PLAY IMMEDIATE F5 :PLAY AFTER CURRENT F6 :SET LOOP START F7 :SET LOOP END CHANNEL KEYS ~~~~~~~~~~~~ 1 - 9 : Channels 1 - 9 A - G : Channels 10 - 16 CHANNEL OPTIONS ~~~~~~~~~~~~~~~ F3 :MUTE/UNMUTE F8 :SOLO F9 :SET SWITCH HIDDEN CONTROLS ~~~~~~~~~~~~~~~ F1 :EXIT LEFT MOUSE :EXIT F10/SPACE :PLAY ' :TEMPO UP , :TEMPO DOWN UNDO :STOP RETURN :CHANNEL SWITCH TAB :CUE CRSR UP :CUE POINT UP CRSR DOWN :CUE POINT DOWN INSERT :CUE MOVE AMOUNT CRSR LEFT :LAST SEGMENT CRSR RIGHT :NEXT SEGMENT F2 :LOOP CURRENT SEGMENT \ :LOOP ON/OFF ; :MIDI MERGE BACKSPACE :ECHO > :ECHO CHAN UP < :ECHO CHAN DOWNT 0 :SET OPTIONS ~ :PANIC BUTTON ============================================================================ The Dr. T's Keyboard Controlled Sequencer docs are brought to you by The Southern Star. Imported by Midnight Maniac & Mayday of Trilogy