Suzuran's PDP-10 Log

From DisNCord Community Wiki
Jump to navigation Jump to search

This is a log of a thread on DisNCord in November 2022 related to one user's Slow Computing Speedruning entry. It quickly became apparent that this machine came with some interesting history.

suzuran OP (05/11/2022)

Name of the project: Running ITS on a PDP-10.
Hardware/Operating System: MIT Incompatible Timesharing System/DEC PDP-10
Summary: That's about all there is to it.
Type: Passive/Active
Account Streaming: Suzuran
It's an actual physical hardware PDP-10, not an emulator.
See https://<redacted>/se.html for instructions and information about connecting to the machine and doing things with it.
This machine is on my home IP, so please don't give its addresses out anywhere else without asking me first.
Image

NCommander (05/11/2022)

I love this, I love every bit of this.
I might actually see about getting on chaosnet to just tickle it

Acher (05/11/2022)

i can't connect myself
oh telnet works
hitting control Z seems to do nothing, might be my term emu

prot (05/11/2022)

Oh wow, this is awesome

Larry Hellison (05/11/2022)

Being Meguca is suffering

prot (05/11/2022)

I def need to look at this in more detail when I get a chance

suzuran OP (05/11/2022)

Meguca is the Linux host that serves as the serial-to-everything-else converter on the workbench. It's an old P4 Thinkcentre. In this case, it runs kermit, and kermit was used to upload microcode and diagnostic programs to the PDP-10 when I was working on getting working storage for it.

prot (05/11/2022)

ooo, oki :o
I was primarily referencing the meme xD

suzuran OP (05/11/2022)

I was too; The hostname is because it primarily serves as a data mule. It also has an old Adaptec SCSI card and is used to image and reimage SCSI devices. "Being meguca is suffering".
At least the storm has passed so there should be (ideally) no more power interruptions

Acher (05/11/2022)

i gotta figure out how ITS works
in the UNIX HATERS HANDBOOK they say ITS is more user friendly than UNIX
now I can't say this is fair since I've been a certified Unix weenie for 10+ years

suzuran OP (05/11/2022)

It is; It's just picky about who its friends are.

Acher (05/11/2022)

but

prot (05/11/2022)

xD

suzuran OP (05/11/2022)

https://raw.githubusercontent.com/PDP-10/its/master/doc/_info_/its.primer was meant to get math dorks onto ITS so that may be a good start

Acher (05/11/2022)

oh yeah, is MACSYMA installed?

suzuran OP (05/11/2022)

Yes

Acher (05/11/2022)

RAD

suzuran OP (05/11/2022)

I have Zork too.

Acher (05/11/2022)

also rad
but i care about guiding ballistic miss- i mean uh
factoring polynomials yeah
:^)

suzuran OP (05/11/2022)

Oh, if missiles are your thing, someone else on another server does real-time Apollo flights...

Acher (05/11/2022)

ok that was a joke but that sounds rad as hell actually
now the real question is, can i access this system over dialup

suzuran OP (05/11/2022)

No, but that is actively being worked on!

Acher (05/11/2022)

oh, i was kidding but that's even more rad

suzuran OP (05/11/2022)

I have a bunch of VOIP shit and since fax is 14.4K and works marginally well over voip, 9600 should be "Safe".

Acher (05/11/2022)

need 300 baud for the authentic ITS experience

suzuran OP (05/11/2022)

I have some system hacking to do so ITS can recognize the carrier detect line, then I get to make 10 serial cables.
300 actually doesn't work over VOIP, and 1200 has issues.
(The delay compensator destroys 300)
The only things I got to work reliably were 2400 and 9600.
and 9600 is more in line with the dialups that were actually available when AI had directly attached modems.

Acher (05/11/2022)

sad, i wanted it to suck
:^)

suzuran OP (05/11/2022)

Oh it still sucks.
You can use the telnet access method and that gets you on a DZ11 port same as a modem would
As soon as you have to wait for a screen redraw 1200 starts getting painful
I was using peek's redraw time as my yardstick when setting up.
Anyway, I'll probably wind up running 2400 at first to see how the interrupt rate looks and if it interacts badly with chaosnet, and go to 9600 only if there's issues.
Ability to survive VOIP is more important here.
It doesn't matter if you can't connect reliably.

Acher (05/11/2022)

i ran a command in macsyma and i can't tell if its calculating or i put in an invalid input
:p
ok i think this is a bad input because there's no way the PDP is this slow
(C1) factor(x^2+5*x+6)

suzuran OP (05/11/2022)

I actually haven't messed with macsyma much, I'd expect it to complain if you gave it something bad.

Acher (05/11/2022)

it says nothing

suzuran OP (05/11/2022)

No result may just mean it did what you asked and expects more input

Acher (05/11/2022)

not returning a prompt either tho

suzuran OP (05/11/2022)

Some ITS programs signal completion simply by typing a linefeed (for example, the bootstrap)
They'll type a CR when you push enter, then type the LF when the thing is done.
On a printing terminal, this would move the paper.

Acher (05/11/2022)

well idk how to get muh result

suzuran OP (05/11/2022)

It's not wedged...
Assuming you are TZIPI, I see your job as waiting for terminal input.

Acher (05/11/2022)

waiting for input?
huh

suzuran OP (05/11/2022)

Type a ;

Acher (05/11/2022)

ok now it's saying ?U?

suzuran OP (05/11/2022)

Program's alive then

Acher (05/11/2022)

how do i kill MACSYMA
OH WAIT
i think i see the problem
i'm an idiot

suzuran OP (05/11/2022)

You can kill anything by typing ^Z and then :KILL

Acher (05/11/2022)

lol

suzuran OP (05/11/2022)

^Z returns to HACTRN.

Acher (05/11/2022)

i forgot macsyma requires colons after every statement

suzuran OP (05/11/2022)

Ah
https://raw.githubusercontent.com/PDP-10/its/master/doc/manual/macsma.doc appears to be (a) manual for it, not sure if the version matches.

Acher (05/11/2022)

now it works
man this is cool, even if my UNIX weenie brain can barely understand what the hell is going on

suzuran OP (05/11/2022)

The more you use it, the more you get used to it.

Acher (05/11/2022)

yeah, but it still feels like i'm a caveman gawking at fire :p

suzuran OP (05/11/2022)

Well of course, this is something entirely alien to you.
For me it's the result of a couple decades of restoration work.

Acher (05/11/2022)

Sounds like a fun story

suzuran OP (05/11/2022)

Not really. It's me making a 6 month restoration take way too long by being stupid and incompetent.
And losing important parts of the machine by being even more stupid and incompetent.

Acher (05/11/2022)

what's the backspace character? ITS doesn't seem to like the one I'm using

suzuran OP (05/11/2022)

There's a very strong case for the argument that I never should have been allowed to take this machine.
It wants the ASCII backspace character; Your terminal emulator is probably sending delete.
If you see ^? that's what's going on.
Oh, if you're connected over telnet and haven't used :stty to change the terminal type, backspace tries to move the print head of a printing terminal.

Acher (05/11/2022)

it is not and i'm connected over ssh
so i'm probably just misunderstanding what's going on

suzuran OP (05/11/2022)

Odd, ssh should Just Work™️ because that's supdup
What's it doing?
(If it's just doing nothing, it may be that the program in question just doesn't support backspace)

Acher (05/11/2022)

FACTOR ( X ^ 2 - 4 X **$** + 7 )
$ is a backspace

suzuran OP (05/11/2022)

$ is normally typed if you push the escape/altmode key

Acher (05/11/2022)

huh

suzuran OP (05/11/2022)

Does it think you pressed left arrow or something? Weird.
What ssh client?
It may also be that macsyma just uses backspace in an unexpected way.

Acher (05/11/2022)

OpenSSH 9.1

suzuran OP (05/11/2022)

Does backspace work at ddt?

Acher (05/11/2022)

on macOS terminal
backspace works at ddt

suzuran OP (05/11/2022)

It's macsyma being weird then.

Acher (05/11/2022)

oh wait it says x is not an infix operator

suzuran OP (05/11/2022)

iTerm2 > Terminal.app BTW

Acher (05/11/2022)

maybe it expects more verbose input
oh it does
oh that's cool macsyma uses text mode to make it look like a more sane interpretation
Image

suzuran OP (05/11/2022)

Funny that this is still being sold as a commercial product today...

Acher (05/11/2022)

oh yeah
ok well it doesn't seem to be actually factoring things unless it only works with real outputs, which would be a rather stark limitation for a CAS
so i think there's something more going on here

suzuran OP (05/11/2022)

I'd also like to point out that the PDP-10 is not being particularly effective as a space heater. It's in the mid-40s outside, and the temperature hasn't reached the AC setpoint of 75 yet.
And the machine's been on for ~10 hours now.

Acher (05/11/2022)

well made machine or lack of CPU abuse?

suzuran OP (05/11/2022)

More the former than the latter. For the KS, the power supply was made by LH Research, and they are very good at what they do. (They still exist today, but as a subsidiary)
They also made the power supply for the CADR (Lisp Machine)

Acher (05/11/2022)

i wonder if any version of MACSYMA for Berkeley Unix survived

suzuran OP (05/11/2022)

If you could find someone at MIT who worked on it, they could ask the MIT archivist.
That's where the ITS version came from, as it had been purged from AI and MC prior to Doomsday.
I corrected the time, so ignore the "revived!" message.
(It was off by an hour because of a DST compensation error when it started up)

Acher (05/11/2022)

@suzuran oh yeah, how did you get ssh to run a command immediately on connect? just set the shell?

suzuran OP (05/11/2022)

It was a pain in the ass.

Acher (05/11/2022)

oh lordy

suzuran OP (05/11/2022)

Setting the shell fails, I had to use ForceCommand in the sshd config file, and the supdup client lives in a chroot
That way if someone somehow leaves the supdup client they don't have a shell on my host.

Acher (05/11/2022)

was the chroot hard to set up

suzuran OP (05/11/2022)

Not in and of itself, but since the linux implementation of chaosnet in use requires IPC shared memory, getting that consistent on both sides of the chroot required abuse of mount --bind and that was a chore.

Acher (05/11/2022)

oh
does sound like a pain in the ass

suzuran OP (05/11/2022)

Especially since nobody wants to help people do things like this, I was just told "that's a security compromise, you should not do it, just give up, what you want cannot be done"
and "running an obsolete system is a security issue even if it's on an isolated network, you should stop"

Acher (05/11/2022)

yeah, sure

suzuran OP (05/11/2022)

Everyone had all kinds of reasons why I should stop or give up or why I was being stupid/incompetent/immoral/etc. but nobody had anything constructive.

Acher (05/11/2022)

people are gonna find a massive exploit to jump from CHAOSNET into your LAN
and format your hard drives
I'd say this about like, any form of UNIX

suzuran OP (05/11/2022)

I keep forgetting that shitting on people and gatekeeping are "contributions" now.
But hey, at least it's not LKML.

Acher (05/11/2022)

but ITS is so old and detached from the entire rest of computing I think its fine lol

suzuran OP (05/11/2022)

@Acher I didn't have the heart to tell them that I had an emulated ITS instance directly on the unfirewalled internet until ~2018, when cisco bot scanning got so prevalent I had to give up because the botnets would just ddos it by assuming anything with a telnet port was a cisco router.

Acher (05/11/2022)

i did the same with 2.11BSD a few weeks ago
completely clear

suzuran OP (05/11/2022)

I was doing this on my employer's extremely legacy IPv4 allocation; Scan activity is extremely common.
I can literally pick any given unannounced and unreferenced IP address, some which have never been used or referenced in DNS in the past 25 years, put tcpdump there, and reliably detect scan activity within a minute.

Acher (05/11/2022)

yep
Gonna be honest tho, I really don't see how your PDP-10 is a security risk
it barely speaks ARPA, what are you gonna do
implement fucking SSH on an OS from the 1960s to hack one computer?
there's a point where the security risk kinda becomes negligible

suzuran OP (05/11/2022)

Oh, it has an IP stack, I just don't have a physical IMP interface, or enough memory space left on a Unibone to emulate one.
It expects to communicate via a Chaosnet-to-IP bridge but I have to write the (server-side) software for that.

Acher (05/11/2022)

yeah, i highly doubt someone's gonna own you from your ITS system lmao

suzuran OP (05/11/2022)

Same. People just see security concerns as the new Internet "I Win" Button

Acher (05/11/2022)

actually let's consider the idea for a second

suzuran OP (05/11/2022)

I just realized I never actually set up user directories, so I did that; People who log in now will be run through inquir and given a place for their files.

Acher (05/11/2022)

someone would need to learn enough ITS to write the software required to jump out of ITS
nobody is doing that for one zombie
lol

suzuran OP (05/11/2022)

There's nowhere to jump out of in this case, since it's a physical machine.
If IP worked, they could in theory telnet to things behind my firewall
If email were routable to internet, they could spam.
They can certainly use chaosnet to mess up other peoples' machines on the chaosnet (this machine is on the Global Chaosnet)

Acher (05/11/2022)

by jump out, i mean to jump out of your machine to another

suzuran OP (05/11/2022)

Oh, I thought you meant an emulation escape

Acher (05/11/2022)

and even then, you could solve this with some routering skills

suzuran OP (05/11/2022)

Someone actually did PoC an escape from 2.11BSD under simh to attack the host running simh
The exploit was in simh's telnet-to-serial layer though
The PDP-11 OS wasn't important.
They just needed the ability to control echo

Acher (05/11/2022)

if i disable DZ is that possible?

suzuran OP (05/11/2022)

No, but that kinda defeats the purpose of running a multi-user OS.
The bug was fixed a long time ago anyway.
It was something involving telnet options negotiation
some telnet options are allowed always, some only on initial connection, and simh didn't make that distinction

Acher (05/11/2022)

Well, 2.11BSD can be run on the actual internet

suzuran OP (05/11/2022)

yes

Acher (05/11/2022)

so you wouldn't need DZ emu

suzuran OP (05/11/2022)

The scenario was that DZ was in use to avoid issues in the 2.11 IP stack, which was presumed insecure (because it's old)
The message was supposed to be "even isolating the guest from the network won't save you"

Acher (05/11/2022)

uh, how lol
listen im kinda paranoid but if it's isolated from my network by a firewall
how is it a security risk lmao

suzuran OP (05/11/2022)

It's some "if a tree falls in the woods and nobody is around do hear it, does it make a sound?" shit.
"Your unpowered and buried computer is still insecure because someone could dig it up, turn it on, and hack it"
"Therefore you are bad and you should feel bad; I win"

Acher (05/11/2022)

dumb dumb dumb dumb
@suzuran how do i change my info? rerun INQUIR

suzuran OP (05/11/2022)

Yes
It should bring up an interface that lets you change things
I don't remember if the database entry has to have been approved first.
It may also give you a chance to change things at the end of initial submission; It's been awhile since I ran through it.

Acher (05/11/2022)

it did but i killed it because i typed my name wrong :p

suzuran OP (05/11/2022)

Ah

Acher (05/11/2022)

@suzuran actually i wonder if VAXSYMA is on AFS
there's a lot of old shit on MIT'S AFS

suzuran OP (05/11/2022)

Oh, I haven't had AFS access in a donkey's age
Yeah

Acher (05/11/2022)

i found like, X10

suzuran OP (05/11/2022)

Can't hurt to check (if you still have access)

Acher (05/11/2022)

I mean, part of AFS is public but I am NOT an MITer
I went to my local state IT before dropping out :p

suzuran OP (05/11/2022)

Oh, I thought you meant you had non-public access. Even the public area of MIT's AFS had a lot of ancient goodies.

suzuran OP (05/11/2022)

Assuming I can't be connected to two different voice servers at once, there's going to be a short stream interruption. The machine will stay up, only the console stream will be interrupted.
Apparently I can be connected to two different voice servers at once. Nice!

suzuran OP (05/11/2022)

I just realized I have no idea how ITS is going to handle the DST change
Or if it even tries.

prot (05/11/2022)

Time to find out :D
Oh shoot
How will m Ultra react xD

suzuran OP (05/11/2022)

Actually, it should have already happened in the eastern timezone, right?

prot (05/11/2022)

Not quite yet I don't think
In about half an hour?

volatilefluid (05/11/2022)

Is ITS even remotely capable of loading timezone data off the Tz database?
Tz parser on a PDP-10 is already a cursed notion, not gonna lie

suzuran OP (05/11/2022)

ITS doesn't even know what timezones are, it's hardcoded for eastern timezone.
It wasn't ever intended to run outside of MIT.

volatilefluid (05/11/2022)

Evil.

suzuran OP (05/11/2022)

You have to remember, when ITS was written, the number of computers in the world that could run it was four...
The AI PDP-6 had serial number 2.
It was the first one DEC shipped. (They kept serial number 1)
(The PDP-10 is an upgraded PDP-6)
(with some assembly language changes)

suzuran OP (06/11/2022)

OK, ITS apparently does not support daylight savings time then
I manually subtracted one hour

suzuran OP (06/11/2022)

Stream failed while I was asleep because the cat pulled out the power cord trying to climb on top of the desk.
:aeris:
The Mac that does the streaming is my old MBP, whose battery is no longer functional. The -10 was not interrupted and now has more than 24 hours of uptime.

thenico2 (next-hop ::1) (06/11/2022)

impressive

suzuran OP (06/11/2022)

I updated the OP with clearer instructions about how to tell ITS what username you want.

ppc mac girl 2 electric boogaloo (07/11/2022)

my computer teacher was a system v engineer at at&t
he had flashbacks when he saw the pdp10 lmfao

suzuran OP (07/11/2022)

Really? Weird, I'd have expected him to remember TOPS-10 or Twenex, not ITS.
Did he by any chance attend MIT?

ppc mac girl 2 electric boogaloo (07/11/2022)

yes, he did
i let him poke around a little bit but diddent give him the address
dont want to go against your wishes

suzuran OP (07/11/2022)

If he's ex-MIT and had an account on AI or MC, I may have his home directory. If he remembers his UNAME, I can check.

ppc mac girl 2 electric boogaloo (07/11/2022)

wait how would you have his home dir

suzuran OP (07/11/2022)

In any event, ex-MIT people are almost certainly kosher

ppc mac girl 2 electric boogaloo (07/11/2022)

cool
its kind of cool i know people like that XD
wait
you can connect to MIT still?

suzuran OP (07/11/2022)

It's complicated; When the last two MIT ITS machines were turned off, a set of final backups was made. Since they contained sensitive personal info mixed in with the software, a handful of copies were given to trustworthy people so ITS could be resurrected later. I am one of those people.

ppc mac girl 2 electric boogaloo (07/11/2022)

THATS COOL
what was the purpose of ITS?

suzuran OP (07/11/2022)

To allow more than one person at a time to use the PDP-6.

ppc mac girl 2 electric boogaloo (07/11/2022)

ohhh

suzuran OP (07/11/2022)

Multi-user systems were theoretical then.

ppc mac girl 2 electric boogaloo (07/11/2022)

how big are the backups?
just curiosity XD
thats fascinating though

suzuran OP (07/11/2022)

About 12" x 4"

ppc mac girl 2 electric boogaloo (07/11/2022)

wait you have the physical disks?
thats cool as hell holy shit

suzuran OP (07/11/2022)

9-track tapes

ppc mac girl 2 electric boogaloo (07/11/2022)

why would you need to resurrect ITS
arent the installer tapes like
publicly available

suzuran OP (07/11/2022)

They weren't when I started.

ppc mac girl 2 electric boogaloo (07/11/2022)

damn
your kind of insane honestly
in a cool way

suzuran OP (07/11/2022)

There wasn't even a publicly-available emulator when I started.
(KLH10 existed, but its existence was a secret)

ppc mac girl 2 electric boogaloo (07/11/2022)

why would it be a secret though

suzuran OP (07/11/2022)

(It wasn't able to run a real operating system at the time anyway)

suzuran OP (07/11/2022)

Because PDP-10s were still in active use then, and the author felt he might get sued.

ppc mac girl 2 electric boogaloo (07/11/2022)

oh

suzuran OP (07/11/2022)

The restoration of this machine has been a two-decade project.
(Although a lot of that was spent making stupid mistakes and chasing dead ends)

ppc mac girl 2 electric boogaloo (07/11/2022)

this is insanity
props to you

suzuran OP (07/11/2022)

Oh this is one of the more sane things I've done.
There's a lot worse.

ppc mac girl 2 electric boogaloo (07/11/2022)

its bonkers how many high profile people ive spoken too in the computer world im just a dumbass 16 year old girl
and microsoft for some reason is already offering me internships

suzuran OP (07/11/2022)

Oh I'm far from high-profile. I have talked to some people who are, though.

suzuran OP (08/11/2022)

I edited the OP again: There's now a page at https://<redacted>/se.html explaining how to get connected to the machine and suggesting things one can do with it once logged in.

suzuran OP (08/11/2022)

Apparently if you leave extra junk on your ssh command line when connecting, supdup will complain about termcap being invalid and disconnect you.

scam.net (08/11/2022)

so you went to MIT?
or worked there?

suzuran OP (08/11/2022)

No. I'm too young to have been there during the AI Lab days. Two of the chosen few were non-MIT people as a safeguard against MIT retroactively deciding ITS should go down the memory hole for some odd reason, or something like that.
MIT was (and has continued to be) very weird about releasing old software.

scam.net (08/11/2022)

how did you get a hold of the backups then?
I mean like why were you in the chain of trust
(if i can ask, i don't want to dox you)

suzuran OP (08/11/2022)

Because people who were in a position to make that decision decided I was worth the risk. So far, as I have not distributed any of the sensitive bits, I like to think their trust has not been misplaced.
(I had a PDP-10, I wanted to make it run ITS, and I guess I had the right mindset to accomplish those things)

scam.net (08/11/2022)

Ah
where did you get the PDP-10 from?
was it one from MIT or not (sorry if i'm asking obvious questions)

suzuran OP (08/11/2022)

It came from a private collector. He was holding it for someone who was unlikely to be able to retrieve it. They were asked if I could have it instead, and they agreed. Since I was going to be developing an emulator of the machine, they were more happy with having the resulting emulator than the physical machine.

scam.net (08/11/2022)

ah

suzuran OP (08/11/2022)

It was not originally at MIT, it was originally at a different institution.