Mazes

From Maze

Revision as of 13:27, 8 October 2010 by MarkMarino (Talk | contribs) (→Ancient and Mythological Mazes)
Jump to: navigation, search

Contents

[hide]
  • 1 Game Books
  • 2 Introduction
  • 3 Screen Mazes
  • 4 Procedural Mazes
  • 5 Keyboard and Character Map, Hardware and Software
  • 6 Context of Expectations: Computer Graphics and Games
  • 7 Patterns
  • 8 See Also
  • 9 Notes
  • 10 Bibliography
  • The Magic of Mazes, from the Greeks to the Geeks.


    10 PRINT produces a pattern that the manual calls a maze. Of course, the book does not have to use the word maze. It could call it "the randomly alternating pattern of diagonal lines." Still, while such a description might match the output of the program, it does not capture the magical power of the program to create, out of a simple alternation, a visual pattern recognizable as a maze. The amazing turn of this program is the clever and concise operation by which it produces a maze seemingly by the flip of a coin.

    Mazes have an iconic place in the world of early computers and, of course, a much longer place in cultures around the world. They are heavily charged symbols that appear to call the viewer into entering their pathways either physically or visually.

    This chapter examines the cultural resonances of mazes and the effects that has on the meaning of 10 PRINT....



    Arguably one of the most intriguing characteristics of 10-Print is the maze-like pattern it produces. Or is this output actually a maze? The history of mazes, particularly in Western culture, does not answer that question easily. Nor does the attempt to call this a maze as distinct from a labyrinth, though the latter term seems to be sedimenting with the meaning of elaborate and twisting unicursal passageway.


    Calling this pattern "maze-like" is to present a paradox: it cannot be traversed (though Michael Mateas' program traverses it), it has no ending (though stopping the program terminates the maze drawing), it was not designed as a puzzle (though mazes are not necessarily solvable).

    Nonetheless, calling this program something other than a maze generator, for example, a random-line-pattern generator, quickly drains it of at least a portion of its mystique. Mazes are bewildering puzzles, places of terror, amusements, challenges, organizing structures, and pleasing patterns. So what does it mean for a home computer in the early 1980s to display a maze in the way the 10 PRINT program does? Computers could and did display many other things. What did the maze, specifically, signify and connote? This chapter examines the role the concept of "maze" plays in making this one line program so tantalizing.


    The first part of the chapter will examine the conceptual permutations of the word "maze." From ancient Greece, the legendary labyrinth of Knossos establishes the maze as terrifying and life-threatening space. Even so architectural spaces called labyrinths appeared in descriptions and ruins in Ancient Egypt. The labyrinth found its way into the spiritual centers on the floors of cathedrals. However, mazes have also served as directions for dances. Hedge-row mazes bring the maze into the realm of public shared diversion. In puzzle-books, mazes became an even more common-place diversion, one in which the depiction and the structure were conflated. In psychology the maze becomes the tool of examining behavior. In role-playing games, the maze became the structural frame of the encounters. Finally, and growing out of all of these traditions, in computer games, the maze became one of the central concepts used in the design of levels.

    Consistent throughout these various concepts of maze is a sense of providing a structure (whether navigable with body, pen, or joystick) to organize or constrain a person's encounter with a space (whether by setting them on a track, offering them a puzzle, or merely deciding pathways and dead-ends).

    The second part of the chapter explores the degree to which the program generates mazes and how permutations in the code can affect that status. How does, for instance, changing the thickness of the lines affect a viewer's perception of the maze? How does the single-line of code present itself as a maze for the novice programmer encountering this code in the beginner section of a manual?







    The last considers the kinds of mazes produced by the program.




    What is a Maze?

    One objection to calling the output a maze is the lack of a solution or single correct path through this visual pattern. However, the OED lists two related senses, the first of which requires that there is *exactly* one correct path, the second of which has no such requirement. Consider the following definitions:

    A labyrinth, and related senses.
    • A structure designed as a puzzle, consisting of a complicated network of winding and interconnecting paths or passages, only one of which is the correct route through; a labyrinth; (occas. in pl.) the windings of a labyrinth. Also (as in quot. 1903): a structure comprising two points joined by a single winding line much greater in length than the direct line between the two points.
    • In extended use: a complex network of paths or streets; a bewildering mass of things (material or immaterial), in which the individual components are difficult to separate or make out. In the 16th and 17th centuries often in to tread a maze, perh. with allusion to sense

    There are quotations for the second of these senses from 1531 to 1994, including:

    1542 H. BRINKELOW Lamentacion sig. Cviii, Leadyng them in an endlesse Maze of dyrtye tradicyons and folish ceremonyes.

    So, there is an early occurrence of a maze which presumably (being endless) has no correct path through it ... and furthermore, it is endless.

    The relevant definition from the 1913 Webster's Revised Unabridged Dictionary is:

    • A confusing and baffling network, as of paths or passages; an intricacy; a labyrinth. Quaint mazes on the wanton green." Shakespeare.
    • Or down the tempting maze of Shawford brook. Wordsworth.
    • The ways of Heaven are dark and intricate, Puzzled with mazes, and
    perplexed with error. Addison. Syn. -- Labyrinth; intricacy. See Labyrinth. Again, nothing there requires that the maze have a solution.

    Nothing in these definitions requires mazes to have a solutions.


    In William Henry Mathew's definitive Mazes and Labyrinths, he establishes requirements for mazes. First, he limits himself to "works of artifice" as opposed to "'labyrinths' of nature, such as forests, caverns, and so forth" since those are only metaphorically related. Secondly, he requires "an element of purposefulness in the design" (182). Thirdly, he requires " a certain degree of complexity" (183). Finally he requires "communication" between the component parts and between the "interior and exterior" (183). 10-Print matches this criteria, though at times only to a limited degree. Certainly it is complex and a work of artifice. However, the notion of "purposefulness of design" raises one of the most important differences. 10-Print is not so captivating because of some Daedalus who created the outputs pattern but rather because it has the power the generate mazes without Daedalus.

    Certainly all of the definitions of maze attend the perception of this particular program, but these definitions demonstrate that the output does qualify as a maze. But what if one wanted to insist on the strictest possible view of the constructed puzzle-maze with a single solution, denying that the output of this program is a maze at every moment? Even then, what could the output possibly suggest, what could it evoke in the viewer, if not the concept of the maze? 10 PRINT is a maze-generator, but even if there are some who deny this, they will have to grant that it is a program that is associated with and falls under the shroud of the myths of mazes and labyrinths.


    History of Mazes:

    Scholars of mazes distinguish the labyrinth as unicursal, offering no choices to one traversing it. Hermann Kern has written the book on labyrinths in his Labyrinthe, Erscheinungsformen und Deutungen 5000 Jahre Gegenwart eines Urbilds, later published in English as Through the Labyrinth: Designs and Meaning over 5,000 Years. However, unlike the more general category of mazes, a labyrinth is “almost completely enclosed by an outerline” and their paths “are not intersected by other paths” (23). Nonetheless, the history of labyrinths is an essential part of the overall mythos of the maze.


    When a labyrinth or maze is the visual representation of a dance, it becomes a kind of score or perhaps even a script or program. However, the movements themselves could be said to be the labyrinth enacted in space over time.

    Labyrinths can thus be the boundaries of the space to be navigated or the path that is followed. In the latter sense, the labyrinth may be not just the plan of the path but the path in motion across time. In the case of a solvable maze, the solution path is obfuscated by choice points. The pattern presents not the predetermined path but the challenge toward finding that path. However, once that path is known, the maze becomes changed into the solvable path encompassed by wrong turns. Like the labyrinth, it now has one path to its solution and it can no longer be a maze.

    This has important implications for how the notion is abstracted and how 10 PRINT itself (not its output) becomes a maze and a labyrinth. Typing in the program, the beginning programmer engages in the ritual. At the same time, the program begins as a maze to the initiated. Unless the programmer is already fluent in C64 Basic and has memorized the PETSCII tables, she is unlikely to recognize the effects of the program. Once the code has been typed in and executed and the programmer sees the maze, there is no returning to the previous status of the line. This is similar to the process of becoming literate, but not exactly. Nonetheless, these are not mazes that have single solutions. When the programmer is encouraged to make changes to the code, new corridors appear, and the maze itself proves to be endless.


    Ancient and Mythological Mazes

    Of course, the most famous maze is the Cretan Labyrinth, where Theseus slew the Minotaur, finding his way with the help of Ariadne's string.


    The Cretan Labyrinth in which Theseus encounters the Minotaur offers perhaps the most famous ancient maze, through which the Ancient Greek hero found his way only with the help of Ariadne’s thread. While such necessity suggests that the structure was a maze, having multiple decision points, early depictions of the structure were labyrinthine, in other words, monocursal. Why would anyone, Greek hero or no, need a string to find their way through a labyrinth, a unicursal twisted passageway without deadends or choices? And yet that is exactly the kind of maze depicted in most of the ancient imagery. Regardless of the depictions, the myth portrays a space of twisting paths that is difficult to navigate, and it establishes the challenge of path-finding puzzle in Western culture.

    Plutarch includes in his lives the myth of the labyrinth of Knossos, designed by Daedalus. In the story, in payment for the slaying of his son Angrogeos by the Athenians, Minos required the Athenians send as a tribute to Crete seven men and women who met their fate, whether slain by the Minotaru or "wandering the labyrinth, and finding no possible means of getting out, they miserably ended their lives there" (excerpted in Kern 41). The Minotaur, part man, part bull, was the merciless monster of the maze. Actually, this is merely one of the main competing stories Plutarch recounts.

    Theseus set off to end the bloody tribute, by serving as one of the seven. When he arrives at Crete, he wins the affection of Ariadne, the king's daughter, who offers him a technique for defeating the labyrinth by tying a string to the entrance and unraveling it as he proceeded through the maze. Theseus makes his way through the maze, slays the Minotaur, and follows the string back to the entrance. The victorious Greek hero takes Ariadne back with him to Athens.

    [note: source of the word clue]

    The Cretan maze may have its origins in Egypt, where Herodotus describes a labyrinthine building: [I won’t be using all of this]

    It has twelve covered courts - six in a row facing north, six south - the gates of the one range exactly fronting the gates of the other. Inside, the building is of two stories and contains three thousand rooms, of which half are underground, and the other half directly above them. I was taken through the rooms in the upper storey, so what I shall say of them is from my own observation, but the underground ones I can speak of only from report, because the Egyptians in charge refused to let me see them, as they contain the tombs of the kings who built the labyrinth, and also the tombs of the sacred crocodiles. The upper rooms, on the contrary, I did actually see, and it is hard to believe that they are the work of men; the baffling and intricate passages from room to room and from court to court were an endless wonder to me, as we passed from a courtyard into rooms, from rooms into galleries, from galleries into more rooms and thence into yet more courtyards. The roof of every chamber, courtyard, and gallery is, like the walls, of stone. The walls are covered with carved figures, and each court is exquisitely built of white marble and surrounded by a colonnade.

    Kern doubts whether this was the building at all and suggests that the labyrinth of Knossos alludes to a dance, a topic for later discussion.

    However, the depiction of this myth include a pattern that as Miller notes has been "conventionalized:

    Starting from the exterior, the 'path' runs inwards a short distance, turns so as to run parallel with the other wall until nearly a full circuit has been completed, then doubles back on itself and runs round in the opposite direction, doubles upon itself again, and so on until it finally comes to a stop in a blind end, having traversed all of the space within the outer walls without covering any part twice and without forming any branches or loops. (45).

    Miller notes that this labyrinth is not a "puzzle." Nonetheless, it appears on coins, walls, and other ancient surfaces including some graffiti scratched on a pillar in Pompeii.


    Other Egyptian Labyrinths date back to 3400 BCE and a labyrinth in the tomb of King Perabsen of the Second Dynasty. In her book, Mazes and Labyrinths of the World, Janet Bord examines appearances of maze in other parts of the globe. For example, she mentions the “long barrows, megalyths, camps and henges of Britain and north-west Europe” as signs that these sorts of patterns, labyrinthine or mazelike, were “not in the first instance diffuse outward from an original birthplace, but developed independently in more than one area” (10). The search for the antecedent to the physical mazes perhaps is the wrong path to pursue. The history of mazes should not start with the earliest mention or depiction of mazes but with the formulation of walled architecture or social spaces with intersecting passages… Furthermore cave structures, for example, the paths modeled in Adventure, offer naturally occurring mazes (more on that in a moment)

    (how this ties to our maze) So while the location or shape of this mythical maze becomes a grail quest, the labyrinth becomes the icon of the story of the maze and the two concepts become entangled. Mazes and labyrinths become places of beastial horror, puzzles that require the collusion of paramours. Mazes become elevated into the pantheon of heroic challenges, literally the stuff of legends. Without a doubt, this mythological status has fueled the search for physical mazes and labyrinths from antiquity to the present.

    10 PRINT... hides no minotaur in its center. But the Cretan Labyrinth and the search for the mazes of antiquity present mazes as the challenges of heroes. Mastering that maze requires a clever hero with an enamored helper. 10-Print was part of Ariadne's string and in that maze-like output novice programmers no doubt hear the echo of the minotaur's roar.

    Mazes and Labyrinths, however, are not associated only with their physical structures or two-dimensional forms; They can also be patterns of physical movements. In other words, pathways. Dance executions of mazes have been and continue to be performed as areas, such as Italy, Corfu, Munich, Upper Bavaria. There is the Geranos (Crane) dance performed by Theseus performed on Delos. Another commemorates the killing of Hainuwele (divine maiden) on one of the Molucca Islands.



    Mazes in Dance


    Kern suggests that even the labyrinth of Knossos refers to, not a building, but a dance and the depiction of that dance. For evidence he turns to the Ilias and the shield of Achilles.

    The legend of Theseus also includes a dance. On the way back from their mission, Theseus and the mane celebrate with dance and song on the islands. As Miller includes, "on the island of Delos they performed a peculiar dance called the GEranos, or 'Crane Dane,' in which they went through the motions of threading the Labyrinth, and...this dance was perpetuated by the natives of that island until fairly recently" (19).

    Crane Dance.

    Before viewing 10 PRINT as producing a sort of dance, it's worthwhile to note that there are BASIC programs for the Commodore 64 that are explicitly said to dance, or to produce dancing output. One example is "Michael's Dancing Mouse," a 30-line BASIC program included on page 167 of the Programmer's Reference Guide and which is completely explicated, statement by statement, on the pages that follow. This program "uses three different sprites in a cute animation with sound effects" (PRM p. 166). By considering how this dancing program works, and how exactly it can be said to dance, we will be able to see in what ways 10 PRINT produces dancing output.

    One significant difference between "Michael's Dancing Mouse" and 10 PRINT is the longer program's use of sprites. Sprites are graphical facilities provided by the VIC-II chip. They allow a rectangular image to be drawn on the screen, in any graphics mode, based on a range of values in memory. They are easy to move around and can be drawn over a background image without upsetting the underlying image - when a sprite is moved, whatever was "underneath" it is drawn once again. If elements of the screen that are larger than a textual character but still relatively small (for instance, a human or a ship or other vehicle) needs to be moved about, sprites provide the obvious means to accomplish this. The sprite is a sort of object, and is sometimes called a "character," although it is not part of the typographical system of numbers, letters, punctuation marks, and character graphics that is the basis for 10 PRINT's output. The VIC-II offers eight sprites that are 24 pixels high and 21 pixels wide and are represented in 63 bytes. Near the end of "Michael's Dancing Mouse" are 10 lines of DATA statements that contain a total of 189 numbers: These define the three sprites that represent the mouse in three frames of animation.

    What makes the mouse in this program dance? The mouse in this program may be dancing because it has recently escaped from a maze. Even if that is the case, John Watson's scientific technique of systematically disabling rodents can be applied (more humanely) to this simulated creature and to this program. By making the program simpler and simpler, by making it do fewer and fewer things, and then judging the result, it is possible to see which of its effects are essential to producing a dance and which are not. So, changing the assertion "I AM THE DANCING MOUSE!" to the question "AM I DANCING?", the process of simplifying the program begins.

    First to go are the sound effects. Removing lines 70 and 75 (and, optionally, lines 200 and 300, which will no longer be used) means that the two different notes are no longer produced. The mouse dances on in silence.

    The next thing that can be dropped is a frame of the animation. In line 85, the test "P>194" can be changed to "P>193" so that the value of P becomes 192, 193, 192, 193, and so on. Although the mouse's motion is less elaborate, the creature still appears to dance.

    However, if another frame is removed (for instance, by changing the condition to "P>192") the mouse no longer seems to dance, even though it glides to the right. A static image being translated across the screen does not constitute dancing. This suggests a different way to simplify the program: remove the left-to-right motion of the mouse. This can be done by modifying line 65 so that instead of putting a changing horizontal coordinate into the appropriate memory location, the same value is always stored there. "65 POKE V, 50 : POKE V + 16, 0" will do the trick. Now two different sprites are displayed alternately at the same point on the screen. The mouse stays in one place and is animated by only two frames, but still appears to dance.

    One final modification: The mouse dances very regularly at this point. What if the mouse changes its posture at random instead? Changing line 85 to read:

    85 P=P+1 : IF P >= 194 THEN P=192

    Is one way to accomplish this. Perhaps surprisingly, given the rhythmic associations we have with dance, the irregularity of movement that results makes the mouse seem to be more alive and makes the motion seem more like dance, or at least more like an interesting dance, than when the mouse was moving in an unnatural lockstep.

    It's possible to take this experiment further by changing the sprite data itself, but two things are made clear by what has been done so far. First, two different images replacing one another at the same point on the screen are sufficient to produce the effect of a dance. And further, if the motion is irregular, the suggestion of dance is not erased and may even be enhanced. Since the reduced version of "Michael's Dancing Mouse" can do this with the "characters" of two sprites, there is at least the strong suggestion that another program can do it using the "\" and "/" character graphics, having them replace one another irregularly at the same point on the screen.

    Before meandering through reading code as choreography and watching its impact on how we can interpret 10PRINT, specifically, in that manner, let’s briefly cast an eye on the creative dimension of computer-enhanced choreography, for there must be no doubt about the importance of the effect of computer programming and applications on the creation of dance. Life Forms Dance Software, a product of Credo Software, was the preëminent application for animating and simulating a choreographic vision since the late 1980s. Not only was it one of the first, but it was soon put to impressive use and effect by Merce Cunningham in Trackers (1989). This software enhanced choreography as imaginative work as well as choreography as a bodily practice moving through space in myriad combinations of movement.

    The history of computer-enhanced performance is amply recorded. Computer applications have afforded choreographers over the last thirty years the means of re-writing traditional ballet’s basic bodily grammar and syntax. Merce Cunningham and William Forsythe, most notably, have, as Cunningham’s collaborators, Kaiser and Eshkar, have written about him, “a lifelong interest” in figuring out “all that the body on two legs can do.” Forsythe, in the late 1980s, that is before introducing the digital into his work, was already interested in exploring what the dancing body could do when it was de-centered, that is when the center of the body-in-dance was no longer the center of gravity of classical ballet or the bodily center of dancers. Computers inevitably broadened the scope of these choreographers’ abilities to find new shapes and sequences and challenged dancers to create new movements and new vocabularies. Merce Cunnigham’s BIPED (first performed at UC Berkeley in 1999 and six months later to great acclaim in New York City), created using Kaiser and Eshkar’s eponymous biped software, resonates as a major achievement and turning point for what interests us here: the choreographic output of software. In BIPED animations, derived from motion-capture data and projected on stage, “danced” with Cunningham’s dancers, whose pathways and movements through the stage-space were also created with the help of that software. Ironically, now, computers could be programmed to help explode gravity-defying boundaries that human body could still strive to capture and move through, if not immediately or always or, in many cases, yet ever. Not only Forsythe’s and Cunningham’s dancers, but also professional dancers everywhere, would now accomplish unexpected, aesthetically captivating revelations.

    Reading 10PRINT as choreography may seem far-fetched, but that is the realm into which, as we now see, computers invite us. If bodies can move in defiance of gravity, first on the screen and sometimes in reality on stage, let us consider the output of 10PRINT.

    The intertwining of dance and labyrinth, of bodies moving in mazes, taking steps, making steps, are not new. Dance moved from being a sacred, ceremonial, ritual practice to becoming the secular performance we know it as today in the West. Dancers weave their steps and movements in space and through time; and in so doing they create an invisible fabric in and of space. Think of the labyrinth as a sort of mental canvas, the choreographer’s oeuvre played out on the dance floor through sequences of dancers’ steps, but also the choreographer’s multi-dimensional vision invoked, interpreted, performed by bodies in motion through space. The canvas takes shape in a topologically complex world, but one that dancers on stage, “in performance,” run through from beginning to end as though moving through a uni-cursal, fully plotted path. The labyrinth becomes multi-cursal for dancers when the plot thickens with improvisation, which often takes place during rehearsal, or, precisely, in improvisational dance.

    In the case of 10PRINT, simplicity affords us a clear and straightforward example instance of reading code as choreography. First of all the line 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 reads as code, not plain English and not graphic. It can be said to read as notation, thought not, for sure, in the classic Labanotation/kinetography or Benesh method of notation (from the late 1940s). Notation in the world of dance is used both as instruction and memory, as blueprint and as record.

    To think of the 10 PRINT line of code as a line of choreography affords us the opportunity to underscore some of its characteristics. It suggests that computer code, written to be interpreted by computers, may be interpreted by other means – namely, in this instance, by human beings, with unexpected, choreographic intentions and/or results. As a matter of fact, it may appear coincidental, but it is utterly convenient, to recognize in the 10PRINT line of code instructions for two feet in motion. Each foot can easily be seen in the Commodore64’s “back” and “forward” graphic slashes. The performance of these feet on the screen are the computer’s interpretation of the code, but this is code that an aerobically healthy dancer could and might well perform as well on stage – and not just because the two feet make it conveniently human.

    This line of code captures other choreographic concerns. As a loop, it denotes choreographic repetition; its “loopiness,” like its bi-pedal characteristic, emerges in the work of many choreographers. The work of Pina Bausch, for example, amply demonstrates the innocence and tameness of a simple motion or step, as against the power and the violence that same motion acquires when repeated and repeated and repeated in numbers that acquire momentum before one’s very eyes. The effects in Bausch’s work, captured first visually, spill over into the audience’s full-bodied experience of physical pain and sensory re-adjustment. 10PRINT uses only two “steps” to mesmerize the viewer. The incessant hopping around on two feet that 10PRINT choreographs would not but affect audiences similarly. Repetition, in Bausch’s work, typically starts as sort of boringly mesmerizing but may be experienced, in the end, painfully boring, assaulting, and even traumatizing. Quite a bit can be learned here, not least how the human body in motion affords audiences new imaginaries and the intertwining of old histories with new and novel creative futures. The 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 line encodes a loop that the kernel and computer iterate and re-iterate as motion-on-the-screen. The on-going cascade is linearly printed, acknowledging the movement-in-time effect that all dances also perform. Because 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 defines a repetitive loop, read as choreography it can be translated to last the length of a full stage-performance. As choreographers, we might further pause to reflect on the pseudo-random output of the 10PRINT line. The pseudo-randomness of the code affords an aesthetic magic and surprise that similarly enhances the audience member’s experience of its choreographic output.

    For a dancer, 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 provides a uni-cursal path, that is a set, sequenced, step-by-step blueprint of the dancer’s footfalls. Indeed, a dancer dancing moves through any choreographed piece as through an invisible, uni-cursal labyrinth. The more improvisational the dance, the more multi-cursal the progression through space, replete with dead-ends and recursions. In classical ballet, no less than in classical music, the audience can expect certain movements, transitions, cadences, and codas. A knowledgeable dance audience member will draw a mental picture of the dancer’s circuit through the walls that circumscribe spaces, just as a Marcel Marceau described them more explicitly for his audiences. It is Marceau who educated the novice dance viewer to see the labyrinth’s walls and alleyways, windows and doorways, and movement boundaries and choices in an imaginary, multi-cursal world. All by simplifying and breaking down the meaningfulness of movement.

    Once a dancer captures 10 PRINT CHR$(205.5+RND(1)); : GOTO 10’s step-by-step agenda, the line dictates little else. Absence of other bodily instruction, or direction means it offers dancers the freedom to improvise all but the footfall movements; a dancer’s upper-body improvisation will necessarily define a more multi-cursal world that topological geometry might reflect more accurately than dance notation or a single line of code in BASIC. Knowledgeable dance audience members, then, like jazz aficionados, will recognize improvisation for what it is: a multi-cursal exploration of existing, historical, and innovative patterns in grammar and syntax of the dance idiom. Having accepted and made nearly second-nature the step-by-step strictures and structure of 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 as choreography, the dancer has earned the freedom of a flâneur to perform pseudo-randomnly (or improvise) the rest of the dance.

    To complete a choreographic reading of 10 PRINT CHR$(205.5+RND(1)); : GOTO 10, one could take each token and read it choreographically, detailing in each instance what a choreographic rendering of the line might need or want to allow for as well as what the detailed choreographic reading affords choreographers and dancers.

    The computer interprets the 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 line of BASIC and dancer(s) will perform the choreography it offers them. Once rendered or performed, both the code or choreography and their respective performances are game for critics to assess their value, their quality, and their failures. Much as 10PRINT’s screen output is a visual image we choose to see as a maze, a labyrinth, a woven fabric, or whatever else, we can choose to read 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 as choreography and decide what it reveals to us artistically, aesthetically, physically, and philosophically.


    Mazes in Religion

    Mazes also have a tendency to turn up in Christian houses of worship, specifically in Italy and France. The earliest labyrinth shows up in the Basilica of Saint Reparata (Algiers) in 324 CE and they continue to be included through today.

    These mazes tended to be labyrinths, meant to be walked or crawled on the path to penance. They did not contain dead ends or choice points, until the 15th century, when the aberration appeared as Helmut Birkhan explains, as a "symptom of the secularization of the labyrinth idea" (quoted in Kern 146). The entrances of these labyrinths tended to face the western wall of the church on which scenes of The Last Judgment would be depicted. Thus, these walkable pathways become linked with the idea of the path to Christian salvation.

    Labyrinth of Sin The Path to Redemption Easter Dance Images of a Worldview The Path to Jerusalem Maison Dedalus.

    Arguably the most famous and largest (approx. 12.3 m) church labyrinth appears in Chartres, and its dimensions have a curious relationship to its symbology. (Kern 153)

    Note: Maze as path to be followed as haptic prayer ritual, as allegorical path.

    • Note Kern's section on Easter Dance



    Hedgerow Mazes

    The oldest of the "Turf mazes" or "turf labyrinths" that appeared in England about the beginning of the eighteenth-century and develop into a ever-evolving part of the maze landscape.

    Scholars tangle over whether the turf mazes are modeled after the Church ones or vice versa. In Mazes and Labyrinths of the World, Janet Bord writes, "there is reason to believe that there were mazes in stone and turf long before the mediaeval church builders began incorporating them in their designs" (13). Among other pieces of evidence, she mentions the mazes near ancient sites: St. Catherine's Hill, Winchester, Breamore maze near Celtic fields and the maze at Wing in Rutland (13). On the other hand, Kern points to the striking similiarities between the turf mazes and the church pattern, particularly that of Chartres.

    Kern traces their history: "It is likely that strains of various traditions converged in turf labyrinths. The original pagan constructions were probably linked to Scandinavian Troy towns and spring rites. Beginning in the 13th century, the design was subjected to a Christian interpretation and installed in churches. During the Reformation, the earlier pagan meanings surfaced once again, soon thereafter to be channeled into harmless popular festivals, and eventually lost." (168)


    Shakespeare's the Temptest:

    "This is as strange a maze as e'er men trod" (3.3.1)

    Midsummer Night's Dream:

    The nine men's morris is fill'd up with mud, And the quaint mazes in the wanton green For lack of tread are undistinguishable. (2.1.98-100)

    These turf mazes find stone parallels in Troy towns, "labyrinthine stone patterns arranged on open fields, many of which are found in Sweden, Finland, Artic Russia, and Germany" (Kern 167).

    In spite of their connections to church mazes, the "turf maze" has much stronger pagan roots, likely parts of Spring rites.

    Louis XIV's hedge maze featured 39 fountains and "cost the equivalent of more than three million dollars to build" (Pickover 16).

    Sir Christopher Wren's hedge maze in Hampton Court.

    "Mizmaze" is the name for these popular in the south of England.

    Uses of mazes: Treading of The Shepherd's Ring or "Sheperhd's Race" at Boughton Green, in Northamptnshire, "Was a popular event in the thre-day fiar held every June" (49).


    Larger notions: Physical maze for use for public diversion, entertainment

    • "Running" a maze -- future links to video games

    Mazes for defense protection

    Maze as something that is planned, yet grown


    Mazes in Puzzlebooks

    The oldest depiction of a maze, which is also a maze, dates back to 1200 B.C., according to Kern. However, the phenomena of maze puzzle-books is considerably more contemporary.

    Giovanni Fontana has been given the status as the father of the multicursal maze, back at "the dawn of humanism, about 1420" (Kern 136). "Fontana describes three ancient labyrinth structures; he made his design like that of Daedalus" (138). The earliest of his inscriptions (p. 138) was found in Venice and dates back to 1420. (Kern 138). 600 years ago.

    Puzzle-book mazes as we know them today...

    (Jeremy is going to chime in here, still)


    Mazes in Mathematics

    The problem of solvability in mazes has become part of the purview of mathematics, particularly in the area of "critical path analysis" (CPA).


    Mazes in Mass Media

    According to Clifford Pickover, the first major maze movie was aptly called The Maze, a 1953 horror film directed by William Cameron Menzies. The maze in the film was the hedgerow kind, like the snowed-under maze of The Shining. Pickover adds Labyrinth and The Man in the Maze to his list movie mazes.

    In the 1980s around the time of these early video games, a made-for-TV movie, Mazes and Monsters, presented a young Tom Hanks as a young man who had gone over the edge into a psychosis where he could no longer separate his role-playing game from reality. Such a movie spoke to both the moral panic around the rpg Dungeons and Dragons and the relationship between that game and the maze motif.

    In these examples, the maze becomes a metaphor of horror and confusion. It is the site for getting lost as opposed to a contrived riddle to be solved.


    RPGs

    Dungeons and Dragon as the prototypical second-person tabletop RPG game. (Will dig up some old DM manuals and D&D modules, to see what's in there about mazes.)

    Game Books

    While Choose Your Own Adventure books are not strictly mazes, the emulate the labyrinthine aspect of mazes, of facing crossroads with multiple paths. (Question: does any CYOA book actually have a maze in it? Maybe one of the Zork ones?)

    A notable book that literalizes the maze-like aspect of CYOA books is the 1985 appropriately named Maze, by Christopher Manson (published by MacMillan in 1985) (online version)


    Mazes in psychology

    The maze also has cultural resonance because of its role in behavioral research. Mazes have been used as laboratory environments for rats and mice, and as means of testing these rodents. The depiction of mazes in certain cultural productions reflects this aspect of the maze. For instance, images of rats in a maze are prominent in Alex Proyas' 1998 film Dark City. Dr. Schreber, a captive human who works with his alien captors, is shown looking down on a rat in a large, intricate maze; the rat and the maze connect figuratively to the people in the film and the titular city, which is constructed for the purpose of an experiment. In Daniel Keyes' novel Flowers for Algernon (1966; first published as a short story in 1959), a white mouse with augmented intelligence demonstrates his abilities by traversing a maze. Algernon parallels the novel's protagonist, Charlie, in many ways: The success of the intelligence-enhancing procedure performed on him leads to its being done to Charlie. This sort of maze has been important to mention in less mainstream literary practices, too. The co-founder of the influential French group Oulipo, Raymond Queneau, famously described the members of this group, who set writing constraints for themselves, as "rats who build the labyrinth from which they plan to escape."

    Editorial cartoons and cartoons in The New Yorker [e.g., New Yorker cartoon: July 3, 2006] depict mazes of all sorts, but make particularly frequent and interesting use of the psychologist's maze. Cartoons sometimes employ rats as characters and sometimes substitute people for amusing effect. The rat's maze is also a staple in advertising. A 2006 TV commercial for the Game Boy Micro, for instance, shows a rat traversing a maze and finding one as its reward. Besides these abundant fictional depictions of research mazes, pet owners and students have also put dozens of videos of rats and mice running mazes up on YouTube. Even though this experimental use of mazes is specialized and recent - not much more than a century old - it clearly became and remains a part of the popular consciousness.

    Intriguingly, the first maze constructed for rats by researchers, which was built in the late 1890s, was not for testing the creatures. Willard Small of Clark University built a maze environment for rats to eat and exercise in when they weren't taking part in experiments. Small wanted the environment to simulate the burrows that rats inhabited in nature. But rather than look at the specifics of how these burrows are laid out, he modeled the first laboratory rat maze "after the Hampton Court Palace maze, a trapezoidal hedge maze that dates in its present form to 1690 but was probably built in the early sixteenth century by the first owner of the palace, Cardinal Thomas Wolsey" (Lemov 2005, p. 25). The maze was first given to rats so that they could relax - for restorative purposes quite consonant with the purposes for which the Hampton Court Palace maze was built. It made for an unusual continuity in the history of the maze, with the researchers treating the rats like aristocrats.

    This thread would be broken when John B. Watson took up the maze and used it, initially in his dissertation research, to determine whether rats could make their way through it under different conditions. Watson, who became the youngest person to earn a Ph.D. from the University of Chicago in 1903, continued his work by systematically blinding rats and maiming them in other ways to deprive them of different senses after they had learned their way through a maze. His work attracted public attention, and he was denounced in a New York Times editorial as a torturer. Watson, however, was sure of his behavioral science agenda and that the same principles that applied to rats applied to people. By 1916 he had moved on to experiments with infants. While he didn't mutilate them, in a 1920 experiment that became famous he did condition one, "Little Albert," to fear a furry white rat and furry white things in general.

    The use of mazes in experiments with rats increased greatly during the 1920s. We now associate behaviorism, the perspective that all animal and human actions are behaviors, mainly with another American scientist, B. F. Skinner. Skinner's operant conditioning chamber, also known as the Skinner box, is another famous environment for laboratory animals that was built decades after Watson's mazes. While Skinner's name is better known today, Watson's maze remains emblematic - and similar environments remain in use today.

    In 1959, one of the earliest computer programs written for fun - an example of "recreational computing" - depicted an experimenter's maze. The program, which is possibly the first computer program to draw a maze of any sort, was written for the TX-0 at MIT by Douglas T. Ross and John E. Ward. The TX-0 was an experimental computer built at MIT's Lincoln Laboratories along the way to the construction of the TX-1. The earlier computer was a transistorized version of Project Whirlwind and, when loaned to the Research Laboratory for Electronics in 1958, provided one of the first opportunities for people to program when not working on an official project. It also allowed programmers to work on the machine interactively, much as Commodore 64 programmers later would, rather than submitting batch jobs in the form of decks of punched cards. In the program that became known as "Mouse in the Maze," a mouse would move through a maze, eating cheese. The mouse could also consume martinis, which would cause it to become disoriented. Here, the environment implemented was not the hedge maze of diversion and fun, but a research maze which was then made playful by the implementation of an amusing reward for the mouse and appropriate behavior.

    The rather thin default light-blue diagonal lines produced by 10 PRINT are likely to appear, against the default dark blue background, to be much more like white laboratory maze partitions than like hedges. In that case, the structure that is being represented may be more easily imagined as the maze of behavioral experiments and than the diversionary hedge maze. The regular arrangement of the "walls" in a grid is also more akin to the arrangement of the stereotypical laboratory maze. The output of the program may suggest a puzzle-book maze even more strongly, but if it leads the viewer to think of a structure of some sort, the rat-sized researcher's maze may be the one most likely to come to mind. It wouldn't be outrageous, given that a famous early computer maze - possibly the first - was explicitly based on such a structure.

    If some of those who look at this Commodore 64 maze do think of the experimenter's maze, they are sure to make some different further associations. Instead of suggesting that the computer is creating structures or drawings for pure amusement, the idea of the laboratory maze offers something more serious and scientific. It also brings in the idea of the experimenter - at least indifferent to the struggles of the creatures lost in the maze and perhaps cruelly impairing those creatures - and the subject of the experiment, trapped in a bewildering structure created by powers and for purposes beyond comprehension. When 10 PRINT runs, it relentlessly provides a maze, but it does not seem to be trapping us in this maze in any straightforward way. Instead, given the top-down view and the lack of a user-controlled maze walker, the computer may be offering to collaborate with the user in experimenting on virtual rats. This would be a different suggestion than the cinematic, literary, and cartoon representation of behavioral science mazes that encourage people to identify with the rat or mouse. Whoever the rat may be, and whoever the scientist may be, any computer program that evokes the researcher's maze at least hints that the computer is a scientific instrument and that the recent history of science has some darker corners.


    Mazes in Computers

    Introduction

    The phenomenon of mazes as a staple of computer culture is not distinct from the other cultural and historical instances of mazes. As the earlier sections of this chapter make clear, mazes have been a significant part of human culture for millennia. With the arrival of the computer in the sixties, and graphical displays in the seventies, however, the maze entered what might be thought of as a renaissance. There are two important developments in this period to consider: (1) the ability to easily generate complete maze-like structures on a screen or, with older computers, printed output; and (2) the appearance of procedural mazes, that is mazes traversed not through physically walking through space nor through tracing a pencil on a page, but through navigating ergodic, interactive text.

    Screen Mazes

    One is tempted to pin the advent of maze craze to the release of Pac-Man in the U.S. in October 1980, followed by Ms. Pac-Man in 1981, and the popular (though problematic) subsequent ports of those games to the Atari VCS in early 1982 (Pac-Man) and late 1982 (Ms. Pac-Man). Pac-Man appeared on the Commodore 64 itself in 1983. Early descriptions of Pac-Man often described the playing field of the game as a "maze." For example, in 1981, the New York Times characterized Pac-Man as "a circle with a big mouth that eats up dots in a maze while other big mouths try to eat it up" (Latham 1981), while Newsweek mentioned the "maddening Pac-Man maze" the same year (Langway 1981).

    But even before they hit the mainstream in Pac-Man, mazes were a staple of computer culture, and on-screen maze-like structures abound [1] in the early days of video arcades and home computers.

    Procedural Mazes

    Procedural mazes are mazes in which the entire structure of the maze does not coherently exist in physical or visual space. The maze resides in code. Or rather, the potential of the maze resides in code. Only a portion of the maze is ever available to be traversed at any given time; the rest remains to be generated by algorithms. There are two types of procedural mazes found in the seventies and eighties: textual and visual.

    Textual Procedural Mazes

    While visual mazes might seem to be more "maze-like," in fact, the early procedural mazes were most often textual. Most significantly, mazes were a central feature of early text-based adventure games, now known as interactive fiction. Mazes in these games were not symmetrical spaces to navigate so much as puzzles to solve, non-Euclidean space represented textually. The genre began with the groundbreaking Will Crowther's Adventure, written for the PDP-10 mainframe in 1977 and expanded by Don Woods into a full-fledged underground adventure. Basing the game in part on his own caving experience in the Mammoth Cave system, Crowther included in Adventure a ten-room "MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE." Woods would go on to add a second maze, this time "TWISTY LITTLE PASSAGES, ALL DIFFERENT" (Jerz 2007, 23).

    One important consequence of textual procedural mazes is that the players solving them often generated secondary, visual mazes, often sharing them via BBSes or home computer user groups. Maze begets maze. For example, Jason Scott's TEXTFILES archive of text files found on BBS, FTP, and Gopher servers in the eighties, holds several early ASCII maps created by players of Adventure, such as this map of the twisty little passages all alike:

    Note: This maze is the same for both Adventure 350 and 550
    
                    _________     ______________
                   |         |___|              |
                   |         W___W              |
     ______________|         |   |_____ E  _____|
    |   ___________S         |         |  |                   ___
    |  |           |         |    _____|W |_____        _____|N  |____
    |  |           |         |___|              |      |              |
    |  |           |         U___D              |______|              |
    |  |           |         |   |              E______S              |
    |  |           |E  ______|   |_____ S  _____|      |______ E  ____|
    |W |______     |  |           _____|W |_____              |  |
    |         |    |  |__________|              |___       ___|S |____
    |         |    |_____________E              D   |     |           |
    |         |                  |               ___|     |          W|_____
    |         |__________________|              |         |E  ___________   |
    |         N__________________U              |      ___|  |___    ____|E |___
    |__ S  ___|                  | N ___________|  ___|    N     |__|           |__
       |  |                      |  |             |___S,E        W__S     (EXIT)U__
       |__|                   ___|W |____             |          |  |           |
                             |           |            |___U,D ___|  |____ W  ___|
                          ___|           |                |  |           |  |
                         |___D           |             ___|  |___    ____|  |___
                             |___ E  ____|            |    U,D   |  |     N     |
                                 |  |                 |__________|  |           |
                                 |  |              ___           ___|           |
                              ___|W |_____     ___| W |___      |___W           |
                          ___|            |   |           |         |___S,E ____|
                         |___S BRINK OF   |___|           |             |__|
                             |   PIT      N___S          E|________________
                             |D  ______ E |   |__________________ W        |
                             |  |      |  |______________________|         |
                             |  |      |_________________________ N        |
                        _____|~~|____                            |___ NW __|
                       |             |                               |  |
                       | BIRD CHAMBER|                            ___|  |__
                  _____|             |___                        |   BACK  |
                 W_______________________E                       |PIRATEDEN| 
    
    Downloaded From P-80 Systems 304-744-2253
    

    Adventure was enormously influential upon a generation of programmers and videogame players, but most immediately, the text adventure game inspired the even better known Zork. Zork too included a troublesome maze, its complexities most evident when fully mapped, as in this ASCII map:

    NOTE:  This maze is formatted for 80-columns!
    
    ZORK I - Maze Map 
    
         ______________________________________
        |v __________________________________ <|
        |v|  ______________________________  |^|
        |v| |v __________________________ <| |^|
        |v| |v|   ____________     _____ |^| |^|  
        |v| |v|  | #1         |___|TROLL||^| |^|   
        |v| |v|  |            E___W ROOM||^| |^|  
        |v| |v|  |W ________ S|   |_____||^| |^|  
        |v| |v|__|v|__    __|v|__        |^| |^|   
        |v| |__/  N   |__|   S   |       |^| |^|  
        |v|    |  #3  /__D    #2 |   ____|^|_|^|__________________
        |v|    |_ W __|  |__ E __|  |> __|^|_|^|________________ v|    ________ 
        |v|    __|v|________|v|__   |^|  |^| |^|                |v|   |        |
     ___|v|___|   N  #4      W   |__|^|  |^| |^|        ______  |v|   | THIEF  |
    |> _|v|___|_____ U __________|____|  |^| |^|   ____|  #10 |_|v|   |  DEN   |
    |^| |v|    _____|v|_____   ___       |^| |^|  |v __E      U___|   |     #18|
    |^| |v|   |#5    N      | | #6|  ____|_|_|D|__|E|  |__ W _|       |__ D ___|
    |^| |v|   |SKELETON ROOM|_|   |_|     #9        |__   |v|   _____    |^|
    |^| |v|   |            SW_    U_N&W             /< |  |v|  | #11 | __|U|___
    |^|_|~|__ |_______MarkSample___| |_ E| |________ S ____||^|  |v|  |     ||        |
    |__D  #8 |________|^|___    |v|      |^| | |     |^|  |v|  |_NE _||CYCLOPS |
       |    SW_____SW  D #7 | __|W|______|^| |E|_____|_|__|v|    |v|  |    #17 |
       |NE_NW|     |        ||     #12   D_| |   #16      S_|    |v|  |_NW ____|
       |v| |v|     |E __ U _||E __ U __ S|   |_ D ______W |   ___|_|   _|^|_
     __|v| |v|     |v|  |v|  |^|  |v|__|v|_____|^|___|_||^|__| #14 |__|  SE |
    |  SW| |v|     |v|  |v|  |^|  |____|v|_____|^|______|^|__S     W _ W #13|
    |GRAT| |v|     |v|  |v|__|^|_______|v|_____|^|___|^||^|  |______| |_ S _|
    |#15 | |v|     |v|__|____|_|_______|_|_____|^|_____||^|      |v|    |^|
    |__ U| |v|     |_____________________________| |____|^|      |v|    |^|
       |v| |v|_______________|_|_______|_|______________|^|      |v|    |^|
     __|~| |______________________________________________|      |v|    |^|
    |OUT |                   |^|       |v|_______________________|_|____|^|
    |SIDE|                   |^|       |__________________________________|
    |____|                   |^|_________________________________|v|
                             |_____________________________________|
                                                           
    LEGEND:  v's, ^'s, >'s and <'s are aids in following some of the paths.
             ~'s and /'s denote one-way entrances. 
    
    NOTE: Hidden passages are not noted on this map. Want to leave some
          element of surprise to the game!
    
    Downloaded From P-80 Systems 304-744-2253
    

    Both of these maps utilize the standard ASCII character set---especially underscores and pipes---to "draw" the maze, and in this way they seem to be precursors to the 10 Print maze, which appears to use slashes and backslashes for its wall. Though this comparison is not strictly true, as the Commodore 64 maze relies on non-standard graphical characters that only resemble typographical characters, a topic that will be covered later in this volume.

    The use of ASCII to make these maps was necessary, since text files were more easily shared across platforms via BBSes than graphical files, as the graphical formats that are standard today were not yet prevalent. The Graphics Interchange Format (GIF), for example, was only introduced in 1987, by the online service provider CompuServe.

    Of course, the restriction to ASCII did not apply when maze maps were shared via other means, such as mimeographs of hand-drawn maps, or this detailed map apparently drawn by a gamer named Steven Jones, which was originally published in DEC Professional in November 1982:

    Steven_Roy_Zork_Map_for_DEC_Professional.jpg
    2535 × 1616 pixels

    Visual Procedural Mazes

    The 10 Print program that is the focus of this book should be considered a visual, procedural maze, an on-screen maze generated by an algorithm. From its very beginnings, the pattern generated by 10 Print was called a maze. Consider the earliest known iteration of the program, found in the Commodore 64 User’s Guide that was included with every C64 computer (1982). The Advanced Basic chapter offers "an introduction to designing graphics" and provides a "neat little program" that uses the RND function--the random number generator--to draw on the screen:

    10 PRINT "{CLR/HOME}"
    20 PRINT CHR$(205.5 + RND(1));
    40 GOTO 20
    

    The program is three lines long; little indeed, but not as small as the program that would later inspire this book. In the course of parsing the three lines, the manual explains that the graphic characters on the right side of the M and N keys "are the two characters that the program is using for the maze" (53). And there it is, the first instance of this pattern generated by the random alternation of two slashes being called a "maze."

    Two years later the pattern was once again described as a maze in the Commodore 64 hobbyist magazine Run. A section of Run called "Magic" featured C64 tricks mailed in by users, and in the July 1984 issue, the editor Louis F. Sander announced an

    Amazing one liner--Here is one of the best one-liners I’ve ever seen. It works on the VIC and C-64, drawing a continuous maze that is very interesting. (13)

    The one-liner was submitted by Dan A. Krueger from Cary, Illinois, and it looked like this:

    8 PRINT CHR$(205.5+RND(8));:GOTO 8
    

    The program is slightly different in form than the three-liner found in the Commodore 64 User’s Guide--a fact that is addressed elsewhere in this book--but the pattern itself should be familiar by now.

    Twice, then, in the span of two years this design was described in print as a maze. Why? Why describe the output as a maze and not the more general terms design or pattern? The reason likely depends upon the position that mazes held in computer culture in the 1970s and 1980s. Quite simply, this was the era of the maze craze.

    This chapter argues that the use of the word "maze" to describe what by many definitions is not a maze is rooted in the cultural history of the word in the 1970s and early 1980s, when "maze" conjured up specific images that resonated with home computer users.

    It would simply be impossible to use the word "maze" within the semiotic domain of computers and not create some association with these games. Therefore, there's some cultural capital at work whenever 10 Print's design was called a maze in the early eighties. It is reasonable to conclude that the various sources from the early eighties that called the 10 Print design a "maze" were explicitly (though perhaps not consciously) tapping into a cultural history of mazes that home programmers and game players would be aware of.

    Finally, though there’s no evidence to prove this, one wonders whether the program would have the program have had the same viral-like persistence if its description had made no mention of mazes?



    Computer Generated Mazes

    Pickover also includes a section on "the largest computer-generated maze in the world," a title which seems quaint by today's standards. Although he notes the program could generate an 1000-page maze, he cites the largest one she had printed to date as a 200-page maze. However, he gives the title to the 1987 maze produced by Walter Pullen. This 23-foot maze had to be stored on "eight floppy disks" and "require one megabyte of disk space" (7). Pickover later adds an followup note from Pullen about a maze he had generated with "@2 miles of passages" that "stretched over 3031 pages" (8).

    Needless to say, this quest for the largest computer-generated maze will always be chasing 10 PRINT, whose never ending corridors can be drawn merely by executing and repeating that line. These other mazes, such as Pullen's, are single-solution mazes. However, Moore's law no doubt affects maze production at about the same rate that 1 megabyte diminishes as a sign of large memory and the number of pages in a maze print out approaches absurdity.



    Variations on a Maze: 10 Print as CHR calls

    This section examines a set of simple variations in the 10 Print one-liner, each drawing on different graphic characters from the PETSCII table. Although each change is small, every variation has a significant impact on the perceived maze-like qualities of the visual output. The output of 10 Print has a unique visual appeal, which we can understand in terms of design and composition (diagonal vs orthogonal), and in terms of how it plays against the contextual expectations of the historical period when it emerged (graphical software -- particularly video games of the era).

    When we attempt to change even the smallest element of 10 Print, we make an interesting discovery -- 10 Print is a kind of optimal solution that is uniquely elegant in its design space (a c64 BASIC one-line maze generator). Any similar attempt is both less concise (requires more code) and less expressive (resembles a maze less). In fact, the concision of the code and the expressiveness of the image are tightly related, and arise out of a unique set of constraints and interactions:

    • the keyboard layout of the PET / C64
    • the sequence of adjacent characters in the PETSCII table
    • graphic design and topology
    • a design goal to make the one-liner short and simple

    Because the original program is a concise randomized offset to a region of the PETCSII character table, our variations are limited to other such lookups. The code is limited by the characters available in PETSCII, and the concision or elegance of the code is affected by the adjacency of characters, which must otherwise be randomized in a more complex way than an offset.

    Keyboard and Character Map, Hardware and Software

    PET_Keyboard.png
    800 × 267 pixels
    The PET 2001 chicklet keyboard, with the visually complementary arrangement of graphic characters on the keys.

    As we will see when exploring visual alternatives below, the PETSCII CHR table contains few related graphical characters the are next to each other and can be easily addressed by offsets -- in fact, many related images (sets of corners, mirror images) appear to have been randomly scattered through the space. This lack of adjacency complicates our ability to generate graphics using a simple offset -- in fact, to use anything but an offset of one, we have to cast the random number generator's float result to an int before multiplying.

    C64_PETSCII_chart.png
    380 × 270 pixels
    Chart of unshifted PETSCII characters displaying on a Commodore 64

    Why is the order of graphical characters in the PETSCII table so haphazard? The answer is that arrangement was dictated, not by logically grouping index numbers (a program-up strategy), but by arranging them visually on the PET keyboard design (a hardware-down strategy). Because the PET 2001 keyboard was a chicklet variant of the QWERTY arrangement, yet lacking the row offsets that QWERTY designer Christopher Sholes originally created for mechanical typewriter levers, its grid of keys presented a clear canvas for logical groupings of related symbols. Thus we can see four corners of a square grouped on OPL:, four arcs of a circle on UIJK, and four suits of a card deck on ASZX.

    This visual logical grouping, however, occurs in the space of the QWERTY keyboard arrangement, which originally attempted to minimize mechanical jams in typewriters by maximizing the distance between common letter pairs. As a side-effect of this principle, few adjacent letters pairs in the alphabetic sequence are actually visual neighbors on the QWERTY keyboard. Other related graphical characters, while adjacent on the physical keyboard, are effectively scrambled by the QWERTY layout before being placed in the alphabetized PETSCII index. This preserves their logical relationship to the keys (any graphical character can be transformed into its letter, or vice-versa, by a fixed offset). However it obfuscates their relationship to each other. The only alphabetically adjacent keys found in QWERTY rows are:

    • FG (102/103)
    • JK (106/107)
    • NM (110/109) (reversed)
    • OP (111/112)

    Not coincidentally, our 10 Print one-liner uses the NM pair -- because it is visible on the interface, because it is elegant and concise in the code, and because the output is surprising, given the context of maze-like computer graphics at the time. On the PET, all of the other pairs also bear related graphical characters, and we will try each of them below -- but only NM will produce something more structural than textural.

    Context of Expectations: Computer Graphics and Games

    The representation of mazes in computer graphics was already a staple during the period that finds the 10 Print BASIC one-liner appearing in C64 manuals and journals -- in fact, the use of computers to represent mazes conceptually was common even before the advent of home computer graphics.

    (Sidebar? Summary IF and the tradition of box diagram maps, the importance of mazes in Adventure / Zork / Acheton, and the contextual relationship to home computing and dominance of early PC video game industry. The maze was already a part of the culture of computer games before the computer game became visual.)

    Game-Gotcha-arcade-(1973).jpg
    320 × 240 pixels
    Gotcha (1973 arcade) a game of tag between two players in a maze-like field of partitions
    Game-Amazing_Maze-arcade-(1976).png
    225 × 197 pixels
    The Amazing Maze Game (1976 arcade) -- a classic maze
    Game-Maze_Craze-Atari2600-(1978).png
    640 × 350 pixels
    Maze Craze (1978 Atari VCS) -- a large set of games -- complete, race-to-complete, tag, etc. -- all played within classic mazes.

    In graphical computer games, one common feature of the many different 2D maze video games from the period is orientation: all are rectilinear and aligned to the Cartesian axes, rather than being diagonal. This similarity, it turns out, constitutes the category -- in fact, it is even more important than the degree to which given games are maze-like, or what impact their maze-ness has on gameplay. Different games have different maze aesthetics. The arcade game Gotcha (1973) stages a game of tag between two players in a maze-like field of disconnected partitions which served as an obstacle course. Conversly, the arcade game The Amazing Maze Game (1976) implements a race (two-player or against a computer) to solve a classic continuous closed maze. A similar implementation on the home Atari VCS, Maze Craze (1978) provides a playable random maze generator as the field for a very a large number of games, including races and tag, and includes modes with invisible walls where the maze must be interactively felt out and remembered.

    Pac-Man (1980) is perhaps the most famous classic maze-like arcade game, although, like Gotcha, it is less a maze than a free-form obstacle course, using the free-floating wall partitions to complicate the game of tag rather than obfuscating any path to escape. When Pac-Man was reimplemented for the Atari VCS in 1982, vertical field was redesigned in horizontal format and for lower resolution display, however the essential topology of the game (partitions, looped corners, and warp gates connecting one side to the other) remained the same.

    Another feature shared by all these games (both arcade and for home video game consoles) is their treatment of the screen display as a single complete visual unit, like the board of a board game. An interesting contrast to this aesthetic is a close-up design that puts the player in the Maze, the Atari VCS game Adventure (1979) implements a maze as a series of many close-up screens. Adventure was extremely loosely based on the interactive fiction work of the same name, and featured a hero with a sword collecting treasures despite the efforts of four dragons. Unlike Pac-Man, in which the player can guide Pac-Man out a warp gate on one side of the screen and see him enter on the other side, Adventure contains numerous topologically impossible warps that are always hidden from view, and can only be deduced. Instead of an overview map of the total maze, each screen is a claustrophobic close-up of simple paths, often emphasizing discontinuous fragments of other paths that can't easily be reached. This kind of claustrophobic, discontinuous maze-space was later further explored in Haunted House (1981), particularly in the use of darkness and the addition of keys in some modes to restrict and sequence room access.

    Isometric Games

    Whether close up or distant, continuous mazes or partitioned obstacle courses, what all these period maze-games have in common is that, unlike the diagonal orientation of 10 Print, all are constructed of horizontal/vertical walls that are orthogonal to the edges of the screen and the scan line of the display.

    Diagonal orientation did have a place in the design of early maze-like games, but not in simple 2D fields -- instead, it emerged through isometric video games that introduced diagonal motion at the same time it challenged the picture plane through the pseudo-3D effect of isometric perspective. In the arcade, two isometric games emerged in 1982: Q*bert, an completion/avoidance platform on an isometric pyramid, and Zaxxon, an obstacle-racer emphasizing pseudo-3D elements. Neither of these game designs is particularly maze-like.

    Later games did incorporate maze-like obstacle elements into isometric gameplay. Part of this limitation was due to available resolution at the time, particularly on home systems. Graphics with isometric effects took up a lot of space, which limited the ability to design large complex level structures like mazes on a unified field. Thus, when Ant Attack (1983) and Marble Madness (1984) introduced isometric obstacle course elements on a large field, both did so using scrolling.** By contrast, Knight Lore (1984) follows the design pattern of Adventure for the VCS, showing a close-up view of one room at a time in a maze-like castle.

    ** Ant Attack also alters the camera view when navigating behind objects.

    Even here, however, we see how extremely different aesthetic of early isometric maze games was when compared to the 10 Print output. While both have a dynamic diagonal orientation, the move from 2D design to volumetric pseudo-3D space leaves them, visually, worlds apart.

    Patterns

    Diagonals

    10print-diagonal.png
    464 × 366 pixels
    10 PRINT CHR$(109+RND(1)*2); : GOTO 10

    By contrast, the maze output of 10 PRINT is oriented diagonally, giving it a distinctive visual look.

    Several things about this visual orientation are surprising. First, when we visually trace the maze the long runs or paths that lead through the maze do not follow the lines along which the algorithm constructs the maze (which remains left-right, top-bottom). Second, this feature of being diagnol is not an elaboration in the code, but instead an elegant simplification that is part of the essence of the succinct one-liner.

    10 PRINT CHR$(109+RND(1)*2); : GOTO 10

    Orthogonal Weave

    10print-orthogonal-weave.png
    464 × 366 pixels
    10 PRINT CHR$(102+RND(1)*2); : GOTO 10

    There are no other two characters in the PETSCII data set that, when substituted for our "\" and "/", will result in the construction of a traditional orthogonal maze. Vertical and horizontal bars, for example, result in a disconnected weave, while solid and empty squares result in rough static.

    10 PRINT CHR$(102+RND(1)*2); : GOTO 10

    (add note on 3d wicker visual interpretation)

    Corners

    10print-elbows.png
    464 × 366 pixels
    10 PRINT CHR$(108+(INT(RND(1)+.5)*3)); : GOTO 10

    Randomly selecting corner pieces such as "L", on the other hand, simply turn the image into a honeycomb.

    As it turns out, diagonal mazes are symbolically efficient on a Cartesian grid due to the fact that four characters meet at the corners, whereas only two meet along an edge. Thus, intersections of up to four lines (the building blocks of a rectilinear maze) can be created at corners if we use diagonal lines.

    (Add note on including 1,2,3,4,5 etc. spaces in order to try to create a spaced offset -- note similarity to Gotcha etc.)

    10 PRINT " "CHR$(108+(INT(RND(1)+.5)*3)); : GOTO 10

    Four Walls

    10print-orthogonal-rough.png
    464 × 366 pixels
    10 PRINT CHR$(181+(INT(RND(1)+.5)*3)+(INT(RND(1)+.5))); : GOTO 10

    One of the most intuitive methods of constructing a maze-grid is to take an approach like graph paper, using four characters to signify either a top-wall, bottom-wall, left-wall or right-wall for each cell on the grid. Such characters exist in PETSCII in both "thick" and "thin" variants. Such a process is unfortunately less elegant, as these characters are never placed continuously in the PETSCII character set, and so cannot be addressed with a simple offset.

    One can, of course, construct an orthogonal maze instead in a variety of other ways. One way is to address a set of four or more horizontal character elements a l. There are two styles of these characters (thick and thin) available in the Commodore 64 ASCII character set. However, these four character types never appear continuously in the table, so the elegant method of using a simple RND offset must be made a bit more verbose -- for example, selecting between 181, 182, 184 and 185 using two random offsets.

    10 PRINT CHR$(181+(INT(RND(1)+.5)*3)+(INT(RND(1)+.5))); : GOTO 10

    The image that emerges is indeed mazelike, but (like the code) lacks simplicity and elegance. potential redundancy between the top / bottom and left / right elements creates apparent variation in the thickness of the walls -- an interesting but potentially distracting implication of messiness and texture.

    Two Walls

    10print-orthogonal.png
    464 × 366 pixels
    10 PRINT CHR$(181+(INT(RND(1)+.5)*3)); : GOTO 10
    (...discuss how 181/184 is the best approximation of the classic orthogonal game aesthetic, but it is still less elegant than 109/110 -- we have to carefully force the random result to an INT before introducing an offset multiplier, which adds length to the line, conceptual complexity to the demo, AND as a result we get a less visually interesting output -- that is, it is both less formally dynamic as a design and less contextually unexpected)
    10 PRINT CHR$(181+(INT(RND(1)+.5)*3)); : GOTO 10

    See Also

    Notes

    Cross-reference the discussion of QWERTY / PETSCII with a small table of textures that indexes the variations, giving each a letter pair, index pair, a name, and a picture:

    • FG (102/103) Weave
    • JK (106/107) Waves ?
    • NM (110/109) (reversed) Maze
    • OP (111/112) Corners2 ?

    How should the table be sorted? Probably by alphabetical / index, although it doesn't make sense to go through it in that order.... Table might also have two pictures -- one of the textured render, the other of the symbolic render (-32 shifted, so NM etc.) There is a hotkey in C64 BASIC to do this...?



    Additional Images

    Game-Pac-Man-arcade-(1980).png
    224 × 288 pixels
    Pac-Man (1980 arcade) -- a maze-like field of partitions must be run while being chased by ghosts
    Atari2600-Adventure-v2-(vgmaps).png
    1920 × 2317 pixels
    Map of Adventure for Atari 2600 (VGmaps)
    10print-77,78-NM-letters.png
    464 × 366 pixels
    10 PRINT CHR$(77+RND(1)*2); : GOTO 10


    Bibliography

    Commodore 64 User's Guide. Wayne PA; Indianapolis, IN: Commodore Business Machines; Distributed by Howard W. Sams & Co., 1982. <http://www.commodore.ca/manuals/c64_users_guide/c64-users_guide.htm>.

    Jerz, Dennis. "Somewhere Nearby is Colossal Cave: Examining Will Crowther's Original 'Adventure' in Code and in Kentucky." DHQ: Digital Humanities Quarterly 1.2 (2007). <http://digitalhumanities.org/dhq/vol/001/2/000009/000009.html>.

    Krueger, Dan A., and Louis F. Sander. "Magic $93." Run Jul 1984. 13-14. <http://www.old-computer-mags.com/magazine/magazine_viewer_eng.php?idx=Run.htm&base=Run&num=007&page=13>.

    Langway, Lynn. "Invasion of the Video Creatures." Newsweek 16 Nov 1981: 90+.

    Latham, Aaron. "Video Games Star War." The New York Times 25 Oct 1981: 100+.

    Map of Twisty Little Passages All Alike Maze. TEXTFILES. <http://www.textfiles.com/adventure/mazmap.adv>.

    Zork 1 - Maze Map. TEXTFILES. <http://www.textfiles.com/adventure/maze.zk1>.

    Personal tools