Latest Posts (8 found)
Stone Tools 2 days ago

Bank Street Writer on the Apple II

Stop me if you're heard this one . In 1978, a young man wandered into a Tandy Radio Shack and found himself transfixed by the TRS-80 systems on display. He bought one just to play around with, and it wound up transforming his life from there on. As it went with so many, so too did it go with lawyer Doug Carlston. His brother, Gary, initially unimpressed, warmed up to the machine during a long Maine winter. The two thus smitten mused, "Can we make money off of this?" Together they formed a developer-sales relationship, with Doug developing Galactic Saga and third brother Don developing Tank Command . Gary's sales acumen brought early success and Broderbund was officially underway. Meanwhile in New York, Richard Ruopp, president of Bank Street College of Education, a kind of research center for experimental and progressive education, was thinking about how emerging technology fit into the college's mission. Writing was an important part of their curriculum, but according to Ruopp , "We tested the available word processors and found we couldn’t use any of them." So, experts from Bank Street College worked closely with consultant Franklin Smith and software development firm Intentional Educations Inc. to build a better word processor for kids. The fruit of that labor, Bank Street Writer , was published by Scholastic exclusively to schools at first, with Broderbund taking up the home distribution market a little later. Bank Street Writer would dominate home software sales charts for years and its name would live on as one of the sacred texts, like Lemonade Stand or The Oregon Trail . Let's see what lessons there are to learn from it yet. 1916 Founded by Lucy Sprague Mitchell, Wesley Mitchell, and Harriet Johnson as the “Bureau of Educational Experiments” (BEE) with the goal of understanding in what environment children best learn and develop, and to help adults learn to cultivate that environment. 1930 BEE moves to 69 Bank Street. (Will move to 112th Street in 1971, for space reasons.) 1937 The Writer’s Lab, which connects writers and students, is formed. 1950 BEE is renamed to Bank Street College of Education. 1973 Minnesota Educational Computing Consortium (MECC) is founded. This group would later go on to produce The Oregon Trail . 1983 Bank Street Writer, developed by Intentional Educations Inc., published by Broderbund Software, and “thoroughly tested by the academics at Bank Street College of Education.” Price: $70. 1985 Writer is a success! Time to capitalize! Bank Street Speller $50, Bank Street Filer $50, Bank Street Mailer $50, Bank Street Music Writer $50, Bank Street Prewriter (published by Scholastic) $60. 1986 Bank Street Writer Plus $100. Bank Street Writer III (published by Scholastic) $90. It’s basically Plus with classroom-oriented additions, including a 20-column mode and additional teaching aides. 1987 Bank Street Storybook, $40. 1992 Bank Street Writer for the Macintosh (published by Scholastic) $130. Adds limited page layout options, Hypercard-style hypertext, clip art, punctuation checker, image import with text wrap, full color, sound support, “Classroom Publishing” of fliers and pamphlets, and electronic mail. With word processors, I want to give them a chance to present their best possible experience. I do put a little time into trying the baseline experience many would have had with the software during the height of its popularity. "Does the software still have utility today?" can only be fairly answered by giving the software a fighting chance. To that end, I've gifted myself a top-of-the-line (virtual) Apple //e running the last update to Writer , the Plus edition. You probably already know how to use Bank Street Writer Plus . You don't know you know, but you do know because you have familiarity with GUI menus and basic word processing skills. All you're lacking is an understanding of the vagaries of data storage and retrieval as necessitated by the hardware of the time, but once armed with that knowledge you could start using this program without touching the manual again. It really is as easy as the makers claim. The simplicity is driven by very a subtle, forward-thinking user interface. Of primary interest is the upper prompt area. The top 3 lines of the screen serve as an ever-present, contextual "here's the situation" helper. What's going on? What am I looking at? What options are available? How do I navigate this screen? How do I use this tool? Whatever you're doing, whatever menu option you've chosen, the prompt area is already displaying information about which actions are available right now in the current context . As the manual states, "When in doubt, look for instructions in the prompt area." The manual speaks truth. For some, the constant on-screen prompting could be a touch overbearing, but I personally don't think it's so terrible to know that the program is paying attention to my actions and wants me to succeed. The assistance isn't front-loaded, like so many mobile apps, nor does it interrupt, like Clippy. I simply can't fault the good intentions, nor can I really think of anything in modern software that takes this approach to user-friendliness. The remainder of the screen is devoted to your writing and works like any other word processor you've used. Just type, move the cursor with the arrow keys, and type some more. I think most writers will find it behaves "as expected." There are no Electric Pencil -style over-type surprises, nor VisiCalc -style arrow key manipulations. What seems to have happened is that in making a word processor that is easy for children to use, they accidentally made a word processor that is just plain easy. The basic functionality is drop-dead simple to pick up by just poking around, but there's quite a bit more to learn here. To do so, we have a few options for getting to know Bank Street Writer in more detail. There are two manuals by virtue of the program's educational roots. Bank Street Writer was published by both Broderbund (for the home market) and Scholastic (for schools). Each tailored their own manual to their respective demographic. Broderbund's manual is cleanly designed, easy to understand, and gets right to the point. It is not as "child focused" as reviews at the time might have you believe. Scholastic's is more of a curriculum to teach word processing, part of the 80s push for "computers in the classroom." It's packed with student activities, pages that can be copied and distributed, and (tellingly) information for the teacher explaining "What is a word processor?" Our other option for learning is on side 2 of the main program disk. Quite apart from the program proper, the disk contains an interactive tutorial. I love this commitment to the user's success, though I breezed through it in just a few minutes, being a cultured word processing pro of the 21st century. I am quite familiar with "menus" thank you very much. As I mentioned at the top, the screen is split into two areas: prompt and writing. The prompt area is fixed, and can neither be hidden nor turned off. This means there's no "full screen" option, for example. The writing area runs in high-res graphics mode so as to bless us with the gift of an 80-character wide display. Being a graphics display also means the developer could have put anything on screen, including a ruler which would have been a nice formatting helper. Alas. Bank Street offers limited preference settings; there's not much we can do to customize the program's display or functionality. The upshot is that as I gain confidence with the program, the program doesn't offer to match my ability. There is one notable trick, which I'll discuss later, but overall there is a missed opportunity here for adapting to a user's increasing skill. Kids do grow up, after all. As with Electric Pencil , I'm writing this entirely in Bank Street Writer . Unlike the keyboard/software troubles there, here in 128K Apple //e world I have Markdown luxuries like . The emulator's amber mode is soothing to the eyes and soul. Mouse control is turned on and works perfectly, though it's much easier and faster to navigate by keyboard, as God intended. This is an enjoyable writing experience. Which is not to say the program is without quirks. Perhaps the most unfortunate one is how little writing space 128K RAM buys for a document. At this point in the write-up I'm at about 1,500 words and BSW's memory check function reports I'm already at 40% of capacity. So the largest document one could keep resident in memory at one time would run about 4,000 words max? Put bluntly, that ain't a lot. Splitting documents into multiple files is pretty much forced upon anyone wanting to write anything of length. Given floppy disk fragility, especially with children handling them, perhaps that's not such a bad idea. However, from an editing point of view, it is frustrating to recall which document I need to load to review any given piece of text. Remember also, there's no copy/paste as we understand it today. Moving a block of text between documents is tricky, but possible. BSW can save a selected portion of text to its own file, which can then be "retrieved" (inserted) at the current cursor position in another file. In this way the diskette functions as a memory buffer for cross-document "copy/paste." Hey, at least there is some option available. Flipping through old magazines of the time, it's interesting just how often Bank Street Writer comes up as the comparative reference point for home word processors over the years. If a new program had even the slightest whiff of trying to be "easy to use" it was invariably compared to Bank Street Writer . Likewise, there were any number of writers and readers of those magazines talking about how they continued to use Bank Street Writer , even though so-called "better" options existed. I don't want to oversell its adoption by adults, but it most definitely was not a children-only word processor, by any stretch. I think the release of Plus embraced a more mature audience. In schools it reigned supreme for years, including the Scholastic-branded version of Plus called Bank Street Writer III . There were add-on "packs" of teacher materials for use with it. There was also Bank Street Prewriter , a tool for helping to organize themes and thoughts before committing to the act of writing, including an outliner, as popularized by ThinkTank . (always interesting when influences ripple through the industry like this) Of course, the Scholastic approach was built around the idea of teachers having access to computers in the classroom. And THAT was build on the idea of teachers feeling comfortable enough with computers to seamlessly merge them into a lesson-plan. Sure, the kids needed something simple to learn, but let's be honest, so did the adults. There was a time when attaching a computer to anything meant a fundamental transformation of that thing was assured and imminent. For example, the "office of the future" (as discussed in the Superbase post ) had a counterpart in the "classroom of tomorrow." In 1983, Popular Computing said, "Schools are in the grip of a computer mania." Steve Jobs took advantage of this, skating to where the puck would be, by donating Apple 2s to California schools. In October 1983, Creative Computing did a little math on that plan. $20M in retail donations brought $4M in tax credits against $5M in gross donations. Apple could donate a computer to every elementary, middle, and high school in California for an outlay of only $1M. Jobs lobbied Congress hard to pass a national version of the same "Kids Can't Wait" bill, which would have extended federal tax credits for such donations. That never made it to law, for various political reasons. But the California initiative certainly helped position Apple as the go-to system for computers in education. By 1985, Apple would dominate fully half of the education market. That would continue into the Macintosh era, though Apple's dominance diminished slowly as cheaper, "good enough" alternatives entered the market. Today, Apple is #3 in the education market, behind Windows and Chromebooks . It is a fair question to ask, "How useful could a single donated computer be to a school?" Once it's in place, then what? Does it have function? Does anyone have a plan for it? Come to think of it, does anyone on staff even know how to use it? When Apple put a computer into (almost) every school in California, they did require training. Well, let's say lip-service was paid to the idea of the aspiration of training. One teacher from each school had to receive one day's worth of training to attain a certificate which allowed the school to receive the computer. That teacher was then tasked with training their coworkers. Wait, did I say "one day?" Sorry, I meant about one HOUR of training. It's not too hard to see where Larry Cuban was coming from when he published Oversold & Underused: Computers in the Classroom in 2001. Even of schools with more than a single system, he notes, "Why, then, does a school's high access (to computers) yield limited use? Nationally and in our case studies, teachers... mentioned that training in relevant software and applications was seldom offered... (Teachers) felt that the generic training available was often irrelevant to their specific and immediate needs." From my perspective, and I'm no historian, it seems to me there were four ways computers were introduced into the school setting. The three most obvious were: I personally attended schools of all three types. What I can say the schools had in common was how little attention, if any, was given to the computer and how little my teachers understood them. An impromptu poll of friends aligned with my own experience. Schools didn't integrate computers into classwork, except when classwork was explicitly about computers. I sincerely doubt my time playing Trillium's Shadowkeep during recess was anything close to Apple's vision of a "classroom of tomorrow." The fourth approach to computers into the classroom was significantly more ambitious. Apple tried an experiment in which five public school sites were chosen for a long-term research project. In 1986, the sites were given computers for every child in class and at home. They reasoned that for computers to truly make an impact on children, the computer couldn't just be a fun toy they occasionally interacted with. Rather, it required full integration into their lives. Now, it is darkly funny to me that having achieved this integration today through smartphones, adults work hard to remove computers from school. It is also interesting to me that Apple kind of led the way in making that happen, although in fairness they don't seem to consider the iPhone to be a computer . America wasn't alone in trying to give its children a technological leg up. In England, the BBC spearheaded a major drive to get computers into classrooms via a countrywide computer literacy program. Even in the States, I remember watching episodes of BBC's The Computer Programme on PBS. Regardless of Apple's or the BBC's efforts, the long-term data on the effectiveness of computers in the classroom has been mixed, at best, or even an outright failure. Apple's own assessment of their "Apple Classrooms of Tomorrow" (ACOT) program after a couple of years concluded, "Results showed that ACOT students maintained their performance levels on standard measures of educational achievement in basic skills, and they sustained positive attitudes as judged by measures addressing the traditional activities of schooling." Which is a "we continue to maintain the dream of selling more computers to schools" way of saying, "Nothing changed." In 2001, the BBC reported , "England's schools are beginning to use computers more in teaching - but teachers are making "slow progress" in learning about them." Then in 2015 the results were "disappointing, "Even where computers are used in the classroom, their impact on student performance is mixed at best." Informatique pour tous, France 1985: Pedagogy, Industry and Politics by Clémence Cardon-Quint noted the French attempt at computers in the classroom as being, "an operation that can be considered both as a milestone and a failure." Computers in the Classrooms of an Authoritarian Country: The Case of Soviet Latvia (1980s–1991) by Iveta Kestere, Katrina Elizabete Purina-Bieza shows the introduction of computers to have drawn stark power and social divides, while pushing prescribed gender roles of computers being "for boys." Teachers Translating and Circumventing the Computer in Lower and Upper Secondary Swedish Schools in the 1970s and 1980 s by Rosalía Guerrero Cantarell noted, "the role of teachers as agents of change was crucial. But teachers also acted as opponents, hindering the diffusion of computer use in schools." Now, I should be clear that things were different in the higher education market, as with PLATO in the universities. But in the primary and secondary markets, Bank Street Writer 's primary demographic, nobody really knew what to do with the machines once they had them. The most straightforwardly damning assessment is from Oversold & Underused where Cuban says in the chapter "Are Computers in Schools Worth the Investment?", "Although promoters of new technologies often spout the rhetoric of fundamental change, few have pursued deep and comprehensive changes in the existing system of schooling." Throughout the book he notes how most teachers struggle to integrate computers into their lessons and teaching methodologies. The lack of guidance in developing new ways of teaching means computers will continue to be relegated to occasional auxiliary tools trotted out from time to time, not integral to the teaching process. "Should my conclusions and predictions be accurate, both champions and skeptics will be disappointed. They may conclude, as I have, that the investment of billions of dollars over the last decade has yet to produce worthy outcomes," he concludes. Thanks to my sweet four-drive virtual machine, I can summon both the dictionary and thesaurus immediately. Put the cursor at the start of a word and hit or to get an instant spot check of spelling or synonyms. Without the reality of actual floppy disk access speed, word searches are fast. Spelling can be performed on the full document, which does take noticeable time to finish. One thing I really love is how cancelling an action or moving forward on the next step of a process is responsive and immediate. If you're growing bored of an action taking too long, just cancel it with ; it will stop immediately . The program feels robust and unbreakable in that way. There is a word lookup, which accepts wildcards, for when you kinda-sorta know how to spell a word but need help. Attached to this function is an anagram checker which benefits greatly from a virtual CPU boost. But it can only do its trick on single words, not phrases. Earlier I mentioned how little the program offers a user who has gained confidence and skill. That's not entirely accurate, thanks to its most surprising super power: macros. Yes, you read that right. This word processor designed for children includes macros. They are stored at the application level, not the document level, so do keep that in mind. Twenty can be defined, each consisting of up to 32 keystrokes. Running keystrokes in a macro is functionally identical to typing by hand. Because the program can be driven 100% by keyboard alone, macros can trigger menu selections and step through tedious parts of those commands. For example, to save our document periodically we need to do the following every time: That looks like a job for to me. 0:00 / 0:23 1× Defining a macro to save, with overwrite, the current file. After it is defined, I execute it which happens very quickly in the emulator. Watch carefully. If you can perform an action through a series of discrete keyboard commands, you can make a macro from it. This is freeing, but also works to highlight what you cannot do with the program. For example, there is no concept of an active selection, so a word is the smallest unit you can directly manipulate due to keyboard control limitations. It's not nothin' but it's not quite enough. I started setting up markdown macros, so I could wrap the current word in or for italic and bold. Doing the actions in the writing area and noting the minimal steps necessary to achieve the desired outcome translated into perfect macros. I was even able to make a kind of rudimentary "undo" for when I wrap something in italic but intended to use bold. This reminded me that I haven't touched macro functionality in modern apps since my AppleScript days. Lemme check something real quick. I've popped open LibreOffice and feel immediately put off by its Macros function. It looks super powerful; a full dedicated code editor with watched variables for authoring in its scripting language. Or is it languages? Is it Macros or ScriptForge? What are "Gimmicks?" Just what is going on? Google Docs is about the same, using Javascript for its "Apps Script" functionality. Here's a Stack Overflow post where someone wants to select text and set it to "blue and bold" with a keystroke and is presented with 32 lines of Javascript. Many programs seem to have taken a "make the simple things difficult, and the hard things possible" approach to macros. Microsoft Word reportedly has a "record" function for creating macros, which will watch what you do and let you play back those actions in sequence. (a la Adobe Photoshop's "actions") This sounds like a nice evolution of the BSW method. I say "reportedly" because it is not available in the online version and so I couldn't try it for myself without purchasing Microsoft 365. I certainly don't doubt the sky's the limit with these modern macro systems. I'm sure amazing utilities can be created, with custom dialog boxes, internet data retrieval, and more. The flip-side is that a lot of power has has been stripped from the writer and handed over to the programmer, which I think is unfortunate. Bank Street Writer allows an author to use the same keyboard commands for creating a macro as for writing a document. There is a forgotten lesson in that. Yes, BSW's macros are limited compared to modern tools, but they are immediately accessible and intuitive. They leverage skills the user is already known to possess . The learning curve is a straight, flat line. Like any good word processor, user-definable tab stops are possible. Bringing up the editor for tabs displays a ruler showing tab stops and their type (normal vs. decimal-aligned). Using the same tools for writing, the ruler is similarly editable. Just type a or a anywhere along the ruler. So, the lack of a ruler I noted at the beginning is now doubly-frustrating, because it exists! Perhaps it was determined to be too much visual clutter for younger users? Again, this is where the Options screen could have allowed advanced users to toggle on features as they grow in comfort and ambition. From what I can tell in the product catalogs, the only major revision after this was for the Macintosh which added a whole host of publishing features. If I think about my experience with BSW these past two weeks, and think about what my wish-list for a hypothetical update might be, "desktop publishing" has never crossed my mind. Having said all of that, I've really enjoyed using it to write this post. It has been solid, snappy, and utterly crash free. To be completely frank, when I switched over into LibreOffice , a predominantly native app for Windows, it felt laggy and sluggish. Bank Street Writer feels smooth and purpose-built, even in an emulator. Features are discoverable and the UI always makes it clear what action can be taken next. I never feel lost nor do I worry that an inadvertent action will have unknowable consequences. The impression of it being an assistant to my writing process is strong, probably more so than many modern word processors. This is cleanly illustrated by the prompt area which feels like a "good idea we forgot." (I also noted this in my ThinkTank examination) I cannot lavish such praise upon the original Bank Street Writer , only on this Plus revision. The original is 40-columns only, spell-checking is a completely separate program, no thesaurus, no macros, a kind of bizarre modal switch between writing/editing/transfer modes, no arrow key support, and other quirks of its time and target system (the original Apple 2). Plus is an incredibly smart update to that original, increasing its utility 10-fold, without sacrificing ease of use. In fact, it's actually easier to use, in my opinion than the original and comes just shy of being something I could use on a regular basis. Bank Street Writer is very good! But it's not quite great . Ways to improve the experience, notable deficiencies, workarounds, and notes about incorporating the software into modern workflows (if possible). AppleWin 32bit 1.31.0.0 on Windows 11 Emulating an Enhanced Apple //e Authentic machine speed (enhanced disk access speed) Monochrome (amber) for clean 80-column display Disk II controller in slot 5 (enables four floppies, total) Mouse interface in slot 4 Bank Street Writer Plus At the classroom level there are one or more computers. At the school level there is a "computer lab" with one or more systems. There were no computers. Hit (open the File menu) Hit (select Save File) Hit three times (stepping through default confirmation dialogs) I find that running at 300% CPU speed in AppleWin works great. No repeating key issues and the program is well-behaved. Spell check works quickly enough to not be annoying and I honestly enjoyed watching it work its way through the document. Sometimes there's something to be said about slowing the computer down to swift human-speed, to form a stronger sense of connection between your own work and the computer's work. I did mention that I used a 4-disk setup, but in truth I never really touched the thesaurus. A 3-disk setup is probably sufficient. The application never crashed; the emulator was rock-solid. CiderPress2 works perfectly for opening the files on an Apple ][ disk image. Files are of file extension, which CiderPress2 tries to open as disassembly, not text. Switch "Conversion" to "Plain Text" and you'll be fine. This is a program that would benefit greatly from one more revision. It's very close to being enough for a "minimalist" crowd. There are four, key pieces missing for completeness: Much longer document handling Smarter, expanded dictionary, with definitions Customizable UI, display/hide: prompts, ruler, word count, etc. Extra formatting options, like line spacing, visual centering, and so on. For a modern writer using hyperlinks, this can trip up the spell-checker quite ferociously. It doesn't understand, nor can it be taught, pattern-matching against URLs to skip them.

0 views
Stone Tools 2 weeks ago

ThinkTank on the PC w/DOS

There's just no denying or sugar-coating it: I'm getting older. My brain ain't what it once was. How many times have I forgotten to take the reusable grocery bag with me to the store? It's hanging ON THE FRONT DOOR AS I EXIT, and I still forget. Yet, with age comes ideas. Even good ones sometimes! Like the grocery bag, they too can be forgotten as I scramble to commit them, but get sidetracked by Affinity Designer wanting to apply an update. "What was I doing? Why did I open Designer ? Ha! That YouTuber's cat just sneezed!" And thus, the moment is lost. I've long been peripherally aware of "outliners" which promise to help capture and develop my fleeting thoughts. "Idea processors," "personal knowledge managers," "mind mappers," software of this ilk has multiplied in recent years, but I wanted to try the one that started it all. I'm a "back to basics" kind of guy, after all. At first glance ThinkTank looks threadbare, but a 240 page manual and a 388 page (!) companion book suggest a richer tapestry. Have I unjustly miscategorized this software as mere weapons-grade text indenters? Is there actually a better way to think? Note: Dollar amounts in parentheses are inflation-adjusted for 2025. ThinkTank is launched in DOS by the .exe file named not for reasons I cannot imagine. A handsomely arranged text mode splash-screen welcomes me in. The date prompt happens with every launch, and most likely believes the year is nineteen twenty-five, not twenty twenty-five. Nothing we can do about that, so with an "n" we begin. First impressions don't do much to dissuade me from my gut reaction of, "We need a 400 page book for this?" Don't get me wrong, I like it! The screen is essentially blank, save for the 4-line prompt area. Contextual (sometimes insufficient) help is displayed there. I find it comforting having ever-present guidance on screen at all times, like a helper watching over my shoulder. I like it, even if I think it could be executed better. (spoilers: we'll see it done better in the next post) Unlike the mnemonics of VisiCalc , ThinkTank keyboard shortcuts almost feel random. Top-level menu commands can be triggered directly without entering the menu, while secondary menu commands (under extra/F10) can mostly be triggered directly. But not always. With the command menu open, options are chosen by arrow keys or a shortcut key, displayed in the bottom bar flanking the left and right. In the screenshot above, "insert" will "add new headline(s)" and can be activated by the "Ins" (Insert) key on an extended keyboard. "Insert" will "add". Word choices like that are trivial in the long run, but also make me "hmm...." as they did some reviewers. As a self-professed "idea processor," what precisely does ThinkTank want to help me build? The brainchild of Dave Winer, the core conceit is to surface the invisible computer science notion of a data "tree" into a visual structure. You see this nested structure everywhere now, even just navigating the contents of your hard drive in list view. Folders, which contain files and folders, which contain further files and folders, ad infinitum. To start entering an outline for this very post, I type a header in Insert mode, hit , type in another header at the same level, and continue down recording top-level thoughts. Left and right arrow will indent/unindent to capture subordinate ideas. This is fast and efficient for "first capture" of an idea, no doubt about it. When done, every header is auto-prefixed with either a or meaning "has nested data" or not. headers can be expanded and collapsed to reveal/hide subordinate data; said data may or may not be currently visible. Visually, there is no distinction between "expanded/collapsed" state, as disclosure triangles tend to signify these days. At this point, even Electric Pencil could serve as a simple outliner if this is all you need, and Pencil 's first manual was a mere 26 pages. ThinkTank justifies its existence through specialized tools for preserving and manipulating data as a tree. William R. Hershey wrote for BYTE Magazine in May 1984, "Computers use trees all the time in their internal workings. Users, however, are seldom aware of them because programs reveal only the forest. With Thinktank 's tree structure out in the open, we can expect to see some very interesting uses made of this program." As far as I can tell, ThinkTank led the way on this. "Folding" data at the tree level really is a nice way to visually simplify a project, to focus on a specific sub-unit of information. Headings can be reordered, "promoted" in hierarchy, and so on. If a heading has subheadings, manipulation of the major heading affects all nested data as a singular unit, like how moving a folder also moves the files it contains. You get it. We know it can build an outline, but ThinkTank promises much more than that. Can it process my ideas? Can it help me think? In my most humble (and correct!) opinion, the user interface for a tool devoted to ideas and thoughts should be as second-nature as possible. Contrary to a previous post, this is one time where friction really is bad, due to the stated goals of the program. In this case, the friction exists in our minds and ThinkTank is explicitly offering to function as WD-40. ThinkTank takes a stab at effortless idea recording by adopting the number pad as a kind of central control panel for navigation. The first impression is that this will handle much more minute-to-minute editing than it actually does. It's useful enough for exploring a finished outline, but doesn't prove particularly helpful when trying to process and refine the outline. In practice, I find I jump around the keyboard a lot, from number pad to main keys to F-keys. There's a lot to remember in the usage of the program, even as I'm simultaneously trying not to forget my good ideas. This is not quite the smooth process I'd hoped for. I'm not feeling flow . Flow escapes me in part due to software usage rules which don't come naturally. The book I'm studying, Mastering ThinkTank on the IBM-PC by Jonathan Kamin, spends an inordinate amount of time talking about two things. First, it is chockablock with stories about fictional characters in the fictional company Sky High Technologies, and how those people use ThinkTank individually and as a team. Entire chapters are devoted to these people. Second, it talks about the rules of tool usage, and there are a lot of them. Many describe, with fairly long-winded stories, what will be manipulated at any given moment when enacting a menu action, and where to position the cursor to achieve a desired outcome. For reference, in the command glossary, the "Copy" function has five different entries, with five different keyboard commands, describing the unique rules around copying under various circumstances. "Delete" has six such entries. For crying out loud, the key alone is so convoluted it has an entire section in the back of the book devoted to its quirks. Where modern software would have you expect to handle indentation level editing, in ThinkTank it is used to "mark" headers. Marked headers receive a 🔹symbol in place of a or , which has the unfortunate side-effect of removing header state identification. Today we call this "selecting" and here it's been. . . let's call it "overthought." Marking can be done in three ways: by the key for individual items, by the "mark" key to mark "all" or "none" of the items in a header group, or by "keyword" then to "mark" every item which contains your search keyword. Three ways to mark, all with different key commands and under different menus. Once we have our marked elements, we can "gather" them. This means to cut all marked items out of their current positions and paste them into a new top-level group with the fixed name "gathered outlines." In this way, it is proposed, we can quickly rearrange our outline to reflect new insights gleaned by inspecting the ideas committed during the initial capture. Keyword mark-and-gather presumes the user has applied keywords to headers carefully, so as to facilitate this impromptu rearrangement. Put bluntly, to get the most out of ThinkTank we must meet it halfway, subtly changing our way of thinking to more align with the program. The book explicitly acknowledges this. The "cloning" function further opens up the possibility of using ThinkTank more like a database. Clone a header to another spot and those two headers maintain a quantum link, signified by the symbol. Once again we lose insight into the or status of cloned items. That said, changing one clone instantly changes all clones, a nice "could only be done with a computer" enhancement over paper methods. Outlines are not restricted to mere "headings with subheadings." While full-blown media attachments cannot be embedded, as later, more advanced outliners (and operating systems) allow, we can add long-ish chunks of text. At any level of an outline, tap and an inline word processor, complete with rulers and tab stops, springs to existence. Yes, ThinkText has word processing functions built right in, with caveats. There's no spellcheck or thesaurus, and formatting options are restricted to whatever you can do with a tab key and the space bar. Additionally, each subhead can hold only one block of text, up to a maximum of about 20,000 characters each. Once typed, those text blocks can be moved around at the header level easily. Moving text between blocks, or between headers, is basically easy if you remember that is "paste." (the program will not inform you of this, unlike other tools where it will inform you of the state) Hershey's review in BYTE notes, "Differences in the sequence of commands for creating and editing paragraphs is bothersome. Within the same paragraph, the New mode, for example, requires a different set of cursor moves than the Edit mode..." My intention was to write this entire article in ThinkTank and once again, Hershey and I agree, "I originally intended to write this review entirely with Thinktank. But the editing routine for Thinktank paragraphs is so cumbersome that I decided to use the Word Juggler program from Quark, which now has me spoiled. I still believe, however, in the value of Thinktank for organizing information and writing outlines." In essence, arranging top-level thoughts in an outline form is a good way to mentally organize ideas. As a way to write a fleshed out document, it's frustrating having to break up longer texts into dozens of little chunks. But, I did use this tool to capture a fleeting sentence here and there. At the end of the day, the document editor is a delightful addition while simultaneously being too much to bother with. Is there a German word for this? There are quite a lot of fumbles in the user experience. I'll start with how a simple toggle state for a header has three separate keys for expanding and collapsing. Just hitting should collapse/expand as applicable, no? No. We need to collapse and to expand. almost functions as a toggle, because why use the two existing keys when you can assign a third key while also subtly altering its usage? There is a very nice function called "hoisting" which "zooms in" and filters out everything but the selected header level and its sub-items. "dehoist" zooms back out. "promote" will shift a selected header (and sub-data) "up" a level but there is no "demote" equivalent. Doing that requires a "move" which might not capture all previously promoted data. "delete" a header can be undone by counterintuitively selecting "delete" again, then "undo." ThinkTank also offers alphabetic sorting, which feels counter to a tool framed around the organization of ideas rather than lexicon. At whatever level your cursor is at in the tree hierarchy, the "alpha" function will sort all headers of the same level in ascending order, dragging their subordinate items along with them. No, you can't do the opposite and get descending sort. Outside of database-style header entries, I can't see how to work this into the creative process. But, it's available and does give the program flexibility to be used in non-obvious ways. Of course, every time I say "opposite" I mean "opposite to my personal way of thinking." Like grammar, software also has the concepts of "verbs" and "nouns." "promote" is a verb, which we can select as our intended action, then we select a header, the "noun" in this case, onto which to apply that verb. The "opposite" way to consider this would be to select a noun, then choose which verb to apply to it. This, for example, is how marking keywords works. Choose the noun "keyword" then the verb "mark." ThinkTank is inconsistent in choosing one approach over the other. Sometimes it's verb-first, sometimes it's noun-first. I am not proposing either is "better" than the other. I simply want to note this as a philosophical difference in how two people may approach the same problem. In fact, this all points to the core, central matter which lingers over this entire software genre. It's a deep question not even a Juggalo can answer. This gets to the heart of my interest in, and frustration with, this software. When it works like me, it's great and when it doesn't, it's annoying; there's not a lot of in-between. In fact, I bristle when it works counter to intuition. It's almost a personal insult. But why? Could this be a driving force behind so many attempts to re-envision and/or re-create such software? Have you seen how many apps there are today? Drummer , OmniOutliner , Workflowy , Dynalist , Checkvist , TreeLine , Scrivener , Cloud Outliner , Capacities , Logseq , DevonThink , CarbonFin Outliner , Tinderbox , and Roam . Should have kept an outline of outliners; feels like I'm forgetting something. 🤔 "I'm going to build an outliner that works !" must be a common developer thought for there to be so many competing products. Heck, I've even thought it a few times myself while working with ThinkTank . Heck again, Dave Winer himself seems unable to resist the siren's call. His repo for Concord was updated just last year; that marks 50 years of development on the matter by the same man. Interestingly, Winer didn't conceive of the outliner as a writer's tool, but rather for software developers. Developers rejected it outright, but writers gravitated to it, much to his surprise. He developed ThinkTank with their needs in mind, though I think it is important to note that he himself was not a writer. Some think outlining should happen early and first, to kickstart the writing process. One study published in 2023 concluded, "From the results, can be concluded that there is a significant effect of the Outline Technique on Students' Writing Skills in Coherent Paragraphs..in the 2022/2023 academic year." Conversely, Peter Elbow, Distinguished Professor of English at the University of Massachusetts, abandoned outlining entirely. Winer's core functionality of "outlining" has been incorporated into any number of products, including venerable Microsoft Word back in v3.0 for DOS . In a way it has become "just the way we do things." That ubiquity definitely speaks to the lasting allure of the power of the outline. There remains a subset of the population, however, who are convinced that outliners are but a baby step toward something greater. We don't need outliners, we need, like, super -outliners! Knowledge itself must be tamed and wrangled into submission. Personal knowledge managers are the evolution of the outliner into something greater, for which 17K weekly visitors to r/PKMS are clearly on the hunt. I had no idea this category of software attracted users so (I will choose my word carefully here) passionate(?) about finding the "right" or "best" PKM workflow . As a man who maintains a blog about productivity software pre-1995, I am certainly not one to judge another's passions. Even with the research I've done, I'm fuzzy where lie the boundaries between outliners, PKMs, mind mappers, "note takers" and so on. Is a word processor which contains an outliner fair game in the PKM world, or is that a withering insult to the genre? Did I just get myself added to a "PKM Morons" outline by asking that question? My initial plan was to sample the latest outliners, as suggested by the Reddit forums, and see what they offer compared to ThinkTank . I'm sorry to say, I gave up; there's just too many. Outside of very focused, simple outliners, most felt heavy and cognitively burdensome. In fact, I've come out the other side of this research to believe that no idea processor can ever win, because the concept of "idea" is itself not a fixed thing. How we think drifts over time, sometimes subtly, sometimes not. Just when we believe we’ve captured the shape of our own mind, it slips through our fingers like mercury. Using software like this has felt a bit like trying to sculpt with quicksilver. I committed myself to giving ThinkTank a fair shake and organized this post with it before committing anything to the blog. I did find it useful for organizing my initial thoughts, but then I found I didn't really need the advanced tools. The high-level structuring that proved useful could have been done (and has been to date) in any word processor or blogging platform. I can envision scenarios where the advanced tools would be useful. The book offers good examples, mostly centered around using ThinkTank like a Rolodex or light database. So use it more like a PKM than an idea processor? The core concept, that my thoughts are so scattered that I'll transcribe them willy-nilly to rearrange later simply doesn't match the way I think. As I thought of new ideas, I added them into their appropriate tree position at that moment. When I was done, everything was naturally self-ordered as a result. Where the program really failed me, personally, was in feeling denied a flow-state. There is a mechanical feeling to its tools which was, to me, at odds with its stated goal. Menu actions get the job done at a level which does technically do what was asked, but whose aftermath tends to require no small amount of housekeeping to reorganize everything back into a tidy structure. You have to really love moving things around, promoting and demoting, copying and cloning, and generally just fiddling about with your outline. I can imagine there are personality types who are deeply attracted to this kind of tinkering, but it didn't come naturally to me. Bullet dodged? It takes two to love and ThinkTank is making a good effort, even if it fumbles on the UI. The onus is on me to extend equal love back, but I can't. Sorry, ThinkTank , it's not you, it's me. Ways to improve the experience, notable deficiencies, workarounds, and notes about incorporating the software into modern workflows (if possible). DOSBox-X did a fantastic job for me right out of the gate. All I really did to enhance my user-experience was edit the file with the line This mounted ThinkTank upon program launch, ready to go. I didn't encounter any reason to boost the "cycle speed" for the emulator during my work sessions. Probably my outlines were too simplistic to push the program in any significant way. With DOSBox-X, saving data goes straight to the native OS file system. So there is no trouble getting data "out" of the emulator. The real trick is in getting the data into a format that is useful. ThinkTank can save data via the menu option, going straight to . This gives three options: formatted, word processor, structured. specifically means WordStar compatible, which ultimately means just a raw text file, each header on its own line, formatting removed. replaces all of the indentations with decimal numbering, such that you have headers numbered like , and so on. gives us, perhaps, the best shot at automating the format and massaging it into Markdown (for example). All indentations are replaced with text prefix markers The format is rigid and consistent, meaning a find/replace routine should be able to swap those prefixes out for Markdown equivalents fairly easily. I took a stab at it in Python, though I'm not completely happy with the final result. Winer's "antique" releases OPML 2.0 spec Concord (Little Outliner's engine) DOSBox-X 2025.10.07, Windows x64 build Default hardware configuration (3000 cycles/ms) ThinkTank folder mounted as drive E:\ 2x (forced) scaling TrueType text (sorry to the bitmap purists!) ThinkTank v2.41NP for DOS (courtesy Dave Winer's website, link above) Neither the application nor OS ever crashed. It was a stable, smooth, snappy experience start-to-finish. For my tastes, it separates the outlining from the writing a little too discretely. I'd like to be able to slowly change an outline into a finished work, but that's pretty much out of the question with these tools. A memory-resident version of ThinkTank called Ready! allowed a slightly stripped down version of the outliner to be called up with a hot key. It would be possible then to have the outliner and word processor running concurrently, which would mostly alleviate my concern, as it would be easy to jump between programs on-the-fly. Inconsistent terminology and keyboard usage can be frustrating to learn. Tools can be half-baked. Why just-and-only "ascending alphabetic" sort order?

0 views
Stone Tools 1 months ago

CAD-3D on the Atari ST

There are wizards among us who can bend hardware like a Uri Geller spoon to perform tricks thought impossible. Bill Budge springs to mind, with Steve Wozniak calling Pinball Construction Set the "greatest program ever written for an 8-bit machine." A pinball physics simulation, table builder, paint program, software distribution system, and more, driven by one of the first point-and-click GUIs, all in 48K on an Apple 2. Likewise, Bill Atkinson seemed able to produce literal magic on the Macintosh's 68000 processor. Even when he felt a task were impossible, when pushed he'd regroup, rethink, and come back with an elegant solution . QuickDraw and HyperCard are legendary, not just in what they could do, but in how they did it. Meanwhile, over on the Atari ST, Tom Hudson was producing a steady string of minor miracles. With CAD-3D , he both pushed the machine beyond what many thought possible, while also creating something that had its users drooling at the prospect of advanced systems yet to come. For the most part, the ST crowd had to wait essentially forever for machines that were up to the mathematical task. Hudson, frustrated with Atari's broken promises, and anxious to continue pushing the limits of 3D modeling and rendering, defected to DOS. Atari would die, but Hudson's work would live and grow. You know it today as 3ds Max . Let's see how it started. This quite literally marks my first time using an Atari ST GEM environment and software. I don't anticipate any serious transition pains coming from an Amiga/Mac background. The desktop has a cursor and a trashcan; I should be fine. My first 3D software experience was generating magazine illustrations in Infini-D on the Macintosh around 1996. Since then, form-Z , Poser, Bryce , Strata Studio Pro , and Cinema 4D came and went; these days its just Blender . It's fair to say I have a healthier-than-average amount of experience going into CAD-3D . I found two tutorials worth looking into. The first is in the manual; always a good starting point. The second is a mini-tutorial which ran in Atari ST Review , issue 8, December 1992. The cover disk, a literal 3.5" floppy disk glued to the cover, included CAD-3D 1.0 and 2.0 on it. As far as I can tell, it was the full featured software, not stripped-down "demos." A special offer in the magazine gave readers a discount on ordering the manual for £34 (about $50 US, $115 adjusted for 2025). Those suckers could have saved a bunch of money if they'd waited 30 years like I did. The Atari ST emulator STEEM comes bundled with a free operating system ROM replacement called EmuTOS. At first, it seems like a nice alternative to GEM/TOS until I try to run CAD-3D . I have obtained a TOS which works. I am accepting NO follow-up questions. Upon boot, I get a desktop icon of a filing cabinet (?) for floppy disk B (??) even though I don't have a disk in that drive (???). Do I want a "blitter?" CAD-3D wants "medium resolution" (640x200), which forces GEM to draw icons and cursors at half-width, giving the interface an elongated look. Click-and-drag operations in GEM need a half-second pause to "grab" a tool, lest the cursor slide off the intended drag target. Coming from the Mac and Amiga, I get distinct parallel universe vibes. The aspect of GEM driving me most crazy is the menu bar. It is summoned by mere cursor proximity, no click required, but requires a click outside the menu to dismiss. Inadvertent menus which cover the tool I want to interact with require an extra dismissal step so I can continue with the interface element it obscured. It's maddening. Launching the app is relatively quick and I can kick the emulator into overdrive, which exhibits rreeppeeaattiinngg kkeeyyss. But this will be necessary from time to time, as it would for any older system trying to do the math this program demands. Once launched, I'm hit with a pretty intense set of tools and windows. The left 1/3 of the screen is a fixed set of iconography for the tools. These were hidden away under menus in v1.0, but now they're front and left-of-center. The four-way split view on the right 2/3 of the screen is par for the modeling course. What's different here is the Camera view is "look, but don't touch." I spent a lot of time trying to move things around in there before I remembered "RTFM". There was a moment early on with Electric Pencil when I felt attuned to its way of thinking, summoning menu commands without reading the manual. Deluxe Paint was the same, the tools doing intuitively what I expected. I really enjoy such moments when an affinity between the interface metaphor and my exploration is rewarded. CAD-3D is resisting this, preferring to remain inscrutable for now. Screenshots in the manual contain a lot more fine detail than I see while using the program. In the GEM desktop preferences there was a greyed out "high resolution" option, unlocked by setting the emulator itself to a beefier 4MB MegaSTE. This hardware upgrade brings the display up to Macintosh-style high quality B&W, which feels very nice to use, but for this I want color so back to medium-res for me. While the top/right/front views function similarly to modern modelers, these have one notable difference. They are not "cameras" into those views, they are showing you the full, literal totality of a cube which contains your entire 3D world. Need more space? Make your objects very small. Objects are too small to see? Well, that's just how we do things here in 1986. It feels claustrophobic, but is also a simple mental model for comprehending "the universe" of your scene. What I'm quickly learning is how the program is configured to conserve processing time and memory at all times. Changing a value, say camera zoom, doesn't change anything until you "apply" it. Shades of VisiCalc 's "recalculate" function. The low memory inherent to the hardware is subverted by a "split the advanced functions out into separate products" approach. Complex extrusions are relegated to Cyber Sculpt . Model texturing is available in Cyber Texture . Advanced compositing can be done in Cyber Paint . Memory budget is accessed by the big button just left of the center of the screen. This will show how close you are to maximizing the vertex/face count of the scene. Again, shades of VisiCalc's free-memory counter ticking down to zero as you work. Adjusting objects, by scale or position, requires selecting them. Despite the mouse and pointer GUI interface, there is no direct manipulation of objects to be found here. If you enjoy grabbing handles on objects and dragging them into scale and position, you're going to have some hard habits to break. Object selection is convoluted; the basic tenant is "visible = selected." The "Objects" modal window provides a button for every object. Each button toggles its associated object's visibility after you click "OK." Selections here will modify the currently active group, designated by the tools mid-screen. Scaling sliders (left side of screen) affect every visible object along the active view's axes. So horizontal/vertical in "Top" view scales different axes than "Front" view. Per-object scaling is possible, but only if you deselect all but one object. Switch from "Scale" to "Rotate" and the scaling sliders switch their function accordingly. Selections can be rotated around one of three pivot points: view center, selection center, or an arbitrary point within a given view. Sliders control horizontal and vertical rotation, but the third axis can also be rotated upon, though for some reason it was decided this should be via a pop-up window pie chart. The ST in medium resolution can display up to 16 colors. Applying a color to an object is setting the "brightest" color for rendering that object. Any other colors within that color's (user-definable) group will fill in the mid and darker tones. Simple palette gradients make for "realistic" lighting, but bright orange highlights with fluorescent green shading is also possible, if you want to fight the power. In the toolbox, at the bottom, is an unassuming button labelled . This is a boolean tool, presented as a kind of equation builder called "Object Join Control." Choose an action: Add, Subtract, And, or Stamp. Select the first object then the second object, and name the resulting object. "Add" will produce something like "Subtract" will read and so on. With this tool we have what we need to sculpt complex, asymmetric figures. To paraphrase Michelangelo, the shape we want is already inside the primitive volume. We just have to remove the superfluous parts and set it free. If only I were so talented. Like sculptors of yore, setting shapes free can take a lot of time. Click "OK" on a join operation and prepare to wait, depending on the number of faces involved. I put down a default sphere "3" and a default torus, shrank the torus a bit to intersect with the sphere's circumference, and requested . Now I've done it. Even at top emulator speed in overdrive I've been waiting well over 20 minutes for the subtraction to complete. Did I kill it? Is this like in The Prisoner when #6 made the computer self-destruct? Despite the computation time, there are very good reasons for performing booleans beyond the sculpting power they impart. Earlier I noted that there is a vertex/face count limit on the scene. Intersecting objects added together can reduce their vertex count by eliminating interior and unused faces. It also turns out there is a 40 object limit to our scenes. Adding two objects together reduces them to one, deleting the originals. Understand that there is no undo function. Only a rigorous discipline of saving before performing such destructive functions will save you from yourself if you needed the original objects. This will become the mantra for this blog, "Save often, kids." Boolean functions respect object colors, which makes for neat effects. Subtract a yellow sphere from a purple cube and the scoop taken out of the cube will be yellow while the rest of the cube stays purple. A pleasant surprise! The "Stamp" option tattoos the target surface with the shape and color of the second object. Stencil text onto surfaces (provided you have 3D text objects), add decorative filigree, generate multi-color objects, and so on. It kind of depends on how well you can master the stiff, limited extrude tools to generate surfaces worth stamping. OK, this torus/sphere boolean operation still isn't done, so I'm chalking it up as, "This is a thing CAD-3D cannot do." While waiting for the numbers to crunch, I realized I could create the intended shape manually with a custom lathe. Only while experiencing the computational friction did the second method occur to me. That reminds me of something I've been thinking about since starting this site. Working with retro-computing means choosing to accept the boundaries of a given machine or piece of software. Working within these boundaries takes real, conscious effort; nothing comes easy. Meanwhile, technology in 2025 is designed to make the journey from "I want something" to "I have something" instantaneous and frictionless. It is a monkey's paw fulfilling wishes, and like a monkey's paw, it can go wrong. Not just "turkey's a little dry" wrong, but "it obscures objective truths" wrong. The first is seen with (say it with me now) the spread of AI into everything. You want something? Prompt and get it. Our every whim or half-considered idea must be rewarded, nay PRAISED! We needn't even prompt, services will prompt on our behalf . Every search delivers what you asked for, even if it delivers lies to do so. There are plenty of others more qualified to discuss the ramifications of AI on the arts, society, and our very minds. For this article I want to use it to illustrate what much of tech has become: an unchallenging baby's toy. A pacifier. Another way "friction" is stigmatized as detrimental is, admittedly, a personal bias but I know I'm not alone . UI density is typically considered "friction" and it's "bad" because a user may disengage from a piece of software. To keep engagement up, interfaces simplify, slowly conflating "user-friendly" with "childlike." The net result is a trend toward UIs with scant few pieces of real information distributed over vast plains of pure white or oversaturated swoops of color. UI/UX professionals like to call it " playful " or " delightful ." I don't want to come off as a killjoy against "fun" user interfaces , but I'm an adult. I eat vegetables as well as candy. Where are the vegetables in the modern tech landscape? Where is the roughage which requires me to chew on its ideas? The industry wants to eliminate friction, but without friction there can be no spark . "Spark" is what I felt struggling against a hyper-strict budget during my publishing days. I found it when examining the depth of Deluxe Paint in the animation controls. It is what I felt when I overcame the Y2K bug in Superbase . I felt it again just now as I realized the lathe solution while waiting for the boolean to finish. Each little struggle forced me to shift my frame of mind, which revealed new opportunities. If my very first thought is brought to life instantly, with no artistic struggle (one hour of prompting is not a struggle), then why ever "waste time" thinking of second options? Or alternate directions? Even, heaven forbid, throwing ideas away ? These common creative pathways are discouraged in a modern computing landscape. Put another way, I can't think of a time when my first idea was my best idea. Given the protective bubble-wrap our software tends to wrap itself in, perhaps it will not surprise you that computer literacy and computational thinking scores have dropped in the US over the past five years. Some readers may be thinking, "In the Deluxe Paint article you picked on Adobe for airplane cockpit UIs. Isn't that the "friction" you're describing?" That is complexity , which can cause a type of friction, true. But it is the friction of a rug-burn, not a spark. Back into the program, I've only touched on it so far, but that "Superview" button is far more important than its obfuscated name suggests. That is the renderer. Double-click it for options, like rendering style and quality, including stereoscopic if you're lucky enough to own the Stereotek 3D glasses. Images, for example previous renders, can be brought in as a background for a new render. All drawing is restricted to the same 16-color palette though, so plan accordingly. The basic wireframe renderer is quite interesting because it provides real-time interactive view manipulation, like a video game. That makes sense because the algorithm that drives this view came from a video game. It was purchased by Hudson from Jez San, the creator of real-time 3D graphics game Starglider . Even if you never touched Starglider , you know San's work today. He was a developer of the Super FX chip for Nintendo, which made Starfox on the SNES possible. CAD-3D has one more significant trick up its sleeve. Using a simple, clever method of XOR compression, animations can be generated. Turn "ON" animation with the clapboard icon. Set up the scene and camera position for a frame. Capture a render with "Superview." Commit that frame to the sequence with the frame counter icon. Repeat until you're done. It's stop-motion animation, essentially. This is time consuming and requires some blind trust as there is no previewing your work. Luckily, a more elegant, and far more complex, option comes bundled on disk in the form of an entire movie-making scripting language . I tried to understand it, but my utter lack of ability to make movies was exposed. I wanted to at least try the on-disk animation tutorial. Unfortunately, the program which can play back the XOR compression method is nowhere to be found. No disk image I could find contained it. Regardless, the scope of what was being attempted with this product, and really the entire suite, is clear. ANTIC Software wanted your Atari ST to be nothing short of a full movie-production studio. If there were some way to calculate price per unit of coolness, an ST paired with CAD-3D may be quite high up that chart. Put simply, no. On its own CAD-3D lacks modeling and rendering tools which many would consider absolute basics in a modern workflow. Lighting control is restrictive, there are no cast shadows, no dithering to make up for the limited rendering palette, extrusion along splines isn't possible, views into the world are rigid and hard to work in, and basic object selection requires a clunky series of menus and button presses. A theoretical v3.0 could have been amazing. But I must concede a few points here. First, this is really just one part of a larger package. It's the main part, but not the only part. The bundled scripting was expanded into Cyber Control and the bundled "super extruder" was expanded into Cyber Sculpt, for example. There was a VCR controller, genlock support, stereoscopic 3D glasses support, multiple paint programs, a sound controller, and more. Certain deficiencies are more than adequately compensated for if we take the full suite into account. Second, there's something to be said about the simple aesthetic of CAD-3D . There is absolutely a subset of people out there who just want to play with 3D like a toy, not a career. I think the success of PicoCAD speaks to this; just look at the fun things people are creating in a 128x128, 16-color modeler in 2025. Third, working within limits is, paradoxically ( and also well-acknowledged ), creatively freeing. The human need to bend our tools beyond their design is a powerful force. We see it when a working Atari 2600 is built within Minecraft . We see it in the PicoCAD projects I linked to above. Full-screen, full-motion video on a TRS-80 Model III ? Hey, why not? In that sense, I can feel a pull toward CAD-3D. I managed to model a none-too-shabby CX40 joystick, and I catch myself wondering now what more I could do. I started feeling a groove with its tools, so how far could I push it? How far could I push myself ? I hope you'll understand my positive take on CAD-3D when I say, there is friction to be found here. Ways to improve the experience, notable deficiencies, workarounds, and notes about incorporating the software into modern workflows (if possible). As you may expect, enable the best version of the system you can. TOS 4.x seems to be incompatible with CAD-3D , so keep the OS side simple. In fact, it's better to crank up the virtual CPU speed than to fumble around with toggling on/off the warp mode. It's less fiddly and doesn't suffer from key repeat troubles. Steem SSE 4.2.0 R3 64bit on Windows 11 Emulating a MegaSTE 4MB RAM TOS v.???? (it doesn't report its version number?) Stereo CAD-3D v2.02 Neither the application nor OS ever crashed on me even once. There's a lot to be said for that stability. Converting the 3D data into a format that could be brought into Blender , for example, seems like a bespoke conversion tool would be needed. I've not found such a thing yet. .PI1 render files can be converted into .pngs thanks to XnConvert . I don't know of a way to convert animations, though a capture system like OBS Studio would work in a pinch. You could also render each frame out separately and stack them together into a movie file. ImageMagick's function can take a folder of sequentially numbered images and stitch them together into a movie. Rendering quality. The engine can't do dithering, and the flat colors of the limited palette can visually flatten a render that isn't very carefully lit. Getting around object limitations means locking yourself out of scene design flexibility as you "Add" multiple objects together to collapse them into single objects and reduce the object count. The object selection process really hurts.

0 views
Stone Tools 1 months ago

VisiCalc on the Apple II

Unless Dan Fylstra had the world's largest vest pockets, Steve Jobs's story about "Dan Fylstra walked into my office and pulled a diskette from his vest pocket" to introduce the spreadsheet in 1977 is apocryphal. The punchline, that VisiCalc propelled the Apple II to its early success, is supported by the earnings calls. While VisiCalc remained exclusive to the Apple II, estimates say that 25% of all Apple II sales (at $10K a pop, in 2025 money) were solely for the purpose of running VisiCalc . An un-patented gift to the world , it would go on to be subsumed by the very industry it spawned. What's surprising in looking at VisiCalc today is how much it got right, straight out of the gate. Dan Bricklin's clear product vision, combined with Bob Frankston's clean programming produced a timeless, if clunky by modern standards, killer app. Here at Stone Tools, "clunky" does not equal "useless." I have copies of Spreadsheet Applications for Animal Nutrition and Feeding and VisiCalc and I'm ready to ration protein to my swine. First, Happy Spreadsheet Day for those who practice. Did you buy a big sheet-cake to celebrate? Wait a second. Spreadsheet. Sheet-cake. Spreadsheet-cake. Did I just invent something new?! To understand VisiCalc 's legacy, I'm working through the tutorial that shipped with the software . I think it's important to look at how the software pitched itself to customers. Then, I will examine Spreadsheet Applications for Animal Nutrition and Feeding by Ronald J. Lane and Tim L. Cross. I want perspective on how it can be used to assist business owners of all types, not just the white-collar office executives depicted in the advertising. Booting into VisiCalc in AppleWin from Windows 11 desktop is fast and frictionless, though I do have to answer at every launch, "Do you want to use 80 columns (Y/N)?" Of course the answer is YES, but until AppleWin supports the 80-column Videx card, I must reluctantly answer NO. SuperCalc , a contemporary rival, does run in 80 columns. That's if I can boot SuperCalc . AppleWin complains that it needs 128K of RAM, which is supposedly what it has. For now, I'll leave that mystery to the AppleWin developers . (P.S. - the trouble I had at the time of writing has since been resolved at the time of publishing) Once launched, I'm at a screen layout recognizable even to a generation born post-Google; info bar across the top, input bar below it, then the spreadsheet proper. Alphabetic column identifiers run horizontally and numeric row identifiers run vertically down the left-hand side of the screen inscribing the familiar "A1" system. A kindergartner who knows their numbers and ABCs could find cell . Type and what first appears to be "the entire alphabet" pops up at the top of the screen. Sometimes referred to as the "slash menu," it remained a fixed and expected option in spreadsheets for many years after its introduction, and still exists ! It's cryptic at first, but once you know, you know. Further submenus follow a common logic and tend to be similarly mnemonically simple to remember. opens the formatting menu and sets the cell to "dollars and cents." opens the window menu and splits it vertically at the cursor position. inserts a new column. Destructive options, like to clear the entire sheet are always behind a safety prompt. More complex menu options, like for cell replication step through its usage, decision by decision, to perform the action exactingly. It's far more user friendly than one may expect of the time, though an online help system would still be appreciated. As a time traveler from 2025 visiting 1978, there are absolutely mental adjustments needed. Let's start with the below screenshot. represents three discrete pieces of unrelated information: As the sheet grows, VisiCalc dynamically allocates RAM to accommodate and the free memory indicator drops accordingly. A flashing means your sheet has outgrown available RAM. While VisiCalc dynamically allocates RAM it does not dynamically de -allocate it. Save-and-reload will force the sheet into the smallest memory footprint necessary to run it. Still not enough memory? Quick, start a new spreadsheet and see if you can afford a computer upgrade! As I noted earlier, it's important to view the software through contemporaneous training material, though it is also impossible to forget what I've learned about spreadsheets since 1978. Gilligan's Island s aid a bamboo pole to the head can temporarily erase memories but it hasn't worked yet. VisiCalc 's tutorial has to pull triple-duty. Being the first computerized spreadsheet, it has to help us understand, "What is a computerized spreadsheet?" Then it has to prove, by example, the benefits over traditional pencil and paper methods. Lastly, with foundational knowledge set, it must introduce us to the extended set of tools and purposes thereof. The manual pulls this hat-trick off admirably. The quality of the manual was foremost in the publisher's mind from the start. Personal Software co-founder Peter Jennings, creator of MicroChess , recounts the approach taken toward documentation . The tutorial is divided into four sections, each of which builds upon the previous. It offers gentle guidance into the world of computers and spreadsheets, carefully navigating the reader through the unfamiliar interface and keyboard commands. One thing I'm finding as I continue the tutorial each day is how easy it is to recall what I learned in previous days. Even after two days away on other matters, I still find previous knowledge to be "sticky." That owes a lot to the intuitiveness of the menu commands; every tool feels logical and carefully considered for the task. Additionally, there is a kind of rudimentary "autocomplete" for functions. Type and VisiCalc will fill in . You won't get as-you-type autocomplete, but you will make a best effort to give you the correct function name even if the best you can do is half-remember it. The general usage of the program is to move the cursor around on screen and start typing into the highlighted cell. Type text to create a "label" and type numbers to create a "value." This binary distinction essentially persists to this day, even if formatting control over the cells gives us greater flexibility, or "values" have been sub-typed to be more precise in their intent. Values are not restricted to simple numbers or math equations. Functions exist, like , , or which can be chained and nested with other mathematical functions to create very complex formulas. Functions update themselves based on the latest sheet calculation, and this dynamism obsoleted paper methods instantly. It still feels a little magical to see dozens or hundreds of numbers update in a cascade across a large sheet, each cell dutifully contributing its small part to the overall whole. "replication" is one of the most powerful tools in VisiCalc. Cell formulas can be replicated, i.e. copy-pasted, from one-or-a-group of cells to one-or-a-group of cells. When replicating, we are given a chance to shape how each copy of the formula references other cells. Source: Cell A3 adds A1 + A2. Replicate A3 to B3 and we're asked, for each cell reference, if we want it to be relative to the new cell or fixed ("no change" in VisiCalc parlance). We'll answer relative for the first and fixed for the second. Target: Cell B3 now adds B1 (relative) + A2 (fixed) This functionality remains essentially unchanged today. In Excel, click a formula cell and a small dot appears in the bottom right corner. Drag that dot out to marquee a rectangle of cells, inside of which every cell instantly and automatically receives a relative-only copy of the source cell's formula. In VisiCalc I'm prompted for a "relative or fixed?" decision for every cell reference in every target cell. Replicate a formula with 5 cell references across a column of 100 cells and be ready to answer 5 x 100 prompts. Unfortunate and unavoidable. Once I have even a mildly complex sheet, perhaps one that includes processing transcendental functions , making changes becomes time consuming as I have to wait for the entire sheet to update with every change I make to any cell. for "global recalculation manually," turns off the sheet's automatic recalculations with every cell change. When I want to, I can explicitly demand a full recalculation of the sheet with the cute command. This saves a lot of time when making multiple sheet changes, or even setting things up for the first time. You know what else saves a lot of time? Setting the emulator to run at the fastest speed possible. It's so fast I wasn't even sure it had done anything. It instantly transforms the system from "fun, if slow" to "I could be productive with this." This is not to take away from the simple joy of watching the sheet work, but sometimes enough is enough. There's an interesting phenomenon in culture where the ideas and language of a particular work of art become so utterly commonplace it can be hard to appreciate the original for what it was at the time . Kind of a Citizen Kane effect. In a sense, using VisiCalc in 2025 feels so familiar it's almost anticlimactic. It's a little hard to remember, but there was a time when this kind of direct manipulation of data simply wasn't commonplace. The display and input of data were often highly separated, for many good system performance reasons. Bricklin and Frankston understood that the real power of their system would be unleashed if it paralleled closely the system it proposed to replace. I think the genius of VisiCalc 's design is that mundanity is a feature, not a bug. In the product timeline I highlighted a few of the notable competitors that arrived shortly after VisiCalc redefined what could be done with a home computer. That is but a small fraction of the "VisiClones" that joined the fray. Here's a taste. Type-in programs proliferated, giving people a simple way to sample the spreadsheet world without undue financial investment. Boxed software spread like crazy, each hoping to capture some small slice of a rapidly growing financial pie: PerfectCalc, CalcStar, AceCalc, DynaCalc, Memocalc, CalcNow, CalcResult, The Spreadsheet, OmniCalc, and so on. These were often quite shameless in their copying of VisiCalc 's layout and usage. Thanks to a very simple file format, as well as support for DIF (disk interchange format), it is trivial to open VisiCalc sheets in a clone and continue working, even using the exact same keyboard commands. (Lest Apple feel left out, so too did the Apple 2 have its clones. About 500 of them. ) Applications for Animal Nutrition and Feeding by Ronald J. Lane and Tim L. Cross is an interesting peek into a world I know nothing about, despite having lived on a farm in my youth. After introducing the reader to the concept of spreadsheets, the book goes on to describe all commands and functionality twice: once for VisiCalc and once for SuperCalc . These two were chosen because, "They are very common among agricultural microcomputer users." which is an interesting cultural note. I really enjoy seeing software terminology couched in terms of an agricultural target audience. Here, the concept of boolean logic functions is introduced. The book gets further points because the writers do something I think is all too infrequent in guides of this nature. Typically there is an exclusive focus on vagaries like "getting the most out of VisiCalc ." In this book, each chapter of real-world application begins with a section called "Define and Understand the Problem." For the chapter "Swine Applications" a full TEN PAGES are devoted to "Define and Understand the Problem." VisiCalc isn't even touched until that's been done as formulas are constructed and tested by hand well before any cells are defined in a sheet. Even then, the very first thing created is in-sheet documentation, including tips for legible formatting. Yes, a thousand times yes, to that approach. Teach us to fish ! One passage in particular struck me. Please bear with me, I swear I have a point. From the book, "The object in formulating a ration for any farm animal is to supply sufficient amounts of the nutrients that will enable the animal to satisfy its needs for a specific function or functions. For example, if we are feeding a first-calf heifer six months after calving, we must be concerned with the productive functions of lactation, growth, gestation, and possibly extra work if extreme distances must be traveled daily. The actual process of ration formulation may require up to four sets of information." I know the suspense is killing you. The four sets of information are: nutrient requirements, feedstuff composition, actual feed intake, and economic considerations (least-cost ration formulation). Consider now how VisiCalc nimbly adapts to such a specific and esoteric use case. I can't imagine Bricklin and Frankston ever once thought, "Gosh, we need to ensure that users calculating post-calving heifer nutrition are adequately covered!" What they did right was to stick to a clear vision and not let presumptions of usage cloud their development. As noted earlier, mundanity is an intentional feature of the program's design. We can really understand that in the above passage and the flexibility this gives VisiCalc to rise to this agricultural challenge. I may even go so far as to posit that a piece of software passes the "timeless" threshold if can be used for hog slop protein content as well as Q2 financials at a Wall Street equity firm. This may be the start of a list of Stone Tools Maxims. VisiCalc can absolutely be productive in 2025, unless you're heavy into graphing. It just can't help you with that at all (though add-ons were released later). I had a lot of fun learning its tools, exploring its capabilities, and seeing it do real-world work. Even in an emulator it felt performant and frictionless. I cloned it for a reason ; it's a good, solid piece of useful software. Despite losing the throne, every modern spreadsheet is, at the foundation, still VisiCalc no matter how much UI chrome has been applied. Check out the below list of features today which started with VisiCalc and you'll understand. The sparkle of today's UI may dazzle, but it's VisiCalc providing the shine. Getting VisiCalc data into Excel , while keeping formulas intact , is troublesome. Each step of the conversion process requires a different tool, and you may be well-served without going the full distance to Excel . I looked into the published .xlsx XML format and it certainly seems possible to write a direct .vc -> .xlsx conversion utility. The XML specification document is over 400 pages long, but an introspection of a barebones .xlsx file (one with text in A1 and a single digit in A2) appears to contain mostly boilerplate. It has its charms, and if you're willing to keep your data inside your Apple 2's private world, you could make good use of its tools. It's just fun! The primary factors that might dissuade one from doing anything important in VisiCalc on the Apple 2 in 2025 are: AppleWin 1.30.21.0 on Windows 11 "Enhanced Apple //e" (128K) "Use Authentic Machine Speed" "Enhanced disk access speed (all drives)" VisiCalc VC-208B0-AP2 40-column display (80-column won't start) indicates the calculation direction. is for so VisiCalc will evaluate cell formulas beginning with A1, work its way down to , move to B1, and so on. The alternative is for which steps through horizontally. If later cell functions reference earlier cell values, and those were calculated out of order, you can wind up with wrong calculations or even errors. Plan your sheet accordingly or run the calculations twice to catch misses. indicates cursor direction, horizontal or vertical. The Apple 2 only has left and right arrow keys, no up and down (those were introduced on later models). toggles direction allowing two arrows to perform the work of four. Clever, but annoying. Using to "go to" specific cells immediately is often preferred. is a true remnant of a simpler time, when RAM was so limited we had to quite literally watch usage while working. VisiCalc is showing us how many free kilobytes of memory are available to use. A1 notation Start a formula with Visual representation separate from calculated representation Resizeable column widths Direct cell manipulation @ notation for functions ( Excel supports this hidden feature) Entry bar. There, between the column headers and menu bar, what do you see? LOOKUP tables One of my favorite functions in VisiCalc, it cleverly works around certain deficiencies by providing on-the-fly swap outs of data representations. Boolean logic. Even today , "The IF function is one of the most popular functions in Excel." Green (for some reason!) AppleWin seems well-behaved at 1x, 2x, and Fastest processing modes. I enjoy the speed halfway between 2x and Fastest for the fun of watching things process without also feeling my limited time on earth slipping away. Fastest would probably be most people's preferred mode; transcendental function graphing is "blink and you'll miss it" quick. Other emulation options Dan Bricklin received permission to distribute VisiCalc for DOS . I've been testing it a little under DOSBox-X and it's working great. You get full arrow-key support, a lot more control over your virtual processor speed, and files are saved directly to your host operating system drive; no need to "extract" the data. The above DOS version can be run straight in your web browser , if you just want to play around. microm8 is available for all platforms and has a neat "voxel rendering" trick to breathe funky new life into trusty old software. It also gives direct access to a huge online library of software, so finding disk images is basically a solved problem. Apple ][js is an online javascript emulator which allows you to load disk images from your system, as well as to save data back to your local file system. It is the only emulator I've tried so far that runs VisiCalc in 80-column mode, though it can't draw inverse characters. This makes it almost impossible to use; you can watch the upper left to see where your cursor is in the sheet, I suppose. Virtual ][ for macOS is a very nice emulator which even includes a very cool virtual dot matrix printer emulation as PDF output. An Apple //e physically has all four arrow keys and it seems like they should work, as in SuperCalc . Unfortunately, VisiCalc ignores the extra hardware. I could not find a way to get 80-column display in an emulated Apple //e for VisiCalc , though SuperCalc does work in this mode on the same system. Get the file out of the Apple 2. CiderPress2 does this easily. You can also "Print" your VisiCalc document structure to the Apple 2 emulator "printer." This will give you a text file whose contents are identical to what you'll find inside the .vc file on the Apple 2 virtual floppy image. Install Lotus 1-2-3 for DOS using DOSBox-X; specifically the "Translate" tool. Translate the file from VisiCalc format to a Lotus 1-2-3 v2 .wk1 file Use LibreOffice 25.8 to open the converted Lotus 1-2-3 .wk1 file. The layout might not be beautiful, but formulas appear to convert properly. "Export" the sheet as Excel 2003 .xls Excel on the web cannot open 2003 files, but Google Sheets can. Kind of. Sort of. Well, it makes an attempt. Cell references seem to be shifted by one or two, and junk data is inserted at the beginning of each formula. Fix your formulas. "Download" as a Microsoft Excel .xlsx file. Open the .xlsx file in Excel . Was that so hard? 🤷‍♂️ I keep saying it, but the 40-column display can feel cramped. The finger-gymnastics for missing keys grows tiresome. Graphing is woeful, almost non-existent. Getting your sheet into a modern app doesn't work, in any practical sense. There is a numeric precision limit of 11 significant digits. More than precise enough for many, not nearly precise enough for some.

0 views
Stone Tools 1 months ago

Superbase on the Commodore 64

When it comes to databases, I've never been much more than a dabbler. I remember helping dad with PFS:File so he could do mail merge. I remember address books and recipe filers. I once tried committing my comic book collection to ClarisWorks . Regardless of the actual efficacy of those endeavors, working with database management systems never stopped feeling important. I was "getting work done," howsoever illusory it may have been. These days, the average consumer probably shies away from any kind of hardcore database software. Purpose-built apps which manage specific data (address books, invoicing software) do most of our heavy lifting, and basic spreadsheets ( Google Sheets , Notion , Airbase ) tend to fill in the remaining niche gaps. The industry was hell-bent on transforming rapidly improving home computers into productivity powerhouses and database software promised to unlock a chunk of that power. Superbase on the Commodore 64 was itself put to work in forensic medicine in England and to help catch burglars in Florida . Maybe it can help me keep track of who borrowed my VHS copy of Gremlins 2: The New Batch. The manual has a three-part tutorial, the first two parts of which have an audio component (ripped from cassette tapes). I will absolutely use it for an authentic learning experience. I'm looking forward to some pre-YouTube tutorial content, "What's up everyone, it's ya boy Peter comin' atchu with another Superbase tutorial. If you're enjoying these audio tapes, drop a like on our answering machine and subscribe to AHOY! Magazine. " From first boot, I feel the pain. After the almost instantaneous launching of trs80gp into Electric Pencil last blog, getting Superbase launched in VICE is annoyingly slow. I appreciate a pedantic pursuit of accuracy as much as anyone, but two full minutes to load Superbase is ridiculous, for my 2025 interests. Luckily VICE has a "WARP" mode which runs some 1500% faster, bringing boot time to under 10 seconds. A C64 one could only dream of is a keyboard stroke away, to enable or dismiss on a whim. How spoiled we are! Here I am, a businessman of 1983, knitted tie looking sharp with my mullet, ready to thrust my 70s HVAC business into the neon-soaked future of 80s information technology. (The company must pivot or die !) First things first, “What is a database?” I wonder, sipping a New York Seltzer. According to the very slow audio tutorial, "It's an electronic filing cabinet!" So far, so good. "And just as in an ordinary filing cabinet, information is stored in batches called 'files'. and you can think of Superbase as an office containing a number of electronic filing cabinets." OK, so if Superbase is my office, and my office currently contains seven filing cabinets with 150 files/per, I’ll make seven databases to hold my information? "Superbase will allow you to hold up to 15 files in each database." OK, I'm not sure I heard that correctly. Rather than having seven cabinets with 150 files each, I instead have 70 cabinets with 15 files each? Is this the " office of the future ?" Come to think of it, are we even using the same definition of the word "file?" When I ask Marlene to bring me "the Doogan file" I receive a file folder filled with Doogan-related stuff: one client, one file. "Each of the files is made of bits of information known as RECORDS. For example, you may have a file containing names of companies. In that case each company name would be one RECORD." A file which contains only the names of companies? Now I'm learning that records are made of FIELDS. But we were just told that a RECORD is "a bit of information" like a company name. This filing cabinet metaphor is falling apart and I'm only five minutes into a 60-minute tutorial. Not only did society have to learn how to create new tools for moving into the information age, we also had to learn how to teach one another how to use those tools. In Superbase's case, I find the manual mostly OK. It offers a glossary, sample code, and a robust rundown of each menu and command. What's missing here is an explanation of the mental shift required in moving from analog to digital files. Where a traditional filing cabinet is organized by relation, our C64 will discover relations (though this is not a relational database); a kind of inversion of the physical filing cabinet strategy. Without my 2025 understanding of such things, I would be completely lost right now about how Superbase and databases work. At any rate, working through the tutorial, I do find the operation of the software quite simple so far. Place the cursor where you want to add a field name or field input area and start typing. and set the start and end points of a field, which doubles as a visual way to set the length of that field. The field's reference name is only ever the word to the immediate left of the field entry area. Simple, if inflexible. Setting field types is also easy enough, even if the purpose and usage of the "key" field is never made explicitly clear. It is only ever described as being the field that records will be sorted on by default. Guidance on choosing an appropriate key field and how to format it is essentially nonexistant. Querying records is straightforward, though there is definitely a learning curve. Partials, wildcards, absence of a value, value sets and ranges, and comparatives (values <100, for example) are all possible and chainable. The syntax is relatively clear, even if conventions ( is the wildcard token) have subtly changed. I've now built something like a phone book and entered some sample data. This usage of the database matches my mental model of the object being replaced and I'm feeling somewhat confident. But this is also something I could have built with a type-in BASIC program from Popular Computing Weekly . If I put myself in the mindset of someone reading a contemporary book like Business Systems on the Commodore 64 by Susan Curran and Margaret Norman , it is quite unclear how my filing cabinet data and organizational structure translates to floppy disk. With floppy drives, a printer, and more I have spent almost $5000 (in 2025 money) on this system. For that outlay of cash, am I really asking too much for someone to help guide me into a "paperless office?" Speaking of which. George Pake of Xerox PARC (yes, that Xerox PARC ) gave an interview to Businessweek in June 1975 in which he spoke of his vision for a "paperless office." The later spread of that concept into larger circles seems to owe a lot to F.W. Lancaster. In 1978, Lancaster published Toward Paperless Information Systems and spent a full chapter contemplating what a paperless research lab might look like in the year 2000. Lancaster's vision paralleled a fair amount of what we know today as the internet. To readers of the time it was all brand new conceptually, so he spent a lot of time explaining concepts like "keeping a journal on the computer" and how databases could just as easily be located 5000 miles away as 5 feet away. He couldn't quite envision high resolution video displays, and expected graphic data to remain in microfilm/fiche. He could envision "pay as you go" for data access, however. It should be noted that the phrase "paperless office" does not appear in Lancaster's book (it does in his previous book). That phrase had already started an upward trend since before the Pake interview, but in my research it does seem that Lancaster really helped mainstream the concept. Lancaster identified three main functions of computer use in a paperless office. Especially in the 80s, transmit and receive were a long way from being cheap and ubiquitous enough to replace paper between two parties. That sounds obvious, but hype around the "paperless office" made it easy to overlook such flaws. Besides, wasn't it a matter of time before the flaws were resolved? Wasn't everyone working toward the same paperless vision? Well that's hard to say, given the slightly mixed messaging of the time. 1983's The Work Revolution by Gail Garfield Schwartz PhD and William Neikirk says explicitly, "we are at the brink of the paperless office." 1982's The Word Processing Handbook by Russell Allen Stultz cautions us, "The notion of a 'paperless office' is just that, a notion." But May 1983's Compute Magazine keeps the dream alive with a multi-page article, "VICSTATION: A Paperless Office" as though it had already arrived and was waiting for you to catch up. Computer magazines and academic investigations were typically cold on the idea of the "paperless office" ever coming to fruition. Rather they saw (quite correctly) that if everyone had simple, easy-to-use publishing tools at their fingertips paper usage would increase . The mainstream, ever one to latch onto a snappy catch phrase, really did seem to push the idea to the masses as an inevitability . A CEO in 1983 really couldn't be blamed for buying into the hype. To not have bought into it would have felt tantamount to corporate negligence. I asked ChatGPT for a modern parallel and all it said was, "Time is a flat circle." Building out anything more advanced than the most rudimentary of rolodexes required a lot of patience and forbidden knowledge. As noted earlier, the manual only gets you so far. There was a decent stream of books published during the early 80s which tried to fill various knowledge gaps. Some would tackle general "using your computer for business" while others would target specific software + hardware combinations. Database Management for the Apple from 1983, the release year for Superbase , has some great illustrations and explanations about databases and how they work conceptually. It digs into how to mentally adjust your thinking from manual filing to electronic filing. It also includes fully commented source code in BASIC for an entire database program. A bargain for $12.95 ($40 in 2025), but probably ignored by C64 Superbase users? Unfortunately for us in 1983, the book we Superbase users desperately need won't be published for three more years. Superbase: The Book , by Dr. Bruce Hunt, was published by Precision Software Ltd, the very makers of Superbase itself in 1986 for $15.95 ($47 in 2025). It straight up acknowledges the lack of help over the years in making the most of Superbase . "Part I: Setting Up a System" addresses almost every single thing I complained about in the tutorial. It contains a mea culpa for failing to help users build anything beyond the most rudimentary of address books. It then moves into "the most important discussion in the book." A conceptual framework for thinking about your existing files, and how to translate them into data that leverages Superbase's power, is well explained with concrete examples. As well, it works diligently to show you that the way files and fields were set up in the tutorials that shipped with Superbase was woefully inadequate for making good use of Superbase . We learned it by watching you! As an example, what was just "firstname" and "lastname" fields in the tutorial are considered here more thoroughly. We are given a proper mental context for why a name is more complex than it first looks. As data , it is better broken into at least five fields: title, initials, first name, surname, suffix. Heck, I'd throw "middle" in the mix as well. Then Dr. Hunt explains what is actually a very powerful idea: record fields don't have to exist exclusively for human-readable output purposes. That is true, and almost counter to the shallow ways fields are treated in the manual, which only ever seemed to consider field data as output to the screen or a printer. "The crucial realization is that you don't need to restrict the fields in the record to the ones that will be printed." Many examples of private data that you might want to attach to a customer record (for example) are given, as well as ways to use fields solely for the purpose of increasing the flexibility of Superbase's query tools. Lastly, in what felt like the book had thoroughly invaded my mind and read my thoughts directly, an entire section is devoted to understanding key values, how they work, and ideas for generating robust, flexible keys. The remainder of the book continues on in the same fashion, providing straightforward explanations and solutions to common user issues and confusions. It's a solid B+ effort, even if the Apple database book feels more friendly and carefully designed. I'd give this book an A had Precision Software not made its customers wait three years for it. Here in 2025, the further into the tutorial I delve, the more the word "deal-breaker" comes up. I'll start with the format of the "Date" field type, and maybe you can spot the problem? We can enter the date in two ways: means a two-digit year and ONLY two-digits. This restricts our range of possible years to 1900 - 1999. That's right, returning after a 30 year absence: it's the Y2K problem ! Not only does this prevent us from bringing Superbase into the future, but we also cannot log even the recent (relative to 1983) historical past. I had a great-grandmother alive at that time who was born in the late 1800s, yet Superbase cannot calculate her age. Moving on, a feature I enjoy in modern databases (or at least more sophisticated than Superbase ) is input validation. Being able to standardize certain field data against a master file, to ensure data consistency, would be really nice. It's also a bit of a drag that a record's key value can only ever be a text string, even if you only use numbers. The manual gives a specific workaround for this issue which is to pad a number string with leading zeros. This basically equates to no auto-increment for you. Something I very much appreciate is that the entire program can be run strictly through textual commands; no F-keys or menus necessary. In fact, I dare say the menus hide the true power of the system, functioning as a "beginner's mode" where the user is expected to graduate to command-line "expert mode" later. Personally, I say just jump straight into expert mode. We can use a convention in a command to read and write values from records. BASIC-style variables can store those values for further processing inside longer, complex commands. As a developer, I'm happy. As a non-developer, this would be an utter brick wall of complexity for which I'd probably hire an expert to help me build a bespoke database solution. "Batch" is similar to "Calc" (itself a free-form or record-specific calculator) which works across a set of records. We can perform a query, store the result as a "list," then "Batch" perform actions or calculations on every record in that list. Very useful, but it comes with a note. "Takes a while" is just south of an outright lie. I must remember that this represents many users' first transition to electronic file management. Anything faster than doing work by hand had already paid for itself; that's true even today. That said, consider this. I ran "Batch" on eight (8!) records to read a specific numeric field, reduce that value by 10%, then write that new, lower value back into each record. Now, further consider that a C64 floppy can hold about 500 records, which seems like a perfectly reasonable amount of data for a business to want to process. ONE AND A QUARTER HOURS! Look, I know it was magical to type a command, hit a button, and have tedious work done while you took a long lunch. I once tasked a Macintosh to a 48-hour render in Infini-D . Here in 2025, I'm balking even at the 6 minute best case scenario in VICE. On real hardware, we must also heed the advice from the book Business Systems on the Commodore 64 : In fairness, most of the things I'd want to do are simple lookups and record updates from time to time. Were I stuck on 1982 hardware, it would be possible to mitigate the slow processing by working processing-time into my weekly work schedule. I wouldn't necessarily be "happy" about that situation, and may even start to question my investment if that were the end of the features. Luckily, Superbase offers a killer feature which offsets the speed issue: programmability. The commands we've been using so far are in reality one-line BASIC programs, and more complex, proper programs can be authored in the "Prog" menu. We are now unbound, limited only by our knowledge of BASIC (so I'm quite limited) to extend the program, and work around the "deal-breakers" I encountered earlier. Not every standard BASIC command is available (we can't do graphics, for example), but 40 of the heavy hitters are here plus 50 Superbase- specific additions . I don't want to sound naive, but I was shocked at the depth and robustness, yes even the inclusion of its programming language. It's far more forward thinking than I expected for $99 on a 64K machine. But I also cannot credit the manual with giving too much help with these functions. It's quite bare-bones. After all is said and done, the simple form building and robust search tools have won me over, but the limitations are frustrating. Whether I could make this any kind of a daily driver depends on what I can make of the programmability. It's asking a lot of me to become proficient in BASIC here in 2025. But the journey is its own reward. I press onward. Initially I thought I would build a database of productivity software for the Commodore 64, inspired by Lemon64 . The truth is, after my training to-date I am still a fair distance from accomplishing that, though I can visualize a path to success. There are two main issues I need to solve within the confines of Superbase's tools and limitations. Doing so will give more confidence that it is still useful for projects of humble sizes. Thinking of a Lemon64-alike, to constrain the software "genre" field (for example), I need a master list against which to validate my input. Superbase has some interesting commands that appear to do cross-file lookups: The code examples are not particularly instructive, at least not for what I want to do. The linking feature needs a lot more careful attention and practice to leverage. Rethinking my approach to the problem of data conformity, I have come to realize that the answer was right in front of me. All I really need is the humble checkbox. There is no such UI element on a machine which pre-dates the Macintosh nor has a GUI operating system, but I can mimic one with a list of genre field names each of a single-character field length. Type anything into a corresponding field to designate that genre. When doing a query for genre, I can search for records whose matching field is "not empty." Faking it is A-OK in my book. Without a working date solution, my options for using Superbase in 2025 are restricted. I can either only track things from the 20th century, or only track things that don't need dates. Neither is ideal. Working on UNIX-based systems professionally all day long, I think it would be nice to get this C64 on board the "epoch time" train. Date representation as a sequential integer feels like a good solution. It would allow me to do easy chronologically sorting, do calendar math trivially, and standardize my data with the modern world. However, the C64's signed integers don't have the numeric precision to handle epoch time's per-second precision . A "big numbers" solution could overcome this, but that is a heavy way just to track the year 2000. If I limit myself to per-day precision (ignoring timezones, ahem ), that would cover me from 1970 - 2059. Not bad! I poked around looking for pre-existing BASIC solutions to the Y2K problem and came up empty-handed. Hopping into Pico-8 (my programming sketchpad of choice) I roughed out my idea as a proof of concept. Then, after many "How do I fill an array with data in BASIC?" simpleton questions answered by blogs, forum posts, and wikis I converted my Lua into a couple of BASIC routines which do successfully generate an epoch date from YYYY and back again. Y2K solved! Snippet from my date <-> epoch converter routines; now it's 2059's Chris's problem. 1 REM human yyyy mm dd to epoch day format 5 REM set up our globals and arrays 10 y=2025:m=8:d=29 11 isleap=0:yd=0:ep=0 15 dim dc%(12) 16 for i=1 to 12 17 read dc%(i) 18 next 99 REM this is the program proper, just a sequence of subroutines 100 gosub 1000 200 gosub 2000 300 gosub 3000 400 print "epoch: ";ep 900 end 999 REM is the current year (y) a leap year or not? 0=yes, 1=no 1000 if y-(int(y/4)*4) >0 then leap=1:goto 1250 1050 leap=0 1100 if y-(int(y/100)*100) > 0 then goto 1250 1150 leap=1 1200 if y-(int(y/400)*400) = 0 then leap=0 1250 isleap = leap 1300 return 1999 REM calculate number of days that have passed in the current year 2000 yd = dc%(m) 2010 yd= yd+ d 2020 if isleap=0 then yd=yd+1 2030 return 2999 REM the epoch calculation, includes leap year adjustments 3000 ty=y-1900 3010 p1 = int((ty-70)*365) 3020 p2 = int((ty-69)/4) 3030 p3 = int((ty-1)/100) 3040 p4 = int((ty+299)/400) 3050 ep=yd+p1+p2-p3+p4-1 3060 return 4999 REM days passed tally for subroutine at 2000 5000 data 0,31,59,90,120,151 5001 data 181,212,243,273,304,334 -------------------------------------------------------------------------------- 5 REM epoch date back to human readable format 10 y=0:m=0:d=0 11 isleap=0:yd=0:ep=20329 15 dim md%(12) 16 for i=1 to 12 17 read md%(i) 18 next 100 gosub 2000 200 print y, m, d 900 end 999 REM is the current year (y) a leap year or not? 0=yes, 1=no 1000 if y-(int(y/4)*4) >0 then leap=1:goto 1250 1050 leap=0 1100 if y-(int(y/100)*100) > 0 then goto 1250 1150 leap=1 1200 if y-(int(y/400)*400) = 0 then leap=0 1250 isleap = leap 1300 return 1999 REM add days to 1970 Jan 1 counting up until we reach our epoch (ep) target 2000 y=1970:dy=0:td=ep 2049 REM ---- get the year 2050 gosub 1000 2100 if isleap=0 then dy=366 2200 if isleap>0 then dy=365 2300 if td>dy or td=dy then td=td-dy:y=y+1:goto 2050 2399 REM ---- get the month 2400 m=1:dm=0 2500 dm=md%(m) 2700 if m=2 and isleap=0 then dm=dm+1 2800 if td>dm or td=dm then td=td-dm:m=m+1:goto 2500 2899 REM add in the remaining days, +1 because calendars start day 1, not 0 2900 d=td+1 3000 return 4999 REM days-per-month lookup array data 5000 data 31,28,31,30,31,30 5001 data 31,31,30,31,30,31 I'm hedging here as I've had a kind of up-and-down experience with the software. I have the absolute luxury of having the fastest, most tricked out, most infinite storage of any C64 that ever existed in 1983. Likewise, I possess time travel abilities, plucking articles and books from "the future" to solve my problems. I have it made. There are limitations to be sure, starting with the 40-column display. But I also find the limitations kind of liberating? I can't do anything and everything, so I have to focus and zero in on what data is truly important and how to store that data efficiently. The form layout tools are as simplistic as it gets, which also means I can't spend hours fiddling with layouts. Even if the manual let me down, the intention behind its design unlocks a vast untapped power in a Commodore 64. It's almost magical how much it can do with so little. I can easily see why it won over so many reviewers back in the day. Though the cost and complexity would have frustrated me back in the day, in the here and now with the resources available to me, it could possibly meet my needs for a basic, occasional, nuts-and-bolts database. It would require learning a fair bit more BASIC to really do genuinely useful things, but overall it's pretty good! Ways to improve the experience, notable deficiencies, workarounds, and notes about incorporating the software into modern workflows (if possible). While Warp mode in VICE is very handy, it's only truly useful when I hit slowness due to disk access. I'm sure I'll find more activities that benefit as this blog progresses, but for text-input based productivity tools, warp mode also warps the keyboard input. Utterly unusable. Basically I just use the system at normal speed. When I commit to a long-term action like loading the database, sorting, or something, I temporarily warp until I get feedback that the process is complete. Superbase The Book tells us that realistically a floppy will accommodate about 480 records. However, 1Mb and 10Mb hard drives are apparently supported, so storage should be fine with a proper VICE setup. VICE v3.9 (64-bit, GTK3) on Windows 11 x64sc ("cycle-based and pixel-accurate VIC-II emulation") drive 8: 1541-II; drive 9: 1581 model settings: C64C PAL printer 4: "IEC device", file system, ASCII, text, device 1 to .out file Superbase v3.01 (multi-floppy, 1581-compatible) Create information Transmit information Receive information "Ultimately, the workstation configuration will probably replace the usual office furnishings as the organization evolves toward the 'paperless office'" - The Office of the Future , Ronald P. Uhlig, 1979 "Transformation of the office into a paperless world began in the early 1980s. Computers have been an integral component of the paperless office concept." - O MNI Future Almanac , 1982 "This information revolution is transforming society through basic changes in our jobs and lifestyles. Indeed, the paperless office of the future and computerized home communications centers are information age miracles not to be hoped for, but expected." - America Wants to Know: The Issues and the Answers of the Eighties , George Horace Gallup, 1983 Base C64: 1 minute, 6.88 seconds In WARP: 6.22 seconds Base C64: 1.25 hours In WARP: 6 minutes I want to constrain some data to a standardized set of fixed values. I want to solve the Y2K problem. : select a second file in the same database only whose records you want to look up (no cross-database lookups) : specify the specific field in the file against which you want to do lookups : close the link to the second file : "reverse" the linked files; the linked becomes primary and vice versa Key input repeating like the system is demon possessed? Warp mode is probably still on. A snapshot saves the C64 state, but not the emulator state. So if you have a disk in the drive when you take a snapshot, that disk will not be inserted when you restore state. Save your snapshot with a name that reminds you which diskette should be inserted in which drive to continue smoothly from the snapshot. Superbase developers understood that data migration and interoperability are critical. We cannot have our data locked down into a proprietary format with no option to move to a different system. Print and Export accept formatting parameters which allow us to effectively duplicate CSV format. Printing with VICE generates an ASCII file. Exporting puts the data onto our virtual disk image. To get data off that disk image into our host operating system, we need to be able to browse disk contents and extract files. On Windows, DirMaster works nicely . For macOS and Linux, the DirMaster dev created dm , a command-line utility for browsing and working with C64 disk image files. Speed. I'm spoiled, I admit it. For standard searches it's snappy enough, but batch operations are tedious. Superbase isn't particularly easy to use with multiple floppies. The manual addendum for v3.01 says that a two-drive setup is supported, but I didn't really see how to do that. The initial data disk formatting routine offered no opportunity to point to drive #9, for example. I wish VICE would show the name of each .d64 file currently inserted into the virtual floppy drives. It's a little tough not having access to modern GUI elements in the form builder, like pull-down menus. "Build Your Own" is a powerful, flexible, time-consuming process using Superbase's programming tools. Getting around limitations of the pre-built fields, forms, etc seems possible with enough BASIC knowledge, time, and desire to commit to Superbase . Once that data is in there, it's honestly easier to let it stay there than try to work out some export/import function. This may be an issue for your use case.

0 views
Stone Tools 2 months ago

Electric Pencil on the TRS-80

As the story goes, 40-year old filmmaker Michael Shrayer was producing a Pepsi-Cola commercial in 1974 when he had a crisis of conscience on set. He looked around at the shoot, the production, the people, the apparatus and found a kind of veil lifted from his eyes. Prior to that moment, it was work. Suddenly it was insanity in service to a "dancing bottle cap." Almost on-the-spot, he swore off Hollywood for good, tore up his union card (forfeiting union pensions in the process!), and moved to California to semi-retire as a beach bum . After moving to California, with time on his hands, he found a distraction in a new-ish gizmo on the market, the MITS Altair 8800 . Once a creator, always a creator, Shrayer put his efforts into learning how the machine worked, and more importantly how to make things with it. That was not an easy task back then on a machine whose base model used physical toggle switches to input byte code. Undeterred, he put together Software Package 1 , a collection of public domain development tools, then started work on ESP-1 ("Extended" Software Package 1). Tired of using a typewriter to write documentation, he wondered if he could use the Altair itself to help him compose the document. That software didn't exist, so he wrote it himself . Dubbed the Electric Pencil by he and his wife , it was used it to write its own manual, and began its spread through the home computing scene. Landing on the TRS-80 series in 1978 opened it to a mass market, and the word processor genre was well and truly born. For the first couple of years Electric Pencil was the only word processing option for home microcomputers. This gave Michael Shrayer what some may call arrogance, but which I'll call "work/life balance" to utterly ignore the support phone line come 5pm sharp. Customers literally had no choice but to wait until morning to call again. Shrayer was living the dream, I guess is what I'm saying. (He also said he sold 10,000 copies. At ~$200/per. In late 70s money. Again, "living the dream.") In 1982, James Fallows called Electric Pencil , "satisfying to the soul." My expectations are considerably lower than having my soul soothed, but maybe I can at least find a place for it in my heart? I can tell already this is going to be a little painful. No undo. A bit of a clunky UX with the underlying system. No spell checking. Limited number of visible lines of text. Basic cut-copy-paste is nowhere to be seen. But maybe I don't rely on those things as much as I assume I do in this context? The primary work I'm committing to is to write this very section, the bulk of the review, within Electric Pencil itself. I'll also use it to revise the document as much as possible, but this blog platform has unique tools I need to finalize the piece. Once I feel comfortable using Pencil , I think I'll take a stab at writing some fan-fiction in it. Any Mork & Mindy fans out there? I am off to a rough start. The simple fact of the matter is that the interaction between a modern keyboard, an emulator, and Electric Pencil is not strictly harmonious. One of the primary interactions with the software worked best with a key that wasn't even part of the original TRS-80 hardware. I monkey-paw the keyboard, trying to deduce which modern key maps to which retro key and finally figure it out. I write it down on my memo pad and refer to it constantly during my evaluation. Once I'm into Electric Pencil though, I'm rather struck by its stark simplicity. I am here to write, just me and my words; alone together with no external pressure to do anything but the task at hand. It's nice! I'm definitey reminded of any number of "distraction free word processors" in recent years and dozens of attempts to return to a clean, uncluttered interface for writing. I suppose, like Pepsi executives reinventing souless product shoots over and over, we are similarly doomed to reinvent "a blank screen with a blinking cursor" from time to time. Once I start typing though, I realize the blank screen is less a great, untapped plain of fruitful potential and more of a Mad Max style desert. War Boys are at the ready, poised to steal my blood and guzzoline. Initially I was concerned about how I would translate my writing into something I can use on the blog. It struck me that I kind of don't need to worry about it. Electric Pencil saves in plain ASCII format so Markdown is a realistic option. Rather than bring esoteric file formats of the past to the present, we'll instead bring text formatting of the present into the past. Well, that was the working theory until I learned that there is simply no way to type things like or or and even requires a weird combination. I hadn't mentally prepared myself for the idea that the physical keyboards of the past might present their own writing challenges unique from the software. Still, and exist, making HTML input an option for the missing characters. I move on and discover organically that deletes a character. The brief adrenaline rush of feeling attuned to the vibe of the program is nice, until I saved the document. Until I tried to save the document. No lie, this represents is my sixth attempt at getting things working. Look, I do not claim to be a smart person. I overlooked an obvious warning message or two, simply because I didn't expect them. I was looking to the left for cross-traffic when I should have looked to the right for the coming train. A fun fact about Electric Pencil is that when you save your work, you are saving from the current location of the cursor to the end of the document. Think for a moment about the implications of that statement. There will be no advanced warning when you do this, only an after-the-fact message about what was done. It will obediently wipe out large chunks, or even all, of your document, depending on the current cursor position. If you make a mistake and lose your work, the manual explicitly puts the blame on you , "The truth of the matter is that...you screwed up." It then says there are recovery techniques you can learn if you buy a copy of the book TRS-80 Disk & Other Mysteries by Harvard Pennington, the same guy who bought the rights to Electric Pencil from Shrayer. The same guy who published this very version of the program. Hate the game, not the player? But wait, the emulator itself has its own quirks. With the various things that could go wrong having actually gone wrong, dear reader I doubt you'll be surprised to learn that I lost my work multiple times. I cannot blame Electric Pencil for everything, as the emulator kind of worked against me as well, but the total experience of using this in 2025 was quite frustrating. I persevered for your entertainment . The tip jar is to your right. Back in the day, Electric Pencil was notorious for losing the user's typing. In Whole Earth Software Review , Spring 1984, Tony Bove and Cheryl Rhodes wrote, "(It) dropped characters if you typed too fast. During “wraparound” it nibbles at your keystrokes while it does what it wants." I did not personally encounter this in my time with the program. It may have been addressed as a bug fix in v2.0z, though I can't find evidence it did. It may be that the emulator itself provides more consistent keyboard polling than the original hardware did and keeps up with my typing. Or maybe I didn't flex my superior Typing of the Dead skills hard enough? No, for me the most immediate and continually frustrating aspect of using Electric Pencil is its "overtype" mode. This is a feature you still see in text editors and word processors, maybe hidden under the "Advanced" preferences, requiring a conscious choice to enable it. The modern default is to "insert" when typing. Place a cursor, start typing, and your words are injected at the point of the cursor. The text to the right moves to accommodate the new text. Overtype, as the name suggests, types over existing words replacing them. The amount of time I've spent reversing out inadvertent overtyping when I just wanted to add a space, or especially a line break, must surely have subtracted a full hour of my life by now. I have to remember to jump into "insert mode" when I want to retroactively add more space between paragraphs. I'm not one to suggest it is without its merits, though if my life were dependent on finding a reason for its existence my life would be forfeit. But what I can say absolutely is that losing your words to overtype really sucks in a program with no "undo" option. I mentioned Harvard Pennington earlier, and I want to spend a little time talking about the transfer of Electric Pencil from Shrayer to Pennington. I'm using v2.0z of Electric Pencil and it would be unfair to fail to note Michael Shrayer's absence in its development. According to the v2.0z manual, "Shrayer continued to sell ( Electric Pencil ) until January of 1981. By this time (it) was losing ground...Michael was not ready to devote his life to the daily chore of...doing business around the world." Harvard Pennington had already published a book written in Electric Pencil and wanted to keep his beloved software alive. Shrayer sold Pencil to Pennington's company International Jewelry Group. Yes, you read that right, "jewelry." But it's OK, they just called themselves IJG and their hard pivot was papered over nicely. "Pennington got together with...fans and programmers" to create a patched, improved version. Now I say "improved" because I read a review or two that suggested that. I can say absolutely that the command menu in v2.0z is a marked improvement over v1. It helps push some nuclear options (like to clear all text) behind a much-needed protective wall. But it also has, in hindsight perhaps, a couple of baffling decisions. First, if IJG was trying to improve the product, I don't really understand why the save file mechanism remains so inextricably linked to cursor position. Rather than fix it, a slightly snarky lambaste in the manual was added. Good job team, problem solved? The biggest change is the utter removal of WordStar -esque cursor controls. v1 had it, v2 doesn't. The cursor control keys are "unused" according to the v2.0z manual. The functionality was removed and replaced with nothing . Why concede a feature to your competitor that is so useful they literally named their own product for it? Just above I even called it WordStar -esque despite Pencil being first-to-market! In Creative Computing Magazine , November 1984, Pennington, newly elected chairman of the board at IJG, wrote an article about the future of computing. A jewelry salesman turned author and Pencil fanboy, now in charge of stewarding Pencil 's future, saw the coming wave of Macintosh-inspired GUIs. What did he think of this sea-change? "So what is in our future? Windows? A mouse? Icons? This is the hot stuff for 1984. How do we know it is the hot stuff? Because the computer press tells us. And how do they know? Because the marketing people tell them (and they know) because the finance people have determined the next "hot" item. How does the financial community know? They don't. However, no one is going to tell them to take their money elsewhere ... If you can come up with an idea that is bizarre enough, you can probably raise (millions) to bring it to market ... It is hype." Within two years of this bold, anti-GUI stance, Pennington would sell Electric Pencil to Electric Software Corporation. Later, PC Magazine would review ESC's v3.0 in the February 24, 1987 edition. They praised how much you got for $50, but also called it "not easy to learn" and "not for beginners." By then, with so much competition in the genre it had birthed, Electric Pencil was effectively dead. As the v1 manual states, "THE BEST WAY TO LEARN TO OPERATE THIS SYSTEM IS TO USE IT !!!" That's proving true! Why did the v2.0z manual remove that statement?! The learning curve is relatively shallow, benefitting from the software being sparse; there's just not that much to learn. From the perspective of a "daily driver," it's not growing on me. Getting into a flow is proving difficult. (future Chris here; as I come back to edit this document later, the editing flows more freely though I can't claim it is "natural." More like I'm just better at anticipating quirks, and there are plenty.) Part of editing is rearranging, but we need to forget what we know about "cut, copy, and paste." Those words had not yet been commonly adopted to describe those actions. Instead, we have the "block" tool. adds a visual marker to indicate the start of a block. Move the cursor and do that again to add a second marker at the end of a block. The text between markers is your block. Place the cursor elsewhere in the document and will clone the delimited block into the current cursor position; the original block stays as-is. You can clone as much as you like. "Cut" as we understand it today doesn't exist. deletes the block. It is GONE, no longer in memory at all. Remember also, there is no "undo" in this program, so gone really does mean GONE. Good enough for government work, I guess, just watch your step. The only feature left worth discussing is find/replace. brings up a modal screen for searching for a word. In James Fallow's discussion on it, he noted that he would use it for complicated words. He would insert a or some other unusual character to stand-in for a complex name, for example the Russian surname . Then, when he was done editing he would do a find-and-replace on the character for the surname. It only looks for the literal, case-sensitive text you type, although wild cards may be used. This is also your only method for jumping to known parts of the document. Search for a word and replace it with nothing to jump from search result to search result. Aside from some era-specific, esoteric commands, that's basically all Electric Pencil has to offer. It would have been fun if I could have tried the tape-dictation controls to transcribe a conversation. Spell-check isn't part of the base system, though it was available as an add-on. It is bare-bones, utilitarian, and sometimes frustrating for a modern user. It's forcing me to evaluate my personal threshold between "just enough" and "not enough" in such software. For me, this one is "not enough." With a few quality of life additions I suppose it could be sharpened up for the "distraction free" crowd. Maybe v3.0 of Electric Pencil PC is just right, if overtype is your jam? As-is, it is hard to recommend it on the TRS-80 for much more than writing a review of it. But don't worry, I teased some fan-fiction and I am a man of my word. I'd like to return to the Creative Computing Magazine issue where Pennington kind of poo-pooed windows, mice, and icons, "What is their future? They are here to stay. That does not mean that they will be used." In that same issue, Shrayer also gave his thoughts about the future of computing. Michael Shrayer died October 19, 2006 in Arlington, Texas. He was 72. Ways to improve the experience, notable deficiencies, workarounds, and notes about incorporating the software into modern workflows (if possible). Speaking honestly, too much is missing to recommend Electric Pencil on the TRS-80 for a modern workflow. trs80gp v2.5.5 on Windows 11 Emulating the default TRS-80 Model III 48K RAM 4 floppy drives TRSDOS v1.3 Electric Pencil 2.0z Move the cursor to the start of the document with (move to the "beginning") to open the command tool screen. type as Can't remember the filename? type Don't see your file listed? That's because only lists /pcl files. will list everything on disk, including /txt files like I'm using. In the menu, go to an empty drive number Select to get a blank, formatted disk for your work See how the disk name has around it? That means it is referencing an internal copy of a master blank disk. Your changes to it will not be saved to this disk In the drive menu for this disk, select and give your disk a name. In the drive menu for this disk, select for the named disk Now and select the disk you exported above. This disk is your personal copy, saved to the host operating system, ready to accept your writes. When you finish working and want to shut down the emulator, check the menu to see if any disks are prefixed with . If so, that disk has changes in memory that have not yet been written to the filesystem. Those changes will be lost if you shut down. Use on that diskette to save its changes out. trs80gp offers relatively minimal options for speeding up performance. It automatically kicks in "Auto Turbo" mode when accessing the disk drive, so I didn't find it annoyingly slow to read/write even though I'm using virtual floppies. A virtual hard disk is an option, but configuration looks... complex . I'll dig into that later. mode makes a noticeable difference in input and scroll speed. I didn't notice any troubles using that mode with this software. It was definitely a time-saver to set up the Windows shortcut with launch parameters (Properties > Shortcut > Target) to auto-insert program and save disks on launch, enable "Turbo", and set the emulator's typing mode to "Typing Layout" (see Troubleshooting, below) Options for those not running on Windows The TRS-80 emulator scene itself seems fairly anemic, especially outside of Windows. There is a Javascript emulator , but it feels a little heavy for my lightweight needs, and the hosted online versions seem to disallow arbitrary disk insertion. I'm completely unclear how to get at my personal data even if I did manage to save my work. That said, it is open source on Github and may be a better option than my initial tests indicated. So I suppose you could run a Node server? Or run it in a web browser? to interface with an emulator which runs the software. How many abstraction layers are you willing to put up with? For a native macOS app, the only option I can recommend is kind of non-native: run trs80gp and trstools in WINE. No other app is maintained to work on modern macOS, or if it runs its "experimental" or broken in some fundamental way to render it unusable. On Linux, I'm still investigating. Remember: in trs80gp's Diskette menu if you see beside a drive, that means it has been written to virtually but has not been written to the host operating system yet. This can happen if you have a diskette with brackets, indicating a virtual copy of an internally defined master diskette. Export that diskette, stat! Keyboard input has three options. One is notably called "Typing Layout" and it addresses the issues I encountered with certain character inputs doing a kind of double-input. For example typing always resulted in printing to screen. "Typing Layout" felt much more stable and behaved as expected, though it had its own quirks (see What's Lacking, below) If you get an error saying , you probably have the cursor at the end of the file and are trying to save. to move to the start of the file before saving. Cannot stress this enough. In a sense it is easy, and in a sense it is annoying. The easiest way I found to get my data out of TRSDOS world is through the utility trstools . Use it to browse your TRSDOS disk, then simply open a file and copy out the contents. It's just plain ASCII; there are no special word processing code embeds. Caveat! There are no embeds unless you use the printer formatting functions! Then there are absolutely embedded codes and they're unfriendly to a modern workflow. They only apply to doing real printing to real vintage printers, so I recommend ignoring those features. No undo whatsoever. This bit me more than once thanks to (delete TO end of line) and (delete ENTIRE line) being right next to each other. You are essentially restricted to no formatting or a subset of markdown formatting. Getting the emulator keyboard and Electric Pencil to be happy together has simply not panned out for me. If I use "Logical Layout" I get double-input on many keys. If I use "Physical Layout" my muscle memory of where lives (for example) betrays me every time. If I use "Typing Layout" keys like stop working and keyboard commands for marking blocks of text don't work any more. There is no perfect keyboard choice for this program that I can find. No spell-checking without a secondary package like Blue Pencil or Electric Webster's . Search is strictly, only case-sensitive. For writing a basic skeleton of a document for this very blog, it worked well-enough. But to restrict all editing to Electric Pencil means not touching a thing within the Ghost blog platform. That is hard to resist. Limited keyboard support means writing without certain characters that come up in a modern context quite a lot, like The default "overtype" mode definitely has an adjustment period to get through, and will surprise you with how often it deletes the first character of a line of text when all you wanted to do was insert a new line. Getting the data out isn't a horrible process, but adds enough friction to the process to make it frustrating in a rapid write-edit-publish cycle. The small amount of text on screen at one time makes it difficult to read and scan through long text to find specific passages for editing. If you're a visual editor, it's going to be a rough ride. This predates Unicode and software-based fonts, so no international writing!

0 views
Stone Tools 2 months ago

Deluxe Paint on the Commodore Amiga

VisiCalc on the Apple II. Lotus 1-2-3 on the IBM PC. Aldus PageMaker on the Macintosh. Deluxe Paint on the Amiga. The computer industry loves a “killer app,” that unique piece of software that compels consumers to purchase new computer hardware just for the privilege of running it. I can personally attest to Deluxe Paint as it compelled even my technophobic mother to buy into its potential. One day at a small strip-mall in Charlotte, North Carolina, mom went shopping for quilting fabric. I, a teen with less than zero interest in quilting or fabric or being seen with a parent, wandered into the computer store a few doors down to lust over the black and chrome Ataris. Maybe this would be the day I finally saw an Atari 1450XLD in the wild! I was obsessed with the futuristic stylings of that line; they looked powerful . I would get some serious work done . That specific device never released, but what I found instead changed my life. The salesman really didn't have to work too hard that day. So much of the demo of the Commodore Amiga (not yet called the 1000) left us in awe, but it was the art and color-cycle animations in Deluxe Paint that sealed the deal. The decision was made to upgrade the family computer from the ADAM to the Amiga. Though it was my first experience with a mouse, I was pushing pixels around like I was born to it. As I learned the way of the pixel, I remember feeling clever when I devised a way to smooth hard pixel edges (“anti-aliasing,” I later learned) and to checkerboard two colors to simulate a new color (“dithering,” I later learned). Those who used Deluxe Paint continue to chase its high. Would-be successors to its pixel-art throne come and go, but none have clicked in quite the same way. Let's see if a re-connection is possible with my old love after. . . (I feel physical pain writing these words) FORTY YEARS Deluxe Paint III was my last personal experience with the program and was the last version creator Dan Silva developed, so that’s the version I’ve chosen to examine. I remember it being more than enough for me at the time, and I suspect it could yet be a good fit for my (occasional) pixel-art needs. It lacks one key feature that I think I’ll miss: layers. We’ll see how it goes. To evaluate the program, I need a goal. I will work through Chapter 6 in the manual, titled “Painting Tutorials.” As well, I’ll take a peek at the animation tools introduced with this version. I’m particularly interested in “animpainting” which is, “painting while the frames flip.” That sounds pretty rad. From Windows desktop, I'm "ready to paint" in about 30 seconds and the sight of that familiar toolbar feels like a small reunion. A slim vertical column, it's neatly packed with the tools you’ll spend nearly all of your time in: brushes plain and dotted, shapes filled and unfilled, airbrush, text, magnification, and my personal favorite "symmetry." Most are summonable by keyboard, even mid-stroke. When present, the UI never feels like an obstruction, but it gives way by F10 for a full-screen canvas, or politely steps aside by F9 , hiding but not disabling the menu bar. The default color palette stokes some dormant ember of love that I realize now will smoulder until my death bed. It's been 40 years, I should have moved on. I thought I had! But feeling again the precise, silky movement of the brush confirms that all future loves will be (fairly or not) compared against Deluxe Paint . As I play around exploring the tools, I do wish I/O polling of the mouse were better. Swiftly-drawn curves are flattened out into a series of discrete lines which only approximate my motion. If I wanted to lay down large washes, I would want fast, perfect, full-screen brush motions. I don't typically work that way, so my personal drawing needs are well-met. I see demonstrable lag in certain brush effects, however. A fat brush in symmetry mode requires slow, precise movements to let the system "catch up." The “smear” effect is similarly slow, especially considering it just push-scatters pixels along the brush stroke (the 32-color palette can't actually "mix" colors). Combining those into “symmetry smear” just combines the slowness. Clearly we’re at the boundary of what a 68000 CPU @7.16MHz system can pull off with finesse, even with Denise's assistance . That said, even if the system struggles it doesn't fail. *knock on wood* Perhaps a virtual CPU upgrade is in order. The tutorial begins with a focus on color. Mixing colors, RGB vs HSV, "spreads" (gradients), "ranges" (a set of contiguous palette colors, for flood fill and color-cycling), and other palette manipulations. I'm struck how Deluxe Paint 's UX feels somehow more "color-centric" than current software. For example, here's how gradients are built. Generating a spread just redefines the colors in our palette. There is no relationship between the colors, other than visually. This is great for mixing up new colors, but spreads are made more useful by "ranges." A color “range” is a user-defined contiguous subset of palette colors which has an associated dithering, speed, and direction. Perhaps you’ve seen the color-cycle animations of Mark Ferrari ? (Perhaps you’re an Aseprite user who has been patiently waiting since 2019 for color-cycling to be added?) The clever application of colors within a range can produce pleasing color-cycle animation effects. 0:00 / 0:05 1× “Ugly Waves on an Ugly Beach" - Christopher Drum, 2025 (look at the palette to see how the colors are cycled through in position) Any brush that does flood-fill can flood-fill with a range. One option forced me to check if it exists in Affinity Photo (it does not). Linear gradient has horizontal fill and horizontal line fill. Horizontal line fill scales the gradient per horizontal line, so each line begins and ends with the start and end colors of the spread. Now we can draw “realistic spheres!” (I guess "realism" had a looser definition back then.) While working through the tutorial, I jump into modern programs for direct comparisons: DPaint.js , Aseprite , PixiEditor 2.0 (released while I was writing this), Pro Motion NG , and Affinity Photo . Until I started doing this I hadn’t really internalized how much the Adobe-ification (Microsoft-ification?) of palettes and panels and toolbars and menu options which open entirely other screens of UI panels and toolbars and menus has frozen the evolution of creativity software. The UI chrome of modern products suddenly feels boxy and oppressive, and I find my emotional approach to that software reflects the same rigidity. Dan Silva once told the Computer History Museum I’d like to just sit with that thought a moment. The first version of Deluxe Paint had no menus; it was all keystrokes and it worked fine. A keyboard-friendly mindset continues into Deluxe Paint III. Its robust keyboard controls allow the artist to switch up drawing tools on the fly without having to mouse back over to a toolbar. Mind you, I’m not lamenting how things “should have” turned out. I’m not angrily shaking my fist at the clouds, onions tied to my belt, “We’re doing it all wrong!" However, I think there is a kernel of knowledge in there about software’s relationship to the artist that is under-explored. The common cry “artists are visual people” discredits artists as being somehow incapable of learning software which doesn't shove every tool, option, and setting into their faces at all times. Basically, I’m not convinced a cockpit of controls is the best UI for making art. Returning to the tutorial, now we get to dig into real, practical work. “We will take a relatively plain corporate logo and spice it up,” it says. The manual is from the 80s, so are pastel triangles with neon squiggles, the "giant shoulder pads" of graphic design, coming our way? Well, we’re here for the software, not to pass judgement on the times. Full steam ahead! Deluxe Paint has the concept of a “brush.” I say that like you've never seen a brush before, but it is a very core object upon which a lot of Deluxe Paint 's advanced functionality rests. Simply put, a brush is an arbitrary selection of pixels. You can freeform paint with it, use it to draw shapes, or just click around stamping down copies. Brushes may be modified by applying irreversible transformations. This is the point of the review where I say a silent prayer of thanks to Monsieurs Casteljau and Bezier and whomever developed unlimited undo. Low resolution logos with aggressive transformations applied can quickly degenerate into a heap of pixels that resemble the original only if we squint and agree to the fiction. Multi-color brushes can be used as single-color in "Color" mode, great for laying down pixel-perfect drop shadows. Colors in a brush can be swapped or replaced to quickly experiment with new color combinations. You can "Outline" the brush in the current background color, but the effect is weak, and there are easy, manual ways to produce better results. Part three of the tutorial digs into a very cool feature: stenciling. You know it as masking, but with indexed colors it works a little differently. We can lock specific colors of our palette to prevent them from being affected by any further paint or fill effects. It’s quite satisfying to see thin strokes being pixel-perfect filled with a dithered gradient leaving the background untouched. Stenciling is shown as a real-time composite effect, which feels like magic for a system from 1985. If I have a big, multi-color brush loaded it will peek through unstenciled colors, and hide behind stencils without lag. It’s awesome. Then, a big secret is revealed. While we have been working on this canvas, there has been a second blank canvas waiting for us the entire time. Press to “jump” between the two. Use one as a scratchpad, use the second for your artwork proper. Or just draw two pictures? Stamp a copy of your brush down in one, transform it in the other. The program continues to reveal its depth. In addition to locking individual colors, we can also lock the entire image, defining it as our background. Once set, "Clear" on the canvas reverts back to that locked image, like a permanent underpainting. With the background locked, we can paint on top then lock those pixels as the "foreground." Having now locked both the background and the foreground, what happens when we try to paint? What other ground is there? Some kind of. . . middle?. . . ground? No, that word isn’t even in the manual. I guess I could try it and. . . GASP ! So we are now painting between the background and foreground images, making "layers" tantalizingly close to realization. Even if there had only been three (fore, middle, back), Deluxe Paint could have beaten Fractal Design Painter to the punch. Marvel must surely have a multiverse where that happened. The tutorial ends with the 3D perspective tools. I remember back in the day being amazed at anything resembling 3D perspective on the computer screen. Even the mundane runway numbers on the tarmac in Flight Simulator seemed like impossible magic. Trying to follow along with the perspective tutorial is proving difficult. The steps required to use it smoothly are complicated, though it is still a neat trick. is used to apply a 3D rotation to the brush. For example, spins the brush backward on the X-axis, which gives us a quick and dirty (emphasis dirty) Star Wars text crawl effect. Brush movement is handled by mouse for X and Y, and for Z. Rotation is handled by keypad. allows coarse steps with the keyboard control. moves forward/backward through Z-space. There are tools for setting the horizon line, changing angle calculations, determining 3D relativity (screen space vs object space, which can be separate for movement and rotation), setting a grid for fixed-space snapping, setting the anchor point of the brush around which transformations occur, and more. It’s overwhelming and doesn’t feel coalesced around a solid vision of “how to control objects in 3D space.” My love feels a first twinge of betrayal. Working with this tool is not pleasurable . Often, a 3D movement results in a coarse, jerky response that is visually hard to read and when it's done I can't immediately understand the current state of the brush. Even the example image provided on disk to show off the feature is lame. It’s a lot of training and learning for a small payout. A novelty. Animation, on the other hand, is fantastic. Forget what I said before about betrayal! I'm sorry, I should never have doubted you Deluxe Paint . You're awesome! At its most basic usage animation is just a flip-book. Set a number of frames (memory permitting!), draw on each frame (keyboard control for stepping forward and back), then play those frames back in sequence. It's a simple, easy to navigate animation method. “Animpainting” auto-steps the frames while you draw. You can do something akin to "puppeteering" a brush. Take a “ball” brush, move to frame 1, hold down (left ALT on a non-Amiga keyboard) and start drawing. As you draw, the brush paints itself across frames. Played back, your brush movement has defined the animation movement. The relatively complex “Move” tool lets you precisely define a rudimentary motion path across a desired number of frames. Using the oddly-named “Dist” and “Angle” settings, you numerically define the position and orientation in 3D space where the brush should appear in the final frame. This is a slow process, so thankfully we can “Preview” the motion as a wireframe before committing to a render. When satisfied, “Draw” will go frame by frame, moving, rendering, and frame-stepping your brush automatically. This single-handedly sold me on the Perspective tool I soured on earlier. 0:00 / 0:03 1× This blog is not about games, but we can throw in a sly reference sometimes as a treat. Where "animpainting" captures your brush across frames, "anim brush" captures animation frames as a brush. As you move, the brush steps through its own frames, animating while you paint. These ideas can be combined into "animpainting with an anim brush" such that each frame of your brush is applied in turn to each frame of the canvas. In this way you can animate (say) a bird flying along any arbitrary path by simply painting a brush stroke. The brush stroke is your animation path. "anim brushes" can be used in conjunction with other tools the same as any other brush can. Turn on airbrush and we can have "airbrushed animpainting with anim brushes." Then, turn on symmetrical drawing to get "symmetrical airbrushed animpainting with anim brushes." Then turn on color-cycling to get "color-cycled symmetrical airbrushed animpainting with anim brushes." Consider something as simple as drawing in symmetry mode, then applying fills. In Deluxe Paint we can combine our tools into a "symmetry gradient flood-fill" and flood-fill multiple areas symmetrically, simultaneously. In Affinity Photo "symmetry," "gradient," and "flood fill" are three utterly discrete tools that do not interact with one another. Have I beaten my point to death yet? I wonder if an overly developer-centric approach to modern software design has locked us into this "one tool at a time" mindset. Keeping tools independent and discrete must surely make it easier for Adobe to add features year-over-year. (argue in the comments if that is "good" or even "necessary"). Need a new tool? Just cram another button into one of the panels, slap an adjustment slider on it, and Bob's your uncle. But returning to Deluxe Paint after all these decades, I understood something I hadn't realized before. Its tools don't just coexist, they collaborate with one another. It feels akin to an artist cobbling together a unique tool from stuff lying about the studio. As the artist using them, I feel similar collaboration between Deluxe Paint and myself. My sense of creative exploration is encouraged. I’m encouraged to play, not just follow procedure. My mid-range laptop today is some 50,000x (?) more powerful than that Amiga, yet the laptop’s power seems almost exclusively funneled toward the mechanical goals of speed, scale, and rigid precision. I humbly suggest we're overdue in turning that power back to humanistic goals like play, intuition, and surprise. Deluxe Paint still holds up, admirably so in fact. Using it again after all these decades, it remains one of the purest forms of digital expression I think I've ever used. It was a genuine pleasure to reconnect with this beautiful software. This being the first in the series, an explanation of this section is in order. Here, I will address ways to improve the experience of using the software, point out notable deficiencies, explain workarounds, and in general give pointers about incorporating the software into modern workflows, if possible. A wonderful side-effect of using an emulator on modern hardware is that "hardware upgrades" to the virtual machine are just a click away, not "solder an expensive daughtercard to a motherboard." Not every program handles faster hardware appropriately, but Deluxe Paint III absolutely benefits. Multi-color symmetrical gradient fills are very fast, but not instant. Fast mouse motion is captured more accurately, but again it's not perfect. WinUAE v6.0.0 (2025.07.02) 64-bit on Windows 11 Emulating an NTSC Amiga 1000 512KB Chip RAM, 512KB Fast RAM 68000 CPU, 24-bit addressing, no FPU, no MMU, cycle-exact emulation Kickstart 1.3 / Workbench 1.3.5 HDF (from Amiga Forever ) Windows directory mounted as my “hard drive” which makes it trivial to access the images I create from Windows Deluxe Paint III v3.25 Deluxe Paint : select a start color, click "Spread", click an end color Affinity Photo : select a pre-built gradient, adjust colors in a gradient designer Tweaked WinUAE settings: 68030 CPU CPU emulation speed 16x 8MB of FastRAM Options for those not running on Windows FS-UAE looks like a nice simplification of the UAE setup. vAmiga on macOS offers open-source fallbacks for those who don't own Kickstart and Workbench. Keypad not working in WinUAE? In see if a Port is occupied by a keypad override, such as a virtual joystick. “Error while opening DPaint: 103” means you need more RAM allocated to your Amiga virtual machine. If you have a host system folder set up as a "drive" in WinUAE, you have immediate access to its contents. By far the easiest way to access your work. XnConvert can trivially convert IFF images to any other format you can imagine. Page-flip animations are saved as a series of individual image files, one per frame, numbered sequentially. After batch converting them to .png, the resultant files can be handled by various free and open-source tools: ImageMagick : GIMP : import images as layers, then export as GIF animation Ezgif.com : drag in your numbered images then click "Make a GIF!" Saving out a color-cycle animation is tricky as it requires an application which understands indexed colors (common) and can also do color-cycling (rare!). Brute-force it with an OBS Studio window capture of the animation as it plays in a WinUAE window (I found Windows Snipping Tool stutters). DeluxePaint.js will load and play color-cycle animation, but doesn't have any video export options. I also saw mis-colored pixels in "presentation mode" Pro Motion NG has color-cycling, but doesn't seem to import IFF files. I must reiterate that Kickstart and Workbench are owned by Amiga Forever. Minimum cost for Kickstart/Workbench 1.3 is US $20. One level of undo is definitely frustrating at times. Be sure to use your jump page to lay down brushes before altering them. No layers means you have to get pretty creative with the stencils and background/foreground locks. It's not "intuitive" per se, but it is learnable. Other color modes exist, and were expanded as Amiga hardware improved. Deluxe Paint IV in AGA mode might feel more flexible to many readers. There have absolutely been useful advancements in pixel-art tools over the years. Aseprite 's shading tool is very neat! While I'm not a fan of its UI, Pro Motion NG does a lot to bring Deluxe Paint tools into the modern day. It can even handle symmetry gradient contour fills, and beyond!

0 views
Stone Tools 4 months ago

Introducing “Stone Tools”

I grew up with computers. That’s a less-than-revelatory statement for sure, but for a child of the 70s it is a little rare. Growing up in rural Tennessee, no-one I knew owned a home computer, nor did most people really understand why someone would even want one. You already had a typewriter for typing, recipe cards for the kitchen, and board games for fun. If you wanted to play on the TV, buy a Pong machine. What more could a computer contribute to life? According to a slick Tandy/Radio Shack salesman, we could be organizing family finances, writing the Great American Novel, and educating the children. Computers are inevitable, the next frontier. Don’t be left behind! That sales pitch easily convinced my gadget-loving father to bring home a TRS-80 Model I when I was six or so. Dad also bought the “Expansion Interface,” a completely separate box big enough to support the monitor, for its increased RAM and floppy drive support. I recall him pointedly explaining that it must be turned on before the CPU, never the other way around, or I would destroy the entire computer. I quickly learned a new emotion that day: utter fascination combined with equal parts terror. Thankfully, I never did destroy the computer, but I did destroy a lot of ASCII “H” tie-fighters with my “X” x-wing fighter in Star Wars (a non-TM joint). As well, the London flat opening sequence of Scott Adams’s Pirate Adventure has CRT burn-in on my brain. The first game I purchased with my own lawn-mowing money was Zork , in the ziploc baggie, from a clearance bin in the mall; fond memories of betrayal by the cover art versus the actual gameplay. Games absolutely had a huge impact on the trajectory of my hobbying. That said, it would be a dishonest assessment of my computing history to say, “The Model I introduced me to computer games and I played a lot of games and loved playing games and that’s who I am today: a gamer.” You know what else made an equally large impact on me? “Biorhythm,” a junk science “calculator” that supposedly determines your physical/emotional/mental high and low points during a month. As a 7-year old, I bought into the concept wholeheartedly, fueled in no small part by the 70s' obsession with horoscopes and the zodiac . Combine mysticism with a computer, and the feeling of unlocking universal secrets was powerfully strong. The computer was calculating! Something! It MUST be true! Just look at that graph! With secret knowledge of the universe unlocked, the computer had already paid for itself as far as I was concerned, especially as I had no firm concept of money at that age. But I knew enough to know money was important to daily life, so I also played around with a “recipe cost” calculator. I didn’t have any real idea of how to work it, but it felt important. So now we have our finances in order, as well as an understanding of our attenuation to the universe. What else can we do? Well, we all have things we’re thinking so it would be nice to write it all down without needing to go out and buy a new ink-ribbon for the typewriter. We could even share those thoughts without needing carbon paper or a ditto machine. Sounds like a plan. It can be hard for anyone born from the 90s onward to understand how magical it felt to type on a keyboard and see your words appear on a TV/monitor. Coming from Pong, word processing was itself a joyful experience. With that enjoyment came a cultural learning process, as we transitioned away from typewriters. We had to learn the benefits, not just the playful joy. That took longer than you might expect, especially for those of us who weren’t growing up in Silicon Valley. Even into the 80s in North Carolina, my junior-high typing class was conducted on manual typewriters. Likewise, the zeitgeist understanding of word processors vs. typewriters had cognitive hurdles to jump, as evidenced by the UI of the Coleco ADAM word processor SmartWRITER . On-screen, a typewriter platen with roller knobs is displayed onto which your letters are typed, reassuring the user, “Don’t worry. It looks strange, but this is functionally equivalent to using a typewriter. Squeeze my hand, you’ll be OK! OK, don’t squeeze THAT hard, you’re just typing not defusing a bomb.” Culturally, we had paradigms to relearn in the transition between “What’s a computer?” and “Everyone has a computer.” So while I experienced firsthand the leap in graphics fidelity between Pong and ASCII Star Wars, why did I enjoy productivity software so much? What could possibly have fascinated me about “recipe conversions?” I think the answer is pretty simple. I was empowered. The computer helped me feel like I could contribute to family life, and even the world, beyond just mowing the lawn and weeding the garden. I could write a bedtime story for my sister. I could organize our recipes. I could read the stars and produce astrological guidance for family and friends . The potential was tangible. As technology improved, so too did my ability to harness my newfound empowerment. PFS: File on the TRS-80 Model III, Deluxe Paint and Instant Music on the Amiga, Aldus PageMaker and HyperCard on the Mac, and so many more great productivity tools shaped my personal and professional lives. Of course, I certainly continued to play more than my fair share of games over the decades and they made a huge impact on me. I was utterly blown away when I saw the arcade-perfect Marble Madness on my Amiga at home. But to say I was “impacted by” software can have two very different meanings. Games impacted me similarly to how the movie Raiders of the Lost Ark did. I had a great time, but I wasn’t motivated to start making games or movies, nor did I become an archaeologist. On the other hand, Deluxe Paint impacted me in a way that changed the course of my life. That introduced me to creating art on the computer, which prompted me to enroll in the art program at UNC-Charlotte, which introduced me to graphic design. That was reinforced by exposure to Aldus PageMaker while working as a journalist on the school newspaper and features magazine. That’s a completely other kind of impact. I recognize games had just such an impact on some subset of people. The Carmacks and Mechners of the world played games and felt compelled to make games. Still others played and studied games and game history, and continue that obsession into present-day. The gaming side of retro computing is well-chronicled and continues to be covered by many nostalgia-based content creators. This blog is not about games; it is about the other software. I’m interested in looking holistically at productivity (lets say “non-entertainment”) software, both the contributions and dead-ends to their genres, during the early years of the home computer: 1977 - 1995; basically the length of OMNI Magazine 's print run . That was a period of "anything goes" with a lot of developers experimenting with what was possible on a home computer, until Windows95 kind of homogenized the industry ( though challengers to the hegemony did pop up from time to time ). I do this research recreationally and for my personal projects as well. It struck me that what fascinates me must surely be of interest to others, and I’d love to share what I learn with the community. Surely I can't be the only one who is getting a little bored of so much retro-gaming discourse? Surely?! my voice echoes into the TCP/IP void, recedes, and dies We can understand the intent of this blog as a spreadsheet with machines on the horizontal axis and software genres on the vertical. Any given intersection forms the basis of a potential article in the general form of . Posts take the form of a kind of a review/journal/retrospective. I use every piece of software as I write about it, so you'll get a real-time account of my experience learning and using it productively. You'll get a humanistic assessment of the software, its role in history, and a consideration of its viability today. The title was chosen to reflect that I’m not ( necessarily ) advocating we all buy Apple IIes and return to the software of the past “when things were better.” Rather, it's a recognition that early productivity tools were the rough-hewn flint axes which got the job done, even as the industry struggled to understand how best to solve the problem of “getting work done.” They were a necessary evolutionary step before the bronze age tools of today. As someone who cloned VisiCalc , I understand just how crude those early tools are. Even so, I find myself continually re-exploring that old software. There is utility in those old tools and interesting ideas to be mined. Recently I stumbled across something that by all accounts should have set the world on fire , but whose ideas needed more time to germinate before blossoming much later . Discoveries like this are not just nostalgic “what ifs” to opine wistfully upon, they can be dormant seeds of the future. Computing moves at such an unrelenting pace, those seeds may lie dormant for any number of reasons: bad marketing, released on a dying platform, too expensive, or even too large a mental leap for the public to “get” at the time. I see this blog as a way to explore the history of the work tools we use every day. I don’t do this out of misty-eyed sentimentality, but rather pragmatic curiosity. The past isn’t sacred, but it is still useful. Perhaps I can sum it up more succinctly like this: stone tools still cut meat.

0 views