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 ?
GFXLIB by Rafael de Oliveira Jannone
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.
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.
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.
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.
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
I gave a similar hint here:
http://www.z88dk.org/forum/viewtopic.php?id=5035