Thanks, Will! I played "Adventure" on RSTS/E back in the seventies. Now I'll give "Quest" a shot on SIMH (or my 11/83 w/RSTS/E)...
Cheers, Lyle -- On Sat, 29 Dec 2018 09:42:49 -0600 Will Senn <[email protected]> wrote: > All, > > I had some fun over the past few days playing around with BASIC-PLUS > and thought I would share it with you. I resurrected an old BASIC > game and played it on SIMH running RSTS/E V06C-03 and BASIC-PLUS > mostly to learn more about BASIC, my first language back in the day, > but also to play an old style adventure inspired game that was > originally written for a Commodore Pet 2001, the first computer I > ever programmed. > > Read on for some old time fun and reminiscence. > > TLDR (links at bottom of email): > 1. Grab SIMH > 2. Grab RSTS/E V06C-03 > 3. Grab the source code > 4. Fire up RSTS/E > 5. Paste the source code into the BASIC-PLUS runtime > 6. Play the game until you're weary of being lost > 7. Read the code to 'cheat' > > I wanted to learn BASIC "over the weekend". I found two books at the > used bookstore that looked interesting on the subject: > > 1. Introduction to BASIC, by Digital Equipment Corporation (DEC), > 1978. 2. BASIC, by M. Boillot and W. Horn, 1976 > > In preparing to go through the books, I wanted to find an environment > that would allow me to just type in the examples, as written, and > obtain the results, as written. So, I skimmed them looking for clues. > > I found the following in the DEC book on page xv: > > Because it is beyond the scope of this manual to describe each system > and BASIC version, it is necessary to choose a representative pair > for the presentation of examples. The examples in this manual are the > result of using BASIC-PLUS on the RSTS/E system. > > Further down the page, was an even more helpful bit: > > In response to the HELLO input, RSTS/E prints a line of > indentification such as: > > RSTS V06B-02 Timesharing Job 28 KB33 01-Dec-76 09:57 AM > > > The Boillot mentioned Dartmouth BASIC and it had pictures of DEC > equipment, so I was hopeful I could find a DEC BASIC-PLUS environment > to run examples from. > > So I went looking for a PDP11 compatible RSTS V06B-02 Timesharing > environment. Well, RSTS V06B-02 Timesharing doesn't appear to exist > in accessible places on the internet. However, RSTS V06C-03, does. I > downloaded the preconfigured RK disk image, fired up SIMH, and > started a session: > > pdp11 > > PDP-11 simulator V4.0-0 Beta git commit id: 0a00d806 > sim> attach rk1 rk2.dsk > sim> b rk1 > Device DP23: does not interrupt - device disabled. > Device DP26: does not interrupt - device disabled. > Device DP27: does not interrupt - device disabled. > Device DP30: does not interrupt - device disabled. > Device DP31: does not interrupt - device disabled. > > > RSTS V06C-03 Vixen (DK1) > > Option: START > JOB MAX or SWAP MAX changes? N > Table suboption? EXIT > DD-MMM-YY? 10-MAR-88 > 12:03 AM? 12:00PM > Command File Name? > > HELLO 11/70 > Password: PDP (won't echo) > > Fix a few annoyances in RSTS: > RUN $TTYSET > TTYSET V06C-03 RSTS V06C-03 Vixen > Terminal characteristics program > ? LC INPUT > ? lc output > ? scope > ? exit > > Ready > > 5 REM THE OBLIGATORY CONFIRMATION THAT THE WORLD IS OK > 10 PRINT "HELLO, WORLD." > > RUN > NONAME 12:18 AM 10-Mar-88 > HELLO, WORLD. > > Ready > > Next, I found and downloaded > DEC-11-ORBPB-A-D_BASIC-PLUS_LangMan_Jul75 and learned a bit about > RSTS's dialog of BASCIC. > > I tried some code from different sections of Boillot and they all > worked as written. I tried a few from the DEC book and the manual and > decided the environment was sufficient for learning BASIC. I then > worked through both books and the manual. It's amazing how well > written these books from a nearly forgotten era are compared to > today's. > > Once I got the hang of the language, I decided to go after a bigger > fish > - a 'real' program, a game, of course. The game I chose was Quest, by > Roger Chaffee, originally published in Byte magazine in July of 1979. > I had heard of Quest through another BASIC game I had played > extensively back in the day, called Treasure, by James L. Dean. Dean > wrote Treasure in 1980 and he credited Quest as inspiration for his > game. > > I downloaded archive.org's copy of the original article and printed > out the source code. I spent a day typing it in line by line and > another fixing my typos and misinterpretations (try reading a scan of > a 40 year old magazine page and see if you do any better). But, > eventually, I was able to fire it up: > > QUEST 01:13 AM 10-Mar-88 > QUEST > > YOU WERE WALKING THROUGH THE > WOODS, AND YOU CAME ACROSS THE ENTRANCE > OF A CAVE, COVERED WITH BRUSH. > > PEOPLE SAY THAT MANY YEARS AGO A > PIRATE HID HIS TREASURE IN THESE > WOODS, BUT NO ONE HAS EVER FOUND IT. > IT MAY STILL BE HERE, FOR ALL I KNOW. > > WHEN YOU ANSWER A QUESTION, I LOOK AT > ONLY THE FIRST LETTER, ALTHOUGH YOU CAN > TYPE THE WHOLE WORD IF YOU WANT. > > TYPE N,S,E,W,U, OR D FOR NORTH, SOUTH, > EAST,WEST, UP OR DOWN. TYPE P FOR SCORE > > > YOU'RE OUTSIDE THE CAVE. > GO SOUTH TO ENTER. > > WHICH WAY? > > Yeeha! Three and a half hours later, I had had found the treasure and > was wandering around trying to find my way out. I scoured the article > for hints and found: > > It is possible to get through the cave by reading the program and > decoding the data which defines the connections. If you do that, you > will deprive yourself of the pleasure of finally finding your way > through. It is also possible to "help" a friend by telling him how to > get through. I don't think the easy pleasure of knowing how to get > through can equal the joy of discovering the way, or the satisfaction > of having discover it, or the excitement of being on the way to > discovering it. I also don't think that anyone who merely plays Quest > can have as much fun as I have had in writing it, and watching other > people use it. > > Well that's a bummer, don't cheat and don't get help, love the thrill > of figuring it out? how many more hours is that gonna take? > > Then I found this in the same article: > No huge green snake will confront you, and event the pirate, who > swoops down to protect his treasure at some point, is beyond your > control. He steals back the treasure after you have found it, and the > problem continues: find the treasure again, and find your way out of > the cave. To make it more interesting, various passages open and > close according to your progress through the game. > > Wow! That's a bit more helpful, if cryptic. I wandered around looking > for a way out to no avail. > > I began to have doubts... I wasn't sure the code that I typed in was > actually right, maybe the reason I was unable to get out of the cave > was because I had mistyped a critical path... > > I perused the code - oops! Should have heeded the author's advice. > Sure enough my typed in code was good enough, my ancient text gaming > skills were what were lacking. The solution is entirely encompassed > by that little paragraph about the treasure, the pirate, and the > passages. I have to differ with the author on one thing though, I > really enjoyed finding the solution through both code and play. > > Make no mistake, Quest is not Adventure, it is much smaller and > simpler, but it's still fun and given that it ran in less than 7k, > it's pretty fun. > > Enjoy! > > SIMH - https://github.com/simh/simh > RSTS/E V06C-03 - https://skn.noip.me/pdp11/rk2.dsk > Quest Source Code - > https://drive.google.com/open?id=1yqQE6807RibvI8Lk3yaIRoY3OHjTwhXp > Annotated Source Code - > https://drive.google.com/open?id=1Y7MsK7I6jkkUkPXY6nF6A9mmtc__ZEeP > BASIC-PLUS Language Manual - > http://www.bitsavers.org/pdf/dec/pdp11/rsts/V06/DEC-11-ORBPB-A-D_BASIC-PLUS_LangMan_Jul75.pdf > July 1979 Byte Magazine - > https://archive.org/details/byte-magazine-1979-07/page/n175 > > Shorter links for those really long ones: > Quest Source Code - https://bit.ly/2TeS2TJ > Annotated Source Code - https://bit.ly/2SycHC4 > BASIC-PLUS Language Manual - https://bit.ly/2ESOa7X > > Will > > > -- 73 NM6Y Bickley Consulting West Inc. http://bickleywest.com "Black holes are where God is dividing by zero" _______________________________________________ Simh mailing list [email protected] http://mailman.trailing-edge.com/mailman/listinfo/simh
