Trope Tank Annual Report 2013-2014

I direct a lab at MIT called The Trope Tank. This is a lab for research, teaching, and creative production, located in building 14 (where the Hayden Library is also housed), in room 14N-233. Its mission is to develop new poetic practices and new understandings of digital media by focusing on the material, formal, and historical aspects of computation and language.

Trope Tank computers at work

The lab’s website has just been updated with some new information about our two major creative/research projects, Slant and Renderings. Earlier this academic year, a hardware and software catalog of Trope Tank resources was developed by Erik Stayton with contributions from Sylvia Tomayko-Peters.

As usual, the Trope Tanks hosts the monthly meetings of the local interactive fiction club, the People’s Republic of Interactive Fiction. Also, the Trope Tank’s series of digital writing presentations, Purple Blurb, continued this year; I was on leave in Fall 2013, but the series was back and hosted four excellent presentations in Spring 2014. See those sites for more information about PR-IF and Purple Blurb.

Here’s what we’ve been up to since our last annual report in May 2013:

New Works: Creative projects released.

  • Nanowatt, single-loading (3.5 KB) demoscene production for the VIC-20. By Nick Montfort, Michael C. Martin, and Patsy Baudoin as Nom de Nom, McMartin, and Baud 1. Shown and awarded 2nd place on 30 November 2013 at Récursion, Montréal.
  • World Clock, computer generated novel with source code by Nick Montfort. Published on the Web 30 November 2013, in print at the Harvard Book Store.
  • Round, digital poem by Nick Montfort. Published on the Web 14 August 2013 by New Binary Press.
  • Duels — Duets, digital poem. By Stephanie Strickland and Nick Montfort. Published on the Web 14 August 2013 by New Binary Press.
  • The Deletionist, digital poetry system. By Nick Montfort, Amaranth Borsuk, and Jesper Juul. 2011–2013. Premiered at E-Poetry 2013 in London and published on the Web.
  • Three Rails Live, an interactive video installation. By Rod Coover, Nick Montfort and Scott Rettberg. 2011–2013. Documentation published on the web in bleuOrange 7, 2013.

Trope Reports: We have issued two technical reports.

Exhibit & Museum Event:

  • Second Fridays: How People Connect, Presentation of Commodore 64 BASIC programming, Piotr Marecki and Erik Stayton, and event at the MIT Museum, February 14, 2014
  • Programs at an Exhibition, Nick Montfort & Páll Thayer, an exhibit at the Boston Cyberats Gallery, March 6-16, 2014

Presentations:

  • Marecki, Piotr, “Sticker literature or augmented reality literature,” David Foster Wallace Conference, Department of English, Illinois State University, May 23, 2014 
  • Marecki, Piotr, “The Road to Assland and early Polish Text Adventure Games,” People’s Republic of Interactive Fiction, The Trope Tank, MIT, May 13, 2014
  • Montfort, Nick, “Combinatory Media and Possibilities for Documentary,” OpenDoc Lab, MIT, May 8, 2014
  • Marecki, Piotr, “Polish Literature in the Digital Age,” MIT Comparative Media Studies/Writing, May 7, 2014
  • Marecki, Piotr, “Textual Caves: Expanding the Literary Writing Space,” Shapeshifters: Recycling and Literature, Department of Comparative Literature, Yale University, April 25-26 2014
  • Montfort, Nick “Exploratory Programming,” first of four major topics for the online Critical Code Studies Working Group 2014, 23 February-23 March, 2014.
  • Montfort, Nick, “Aesthetic Obfuscated Code,” Symposium on Obfusctation, New York University, 15 February 2014.
  • Montfort, Nick, “Ten Cases of Computational Poetics,” UCLA, M/ELT, 17 January 2014.
  • Montfort, Nick, “Computational Poetic Models,” University of Southern California, SCA Complex, 16 January 2014
  • Marecki, Piotr, “Polish Literature in the Digital Age,” IAP talk, MIT, January 21, 2014.
  • Montfort, Nick, “Computational Literary Models for Fun and Poetics,” Concordia University, Montréal, 10 January 2014.
  • Montfort, Nick, “Scaling Up Literary Models with Curveship and Slant,” 8th Mexican International Colloquium on Computational Creativity, UNAM, Mexico City, 15 November 2013.
  • Montfort, Nick, “Literary Models,” 8th Mexican International Colloquium on Computational Creativity, UAM Cuajimalpa, Mexico City, 14 November 2013.
  • Montfort, Nick, “Electronic Literature and Other Forms of Popular Creative Computing.” Keynote address at Writing Literature, Reading Society, Municipal Public Library, Kraków, 29 October 2013.
  • Montfort, Nick, “10 PRINT,” MIT CSAIL Programming Language & Software Engineering retreat, MIT Endicott House, 21 May 2013
  • Montfort, Nick, “Hardware and Emulation to Access Creative Computing,” Preserving.exe Summit, Library of Congress, 20 May 2013
  • Baudoin, Patsy and Nick Montfort, “10 PRINT,” Writing Across the Curriculum, MIT, 17 May 2013

Translations: Andrew Campana translated “The Two” by Nick Montfort into Japanese. Piotr Marecki translated Montfort’s “Lede,” “The Two,” and World Clock (via translation of the novel-generating program) into Polish, and, with Aleksandra Małecka, translated “Between Page and Screen” by Amaranth Borsuk and Brad Bouse into Polish. These will be placed online when revisions are complete.

Teaching:

  • The Trope Tank hosted a visit by The Word Made Digital, 21W.764, during Spring 2014.
  • “Exploratory Programming Workshop” by Nick Montfort, New York University, 14 February 2014.
  • Commodore 64 BASIC Workshop by Nick Montfort, offered for MIT’s Independent Activities Period, 29 January 2014.
  • “Workshop in Exploratory Programming” by Nick Montfort, UAM Cuajimalpa, Mexico City, two meetings on 11-12 November 2013.

Upcoming: In Milwaukee this month Trope Tank researchers will present at (int)7 (Intelligent Narrative Technologies 7) and the Electronic Literature Organization Conference. The presentation will be “Expressing the Narrator’s Expectations” by Montfort and Stayton at (int)7, and at ELO in the conference paper sessions “The Formation of the Field of Electronic Literature in Poland” by Marecki, “Computational Editions, Ports, and Remakes of ‘First Screening’ and ‘Karateka’” by Stayton and Montfort, and “New Novel Machines: Nanowatt and World Clock” by Montfort. The ELO Media Arts show will include “The Postulate to Hyperdescribe the World” by Marecki and Aleksandra Małecka and “Round” by Montfort. Andrew Campana’s work will be part of the Gallery of E-Lit 1st Encounters.

Many papers and even some books developed with Trope Tank support are forthcoming, but instead of trying to enumerate those, I’ll list them next year, when they have appeared.

Those Persistent Mainframes

Monday 7 April 2014, 12:11 pm   ///////  

Mickey Rooney is no longer with us, but the mainframe computer is. The Register writes up the 50th anniversary of IBM’s System 360, finishing by describing the current zEnterprise line of IBM mainframes. The line was updated just last year.

If this anniversary encourages you to hit the books about the System 360, I suggest IBM’s 360 and Early 370 Systems by Emerson W. Pugh, Lyle R. Johnson and John H. Palmer.

A Catalog of Trope Tank Warez

Monday 10 February 2014, 5:12 pm   //////  

Thanks to RA Erik Stayton, we now have a formidable catalog of hardware and software in The Trope Tank, my lab at MIT.

Trope Tank catalog system images

There are pages on each of the systems (or in one case a group of switched systems) that are regularly hooked up and ready to use:

Also, information is recorded about each display and about all the other working computers that are kept in the lab.

And while every last disk in the lab has not been cataloged, the VCS, Commodore 64, NES, Intellivision, and Odyssey cartridges and all packaged retail software on disk or CD-ROM are now listed in the extensive software catalog. For now, this catalog is presented as a simple, long Web page.

In other Trope Tank news, thanks to Jason Scott I’ve replaced a part in the Asteroids machine and the display no longer oscillates – the machine works perfectly.

The Trope Tank welcomes small classes, researchers, and artists and writers who are looking into the material properties of digital media. Please contact me if the lab’s resources can be of help to you. This Friday, while I will be out of town, Erik and Piotr Marecki (and a Commodore 64 system they are bringing) will be representing the lab at the MIT Museum and offering the public a view of how accessible and creative programming was in the early 1980s.

Videogame Editions for Play and Study

Tuesday 22 October 2013, 7:20 pm   ///////  

Now available: TROPE-13-02 – Videogame Editions for Play and Study by Clara Fernández-Vara and Nick Montfort.

We discuss four types of access to videogames that are analogous to the use of different sorts of editions in literary scholarship: (1) the use of hardware to play games on platforms compatible with the original ones, (2) emulation as a means of playing games on contemporary computers, (3) ports, which translate games across platforms, and (4) documentation, which can describe some aspects of games when they cannot be accessed and can supplement play. These different editions provide different information and perspectives and can be used in teaching and research in several ways.

Enjoy, and please let us know here or elsewhere if you have discussion about this.

Media Archaeology Lab’s New Media

Tuesday 16 July 2013, 4:53 pm   /////  

Lori Emerson has been running an excellent facility at the University of Colorado at Boulder that is a kindred lab, and an inspiration, to my Trope Tank here at MIT.

This is the Media Archaeology Lab, which has recently launched a new site (with blog) and has also begun (as a lab) to tweet.

The Colorado lab, like the Trope Tank, offers working systems from decades past to support research, teaching, and artistic/literary work. The MAL is ahead of us in several ways, for instance by providing extensive information about its holdings in the form of an inventory. They even have a NeXT cube, like we do – although I think the retail price estimate on that page is missing a digit. The Trope Tank only has such information on placards placed on the hardware itself, as discussed in our technical report on the setup of the lab, but perhaps we’ll look to better publish what we’ve gathered here in months to come. I hope the MAL’s progress continues and that I’ll get to visit before too long.

Doug Engelbart, 88, Inventor of …

Tuesday 9 July 2013, 1:55 pm   /////  

… the mouse; the chording keyboard for use with the mouse; the demo; videoconferencing; real-time online collaboration and collaborative editing; the first practical, working hypertext system, which was also a hypermedia system; word processing; dynamic file linking; version control; computer augmentation of human intelligence; and the bootstrapping of human intellectual processes.

Engelbart died on July 2. (Los Angeles Times obituary.)

Trope Tank Annual Report 2012-2013

Trope Tank home computers

I direct a lab at MIT called The Trope Tank. This is a lab for research, teaching, and creative production, located in building 14 (where the Hayden Library is also housed), in room 14N-233. Its mission is to develop new poetic practices and new understandings of digital media by focusing on the material, formal, and historical aspects of computation and language.

Trope Tank Atari VCS

The Trope Tank is a physical facility with unusual material computing resources from the past few decades – as well as places for researchers to sit and work with their more modern computers. The facility and materials provide for visits from classes, discussions with visiting researchers, and support for creative and research projects. The lab space continues to house the monthly meetings of the People’s Republic of Interactive Fiction, the Boston Area’s local IF group. Trope Tank equipment has supported talks this year at the Boston Cyberarts Gallery, Microsoft Research in Redmond, UCLA, the University of Maine, and other venues.

This academic year, two Trope Tank affiliates are becoming faculty members:

  • Clara Fernández-Vara, who took part in the Tools for the Telling project back in 2007-2008 and has been a visiting scholar at the Trope Tank this year, is joining the faculty of NYU’s Game Center at the end of summer as an associate arts professor.

  • Amaranth Borsuk, who was guest organizer of the Purple Blurb series in 2011-2012 and is a current collaborator on The Deletionist, is joining the faculty of The University of Washington, Bothell as an assistant professor. She has been a senior lecturer there.

The Trope Tank’s series of technical reports, called the “Trope Report” series, now features five items and is archived in MIT’s DSpace.

There have been two major research projects (both with artistic aspects) and one creative, poetic project this past year:

  • The book 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 was published last year by the MIT Press (and is also available for free download as a PDF). Various subsets of the ten authors have been doing presentations related to the book in many different contents.

  • The story generation project Slant was initiated and the first paper was accepted at ICCC 2013. It will be presented there, in Sydney, next month. The project involves integrating or developing new work based on decades of research by Nick Montfort, Rafael Pérez y Pérez, and Fox Harrell; those three and Andrew Campana have collaborated to initiate the project.

  • The Deletionist is a current poetic project by Amaranth Borsuk, Jesper Juul, and Nick Montfort which will premiere at E-Poetry next month at Kingston University, London.

The Trope Tank will continue to support research, creative work, and teaching this summer and beyond. This is a laboratory to allow people to work with material computing systems; while it is not an archive, museum, or library, and does not offer all that such institutions do, it does provide for hands-on access to the history of creative computing. If you are interested in using the systems and materials in the Trope Tank, please contact Nick.

The Computer Museum is … Alive!

Tuesday 20 November 2012, 7:39 pm   ////  

A great story on the Living Computer Museum in Seattle, where they have computers … that work!

“Creative Material Computing in a Laboratory Context”

Thursday 26 April 2012, 2:28 pm   //////////  

The Trope Tank has just issued a new technical report:

Creative Material Computing in a Laboratory Context
Nick Montfort and Natalia Fedorova
TROPE-12-03

Download the full report

Abstract
Principles for organizing a laboratory with material computing resources are articulated. This laboratory, the Trope Tank, is a facility for teaching, research, and creative collaboration and offers hardware (in working condition and set up for use) from the 1970s, 1980s, and 1990s, including videogame systems, home computers, an arcade cabinet, and a workstation. Other resources include controllers, peripherals, manuals, books, and software on physical media. In reorganizing the space, we considered its primary purpose as a laboratory (rather than as a library or studio), organized materials by platform and intended use, and provided additional cues and textual information about the historical contexts of the available systems.

Computer Histories at MiT7

Saturday 14 May 2011, 2:09 pm   //////  

At Media in Transition 7 here at MIT, after a good start in the opening plenary and first break-out session, we had a fascinating session yesterday on “Computer Histories.” The papers presented were:

  • Sandra Braman presented “Designing for Instability: Internet Architecture and Constant Change.” [Abstract.]
  • Kevin Driscoll spoke on “Revisiting Bill Gates’ “Open Letter to Hobbyists.” [Abstract.]
  • Colleen Kaman’s talk was “‘Interop,’ Internet Commercialization, and the Early Politics of Global Computer Networks.” [Abstract.] [Full paper.]

The individual presentations were very interesting, and it was a fascinating set to hear together. Two were on the development of the Internet: Braman delved deeply into the more than 6000 Requests for Comments (RFCs) used to develop Internet protocols, doing a line-by-line discourse analysis. In these documents, which people might guess would be dry and purely technical, she found a great deal of embedded political and social thought. The complete manuscript on this topic should be done and available in a few weeks. Kaman looked a different forum for communication that was important to the dramatic expansion in Internet connectivity from 1991-1997: a trade show. Following on discussions in 1996, to deal with the Internet’s rapid growth and the competing European standard for networking, the Interop conference was formulated. It included a demo network, Shownet, where vendors could come to test products and academic and research work could connect to practical experience in a “negotiation space.”

And, there was one presentation on early microcomputing. Discoll began with the image of a book cover featuring a two-tier desk typical of HAM radio operation, declaring: “Hobby Computers Are Here!” He showed a response to Bill Gates’ famous “Open Letter to Hobbyists” and a clip from Revolution OS with an increasingly hysterical reading of the original letter – the dominant understanding of the letter today, as if it were the beginning of opposition to free software. Hobbyists learned to program on calculators and didn’t have contact with, for instance, the Internet protocol developers. In Interface, Art Childs (the editor) questions what software is and deals with many important issues in free software in replying to Gates’s letter. He concludes that a service model is best – just as GNU did later. This antecedent to free software has been overlooked, just as computer culture in much of the country (beyond Boston and Silicon Valley) have been overlooked.

I was fascinated at these two different perspectives on the formation of the Internet (finding surprising non-technical discussion in RFC and surprising technical implications of a trade show) and on the difference between the culture of hobbyist computer builders, programmers, and users and that of those involved with the development and growth of the Internet. Driscoll’s more sensitive reading of Bill Gates’s “open letter,” Braman’s deep analysis of RFCs, and Kaman’s exploration and discussion of Interop provide great models for the understanding of computer histories.

This APC, For One, Welcomes…

Thursday 2 December 2010, 2:08 pm   ////  

APC: Thanks. It's a pleasure to serve you.

I was startled to discover these two things at the post office today, the immediate implications of this message:

  1. The US Postal Service has developed a kiosk/robot capable of experiencing pleasure.
  2. Said robot is stimulated pleasurably by selling me a stamp.

I wanted to somehow let the robot know that I also appreciated the necessary service it performed. I thought about getting one of these Priority Mail stickers, writing on it “It was a pleasure, also, to be served by you, robot!,” and then slapping it on the side of the Automatic Postal Center. But the robot wouldn’t be able to read that message, would it? Maybe I could hold up a note with a similar message to the camera that is used to surveil patrons of the APC. But then I’d have to wait in line again, and I doubt the robot is capable of handwritten character recognition – it wouldn’t have asked me to type in the zip code if it was.

I can only hope that this faithful servant is among the many robot readers of my blog.

Also, I feed certain there must be some applications outside of the mail system for pleasure-experiencing robots, although none come to mind right away. Any ideas?

(Obligatory self-reference: An Automated Postal Center appears in my 2005 interactive fiction Book and Volume.)

Computing with Your Torch

Thursday 30 September 2010, 6:43 pm   //////  

I just have to mention the 16-bit ALU implemented in the 3D environment of Minecraft, which has been much discussed by now. I’m glad to hear this game is keeping up with Dwarf Fortress. By the way, the particular piece of hardware that has been (virtually) built, on the way to creating a full CPU, is the one described in The Elements of Computing Systems, a book I wrote about on Grand Text Auto back in 2006.

Code is Beauty, Beauty Code

Friday 20 August 2010, 12:07 am   //////////  

Beautiful CodeIn recent years, I’ve written a series of 1k (that is, exactly 1024 character) reviews on here. This ruse has helped me compose succinct (and possibly useful) notes about many things that I wouldn’t have otherwise written about. But some things that are worth reviewing, such as a documentary about interactive fiction, are really better treated in a bit more depth. Given my interest in the aesthetics of code, and in code that produces aesthetic output, a book entitled Beautiful Code: Leading Programmers Explain How They Think is certainly one of those things.

Beautiful Code is an edited collection of 33 articles by a well-known publisher of technical books. The articles deal with how programmers solved a variety of problems, some of them very general computational problems, others quite specific to particular systems and applications. Several of the authors discuss their own code. The book is part of the Theory in Practice series with Beautiful Data, Beautiful Architecture, and Beautiful Security.

Beautiful Code: Leading Programmers Explain How They Think. Edited By Andy Oram & Greg Wilson. O’Reilly Media, 2007.

Beautiful Code is a success in several ways. It widens the conversation about code and the innovative development of it beyond particular programming languages, which have often been silos for such discussion has taken place in the past. At least, book-length discussion of programming – in textbooks, in introductory and reference books, and in “tips and tricks” books – has often been language-specific. While encompassing many systems and code in many languages, the book doesn’t take the position that the programming language can be abstracted away, that knowing about data structures, algorithms and an arbitrary programming language allows on to say all that can be said about how to program.

The first article is a particularly excellent one. In it, Brian Kernighan discusses 30 lines of regular expression matching C code which Rob Pike wrote as an example in an hour or two. This concise article deals with how to solve the core of the regular expression problem elegantly and correctly, but it also touches on many other important aspects of code and programming. By suggesting a series of modifications, Kernighan shows that code is an element of future programs rather than simply a fixed solution. Kernighan mentions how the code takes advantage of C pointers and suggests converting it to Java to see how the result would be slower and would require a lengthier program. If you can only read one essay in Beautiful Code, be glad that the editors have placed this one in the front, allowing you to retrieve it in a constant-time operation.

I was also interested in how several of the essays dealt with the need to consider hardware specifics, something one might expect pure, beautiful code to avoid touching. There’s some hint of this specter in chapter 7, which discusses how Jon Bently’s official, “proven” algorithm for binary search has a bug when it’s implemented on most real systems. When the code finds a midpoint within the array by computing (low + high) / 2, the sum of low and high can, in very extreme cases, exceed the maximum integer value, giving a negative (and obviously wrong) result. Later chapters deal with more productive connections between hardware and code. In chapter 10, Henry S. Warren, Jr. delves into the amazing intricacies involved in efficiently computing the population count or sideways sum: the number of bits in a word, or an array of words, that are 1. The current best way of doing this for an array involves using a special circuit called a carry-save adder. Chapter 14, “How Elegant Code Evolves with Hardware: The Case of Gaussian Elimination,” explores the relationship of leading matrix algorithms to changing hardware architectures.

Several other articles interested me; I suspect that programming language researchers, professional programmers, and others will find that a good number of the selections are worthwhile.

But despite the title and some compelling discussion inside, this is really isn’t a book about “beautiful code.” There is almost nothing in it about beauty or what that concept means when applied to code. “Aesthetics” isn’t in the index. When beauty is mentioned, it seems obligatory and stands for whatever the author of a particular chapter values. This, for instance, by Travis E. Oliphant:

“Iterators are a beautiful abstraction because they save valuable programmer attention in the implementation of a complicated algorithm.” (p. 318)

Could one say anything similar about paintings? Sunsets? Or even something that has an important functional aspect, like a building? “Frank Ghery’s Stata Center is a beautiful building because the layout of its hallways saves valuable programmer time.” That doesn’t sound quite right, does it? There are more reasonable-sounding, if not very elaborated, statements about code and beauty in the book, but some of those seem to express a very narrow perspective. For instance, Adam Kolawa writes:

“In sum, I believe that beautiful code must be short, explicit, frugal, and written with consideration for reality.” (p. 266)

Michael Mateas and I have written about obfuscated code, a topic that isn’t mentioned at all in this book. While obfuscated programs are usually short, they are also the opposite of explicit, gratuitous rather than frugal, and written without any concern for “realities” like re-use, practicality, and legibility. An obfuscated program isn’t good programming practice – that’s part of the point. For reasons that Michael and I have written about, we consider the best examples of obfuscated code to be beautiful, and I suspect we’re not the only ones. They simply display a different kind of beauty, an aesthetic of complexity and extravagance that shows us things about programming and about the language in which the obfuscated code is written – things that technical essays don’t reveal. You may share this aesthetic and be willing to consider obfuscated code beautiful, if, for instance, you saw beauty in the exorbitant Ok Go video “This Too Shall Pass.”

A final disappointment: There are no articles on the creative, artistic use of code, on programming projects that are meant to create beautiful output – no music, poetry, story, or terrain generators, lightsynths, demos, intros, or Processing sketches. Certainly a book about beautiful code, even if it is targeted at the professional programmer, would benefit from investigating a program or two of this sort?

This isn’t to say that valuing conciseness and clarity is a bad idea, or that having a book about utilitarian programming practice, particularly a wide-ranging one with many interesting articles of great technical depth, is a problem. It just means that much work remains to be done on matters of beauty and code. Perhaps we’ll soon see a book that brings together the diversity and depth of technical discussion that’s displayed here with consideration of the nature of beauty, of what it means for code to be beautiful, and of how the workings, conception, code expression, and wider contexts of a program are all involved in its beauty.

One-Line C64 BASIC Music

Monday 26 July 2010, 1:10 pm   ////////  

Local sound artist/electronic musician Keith Fullerton Whitman released an extraordinary piece on the b-side of his November 2009 cassette hallicrafters, inc. The piece is called 10 poke 54272+int(rnd(1)*25),int(rnd(1)*256) : goto 10 and is 18 minutes of sound produced by a Commodore 64 emulator running the BASIC program that is the title of the piece.

The memory locations beginning at 54272 are mapped on the Commodore 64 to the registers of the SID (Sound Interface Device). By POKEing random values into them, the SID, although it is a musical chip, is stimulated to produce sounds in what probably seems like a non-musical way: based on the effect of register settings and the sequence produced by the system’s random number generator, a polynomial counter.

I’m listening to the piece running on a hardware C64 now, which is soothing, although it seems like it shouldn’t be. Looking at the code, I note that the program

10 poke 54272+rnd(1)*25,rnd(1)*256 : goto 10

will put the same values into the same memory locations (and therefore SID registers) in the same order. The INT function is unnecessary because all arithmetic in C64 BASIC is done in floating point and then cast to integer whenever necessary. It’s possible that removing these functions will cause the piece to speed up, however, and I suspect it will, even though a BASIC interpreter could skip the unnecessary INT calls to begin with. There would be various ways of determining this, but the one I’d like to try involves getting two C64s, each with one version of the program, and seeing if they go out of phase.

By the way, I say that these two programs will put the same values in the same order because RND(1) returns a deterministic sequence. Any time either of these programs is invoked before other calls to RND are made, they will produce the same sequence. Using RND(0) would seed the random number generator on the jiffy clock, so would do different things depending upon how long the computer had been on before startup.

Thanks to sound artist and digital media scholar Kevin Driscoll, a.k.a. Lone Wolf, for letting me know about this.

Update: Hilariously, I overlooked that Whitman is not the author of this program – he credits Noah Vawter, a.k.a. Shifty, who is currently collaborating with me on a project about a one-line Commodore 64 BASIC program. I guess I was too distracted by that picture of an iPhone running a C64 emulator.

@party: Weaving thread

I spent this weekend at @party 2010, the first (and hopefully not last) demoparty of this name. The event was in the Town of Harvard, Massachusetts – a bit outside of Boston. I heard four live music performances, saw an early cut of Jason Scott’s almost-finished Get Lamp documentary, and saw and heard grafix, music, and demos (wild and windows) in the Saturday evening compos. There were great tunes, a truly excellent 4k windows demo, an incredible demo running on an Arduino, and much more. Many thanks to the organizer, Metoikos, and everyone who helped her out. And, a big thanks to the demoscene!

Working with two others and using the moniker “nom de nom,” I completed my first demoscene production: thread, a Commodore 64 demo that has fewer than 32 bytes of code. (There are no C64 demos this size or smaller on pouet.net, as far as I can tell.) This demo is a tribute to a BASIC program that generates random mazes, one that exists in one form in the C64 User’s Guide but has also circulated as a one-liner. Here’s a version of the program:

10 PRINT CHR$(205.5+RND(1)); : GOTO 10

I developed thread working in person first with Le Colonial of Atlanta, a sometime co-author of mine who also writes Atari VCS games. (He’s also known as Ian Bogost.) At the party itself, I was fortunate to encounter C64 expert rv6502 of Montréal, who joined me and did the heavy lifting in the second phase of this project.

After working one evening with Le Colonial in Cambridge, we had a 32 byte program that wasn’t exactly like the original, but did something pretty cool. When I checked it out on my actual C64 right before I left for the party, however, it didn’t work. The SID was initialized differently in the emulators I’d used than it was on the box itself – as it happened – and there was something odd happening with my video display as well.

I brought my C64 to the event rather half-heartedly, without any way of getting programs onto it other than typing them in and without a display. Alas, I wasn’t going to get away from the program that easily: Dr. Claw brought me a monitor to use and NO CARRIER loaned me a flash cart – and, later, a physical copy of the Commodore 64 Programmer’s Guide. rv6502 and I sat down to work further on the program. It turned out my C64′s video was different that of the emulators I used, but also different from Ferris’s actual C64 (which matched the behavior of the emulators I tried). So it wasn’t just an emulator failing to match the metal; the two different C64s apparently have different KERNAL code in ROM. Dumping my machine’s ROM and used that with my emulator would have solved that part of the mismatch.

I won’t try to go into all the details of developing this demo, but there were two particularly great things about the process at a high level. First, I got to collaborate with and learn from two others at different points. Second, I got to learn a lot more about the C64, including many things I wouldn’t have run up against if I hadn’t been working on something like this. I’m not talking about small differences between emulation and the hardware, which were a minor part of this experience, in the end. I mean finding excellent facilities of the 6502 and the C64 to work around those which weren’t doing what we wanted.

We’ve released thread in three versions: The canonical one, which has 31 bytes of code but is in a 33-byte PRG file, because the beginning memory location is stored in the first two bytes of PRG files. If this bothers you, there is a 28-byte version which fits into a 30-byte PRG file and has all the same colors, but displayed in a way that we think is not as pretty. We also include a simple, straightforward reimplementation of the BASIC program above: A 20-byte program in a 22-byte PRG file. I’d love to get this uploaded to pouet.net at some point, but I don’t know how. For now, here’s a zipfile with source and PRGs.

thread got 4th place in the Oldschool category at @party. After you load a PRG file in your emulator (or on your C64), you can run it by typing “SYS 4096″.

Finally, these are the 31 bytes of thread:

A9 80 8D 0F D4 8D 12 D4 A8 B1 F9 8D 86 02 AD 1B D4 29 01 69 6D 20 D2 FF E8 D0 ED E6 F9 50 E9


H. Edward Roberts, Inventor of the Personal Computer

Saturday 3 April 2010, 7:53 pm   ////  
The inventor of the MITS Altair 8800, the inexpensive kit computer that is widely considered to be the first personal computer, has died at age 68.

PAX Blurb

Thursday 1 April 2010, 9:55 pm   ////////  

This weekend was a great time, both at the official PAX-East, where we saw the premiere of Get Lamp, and in the alternate but connected universe of the People’s Republic of Interactive Fiction Hospitality Suite, where Andrew Plotkin’s organizational acumen and contributions allowed us to hear panels, write and play Speed IF games, and snack and converse. The 2010 IF Summit at PAX-East was a great success. There and at the main expo, I got to speak with people from the contemporary IF community and many old-school IF luminaries from Infocom and before – and even got to be on a panel with several of them.

Dave Lebling, Don Woods, Brian Moriarty, Andrew Plotkin, Nick Montfort, Steve Meretzky, Jason Scott (standing, in absurd outfit). It is April Fool’s Day. Am I Photoshopped into this panel? Photo CC by Eric Havir.

And, I got to play on the proto-Ms. Pac Man board – the one Crazy Otto board that is known to still exist.

After PAX, I hosted a great reading of interactive fiction by Emily Short (who read from Alabaster) and Jeremy Freese (Violet), with interacting done by Kevin Jackson-Mead and Jenni Poladni. The event was at MIT (as with all Purple Blurb presentations), had standing room only, and prompted a great deal of good conversation afterwards.

There is much more that could be said, and many more PAX-East IF people that I could mention – a few of those, beyond the PR-IF regulars, are: Sam Kabo Ashwell, Liza Daly, Brendan Desilets, Stephen Granade, Juhana Leinonen, Jacqueline Lott, Jesse McGrew, Carl Muckenhoupt, Aaron Reed, Dan Schmidt, Robb Sherwin, Dan Shiovitz, Emily Short, and Rob Wheeler. (My apologies to those whose names I’m overlooking or don’t have on hand.) Some of these are locals I rarely see; others are people I have known for years, had numerous extensive discussions with, and in one case, collaborated with, and yet PAX-East was my first chance to meet them in person.

Based on last weekend and last Monday, the outlook for IF is extremely bright: We can share games and discuss important questions about IF in person as well as online, we have plenty of ideas that we’re making progress on but can certainly discuss further, and we have a documentary film coming on DVD that will please IF diehards and help to introduce students and other sympathetic viewers to the pleasures of the text adventure.

Next Page »
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.
(c) 2014 Post Position | Barecity theme