This is my first demo ever! It shows what my small rasterizer/renderer can do. The demo features point and line rendering, gouraud shading, lighting, texture and environment mapping and additive blending. The demo also runs on Windows so you don't need a GP2X to watch. The renderer is really small with ~1800 lines of C++ (also counting empty lines and comments) and can be configured with vertex and pixels shaders which then do the actual assignment of the values. The renderer can interpolate an arbitrary number of integer attributes across the triangle perspectively correct. The rasterizer is block based and currently uses blocks of 8x8 pixels in size. The perspective correction happens at the corners of the blocks and within a block the varyings are interpolated linarly. The music I used in the demo is from chiptunes.org http://www.chiptunes.org/files/Artists/Carter/enback.mod converted to ogg for better performance. Initially I wanted to use ogg940 for ogg playback since this would make my demo 20% faster but I had problems getting it to work so I left it this way. I will release the source to the renderer to everyone who asks. Just send me an email at trenki2@gmx.net. Maybe I will also put the source onto the gp2x archive. I probably won't release the source code to the demo since that is really a horrible mess.