Hi -
> From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
> What's up with the 2.11BSD patch archive? I assume that the version
Both it and the mirror are up and running. There are quite a few
netblocks that have portscanned/spammed/whatever me here (dialups
and cablemodems for the most part) and they're listed in the packet
filters so if you're seeing timeouts, etc connecting that's probably
the reason.
> in the Unix Archive is the original release and does not have these
> patches applied. The mirror to which 2bsd.com referrs is gone and I
Companies play the "musical domain name" everytime they have a
re-organization (and, sigh, another one is in the works as I type).
What was listed was probably a name from the last reorganization and
of course it's very difficult to track down all the places that an
old name was used.
The mirror I maintain at work is:
ftp://ftp.cato.gd-ais.com
(for some time yet it will also respond to 'ftp.to.gd-es.com')
There may be other sites that also mirror
> don't want to pound on Steve's site if I don't have to. Any
Others have done that - usually it's not too bad, especially if I'm
asleep at the time :)
> suggestions? Once I get the files I presume I'm just supposed to feed them
> through patch in sequence (with the appropriate options, of course).
Sequence is important because the patches are diffs against the last
current version of a file.
Each patch has rather good (if I do say so myself ;)) instructions and
explainations of what was changed, how to apply, what to rebuild
immediately (and what can be deferred until it is convenient).
Have Fun!
Steven Schultz
sms(a)2bsd.com
This *must* be a FAQ, but I didn't find a real answer to it anywhere.
What's up with the 2.11BSD patch archive? I assume that the version
in the Unix Archive is the original release and does not have these
patches applied. The mirror to which 2bsd.com referrs is gone and I
don't want to pound on Steve's site if I don't have to. Any
suggestions? Once I get the files I presume I'm just supposed to feed them
through patch in sequence (with the appropriate options, of course).
--
David Evans (NeXTMail/MIME OK) dfevans(a)bbcr.uwaterloo.ca
Ph.D. Candidate, Computer/Synth Junkie http://bbcr.uwaterloo.ca/~dfevans/
University of Waterloo "Default is the value selected by the composer
Ontario, Canada overridden by your command." - Roland TR-707 Manual
Yanked a SCSI disk and the penguin could manage dding the simh image on to
it. The PDP-11 booted quite happily.
--
David Evans (NeXTMail/MIME OK) dfevans(a)bbcr.uwaterloo.ca
Ph.D. Candidate, Computer/Synth Junkie http://bbcr.uwaterloo.ca/~dfevans/
University of Waterloo "Default is the value selected by the composer
Ontario, Canada overridden by your command." - Roland TR-707 Manual
If all that is needed is to concatenate three files into a single
tape file, with each new file aligned on a block boundary, isn't
(for f in f1 f2 f3; do dd <$f conv=sync; done) >/dev/rmt0
sufficient?
The only time I had to do anything like this, the target system was
a MicroVAX; hence the tape had to have ISO labels, and the program
to be booted a particular tape filename. I don't remember how I
handled that; probably I used one of the several public-domain
tape-label-writing programs. But that was a VAX; I would assume
an 11/73 doesn't have so much enforced complexity in its firmware.
Howdy.
I'd like to confirm that somebody has successfully made a TK50 boot tape
for 2.11BSD using a TK50Z attached to some other Unix box. In my case it will
likely have to be Linux, though IRIX might be doable. It *should* work, after
all, but, well, you know. :)
--
David Evans (NeXTMail/MIME OK) dfevans(a)bbcr.uwaterloo.ca
Ph.D. Candidate, Computer/Synth Junkie http://bbcr.uwaterloo.ca/~dfevans/
University of Waterloo "Default is the value selected by the composer
Ontario, Canada overridden by your command." - Roland TR-707 Manual
Warren replies:
>Not sure if:
>
>http://www.tuhs.org/Archive/PDP-11/Bug_Fixes/Net.v7bugs/0017
>
>is a bug fix for this.
And Dennis replies:
>Does
> http://www.cs.bell-labs.com/who/dmr/odd.html#muldiv
>suffice to explain the behavior
Thanks for the replies, but the bug I found is about unsigned int's and
not long int's.
The V7 C code simply the DIV instruction for unsigned division. The dividend
is put in the low word of a register pair with the upper word cleared.
When the divisor is >= 2^15, DIV interprets it as a negative integer
and produces the result (N = 2^16):
N - a/(N-b) instead of a/b, and
a%(N-b) instead of a%b.
This explains the bug I've sent yesterday. I is easily fixed, since
when b >= N/2 and a < N, then a/b is either zero or one.
And there is another bug when using DIV for unsigned integers: If b = 1 and
a >= N/2, then a/b >= N/2, that is a signed overflow. With V7 on Bob Supniks
simulator (2.10), I get
60000/1: 0, 60000%1: 60000
DIV did not change the dividend because of overflow.
Again a fix is easy: With unsigned ints, don't use DIV to divide by one.
In all other cases, DIV produces the correct unsigned results, if the dividend
is less N, that is its high word is zero.
I wonder why these bugs went unnoticed.
Greetings
Wolfgang
Helbig observed
> while wondering how unsigned integer division is implemented in C
> I found a bug in V7: a/b and a%b with b >= 2^15 does not give the expected
> results, if a and b are unsigned int's.
Does
http://www.cs.bell-labs.com/who/dmr/odd.html#muldiv
suffice to explain the behavior?
Dennis
Hi,
while wondering how unsigned integer division is implemented in C
I found a bug in V7: a/b and a%b with b >= 2^15 does not give the expected
results, if a and b are unsigned int's.
Was this bug ever noticed or even fixed?
Greetings,
Wolfgang
Here is a program showing the bug:
main()
{
unsigned int a, b;
a = 60000;
b = 40000;
printf("a/b: %u, a%%b: %u\n", a/b, a%b);
b = 25000;
printf("a/b: %u, a%%b: %u\n", a/b, a%b);
}
The above program prints
a/b: 65534, a%b: 8928
a/b: 2, a%b: 10000
The first line should be of course
a/b: 1, a%b: 20000
A belated rejoinder to:
This bug existed from (at least) the Fifth up until the Eighth
editions from 1127 (BTL research). The Ninth edition had much
rewrites in the kernel and the algorthim was changed at that point.
You're welcome. I can't remember, though, whether I fixed it on
purpose or as part of the many general cleanups and restructurings
I did at that point. And I didn't do enough of it; recently I
discovered a dumb problem that I probably introduced in the same
cleanups, wherein the i-node allocated for a file that couldn't be
created because the file system was full and the directory entry
couldn't be written was left allocated but nameless ...
Norman Wilson
Toronto ON
On Jan 6, 19:01, Wolfgang Helbig wrote:
> Richard L. Hamilton searches:
> >The files
> >
> >http://minnie.tuhs.org/UnixTree/V7/usr/sys/dev/rl.c
> >http://minnie.tuhs.org/UnixTree/V7/usr/sys/conf/mkconf.c
> >
> >don't seem to match - mkconf.c wants to generate references to
> >rlopen() and rlclose(), which don't exist in that version of rl.
> >What I'm really looking for is the right version of driver(s) etc.
>
> It seems that a version of the rl driver that matches
> mkconf, was never supplied by the bell labs.
>
> As a workaround delete the rl entry in cdevsw and the line
> "int rlopen,..." from c.c. This will give you a block device of the rl
disk,
> but no raw device.
Hmm... my 7th Edition distribution /usr/sys/dev/rl.c certainly *does*
have rlopen() and rlclose(). If you want them, I can send rl.c and the
matching mkconf.c to you, or to Warren, along with the rl1conf and rl2conf
(for RL01 and RL02 disks) from /usr/sys/conf/ and any other files needed
(if someone can tell me what might be required -- it's a long long time
since I looked at any of this. The distribution came for an 11/23 with 2
x RL02, and it also has some special source files for 11/23, 11/34, etc
("small machines") including tests for recovery from segmentation traps in
floating point (which isn't the same on all PDP-11 models), and an RK
driver from the Boston Children's Museum which handles overlapped seeks on
multiple drives.
I'll be away for a couple of days so don't expect a prompt reply, but the
source is online here so I can easily copy a few files when I get back.
--
Pete Peter Turnbull
Network Manager
University of York