[Simh] Quest from 1979 on RSTS/E V06C-03 in Simh

Brett Bump bbump at rsts.org
Sat Dec 29 13:38:18 EST 2018



On Sat, 29 Dec 2018, Will Senn 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

Or you could grab the pre-genned V6C kit from:

http://www.rsts.org/autoindex.php?dir=distros/RSTS_kits/&file=RSTS_V6C_Kit.zip

> 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:

No, you are correct.  Try as we may, there has never been found a copy for
RSTS/E prior to the (non functional) V06C-03 tape that sat dormant in my 
closet for the last 35 years.  Paul Nankervis found the 1 block error in
the INIT.SYS file in 2017 and so V6C got resurrected.  The list of missing
distros still unaccounted for are:

RSTS/E V5A, V5B, V5C
RSTS/E V6A, V6B
RSTS/E V7.1

Let me know if anyone finds any of these in an old dusty closet somewhere.

Brett

>
> 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
>
>
>
> -- 
> GPG Fingerprint: 68F4 B3BD 1730 555A 4462  7D45 3EAA 5B6D A982 BAAF
>
> _______________________________________________
> Simh mailing list
> Simh at trailing-edge.com
> http://mailman.trailing-edge.com/mailman/listinfo/simh
>


More information about the Simh mailing list