>Hmm. This might have been before your time, but I might as well ask:
>got any stories to tell about the Hazeltine 2000?
I was but I've used them. They were the favorite terminals on the BOCES
LIRCS
KA10 system. To us TTY bangers that was fast at 1200!
Allison
On May 19, David Vohs wrote:
> But in my opinion, I think laptops are made as thin as they are so you can
> be lost or stolen easier. If you lose a new laptop, you are probably out
> $1500 or more! That's why I like older laptops like a Tandy Model 100,
> Macintosh Portable, etc. because of these reasons:
>
> 1. Large size
> 2. *Proper* keyboards (laptop makers, please thake note!)
> 3. Phenominal battery lives (see above comment)
> 4. If they are lost (nobody would really want to steal an obsolete laptop)
> you are out maybe $50-150 or so.
>
> So the newest technology is better, I beg to differ!
[Dave stands up, puts on tie, holds up a copy of BusinessWeek]
"But those ancient computers can't possibly work. Intel has come
out with something new, therefore everything made prior to that
stops working! Besides, how will I run the latest copy of Microsoft
WhizBang GraphiMail without at least half a terabyte of RAM? You KNOW
that I NEEEEED it in order to be a team player at my job...look, it
says so in this magazine!"
[Dave takes off tie, puts the copy of BusinessWeek on the floor,
pees on it, and goes back to putting together his pdp11/73]
-Dave McGuire
Does anyone know of any currently commercially available printer/plotter compatible as a drop-in replacement for a 1970's vintage Versatec electrostatic model?
Because a few people have asked about the old
mechanical type Navy analog fire control computers:
I have just put up a couple pictures of the Mk.1
fire control computer in my analog museum.
http://www.best.com/~dcoward/analog/fordsperry.htm
I also recently picked up a couple manuals for the
Mark 1 computer:
COMPUTER MARK I AND MODS DESCRIPTION AND OPERATION
(OP 1064) June 1945
Now I can stop envying these young guys with computers
that are older than they are. I don't have the computer,
but I have a user's manual that's older than me. :)
BASIC FIRE CONTROL MECHANISMS (OP 1140)
September 1944
This manual describes the workings of all of the basic
mechanisms (multipliers, integrators, resolvers, differentials,
synchros, cams, etc.)
I mention this because one of these basic mechanisms was up
for bid on eBay this week. And the pictures may disappear any
minute!!
http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=330171722
This is called a Component Integrator. It has two input shafts,
a Speed Input and a Angular Input. And it has two output shafts,
one is the product of the speed input and the cosine of the
angular input and the other is the product of the speed input
and the sine of the angular input.
Now back to the world of TTL logic, sorry for the interruption.
--Doug
====================================================
Doug Coward dcoward(a)pressstart.com (work)
Sr. Software Eng. mranalog(a)home.com (home)
Press Start Inc. http://www.pressstart.com
Sunnyvale,CA
Curator
Analog Computer Museum and History Center
http://www.best.com/~dcoward/analog
====================================================
I know the instructions for this have changed, and I can't find
them (dang it!)
Could someone please bring me up to date on how to bring
new listmembers on-board? The fellow I wrote in about last night
that has the VAXen is interested.
Thanks!
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Bruce Lane, Owner/Head Honcho,
Blue Feather Technologies (www.bluefeathertech.com)
kyrrin(a)bluefeathertech.com
"SCSI Users, Unite! Beware the IDEs of March!"
Does anyone here have a copy of the PDP 8/L Maintenance Manual,
Volume #2? I seem to be missing that for some reason.
It looks like I have all the rest of the stuff that originally
came with the computer, plus the PDP 8/L Maintenance Course Training
Notes, the KD8/L Data Break Option Functional Description, and the
8/L print set.
-Lawrence LeMay
On May 17, 13:06, Vintage Computer GAWD! wrote:
> On Wed, 17 May 2000, Pete Turnbull wrote:
>
> > Yes, probably :-) Since you wouldn't need much code, and nothing on a
> > standard Apple uses interrupts, you could go one further and make it a
> > time-sliced system instead of a cooperative one, with a very simple
circuit
> > (not much more than a 555 timer, though you might want it on a card
with a
> > PROM to hold the code).
>
> I considered this. An easier way to do this is to copy the BASIC ROM
into
> RAM in the upper 16K bank of memory and then modify the interpreter to
> switch after the execution of each BASIC program line.
Depends on whether you prefer hardware to software, I guess :-) Modifying
BASIC in a language card also has the advantage that it only tries to
switch when it's actually executing BASIC (rather than some DOS routine or
something you've BRUN) but I suspect that after-every-line is too often --
you'd spend a lot of time (proportionately speaking) context switching.
And it would be irregular; a multi-statement line encompassing a loop will
take much longer than a simple statement.
--
Pete Peter Turnbull
Dept. of Computer Science
University of York
Here is the original article, which predates the Apple IIe. I scanned and
OCR'd the article in response to a recent (beginning of March) thread on
comp.sys.apple2.programmer.
The Apple IIe vertical blanking signal (VBL) is at $C019. If the high bit
is clear then vertical blanking is active. I used this signal to write a
"lightstick" program for a contest in the June 1986 issue of II Computing.
I got a letter back saying my entry was the best, but the prize was a
year's subscription and the magazine went bust before announcing the
winner. Bill Bell, the Boston designer who created the lightstick, calls
the images "saccadoscoptics".
Paul R. Santa-Maria
Ann Arbor, Michigan USA
paulrsm(a)ameritech.net
Have an Apple Split
by Bob Bishop
Softalk, October 1982
[This is a plain text file but I have used HTML codes to indicate
<I>italic</I> and <B>boldface</B>.]
Have you ever wanted to create a display with both lo-res graphics and
hi-res graphics on the same screen? Or graphics with more than just four
lines of text at the bottom? Or how about text with four lines of
graphics?
As we all know, the Apple II has only five display formats. It can
display all lo-res graphics, all hi-res graphics, all text, lo-res with
four lines of text at the bottom, or hi-res with four lines of text at the
bottom. The latter two formats are sometimes called mixed modes because
they allow, in a very restricted way, the mixing of graphics and text.
But, according to page 12 of the <I>Apple II Reference Manual</I>, "There
is no way to display both graphics modes at the same time." Well, not only
are there ways of displaying both graphics modes on the same screen, it is
also possible to display any combination of modes!
The technique of mixing display modes by the process of <I>screen
splitting</I> is familiar to programmers who've used the Apple III, the
Atari 400 and 800 machines, and several other computers. These machines
contain special hardware that helps detect what is referred to as
<I>vertical blanking</I> and <I>horizontal blanking</I>. What is not
generally known is that the blanking can be detected by the Apple II, even
though it lacks the special hardware found in those other machines.
<B>Example Program.</B> Before jumping into a technical discussion of
the hows and whys of screen splitting, let's look at an example of screen
splitting on the Apple II. Listings 1 and 2 present a short Applesoft main
program and a machine language subroutine that the program calls.
Take a few moments now to turn on your Apple and enter these two
programs. Don't worry if you don't understand machine language. Just go
into the Monitor from Basic by typing <I>call-151</I> followed by the
return key. Then start typing in the hexadecimal values for the listing 2
subroutine that starts at $0300:
300:8D 52 C0 A9 E0 A2
and so on followed by the return key.
Now run the Applesoft program. What do you see? (Nothing, if you
didn't type in the listings correctly.) You should see a text message in
the top half of the screen and lo-res color graphics in the bottom half.
This is a display mode that's supposed to be impossible to create on a
standard Apple II computer!
To understand how to do screen splitting on the Apple II, you must be
familiar not only with 6502 machine language but also with how the Apple
maps its memory onto the display screen. (The latter information can be
found on pages 14 through 21 of the <I>Apple II Reference Manual</I>.) The
essence of what we need to know about hi-res in particular is shown in
figure 1. Each line of the display is forty bytes long from left to right,
and there are 192 such lines from top to bottom. The memory mapping seems
somewhat haphazard: consecutive memory locations don't map onto consecutive
lines of the display. Finally, for each set of 128 bytes of display memory
only 120 bytes (three lines' worth) are displayed. The remaining eight
bytes of the 128-byte set are never seen and are therefore sometimes
referred to as the "undisplayed" or "unused" bytes. These undisplayed
bytes all lie, conceptually, just off the bottom right-hand edge of the
display, as shown in figure 1.
Text and lo-res both map in a way similar to hi-res, except that each
cluster of eight lines now comes from one set of forty bytes instead of
eight sets, and instead of the screen buffer being located at $2000 through
$3FFF it lies at $0400 through $07FF. (Compare the <I>Apple II Reference
Manual</I> pages 16 and 18 with page 21.)
<B>Some Preliminary Insights.</B> Let's try a few experiments that
might give us some clues as to how screen splitting can be accomplished.
>From Basic type the command <I>call -151</I> (followed by return) to get
into the Monitor. Next, clear the screen by issuing the escape--shift-P
sequence. Now type <I>C051</I> followed by return. (Hitting return will
always be assumed from now on.) The computer will probably display:
C051- A0
(If it doesn't, try typing <I>C051</I> again.)
Typing C051 from the Monitor is the way to turn on text mode if the
computer is displaying graphics. But since we're already in text mode,
nothing much happens--nothing much except that the contents of $C051 are
displayed. But $C051 isn't supposed to be a readable address; it's merely
a screen switch. So what does it mean for $C051 to contain $A0? Is it
just a coincidence that $A0 is the hex code for an ASCII blank, and that
most of the screen is also blank? What would happen if we typed C054? Or
C056? Again, we tend to get $A0 if the screen is mostly blank.
Let's try another experiment. Again from the Monitor, type:
2000:73 2001<2000.3FFEM
followed by.
C050 C053 C057
You should see some vertical hi-res lines with space for four lines of
text at the bottom of the screen. Now type <I>C050</I>, or <I>C053</I>, or
<I>C054</I>, or <I>C057</I>. Most of the time we now see $73 in the screen
switch locations, and once in a while we see $A0. (Remember that the
bottom four text lines on the screen are mostly blank.)
The results of the previous experiments suggest that by examining the
screen switches we can somehow read the contents of at least part of the
screen currently being displayed. But, to determine the time-history of
what is being read, we must first find a way to "tag" the screen data and
then sample the soft switches very quickly. Doing this would provide us
with a cycle-by-cycle map of how the Apple's video is generated. In other
words, we could determine which locations in memory the information in the
screen switches is coming from during each clock cycle of the processor.
Such a cycle-by-cycle map would be extremely useful in the implementation
and understanding of screen splitting on the Apple II.
<B>Tagging and Sampling a Hi-Res Screen.</B> Now let's create a
special hi-res display. We'll put zeros in the forty bytes of the hi-res
memory buffer that correspond to line 0 and ones in all the bytes
corresponding to line 1. Line 2 will contain all twos, and so on. In
other words, line n will contain all n's, for n = 0 to 191 ($00 to $BF).
But we still haven't tagged the undisplayed bytes in the bottom right-hand
corner (screen lines 128 through 191). Let's fill these sixty-four sets of
eight-byte "invisible" lines with the values $C0 through $FF. Then every
byte in the primary hi-res display buffer ($2000 through $3FFF), whether
displayed or not, will contain a known quantity from $00 to $FF. Listing 3
is a program for creating such a hi-res display of tagged screen data. Two
versions are given; one in Integer Basic and one in Applesoft. Use Integer
if you have it. It's faster.
Next we need to devise a way of quickly and uniformly sampling a
screen switch over and over and saving each sample for later study. One
way of doing this might be with a program like the following.
LDX #$00
LOOP LDA $C050
STA $1000,X
INX
BNE LOOP
This program is very short and straightforward, but it suffers from two
major flaws: first, it does not provide the fastest possible sampling
(because of the time required for index register operations). Second, it
allows only 256 data points to be sampled and stored. If we try to remedy
the second flaw by changing the method of storage to STA (indirect),Y we
not only aggravate the first flaw but introduce delays into the loop that
cause us to generate unevenly spaced samples after every two hundred
fifty-sixth fetch.
The best approach is to create a sampling program of the form:
LDA $C050
STA $1000
LDA $C050
STA $1001
LDA $C050
STA $1002
and so on. There's no loop involved; an individual set of LDA and STA
commands is used for each check. Such a program is quite long (six bytes
per sample) but executes very quickly (one sample per eight machine cycles)
and yields uniformly spaced data. The programs in listing 4 generate the
machine language program just described. Again, use the Integer version if
you have that language.
We're now ready for business. Having run the programs shown in
listings 3 and 4, we have the tagged hi-res data starting at $2000 and the
sampling program starting at $4000. We run the sampler by entering the
Monitor and giving the command <I>4000G</I>. After a brief flash of the
screen the program terminates, leaving its collection of screen samples
starting at $1000 in the Integer version or $8000 in the Applesoft version.
Figure 2 is a partial listing of the key results of the sampling
program. The entire listing of all the samples is much longer. Interested
readers are encouraged to generate their own complete set of data using the
programs described above. Before we can begin interpreting these results,
we must discuss some fundamental concepts about television video and the
Apple.
<B>Television Images.</B> A standard television picture consists of
525 interlaced scan lines that start in the upper left-hand corner of the
screen and end in the bottom-right. "Interlaced" means that the image on
the screen is created by first scanning all the even lines of the picture
and then going back and filling in all the odd lines. In each scan line,
the electron beam starts at the left side of the display and travels across
the screen to the right, displaying one line of the image as it moves.
When the beam finishes at the right end of each scan line, it shuts off for
a few microseconds while it repositions itself at the beginning of the next
line to be scanned. This shut-off period is referred to as <I>horizontal
blanking</I> (HBL). When the beam reaches the bottom of the screen and
finishes scanning the last line, it again shuts off, this time for a few
milliseconds while it repositions itself at the top of the display for the
next frame of the image. This second turn-off period is referred to as
<I>vertical blanking</I> (VBL). The total time required to complete one
interlaced frame (including VBLs) is one-thirtieth of a second.
When the Apple computer was first being designed, it was discovered
that a computer-generated interlaced video signal produced a display that
had an objectionable flicker. So interlacing was not used, even though
this meant that half of the potential vertical resolution would be lost.
This lost <I>spatial</I> resolution allowed Apple to achieve increased
<I>temoral</I> resolution; instead of generating only thirty video frames
per second, the Apple generates sixty, because the Apple uses the interlace
to display a new 192-line frame.
A second design consideration in the Apple II was the decision not to
overscan the screen. "Overscanning" means that the image extends slightly
beyond the four edges of the screen so that the picture fills the entire
viewing area. Instead, so that information in the corners won't be lost,
the Apple leaves a small dark border of unused screen in all of its display
modes. This further reduces the number of visible scan lines in each
frame, so that only 192 lines remain in the display.
The Apple transfers its video data to the screen at a rate of one byte
per machine cycle. Each scan line requires a total of sixty-five cycles
>from HBL to HBL. Since the Apple produces a forty-column display (forty
byes per line), we can deduce that twenty-five cycles of each scan line are
spent in a turned-off state and forty cycles are spent turned on. But even
when the video is turned off, the screen switches can still be sampled.
What will they contain?
<B>Interpreting the Sampled Results.</B> Let's return to figure 2 to
see what we can learn from our sampled data. Locations $119B through $119F
all contain zeros. Our sampling program required eight cycles per sample.
Consequently, the five samples represent forty machine cycles--exactly the
duration of the visible part of one scan line.
Since the top line of our display was the only line containing all
zeros. we infer that the data stored at $119B represents the beginning of a
video frame. After three strange bytes ($11A0-$11A2) we see five ones in a
row. These apparently represent the next scan line down, followed by three
more strange bytes, and so on.
Well, if we've identified the data that isn't strange as representing
the visible portions of the scan lines, then it follows that the strange
bytes must be coming during HBL, and that HBL maps from $81 lines ahead of
the line just scanned. The fact that HBL seems to come from such a
far-away place is confusing enough in itself, but why an odd number like
$81 instead of a nice power of two or something (like $80)? Something
about these results doesn't feel right; they just don't seem to make any
sense.
Well, our decision to attribute HBL to the <I>end</I> of a scan line
was simply one of convention. Since HBL occurs <I>between</I> scan lines,
we could just as easily have attributed it to the beginning of a scan line.
Then our interpretation of the data in figure 2 would be that a scan line
consists of its visible forty-cycle component preceded by its invisible
twenty-five-cycle HBL component, which is mapped from $40 display lines
earlier. This model assumes a circular screen; that is, if counting up $40
lines would take you off the top of the screen, continue counting up from
the bottom.
If we interpret the data in this fashion, it soon becomes evident
that: <I>a complete sixty-five-cycle scan line consists of sixty-five
consecutive bytes of display buffer memory that starts twenty-five bytes
prior to the actual data to be displayed</I>. (See figure 3.) We can even
see the undisplayed bytes of the screen buffer (where we stored the values
$C0 through $FF, remember?) in locations $119A, $11A2, and so on; they're
right where we'd expect them to be.
If we now look at locations $17AB through $17AF in figure 2 we see
that they all contain $BF, which represents the bottom line of the display.
Thus $17B0 must be the start of VBL. During VBL the data acts just as if
it were starting a whole new frame from the beginning, but it never
finishes this pseudo-frame. After getting one third of the way through the
frame (to scan line $3F), it suddenly repeats the previous six scan lines
($3A through $3F) before aborting to begin the next true frame. Examine
locations $1970 through $19FF in figure 2.
If we had done our tagging and sampling exercise using a lo-res or
text screen instead, the results would have been similar. The only
difference would have been that each row of sixty-five bytes in the display
would be repeated eight times, since both text and lo-res "characters" are
eight scan lines tall.
<B>Example Program Revisited.</B> Now that we have a better feeling
for what's going on, let's go back and try to understand how the screen
splitting example in listing 1 worked.
The for-next loop in lines 200 through 250 does three things:
1. Line 210 pokes the value $E0 into the middle line of text/low-res
display.
2. Line 220 pokes the value $A0 into the bottom line of the display.
3. Lines 230 and 240 create a simple lo-res pattern of colored vertical
lines.
After printing a text message (lines 300 through 310) in the top part
of the screen, the program calls (in line 400) the machine language screen
splitting subroutine located at $0300. Line 500 then keeps re-calling the
subroutine so that screen splitting will continue. Screen splitting is a
dynamic process; it requires a program to keep it working. If the program
stops, screen splitting stops. Try hitting control-C and see what happens.
Now let's examine the machine language subroutine. Ironically, one of
the first things we have to do to produce a mixed mode display is to turn
off the mixed mode screen switch, $C052. Since we'll be doing our own
mixing we don't want the Apple to confuse things by putting in its own mode
switching. The rest of the routine consists of two virtually identical
polling loops.
The first loop ($0305 through $030E) sets text mode by referencing
screen switch $C051 and, at the same time, waits for four consecutive $E0s
to be scanned. Where do these $E0s come from? From the middle of the
display screen where they were poked by line 210 of the Applesoft program!
When the $E0s are detected, the subroutine enters the second pollng loop
($0311 through $031A). This loop sets lo-res graphics mode by referencing
screen switch $C050 and then waits for four consecutive $A0s (from the
bottom line of the display) to be scanned. Once the $A0s have been
detected, the mode is set back to text (at location $031B) and the
subroutine returns to the main program.
There are a few subtleties here that should be pointed out. Why, for
example, do we require four consecutive occurrences of $A0 and $E0 instead
of just one? The reason for this can be inferred from figure 3. We see
that <I>every displayed line also has apart of itself mapped into some
other display line's twenty-five-cycle "invisible" HBL component</I>. This
complicates the problem of detecting where the beam is currently scanning
on the display. How do we know whether the data being sampled is coming
>from a visible scan or from an invisible HBL? Well, a visible scan
consists of forty cycles of data, while the invisible HBL can only be
twenty-five cycles at most. So, by requiring several consecutive samples
whose fetching times total more than twenty-five cycles duration, we will
eliminate false triggerings from HBL. Be careful not to exceed forty
cycles or you'll miss the visible data too.
The process of mode changing sometimes tends to produce small
unsightly glitches on the display screen. To test this out, change the
contents of location $0305 in our example program in listing 2 to be either
a $03 or a $02 and see if it makes any difference in the display. You can
see how it's a good idea to try to change modes during HBL (or VBL) rather
than in the middle of a visible scan line.
Another subtlety in the example program lies in our choice of $A0 and $E0
as tag bytes. While any values could have been used as tags, the values
$A0 and $E0 are especially useful because they both appear as blanks on a
text screen. On a lo-res graphics screen they appear (in our example) as a
row of black (or blank) over a row of color. Thus these values provide a
convenient way of switching cleanly between text and graphics modes.
<B>In Conclusion.</B> From our examination of the example program, we
see that screen splitting consists of essentially two steps. First, the
screen must be preformatted with "tagged" lines at the points where screen
splitting is to occur (that is, the $A0 and $E0 lines in our example).
Second, a machine language subroutine must be written that detects these
tagged lines and then quickly switches display modes. But the process is
far from being trivial, and it requires a certain amount of creativity and
ingenuity to design screens that can be split cleanly and effectively.
What are some applications of screen splitting? Well, it can provide for a
little more variety and flexibility in display modes above and beyond the
basic five that everyone knows about. To this end I have used screen
splitting to create the opening displays for several commercially available
games (<I>Maxwell's Demon/Bishop's Square</I>, from Datasoft, Inc.;
<I>Money Munchers</I>, from DataMost).
In addition to splitting a screen, we can superimpose screens. For
example, if we print some words on the primary text screen and plot some
lo-res colors in the corresponding locations of the secondary lo-res
screen, then by screen switching, we could produce text on top of a colored
background (if we don't mind a little bit of flicker). Similarly, by
combining the two hi-res pages in such a way that the primary page has all
of its high bits off while the secondary page has all of its high bits on,
we can generate true 560 x 192 hi-res graphics. It is then possible to
write a hi-res character generator for this mode that, in effect, produces
eighty columns of text (in hi-res) without benefit of an eighty-column
card!
The possibilities arising from screen splitting seem quite exciting,
to say the least. But there is, unfortunately, one fly in the
ointment--the
technique may not work on all Apples. Looking at the screen switches like
we've been doing is called "reading the floating bus," and it's something
that Apple Computer never intended to be done. Therefore, they make no
guarantees that the data read in this manner will be meaningful, especially
when certain peripheral cards are plugged into the expansion slots. In
fact, this method of screen splitting doesn't work on the Apple III at all,
even in emulation mode, because its bus doesn't float. But there seem to
be very few Apple IIs in which the method can't be made to work when the
incompatible peripherals are unplugged.
If you can't get screen splitting to work on your Apple, you might
want to try running the machine language program shown in listing 5. Load
a hi-res picture into the primary display buffer ($2000 through $3FFF),
create any lo-res display on the primary lo-res screen, and then run the
program at $1000.
This program is an example of screen splitting using nothing but
timing loops. But there's no way to synchronize the splitting. So, each
time you run the program, the split will occur at a different vertical
position on the screen, depending on which scan line you just happen to
catch the beam on. This program should work on all Apples.
-----------------------
<I>The author would like to thank D. Kottke, R. Nicholson, and B. Smith of
Apple Computer for their helpfull discussions on Apple II video hardware
and L. Grossberger of Eclectic Electric for her suggestions and help in
preparing the diagrams for this article.</I>
----------------------------------------------------------------------------
-
100 HOME
200 FOR K = 0 TO 39
210 POKE 1448 + K, 14 * 16
220 POKE 2000 + K, 10 * 16
230 COLOR= K + 4
240 VLIN 25,45 AT K
250 NEXT K
300 VTAB 6: HTAB 17
310 PRINT "APPLE II"
400 CALL 768
500 GOTO 400
Listing 1.
----------------------------------------------------------------------------
-
0300- 8D 52 C0 STA $C052
0303- A9 E0 LDA #$E0
0305- A2 04 LDX #$04
0307- CD 51 C0 CMP $C051
030A- D0 F9 BNE $0305
030C- CA DEX
030D- D0 F8 BNE $0307
030F- A9 A0 LDA #$A0
0311- A2 04 LDX #$04
0313- CD 50 C0 CMP $C050
0316- D0 F9 BNE $0311
0318- CA DEX
0319- D0 F8 BNE $0313
031B- 8D 51 C0 STA $C051
031E- 60 RTS
Listing 2.
----------------------------------------------------------------------------
-
LINE ADDRESS _______________________________________
$00 $2000 | | $2027
$01 $2400 | |
$02 $2800 | |
$03 $2C00 | |
$04 $3000 | |
$05 $3400 | |
$06 $3800 | |
$07 $3C00 | |
$08 $2080 | |
... ... | |
| |
/ /
/ /
| |
|_______________________________________|
$40 $2028 ----| | $204F
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
/ /
/ /
| |
|_______________________________________|_______
$80 $2050 ----| | | $207F
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
/ / /
/ / /
| | |
$BF $3FD0 ----|_______________________________________|_______| $3FFF
|<------------- DISPLAYED ------------->|<- \ ->|
UNDISPLAYED
Arrow from $2000 to $2027.
Arrow from $2027 to $2028.
Arrow from $2028 to $204F.
Arrow from $274F to $2050.
Arrow from $2050 to $207F.
Arrow from $207F to $2000.
Figure 1. Memory mapping of bytes on hi-res page.
----------------------------------------------------------------------------
-
100 FOR Y = 0 TO 191
110 GOSUB 1000
120 FOR X = 0 TO 39
130 POKE BASE + X,Y
140 NEXT X,Y
150 FOR Y = 128 TO 191
160 GOSUB 1000
170 FOR X = 40 TO 47
180 POKE BASE + X,Y + 64
190 NEXT X,Y
200 END
1000 L = Y:S = 0:Q = 0
1010 S = INT (L / 64)
1020 L = L - S * 64
1030 Q = INT (L / 8)
1040 L = L - Q * 8
1050 BASE = 8192 + 1024 * L + 128 * Q + 40 * S
1060 RETURN
Listing 3--Applesoft.
----------------------------------------------------------------------------
-
100 FOR Y = 0 TO 191
110 GOSUB 1000
120 FOR X = 0 TO 39
130 POKE BASE+X,Y
140 NEXT X,Y
150 FOR Y = 128 TO 191
160 GOSUB 1000
170 FOR X = 40 TO 47
180 POKE BASE+X,Y+64
190 NEXT X,Y
500 END
1000 BASE=8192+40*(Y/64)+1024*(Y MOD 8)+128*((Y MOD 64)/8): RETURN
Listing 3--Integer Basic.
----------------------------------------------------------------------------
-
10 PC = 16384
20 POKE PC + 1,80: POKE PC + 4,82: POKE PC + 7,87
30 FOR K = 1 TO 3
40 POKE PC,141: POKE PC + 2,192
50 PC = PC + 3
60 NEXT K
100 FOR LOC = 32768 TO 34816
110 POKE PC,173
120 POKE PC + 1,80
130 POKE PC + 2,192
140 POKE PC + 3,141
150 HLOC = INT (LOC / 256)
160 LLOC = LOC - (HLOC * 256)
170 POKE PC + 4,LLOC
180 POKE PC + 5,HLOC
190 PC = PC + 6
200 NEXT LOC
210 POKE PC,141: POKE PC+1,81: POKE PC+2,192: POKE PC+3,96
Listing 4--Applesoft.
----------------------------------------------------------------------------
-
10 PC=16384: LOC=4096
20 LDA=10*16+13: STA=8*16+13: C050LO=5*16: C050HI=12*16: RTS=96
40 POKE PC+1,C050LO: POKE PC+4,C050LO+2: POKE PC+7,C050LO+7
50 FOR K = 1 TO 3
60 POKE PC,STA: POKE PC+2,C050HI
70 PC=PC+3
80 NEXT K
100 FOR K=1 TO 2048
110 POKE PC+0,LDA
120 POKE PC+1,C050LO
130 POKE PC+2,C050HI
140 POKE PC+3,STA
150 POKE PC+4,LOC MOD 256
160 POKE PC+5,LOC/256
170 PC=PC+6: LOC=LOC+1
180 NEXT K
190 POKE PC,STA: POKE PC+1,C050LO+1: POKE PC+2,C050HI: POKE PC+3,RTS
Listing 4--Integer Basic.
----------------------------------------------------------------------------
-
1120- B7 F7 37 37 37 37 B8 B8 17A8- 7F 7F 7F BF BF BF BF BF
1128- B8 F8 38 38 38 38 B9 B9 17B0- 80 80 80 C0 00 00 00 00
1130- B9 F9 39 39 39 39 BA BA 17B8- 81 81 81 C1 01 01 01 01
1138- BA FA 3A 3A 3A 3A BB BB 17C0- 82 82 82 C2 02 02 02 02
1140- BB BB FB 3B 3B 3B 3B BC 17C8- 83 83 83 C3 03 03 03 03
1148- BC BC FC 3C 3C 3C 3C BD 17D0- 84 84 84 C4 04 04 04 04
1150- BD BD FD 3D 3D 3D 3D BE 17D8- A5 85 85 85 C5 05 05 05
1158- BE BE FE 3E 3E 3E 3E BF 17E0- 05 86 86 86 C6 06 06 06
1160- BF BF FF 3F 3F 3F 3F BA 17E8- 06 87 87 87 C7 07 07 07
1168- BA BA FA 3A 3A 3A 3A BB 17F0- 07 88 88 88 C8 08 08 08
1170- BB BB FB 3B 3B 3B 3B BC 17F8- 08 89 89 89 C9 09 09 09
1178- BC BC FC 3C 3C 3C 3C BD
1180- BD BD BD FD 3D 3D 3D 3D 1970- B7 B7 F7 37 37 37 37 B8
1188- BE BE BE FE 3E 3E 3E 3E 1978- B8 B8 F8 38 38 38 38 B9
1190- BF BF BF FF 3F 3F 3F 3F 1980- B9 B9 F9 39 39 39 39 BA
1198- 80 80 C0 00 00 00 00 00 1988- BA BA FA 3A 3A 3A 3A BB
11A0- 81 81 C1 01 01 01 01 01 1990- BB BB FB 3B 3B 3B 3B BC
11A8- 82 82 C2 02 02 02 02 02 1998- BC BC FC 3C 3C 3C 3C BD
11B0- 83 83 C3 03 03 03 03 03 19A0- BD BD BD FD 3D 3D 3D 3D
11B8- 84 84 C4 04 04 04 04 04 19A8- BE BE BE FE 3E 3E 3E 3E
11C0- A5 85 85 C5 05 05 05 05 19B0- BF BF BF FF 3F 3F 3F 3F
11C8- 05 86 86 C6 06 06 06 06 19B8- BA BA BA FA 3A 3A 3A 3A
11D0- 06 87 87 C7 07 07 07 07 19C0- BB BB BB FB 3B 3B 3B 3B
19C8- BC BC BC FC 3C 3C 3C 3C
1780- 7A 7A BA BA BA BA BA 7B 19D0- BD BD BD FD 3D 3D 3D 3D
1788- 7B 7B BB BB BB BB BB 7C 19D8- BE BE BE FE 3E 3E 3E 3E
1790- 7C 7C BC BC BC BC BC 7D 19E0- BF BF BF BF FF 3F 3F 3F
1798- 7D 7D 7D BD BD BD BD BD 19E8- 3F 80 80 C0 00 00 00 00
17A0- 7E 7E 7E BE BE BE BE BE 19F0- 00 81 81 C1 01 01 01 01
19F8- 01 82 82 C2 02 02 02 02
Figure 2.
----------------------------------------------------------------------------
-
BEGIN VISIBLE _______________________________________ END OF SCAN
SCAN LINE $00 | | | LINE $00
| | |
| | |
| | |
| | |
| | |
| | |
BEGIN VISIBLE |---------------------------------------| END OF SCAN
SCAN LINE 'L' | | | LINE 'L'
| BEGIN HBL FOR |-----------------------| END HBL FOR
| SCAN LINE 'N' | ^ | SCAN LINE 'N'
| | | |
| | $40 LINES |
| | | |
| | v |
BEGIN VISIBLE |---------------------------------------| END OF SCAN
SCAN LINE 'N' | | | LINE 'N'
| | |
| BEGIN HBL FOR | | END HBL FOR
| SCAN LINE $BF |_______________________| SCAN LINE $BF
| _______________|_______
| BEGIN HBL FOR | | | END HBL
FOR
| SCAN LINE $00 | | | SCAN LINE
$00
| | | |
| BEGIN HBL FOR |_______________|_______| END HBL
FOR
| SCAN LINE 'L' | | | SCAN LINE
'L'
| | | |
| | | |
BEGIN VISIBLE |_______________________|_______________|_______| END OF
SCAN
SCAN LINE $BF LINE $BF
Figure 3. Cycle-by-cycle map of video frame.
----------------------------------------------------------------------------
-
1000- A2 00 LDX #$00
1002- 20 1A 10 JSR $101A
1005- 8D 50 C0 STA $C050
1008- 8D 57 C0 STA $C057
1006- F0 00 BEQ $100D
100D- 20 1A 10 JSR $101A
1010- 8D 52 C0 STA $C052
1013- 8D 56 C0 STA $C056
1016- EA NOP
1017- 4C 02 10 JMP $1002
101A- A0 06 LDY #$06
101C- CA DEX
101D- D0 FD BNE $101C
101F- 88 DEY
1020- D0 FA BNE $101C
1022- A2 9D LDX #$9D
1024- CA DEX
1025- D0 FD BNE $1024
1027- 60 RTS
Listing 5.
----------------------------------------------------------------------------
Forwarded to both CLASSICCMP and port-VAX (NetBSD) mailing lists).
Found on Usenet. Got a fellow who's come across a VAXstation 3500
(Mayfair CPU?), and needs help with it. I've already tried answering some
of his questions, but if anyone else wants to send him mail please feel
free.
Thanks! Attachment follows.
-=-=- <snip> -=-=-
On Thu, 18 May 2000 20:42:24 -0400, in comp.unix.questions you wrote:
>>Path: news.uswest.net!news-out.uswest.net!newsfeed.cwix.com!feed1.news.rcn.net!rcn!not-for-mail
>>From: Iakovlev <iakovlev(a)mailcity.com>
>>Newsgroups: comp.unix.questions
>>Subject: VAXstation 3500 help please
>>Date: Thu, 18 May 2000 20:42:24 -0400
>>Lines: 21
>>Message-ID: <39248DF0.D4C6692(a)mailcity.com>
>>Reply-To: iakovlev(a)mailcity.com
>>Mime-Version: 1.0
>>Content-Type: text/plain; charset=us-ascii
>>Content-Transfer-Encoding: 7bit
>>X-Trace: wTfHF6OMbeKq6zRHTOHpf7j73AT8ReoCax6idfw8g+o=
>>X-Complaints-To: abuse(a)rcn.com
>>NNTP-Posting-Date: 19 May 2000 01:47:21 GMT
>>X-Accept-Language: en,ru
>>X-Mailer: Mozilla 4.7 [en] (Win98; U)
>>Xref: news-out.uswest.net comp.unix.questions:17667
>>
>>I ve got a VAXstation 3500 with no cables or monitor
>>
>>I do have transceivers and various monitors, but have no clue
>>of how to connects any input/output devices....
>>
>>I'm a student and have a purely educational interest in the beast - no
>>love affairs or anything like that....
>>
>>What's inside of it?
>>What size of SCSI HD I can find inside?
>>How big is the memory?
>>Is there such a thing as video/memory?
>>
>>It comes with TK70 tape drive - is it still usable? how much data can it
>>write to a tape - I even have 2 tapes for it!
>>
>>I have also 2 VT220 things - can they work with the beast?
>>
>>thank you so much for any useful info
>>
>>alex
-=-=-=-=-=-=-=-=-
Bruce Lane, Owner and head honcho,
Blue Feather Technologies -- kyrrin (at) bluefeathertech [dot] com
Web: http://www.bluefeathertech.com
"...No matter how we may wish otherwise, our science can only describe an object,
event, or living thing in our own human terms. It cannot possibly define any of them..."
Ok, its 4 months short of its 10th birthday but close enough. Work
has a Stardent 1500/3000 Titan? computer they will be getting rid of.
The machine did run when last powered on within the last year and comes
with manuals (OS and programming, not much hardware) and backup tapes.
It runs Unix. From what I understand it was for its time a "super mini"
with good graphics capability. I haven't used it so am not too familiar
with it.
The machine is in a 4 foot rack and takes up a good portion of it so pickup
in Gaithersburg MD is the best option if you want it. Anybody who offers
PDP-8 stuff for my collection gets it otherwise probably free to whoever can
take it. At this point work is saying they want to free the space but hasn't
actually decided to get rid of it, verified it has no resale value etc.
If you are interested let me know and I will let you know when work finishes
the process.
David Gesswein
djg(a)drs-esg.com
http://www.pdp8.net/ -- Old computers with blinken lights
My PDP 8/L that I recently acquired, has a cable that i assume is for
the console terminal. It has a 9 pin male connector with only pins
1 through 6 present. Is this a standard serial connection? This was
a papertape based system, so it may have been connected to a teletype
ASR 33. Will I need to locate something that can do 110 baud to use
as a console?
Also, I'm very curious about the other cables comming from the 8/L...
I have 6 flat black cables, similar to ribbon cable but thicker, with
9 'wires' on each cable. possibly each 'wire' is something similar
to coax, but i'm not sure... Each pair of these ribbon-like cables
go together into a centronics 36 pin male connector. thus there are
3 centronics connectors, which are labeled: "A D36", "B D35", "C D34".
Any clues as to what this might be for?
-Lawrence LeMay
Umm does this mean that I get a good deal from the 55 to 60 cents a pound
the scrapper I go to gives me for circut boards?
Will J
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
In a message dated 5/18/2000 8:15:03 AM Pacific Daylight Time,
foo(a)siconic.com writes:
>
> What kind of truck is this? It sounds like a classic computer cornucopia.
> Did this truck get into some accident on the way to the computer store or
> something?
>
Trucks, Trailers and outbuildings are always around scrapyards. They often
get filled with "low value" scrap items "junk" that the yard owner doesn't
want to deal with when they come in, like terminals and printers. Some times
those piles sit for years.
Investigate all Shipping Containers. Sometimes they are used for storage, but
most of the time they are being filled with outgoing scrap on it's way to
China. If you can be there with your screwdrivers when it is being loaded
sometimes you can find neat stuff. You don't want to get in the way of the
loading operation, but if you have developed a relationship with the scrapper
you can often cull as it is being loaded.
Adopt your local scrapper. Offer twice the scrap value or more, don't get in
the way and you will be, more than likely, welcome.
Paxton
PS. Most of the scrap going into containers brings 5 to 10 cents per pound to
the dealer loading it.
----------
> From: Eric J. Korpela <korpela(a)albert.ssl.berkeley.edu>
> To: classiccmp(a)classiccmp.org
> Subject: Re: Cool AppleSoft BASIC trick I never thought of before
> Date: Thursday, May 18, 2000 12:28 PM
>
> Of course, none of this is a concern with cooperative multitasking of
BASIC
> programs but if someone implements an interupt generator on a ][ for
> multitasking purposes, it could become a concern.
Someone did. The GEOS system came with a board that generated interrupts
that you could use if you did not have an Apple II mouse card to generate
the interrupts. Another interrupt generator could be a clock card.
Paul R. Santa-Maria
Ann Arbor, Michigan USA
paulrsm(a)ameritech.net
> Are there any Crommeco experts out there? I have a couple of questiosn
>about the Cromemco terminals and printers.
I've got several thousand pages of Cromemco documentation here at the
moment, mostly on their S-100 boards and software packages, and a little
on terminals and printers. Which terminals and printers are you interested
in?
Tim.
Though the typing and CAPITIALIZATION done by said seller makes me want to
beat myself with a shovel, they are a really great person to do business
with, one of the most nice and understanding ones I've seen to be sure.. Not
to be making an ebay plug, but I guess the old "don't judge a book by its
cover" comes in here...
Will J
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
-----Original Message-----
From: Vintage Computer GAWD! <foo(a)siconic.com>
To: classiccmp(a)classiccmp.org <classiccmp(a)classiccmp.org>
Date: Tuesday, May 16, 2000 10:37 PM
Subject: Re: Finding Vintage Computers - A Primer
>
>Also, I think I'll mention Pawn Shops in a revised edition, mostly to warn
>people not to even bother. Anything they have will be too recent to be of
>any interest, and they certainly wouldn't give anyone good money for an
>old piece of junk computer, and thus have any for sale. Also, the stuff
>they sell is, in my experience, horribly over-priced, sometimes over
>retail!
>
In my area, there's a related type of store that is worth a look. It's a
chain called "Cash Converters", where they buy your unwanted goods (at
substantially less than the estimated value) and then sell them in a retail
environment. Like a permanent garage sale under one roof. Unlike a pawn
shop, you can't reclaim your item for what they gave you for it. They
occasionally have classic comp stuff; I've found TRS-80s of various kinds,
Model 100s, PS/2s, Newtons and a lot of older software. The prices are
initially set high, but if an item doesn't sell, they progressively reduce
the price until it does. IIRC, the concept originated in Australia, and
there are also stores in the States.
Regards,
Mark.
>> Model 100s, PS/2s, Newtons and a lot of older software. The prices are
>> initially set high, but if an item doesn't sell, they progressively
>reduce
>> the price until it does.
>
>You in Sydney? The Ca$h Converter$ in Adelaide seem not to have heard
>of the progressive reduction in price part of the concept. I saw an
>real IBM XT, 2FDD no HDD, Monochrome, about 6 months ago with a $250
>price tag on it. It was still there with the same price 3 weeks ago.
>Perhaps the Sydney stores get more turnover. I've yet to see a good
He can't be in Sydney. I am and I've never seen them behave like that.
I rarely even look. At the Bondi Junction store there's usually more staff
than customers at the hours I visit and they look mean and hungry.
Hans
-----Original Message-----
From: Mike Ford <mikeford(a)socal.rr.com>
To: classiccmp(a)classiccmp.org <classiccmp(a)classiccmp.org>
Date: Tuesday, May 16, 2000 4:08 PM
Subject: RE: Finding Classic Computers
>
>There is a couple in AZ with a working, flying, F104. (one of those neat
>ones if not the 104).
>
Actually, it's an ex-CF-104, built for the Canadian Armed Forces. The main
differences (IIRC) were in modified flaps, leading edge slats and air
brakes to provide better low-speed performance. The perennially
cash-strapped CAF actually operated the Starfighter, designed as a
high-speed interceptor, as fighter-bombers (!) for ground support in
Europe. This doubtless contributed to the 104's reputation as a
"widow-maker" in the CAF.
Nice toy if you have money to burn and like to sightsee at Mach 2.
Mark.
OK, I'm feeling lazy. Is it possible to build a PDP-11 TK-50 Boot tape
under OpenVMS V7.2?
What can I say, I really don't feel like getting my DECstation 5000/133
fully up and running with NetBSD, moving the TZ30 from my PDP-11/73 to the
DECstation, making the tape, then moving the TZ30 back just to build a tape.
Hmm, maybe I should just use an emulator to build UNIX V7M RL02 images for
my /44 and then use a VAX to make the diskpacks :^)
BTW, PUP's is now setup so you can access it after going through the SCO
'click-through' AT&T Source License.
Zane
| Zane H. Healy | UNIX Systems Adminstrator |
| healyzh(a)aracnet.com (primary) | Linux Enthusiast |
| healyzh(a)holonet.net (alternate) | Classic Computer Collector |
+----------------------------------+----------------------------+
| Empire of the Petal Throne and Traveller Role Playing, |
| and Zane's Computer Museum. |
| http://www.aracnet.com/~healyzh/ |
*shipping is not included in listed price.
DEC PDP-11 DR11-C GENERAL DEVICE INTERFACE MANUAL, 1974 ($15)
====================================================
? ORIGINAL ISSUE
? UNUSED CONDITION
? 46 PAGES
? SECTIONS ARE (1) INTRODUCTION, (2) SOFTWARE INTERFACE, (3) USER INPUT/OUTPUT SIGNALS, (4) THEORY OF OPERATION, (5) MAINTENANCE,
(6) EXAMPLES, AND (7) ENGINEERING DRAWING SET.
? APPENDICES ARE (A) INTEGRATED CIRCUIT AND (B) USE OF BB11.
>OK, I'm feeling lazy. Is it possible to build a PDP-11 TK-50 Boot tape
>under OpenVMS V7.2?
Yeah, sure it is. Question is, what do you want to boot into?
Just make sure all the files are laid down correctly, all the record
lengths are right, and you've got the tape marks in the right places.
Those are the essential ingredient to any tape.
Tim.
On May 17, 0:16, Vintage Computer GAWD! wrote:
> On Wed, 17 May 2000, Pete Turnbull wrote:
>
> > If I remember correctly, Applesoft BASIC is one of those that searches
from
> > the start of program every time it executes a GOTO or GOSUB. If I'm
right,
> > the easy way to preserve variables (and all the rest of the program
state,
> > including the GOSUB/FOR..NEXT stack) would be to POKE in the new start
> > address and then GOTO 10 instead of RUN.
>
> I think you'd have to do more than this since the interpreter won't know
> the difference between Program A running and Program B. In other words,
> the varibale A$ in Programs A&B will both point to the same variable
> (hmmm...an interesting way to implement shared memory in BASIC!)
That's right; I just assumed you wanted to keep all the variables around
all the time. If you want something more like a real mutitasking system,
and program independence (not to have to worry about variables in one
program sharing names with those in another) then you need to
save-and-restore all the relevant pointers: start of variable space, start
of arrays, end of numerics, start of strings. Maybe more (I've not tried
it personally).
> > If you do this, you better set LOMEM as well (but only once), or make
sure
> > the highest-loaded program is the first one RUN, so the variables start
in
> > a suitable place.
>
> LOMEM does almost what you need: it moves the start of the variable data
> pointer to the address specified with the command. However, I do believe
> this initializes the variable space, which would not be good.
No, it wouldn't be good, and the LOMEM comand probably does reset the other
pointers (I can't check, my Apples are both in store at the moment). I
really just meant "set the LOMEM pointer".
> I've never
> devled into the way BASIC variables are kept but I am pretty sure that
> they are searched for from the beginning of whatever LOMEM is to the end
> (as given, I believe, by HIMEM). LOMEM and HIMEM simply set pointers in
> the zero page that BASIC uses to keep track of the low and high memory
> locations for variable storage. So manually keeping track of these and
> POKEing them in for each swap should appropriately keep the variable
> memory for each program in memory separate and intact.
Yes, the variables aren't stored in any specially structured way (they are
in some other BASICs). You probably want to keep track of the end of
string space as well (HIMEM, essentially) and make liberal use of FRE() to
minimise waste.
> I was just thinking that a sort of Multi-Tasking BASIC Operating System
> (MTBOS) could be developed that would take care of all this for you.
> Also, since the text screen on the Apple ][ can be defined by poking in
> the left column, right column, top row and bottom row into the
> appropriately zero page addresses, one can also specify a screen area
that
> each program is allowed to run in. This could be maintained by the
MTBOS.
>
> The MTBOS would basically reside somewhere in memory (a simple one could
> probably be made to fit in $300-$3A0 which is the common unused space
> where simple machine language utilities go) and can be CALLed from each
> program running at regular intervals to allow a swap to the next process.
> It would be sort of like Windows 3.0 :) (but probably faster).
Yes, probably :-) Since you wouldn't need much code, and nothing on a
standard Apple uses interrupts, you could go one further and make it a
time-sliced system instead of a cooperative one, with a very simple circuit
(not much more than a 555 timer, though you might want it on a card with a
PROM to hold the code).
--
Pete Peter Turnbull
Dept. of Computer Science
University of York
Back on May 6, I said:
>RK05s? I bought five RL02 disk packs the other day for $2 each.
>I see they're going for $30 on eBay. I'll use the proceeds to
>fund other bad habits.
Just to confound the eBay hysteria, I'll recount what happened
with these RL02s. I was all excited because eBay's history showed
a single RL02 went for $28 a few weeks ago.
I mentioned I had these packs on this list on May 6 and no one
responded. I listed one pack on eBay on May 9. I composed a nice
page, sent private e-mail to likely bidders telling them of the
auction.
Chuck McManis missed my original post to this list, but he was
the winning bidder and picked one up for $5.50. I sold the rest
to him for that price, so he got five with shipping for $45.
(Did I bend any eBay rule by selling him the other ones?)
In another eBay story, I was the top bidder for a Leitz illuminator
transformer for an old microscope I have, at $5. However, the
seller wanted to charge $12 shipping. This item is two-three pounds
at best. I questioned this and haven't heard from them yet.
Similarly, someone sent me a note about Pascal MicroEngine schematics
they're auctioning. For 50 xeroxed pages, the first bid is $9 and
they want $7 shipping.
No doubt some eBay sellers have discovered the old mail-order
rule of thumb that the cost of goods and shipping should be covered
by the "shipping and handling" charge, and that the price is
just gravy. :-) BTW, I always charge "actual shipping cost".
- John
Check this site out http://www.commodore2000.com
The Commodore Evolution (in the development process) looks like a
fat PC keyboard. I e-mailed the guy to try to get some more detailed specs.
I wonder if this is for real or not. It looks like a recent domain
registration.
FYI, the domain is owned by:
Administrative Contact: Barton, Raymond
(rbarton(a)ONEBOX.COM) Computersnational, inc. 112 Carman Place Amityville ,
NY 11701 (516) 827-8667 (FAX) (516) 691-1589
Technical Contact, Zone Contact: Mindspring Domreg
(domreg(a)MINDSPRING.COM) Mindspring Enterprises, Inc. 1430 West Peachtree St.
NW, Ste. 400 Atlanta, GA 30309 US 888-932-1997 Fax- - 404 815-8805
Record last updated on 24-Nov-1999. Record expires
on 11-Oct-2001. Record created on 11-Oct-1999.
It looks like it's a small e-commerce Web site hosted by Mindspring.
The page link for the PeeCee compatible seems to be broken...
Rich
==========================
Richard A. Cini, Jr.
Congress Financial Corporation
1133 Avenue of the Americas
30th Floor
New York, NY 10036
(212) 545-4402
(212) 840-6259 (facsimile)
>I am sometimes asked 'what can that 20-year-old machine do'. One correct
>answer is 'Everything it did 20 years ago' (I was having this discussion
>with Philip Belben the other day, so some ideas here may have come from
>that). In other words, that 20-year-old CP/M box with Wordstar was doing
>word processing back then. It can still do word processing. Maybe not
>with all the fancy fonts and formatting tricks of a more modern machine.
>But it can still print letters, books, etc. And quite honestly, that's
>all I need (and if people can't accept a plain ascii file from me, I have
>no intention of dealing with them!).
I would have said the same.... save for now we know that even with
older hardware things like fonts and pretty printing are easily doable
on hardware like IMSAIs and PDP11s (and often done well!).
>It never fails to amaze me that computers are wonderful machines
>_because_ they can be programmed to do just about anything. And then
>modern OSes/applications (and things like the TCPA) seem to be preventing
>you from programmming them. Go figure.
The only difference between a PDP-11 and a PIII/750 is how long you may
wait for the same results. Granted some software projects are only doable
in reasonable time scales as a result of speed. For practical projects
I have a 386/16 that does run W95 so speed is not the absolute catalyst.
Remember: Stable Mature systems we know how to use, applies here.
Allison
Sam said:
> On the Apple ][, in AppleSoft BASIC, you can set what the start address
> of your BASIC program will be in memory by poking it into location 103-104
> ($68-$69 hex).
> The default is 2049 ($801): 103=1 and 104=8 ($68=1, $69=8).
> QUESTION: Does anyone know why the default is $801 instead of $800? I
> always wondered why that was. Anyway...
_MANY_ BASICs have the same format for storing a
program line. The first two bytes is the address
"link" to the next line of the program. The second
two bytes is the "line number" for this line of
the program. The line number is followed by the text
of the program line, with all of the BASIC keywords
tokenized, and terminated with a zero. The next
address location after the zero is the address
pointed to by the link of the previous line and
it's also the beginning of the next line of the
program. At the end of a BASIC program, the zero
at the end of the last line is followed by two
zeros meaning that the next "link" is zero.
When BASIC is initialized, (and the start of
BASIC is normally $801), the OS usually stores
zeros at $800,$801,and $802, and set the beginning
of BASIC program space at $801, indicating that
$800 is the end of the previous line and $801,$802
is the end of the program. So the BASIC program
space DOES start at $800, but the beginning of the
BASIC program is $801. _I_believe_ the need for a
zero indicating the end of the previous line at
the beginning of BASIC program space is probably
a hold over from some ANCIENT incarnation of
BASIC and is not really necessary, but I have
not tried this with different kinds of BASIC.
There should be no problem with setting the
beginning of the BASIC program area to say....
$4057 before loading your program. As the program
is loaded, the links are changed to reflect
the new program location.
> I run either of the programs and I get an endlessly alternating display of
> "PROGRAM 1!" and "PROGRAM 2!". In other words, it works! Cool.
BASIC also keeps a pointer to the current
line being executed. Instead of "running"
each program, try having the first program
(at the end) set the current line pointer
to $4001 and vicey versy.
> It seems to me this could be mutated into a sort of practical method of
> multi-tasking BASIC programs.
There are quite a few zero page locations
you need to save and restore, but multi-tasking
BASIC is very possible.
You could also write a BASIC program that built
it's own custom subroutines in a different memory
area on the fly, execute them, and return to
itself.
--Doug
====================================================
Doug Coward dcoward(a)pressstart.com (work)
Sr. Software Eng. mranalog(a)home.com (home)
Press Start Inc. http://www.pressstart.com
Sunnyvale,CA
Curator
Analog Computer Museum and History Center
http://www.best.com/~dcoward/analog
====================================================
Beau added this info...
---------- Forwarded message ----------
Date: Tue, 16 May 2000 23:40:22 -0500
From: Beau Reichert <tcr1(a)bga.com>
To: Vintage Computer Festival <vcf(a)siconic.com>
Subject: Re: IBEX info?
I system was made by logic systems international, inc. from japan. I
guess it would be a mini computer. The system is new in box never been
opened. I will get some pictures of it. The model number is 7202. Has
big keyboard/cpu, a monitor unit, and a 2 big floppies in one unit -
60lbs.
Thanks
Beau
Sellam International Man of Intrigue and Danger
-------------------------------------------------------------------------------
Looking for a six in a pile of nines...
Coming soon: VCF 4.0!
VCF East: Planning in Progress
See http://www.vintage.org for details!
Here's an article I wrote several years back detailing a method I used for
list protecting AppleSoft BASIC programs. I'd actually devised this
method in the mid-80s but decided to properly document it during a
discussion on an Apple ][ newsgroup.
It's a little long, and the BASIC program it references near the end is
somewhere around here (I'll have to dig it out in case anyone's really
interested).
The same article can be found at http://www.siconic.com/files/appllock
---
A Better Way to Protect Your AppleSoft BASIC Programs with AppleLock
by Sam Ismail
January 5, 1997
:Introduction:
I devised this method of protecting AppleSoft BASIC program listings
some years back during my prime Apple programming days. It involves a
combination of several different techniques for keeping your program
unlistable by the casual to intermediate user. This system is no match
for advanced users who understand the internal structure of BASIC, for
they could no doubt blast through this protection with little difficulty.
Hence, this program is suitable for protecting programs which you wish to
keep hidden from users who are less than expert Apple ][ hackers.
The following is a technical explanation of the AppleLock protection
scheme. If you don't care to read it, you may want to skip to the end of
this document to get the source code to the AppleLock program. This
discussion will not stop to explain in detail the advanced AppleSoft BASIC
and machine language techniques that are employed in this scheme as there
are plenty of FAQs around to explain the finer details of the tricks
involved.
:AppleSoft BASIC Internal Program Storage:
AppleSoft BASIC stores your program in memory by tokenizing the
keywords in your program into one byte values. So for instance, when
you type the follwing line:
10 PRINT "HELLO WORLD!"
the BASIC interpreter converts this into the following bunch of numbers in
memory (shown in hexadecimal):
15 08 Pointer to program data for next line
0A 00 Line number (in this case, 10)
BA The token for PRINT
22 The opening quotation mark
48 45 4C 4C 4F 20 57 4F 52 4C 44 21 The string HELLO WORLD!
22 The closing quotation mark
00 The end of line terminator
If this was the first line of the program, it would be stored starting
at memory location $0801 (or decimal 2049). As shown above in the first
line of bytes, the next program line data would be stored at memory location
$0815 (addresses are usually stored backwards in memory, which is the way
the 6502 CPU reads addresses, so in this case 15 08 is $0815).
:Some Simple Protection Schemes:
One of the simplest and most widely known tricks for protecting your
program is to POKE a 1 at memory location $0801 (POKE 2049,1). This will
trick AppleSoft into thinking that the next line of the program is at
$0801 instead of $0815. This will have the effect of listing the first
line of your program over and over again, indefinitely, until the user
presses Control-C to stop the display. Unfortunately, this trick is not
permanent. If you SAVE your program in this condition and then LOAD it
into memory again, AppleSoft will "fix" the pointer and make it point
to the next line again. So this trick only keeps your program secret as
long as the user always runs your program before doing anything else with
it (ie. LISTing it) and as long as you perform this POKE as the first
command inside your program. Not a very secure method.
Another well known trick for keeping your programs secret is to set
a flag in AppleSoft which has the effect of ignoring all AppleSoft BASIC
commands at the command line and running your program instead, regardless
of what the user types (with the exception of DOS commands which ignore the
RUN-only flag and execute regardless of its status). This flag is turned
on by POKE-ing any value greater than 127 at memory location 214
(eg. POKE 214,255). The flag is turned off by poking any value less than
128 at the same location (eg. POKE 214,0). Again, this method is not
effective because your program, or some other program that runs before
your program, must set this flag before the user has a chance to list
your program. Otherwise, the user could simply load and list your program
before it has a chance to set this flag.
So what are we to do? Well, unfortunately our options are limited
and ineffective unless we know some machine language and a little bit
about the AppleSoft BASIC architecture. That's where AppleLock comes in.
:Technical Overview of AppleLock:
The key to this scheme is adding a special line to the beginning of
your program which acts as a gateway to your program listing. This first
line will block the rest of your program from being viewed. It seems
benign enough to the naked eye. Yet it is performing some special
magic to enable your program to run normally and be copied to another
disk, but never listed.
This scheme uses a machine language subroutine to change the pointers
of your program to where your program really is. This machine code is
stored right inside the first line, but it is hidden from the user by
taking advantage of some features of AppleSoft BASIC. AppleSoft allows
you to embed control characters in your program listings, for instance,
in REM statements. When your program is LISTed, these control characters
are interpreted and output to the display just like in any other
circumstance. For instance, if you stuff a Control-H (or backspace)
character in a REM statement, it will be interpreted as a backspace when
the line is listed, and the character previous will be over-written by the
character following the backspace. There are several programs available
to allow you to create fancy listings by embedding backspace characters
into your REM statements in this manner. The following will demonstrate
the effect an embedded backspace will have when your program is listed:
LIST
10 REM A CHARACER WILL BE MISSING
^
The backspace occurred here. The 'T' was printed, but it
was followed by a backspace character, so the 'E' over-
wrote the 'T'.
Going back to our protection scheme, we must be able to CALL our machine
language subroutine which unlocks the rest of the program, but we don't
want the user to know what we are doing to unlock the program. So to
hide the CALL command, we follow it with a REM statement with enough
backspace characters to over-write the CALL command. As a side benefit,
we can now put whatever message we want as the first line of the program,
such as "THIS PROGRAM CANNOT BE LISTED". Or, we can get real tricky
by displaying what looks like a program line, but in actuality is some
dummy text which is hiding the real program line underneath, such as
"10 END " (we must put sufficient spaces to over-write both
the CALL and REM commands). To illustrate this more effectively, the
following is an example of a raw line before we embed the backspace
characters:
10 CALL 2100: REM *******************[ CAN'T LIST THIS! ]
Now we would replace all the asteriks with a backspace character (ASCII 8).
The easiest way to do this is from the monitor. In this case, we would
find the first asterik at memory location $080C. We could then replace
the asteriks with backspace characters by doing the following:
CALL -151
80C: 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
This now changes the 19 asteriks into backspace characters. Nineteen
backspace characters is enough to backspace all the way back to the
line number at the beginning of the line. If our line number was 1, we
would only need 18 backspaces. If our line number was 100, we would need
20 backspaces. If we had other commands after the CALL command, we would
need enough backspace characters to backspace over these commands as well,
including the formatting spaces AppleSoft prints when it displays your
program listing.
We have now completed the first step. We have created a line that
when listed will only show our message. Now we must create some room
for our machine language code which unlocks the program when it is CALLed
by the hidden command. To do this, we will add extra asteriks after our
message so that we can replace these asteriks with machine code and have
the code stored right inside the BASIC program. We must store the code
right inside the BASIC program so that it automatically gets loaded when
we load our program. Otherwise, if the code was stored in a separate
file, the user would be able to stop the program before it had a chance
to unlock itself. This would enable the user to possibly figure out
what was going on, and we don't want that.
In order to do all this, we must hide our machine code from BASIC.
Otherwise, BASIC will try to interpret our machine code as BASIC tokens
when we list our program and will throw garbage all over the screen.
First, let's create the program line we will need to hide our CALL command
as well as reserve enough bytes to store our machine language unlock
code. We will also add another program line for demonstration purposes
later in the tutorial.
10 CALL 2100: REM *******************[ CAN'T LIST THIS! ]*********
20 PRINT "HELLO WORLD!"
We have added some asteriks after our message to create the space we will
use to store our machine code. There are two extra bytes that will be
used to hide this machine code from BASIC as well as to fool BASIC into
thinking our program is shorter than it really is, thus hiding the rest
of the program. We must now jump back into the monitor to embed our
backspace characters and then insert our machine code:
CALL -151
80C: 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 Embedded backspaces
834: A9 3D 85 67 4C 65 d5 Our machine language code
The machine language code disassembles to the following instructions:
834: A9 3D LDA #$3D ; Get the true start of our program
836: 85 67 STA $67 ; and tell AppleSoft where it really is
838: 4C 65 D5 JMP $D565 ; Now run the real program
Basically, this code tells BASIC to jump over our first decoy line and
then start running our real program. As you may have guessed, the CALL
command that is at the beginning of our decoy line calls this code. Of
course, the user doesn't see this CALL command because it is over-written
by our message.
Now we must hide our machine code from BASIC, or else when we list our
program we will see a bunch of garbage. The machine code actually started
at the second asterik after our message. We will replace the first
asterik with a zero byte. A zero byte indicates to BASIC that it has
reached the end of the program line, and should go on to list the next
line. When we input a line, BASIC always puts a zero byte at the end of
our line before starting a new line. So after the last asterik in our
line is a zero byte. But we will also replace the last asterik in our
line with another zero byte, resulting in two consecutive zero bytes.
Two consecutive zero bytes tells BASIC that it has reached the end of the
program, and it should stop listing. We are now going to change the
internal pointers of our decoy line to point to these zero bytes so that
we can fool BASIC into thinking our program is only one line long!
833: 0 Replace the first asterik with a 0 byte
83B: 0 Replace the last asterik with a 0 byte
($083C has another zero byte already)
801: 3B Change the internal pointer to point to the two
zero bytes, fooling BASIC into thinking it has
reached the end of the program
Now when we list our program, we will see the follwing:
[ CAN'T LIST THIS! ]
But when we run it, we will see the following:
HELLO WORLD!
Cool, eh? Now, before we end our program, we must make sure we lock it
back up so that we don't defeat our protection scheme by leaving the
door open. You can add this line to your program to have it change the
pointer to the start of our program back to our decoy line:
30 POKE 103,1
Now this program will run and then re-lock itself when it's done. And
now hopefully you understand the basic premise of AppleLock.
:Additional Security Requirements:
As the programmer, you must also take several steps within your
program to ensure nobody can break out of it by hitting Control-C. And
we also have to contend with that darn reset button. First though,
let's take care of Control-C.
To prevent the user from trying to break out of the program and at
the same time trap any unexpected errors in your program, make sure the
FIRST line of your program is an ONERR GOTO command. ONERR GOTO allows
you to tell BASIC to jump to any line in your program whenever an error
occurs, and Control-C is considered an error (its error code is 255).
The simplest way to handle errors and Control-C attempts is with the
following lines:
10 ONERR GOTO 63999
<your program>
63999 RESUME
These lines will in effect cause the program to ignore any errors,
including attempts to break out of the program by the user. There is
still a very minor chance that the user could time a quick Control-C
right when the machine language unlock program transfers control to your
unlocked program, but before you issue the ONERR GOTO command or possibly
set the AppleSoft RUN-only flag (POKE 214,255), thus allowing the user to
break into your program. The AppleLock program at the end of this tutorial
addresses this problem.
Now let's take care of the reset button. The simplest way to prevent
a person from using RESET to gain access to your program is by adding a
simple POKE command at the beginning of your program, as follows:
POKE 1010,0
This will cause the computer to re-boot whenever the reset button is
pressed. We could get fancy and re-hook the reset vector so that when
the user presses RESET we can restore our program lock and then return
them to BASIC. This is exactly what the AppleLock program at the end
of this tutorial does.
Before your program terminates and returns to the command prompt,
it must undo the RUN-only flag (if you have set it) and then re-lock your
program. The following program line should be the last thing your program
does before it exits:
63999 POKE 103,1:POKE 214,0
The first POKE re-locks your program. The second POKE turns off the
AppleSoft RUN-only flag. You should also return the reset vector to
its original setting if you have modified it. Otherwise, the next time
the user presses RESET, your program will run again. If another program
was loaded and then RESET was pressed, the system will most assuredly
crash. AppleLock includes a routine which you can call at the end of
your program which will restore the reset vector as well as the AppleSoft
RUN-only flag and then re-lock your program before exiting.
:AppleLock Effectiveness Analysis:
Unfortunately, the weakest point of this scheme is that it takes only
one well-placed POKE to unlock your program. As an aside, the user can
find out what you are trying to hide by changing the character output
speed with a SPEED= command. For instance, by setting SPEED=0, and then
LIST-ing the program, the user would be able to see that there is a CALL
command hidden behind your message.
The best and most secure way to protect your program from prying
eyes remains the use of a BASIC compiler. However, this is not always a
feasible solution. There are a few compilers for DOS 3.3 that will convert
your program to machine language. And there is the Beagle Compiler for
ProDOS, but this compiler does not create a stand-alone machine language
program, but rather requires an interpreter that replaces BASIC.SYSTEM.
:Conclusion:
Hopefully this tutorial has given you enough information to help
you protect your AppleSoft BASIC programs for whatever reason you may
have. Enjoy.
:The AppleLock Program:
This program is very rudimentary and not very pretty. A nice
interface can be built around this program to make it more user friendly.
The important thing is that it is functional. What it does is creates
the machine language unlock code by POKE-ing it into memory. It then
asks you to enter the name of the program you wish to lock, as well as
the line number you wish to use as your decoy line. This must be the
first line in your program! After that, it allows you to enter a message
up to 160 characters in length (the length of the message is fairly
arbitrary, but this length was chosen to keep the program simple). Once
you get good at this technique, you will want to use other programs to
create your message (or perhaps use the monitor like I do) so that you
can have fancy banners show up when you try to list the program. It
then builds a text file with all the commands necessary to apply AppleLock
to your program. This file will then be EXEC-ed so that the AppleLock
procedure will be performed automatically. Once the process is complete,
your program will be loaded in memory and in a locked state (if you try
to LIST it you will only get the message you typed in). At this point,
you should SAVE your program to disk to make the process permanent. The
program will give you instructions on how to lock/unlock your program so
that you, as the author, can list and modify it as you please.
Keep in mind that you must unlock your program before you make any
changes to it, otherwise you stand the chance of royally screwing your
program and possibly crashing your machine. Weird things can happen when
you start to mess with AppleSoft program pointers. If this happens,
simply reboot your computer and re-load your program, and all will be well
again. If you ever want to remove AppleLock from your program, simply
unlock it and then save it to your disk (be sure to restore the BASIC
start-of-program marker with a POKE 103,1 after you are done saving).
When you load your program again, it will be back to normal.
The AppleLock program includes an enhanced locking mechanism which
will modify the reset vector and also sets the AppleSoft RUN-only flag
by POKE-ing a 255 at location 214 before it transfers control to your
program. This will prevent users from listing your program should it
fail and drop to the command prompt at some point, or the user presses
Control-C and you haven't added an ONERR GOTO command to your program.
If the reset button is pressed, the locking mechanism will re-lock the
program, reset the AppleSoft RUN-only flag, restore the reset vector
to its original value and then return to the command prompt.
:Disclaimer:
This program may be freely modified, distributed, sauteed, fricasseed,
lambasted, spindled, mutilated, desecrated, tormented and forced to cry
"uncle". It may not, however, be recruited into sado-masochistic rituals
unless it has consented to participate in such activities. Niether myself,
my immediate family, nor the code (it's just code, it doesn't know any
better) can be held responsible for any havoc it wreaks on your AppleSoft
programs. This program has been run and tested several times and has been
deemed sound by the author. If you do somehow get yourself in a bind, I
can be reached via email (dastar(a)siconic.com) and I will try to help you
reclaim your lost code. On that note, I leave you with these words to
live by: Always Keep a Backup!
------- cut here -------
Umm well to put it mildly, Ellison is a freaking weirdo... speaking of
which, has the PC been replaced yet, Mr. Ellison?
Will J
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
--- Vintage Computer GAWD! <foo(a)siconic.com> wrote:
>
> Stop me if you've heard this one before...
STOP! :-)
> On the Apple ][, in AppleSoft BASIC, you can set what the start address
> of your BASIC program will be in memory by poking it into location 103-104
> ($68-$69 hex).
There are similar locations for the same pointers in all versions of M$
BASIC for PETs, etc.
> The default is 2049 ($801): 103=1 and 104=8 ($68=1, $69=8).
Typical. The PET uses $0401, and the C-64 uses $0801 (because the display
memory is at $0400 by default on a C-64)
> QUESTION: Does anyone know why the default is $801 instead of $800? I
> always wondered why that was. Anyway...
I'm not sure of the exact reason, but for PETBASIC, $0400 (or $0800) must
contain a null byte. I suspect the same for AppleSoft.
> It occured to me tonight as I was writing just such an application--the
> Nerd Trivia Challenge management program for the VCF, which loads a
> hi-resolution character generator at $1600, which would over-run my BASIC
> code, which is therefore relocated to $4001--that two or more BASIC
> programs could reside in memory at the same time! One would simply POKE
> the beginning address into 103-104 and then LOAD the new program, and
> repeat this for as many programs as is possible with the memory available.
There was a machine language program for the PET called "QuadraPET" published
way back when (I have a copy on a 1541-disk-image file), that moved all the
BASIC pointers around in zero page to create four 8K virtual PETs on a 32K PET.
The author suggested that in a family setting, each user could have their own
space and not clobber other people's work. I'm sure it would be trivial to
adapt to AppleSoft, presuming there's around 100 bytes of protected memory
to stuff it into - the trick on the PET was to use the second cassette buffer
since so few users ever had two cassette drives. It was a great learning
experience to have to fit useful programs into 192 bytes.
> The only problem here of course is that any variables in either program
> will be quashed when the alternate program is run. However, there are
> also pointers that point to the beginning of variable memory, and I'm sure
> there would be a way to preserve these pointers so that individual
> variables for either program stay intact between transitions. Something
> worth exploring just for the hack value.
cf. QuadraPET; I can send you a copy if you'd like to disassemble it. ISTR
it was published in COMPUTE! if you have a collection of them from the 1978-
1981 timeframe. I'm fairly sure that the source is printed in the magazine.
OTOH, I am not familiar with this sort of trick being done for AppleSoft,
probably because back in those days, people moved to M/L for the Apple
very early on because of the demands for speed on graphical programs.
-ethan
=====
Even though my old e-mail address is no longer going to
vanish, please note my new public address: erd(a)iname.com
The original webpage address is still going away. The
permanent home is: http://penguincentral.com/
See http://ohio.voyager.net/ for details.
__________________________________________________
Do You Yahoo!?
Send instant messages & get email alerts with Yahoo! Messenger.
http://im.yahoo.com/
Stop me if you've heard this one before...
On the Apple ][, in AppleSoft BASIC, you can set what the start address
of your BASIC program will be in memory by poking it into location 103-104
($68-$69 hex).
The default is 2049 ($801): 103=1 and 104=8 ($68=1, $69=8).
QUESTION: Does anyone know why the default is $801 instead of $800? I
always wondered why that was. Anyway...
For various pratical reasons, usually to avoid over-running the beginning
of the first hi-res graphics page which began in memory at 8192 ($2000)
with variable data (which was always stored just after the end of the
BASIC program in memory), sometimes people would force their programs to
load at 16384 ($4000, which is also the beginning of the second hi-res
graphics page) or 24576 ($6000), or where ever.
It occured to me tonight as I was writing just such an application--the
Nerd Trivia Challenge management program for the VCF, which loads a
hi-resolution character generator at $1600, which would over-run my BASIC
code, which is therefore relocated to $4001--that two or more BASIC
programs could reside in memory at the same time! One would simply POKE
the beginning address into 103-104 and then LOAD the new program, and
repeat this for as many programs as is possible with the memory available.
As an experiment, I wrote two simple programs: one at $801 that simply
prints "PROGRAM 1!" and then sets the start of the program to $4001 by
POKEing a 64 into 104 then issues a RUN command, and another at $4001
that simply prints "PROGRAM 2!" and then sets the start of the
program to $801 by POKEing an 8 into 104 and issues a RUN.
I run either of the programs and I get an endlessly alternating display of
"PROGRAM 1!" and "PROGRAM 2!". In other words, it works! Cool.
The only problem here of course is that any variables in either program
will be quashed when the alternate program is run. However, there are
also pointers that point to the beginning of variable memory, and I'm sure
there would be a way to preserve these pointers so that individual
variables for either program stay intact between transitions. Something
worth exploring just for the hack value.
I never actually saw this in practice in all my years of Apple ][ hacking,
and believe me I snooped through a lot of code. Has anyone ever seen
this, and if so, for what purpose? I just thought of one example, which
was a Beagle Brothers product that let you have two programs in each 64K
bank of memory on a 128K Apple ][.
It seems to me this could be mutated into a sort of practical method of
multi-tasking BASIC programs.
Comments?
Sellam
OK,
Yesterday at the scrap yard, I found a whole lot of 60's/70's Burroughs,
Honeywell, NCR, and Univac boards... I'm definetly going to get the
Honeywell boards since they're from a 316 or 516 (approx. 50+ boards), but I
was wondering if anyone had info on what the SDS boards came out of? And no,
I'm not asking who SDS was or something like that, I mean if I was to get
the boards does anyone have the necessary info to tell what machine they
were used in. The boards are copyrighted 1965 and 1966, so I was thinking
maybe they were from a 940? They're not very big boards, something like 4
inches by 3 inches, approx of course. Bigger than H316 boards, which isn't
saying much, heh. I'm not planning on getting any of the NCR or Burroughs
stuff, but I am going to write down all the part numbers, maybe get the
remants of the one NCR core stack I found, since its already ruined and then
I could have a nice open one to display... dated 1967.
Will J
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
5 feet tall is way too big for a Varian.. the V70 series are early 70's to
at least mid 80's machines, only maybe a foot tall (the CPU is what I am
speaking of, naturally). I know Univac kept making the V70's until at least
1984; they had to, due to their contract with the company my dad worked for
at the time, Auto-trol Technology. They integrated V70's (and 620 series
machines before that) into their CAD systems, and in some of the old stock
prospectuses(prospecti?) we have at home, it says that Sperry Univac had to
give Auto-Trol a minimum of 6 months notice before stopping production of
the V70 series. FWIW, was essentially Apollo Computer's first customer, and
Apollo's eventually became the basis for Auto-Trol's CAD systems.
Will J
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com
Can anyone help this dude?
---------- Forwarded message ----------
Date: Tue, 16 May 2000 10:59:23 -0500
From: Beau Reichert <tcr1(a)bga.com>
To: vcf(a)vintage.org
Subject: IBEX info?
Do you know where I could get info on a IBEX computer.
Thanks
Beau
Sellam International Man of Intrigue and Danger
-------------------------------------------------------------------------------
Looking for a six in a pile of nines...
Coming soon: VCF 4.0!
VCF East: Planning in Progress
See http://www.vintage.org for details!
>Hello all, does anyone have a bootstrap for a PDP-11 from a TMSCP tape
>drive?
Have you tried the one at
http://metalab.unc.edu/pub/academic/computer-science/history/pdp-11/
in the section you get to by clicking on 'bootstraps'?
> My sigma RQD11 has an MSCP bootstrap that I can enable but it
>doesn't boot from tape and the BDV11 only knows how to boot from DX, DY,
>and DL (RL0x?).
Yeah, installing software from tape was a rather late option for Q-bus
machines, which started out (marketing-wise) at the "low" end of the
PDP-11 spectrum.
--
Tim Shoppa Email: shoppa(a)trailing-edge.com
Trailing Edge Technology WWW: http://www.trailing-edge.com/
7328 Bradley Blvd Voice: 301-767-5917
Bethesda, MD, USA 20817 Fax: 301-767-5927
Hello all,
These softbound books are in very good condition. I'm asking 1.2 x
shipping. Will ship USPS bookrate in the US. Here's what they are:
Common LISP, The Language, Guy L. Steele Jr., Copyright 1984, Digital Press,
ISBN 0-932376-41-X, DEC # EY-6706E-DP. Original price $23.00. This book is
in almost new condition (never read).
and
Programming in Common LISP, Rodney A. Brooks M.I.T., Copyright 1985, John
Wiley & Sons, ISBN 0-471-81888-7. Original price $21.95. Sold through CMU
bookstore.
Both books have a library stamp imprint on the title pages "Library of John
Evan Bares". There are no other marks, highlightings or underlinings.
Please contact me off list if you are interested in either or both of these.
FCFS. I'll post to the list when they have been spoken for.
Bill Dawson
whdawson(a)mlynk.com <mailto:whdawson@mlynk.com>
?
On May 16, 21:03, Vintage Computer GAWD! wrote:
> As an experiment, I wrote two simple programs: one at $801 that simply
> prints "PROGRAM 1!" and then sets the start of the program to $4001 by
> POKEing a 64 into 104 then issues a RUN command, and another at $4001
> that simply prints "PROGRAM 2!" and then sets the start of the
> program to $801 by POKEing an 8 into 104 and issues a RUN.
>
> I run either of the programs and I get an endlessly alternating display
of
> "PROGRAM 1!" and "PROGRAM 2!". In other words, it works! Cool.
>
> The only problem here of course is that any variables in either program
> will be quashed when the alternate program is run. However, there are
> also pointers that point to the beginning of variable memory, and I'm
sure
> there would be a way to preserve these pointers so that individual
> variables for either program stay intact between transitions. Something
> worth exploring just for the hack value.
I'm sure I've seen something similar, but I can't think what... it's a long
time since I actually used Apple ][s. Something with a menu system for a
set of disk programs, possibly.
If I remember correctly, Applesoft BASIC is one of those that searches from
the start of program every time it executes a GOTO or GOSUB. If I'm right,
the easy way to preserve variables (and all the rest of the program state,
including the GOSUB/FOR..NEXT stack) would be to POKE in the new start
address and then GOTO 10 instead of RUN.
If you do this, you better set LOMEM as well (but only once), or make sure
the highest-loaded program is the first one RUN, so the variables start in
a suitable place.
--
Pete Peter Turnbull
Dept. of Computer Science
University of York
--- allisonp <allisonp(a)world.std.com> wrote:
> >Cool! I didn't know you flew. I'm a student myself - one more solo
>
> Yep, been drivin my C150 '528 for the last 21 years. ;)
>
> If things go well it may even wander over to Ohio in the next few months.
Let me know if and when; I'll give you a tour of the collection at the
farm. I'm about 15-20 minutes drive from Port Columbus (CMH) where I
do my training (it's been educational learning in Class C space as compared
to the other nearby options - Class D at OSU/Don Scott, or at smaller,
uncontrolled airports).
So far, Hans Franke has been by to visit, but he was in enough hurry to
get back to Pittsburgh for his flight that he hasn't seen the inside of
the quonset hut yet. For the moment, stuff there is in storage mode.
The items in the house in the former den are all slated for cleaning, test
and repair.
My next restoration goals: ongoing work on the PDP-8/e (as soon as I
can find my overhead memory connectors), its TD8E + TU56, and an RK05J
on some flavor of LSI-11 (since I have a last-known-to-be-working RKV11D
and an RK11-C in dubious shape and no RK8E). Further down the pipe are
the external 8K memory box for the working -8/L, and a complete teardown
and cleaning of my PDP-8/i, the second -8 that I found back in High School.
-ethan
=====
Even though my old e-mail address is no longer going to
vanish, please note my new public address: erd(a)iname.com
The original webpage address is still going away. The
permanent home is: http://penguincentral.com/
See http://ohio.voyager.net/ for details.
__________________________________________________
Do You Yahoo!?
Send instant messages & get email alerts with Yahoo! Messenger.
http://im.yahoo.com/
Hello all, does anyone have a bootstrap for a PDP-11 from a TMSCP tape
drive? My sigma RQD11 has an MSCP bootstrap that I can enable but it
doesn't boot from tape and the BDV11 only knows how to boot from DX, DY,
and DL (RL0x?).
--Chuck
quite nice isn't it
----------
> From: r. 'bear' stricklin <red(a)bears.org>
> To: Classic Computers <classiccmp(a)classiccmp.org>
> Subject: Re: Booting VMS 5.5 from tape?
> Date: Monday, May 15, 2000 4:59 PM
>
> On Mon, 15 May 2000, Chuck McManis wrote:
>
> > I finally found my VMS 5.5 TK50's today and thought I would try to
install
> > VMS on my MicroVAX II. The tape loads in the TK50 just fine, but after
typing
> > B MUA0:
> > It reads and reads and reads ...
>
> Bwahahah.. forgive the repost, but it had to be done. Just as a warning,
> though, the article contains some strong language which may cause your
> wallpaper to peel just a little.
>
> ok
> r.
>
>
> From: mabbas(a)staff.uiuc.edu (Majdi Abbas)
> Newsgroups: alt.sysadmin.recovery
> Subject: Exabyte whiners and real tape drives (tape drive dick length)
> Date: 7 May 1997 00:09:35 GMT
> Organization: University of Illinois at Urbana
> Lines: 161
> Approved: tk50(a)godless.org
> Message-ID: <slrn5mvi1v.ovs.mabbas(a)ux1.cso.uiuc.edu>
> Reply-To: mabbas(a)uiuc.edu
> NNTP-Posting-Host: ux1.cso.uiuc.edu
> Summary: TK50s blow.
> Keywords: TK50 masochism
> X-Newsreader: slrn (0.9.2.1 BETA UNIX)
> Status: RO
> X-Status: A
>
> So here I am, sitting with *bootable* install media for my
VAX[1].
>
> The catch: It's on TK-50 tape. *One* TK-50 tape. Which means
I've
> got one shot, and only a 33% chance to make it close enough to even get
that
> shot. That's on a good day. Today is a Monday.
>
> What follows is *not* useful information. If you have one of
these,
> or have to work with one of these, you're too far gone to be recovering,
and
> this isn't going to help you any. May the God of DEC have mercy on your
soul.
>
> Oh, and before I get going, those of you who whine about Exabyte
> drives not ejecting tapes have no concept of a TK50. TK50's *do not*
eject
> tapes. You have to arm-wrestle the drive for the tape most of the time,
and
> even if you're lucky it's a manual eject[2].
>
> Before you can eject the tape, the VAX has to think it's done
with the
> tape. This is a pretty simple concept, if it worked. The TK50s were not
in
> production very long, and for good reason. Rumor has it their
replacements
> are better.[3]
>
> I'm going to describe the operation of a TK-50, ignoring some of
the
> things that go along with booting a VAX. If you know them, I'm sorry, if
> you don't, well, consider yourself extremely lucky.
>
> 1) Wait for green light.
> 2) Pull drive flap up.
> 3) Stick tape in, right side first or it won't fit.
> 4) Coerce tape into fitting into the drive.
> 5) Shove it all the way back
> 6) Push drive flap down. You may need a hammer.
> 7) Press Big Red Button. Green light will go off, red light will
> start flashing, then go solid.
> 8) Tape drive begins reading tape.
>
> Here's where we go off onto a tangent for a little bit, although
it
> is related. TK-50 (drive;cartridge;whole shebang) were designed by
complete
> absolute fscking lusers.
>
> The cartridges are nice and small. This is because they are just
a
> reel of tape. The other reel is inside the drive itself. When it starts
to
> read a tape, it snags the beginning of the tape using a leader that whips
> around the spindle of the inside reel, and drags the tape in past the
read
> and erase heads[4].
>
> 9) Drive reads tape, system boots, all is good. </SARCASM>
> 10) You press the big red button again, wait 45 minutes for the
thing
> to rewind, then it stops and the green light goes on, it moves
a
> servo that allows you to move the drive flap again, then you
are
> permitted to remove the tape. No eject mechanisim whatsoever.
>
> Now, on with the show.
>
> So here I am, booting the VAX.
>
> Things are going good, we get past the 5 minute POST, and the
drive
> starts *reading* the tape. So the media is good and I'm actually
thinking
> I have a chance yet. Then the gods decide that they've had enough fun at
my
> expense, and it's time to get serious.
>
> Loading system software.
>
> 2..
> ?4B CTRLERR, MUA0
> ?06 HLT INST
> PC = 00000E0A
> Failure.
> >>>
>
> My reaction: "Shit."
>
> VAX's reaction: "Yadda yadda yadda *WHOMP* *SCREEEECCCH* *thwap*"
> "THWAPthwapthwapthwapthwapthwapthwapthwapthwap"
> [continues]
>
> My reaction:
"MotherfuckingasslickingpieceofshitasspirateDECtapedrive."
>
> Actually, my reaction was much more lengthy and probably much
more
> obscene, but in the afterglow right now that's all I can remember.
>
> Knowing that the tape is hopelessly fucked and there went my last
> chance for a while, I don't even bother with the normal procedures. This
is
> a TK-50. One must adapt constantly or get sucked in.
>
> I quickly wrestle the vax for the tape, remove it, and all seems
good.
> But I know what's coming. A few hundred feet of half-inch tape, all
spooled
> into the drives internals.
>
> I spend the next half hour removing tape from the drive, clean it
up,
> check everything out, decide to try out this unlabeled TK50 I have.
Nope,
> won't boot. Okay VAX, rewind tape.
>
> [Pause for one hour]
>
> VAX, surely you must be done with it now.
>
> VAX: Nope, it's still in there. I swear.
>
> Me: BULLSHIT. I can hear you flapping around empty. You're
flapping
> around so much that the VAX is about ready to take off and my hair is
being
> blown back.
>
> Me: Hits the power switch, pops the thing open, pulls the drive
out.
> Grabs toolkit and commences disassembly of the drive. Sure enough, it's
done.
> But I can't get the VAX to let go of the tape until it realizes that it's
done,
> which isn't going to happen. Powercycling et al will not make it realize
that
> it's done, it has to feel like relinquishing it's dinner.
>
> So, I'm now dissassembling the TK-50. Sure enough, the magic
little
> leader that feeds these tapes in is broken. Surprise surprise. Tape
looks
> okay tho.
>
> It's a couple of hours later, and I have one reassembled TK50,
one
> sliced hand, a screwdriver with a broken tip, a spare black plastic part,
> three spare washers, a couple of spare screws and a spring. The tape is
> still in the drive, and I've managed to get all of the first tape into a
box
> for convenient disposal at my leisure. Like I have leisure. Anyhow, I'd
> like to make you an offer: Free TK-50 tape drive, including install
media in
> need of a manual rewind and a preloaded blank tape. Donatee must pay
shipping
> and psychiatric admission fee. Includes spare parts[5].
>
> WTB: One SCSI Qbus card.
>
> I am *not* going through this again. Especially because I took
> pictures of the aftermath of the first tape, and I'm going to post those
> near the VAX as a reminder. Let me know if anyone wants scans.
>
> Every single bad thing you've ever heard about any tape drive
doesn't
> even begin to describe what the TK-50 is like. Exabyte 8200s have
nothing on
> these things and never will. DEC was fucking up hardware design years
before
> the advent of the 8200. I personally believe that the TK-50 is probably
what
> nearly bankrupted DEC. The number of man-hours wasted in-house wrestling
with
> these things alone is in the millions. It would have to be.
>
> I saw an RU-81A today. Now *there* is a sight. Appropriately in
a
> junkyard. For those of you involved with BOFHnet, what do you think of a
> bofh.tdfh.tk50? This drive definitely has the FH aspect down.
>
> *sigh*
>
> Down,
> not
> across
>
> --Majdi
>
> [1] Currently hopelessly crippled due to a drive failure.
> [2] The problem is that DEC assumed that the VAX knew more about what
was
> going on in this drive than the person feeding it ferrite. Boy
did
> they guess wrong.
> [3] They *CANNOT* get any worse.
> [4] Which are opposed from each other.
> [5] You cannot disassemble one of these drives and not wind up with
> spare parts. They can't be anything important, because the drive
has
> to work to suffer some performance degredation and they don't
work, so
> there is nothing to degrade.
>
> --
> Majdi Abbas <mabbas(a)uiuc.edu> I do not speak for my
employer.
> "Damn, she looked a lot cuter in the bar..." -- Chris Rioux
> (He may be one of my coworkers, but he doesn't speak for them either)
>
>
>
>
>
Comments please!
Finding Vintage Computers - A Primer
by Sellam Ismail
sellam(a)vintage.org
http://www.vintage.org
1st Edition - May 15, 2000
This primer is intended to give you ideas that will help you
find vintage computers in and around your general vicinity.
It was written to aid the many frustrated collectors who
believe they have exhausted their local sources and still
cannot find any old computers. Well, I assure you this is
not the case. Old computers can be found in a lot of places
that you did not consider.
Keep these principles in mind when determining what to pay
for old computers:
* some people are just happy to have their old machine
go to a new home
* the bigger the machine, the less money it generally
sells for
* for some large machine, people are sometimes willing
to pay you to haul it away
Flea Markets/Ham Fests/Car Boot Sales
We begin with the most obvious place to find vintage
computers, the Flea Market/Ham Fest/Car Boot Sale (I will
refer to them as "flea markets"). Flea markets can occur
with frequent regularity or just occasionally, from several
times a week to perhaps once a year. Usually they are
comprised of people trying to get rid of their old junk.
At the more general flea market, finding old computers is
usually a challenge. Most of what you will find is the sort
of junk that you already have stored away in your garage,
basement, attic, closet, etc. But occasionally you will
find old computers, and the advantage here is that most
collectors won't bother with these sorts of flea markets, so
the competition is low.
You will be more likely to find vintage computers at Ham
Fests as most radio guys (and gals) are also computer users.
Many Hams were early adopters of microcomputers during the
mid- to late-70's and as such are likely targets for finding
some of the more interesting early micros such as S-100 bus
machines as well as mini-computers.
You can generally expect to pay prices in the range of $5 -
$50 for most vintage computers that show up at these events.
Occasionally stuff can be had for free, since the seller
just wants to get rid of it, or you can wait until after the
event is over and head over to the trash bins where you will
find all the stuff the sellers didn't want to take back home
with them.
Haggling at flea markets is mandatory. Never pay more for
an old computer than you have to. Learning how to haggle
properly would take a whole other primer. The way to get
good at it is to just go out and do it.
If you don't find any vintage computers at Ham Fests, don't
get discouraged. The fact is they just haven't found you.
It might be well worth your while to rent a space at the
next event and put up a table of your own. Display signs
indicating you are interested in old computers. A lot of
the people attending the ham fests as buyers also have old
computers that they'd like to get rid of and you will meet
many people this way. The price of a space is usually not
very high, perhaps from $10-$50.
To find Flea Markets/Ham Fests/Car Boot sales in your area,
look in the classified ads section of your local paper or in
the small classified periodicals, or check the upcoming
events listings for your local fairgrounds as a lot of times
those are venues for large flea markets. Better yet, hop on
over to http://www.openair.org/ which is an excellent online
resource for finding flea markets and ham fests in your area
worldwide.
Thrift/Charity Shops
Another good place to find vintage computers is at your
local Thrift (or Charity) store. Almost every city has at
least one. The bigger cities will have many. The most
common ones (in the United States anyway) are The Salvation
Army, Goodwill and St. Vincent de Paul. In my experience,
these are NOT good stores to find old computers. Usually
they take all incoming computers and sell them at special
sales. Or, if old computers do make it into the store, the
pieces to it are usually not all together, or in some cases
the parts to one computer may have been scattered across
multiple stores.
The better thrift stores to look in for old computers are
the stand-alone stores or the for-profit chains. They
usually won't sort through and separate the items and so
you're more likely to find old computers at these.
Prices vary from ridiculously cheap to just plain
ridiculous. Some stores have no concept of a computer being
obsolete. To them, a computer is an expensive, fancy device
that is worth lots of money, and they price them
accordingly. Others don't differentiate between an old
computer and an old toaster, and will sell computer items at
the same prices they sell the rest of their appliances, in
many cases for only a few dollars or less. Some stores try
to price computer items separately but can't tell the
difference between modern day PC components and old computer
parts, and as a result you'll see vintage machines selling
for the same price as the more modern machines.
Some thrift stores will slash the price of their items for
every week that it does not sell. If something is priced
too high you might wait until the following week and buy it
at half off! Ask the store what their policy is. While
you're at it, don't be afraid to make an offer on an item
you are interested in. Haggling at thrift stores is OK.
To find thrift stores, look in your local phone book, or
check the web. Many of the larger institutions now have
websites that will direct you to the nearest store. Search
for them online.
Electronics Surplus Shops
If you can find them, electronics surplus shops are great
places to find vintage computers. The prices are generally
high at these stores but haggling is sometimes acceptable.
It's always best to just ask.
Look in your local phone book to find electronics surplus
shops in your area. You also might want to try looking for
general electronics repair shops, as they may have old
computers laying about their shop as well.
Colleges/Universities/Schools
Schools are great places to find aging computers. Oft times
an old machine is tucked away in a closet or basement and
forgotten. Many schools have periodic rummage sales to sell
off obsolete equipment. Ask the school administration if
they have these sales and mark your calendar for the next
one.
You might also want to try contacting the teachers and
professors directly as they may have knowledge of old
computers that are no longer in use. The best ones to
approach would be in the physical sciences departments:
chemistry, physics, biology, etc. Of course, the Computer
Science department would also be a good choice.
Auctions
An auction is sometimes a good place to find vintage
computers, especially if it is an auction to liquidate the
assets of a company that used computers in its operations.
Look in the classified ads of your local paper to find out
about upcoming auctions and estate sales in your area.
Of course you can also try the online auctions. eBay is, of
course, the most popular of the auction sites for finding
vintage computers. However, competition is fierce, and as
such prices are generally higher than you would pay at other
venues. Bargains can be found by performing searches that
locate items not listed in the categories specifically for
old computers.
Scrap/Salvage Yards
If you're looking for "Old Iron", your most likely chance of
finding it are in scrap yards. The precious metal content
of big mainframes unfortunately sends many old computers to
a frightful end. Try to find scrap yards in your area and
ask the owner if they ever get old computers in. If they
do, try to strike up a deal with them. Tell them you will
pay them some amount over scrap value (for instance 10%) for
any old machines they haul in. This will make it worth
their while to work with you. Be forewarned: many scrap
yard owners can be mean & nasty, and legends abound of
various ones destroying perfectly good vintage equipment of
all sorts either because you offered too low a price or just
because you look funny. They are notoriously rude and
generally just unstable people. Of course these are just
generalizations, and your situation may vary.
Classified Ads
Of course you can always try searching the classified ads of
your local paper, as some vintage computers do occasionally
show up in the listings. Of course, don't neglect the
Usenet for-sale newsgroups. Better yet, check for items
listed for sale in the many newsgroups dedicated to specific
computer platforms.
Let Them Come to You
One way to find vintage computers is to let them find you.
Try placing an ad in the classifieds section of your local
paper. Be sure to specify exactly what you are looking for
to avoid getting a flood of false leads. In the very least,
include a cut-off year indicating you are not interested in
any computers manufactured after that year.
Better yet, try posting an ad in one of the many Usenet
newsgroups dedicated to older platforms. Or you can try
posting an ad in one of your local for-sale newsgroups.
The Traveling Nerd
If you take frequent business trips to other areas, try
scheduling time during your trip to search out old
computers. The areas you visit may be fertile, untapped
grounds for finding vintage machines. Upon arrival, check
the phone book for any of the various sources listed above.
You may also want to try to time your trips to coincide with
any large flea markets or ham fests in the area and arrange
to stay during the weekend so you can attend the event.
Once you've acquired vintage computers whilst away from
home, you'll soon realize you have to get them home somehow.
This is not a problem. Most airlines allow two check-in
bags (up to 65 pounds each) and two carry-on bags per
passenger. Find a sturdy box and some packaging material
and pack your findings, then check them in at the airport as
your baggage. You can find boxes and packaging materials at
a local mailing center, or at moving vehicle rental
locations such as U-Haul. Pack your box well! Luggage is
designed to absorb the abuse that the luggage handlers
inflict upon it. Boxes are generally not. Use as much
packing material as possible and pack it tight.
If taking items back with you on the plane is not feasible,
you can always just have the stuff shipped back to you at
home by using your preferred shipping carrier (i.e. UPS,
Fedex, etc.)
Where Else?
Finally, some other resources to try in your quest for
vintage computers include:
- Hi-tech companies in your local area, especially ones that
have been around for a while and may have accumulated old
machines
- Local utilities (power, water, telephone) sometimes have
surplus sales, and also have rather large dumpsters (skips)
that are worth checking occasionally
- Other collectors who are retiring from the hobby
- Family, friends and neighbors and their family, friends
and neighbors...tell everyone you know you collect old
computers!
Finally, if you live in an area where all of the above
resources are either lacking or have consistently turned up
nary a floppy drive, it might be worth your while to plan a
weekend road trip to a major city nearby. Try to do
research in advance to find out where all the thrift stores,
flea markets and surplus shops are, and plot out an
efficient route. Bring along a sizable vehicle, lots of
money, and preferably a companion to keep you occupied
during the boring long stretches.
Above all, remember this: collecting vintage computers is an
exercise in resourcefulness!
Happy Collecting!
Copyright (c) 2000 Vintage Computer Festival
Sellam International Man of Intrigue and Danger
-------------------------------------------------------------------------------
Looking for a six in a pile of nines...
Coming soon: VCF 4.0!
VCF East: Planning in Progress
See http://www.vintage.org for details!
>$69KUSD. It's lives in Tasmania, and did pylon racing there. Supposed
>to be cheaper to own and operate than a piston engined warbird. Makes
>sense, especially with the high octane stuff getting hard to find and
>very expensive. Jet fuel is cheap in comparison.
The cost of fuel is a red herring. the lower cost of jets is in initial
cost
and cheaper parts. the cost for fuel is out of sight as most of them were
older less efficient engines that could easily eat 4-800pph at ground idle
(600pph =100usgallons/hr) and inflight numbers can dwarf this.
Piston planes are like older computers, rarer and need more technical
savy to use an maintain. Parts are not cheap, hard to find and people
that know them well scarce. the upside is 75gph(imperial) of hard to
find Green gas (130 octane) for a P51. Right now local prices for
100LL gas is $2.25!
Allison
Can anayone id this DEC card? It's not listed in the DEC field guide.
It's a large card with metal extractors and a metal rib in the outside
edge. The number "L 0400" is stamped in the outside rib. It measures
roughly 16 x 12 1/2". It has eight AM2901 bit slice processors and twelve
AM 9122 high speed static RAMS on it. There are three large card edge
connectors on it. I posted a picture at
"www.intellistar.net/~rigdonj/misc/l0400.jpg".
Joe
>Unfortunately, though Bill Gates is not in the same camp with him, the
>billionaire CEO seems to think the public would benefit by paying for the
>hardware and the software more or less forever. I'm not in agreement with
Well remember the "users" in his world view rips him off.
>Just in case, however, you'd best not dispose of that old reliable hardware
>and software . . . it doesn't take up much space . . .
You bet.
An aside, I've worked with "thin" clients and they need to be resource rich
as network bandwidth is a fuel that makes them run instead of a local disk.
So swapping over the net is not workable. After all you need gigabit
eithernet to come close to DMA66 IDE disk performance!
Sounds like the old days, central computers and smart terminals.
Allison