Open larsbrinkhoff opened 6 years ago
@taa01776 wrote:
The next game of note was Trivia (who says research labs aren't ahead of their time?), an ongoing "can you top this" contest for the truly crazed. Trivia, unlike Maze, could be played by network users, and achieved wide popularity on the ARPAnet. Marc Blank wrote the second version, and I maintained/hacked it; it was actually a legitimate test of a database system the group used for a research project.
From the book "Twisty Little Passages: An Approach to Interactive Fiction":
A less visually spectacular MIT game -- but one that was available on the ARPANet and became quite popular -- was a text-only quiz game, Trivia. Tak To (who had also coded some additions to Maze) write the first version of Trivia, which Anderson said was an "utter kludge." Around 1975 or 1976 Marc Blank built a type of database system, a message store, as part of his work on a DM project. As a test of this, he created a new version of Trivia. Those who played Trivia on MIT's ARPANet host 80 would be the first ones outside MIT to discover a new game on that computer in 1977.
From "Down From the Top iof Its Game":
Once the DM group had created MDL, they moved on to create libraries of software for the language, trying to supplant LISP as the programming language of choice. One such library was intended to provide programmers with robust methods for implementing persistent objects. It gave programmers a way of preserving the state of a computer program from one execution to the next. To demonstrate the use of persistent objects, Marc Blank and Tim Anderson of the DM group wrote a simple trivia game in MDL. It was their first foray into computer game development, but it paved the way for Infocom’s first commercial product: the legendary Zork.
@dlebling618 wrote:
I had also worked with Marc Blank and Tim Anderson on a Trivia game which had a database of thousands of questions submitted from all over the old Arpanet.
@wmyork wrote:
In addition to Zork (which I lost much more time to than Maze) the DM group (or at least individuals) also produced one of the first wide-area multi-player games, an ongoing trivia contest based on user-submitted content. I believe that there were players from all over the ARPAnet-connected world. I think that Peter David Lebling (part of the Zork creation team with Tim Anderson and Mark Blank) wrote and maintained it. He also perpetually occupied the top ranking slot with a commanding lead over the rest of us peons, though I held down 2nd place for a while.
http://globalwahrman.blogspot.com/2013/06/how-mazewar-escaped-from-lab-at-mit-in.html
The linked article is quite interesting, though somewhat inaccurate. Most importantly, "Trivia" was written and maintained by Tim and Marc (after Tak To's original version). I did a bit of work on it and contributed a lot of questions, but it was mostly their doing. I will admit to being quite good at trivia in general back in those days.
The Imlac "graphics lab" he describes wasn't: it was more often and mostly just a set of consoles wired up to the DM PDP-10. There was graphics work done on them now and then, and in one room was the E&S LDS-1: the Evans and Sutherland graphics computer that was wired into the 10 as well. Tak To wrote a "Maze Watcher" that ran on the E&S and let you snoop on ongoing Maze matches: an early anticipation of eSports...
Tom Knight's comment at the link is a bit harsh but basically true: Imlacs were hardware-ily flakey and software-ily prone to crashing. Still, the CPU was more or less a PDP-9 plus a set of graphics opcodes (easy to program -- we modified MIDAS to do assemble it), and the hardware was flakey partly because people would take the front panels off to "cool them down" and then either (a) kick the various boards inside, or (b) the memory boards would loosen and even fall out, as the front panels were what held them in, and they were (of course) mounted vertically and rather heavy (old-school ferrite core stacks).
The DM version of "Maze" (not called "MazeWar" until the Alto version he describes) was used (a few times) to play with folks out at USC who also had Imlacs with the special hardware mods that were otherwise unique to DM. Even with the 50kb (?) phone lines of the ARPANET it was pretty unsatisfactory, but one could play it. So Alto "MazeWar" was "one of the first," but certainly not the first "network distributed multi-person game with various points of view".
Generally a heavy weekend Maze session would leave lots of dead Imlacs to be revived of a Monday morning: I suspect a fair amount of kicking might've happened in the heat of battle. Modern keyboards would've died immediately under the strain. Because communication between Maze players went through a shared (and publicly writable--hey, it was ITS) page, it was possible to crash a session by garbaging the buffer. There were daemons (originally the Maze Guncher) whose job it was to find Maze games and kill them. I wrote a second one that was hidden inside another daemon, in principle making it less vulnerable to being hunted down and killed. Marc gets priority on Trivia (if I'm not entirely mistaken, it might've been called Zork for a while, because that's what we called a lot of hacks); IIRC, it was mentioned in at least one DM annual report, because it legitimately did provide a lot of testing for the "database" that Marc wrote (which was primarily for an email system we were funded to work on). My role, aside from submitting the most loathed question ever, and being the perennial also-ran to Dave on the leaderboard, was mostly sweeping up the elephant poop.
Tim: I'm dying to know what was the most loathed question ever....
Who was the Union commander at the Second Battle of Bull Run?
Short answer, not multiple choice. I got nothing but complaints.
From: Eric Swenson notifications@github.com Tim: I'm dying to know what was the most loathed question ever....
Henry Halleck? So I know I’m falling into a trap here. But why was this controversial? McClellan was relieved of duty about a year before, so he couldn’t be the right answer. Feel free to embarrass me since I know this must be a trap.
No trap—just very obscure, and Civil War trivia was, at the time, considered much more obscure than, say, Star Trek trivia. Second Bull Run was between the Seven Days and Antietam—McClellan hadn’t actually been relieved of command of the Army of the Potomac, but Halleck was in as overall commander. John Pope, leading the Army of Virginia. Lee said he needed to be “suppressed.” -ta
From: Eric Swenson notifications@github.com Sent: Tuesday, April 2, 2019 4:01 PM To: PDP-10/its its@noreply.github.com Cc: Anderson, Timothy A. taa@stresearch.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
Henry Halleck? So I know I’m falling into a trap here. But why was this controversial? McClellan was relieved of duty about a year before, so he couldn’t be the right answer. Feel free to embarrass me since I know this must be a trap.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/PDP-10/its/issues/1420#issuecomment-479174427, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABnTXabirsyn2JlQqi8UKAqHTY9FO9apks5vc7bggaJpZM4YsjW0.
@dlebling618 wrote:
we modified MIDAS to do assemble it
Yes, we have a file called IMDEFS which is .INSRTed to have MIDAS assemble Imlac program. I have used it for MAZE and SSV. (MAZE isn't running well yet; it seems to expect SSV to have the font data loaded at a particular address, but the versions we have don't match.) We also have the IMTRAN and IMLOAD programs which translate a MIDAS binary to an ASCII file with an Imlac bootstrap loader in front.
What I haven't figured out so far, is how to get SSV (or some other monitor program) onto an Imlac if cold started without anything usable in core memory. Was it loaded from paper tape, or from the TTY port?
Evidence from DM .TAPE directories:
Running ":TVDOC topic" prints a page from .INFO.; ITS TVDOC which is a help file for TRIVIA.
E.g. :TVDOC HOURS types
HOURS:
TRIVIA is loaded by typing either TRIVIA^K or :TRIVIA to DDT.
TRIVIA will check for the availability of the game (see below) and then
load the actual TRIVIA program.
The availability of TRIVIA for non-directory owners is as
follows:
Mon-Fri : 10pm - 9am
Sat-Sun : All day
Holidays: All day
There were two versions of TRIVIA. The first was done by Tak To (tt); people liked it, but it was very flaky. Well, it was a multi-player game in 1973: the technology wasn’t exactly well-understood. The second was initiated by Marc, using it as a testbed for a data store he built for legitimate purposes. I think that one would’ve started summer of 1975. Made it into DM’s annual report for either ’75 or ’76, because it legitimately did provide a lot of free stress testing for something that was primarily done for a research program.
Especially the later version was pretty popular in its day (since it did not have the habit of crashing at random). You’ll notice that the document describes limits on usage for non-directory owners—that is, people from outside DM, and especially outside the lab. It wasn’t quite Zork, but still reasonably cool. -ta
From: Lars Brinkhoff notifications@github.com Sent: Friday, November 15, 2019 2:13 AM To: PDP-10/its its@noreply.github.com Cc: Anderson, Timothy A. taa@stresearch.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
WARNING: This message originates from outside the STR organization. Please take appropriate care in opening any links or attachments.
Evidence from DM .TAPE directories:
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/PDP-10/its/issues/1420?email_source=notifications&email_token=AAM5GXO7GEE7NJPSWM43WODQTZDZTA5CNFSM4GFSGW2KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEERGBY#issuecomment-554242823, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAM5GXJJPGBVVDE742W3AKLQTZDZTANCNFSM4GFSGW2A.
I don't recall COMSYS itself knowing anything about TRIVIA. However, COMSYS was capable of being "programmed", e.g., by writing MDL code that would be run by COMSYS when various events occurred - e.g., at some particular time, when a message arrived for a particular mailbox, when you sent, replied to, or forwarded a message, etc. Such code might have been kept in COMSAV; perhaps that was part of whatever Mark did with the message project and a new database. By then I was only maintaining COMSYS itself (not much to do), but other people were building stuff "on top of" COMSYS, using it essentially as an email-based interprocess-communications facility and scheduler, with the ability to be programmed.
Re: loading Imlacs. I recall there was a boot loader that you frequently had to load into Imlac memory. It was accomplished by using the Imlac console switches and those big square push buttons to deposit instructions into memory. That was a frequent Monday-morning task to recover from weekend Mazing. I'm 99% sure that the code was a very basic boot loader to pull SSv or whatever down the TTY line from the PDP-10. The Imlacs had no paper tape or other I/o device.
Trivia: I have a possibly incorrect memory that Marc's data store project was used to store COMSYS emails at some point in its development. Not all sure how that leads to a "COMSAV; TAILOR TRIVIA" file though.
Imlacs: Jack is correct. The boot loader just pulled data (provided by IMLOAD) down the TTY line. It wasn't very many instructions to toggle in; just enough to make you scream. Late in the IMLACs' career, I hacked "standard start code" so that you could have a live SSV and a live Maze (or other program) in memory at the same time. I don't recall how one switched between them (probably-false memory says "there was a key combo"); perhaps some of the "found" documentation mentions it. It might explain why different versions of SSV are incompatible.
There was also a single IMLAC that was hardware-modified so that displaying a character didn't take a full word but rather had the actual 7-bit ASCII of your text (two characters to a word). The hardware then called a routine in a table of all the ASCII characters' drawing code. It was a student project.
ToTS tape 9006234 has these files:
MADMAN; TVDOC 14
MADMAN; TV FILE
MADMAN; TVUPD 5
MADMAN; TRV SAVFIL
MARC; AR1 TV
MARC; TVDEFS 2
MARC; TVFROB 1
MARC; TVFROB 5
MARC; TVFROB NBIN
MARC; TVGUTS 4
MARC; TVGUTS NBIN
MARC; TVHACK GBIN
MARC; TV SAVE
Marc's archive file:
DATDEL 3 DATDEL NBIN LISTER 13 OBITUA 4 TMAINT 12 TRIVIA 210 TS TRIVIA TS TVBIGL TS TVDOWN TVBIGL 1 TVCOPY 5 TVDOWN 2 TVINIT 6 TVLOAD 3 TVMAN 5 TVWARN 1
It seems TRIVIA 210 is the source for TS TRIVIA. Similar to (and probably largely copied to) TS ZORK, it loads MADMAN; TRV SAVFIL and looks inside for the version of Muddle. It then tries to load SYS1; TS MUDver.
“Similar” only in that it was the previous hack; I don’t think any of Trivia made it into Zork.
There was a previous Trivia game done by Tak To, which people liked (trivia!), but it had various annoying features (fragile ASCII data store, if I’m not mistaken). Marc had a summer job in DM developing a shared data store for an email-related research program. Because it was irresistible, and because the store really did need to be tested under load, he developed a new multi-player trivia game that sat on top of it: users could enter questions, answer questions, score answers (it took “short answer” questions as well as multiple choice), etc. I think it had some kind of messaging thing going on as well. It had pretty broad popularity--at least at 545 Tech Square--for quite some time. It was mentioned in that year’s LCS annual report because of the testing aspect.
The executable probably was called “zork” for a while, since that was a name used for hacks like that—it was not invented for the game. -ta
Ceterum autem censeo Microsoftem esse delendam.
From: Lars Brinkhoff notifications@github.com Sent: Saturday, August 1, 2020 5:01 AM To: PDP-10/its its@noreply.github.com Cc: Anderson, Timothy A. taa@stresearch.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
WARNING: This message originates from outside the STR organization. Please take appropriate care in opening any links or attachments.
ToTS tape 9006234 has these files:
MADMAN; TVDOC 14 MADMAN; TV FILE MADMAN; TVUPD 5 MADMAN; TRV SAVFIL MARC; AR1 TV MARC; TVDEFS 2 MARC; TVFROB 1 MARC; TVFROB 5 MARC; TVFROB NBIN MARC; TVGUTS 4 MARC; TVGUTS NBIN MARC; TVHACK GBIN MARC; TV SAVE
Marc's archive file:
DATDEL 3 DATDEL NBIN LISTER 13 OBITUA 4 TMAINT 12 TRIVIA 210 TS TRIVIA TS TVBIGL TS TVDOWN TVBIGL 1 TVCOPY 5 TVDOWN 2 TVINIT 6 TVLOAD 3 TVMAN 5 TVWARN 1
It seems TRIVIA 210 is the source for TS TRIVIA. Similar to (and probably largely copied to) TS ZORK, it loads MADMAN; TRV SAVFIL and looks inside for the version of Muddle. It then tries to load TS MUDver.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/PDP-10/its/issues/1420#issuecomment-667498936, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAM5GXLMHNKKEIMBES4H2ILR6PKUDANCNFSM4GFSGW2A.
Hello @marcblank
FYI, this is the GitHub issue about Trivia.
No idea what to do with this...
From: Lars Brinkhoff notifications@github.com Sent: Saturday, August 1, 2020 10:15:02 AM To: PDP-10/its its@noreply.github.com Cc: marcblank marc.blank@live.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
FYI, this is the GitHub issue about Trivia.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPDP-10%2Fits%2Fissues%2F1420%23issuecomment-667561548&data=02%7C01%7C%7Cf6e0902457bf4724da9208d8363e6e9d%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637318989051255280&sdata=1J1R4DnpZSX3uiI0PrVq9mx8sqCILTmY5UcQwtQjOoA%3D&reserved=0, or unsubscribehttps://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEIO63G5VTE2U74DI7BGVKLR6RERNANCNFSM4GFSGW2A&data=02%7C01%7C%7Cf6e0902457bf4724da9208d8363e6e9d%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637318989051265274&sdata=NEDVlCUrVRPydgOmDs0dSTq%2FkPNp8Kx0YDOw5FbMvRA%3D&reserved=0.
Sorry, maybe this link works better:
https://github.com/PDP-10/its/issues/1420
I forgot to answer Lars' earlier question (last November) about COMSYS configuration. So, what I remember....
COMSYS didn't have a lot of settings since it only ran on one machine - DM. Configuration of all sorts was kept in MDL data structures, which could be written out to disk. I don't recall if it actually had to do that though; everything might have been in the COMSYS demon file and included in the startup. There was never any need to make elaborate configuration options so it could be tailored to run on different machines; I'd just change the code and re-save the demon file.
However, each user (mailbox) in COMSYS had the option to have a custom configuration that would be loaded whenever COMSYS was operating on a message on behalf of that user. That configuration "script" (MDL function) was saved in the message storage just like everything else, and would run as needed. It could certainly do <FLOAD ...> of any file that the particular user wanted. So that might be what you're finding in COMSAV - various "mailbox" on-the-fly processing files.
Users used (and abused?) this capability. For example, someone set up a mailbox and used it to have the COMSYS demon do MDL compiles. He would send his source to that mailbox and somewhat later it would send the results back. That avoided a lot of peer pressure to stop hogging memory and CPU cycles, since no one but me could easily tell what COMSYS was doing.
I have no idea if TRIVIA was built as an email-based "user" running within COMSYS' world. It certainly could have been, simply by defining a mailbox to interact with TRIVIA players, creating an appropriate COMSYS "script" containing the TRIVIA engine to receive and process incoming mail and send out results. That might have been what files like TAILOR TRIVIA were.
MSB (Mike Broos) also did a lot of work on a "message store", essentially a database, as part of a project called MME (Military Message Experiment). You might look in MSB; and/or for files MME for more clues. That work revealed some limitations of ITS. In particular, doing the traditional technique of LOCK files to manage access to data files didn't always work - his database would get corrupted. Diving into the code revealed that the problem was that simply CLOSing a file didn't guarantee it got out to disk. With that fixed (introducing a system call analogous to Unix "sync"), files still got corrupted, but less often. It turned out you had to not only make sure the file blocks made it to the physical disk, you had to make sure the updated directory blocks were also written out. Duh. The frequent crashes (mostly memory failures) actually helped make this problem annoying enough that we could find it and fix.
/Jack Haverty MIT-DM 1970-1977
Trivia was a standalone application--did not have any connection to COMSYS. And you've refreshed my memory--I think Marc's data store was for MME, though for some reason I've always associated it with COMSYS. As I recall, it used shared memory, and could lock individual objects within the data file, rather than locking the whole file (SETOM and AOSE were involved...).
As I recall, the word MADMAN was used to indicate a piece of data in my implementation. The database itself might have been an ASYLUM. The database was a single file with internal memory allocation, if I’m remembering correctly.
Marc
From: Timothy Anderson notifications@github.com Sent: Saturday, August 1, 2020 12:43:01 PM To: PDP-10/its its@noreply.github.com Cc: marcblank marc.blank@live.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
Trivia was a standalone application--did not have any connection to COMSYS. And you've refreshed my memory--I think Marc's data store was for MME, though for some reason I've always associated it with COMSYS. As I recall, it used shared memory, and could lock individual objects within the data file, rather than locking the whole file (SETOM and AOSE were involved...).
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPDP-10%2Fits%2Fissues%2F1420%23issuecomment-667578279&data=02%7C01%7C%7C8406f7d61f904a10b2c108d836531a63%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637319077829141359&sdata=PLTzeTfHliZrXMC7lOr7roQJjaVGDdzTyrTP68u4Tgk%3D&reserved=0, or unsubscribehttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEIO63EJG35WD7A466BKM5DR6RV4LANCNFSM4GFSGW2A&data=02%7C01%7C%7C8406f7d61f904a10b2c108d836531a63%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637319077829141359&sdata=5d4NO%2FDpGmbaCupeVWnbKotQbDt4RZpL%2FUcqcAdSEbs%3D&reserved=0.
I also recall that Al Vezza was not all that impressed with the nomenclature. And yes it was intended for MME originally, but TRIVIA was a far more worthwhile use case. 😀
Marc
From: Marc Blank marc.blank@live.com Sent: Saturday, August 1, 2020 12:49:13 PM To: PDP-10/its reply@reply.github.com; PDP-10/its its@noreply.github.com Cc: Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
As I recall, the word MADMAN was used to indicate a piece of data in my implementation. The database itself might have been an ASYLUM. The database was a single file with internal memory allocation, if I’m remembering correctly.
Marc
From: Timothy Anderson notifications@github.com Sent: Saturday, August 1, 2020 12:43:01 PM To: PDP-10/its its@noreply.github.com Cc: marcblank marc.blank@live.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
Trivia was a standalone application--did not have any connection to COMSYS. And you've refreshed my memory--I think Marc's data store was for MME, though for some reason I've always associated it with COMSYS. As I recall, it used shared memory, and could lock individual objects within the data file, rather than locking the whole file (SETOM and AOSE were involved...).
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPDP-10%2Fits%2Fissues%2F1420%23issuecomment-667578279&data=02%7C01%7C%7C8406f7d61f904a10b2c108d836531a63%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637319077829141359&sdata=PLTzeTfHliZrXMC7lOr7roQJjaVGDdzTyrTP68u4Tgk%3D&reserved=0, or unsubscribehttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEIO63EJG35WD7A466BKM5DR6RV4LANCNFSM4GFSGW2A&data=02%7C01%7C%7C8406f7d61f904a10b2c108d836531a63%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637319077829141359&sdata=5d4NO%2FDpGmbaCupeVWnbKotQbDt4RZpL%2FUcqcAdSEbs%3D&reserved=0.
BTW, I really do miss PDP-10 assembly language. Must be some kind of pathology.
From: Marc Blank marc.blank@live.com Sent: Saturday, August 1, 2020 12:51:24 PM To: PDP-10/its reply@reply.github.com; PDP-10/its its@noreply.github.com Cc: Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
I also recall that Al Vezza was not all that impressed with the nomenclature. And yes it was intended for MME originally, but TRIVIA was a far more worthwhile use case. 😀
Marc
From: Marc Blank marc.blank@live.com Sent: Saturday, August 1, 2020 12:49:13 PM To: PDP-10/its reply@reply.github.com; PDP-10/its its@noreply.github.com Cc: Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
As I recall, the word MADMAN was used to indicate a piece of data in my implementation. The database itself might have been an ASYLUM. The database was a single file with internal memory allocation, if I’m remembering correctly.
Marc
From: Timothy Anderson notifications@github.com Sent: Saturday, August 1, 2020 12:43:01 PM To: PDP-10/its its@noreply.github.com Cc: marcblank marc.blank@live.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
Trivia was a standalone application--did not have any connection to COMSYS. And you've refreshed my memory--I think Marc's data store was for MME, though for some reason I've always associated it with COMSYS. As I recall, it used shared memory, and could lock individual objects within the data file, rather than locking the whole file (SETOM and AOSE were involved...).
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPDP-10%2Fits%2Fissues%2F1420%23issuecomment-667578279&data=02%7C01%7C%7C8406f7d61f904a10b2c108d836531a63%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637319077829141359&sdata=PLTzeTfHliZrXMC7lOr7roQJjaVGDdzTyrTP68u4Tgk%3D&reserved=0, or unsubscribehttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEIO63EJG35WD7A466BKM5DR6RV4LANCNFSM4GFSGW2A&data=02%7C01%7C%7C8406f7d61f904a10b2c108d836531a63%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637319077829141359&sdata=5d4NO%2FDpGmbaCupeVWnbKotQbDt4RZpL%2FUcqcAdSEbs%3D&reserved=0.
Trivia was a standalone application--did not have any connection to COMSYS. And you've refreshed my memory--I think Marc's data store was for MME, though for some reason I've always associated it with COMSYS. As I recall, it used shared memory, and could lock individual objects within the data file, rather than locking the whole file (SETOM and AOSE were involved...).
I have a strong but possibly incorrect memory that COMSYS also was retrofitted with Marc's MME/MADMAN/whatever data store.
I also recall that Al Vezza was not all that impressed with the nomenclature. And yes it was intended for MME originally, but TRIVIA was a far more worthwhile use case. 😀 Marc
A new no-fun age was dawning while all this was going on, and Al was worried that some Senator (like Mike Mansfield or William Proxmire) would find one of our funny names for things ("Muddle" comes to mind) and make a big deal about it. That's one reason why we always came up with "real world useful" explanations for our hacks.
Marc: well, maybe you want to re-experience the bliss of MIDAS by writing a new zork-like game for ITS in it?
Or you could rewrite the missing MDL compiler so we could recompile Zork?
Or you could implement the missing runtime support so we could re-link/dump Zork?
How 'bout it? :-)
Trivia was a standalone application--did not have any connection to COMSYS. And you've refreshed my memory--I think Marc's data store was for MME, though for some reason I've always associated it with COMSYS. As I recall, it used shared memory, and could lock individual objects within the data file, rather than locking the whole file (SETOM and AOSE were involved...).
I have a strong but possibly incorrect memory that COMSYS also was retrofitted with Marc's MME/MADMAN/whatever data store.
If COMSYS was changed to use the datastore, I don't remember it at all, so if it happened it must have been after I left MIT in 1977. That's certainly possible since I lost track of COMSYS. Actually, COMSYS was hard to get rid of, since it had a bunch of things it would watch internally (e.g., disk space) and it would send email to "COMSYS-MAINTAINER@MIT-DM" to warn about impending problems. When I was leaving, I set up COMSYS so all incoming mail to JFH@MIT-DM would be forwarded to my new account at BBN.
But I forgot that would involve COMSYS-MAINTAINER, which of course had a profile to simply forward all mail to JFH@MIT-DM. So for months I would get email whenever disk space got tight, which was frequent of course. Eventually after complaining to AV, the mail firehose stopped. But I don't know what he did (or most likely told someone to do) to change COMSYS' behavior. I think I had to set up my BBN mail system to just forward all the COMSYS-MAINTAINER traffic back to AV@MIT-DM.... or something like that.
Perhaps that was when the new datastore was introduced into COMSYS? A shared-memory approach with disk backing store would have been nice (lots like Multics actually), but we didn't have such stuff in ITS when I first wrote COMSYS. Or maybe KLH' COMSAT took over so it ran on all ITSes? I never did hear what happened.
/Jack
@eswenson1, hold your horses. The Muddle compiler and libraries may exist on some XX tapes. I'm exploring that option.
That said, PDP-10 hacking is a lot of fun! Especially on ITS. For me ITS is the best text adventure game where you explore unknown territories, learn about interesting characters, and solve riddles.
Re: loading Imlacs. I recall there was a boot loader that you frequently had to load into Imlac memory. It was accomplished by using the Imlac console switches and those big square push buttons to deposit instructions into memory. That was a frequent Monday-morning task to recover from weekend Mazing. I'm 99% sure that the code was a very basic boot loader to pull SSv or whatever down the TTY line from the PDP-10.
This has now been fully explored. An Imlac is supposed to have a 32-word bootstrap at location 40, whether in ROM or toggled in. To load SSV (or SST, STV, etc), run IMLOAD. It will instruct you to reset the Imlac and start from 40. The bootstrap loads a 64-word secondary block loader to address 17700. The block loader accepts the payload in blocks with start address/length information.
Late in the IMLACs' career, I hacked "standard start code" so that you could have a live SSV and a live Maze (or other program) in memory at the same time. I don't recall how one switched between them (probably-false memory says "there was a key combo")
Maze and some other programs load to address 10000 to coexist with SSV. The SSV key combo to jump there is Control-Shift-ESC. Well behaved programs return to SSV with Control-Z or similar.
I found more Trivia and Zork files from summer 1977. Must be a very early Zork!
Also a MUDSAV; TS MUD54 that seems to work. I just have to rebuilt ITS to include the "Message Slurper":
:mudsav;mud54
MUDDLE 54 IN OPERATION.:$ FATAL ERROR IPC DEVICE LOST $
I hope this was the last missing piece to be able to run the Trivia and Zork binaries.
Not quite there...
:marc;zork
Losers with the name LARS cannot play ZORK!
:KILL
*zork$j!
*$l marc; ts zork
*win$g
Welcome to adventure.
You are in an open field west of a big white house, with a closed, locked
front door.
There is a small mailbox here.
>I'm sorry, you seem to have encountered an error in the program.
Send mail to DUNGEON@MIT-DMS describing what it was you tried to do.
FIRST-ARG-WRONG-TYPE!-ERRORS
READSTRING
Your score is 0 [total of 387 points], in 0 moves.
This score gives you the rank of Loser.
:KILL
*
MADMAN SAVE is from July 1st 1977. Apparently the name Dungeon was in use already then.
You all are probably already aware of this, but some Trivia files have been released yesterday. The files are both source and compiled files from 1976-77.
Fond memories of building this!
Marc
From: heasm66 notifications@github.com Sent: Wednesday, January 27, 2021 1:27:56 PM To: PDP-10/its its@noreply.github.com Cc: marcblank marc.blank@live.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
You all are probably already aware of this, but some Trivia files have been released yesterday. The files are both source and compiled files from 1976-77.
https://github.com/MITDDC/trivia-1976-1977https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMITDDC%2Ftrivia-1976-1977&data=04%7C01%7C%7C06b59b1802dc414c9fd708d8c30a69c0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637473796771548151%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=gvVbnrj5fmK%2BIp5l95NLAV2vwEUaqB5%2BpRh8db649l0%3D&reserved=0
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPDP-10%2Fits%2Fissues%2F1420%23issuecomment-768588760&data=04%7C01%7C%7C06b59b1802dc414c9fd708d8c30a69c0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637473796771558147%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=CIH%2FLEsE74DAlrQQ3RZrJNkqbVywC9m%2BvWkLR9mt5do%3D&reserved=0, or unsubscribehttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEIO63D3QJ5X46Q2FKHSMBDS4CANZANCNFSM4GFSGW2A&data=04%7C01%7C%7C06b59b1802dc414c9fd708d8c30a69c0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637473796771568142%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=3qUTL8jCx2BIb4JMraCgcz0G25ytWuv4UritCOG8HG4%3D&reserved=0.
On top of the MITDCC files, a few more are needed to run TRIVIA. With those in place:
*trivia^K!
Documentation in MADMAN;TVDOC >.
Send mail describing any bugs encountered to TAA.
If TRIVIA absolutely refuses to work, :xfile taa;tvdown >.
TRIVIA.20.1
Your TRIVIA password:
Please confirm your chosen password,
Password:
The following information has been found more or less essential to new
TRIVIA users. Please read it.
[help text]
Question #1 by TAA Category: History Worth: 1.000 points
Which of the Boston Adamses (as in Adams Chronicles) made
the family wealthy, and how did he do it?
Your answer:
The Trivia sources USE
s the following library packages: CALSYM, TIMFCN, CALRDR, BUF, TTY, ASYLUM, MADMAN, STR, INFERIOR, MUDTEC. They all seem to be available on ToTS tapes, but have not been cleared yet.
For building, the usual stuff: GLUE, CLEAN, PURITY.
Very cool, Lars. Can you get through it -- or it die later on after playing for a while?
I only tried four questions or so. It's not like I know the answers.
Oh, so you can't get to the next question until you've correctly answered the last one?
Not at all. Trivia had user-submitted questions, which could be T/F/multiple-choice or short answer (might’ve been a couple other forms). Some of the answers (not multiple choice) had to be scored by the submitter. It was competitive; Dave was always top of the leader board, of course. -ta
Ceterum autem censeo Microsoftem esse delendam.
From: Eric Swenson notifications@github.com Sent: Thursday, January 28, 2021 12:19 PM To: PDP-10/its its@noreply.github.com Cc: Anderson, Timothy A. taa@stresearch.com; Mention mention@noreply.github.com Subject: Re: [PDP-10/its] Trivia game (#1420)
WARNING: This message originates from outside the STR organization. Please take appropriate care in opening any links or attachments.
Oh, so you can't get to the next question until you've correctly answered the last one?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/PDP-10/its/issues/1420#issuecomment-769241846, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAM5GXLVDXDWMASBOM5IYKLS4GMATANCNFSM4GFSGW2A.
@eswenson1 I asume you are EJS?
I don't know how MSGS work so I can't answer you inside ITS.
To get TRIVIA to work you need to create a fiule in your home directory:
:create ejs;_msgs_ ejs
*:trivia
Then:
Documentation in MADMAN;TVDOC >.
Send mail describing any bugs encountered to TAA.
If TRIVIA absolutely refuses to work, :xfile taa;tvdown >.
TRIVIA.20.1
Your TRIVIA password:
Thanks, @heasm66. I forgot about the need for the MSGS EJS file. I seem to remember seeing this with ZORK too when I got it running. Thanks. I'll do it.
To send an interactive message on ITS, use :SEND <UNAME><CR>
and then type your multi-line message. End with a
:SEND EJS
Here is a message.
^C
My MSGS file gets purged when I log out... I have to recreate it every time (on the its.pdp-10.se server). Strange because other files I create in my directory remains. How come?
That's strange. I've never seen that behavior before.
I looked into the dissapearing _MSGS_ files. DDT reads the text in the file, then deletes it. This was apparently introduced between DDT 1000 and DDT 1072 (we don't have anything in between) in 1978. It doesn't say so explicitly in DDT RECENT, but probably in this update by @BobKerns:
DDT 1072 RWK 10/12/78
Bug fixes prepratory to release to other machines, primarily.
:MSGS (and :GMSGS) now uses a database of dates, rather than a date file.
This eliminates the need for a large percentage of the files on the public
directories, and side-steps the question of what the file should be
called.
Attempting to run TRIVIA with the MDL 54 that we build in KA, I get:
*trivia^K!
Documentation in MADMAN;TVDOC >.
Send mail describing any bugs encountered to TAA.
If TRIVIA absolutely refuses to work, :xfile taa;tvdown >.
PDLOV; -322>>0 0/ 400000,,734222 0/ 400000,,734222
This is on a KA system (pdp10-ka). This is using the SYS;TS TRIVIA from tape 9006234 and the MADMAN;TRV SAVFIL from the same tape. Did this combination work for you? Or did you have to use the TS MUD54 from DM backup tapes?
Interesting, when I try to restore MADMAN;TRV SAVFIL into MDL 54, I get:
mud54^K!
MUDDLE 54 IN OPERATION.
LISTENING-AT-LEVEL 1 PROCESS 1
<RESTORE "madman;trv savfil">$
*ERROR*
MUDDLE-VERSIONS-DIFFER
RESTORE
LISTENING-AT-LEVEL 2 PROCESS 1
So that SAVE file must be for MDL 53. So I'm guessing, you were able to get this running by creating a new SAVE file for MDL 54? @larsbrinkhoff
I tried to load MARC;TVDEFS > into a MDL 54 and got the error:
*mud54^K!
MUDDLE 54 IN OPERATION.
LISTENING-AT-LEVEL 1 PROCESS 1
<FLOAD "marc;tvdefs >">$
*ERROR*
UNBOUND-VARIABLE
USE
VALUE
LISTENING-AT-LEVEL 2 PROCESS 1
That makes sense. Since I don't have the MDL 54 pure library available and the MDL 54 executable doesn't have a package system. So you must have used a TS MUD54 from ToTS and a corresponding MUDSAV;SAV FILE and MUDSAV;FIXUP FILE.
Game by Tak To, Marc Blank, Tim Anderson, Dave Lebling.
SYS; TS TRIVIA
SYSn; TS TVDOC link to TS PR
.INFO.; ITS TVDOC
MADMAN; TVDOC n