Hi Rink,

> 1> where should I define gint8, guint8 etc. in? I've made it a separate
> include file now (include/sci_dos.h)

First, check whether libglib is available for dos (I honestly don't know).
Maybe it is, maybe it's trivial to port it there.
If it isn't available, sci_dos.h sounds about right.

> 2> FreeSCI is *very* GGI oriented now.

This is absolutely not true.

> Anyone has problems if I split this
> all up?

Yes, I have. Dmitry's graphics interface abstracts the whole graphics
system nicely; even though we'll have to redesign it in parts for 0.3.x
(to allow for accellerated drawing- things will become more complex, but
(hopefully) faster), there is no reason at all for not using it.

If HAVE_LIBGGI isn't defined, GGI doesn't go in. Likewise for GLX
(HAVE_GLX) and DirectDraw (HAVE_DDRAW). UN*X doesn't see any DDraw code,
and Win32 doesn't deal with GGI (even though there is a libggi DirectX
target- at least in the development snapshots...)

> There isn't a DOS port of GGI, you see.

The Win32 port doesn't use GGI either.

> 3> Should I use config.h?

Depends on whether you'll be using autoconf/automake. If you're not going
to do so, it's probably sufficient to put all those defines into
sci_dos.h.

> 4> Anyone has problems if I use a _DOS define to indicate a DOS platform? I
> use DJGPP to compile it.

Sounds good. Please provide HAVE_(graphics target) defines for all
graphics targets, too- it's not really neccessary, but it's consistant.

Back to the graphics stuff: Check out include/graphics.h. This file
defines a structure gfx_driver_t; simply provide a gfx_driver_t
gfx_driver_allegro or gfx_driver_vga_raw, make sure that it's listed in
graphics/graphics.c's gfx_drivers[], and everything should be fine.
This system allows you to provide several independant graphics targets and
select them at run-time. (In theory. Right now, you can only select them
at startup time with the -g parameter, but I suppose that that's
sufficient).


llap,
 Christoph

Reply via email to