<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Yes, Ange-ftp is mode is a bit annoying; particularly since each
new version of Emacs seems to manage to break it in new and
interesting ways. I'm still trying to fix an infinite recursion
bug in the version I have on the Mac. Why use it? Why <b><font
size="+1"><tt><font color="#0432ff">c</font></tt><tt><font
color="#ff9200">o</font></tt><tt><font color="#00f900">l</font></tt><tt><font
color="#ff40ff">o</font></tt><tt>r</tt><font
color="#ff2600"><tt>s</tt></font></font></b> (in other
words, font-lock mode) and memory.<br>
</p>
<p>As you may be aware, the EMACS under Tops-20 is TECO based, the
TECO being written in an assembler dialect called MIDAS which will
emit code for ITS, TENEX and Tops-20. It is a pre-extended model,
which means you are 'limited' to a single section of 256K, which
is something like 1.25 megabytes, depending on how you slice it.</p>
<p>If you are programming assembler, that is an awful lot of space
before you have to resort to overlays. It's a decent amount of
data. The text of whole novels will easily fit as (7 bit) ASCII;
I have several from Project Gutenberg. Where you start to run out
of memory is commonly with multi-media and if you're me. It's
not unusual for me to have 16 files open, flipping between them.
On TECO based Emacs, you can run out of memory. Not so 64 bit
gnuemacs; it just keeps going and going. This was a major driver
for the FTP server rewrite.<br>
</p>
<p>The PDP-10 memory architecture had an enhancement done in the
early 70's to support extended memory, which provided an
additional 4,095 sections of virtual memory or about 5 GB total.
In the 80's, that was known as incomprehensible, 20 years ago,
perfectly adequate and today, well... Unless you are talking HD
video, 5 GB is reasonable for many applications, including editing
NTSC and PAL video.</p>
<p>At the time, a colleague and I were considering rewriting TECO in
MACRO to gain the advantage of that memory paradigm.
Unfortunately, the university switched off of the (cancelled) 36
bit line to Unix. First Digital Unix on a VAX 8650, the 8700 and
then Sun SPARC machines. They never trusted DEC again.</p>
<p>gnuemacs has been ported to Tops-20, so there is even less reason
to do it now, but I didn't know that ten years ago when I started
as a hobbyist.</p>
<p>Another reason was that I wasn't getting the performance I wanted
out of the TENEX based FTP server. I worked with it for about 6
months until I was advised that it would be better to just pitch
it. The new server easily gets over 6.5 Mbps, whereas the old one
could barely get into the high KB/s. I eventually figured out
why, but I don't think the old one could be made this fast.</p>
<p>The final reason was that I just kept getting annoyed that
'modern' graphical FTP clients had no idea of what the 20 was
returning. And if you know me, when it comes to computers, it
doesn't take much to get me really annoyed. I couldn't believe
the junk I was getting over the control channel. Lots of commands
that are not in any RFC. Looking at other FTP servers didn't help
either; they were hopelessly broken.</p>
<p>But now I can fool all but the very most brain damaged graphical
FTP clients (unfortunately I happen to have one on my iPhone).
Character mode FTP clients were easy.</p>
<p>I'm actually thinking of implementing FTP over DECnet; the
performance (in terms of processor utilization) would easily
exceed DAP. And it would be my kind of fun.<br>
</p>
<blockquote type="cite"
cite="mid:edbb5be5-0aa6-c661-ccc3-d2bd1557e9a9@softjar.se">
<hr width="100%" size="2">On 12/21/19 5:02 AM, Johnny Billquist
wrote:<br>
<br>
Aha. Thanks. I have never tested that one. I always find even the
mode extremely annoying...
<br>
<br>
Thanks. Yes, TVFS was what I was trying to remember. Yes, it is
annoying, and some clients goes and dies immediately if they don't
get information in that silly format. I implemented it for RSX,
and trigger it when a client does a "cwd /", since most such
clients also does that first of all.
<br>
<br>
That sounds way too complicated. I don't think any specific
feature or detail in my RSX servers ever have taken more than a
day or two to implement. But I do feel that some things are silly.
<br>
<br>
But I should also admit that I've only implemented things I felt I
needed, so I've skipped some stuff which supposedly is mandatory.
Noone complained (yet).
<br>
<br>
Johnny
<br>
<blockquote type="cite">
<hr width="100%" size="2">On 2019-12-21 02:58, Thomas DeBellis
wrote:
<ol>
<li> The client that does the ls is gnuemacs ange-ftp mode;
which was
quite shocking.
</li>
<li> Trivial Virtual File System (TVFS) is the RFC that
specifies a
common syntax, essentially codifying Unix syntax. That's
unfortunate because when you blow away most of the
punctuation, you
limit your search abilities.
</li>
</ol>
"fun"? Dear me... Actually, what really drove me crazy was
TENEX paged file structures; I was months getting that right.
<br>
</blockquote>
</blockquote>
</body>
</html>