[gopher] Re: gopherVR
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Wow, I didn't expect someone to actually crop up with the gopherVR source!?Mark
really did it in a way that would make it easy to port to new platforms.
I looked at it, and it actually is a lot better then what I was expecting (I
was more expecting something hardcoded to the Classic API, which would require
a massive effort to port to a new architecture). It's essentially three
seperate projects broken down.
libvogl is a Irix SG compatiable graphics library. I was under the impression
it was doing something weird like talking to the hardware directly, but its
actually fairly cleanly written, with backends targetting MS DOS, Win 3.11
(referenced, but I don't see the actual code), Classic Mac OS, and X11R4. As
X11 has historically had a pretty stable API (xeyes's code hasn't been changed
in decades to my knowledge), it should only take minor tweaks to get this to
build on a modern X-based operating system. The code looks like it does some
pretty weird things with Xlib, so it might need more work then appears. I also
dunno how easy it will be to port this to Win32 or Mac OS X's native graphic
APIs (it will of course work against an X11 server on those architectures).
libtracker is an audio driver; it's essentially a thin layer over the
built?over the?OS's. It supports HP-UX, Solaris, AIX, and Amiga, as well as raw
code talking to a SoundBlaster-compatiable card. This will have to be ported to
Linux (there sadly is no real standard audio APIs, most platforms use Open
Sound System, while linux uses "Advanced" Linux Sound Audio); I might cheat and
just drop SDL under it, and save me porting it three times.
The actual GopherVR code however, while not messy, isn't that neat; it's not
well commented, and the function names aren't always clear on what they do. I
only see UI calls for X11 in gophwin.c; I suspect there are probably more UI
drawing calls somewhere in here, but I haven't finished thumbing through the
source.
The really ugly part is the build system; it uses imake. Anyone who knows what
that is is currently groaning ;-). As imake isn't even supported or included
with X11 anymore, the first step is going to probably be to modernize the build
system.
I'd be glad to work on this, but ATM, I do not have a working computer with
Linux, and probably won't for a few more weeks. If someone on a *BSD system or
Linux with X11 installed is willing to give me a shell account, and enable X11
forwarding, I can start working on this ASAP.
Michael
-----Original Message-----
From: Maurice McCarthy <maurice.mccarthy@xxxxxxxxxxxx>
To: gopher@xxxxxxxxxxxx
Sent: Tue, 24 Jun 2008 9:49 pm
Subject: [gopher] gopherVR
Hi all and Michael Casadevall especially,
With a little effort managed to contact Mark McCahill, one of the originators
of
gopher and
the principal writer of gopherVR. He has posted "what looks like the source
code" on line for us as said below.
Regards
Maurice
On Jun 24, 2008, at 8:55 AM, McCarthy, Maurice [Contractor] wrote:
> Hi,
>
> Pardon the intrusion but we were hoping you might be able to help.
>
> A small collection of people still advocate gopher. They are on John
> Goerzen's mailing list gopher@xxxxxxxxxxxx
http://www.complete.org/mailinglists/archives/
>
wow! I had no idea...
> A chap called Michael Casadevall on the list is interested in
> gopherVR.
>
I do have what appears to be source for GopherVR, and compiled
versions which would probably run on a Mac if you could find an old
enough machine - this stuff is from back in the 68020 transition to
PPC 601 CPU era. I just put the source tar file in this directory:
http://croquet-src-01.oit.duke.edu/gophervr/
Have fun!
It would be amusing to see a port to linux, although there are some
things I would do totally differently today.
First, there was no generally available OpenGL for the Mac and Solaris
machines we were running GopherVR on, so we took the VOGL library and
used that. Since there was no hardware support for depth culling (and
no prospect of a hardware z buffer) I got to glue in a binary space
partition (BSP) hidden surface removal algorithm. If I were doing this
today, I'd assume OpenGL and a GPU.
If I were doing this today, I'd probably take OpenCroquet and use that
as the basis to write the Gopher client stuff. Since Croquet comes
with an open source VM that runs on Mac, Linux, and Windows, supports
OpenGL and all sorts of other nice things you'd get a cross platform
GopherVR. You'd also get to program in Smalltalk, which I would
consider a huge plus, but Croquet is my "fun" project these days, so I
am a bit biased. current state of the are in the open source croquet
world is here: http://croquet-src-01.oit.duke.edu/cobalt.html
Anyway - let me know how things work out.
> On 22 June 2008 Michael wrote on the list:
>
> "To my knowledge, the code for GopherVR was lost a long time
> ago. If
> someone has it, I'd gladly port and package it for Ubuntu/
> Debian."
> Michael Casadevall <sonicmctails AT aol.com>
>
> Thanks in advance
> Maurice McCarthy
>
>
> PS
> Firefox 3 abandons gopher support but Cameron Kaiser has just
> published
>
> https://addons.mozilla.org/en-US/firefox/addon/7685
>
> which is a new gopher client for Firefox 3 in the "experimental"
> add-ons.
>
> It is written in JavaScript and there are MacIntosh Camino, Windows
> Firefox, Adobe Air and Linux versions at
> Cameron's site gopher://gopher.floodgap.com or http://www.floodgap.com
>
-----------------------------------------
Email sent from www.virginmedia.com/email
Virus-checked using McAfee(R) Software and scanned for spam
|
|