Thursday, June 14, 2012

JooFood 1.0 Release

Finally after a long time I have released my first game written in Component C called JooFood.

You can find the game here:

You can find the source files here:

You can email me for support at:


Zakai Hamilton

Thursday, December 15, 2011

Adding more file formats

As you can see in my 'screensos' source forge project, I have been very active over the last few months.

I have lately added support for png files in FilePng and xml files in FileXml.
I am adding a lot of formats to make use of them in various sub projects.

I have also done a lot of refactoring and tweaking of existing components.
I know that Screens is lacking a lot of documentation. Because I am still in the development stage, I am focusing on the development since the documentation can be added later. It does keep this project under the radar (which I can see just from the page views) but I am fine with that since its not in a usable form anyway at the moment.

Wednesday, September 28, 2011

Drawing text works

Drawing text now works very nicely.

I have a utility fontray_mk to take any MacOS font and convert it into a C file containing the font data. Then I can easily use any font by just compiling it and passing its buffer into DataFontrayDraw function.

I have uploaded the changes regularly to source forge (ScreensOS).

Sunday, September 18, 2011

Font handling

Just uploaded last night the UtilFontray component that allows me to easily capture any MacOS font and store it as an embedded bitmap font format. I am now working on the code to draw the bitmap font format and then I will be complete for an initial drawing scenario of fills, frames, bitmaps and text.

Friday, August 19, 2011

Casting power

One of the great advantages in dynamic casting is that you can move between capabilities of any object with any one of its handles.

UIWindow * pWindow = UIWindowNew();
UIElement * pElement = UIElementCast(pWindow);
pWindow = UIWindowCast(pElement);

You can see how I can move from the element to the window to the element easily and safe.
This simplifies code a lot since I don't have to pass objects down the pipe.
Its a lot like a C++ dynamic_cast call but in ANSI C!

It makes the components that I have to write small and simple.

Tuesday, August 16, 2011

Power without a manual

I am waiting for september before I buy an iPad to allow my brother to draw graphics for the game.
In the meanwhile I am fixing code bugs, rewriting components and adding new components into the mix.

It is taking me a while to get used to the power of association relationships. Everyone is more or less used to inheritance and containment relationships. Association relationships is not used very much at all even in high level languages. So its not like I can use the web to find out what oppertunities are available for me. I have to find them out one at a time.