Hi, I've updated the drivers. It's available here: http://atari.isgreat.org/atari-tgi-2009-10-26.zip > The new Atari drivers will use a black/white palette. (this one was easy:-) DONE: I've also changed all default palettes to match c64 colors. I know it isn't very useful but I had to come up with some colors anyway and they seemed like reasonable values to me. (Atari's Mode 10 default palette is especially stupid with lots of blacks, it's much more usable now). > Drivers must not clip lines, this will be done by the tgi_line wrapper. DONE: I coded a Bresenham algorithm from scratch instead of the painfully slow OS default. Lack of clipping means that tgidemo could crash with some modes for now. (tgi_line demo assumes maxx > maxy) > Actually I have a prototype implementation of a line clipper already > running. Cool! Thank you! I also did the following: * A "tgitest.c" which tests some tgi features that actually helped me catching a couple of bugs. It runs with c64 too. I don't see any reason that would prevent it from running in other platforms. I think when I tidy up the code a little bit and add a few more tests, it will be a good candidate for the "contrib" repository. * I wrote a circle algorithm from scratch. Because the one I took from the APPLE driver (which is, by the way, not the same as c64) was sometimes leaving gaps on the circle and I couldn't manage to debug it. Can someone confirm that on the APPLE side? Or did I mess something up when I was porting? * GETPIXEL was buggy. Fixed. * DONE was buggy. Partially fixed. Which brings us again to an issue about Atari memory management. I'll talk about it in my next e-mail because I don't want it to go unnoticed burried under the tgi mumbo jumbo :) > Palette and color management stays as it is. Colors are actually indices > into the default palette. If a programmer changes the palette, he has to > implement his own color names or whatever. What about tgidemo? It _does_ change the palette but still uses COLOR_BLACK and COLOR_WHITE that prevents Atari drivers to work out of the box which is kind of frustrating. > As a final note (this was not discussed): I don't know how many drivers do not > implement OUTTEXT. Most drivers derived from the C64 driver will not have it, > because I was too lazy at that time:-) This should be added so programs can > rely on it. I will add support to it as soon as I come up with a faster BAR routine. But there is an issue: text size functions sometimes return garbage values. And I just can't always reproduce it which made me think that it may be an initialization issue. Calling tgi_textstyle first seems to solve it for now but then again it doesn't always break anyway so I can't be sure. I looked at the source but I was lost in the C runtime routines :) Anyway, I will tell you more as soon as I can reproduce it properly. TO DO: * Faster BAR routine. * Text output support. * Cleanup, optimization, cleanup, optimization, cleanup... * At least one more driver with 2 pages. I want to try 3dmaze with double buffering. (The original version btw, was somewhat working but not any more - clipping issues -). Regards, Fatih. ---------------------------------------------------------------------- To unsubscribe from the list send mail to majordomo@musoftware.de with the string "unsubscribe cc65" in the body(!) of the mail.Received on Mon Oct 26 22:57:10 2009
This archive was generated by hypermail 2.1.8 : 2009-10-26 22:57:12 CET