Meta tags:
description= Exploring time-sharing operating systems;
Headings (most frequently used words):
waits, further, information, questions, corrections, comments, in, sail, the, programming, checkers, and, history, files, file, time, reshared, arthur, samuel, getting, data, out, editors, features, tpk, lisp, fail, other, languages, development, environment, mix, playing, on, source, code, download, from, saildart, org, printing, extracting, to, your, pc, via, virtual, tape, uploading, sos, teco, tv, display, editor, more, creating, navigating, an, existing, editing, line, moving, text, exploring,
Text of the page (most frequently used words):
the (362), and (157), you (62), for (60), was (56), file (50), with (45), this (43), can (40), will (36), waits (33), sail (33), line (31), control (28), version (28), from (28), text (26), that (26), #program (26), are (23), there (22), type (22), files (22), here (21), use (20), also (19), source (19), not (19), dart (19), system (19), but (18), pdp (18), like (17), would (17), first (17), editor (16), one (16), using (16), press (16), your (16), tape (16), have (15), which (15), move (15), used (15), rel (15), checkers (15), samuel (15), rupert (14), end (14), get (14), saildart (14), ibm (14), any (13), manual (13), code (13), page (13), org (13), other (13), main (12), see (12), available (12), lisp (12), doc (12), run (12), two (12), machine (12), mix (12), comments (11), typing (11), some (11), copy (11), work (11), commands (11), then (11), new (11), create (11), dec (11), printer (11), real (11), language (11), questions (10), corrections (10), sos (10), how (10), has (10), its (10), could (10), enter (10), look (10), command (10), simh (10), editors (10), sim (10), computer (10), were (10), who (10), tpk (10), more (9), example (9), early (9), each (9), lane (9), want (9), display (9), via (9), lsp (9), tap (9), hworld (9), time (9), programming (9), something (8), character (8), further (8), license (8), cc0 (8), editing (8), back (8), shows (8), stanford (8), running (8), print (8), written (8), videobrain (8), languages (8), algol (8), string (8), please (7), com (7), add (7), 1974 (7), much (7), information (7), key (7), down (7), instead (7), start (7), called (7), same (7), what (7), had (7), several (7), directory (7), make (7), edit (7), set (7), jul (7), upload (7), backup (7), https (7), list (7), data (7), found (7), games (7), comment (7), define (7), especially (6), got (6), als (6), today (6), left (6), cursor (6), attach (6), image (6), second (6), being (6), above (6), when (6), exit (6), these (6), different (6), tops (6), class (6), 2026 (6), mtc0 (6), fail (6), www (6), game (6), his (6), assembler (6), knuth (6), begin (6), welcome (5), wrong (5), email (5), timereshared (5), update (5), both (5), such (5), creating (5), note (5), give (5), should (5), may (5), working (5), number (5), screen (5), moves (5), let (5), terminal (5), open (5), case (5), created (5), full (5), post (5), console (5), sun (5), download (5), done (5), out (5), rph (5), 1972 (5), those (5), development (5), playing (5), value (5), play (5), programs (5), macro (5), procedure (5), outstr (5), means (4), either (4), looking (4), pressing (4), now (4), return (4), times (4), where (4), moved (4), top (4), bottom (4), emulator (4), added (4), right (4), forwards (4), arrow (4), prompt (4), existing (4), txt (4), similar (4), teco (4), operating (4), details (4), standard (4), characters (4), numbers (4), developed (4), they (4), just (4), read (4), error (4), restore (4), sys (4), user (4), info (4), format (4), emulated (4), need (4), tools (4), virtual (4), take (4), output (4), way (4), rather (4), than (4), even (4), paper (4), aug (4), learning (4), original (4), research (4), fortran (4), 7090 (4), checke (4), later (4), parameters (4), university (4), came (4), lab (4), assembly (4), until (4), facilities (4), exec (4), arrays (4), boolean (4), hello (4), msg (4), array (4), integer (4), result (4), compiler (4), next (3), idea (3), hold (3), while (3), about (3), does (3), equivalent (3), moving (3), mode (3), space (3), backspace (3), changes (3), wanted (3), terminals (3), however (3), bit (3), say (3), introduction (3), try (3), few (3), disk (3), monitor (3), produced (3), directly (3), save (3), worked (3), view (3), works (3), allows (3), powerful (3), includes (3), earlier (3), although (3), arpanet (3), described (3), been (3), status (3), 200610 (3), header (3), recorded (3), login (3), archive (3), cont (3), switch (3), reverse (3), option (3), good (3), 1976 (3), versions (3), encoded (3), binary (3), still (3), between (3), environment (3), into (3), made (3), sites (3), book (3), helped (3), along (3), cross (3), win (3), against (3), board (3), home (3), able (3), arthur (3), history (3), wrote (3), systems (3), documentation (3), res (3), 1970 (3), donald (3), implementation (3), algorithm (3), compile (3), mit (3), associative (3), bitsavers (3), unreal (3), put (3), delimiters (3), macros (3), crlf (3), step (3), reply (3), procedures (3), world (3), dcs (2), meta (2), keys (2), far (2), capabilities (2), exploring (2), cut (2), attached (2), correct (2), place (2), show (2), prefix (2), lines (2), another (2), below (2), four (2), hand (2), slightly (2), saw (2), blog (2), entry (2), them (2), denoting (2), form (2), scroll (2), window (2), section (2), subsequent (2), stored (2), separated (2), feed (2), method (2), amount (2), memory (2), mon (2), iii (2), clear (2), blank (2), ctv (2), reg (2), navigate (2), present (2), neither (2), completely (2), after (2), don (2), hard (2), initially (2), late (2), 1960s (2), functionality (2), keyboard (2), around (2), convention (2), execution (2), concept (2), orientated (2), represent (2), ascii (2), alpha (2), shown (2), lower (2), mark (2), only (2), allow (2), couple (2), single (2), letter (2), basic (2), traditional (2), teletype (2), latter (2), fully (2), emulation (2), yet (2), interesting (2), lars (2), brinkhoff (2), getting (2), provide (2), possible (2), ftp (2), size (2), last (2), jun (2), 126 (2), dmp (2), trailer (2), all (2), scanned (2), structure (2), extract (2), directories (2), dsk (2), compiled (2), dump (2), mta0 (2), github (2), pdp10 (2), disassembler (2), tapes (2), takes (2), append (2), lpt (2), otherwise (2), name (2), most (2), sometimes (2), listing (2), _octal (2), octal (2), word (2), useful (2), 1970s (2), options (2), computers (2), 1950s (2), online (2), richard (2), july (2), vol (2), cpu (2), makers (2), hardware (2), instruction (2), 1977 (2), forced (2), three (2), piece (2), must (2), account (2), player (2), best (2), function (2), square (2), position (2), initial (2), duke (2), due (2), researchers (2), played (2), 360 (2), needed (2), according (2), projects (2), ported (2), techniques (2), john (2), mccarthy (2), 1956 (2), feldman (2), dartmouth (2), level (2), believe (2), vacuum (2), tubes (2), started (2), labs (2), target (2), posts (2), think (2), course (2), 1969 (2), author (2), without (2), depending (2), well (2), reference (2), debugger (2), planner (2), fasbol (2), linking (2), extra (2), speed (2), expressions (2), swinehart (2), ignore (2), statement (2), cvf (2), realscan (2), operator (2), abs (2), double (2), quotes (2), expanded (2), require (2), brchar (2), inchwl (2), array_size (2), foreach (2), father (2), leap (2), strings (2), input (2), block (2), statements (2), terminated (2), sharing (2), coded (2), reshared (2), documented, 1989, tved, les, seem, advanced, histories, reformatting, thing, uses, special, prefixes, denote, modifier, says, understand, operation, alt, release, affected, bar, column, modern, metaphor, clipboard, copied, sequence, images, issue, bug, final, shifted, triangular, appear, edited, normal, replace, esc, altmode, reject, accept, mentioned, showing, confusing, asterisks, dashes, echoed, navigation, forward, minus, summary, hundred, long, reduce, needs, kept, larger, moncom, navigating, log, taste, crash, properly, otg, rewrote, quickly, emacs, vim, keystrokes, quite, predate, follow, corrector, somewhat, cryptic, finally, non, preceding, escape, letters, plain, question, always, saved, differences, invoke, immediately, prepended, arguments, 100, 200, son, stopgap, classes, operated, interactive, once, sailing, dir, 1104, filnam, ext, total, reaches, repeatedly, quit, verify, transferred, specify, choose, everything, technique, bur, containing, intended, placing, uploading, order, store, 256, host, following, maps, drive, executable, somewhere, path, git, clone, larsbrinkhoff, utility, extracting, sends, normally, spooler, 0955, seconds, wildcards, send, creates, starts, keep, previous, change, already, quckstart, own, printing, quirk, latest, request, fetch, selected, dated, detector, recent, ensure, viewing, check, force, url, automatically, digits, easiest, simply, prepend, browser, html, curl, wget, transfer, ways, our, doesn, punched, card, equipment, outs, xgp, laser, exchanged, magnetic, reel, dectape, predecessor, internet, starting, exchange, connected, medium, ferranti, christopher, strachey, copies, cartridge, rom, mame, sutton, andrew, barto, study, reinforcement, 1959, studies, 210, 229, ieee, memorial, ieeexplore, journal, article, company, discusses, tesauro, gammon, evolve, presumably, fairchild, collaborators, correspondence, suggesting, complaints, unreliability, evidence, port, translations, subroutines, caq, tell, matching, oldest, dating, 1971, enhancements, sample, ch4, ch3, ch2, ckp2, mac, publicly, aware, downfall, occurred, printed, because, rules, opposing, expects, 15171, 1017, won, announced, sorry, charlie, nonsensical, life, easier, record, gametable, bds, eval, 219956, 13567, find, statistics, positions, searched, evaluation, taken, milliseconds, 13s, slower, default, black, red, white, blue, destination, squares, notation, upper, settings, adjust, itself, help, atariprotos, develop, 1kb, ram, offered, levels, difficulty, reversi, othello, vice, versa, family, believed, analysis, reveals, might, lead, draw, picked, again, interest, team, completion, retired, 1966, senior, member, staff, many, minimax, beta, pruning, rote, influential, years, included, feigenbaum, seminal, overview, thought, workshop, demonstrated, caught, imagination, public, eventually, challenge, master, 1954, advent, 704, contribution, claim, role, transistors, problem, intrigued, him, 70x, series, machines, magazine, journalist, 1979, raw, ready, 1952, bell, 1930s, 1946, became, professor, illinois, wanting, proposal, build, planning, finished, 1949, chess, popular, earliest, examples, classical, pre, llm, artificial, intelligence, draughts, compare, instance, programmer, extension, smith, involved, took, over, maintenance, makes, part, publication, 240, indicates, cs236, taught, courses, degrees, cs236b, june, sure, state, describes, simulator, leads, himself, mix1, handy, experiment, algorithms, debugging, examining, tracing, through, instructions, mixal, hypothetical, designed, illustrate, implemented, specific, high, defines, art, supplied, cref, tool, ddt, raid, rest, session, across, supported, rpg, rapid, generation, date, including, pascal, simula, sources, snobol, originated, berkeley, executed, micro, based, plnr, linked, articles, f40, newer, aid, future, support, structures, package, choice, writing, utilities, general, algorithmic, tex, phil, petit, pass, ran, five, fast, programmers, flexibility, head, natural, evolution, dialects, mlisp, understands, uci, california, irvine, extended, bbn, plus, environments, maintained, house, cover, extensively, write, software, investigate, dan, gave, talk, background, 2009, reunion, video, archives, pdf, continue, cases, situation, comp, undeclared, identifier, 01100, errors, compilation, handled, interactively, reason, halt, loading, loader, core, assuming, sai, conversion, functions, returns, true, conversed, unary, exponentiation, redefines, curly, brackets, constant, additional, trick, definitions, sqrt, results, 400, too, large, else, looks, loaded, onto, processor, constants, grandfathers, sets, search, operations, adapted, object, item, recursively, keyword, passed, recursive, types, provided, internally, represented, count, pointer, body, concatenation, literal, produce, extensive, routines, handles, devices, adding, terminator, assignment, typeable, swap, values, follows, typical, having, semicolons, semicolon, their, every, scene, simple, features, 1980, commercial, spin, off, platform, possibly, success, vlsi, technologies, electronic, design, least, 2000s, aix, irix, vax, mainsail, achieved, goal, wide, spread, sense, everyone, flexible, complex, requirements, provides, complete, access, aspire, generates, fairly, members, sproull, november, puts, primarily, jerome, paul, rovner, lincoln, describing, acm, combination, gogol, simplified, remains, apart, messages, ail, town, rail, glorious, day, authors, assembled, named, derived, rss, tags, michigan, mts, burroughs, mcp, dtss, ctss,
Text of the page (random words):
gainst a team at duke university who had a new program running on an ibm system 360 two games were played but not to completion due to the amount of cpu time needed according to an account by samuel it was believed that the duke program had a possible win in both games subsequent analysis reveals that one of these games might still lead to a draw also in 1977 he worked with the makers of the videobrain family console to develop a version of checkers for this early home computer this was a cut down version as the system only had 1kb of ram but offered four different levels of difficulty he also helped on the ai for the videobrain version of reversi othello vice versa videobrain checkers program and manual source l atariprotos com r archive org playing checkers on waits the program can be run on any terminal type by typing r checke type help must be in upper case to see a list of commands you can enter initial board settings adjust playing parameters and even have the computer play itself with the ps command by default you are playing first as black red and the computer second as white blue you enter moves by typing the source and destination squares using the standard notation where 1 is the bottom right position and 32 the top left here i start the program and move from square 9 to square 13 r checke 26 jul 74 1 9 13 the program will then try to find the best move and print it along with some statistics on the number of positions it searched the best value of its evaluation function and the time taken in milliseconds so about 13s here would have been much slower on real hardware move of bds piece eval time 2 23 19 219956 0 35 13567 so it has moved 23 19 you can type the instruction bd to display the board in ascii 3 bd w w w w w w w w w w w w b b b b b b b b b b b b but to make life easier you can also use something like gametable in two player mode to record the moves here s how the board would look like playing checkers against checke source rupert lane license cc0 if you type a nonsensical move it will print 3 99 66 sorry charlie i won t give a full account of the game but by move 44 the program announced the pdp 10 expects to win in 11 moves 44 26 22 15171 11 move win 1017 but my downfall occurred just three moves later here forced is printed because by the game s rules if it can take an opposing piece it must 45 10 15 46 17 1 3 forced 0 47 15 18 26 jul 74 1 the source code the original ibm 7090 code is not publicly available as far as i am aware samuel s directories on the waits system can be found on saildart org it s hard to tell what code matching the checke binary from 1972 but ckp2 mac 2 als is the oldest file dating back to 1971 further enhancements up to 1977 can be found in ch2 als and sample game data in ch3 als ch4 als and 3 als the code shows evidence of it being a port of the ibm 7090 version with translations into subroutines of some instruction where there was not an equivalent on the pdp 10 eg caq the videobrain development directory is called f8 this includes several versions of the checkers source code along with a cross assembler in fortran presumably written by fairchild who made the cpu in the videobrain it s not clear how much was written by samuel and how much by his collaborators at videobrain there is also some correspondence between samuel and the makers of the videobrain with samuel suggesting other games that could be produced and complaints about the unreliability pf the development hardware further information ibm s article the games that helped ai evolve is a first introduction to samuel s work at the company on checkers and also discusses tesauro s td gammon program samuel s original july 1959 paper some studies in machine learning using the game of checkers in ibm journal of research and development vol 3 no 3 pp 210 229 is available for download at ieeexplore the ieee also has a memorial on samuel s work richard sutton and andrew barto s book reinforcement learning an introduction is available in full online and has a case study on samuel s checkers mame has an emulator for the videobrain and copies of the game s cartridge rom can be found online another early checkers program was written by christopher strachey for the ferranti mark 1 in the early 1950s there is an emulator that can run this questions corrections comments i welcome any questions or comments and also especially any corrections if i have got something wrong please email me at rupert timereshared com and i will add it here and update the main text waits getting data in and out sun aug 2 2026 dec pdp 10 waits if you were working at sail in the 1970s and wanted to get data into or out of the system there were several options print outs could be made to the line printer or the new xgp laser printer data could be exchanged with other sites and computers via magnetic tape open reel and dectape and paper tape the arpanet predecessor of the internet was just starting and you could exchange data via ftp with those few sites that were connected there was one medium not available however from the monitor manual our computer doesn t even have punched card equipment on an emulated system running today it s still useful to transfer files between your pc and the waits environment let s look at some ways to do this download from saildart org if you are looking to download files from the existing disk image for example the manual for the copy command in copy rph s doc the easiest way is to get these from saildart org simply prepend https www saildart org to the file you want to get and open it in a browser or download via wget or curl note that the file you get is in html so characters like will be encoded as if the file you want to get is a binary file rather than a text file saildart will automatically output it in octal format each line of the file will be a 36 bit word encoded as octal digits to force a text file to be encoded as binary add _octal to the end of the url eg https www saildart org copy rph s doc _octal the file you get will be the most recent version in the dart archive sometimes you want an earlier version eg to ensure you are viewing a manual from 1974 to check this open the directory listing for the file you want eg https www saildart org s doc here you can see there are several different versions from 1972 to 1976 file detector on saildart org source rupert lane license cc0 note the version number after the directory name so here i ve selected version 8 which is dated 1974 07 24 to get this file directly you would go to https www saildart org copy rph s doc 8 there is one quirk for the latest version of the file you should not provide the version number so if you wanted version 11 from 1976 you should request https www saildart org copy rph s doc if you try to fetch https www saildart org copy rph s doc 11 it will fail printing using the virtual line printer is a good way to get text files either system files or your own files out of the system first you need to attach a text file to the virtual printer so you can view the output on your pc for the quckstart this is done for you already and the file used will be printer txt otherwise you will need to press control e in the simh window and enter commands sim at lpt n printer txt sim info lpt creating new file printer txt sim cont the n switch creates a new printer text file each time simh starts if you want to keep previous output and append to the file change this to a then in waits use the list command to send files to the printer eg list hworld f4 this takes wildcards like other copy class commands if you then look at your printer file on your pc you will see the file it may take several seconds with a header like this 26 jul 74 0955 hworld f4 1 rel page 1 1 list sends files directly to the printer on the real system you would normally use the spooler by typing print instead but this is not running on the emulated system extracting files to your pc via virtual tape if you want to extract several files from waits here is a method using emulated tapes and the waits dart program the same program that produced the backup tapes on saildart org you will first need to get the dart utility from lars brinkhoff s set of pdp 10 tools git clone https github com larsbrinkhoff pdp10 its disassembler cd pdp10 its disassembler make dart copy the dart executable file to somewhere on your path next on the simh console we will create a blank tape file on your pc backup tap and attach it to the emulated tape drive mta0 press control e to enter simh command mode and then type the following note that mtc0 on simh maps to mta0 on waits sim at mtc0 backup tap sim info mtc0 creating new file sim info mtc0 tape image backup tap scanned as simh format sim cont switch to your waits login and run r dart then at the prompt type dump and the files you want to save type exit when done r dart dump f4 hworld f4 1 rel second f4 1 rel exit exit c on your host pc use the dart command you compiled earlier with the tf option to view what s on the tape dart tf backup tap dart version 5 tape header recorded 1974 07 26 10 10 by 1 rel user class dsk hworld f4 1 rel 256 1974 07 26 19 02 dsk second f4 1 rel 3 1974 07 26 19 52 end of tape no trailer use the xf option to extract files it will create directories in reverse order to store the files ie hworld f4 1 rel will go to rel 1 hworld f4 dart xf backup tap ls rel 1 hworld f4 second f4 uploading files to upload files from your pc to waits we can use the same technique bur in reverse first use dart with the cf option to create a upload tape file here we create the tape upload tap containing two lisp files one lsp and two lsp intended for 1 rel by placing them in the reverse directory structure shown above ls rel 1 one lsp two lsp dart cf upload tap rel 1 switch back to the simh console press control e and attach the new file sim at mtc0 upload tap sim info mtc0 tape image upload tap scanned as simh format sim cont go to your waits login and use dart with the restore command to get all the files in the archive you can specify which files to restore but here we choose to restore everything r dart restore _ dart version 5 tape header recorded 11 02 20 jul 126 by dmp sys user class one lsp 1 rel two lsp 1 rel dart version 5 tape trailer recorded 11 02 20 jul 126 by dmp sys user class mt read error mt status 200610 mt read error mt status 200610 when it reaches the end of the tape it will repeatedly say mt read error mt status 200610 just press control c to quit and then verify your files have been transferred dir lsp 26 jul 74 1104 filnam ext size last written 1 rel one lsp 2 31 jun 71 two lsp 2 31 jun 71 total 4 further information the waits dart tape backup command is described in dart reg up doc lars brinkhoff is working on getting simh and the waits image to provide arpanet functionality via emulation at sailing on arpanet once this is fully running it may be possible to upload and download files via ftp questions corrections comments i welcome any questions or comments and also especially any corrections if i have got something wrong please email me at rupert timereshared com and i will add it here and update the main text waits editors sun jul 26 2026 dec pdp 10 waits editors today we ll look at the text editors available on waits there are two classes of editor traditional teletype editors like sos or teco and display editors like tv or e although the latter class is not fully working on emulation yet it s interesting to get an idea of how they operated as they represent an early example of interactive editing the sos left and tv right editors source rupert lane license cc0 sos sos son of stopgap was developed at stanford and is a basic line orientated editor that can be run from any terminal type you can invoke it with create file and it will create a file start sos and let you enter text immediately or edit file to edit an existing file the prompt allows you to enter single letter commands in the above we see p to print the file and e to exit each line has a line number prepended to it and you can give line numbers as arguments to commands eg p 100 200 the version we saw on tops 10 is similar to what we have running on waits so see my earlier post for more information there are a couple of differences files are always saved with line numbers there is no equivalent of the es command on display terminals only the z command will allow you to edit a line with the standard line editing commands like control space to move the cursor forwards and control backspace to move it back see the blog entry on terminals for more details finally on the console sos will represent non standard characters that are in the stanford ascii character set by preceding each with the escape character for example alpha α is shown as this includes lower case letters eg lower case a is a a plain question mark is see the sos manual section 1 4 for details teco teco text editor and corrector is dec s powerful but somewhat cryptic character orientated editor operating this is the same as on tops 10 so see my post there for more details type make file to create a file and start editing it type teco file to edit an existing file the tv display editor a display editor allows full use of the screen and keyboard of a display terminal like the iii or dd so you can navigate around the file and make changes quickly this is similar in concept to editors you use today like emacs or vim but the execution and especially the keystrokes used are quite different the waits display editors predate the above editors and the ibm pc so there was no convention for it to follow stanford created the tv editor initially in the late 1960s and then rewrote it as the e editor the functionality is much the same however at present neither editor works completely on simh e will crash after a few commands and both e and tv don t properly display the arrow that shows what line you are on so it s hard to make changes to a file neither editor works on the saildart otg emulator but to give a taste of how these worked i ll show how to create view navigate and edit files using tv creating a file first let s create a new text file log on to the iii terminal using l 1 reg create a new file with ctv eg ctv new txt the screen will clear and will either display a directory or a blank screen in either case press control p to move to the start of the file you can now type in text directly pressing return at the end of each line press control e to save and exit creating a new file with the tv editor source rupert lane license cc0 navigating in an existing file as an example of editing a larger file make a copy of the monitor manual by typing at the monitor s prompt copy mon moncom bh s doc the left arrow can be produced by pressing your left cursor key then open the file with tv mon you will first see the directory page which has a one line summary of each subsequent page in the file each page can be up to a few hundr...
|