References Contents Contents

G. Change Log

Mar 2013 (1.4.1)

Maintaince update. also includes things from the errata page

Oct 2008 (1.4)

… Or maybe not. Silly little errors.

May 2008 (1.4)

I think that'll be all then.

May 2008 (1.3)

Dec 2007 (1.3b)

Feb 2007 (v1.3b)

As every programmer knows, you're supposed to write down the changes you make while making them. As every programmer also knows, this has a tendency to be forgotten ^_^;;. I probably missed a few things here.



Jul 23, 2006 (v1.2.4)

Jun 3, 2006 (v1.2.3)

Apr 28, 2006 (v1.2.2)

Apr 28, 2006 (v1.2.1)

Probable upcoming changes

I intend to make a few changes in tonc's code. First, I'll try to decouple the code in the basic demos from tonclib, which should make them easier to understand as you won't have to browse through all the other stuff. Second, this will allow me to rework and optimize tonclib, which is now hampered in some areas by me having to keep a number of things simpler than I'd like to. Now, this is what I'd like to do; I can't really tell when (if) I will get round to it.

Also, I have half a mind of changing the current DMA demo to this one, which simply looks a lot cooler, even though there's is a lot more magic going on. Meh, we'll see.

Mar 21, 2006 (v1.2)

More non-final updates. Quite a lot actually.

Jan 27, 2006 (v1.1)

Heh, so that wasn't not the final update after all :P.

Jun 28, 2005 (v1.0)

Final update. Probably. Not because I'm done with this thing, but because there is so much to change and to add that it's easier to start from scratch again. When I started tonc I still knew very little about GBA programming and tried to do the best I could as I went along. Now I'm a little older and wiser (well, older at any rate), know a lot more about proper procedure, what's useful to have and what isn't and also where people can get stuck on (thank you newbie forum dwellers for all your questions!) From the ideas I'm having, tonc 2 will be a lot bigger, better, and have more explosions! Errr, demos. Tonclib will get a major overhaul with new names and new, optimised functions including text for all modes, memory routines and more. But it'll take a while to get there, so I thought I'd update the original one last time.

That's about it I think, but it should be enough. I hve bits and pieces of the tonc2 text, examples and lib, though maybe not in their final forms. They are available, but only on request. If anyone has suggestions or requests I'll see what I can do. This also goes for mistakes (the ones that the compiler/linker can't catch) you've made that you think others might make too. I know a good number of them already from the forum (like that you should NOT use bytes or halfwords for local variables, since it can really kill performance, int or u32 only, please!. Pretty please. With sugar on top. And frosting and whipped-cream.) Don't need to know every little thing though, especially if it's already covered by the well-done gbadev forum FAQ or already covered in here somewhere.

If anyone knows how I can keep track of all the header/equation/figure numbering automatically (without CSS2, which isn't properly supported by MSIE :( ) that would be very helpful. Actually, the numbering itself isn't the problem, referencing them is.

Also, I could use more real-life examples of tile-map/sprite collision detection and response. I know the bounding box stuff and the basics of detection (even pixel-perfect), but no matter what I do I seem to be getting stuck on some of the particulars of diagonal movement and when things move at more than one pixel/frame. I'd very much like to see how it's done in real platform games for complex scenes that have multiple sprite-sprite and sprite-background collisions, not just single sprite-bg.

Dec 5, 2004 (v0.99.6)

Added the numbers page about number systems, bits and bit operations. I should warn you that it's rather large. It's been a while since I added something and I think I got a little carried away :\. I may break it up into smaller pieces later. Maybe.

DragonBASIC is in the process of being transferred to a new domain, so the old URL is invalid now. At the moment you can still find the forums here, but the compiler itself is still in limbo for the time being.

Aug 3, 2004 (v0.99.5)

I think this will be the last update for a while, for a number of reasons. Firstly, I think I have to actually use some of this stuff, to see what's wrong with it. Secondly, I think I may have to put in some more work into a converter and how to add pure binary files to the demos in a friendly way. Thirdly, PERN's back with a vengeance. As such, there seems little point in developing Tonc any further right now, as it seems that the new PERN is going to be very, very complete.

Jul 16, 2004 (v0.99.5)

I'm sorry if any of these changes causes you any inconvenience, but I think it's better in the long run.

Jul 11, 2004 (v0.99.4)

I'm working on a nice text system right now. If anyone has any requests I'll see what I can do.

June 27, 2004 (v0.99.3)

Ahhh, home at last, where I have a proper computer and Kink-FM blasting through my stereo, excccellent! =)

June 21, 2004 (v0.99.2)

Devving on a P2-300 with 24MB RAM: VBA runs at 50% (and 23% for mode7d) and minimizing a window takes a few seconds. Man, this sucks.

June 11, 2004 (v0.99.1)

June 3, 2004 (v0.99)

With all these changes, it is adviced to save or remove older Tonc stuff when upgrading to avoid double files and other inconsistencies.

May 24, 2004 (v0.98.5)

I am soooo tired right now so I wouldn't be surprised if I messed up somewhere. I'll get it fixed when I've had a chance to sssslssszzzzzzz....

May 16, 2004 (v0.98)

Apr 29, 2004 (v0.97)

Apr 9, 2004 (v0.97)

The object affine functions have a background counterpart now, and mode7d is coming along nicely.

Apr 4, 2004 (v0.96)

Renamed OAM structs and related items. Again. When is this gonna be final?!? Also, thanks to Lupin's problems with sprite-placement in 3D I finally got my matrix-transform sense back. Now that I get it again, I hope to expand the mode7 section in the near future. I already got a working example for 3d-sprite placement already in the form of mode7d.

Mar 31, 2004 (v0.96)

Working on a vector/matrix page, some reshuffling of page-order and yet more random little cleanups.

Mar 24, 2004 (v0.96)

Replaced the assembly listing in swi.htm with the proper THUMB listing. I'd forgotten I wasn't using ARM code anymore.

Mar 20, 2004 (v0.96)

And just when you think you're finished you find another 2 things you can improve upon. Argh. Anyway, I've changed the way sine and cosine are retrieved. They're both macros now, using one 512-entry long s16 sine-LUT. Also, I finally realized how to XOR the vid_page directly for page-flipping. And, oh yeah, the compiler flag for compile, but not assemble should be -S, not -s. Oops.
I think I finally know how I can modify my affine functions to apply to backgrounds without having to use the OBJ_AFFINE structure, but it may be a while before I actually do that.

Mar 17, 2004 (v0.95)

Added ArcTan2 function to swi_demo and fixed the errors that swi.htm still contained. Argh, and I thought I'd been thorough in weeding out all inconsistencies after the recent name and code modifications.

Mar 14, 2004 (v0.95)

First entry in the log. I've rewritten the parts about sprites and backgrounds, changed glyphs to tiles and tiles to tegels (hope I got them all :]), updated all the code one last time and written sections on how to set up DKA, MSVC and makefiles. I think Tonc's ready for use now, wheee!

Modified Mar 24, 2013, J Vijn. Get all Tonc files here