GFXLIB by Rafael de Oliveira Jannone

Post Reply
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

GFXLIB by Rafael de Oliveira Jannone

Post by stefano »

As someone could have noticed, I'm integrating the Rafael's GFX library into z88dk.
The old library was just too poor to make this port really interesting for the people from the MSX world, now we have a base to work on.

Rafael should be happy to know that now some of his demos can be loaded and run also from a cassette tape ! The resulting code size seems to be smaller, but I'm not so sure of it.

I still need to find an elengant way to integrate the very powerful Rafael's 3D library, but first I think it is worth to adapt the old GFX library and make a variant of it able to draw in a frame buffer; since it is native assembly language it should give some benefit to Rafael's work, and it should cost very little: just a new "pixeladdress" function..

Another interesting point is the portability: now we have a good number of targets with common behaviours: a sound chip (normally three voices + a noise generator), color capabilities, need/opportunity for a framebuffer, etc..
Having vertical API's for each platform is, in my opinion a waste of energy.

Ideas ?
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Post by stefano »

I just put online the latest version of the GFXLIB port.

The current 3D now integrates both the original functionalities and the new ones (which compared to the original Rafael's work are still a bit buggy but runnable). I optimized the isin and icos functions, now based on a smaller pre-built table.

The rendering engine is much faster and smaller too, because it is now totally written in assembly. Rafael based it on a very smart concept I chose to make easily available in the generic graphics lib. So we'll have a new object named "stencil", useful to handle complex convex surfaces.

The related examples are adapted to the z88dk version of the library, but most of the original stuff is still portable.
kabish
New member
Posts: 2
Joined: Thu Jul 05, 2012 1:32 pm

Post by kabish »

Hello, this is my first post. Sorry to revive an old post but I wasn't able to compile all GFXLIB examples for MSX platform with z88dk v1.9

I install Z88dk on Windows under c:\z88dk directory following the installation steps. I aslo install make for Win. I edit the makefile and replace "cp" for "copy" and try to compile all examples using -f flag, just as the docs said.

First six examples compile ok -tested on bluemsx, runs ok- but when compiling "ex7.c" recive an error : "Error in expresion _MSX_GET_VDP" refering on module msx_clib.lib. Showlib3d.c aslo compiles perfectly.

Flags used :"zcc +msx -llib3d -lmalloc -lm -startup=2 ex7.c"

Any clues ??.

.. and sorry for reviving an old post.
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Post by stefano »

It is fixed already, but you need to move to the current z88dk developement build.
I gave a similar hint here:
http://www.z88dk.org/forum/viewtopic.php?id=5035
kabish
New member
Posts: 2
Joined: Thu Jul 05, 2012 1:32 pm

Post by kabish »

OK. Check it, runs perfectly. But I have to do a little trick.

My computer has 64 bits architecture and z80asm.exe refuses to work, so i overwrite it from lastest (ver 1.9) binaries.

Thanks for your support and reply.
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Post by stefano »

Good to know, z80asm is uner a major rewrite so what you are saying is perfectly possible.
I'm signalling this to the devel thread, thank you !
Post Reply