Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-09 Thread Michael Bloom

On 07/08/2012 09:22 AM, Johnny Billquist b...@softjar.se wrote:

On 2012-07-08 13:58, Michael Bloom wrote:

version of TECO, it might be beneficial to make as much use of local Q
registers (those with two char names beginning with .), so that you
don't unintentionally accumulate data that you no longer need.  You
could think of them as a TECO equivalent to alloca().


They came after V36. But they are not strictly needed, as you can push 
down Q-registers yourself if you want to play with them without 
affecting someone else.
The whole point is avoiding the need to push Q-registers.  It is all too 
easy to make a mistake when pushing Q-registers that costs you a lot of 
debugging time. If you don't push Q regs, you never have to pop them!
If you have local Q regs, there is little legitimate use for 
pushing/popping them other than to rapidly copy both parts of one q-reg 
to another q-reg (it's a good idea to use q-regs as two member structs, 
when you can)


If you run out of memory, you are always in trouble...
That's why defensive coding is especially important with as memory space 
as TECO has


Not sure when and why you'd need 32-bit arithmetic, though...
I'm not sure either, since, as I've already admitted, I don't know the 
HTTP protocol.  But I did want to make a suggestion about long 
arithmetic,  just in case HTTP packets _did_ contain 32 bit fields upon 
which arithmetic might be performed.  With a heads up about this, 
Richard can look for places where this might be needed, and plan 
accordingly. It's always beneficial to strategize how to deal with 
problems prior to dealing with them, rather than just jumping in to 
code, and then figuring out how to handle each bridge as it is 
encountered.
I doubt you'll ever have TECO leak memory. However, you can run out of 
memory, so cleaning up your Q-registers, especially if you know they 
might store lots of data, is a good idea.
(TECOs memory handling is rather simplistic, not to mention well 
tested by now, which is why I doubt you have any memory leaks.)

Of course, TECO itself is robust,  but . . .

I was not referring to *TECO* leaking memory, but rather the program 
running /within/ TECO, which may  append to q register space,   push 
q-regs without popping them, or make memory disappear in other ways. If 
you've ever written a reasonably large TECO program (such as the DECUS 
11-737 package that I previously mentioned),  you've got a good chance 
of having experienced trying to debug a TECO memory leak.  This is the 
kind of place where defensive programming really shines.  As one of my 
college profs was known to say The main prerequisite for debugging is 
''bugging''.  And especially with a language that so resembles line 
noise as TECO does, avoiding bugging takes care.
Dumping out a file is something TECO can do all day long without a 
problem.

You can either do it page by page yourself, or let teco do it.
I was assuming that Richard planned to take use of the TECO data 
manipulation facilities,  not just use it as a glorified cat
There are pros and cons to both. But neither will cause you any weird 
memory issues.
Yes, it's how you program that determines whether you reclaim memory 
that's no longer needed, or not.  Local Q-regs allow de-allocation to be 
automatic when you leave a macro, eliminating a source of coding errors 
that can result in weird memory issues.  That was why I made a 
reference to alloca(),  since local q reg's effectively allocate their 
space on the TECO program's execution stack.  With a C program,  if you 
allocate memory within a routine that you subsequently exit without 
without saving or freeing the allocated space,  you get a memory leak, 
but memory allocated with alloca() is automatically freed.  Same thing 
with Local Q-regs.  When you leave the routine they belong to, poof 
they are gone.


 michael

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-09 Thread Johnny Billquist

On 2012-07-09 17:29, Michael Bloom wrote:

On 07/08/2012 09:22 AM, Johnny Billquist b...@softjar.se wrote:

On 2012-07-08 13:58, Michael Bloom wrote:

version of TECO, it might be beneficial to make as much use of local Q
registers (those with two char names beginning with .), so that you
don't unintentionally accumulate data that you no longer need.  You
could think of them as a TECO equivalent to alloca().


They came after V36. But they are not strictly needed, as you can push
down Q-registers yourself if you want to play with them without
affecting someone else.

The whole point is avoiding the need to push Q-registers.  It is all too
easy to make a mistake when pushing Q-registers that costs you a lot of
debugging time. If you don't push Q regs, you never have to pop them!
If you have local Q regs, there is little legitimate use for
pushing/popping them other than to rapidly copy both parts of one q-reg
to another q-reg (it's a good idea to use q-regs as two member structs,
when you can)


Right. Just pointing out that local Q-registers came after V36, and that 
there is another solution for the same problem if you happen to be 
running pre-V40. Having the language help you is a good thing though. I 
agree.



Not sure when and why you'd need 32-bit arithmetic, though...

I'm not sure either, since, as I've already admitted, I don't know the
HTTP protocol.  But I did want to make a suggestion about long
arithmetic,  just in case HTTP packets _did_ contain 32 bit fields upon
which arithmetic might be performed.  With a heads up about this,
Richard can look for places where this might be needed, and plan
accordingly. It's always beneficial to strategize how to deal with
problems prior to dealing with them, rather than just jumping in to
code, and then figuring out how to handle each bridge as it is
encountered.


I can't remember seeing anything that really needs 32-bit arithmetic in 
the protocol.



I doubt you'll ever have TECO leak memory. However, you can run out of
memory, so cleaning up your Q-registers, especially if you know they
might store lots of data, is a good idea.
(TECOs memory handling is rather simplistic, not to mention well
tested by now, which is why I doubt you have any memory leaks.)

Of course, TECO itself is robust,  but . . .

I was not referring to *TECO* leaking memory, but rather the program
running /within/ TECO, which may  append to q register space,   push
q-regs without popping them, or make memory disappear in other ways. If
you've ever written a reasonably large TECO program (such as the DECUS
11-737 package that I previously mentioned),  you've got a good chance
of having experienced trying to debug a TECO memory leak.  This is the
kind of place where defensive programming really shines.  As one of my
college profs was known to say The main prerequisite for debugging is
''bugging''. And especially with a language that so resembles line noise
as TECO does, avoiding bugging takes care.


Leaking memory, to me, implies that it is lost. Just being sloppy and 
not freeing up memory you have allocated and still keeps track of is not 
the same as leaking memory. But yes, keeping your memory usage under 
control is also a good thing.



Dumping out a file is something TECO can do all day long without a
problem.
You can either do it page by page yourself, or let teco do it.

I was assuming that Richard planned to take use of the TECO data
manipulation facilities,  not just use it as a glorified cat


Well, the HTTP protocol is almost more or less just a glorified cat...
There isn't that much to it, really.

Johnny
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-09 Thread Shoppa, Tim
 Well, the HTTP protocol is almost more or less just a glorified cat...
 There isn't that much to it, really.

 HTTP is more like CRUD (create, read, update, delete) than cat.
 http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods
 http://en.wikipedia.org/wiki/Create,_read,_update_and_delete

Watch out for scope creep. I suspect the OP would be happy with GET and HEAD 
methods. This describes the bulk of PDP-11 webservers that are widely used.

Tim. 

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-08 Thread Michael Bloom

On 07/07/2012 10:09 AM, Johnny Billquist b...@softjar.se wrote:
What is left is actually writing the code, something that seems to get 
much less attention...


Johnny
Good point.   I had written a message last night which considered this,  
but did not get around to sending it.   It also addressed hardware and 
OS options,   which are now moot, since an 11/03 running RT-11 has all 
but been chosen.  Here it is below, somewhat edited.  I've chopped off 
the tail end, which discussed Unix Teco



 Unsent Message 
[ --- snip --- Message headers snipped -- snip -- ]

On 07/06/2012 15:05:38 EDT 2012, Richard legalize at xmission.com wrote:

In article 4FF6AE2C.6050104 at dslextreme.com,
Michael Bloom mabloom at dslextreme.com writes:

 What aspect of the experiment requires a pdp-11 architecture?

Desire.


That's a legitimate reason.  I do not understand the reason behind it,  
but if that is a design requirement, so be it. (Although it does not add 
any technical information that will help us help you).


Even so, with the limits you've chosen,  here are a few considerations:

You will need enough memory to include the TECO executable, the program 
written in TECO,  and the Q-register data storage necessary for your 
TECO program, all on top of system overhead.  If using a late enough 
version of TECO, it might be beneficial to make as much use of local Q 
registers (those with two char names beginning with .), so that you 
don't unintentionally accumulate data that you no longer need.  You 
could think of them as a TECO equivalent to alloca().  They are 
documented in the V40 manual (dated May 1985), but I don't recall them 
being present in V36, so I'm not certain when they were introduced.


TECO may not work reliably (except as an editor) without maxing out (to 
the degree permitted on a PDP-11) the process address space.  Under 
RSTS/E, that would mean 48 KB (the remaining 16KB is needed for the TECO 
run-time system) minus stack space.   I do not recall what the exact 
overhead might be with other DEC OS's.


For RT-11,  you'll lose 8 Kb space reserved for device registers plus 
the amount of space RT-11 itself occupies (4K maybe? Anyone remember?), 
and of course the space needed for the TECO interpreter itself.  A rough 
guess might be 38Kb for TECO (16Kb for instructions, 6Kb for TECO's 
private data, 4Kb(??) for TECO's stack), RT-11 and I/O space.  That's 
38Kb already used, leaving 26Kb left for your buffer,  your own TECO 
code, and  your code's Q register variables .


If you need to do any 32 bit arithmetic,  you'll need to write your own 
32 bit arithmetic macros. (I'd suggest using 4 bytes of the text portion 
of a Q-register for storing a 32-bit datum, rather than wasting the int 
portion of two q registers (for anyone not familiar with Teco, there are 
36 2-part Q-registers, data areas which can be used for 36 16-bit 
variables plus 36 string variables and you can have executable TECO code 
as the data in the string variables)).  Using a late enough version of 
Teco that also has macro-local Q-registers  accessed as (for example) 
Q.1 or Q.b, instead of Q1 or Qb) will greatly ease that limitation by 
not limiting you to using just the global Q registers. V36 did not have 
this feature. At least V39 and V40 do. (as does the Almy Unix TECO 
version)


The maximum buffer size shrank from one TECO release to the next as new 
features were added. And obviously,  the more Q-register space you use 
for code and data, the smaller the maximum buffer size will be at any 
given time.


As you proceed during coding,  it might be a good idea to periodically 
check for memory leaks to prevent your server from crashing due to being 
out of space. One way to do this is to check if the number of characters 
that  the buffer can hold shrinks after each EC command.


I don't know the HTTP protocol, so I don't know whether there is a 
maximum response size, but for larger responses, you might need to build 
part of the response in the text buffer, write it to the output stream,  
replace the data in the buffer with the next part of the response, write 
that out, and so on (probably using PW and HK commands after building 
each part of the response).


[ Afterthought: it might be better to first build response header info 
in the text buffer,  use the A command to append the first page of the 
reply,  then write the served file using the EC command or one of it's 
derivatives. (This approach would reduce the risk of running out of 
memory).  If you need to make modifications to the file data before 
sending it,  or if you need to send a trailer after the data,  then you 
might choose to page through the buffer with P commands before using EC. ]


[ --snip --the rest of this message talked about approaches that have 
already been excluded, so I have snipped it  ]
___
Simh mailing list
Simh@trailing-edge.com

Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-08 Thread Johnny Billquist

On 2012-07-08 18:08, Richard wrote:


In article 4ff9af5c.6060...@softjar.se,
 Johnny Billquist b...@softjar.se writes:


Ah! I had never noticed that the string building characters for a search
were also allowed in the file commands. Thanks.


They are allowed in *any* text argument to a command.


Not according to the manuals, but I have not checked the source code.
The manual says you can use the string building characters for a search 
in search commands (obviously), and, to quote the manual:


String build characters are  also  permitted  inside  the  string
 arguments of the O, EB, ER, EW, and EG commands.

Missing from that list is:
EI, EN, ^A, I, FR, ^U

Admittedly, some of these (like I) have other ways of doing the 
equivalent, but other times you just have to work around it.
But it might be that they are allowed in these commands as well, and the 
manual is just wrong. I don't know...


Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-07 Thread Göran Åhling

Well, I'd used the word Weakest to describe this aspect of a computer...

Without reading any PDP-11 architecture handbook (today), I'd like to 
claim the initial design, the 11/20, to have the weakest architecture 
within the PDP-11 family, it was released in 1970.


Just as all (almost) PDP:s the customer would order a CPU, and 
separately order as much or little of memory that was regarded 
neccesary for every task... 11/20 had a max. of 56 kB (28 kW), as the 
design has 16 bits of adressing (=64 kB), but 8 kB are reserved for I/O 
devices.


Exactely how little memory that would be enough to run an OS, Teco and 
an async port, I can't judge, but running an emulator, like SIMH, would 
alow for testing of this. The 11/20 was sold along with core memory, so 
a fair core memory card size for the minimum system would be elegant...


The instruction set of a PDP-11 was slightly extended with EIS for 
modells comming just a few years later,  as several options (floating 
point support, commersial calculations support,  memory management for 
18 or 22 bits of address-space...)


But, as Johnny says, the LSI-11, aka PDP11-03, beeing the first 
LSI-design from DEC, released in 1975 with the new LSI-bus (aka Q-bus) 
is always remembered as the slowest PDP of all times, even though the 
architecture might be slightly improved over 11/20!


If you would like a running real physical system, the 11/03 would by far 
be the easier to get hold of, get running, and keep running. The 11/20 
would typically need 2 pcs of 19 wide, 72 high racks... For emulation, 
this is however not an issue!


/Göran

On 2012-07-06 21:04, Richard wrote:

When I say small, I'm referring to computational capacity, not
physical dimensions.



___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-07 Thread Davis Johnson
I would have to concur. I have a physical 11/05. The 11/05 (same CPU as 
the 11/10) and it is nowhere near as capable as an 11/03. For a while 
there DEC had a tendency to release two new machines at a time. One 
would out perform the previous flagship processor, probably not costing 
too much more. The other would be comparable with the previous flagship 
processor but at a lower cost. The 11/05 was the similar capability 
lower cost follow on to the 11/20.


Comparing the 11/05 is slower than the 11/03 and lacking a bunch of 
useful instructions. The 11/05 is totally devoid of any memory 
management - 64K address space is all you get.


You could not configure 64K, of course because of the reserved address 
space. Mine has 32K, which I suppose is a typical large configuration. 
Core memory was expensive. I suppose one could have added a 16K board 
and had 48K but justifying the expense would have been difficult.


On 7/7/2012 3:14 AM, Göran Åhling wrote:
Well, I'd used the word Weakest to describe this aspect of a 
computer...


Without reading any PDP-11 architecture handbook (today), I'd like to 
claim the initial design, the 11/20, to have the weakest architecture 
within the PDP-11 family, it was released in 1970.


Just as all (almost) PDP:s the customer would order a CPU, and 
separately order as much or little of memory that was regarded 
neccesary for every task... 11/20 had a max. of 56 kB (28 kW), as 
the design has 16 bits of adressing (=64 kB), but 8 kB are reserved 
for I/O devices.


Exactely how little memory that would be enough to run an OS, Teco and 
an async port, I can't judge, but running an emulator, like SIMH, 
would alow for testing of this. The 11/20 was sold along with core 
memory, so a fair core memory card size for the minimum system would 
be elegant...


The instruction set of a PDP-11 was slightly extended with EIS for 
modells comming just a few years later,  as several options (floating 
point support, commersial calculations support,  memory management for 
18 or 22 bits of address-space...)


But, as Johnny says, the LSI-11, aka PDP11-03, beeing the first 
LSI-design from DEC, released in 1975 with the new LSI-bus (aka Q-bus) 
is always remembered as the slowest PDP of all times, even though the 
architecture might be slightly improved over 11/20!


If you would like a running real physical system, the 11/03 would by 
far be the easier to get hold of, get running, and keep running. The 
11/20 would typically need 2 pcs of 19 wide, 72 high racks... For 
emulation, this is however not an issue!


/Göran

On 2012-07-06 21:04, Richard wrote:

When I say small, I'm referring to computational capacity, not
physical dimensions.



___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh






___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-07 Thread Johnny Billquist
I should point out that the LSI-11 does not have EIS in the basic CPU. 
It's an option you can add, which have both EIS and FIS (the KEV-11, 
horrible :-) ).

The LSI-11 is also 16-bit addresses only.

I tried finding any information about the speed of the thing, but 
failed. But I think it is actually slower than the 11/05...


Anyway, unless the OP actually aim to find a real 11/03, I fail to see 
the point here. An emulated machine will not perform or behave the same 
from a time point of view anyway, and since I've already pointed out 
that RT-11 will run on any PDP-11, and TECO runs under RT-11, any 
machine running RT-11 is essentially equivalent to the smallest 
(slowest) PDP-11 from a coding point of view.


What is left is actually writing the code, something that seems to get 
much less attention...


Johnny

On 2012-07-07 15:33, Davis Johnson wrote:

I would have to concur. I have a physical 11/05. The 11/05 (same CPU as
the 11/10) and it is nowhere near as capable as an 11/03. For a while
there DEC had a tendency to release two new machines at a time. One
would out perform the previous flagship processor, probably not costing
too much more. The other would be comparable with the previous flagship
processor but at a lower cost. The 11/05 was the similar capability
lower cost follow on to the 11/20.

Comparing the 11/05 is slower than the 11/03 and lacking a bunch of
useful instructions. The 11/05 is totally devoid of any memory
management - 64K address space is all you get.

You could not configure 64K, of course because of the reserved address
space. Mine has 32K, which I suppose is a typical large configuration.
Core memory was expensive. I suppose one could have added a 16K board
and had 48K but justifying the expense would have been difficult.

On 7/7/2012 3:14 AM, Göran Åhling wrote:

Well, I'd used the word Weakest to describe this aspect of a
computer...

Without reading any PDP-11 architecture handbook (today), I'd like to
claim the initial design, the 11/20, to have the weakest architecture
within the PDP-11 family, it was released in 1970.

Just as all (almost) PDP:s the customer would order a CPU, and
separately order as much or little of memory that was regarded
neccesary for every task... 11/20 had a max. of 56 kB (28 kW), as
the design has 16 bits of adressing (=64 kB), but 8 kB are reserved
for I/O devices.

Exactely how little memory that would be enough to run an OS, Teco and
an async port, I can't judge, but running an emulator, like SIMH,
would alow for testing of this. The 11/20 was sold along with core
memory, so a fair core memory card size for the minimum system would
be elegant...

The instruction set of a PDP-11 was slightly extended with EIS for
modells comming just a few years later,  as several options (floating
point support, commersial calculations support,  memory management for
18 or 22 bits of address-space...)

But, as Johnny says, the LSI-11, aka PDP11-03, beeing the first
LSI-design from DEC, released in 1975 with the new LSI-bus (aka Q-bus)
is always remembered as the slowest PDP of all times, even though the
architecture might be slightly improved over 11/20!

If you would like a running real physical system, the 11/03 would by
far be the easier to get hold of, get running, and keep running. The
11/20 would typically need 2 pcs of 19 wide, 72 high racks... For
emulation, this is however not an issue!

/Göran

On 2012-07-06 21:04, Richard wrote:

When I say small, I'm referring to computational capacity, not
physical dimensions.



___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh






___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh



--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-07 Thread Richard

In article 4ff86d51.8080...@softjar.se,
Johnny Billquist b...@softjar.se writes:

 Anyway, unless the OP actually aim to find a real 11/03, I fail to see 
 the point here.

Well, it so happens that I do have an 11/03, although I wasn't
thinking of running this little dog-and-pony show on the actual
hardware.  I was content with emulating a small SIMH configuration in
order to see just how small I could make it.

I also have a VT180, and an 11/83, but I haven't ever powered up
either of those.

 What is left is actually writing the code, something that seems to get 
 much less attention...

That part I can handle on my own and I've already started looking at
it.  It's really not that difficult, but requires a few advanced TECO
tricks (ER with substituting the contents of a q-register in the
text of the filename argument).

GET requests are fairly trivial.  PUT is possible.  DELETE I'm not so
sure about, unless EG is supported in the target environment.  HEAD is
also a problem because there's no way of getting file attributes
(modified or created time) directly from TECO.  Again, you might be
able to hack something together if EG is supported.

POST to a TECO macro URL is possible.
-- 
The Direct3D Graphics Pipeline free book http://tinyurl.com/d3d-pipeline 
 The Computer Graphics Museum http://computergraphicsmuseum.org 
 The Terminals Wiki http://terminals.classiccmp.org 
  Legalize Adulthood! (my blog) http://legalizeadulthood.wordpress.com
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-07 Thread Johnny Billquist

On 2012-07-07 22:06, Richard wrote:


In article 4ff872b4.5000...@softjar.se,
 Johnny Billquist b...@softjar.se writes:


So, an 11/05 or 11/10 it is, if you want the slowest PDP-11.


I wasn't thinking slowest so much as minimally configured.  I can
make any machine slow by putting in a lower speed clock on it.


Exactly. So why the requirement?
Minimally configured? That's a new one. What does that mean? Not the 
same as the slowest, I would assume...


Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-07 Thread Johnny Billquist

On 2012-07-07 23:05, Richard wrote:


In article 4ff89f2f.4060...@softjar.se,
 Johnny Billquist b...@softjar.se writes:


That part I can handle on my own and I've already started looking at
it.  It's really not that difficult, but requires a few advanced TECO
tricks (ER with substituting the contents of a q-register in the
text of the filename argument).


You don't do it like that. You create the command in the main buffer,
with all the glory you want. You then store it in a q-register, and then
you execute it.


That's one way you can do it, but not the only way and the particular
trick I'm talking about is irrelevant to what you're describing.


Please tell me of another way. I have not realized one yet. (Honestly, 
always curious to learn new stuff.)



I wrote my first TECO programs in 1979, so I already have that covered.


:-)

Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-06 Thread Göran Åhling
11/21 Falcon board, ie KXT11-{AA|AB|BA|CA}  is a single-board, 
Dual-wide (to use DEC descriptions counting the number of contact 
finger groups on the card-edge) for earlier versions, quad-wide for -CA 
PDP-11 CPU board with integrated memory and 2 or 3 serial ports. The 
last version could have memory up to 64 kB on-board, slightly earlier 
version max 48 kB, the first version 4 kB. The OEM computer of those 
days - compare it to an ARM or PIC-chip of today. CPU is the T-11 chicp, 
ie generation 2 out of 4 integrated generations. Picture of dual-wide 
type at: http://www.conticomp.com/item_show.cfm?itemID=157659


BUT: The last fine PDP-11 by DEC was the PDP11-93 CPU. This was built as 
a single-card computer, quad-wide Q-bus, integrated memory (2 or 4 
MBytes depending on version/price), integrated 8 serial lines, 
integrated boot-rom etc. CPU is the J-11, ie generation 4 out of 4 
integrated designs.


So, physically, both these are the same, but the later has more of 
horsepowers in it's CPU. Both of them would do the job you have 
described, the latter would do it eassily...


(All early PDP-11:s were built upon MSI logic, so a CPU would need at 
least a few cards, each hex-wide size.)


When it comes to the architecture, The PDP11-20 (with oem name PDP11-15) 
was first. This one ha the smallest architecture, with a minimum of 
features. To design the smallest PDP-11 emulator, an 11-20 should be 
emulated (I think there is an FPGA-code on the net for this CPU). This 
one has 16 bits of adress, ie max 64 kB memory.


For OS:es, RT-11 is certainly the smallest of those that were offered 
by DEC in the later part of the PDP-11 era. RT-11 can run on most system 
configurations, using minimum floppy or TU-58 tape drive as secondary 
storage.


The TU-58 tape-drive was connected using one serial port. PC-based 
emulators of this 1/4 tape drive exists freely today (using PC with 
COM-port).


One small system to copy in config could possibly be a PDT11-150 or a 
VT103 aka PDT11-110 and/or PDT11-130. Actual config of these should be 
possible to find online...


As for emulations, this coule of today be run in a system not much 
larger than a coin...


More information can be read at:
http://hampage.hu/pdp-11/main.html
http://en.wikipedia.org/wiki/PDP-11
and at lots of other fine sites through the net.

/Göran

On 2012-07-05 19:03, Alan Frisbie wrote:

And people who know PDP-11s are asking them self smallest
pdp-11,  what is that?

The smallest one I recall was put together by John Crowell,
and was based on an 11/21 Falcon board.   My memory is a
bit hazy (hey, it was 30 years ago!), but it had one or two
TU58 drives and ran RT-11 (anyone who knows John would not
be surprised by that).   Since it was used for collecting
data in the field, he called it the Field-11.

Somewhere in my archives I have a magazine article about it.

I'm sure there were even smaller ones based on the T-11 chip.

Alan Frisbie
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh



___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-06 Thread Johnny Billquist

On 2012-07-06 21:04, Richard wrote:


When I say small, I'm referring to computational capacity, not
physical dimensions.


Excellent. Now we have something more tangible. I think I already 
pointed this out, but we might as well repeat it.


RT-11 can run on any PDP-11 CPU, including an 11/03, which I think is 
the computationally weakest model.
You'll have a Q-bus. and you can stuff up to 56 Kbyte in there, which is 
enough for RT-11 and TECO.
As you said you'd be happy to have some other machine manage to actual 
TCP/IP connection, and just have a serial line to the PDP-11, this setup 
fulfills your requirements for a machine running TECO, as well as 
probably being the slowest one.

However, where you'll find a PDP-11/03 today, I don't know.

If you instead plan to use simh, then it's no longer the smallest, by 
any longshot, and that requirement becomes just plain silly.


Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-05 Thread Johnny Billquist

On 2012-07-05 07:34, Richard wrote:


In article 4ff4dee5@softjar.se,
 Johnny Billquist b...@softjar.se writes:


I'm not totally clear about what smallest mean here.


Common sense meaning.

PDP-11/70 is bigger than a PDP-11/34.


Ok. So, pick the smallest. A VT103 should qualify pretty well, I think.


Besides, you mentioned before that having a real TCP/IP was not actually
required, and that having another machine do the TCP/IP part, while your
PDP-11 just talked over a serial port would be ok.


Yes, but it still needs to run TECO and serve files.  So obviously it
can't be a 4K PDP-11/03, because AFAIK, that can't run TECO.


Probably not. But a 28K PDP-11/03 will.

Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-05 Thread Michael Richter
Perhaps I'm showing stunning naivete here, but … couldn't you just get all
your stuff working (TECO and TCP/IP or whatever you use instead) on a
large PDP-11 emulation and then reduce it to the smallest configuration
you can find?

Or is the experimental approach somehow bad, even though it doesn't cost
anything at all in hardware?

-- 
Perhaps people don't believe this, but throughout all of the discussions
of entering China our focus has really been what's best for the Chinese
people. It's not been about our revenue or profit or whatnot.
--Sergey Brin, demonstrating the emptiness of the don't be evil mantra.
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-05 Thread Johnny Billquist

On 2012-07-05 18:18, Richard wrote:


In article 
CAGKutLuhRyAk+tNLtDivRX12n4HB=cXGfAJxfkGHZJE_pmav=g...@mail.gmail.com,
 Michael Richter ttmrich...@gmail.com writes:


Perhaps I'm showing stunning naivete here, but ... couldn't you just get
all
your stuff working (TECO and TCP/IP or whatever you use instead) on a
large PDP-11 emulation and then reduce it to the smallest configuration
you can find?


I think the confusion is that people are assuming that I know
everything they know about PDP-11 configurations.  I know next to
nothing.

So when they say something like just use the smallest one, I'm
like... WTF does that mean?


And people who know PDP-11s are asking them self smallest pdp-11, 
what is that?


So it becomes a circle of WTF questions. :-)

Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-05 Thread Alan Frisbie
 And people who know PDP-11s are asking them self smallest
 pdp-11,  what is that?

The smallest one I recall was put together by John Crowell,
and was based on an 11/21 Falcon board.   My memory is a
bit hazy (hey, it was 30 years ago!), but it had one or two
TU58 drives and ran RT-11 (anyone who knows John would not
be surprised by that).   Since it was used for collecting
data in the field, he called it the Field-11.

Somewhere in my archives I have a magazine article about it.

I'm sure there were even smaller ones based on the T-11 chip.

Alan Frisbie
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-04 Thread Johnny Billquist

On 2012-07-04 21:49, Richard wrote:


In article 4ff3cdb3.3010...@dslextreme.com,
 Michael Bloom mabl...@dslextreme.com writes:


All you really need is some kind of box that runs TECO and has
sockets, right?


...if all I cared about was the TECO part, yeah.

But no, that's not all I care about which is why I've been asking about
the smallest PDP-11 that could run this setup.

Still haven't gotten a suggestion on a particular PDP-11 HW config.


I'm not totally clear about what smallest mean here. Smallest how? The 
physcially smallest actual PDP-11? The smallest memory footprint? The 
slowest CPU? It's all kindof weird if you're going to run it on an 
emulated machine anyway.
Besides, you mentioned before that having a real TCP/IP was not actually 
required, and that having another machine do the TCP/IP part, while your 
PDP-11 just talked over a serial port would be ok.


So, that essentially means that all you care about is the TECO part. 
Have some PDP-11 run an OS, have TECO running on it, and have that whole 
thing in simh. Have the console port connected to a telnet server on 
port 80, and all you need to write is your TECO code.


Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-07-02 Thread Johnny Billquist

On 2012-07-01 16:29, Richard wrote:


In article 4fee0fe0.9050...@softjar.se,
 Johnny Billquist b...@softjar.se writes:


But to prove that it works, you need to do that sooner or later. Once
you've solved all the TECO issues, you can look at at machine to run it on.


...which, by the way, noone has suggested a particular SIMH configuration,
just PDP-11.


Well, RT-11 can run on just about any PDP-11 configuration you can think 
of. And using simh, you can have it connect the console terminal to a 
telnet port, so there you go. Just write the TECO macro...


Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-06-29 Thread Shoppa, Tim
In terms of sweet and small, you want Alan Baldwin's TCP/IP for RT-11 
implementation. http://shop-pdp.kent.edu/

It has a very nice and sensible TCP/IP application interface and in fact comes 
with a webserver and other common TCP/IP applications and utilities.
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-06-29 Thread Al Kossow

On 6/29/12 10:48 AM, Richard wrote:


In article303A17BD5F8FA34DA45EEC245271AC0B251BAEAE@JGEX2K10MBX2.wmata.local,
 Shoppa, Timtsho...@wmata.com  writes:


In terms of sweet and small, you want Alan Baldwin's TCP/IP for RT-11
implementation. http://shop-pdp.kent.edu/


Wait... 512K of system memory required?  Doesn't sound very small to
me for a PDP-11!


A complete TCP stack is a memory hog.
The ones running on 64k address space micros have almost no buffering.


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-06-29 Thread Johnny Billquist

On 2012-06-29 19:58, Richard wrote:


In article 4fedec05.8050...@bitsavers.org,
 Al Kossow a...@bitsavers.org writes:


On 6/29/12 10:48 AM, Richard wrote:


In article303a17bd5f8fa34da45eec245271ac0b251ba...@jgex2k10mbx2.wmata.loca

l,

  Shoppa, Timtsho...@wmata.com  writes:


In terms of sweet and small, you want Alan Baldwin's TCP/IP for RT-11
implementation. http://shop-pdp.kent.edu/


Wait... 512K of system memory required?  Doesn't sound very small to
me for a PDP-11!


A complete TCP stack is a memory hog.
The ones running on 64k address space micros have almost no buffering.


That's what I figured; I could live with chit-chat over a serial line
for the purposes of this crazy experiment.

The idea is that TECO is used to process a file that contains HTTP
request header and HTTP request body and edits it in-place to replace
it with HTTP response header and HTTP response body.

The communications part isn't the interesting part of this
experiement.  The interesting part is the TECO hack.


So, setup (or log into) any PDP-11 with TECO. Write your TECO macro that 
reads and verifies the HTTP request, and makes a response. Done.


Johnny
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-06-29 Thread Johnny Billquist

On 2012-06-29 20:40, Richard wrote:


In article 4fedf01a.9010...@softjar.se,
 Johnny Billquist b...@softjar.se writes:


So, setup (or log into) any PDP-11 with TECO. Write your TECO macro that
reads and verifies the HTTP request, and makes a response. Done.


Yeah, but not really a functioning system end-to-end.  So not done.


But to prove that it works, you need to do that sooner or later. Once 
you've solved all the TECO issues, you can look at at machine to run it on.


Johnny

--
Johnny Billquist  || I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip - B. Idol


___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh


Re: [Simh] smallest pdp-11 that can run TECO and sockets(*)?

2012-06-28 Thread Nelson H. F. Beebe
The kermit system may do what you want: it exists for many historical,
and current, platforms, and newer versions support network interconnects
as well as the traditional serial line connects.  See

http://www.columbia.edu/kermit/
http://www.kermitproject.org/
http://en.wikipedia.org/wiki/Kermit_%28protocol%29

---
- Nelson H. F. BeebeTel: +1 801 581 5254  -
- University of UtahFAX: +1 801 581 4148  -
- Department of Mathematics, 110 LCBInternet e-mail: be...@math.utah.edu  -
- 155 S 1400 E RM 233   be...@acm.org  be...@computer.org -
- Salt Lake City, UT 84112-0090, USAURL: http://www.math.utah.edu/~beebe/ -
---
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh