POV-Ray : Newsgroups : povray.programming : POV-Ray modification question : Re: POV-Ray modification question Server Time
29 Jul 2024 04:20:55 EDT (-0400)
  Re: POV-Ray modification question  
From: Ron Parker
Date: 7 Apr 1999 18:01:43
Message: <370bc7b7.0@news.povray.org>
On Wed, 07 Apr 1999 16:23:35 -0400, Nathan Kopp <Nat### [at] Koppcom> wrote:
>Somebody should design the following:  the "POV Plugin Dynamic Library",
>or PPDL for short.  The development kit would consist of a modified GCC
>which compiles POV shaders (or other plugins) to a PPDL format.  This
>PPDL could include binary code for a variety of systems in the same
>file.

Not much modification to GCC required, just a bunch of cross-compilers
and something that can read .o files and make ppdl files (a linker of 
sorts).

Who decides which systems will be supported?  Will we have binaries 
for M68K? (assuming for the moment that no system calls will be made,
so a Linux M68K binary is just like a Mac one is just like an
Amiga one.  Of course, that ignores the problem of calling conventions
and reserved registers.) How about Alpha?  Sparc?  MIPS?  What about 
all those other weird architectures Linux and GCC (and presumably 
POV-Ray) run on?  Who's going to test this thing?

Okay, so if I'm running a port of POV on my custom foo42 processor, I
probably have GCC ported to it and can compile my own binary chunk for
any plugins that come my way, but what if I give my foo42 build to my
buddy next door who has the same processor but zero technical expertise?
Where does he get a binary chunk for the nifty new plugin he just got?

>The PPDL interface (meaning how POV talks to the plugin) would be
>the same for all systems, keeping the core of POV system independent and
>the part of this system embedded in POV would be developed independently
>of GPL stuff and would therefore not be part of GPL.  

Okay, so I have this binary file with lots of different formats in it.
I've just allocated a block of memory and read the appropriate code 
into it, relocated addresses where necessary, and i'm ready to run it.
Now where did I put that library routine that lets me mark a data page 
(or pages) as executable?  I mean, I know how to do it under WinNT, but 
that's a Win32 API call.  I'm looking for something cross-platform.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.