Spacewar! Lives Again
hws writes "A DEC PDP1 emulator running the original version of Spacewar! is online here.
A group at MIT created a PDP1 emulator in Java. The original Spacewar! sources were assembled with a PDP1 Assembler written in Pearl.
The emulator, assembler and game sources are available at this site.
For those of you too young to remember, Spacewar! is probably the first video game and was done back in 1962. It and the scene that spawned it were extensively covered in Steven Levy's book - Hackers."
Hackers is a GREAT book .... a close second is "Soul of a New Machine".
--> Fight tyranny and repression.... read
No Wonder the PDP never took off as a gaming machine.
When I had an Atari VCS many years ago, I had a copy of the Spacewar cartridge (which at the time was only available in Europe, as it was PAL only). There were around 10 different versions of the game, with features such as elastic or warping galaxy boundaries, and the central body was either a sun or a space station. Hitter the former caused a loss of life, and the latter replenished fuel and weapons.
This version was more playable than this, but then again so is anything not written in Java. The only issue here is that the graphics are more accurate.
Is it me, or is Java the most overhyped, unstable, resource hungy idea to enter this industry in 10 years. Not everyone has an up-to-date processor.
...or is this game like filled with bugs? Like the inablity to actually thrust away from the black hole/singularity in the middle? Or the fact that when the squidgy ricket dies it gets put in all four corners at once.
Strange.
Treason doth never prosper. What's the reason? For if it prosper, none dare call it treason.
Now hold on a sec, what happened to Pong? Truly a classic...
Interested in open source engine management for your Subaru?
I wasn't around then so perhaps somebody could help with the background of avaliable computing power in 1962.
I would think that 1962 is very early to have display capabilities beyond text. When was the first computer where you actually could control pixels like that?
Dude, Robin- you *have* to start proofing your posts; you have cool stuff sometimes, just please look them over- that is of course unless there really is a new programming language spelled "Pearl"
NP
The version I had for my XT was many, many
/.-er can fill in the rest).
times better as well. The ships could (optionally)
have teleport and shield capabilities and had
two different modes of fire and there was AI,
so it was possible to have a 1-player game.
Much more fun than hitting the thrust a bit so
the 2nd player goes crashing into the planet
first.
This was just... disappointing.
And yes, java IS the most overhyped, unstable
resource hungry idea to enter the industry in
the last 10 years. Even when you DO have an
up to date processor (the java spacewar runs like
crap on the 700MHz dual PIII I'm sitting in
front of now, which is running that other
overhyped unstable, resource hungry idea that,
well, any
-- I wanna decide who lives and who dies - Crow T. Robot, MST3K
The long-neglected (but recently renewed!) MESS emulator, little sister to MAME, also emulates a PDP-1 and Spacewar.
Executables and source are available for Mac, DOS, Windows and some Unix flavors, I believe.
Check it out: http://mess.emuverse.com
-A.
---
What did the walrus say to the penguin? "No soap, radio."
now THAT'S funny.
...but Spacewar is the next big thing. It will become the Game Of Choice for a new generation in a new Millennium...
'There is nothing more frightening than ignorance in action.'
Goethe
Once, in the wilds of Afghanistan, we lost our corkscrew and had to live on food and water for a number of weeks.
I remember playing a version of this for DOS
quite some time ago... it had a lot more
commands, including I think 3 weapons, the
ability to warp, and both ships looked very
different from each other.. one looked sort of
like
/--\
| /
|O-
| \
\--/
For every problem, there is at least one solution that is simple, neat, and wrong.
Well, obviously someone left their complaint generator settings to "Political Action Committee" instead of changing it to "Dangerous video game that will turn our children into killers".
Glückwünsche, haben Sie Slashdot ermordet, indem Sie zum korporativen Druck beugten und Subskriptionen einlei
Good work with the automatic insult generator there.
There's no reason for a sig here.
Use that gravitational pull like a slingshot when you first play, because its impossible to thrust away... Kinda like what astronauts really have to do...
-- There's only one replacement for displacement.....
Does it really have the ! in it??? That really reminds me of terrible games like Skydive! and eXtreme Paintball lol... sorry for the offtopicness
Restating the obvious since nineteen aught five.
No, silly, it's a Pearl script, not PERL! ;)
---
"'Is not a quine' is not a quine" is a quine.
"'Is not a quine' is not a quine" is a quine.
Quine "quine?
Finally SpaceWar gains the respect it deserves. I found this version a while back, and I was pleased to see it. I've always been interested in SpaceWar and its roots ever since I read Hackers. I even wrote a clone for the TI-85 :).
If you like SpaceWar, then you'll probably love xpilot. Not only is it a multi-player network game, but it comes with most Linux distros. I'm almost always up for a game. :)
You can run the game using
p acewar/
appletviewer http://lcs.www.media.mit.edu/groups/el/projects/s
-- Tov Are Jacobsen
The other week I saw on TV a experement to see if it was possible (with the aviable technology of the day) for the stones for stonehedeg to be moved from the quary site to there destination. (and two separate groups, doing it differently did it)
Of course we wouldnt move big rocks the same way now, and the purpose of this was not to make a new and cool spacewar - it was to do it exactly as it had been done back then. And the did, and its cool.
As for java, the language is cool. The VM stuff is equaly cool, though less refined. It will, in time, prove to be one of the most significant computer things of all time.
Yes, they could have, but then they would have to go through the effort of porting it to every other system they wanted it to run on whereas now it works just fine on anything with a bytecode interpreter.
I'll admit, its slow on my machine, but then again, so is anything written in Scheme. You can't have everything.
Well, I'm currently in the midst of reading Levy's book Hackers, and from what I recall, Pong was really the first game. Of course it was a very primitive pong. I can't remember whether it ran on the PDP-1 or Tixo, but if effectively consisted
of causing the lights of the computer to light up sequentially based on the position of the ball. Using switches, you could send the ball back on its journey. SpaceWars was definitely the first worthwhile computer game.
It'd be really neat if we could find the original :)
author and see if we could get the source.. we
could port it to X and make it support network
play
For every problem, there is at least one solution that is simple, neat, and wrong.
Seems to consistantly hang Netscape 4.61 (Linux 2.2.10, SuSE 6.2) on hitting the 'run' button.
When the going gets weird, the weird turn pro. [H.S.T.]
The basics of Spacewar was featured in Scientific American's GREAT* column "Computer Recreations" years ago.
While in high school in Germany, I wrote my own version of it that I called "Grav" - using Turbo Pascal 3.0 on old 4.77 MHz Dos PCs, using CGA graphics and "incredible" (eek) sound effects.
It was quite a hit with school mates and we spent a lot of school breaks competing with each other on it. I also distributed it as freeware, including its (horrible) pascal source code. In those days, you had to order free- and shareware disks through mail order, if anyone cares to remember that...
Anyway, only later when I had my game finished I found "Spacewar", which (I think) was written in C and had a much better keyboard control code.
Nevertheless, I liked my own version and still think that Grav did not have to hide from Dos' Spacewar in any way.
(* I think that this series of wonderful articles actually made me consider studying computer science in the first place.)
------------------
------------------
You may like my a cappella music
Well, Lycos lists only one Bill Seiler in California, in Newport Beach. I called him, and he's not it :)
There are quite a few William Seilers, though, and some bills in other states.
I'm now looking for a homepage...
Am I the only one who is getting sick and tired of the constant Java bashing that goes on here? "A pain to write in"? Good fucking grief! Compared to what I had to write in before (C, C++) it's a godsend! God damn if I ever go back to dealing with a language that easily lets you corrupt the heap, horrible (and easy to create) memory leaks, crappy window toolkits (MFC? X/Motif? YUCK!).
Just get over it already! If you don't like it, don't use it, but your incessant bitching about it just clutters up otherwise interesting discussions. If anyone says either the word "Sun" or "Java" in a sentence, it turns into a bitch session. Slashdot is looking less and less like a good forum to have good technical discussions. More and more like an asylum of whiney losers.
It was quite an interesting exhibition, if you made allowances for the drool factor. An Apple I (with a label stating it had an Intel processor...), a piece of Charles Babbage's Difference Engine, and a few other interesting bits and pieces. It was just so depressing that nobody was looking at the difference engine, and there were hundreds of people crowded around a ho-hum industrial robot that had be programmed to "dance" in time to some crappy 70's disco music.
Any sufficiently advanced technology is indistinguishable from a rigged demo
--Andy Finkel (J. Klass?)
"Pearl?" hmmmm... Is that *P*ractical *E*xtraction *A*nd *R*eporting *L*anguage? hhehe. nevermind.
"Is this just useless, or is it expensive as well?"
The "sun" in the center has gravity, so you'll be unable to escape it if you've used up all your fuel. And the sides overlap (think globe), so the rocket's only in one place when it reappears. Each corner of the screen is showing one quarter of the needle ship.
Talking of old systems and games, I remember playing VTtrek (I'm sure that's what it was called) oooh, 12 years ago, or there abouts on what was at the time a huge TOPS 10 or TOPS 20 system. That was the first multi-user game I ever came across.
I wonder if anyone ever ported that or did a TOPS emulator.
Macka
I played with this a couple of years ago. There was (probably still is) a PDP-11 emulator you could download from ftp.dec.com. With the provided disk images, you could run V7 UNIX. I played with it for a while; I was able to log in, wrote a little C program using ed, and then compile and run it. Here, I think I found the link! (ftp://ftp.digital.com/pub/DEC/sim/).
The java version is a little different than the version I remember playing.
Anyhow here is a link to an even different version.
I didn't find Bill Seiler, but I did find someone :(
else talking about certain aspects of the
source, and it seems to be x86 assembly
So maybe a complete rewrite is in order...
For every problem, there is at least one solution that is simple, neat, and wrong.
Slashdot is looking less and less
like a good forum to have good technical discussions. More and more like an asylum of whiney losers.
Is there a word yet for this phenomenon, this
odd little "obligatory" slashdot-bashing that has become commonplace whenever anyone even slightly disagrees with a post?
Seriously, how many of you are expecting me to finish my saying "Slashdot used to have great, respectful, logical discussion but has no degnerated to..."
What the hell? We need a word for this.
Marc
Pearl is a programming language that existed long before perl did. This was spelled correctly. Go read why Larry Wall named his language perl. He says that he didn't want it confused with the previous language called pearl. Perl didn't exist in the time of the PDP machines.
Actually, it's not spelled correctly.
Yes, there is a Pearl, but the 'Spacewar' site
says the assembler was written in PERL, not Pearl.
(This is in the 'readme' file)
I will say this: one, this is a Java emulator of the PDP-1 and not just a game written in Java. It's like a Java version of MAME only for Spacewar. ;) :)
I'll also say this: I'm trying it in netscape 4.08, and I know that the Netscape jvm bites. Makes me sorry I stopped using iCab
That said: ack! I'm running a 300Mhz G3 processor here. I can run Unreal Tournament without it being too much of a slideshow. To have _spacewar_ being unplayably slow and totally unresponsive is just disgusting. Blech! And yet I am delighted to have seen it- I read 'Hackers' too but I'd never seen the actual game. It was worth the hassle to actually see those little shapes and know that this was the game that started it all
I downloaded the class file in hopes of running it on a better JVM sometime. I freaked out when it was only 4,615 bytes, sure that I'd got the wrong file. Then did a doubletake... _wait_ a minute... *grin* *hehehehe* funny what this industry does to your sense of proportion, isn't it?
Wordcodes are technically just an extension of bytecodes; instead of being 8 bits long, they're longer. A common length is 16 bits.
They're faster and smaller because there are so many more possible ones -- the VM can have many more primitives which are more tailored to the job at hand. They're more secure for the same reason; it's possible to design an instruction set which does not have as many illegal combinations of primitives.
You still need a security manager, of course, but the verifier can be much smaller and quicker.
Secure in what sense?
Secure in the sense that a verifier has to watch for much fewer conditions, and is thus simpler to build. Once you've built the verifier, of course, both systems have the same security.
An example of a wordcoded system is threaded Forth. I don't know whether anyone has made a portable executable format out of wordcodes.
-Billy
I love xpilot, but I can only really play against the robots, because whenever I try the servers in the metaserver, they're too slow and/or have nobody else there. Are all these things really in Europe, like the names seem to say? Or is it just that I'm an idiot for trying to play it on a 56K dialup?
--
Seeing is believing; You wouldn't have seen it if you didn't believe it.
Netscape 4.07 Kernel 2.0.36 RH5.2
--
Seeing is believing; You wouldn't have seen it if you didn't believe it.
Who knows, several hundred years from now, the history books may portray Commander Robert Malda as an industry inspiration, great innovator, and even political leader. History is sometimes confused to fit political agendas.
-------
CAIMLAS
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
You're right! And I'm an idiot for relying on my memory to recall what platforms MESS supports. My other mistake was to say there's a WIN32 version. There's none (yet).
:-)
Not that it matters.
-A.
---
What did the walrus say to the penguin? "No soap, radio."
The Linux community is held hostage by Netscape and their implementation (until Mozilla and OJI
frees them) It's not very scientific to have a single datapoint, Netscape's Java implementation, and therefore conclude, Java sucks.
Netscape 4 sucks speedwise, and stability wise. It has resource leaks, segfaults, and its Java VM doesn't even have a JIT. Java on Windows, Solaris, HP-UX, OS/2, and AIX runs very nicely. Only Swing is still a little slow, and even that is wholly dependendant on how you use it. (evidence: jEdit vs JEditorPane)
Try running the applet under IBM JDK1.1.8 appletviewer on Linux, it's about 30-50 times faster than the VM in Netscape and much more resource efficient.
Now try writing a PDP-1 emulator in pure PERL and let's see how fast it runs.
I've been coding Perl since 1991 and Java since 1993, and have mucho experiencing optimizing both Perl and Java code. All the anti-Java bashing that goes on here is pure FUD. You have clueless idiots bashing bytecode interpretation, and then cheerfully boost Perl, Python, PHP, TCL, etc,
claiming that parse tree evaluation will be faster than optimized bytecode/JIT, and bashing Java's thread model (when in fact, the fault lies in Linux's poor threading model compared to Solaris, OS/2, BeOS, or NT)
There are plenty of benchmarks out there now showing Java JIT's being within a fact of 50-80% of C on execution speed. Volano Report shows that some VMs/OSes can scale to thousands of simultanaeous threads (4000+). I personally ported a mini-raytracer to Java from C and only lost about 20% execution speed.
No doubt, Java GUI components still need more optimization. But on the other hand, the lack of a Microsoft Office competitor written in Java is not evidence. The desktop app markup is pretty locked up right now, most companies are developing Web/HTML versions of tradition apps like email/address book/form processing/hr/billing/info mgmt/etc, so the fact of the matter is, the number of "desktop apps" being written in C/C++ is also on the way down.
(why waste time doing C++ Forms Database, when you can develop much quicker by using HTML and a scripting language?)
Why wasn't Slashdot written in C++? Hmm..
Point is, Slashdot is written in a purely
interpreted language. Raw execution speed isn't the only thing that makes a language useful.
The Java bashers need to get over it.
I spent lots of time and money in front of an
arcade version of this game back in 78-79!
Never saw another one since then.
Town Draw
Lubbock TX
Me Larry and Jo spent some quality time there.
Best sun rises in town!
those where the days
I -love- old-time classics, and would love it if someone could point me to sites that have the sources (or ports or clones) for any. I'm mostly interested in PET games, but Apple I & Apple II games are of interest, too, and I wouldn't say no to any pointers to games for yet older machines.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
Regarding older games, when did Rogue enter the picture? That was one of my first computer games ever .. on my good ol' Tandy PC1000.