[PD-dev] porting zexy to linux-powerpc

Hans-Christoph Steiner hans at eds.org
Thu Oct 31 06:04:01 CET 2002


I am trying to get zexy running on linux-powerpc since I was just given 8
PowerMac G4-500s and 5 PowerMac 8600 604e 250 to do sound
installations.  Anyway, everything in zexy compiles, except for the
parallel port module, z_lp.c.  

At first it balked on compile, because linux-powerpc doesn't use sys/io.h,
but rather asm/io.h.  So adding this #ifdef made it compile with a few
warnings:

#ifdef __powerpc__
#include <asm/io.h>
#else
#include <sys/io.h>
#endif

Here are the warnings:
z_lp.c: In function `lp_float':
z_lp.c:44: warning: implicit declaration of function `outb'
z_lp.c: In function `lp_new':
z_lp.c:86: warning: implicit declaration of function `ioperm'
z_lp.c:93: warning: implicit declaration of function `iopl'

But now it doesn't load, giving this error:
/usr/local/lib/pd/externs/zexy.pd_linux: /usr/local/lib/pd/externs/zexy.pd_linux: undefined
symbol: outb
/usr/local/lib/pd/externs/zexy: can't load library

So looking at how outb is defined should lead to the answer, but that's
about the limits of my knowledge:

sys/io.h:
static __inline void
outb (unsigned char value, unsigned short int port)
{
  __asm__ __volatile__ ("outb %b0,%w1": :"a" (value), "Nd" (port));
}

asm/io.h:
#define outb(val, port)         out_8((u8 *)((port)+_IO_BASE), (val))


Any pointers, advice, whatever would be appreciated.  I don't need the lp
object to work, I just need zexy to work, so I can use the rest of those
tasty objects.

-Hans

	zen
	   \
	    \
	     \





More information about the Pd-dev mailing list