<html>
<body>
  <div id="body" style="background-color:#ffffff;" >
<table cellspacing="0" cellpadding="0" border="0" rules="cols">
<tr class="head" style="border-bottom-width:1px;border-bottom-style:solid;" ><td class="headtd" style="padding:0;padding-top:.2em;" colspan="4">Commit in <b><tt>lxdream</tt></b></td></tr>
<tr><td><tt>src/<a href="#file1">Makefile.am</a></tt></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+1</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-1</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e -> 00e507e4025c</td></tr>
<tr class="alt" style=";" ><td><tt>   /<a href="#file2">Makefile.in</a></tt></td><td id="addedalt" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ccf7cc;" align="right">+66</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-82</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e -> 00e507e4025c</td></tr>
<tr><td><tt>src/pvr2/<a href="#file3">glrender.c</a></tt></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+14</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-36</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e -> 00e507e4025c</td></tr>
<tr class="alt" style=";" ><td><tt>        /<a href="#file4">scene.h</a></tt></td><td></td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-1</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e -> 00e507e4025c</td></tr>
<tr><td><tt>        /<a href="#file5">tileiter.h</a></tt></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+24</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-26</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e -> 00e507e4025c</td></tr>
<tr class="alt" style=";" ><td><tt>        /<a href="#file6"><span id="removedalt" style="background-color:#f7cccc;" >untile.c</span></a></tt></td><td></td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-143</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e removed</td></tr>
<tr><td><tt>src/tools/<a href="#file7">genglsl.c</a></tt></td><td></td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-48</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e -> 00e507e4025c</td></tr>
<tr class="alt" style=";" ><td><tt>test/<a href="#file8">pvr.c</a></tt></td><td></td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-2</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">6464d890cc9e -> 00e507e4025c</td></tr>
<tr><td></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+105</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-339</td><td></td></tr>
</table>
<small id="info" style="color: #888888;" >1 removed + 7 modified, total 8 files</small><br />
<pre class="comment" style="white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;white-space:pre-wrap;word-wrap:break-word;padding:4px;border:1px dashed #000000;background-color:#ffffdd;" >
Revert changes from r1151 that went in by accident (not ready from
prime-time yet)
</pre>
<hr /><a name="file1" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>Makefile.am</b></big> <small id="info" style="color: #888888;" >6464d890cc9e -> 00e507e4025c</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/Makefile.am
+++ lxdream/src/Makefile.am
@@ -55,7 +55,7 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >      sh4/cache.c sh4/mmu.h sh4/shadow.c \
         aica/armcore.c aica/armcore.h aica/armdasm.c aica/armdasm.h aica/armmem.c \
         aica/aica.c aica/aica.h aica/audio.c aica/audio.h \
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-   pvr2/pvr2.c pvr2/pvr2.h pvr2/pvr2mem.c pvr2/pvr2mmio.h <span id="removedchars" style="background-color:#ff9999;font-weight:bolder;" >pvr2/untile.c </span>\
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+     pvr2/pvr2.c pvr2/pvr2.h pvr2/pvr2mem.c pvr2/pvr2mmio.h \
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >    pvr2/tacore.c pvr2/rendsort.c pvr2/tileiter.h pvr2/shaders.glsl \
        pvr2/texcache.c pvr2/yuv.c pvr2/rendsave.c pvr2/scene.c pvr2/scene.h \
        pvr2/gl_sl.c pvr2/shaders.h pvr2/shaders.def pvr2/glutil.c pvr2/glutil.h pvr2/glrender.c \
</pre></div>
<hr /><a name="file2" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>Makefile.in</b></big> <small id="info" style="color: #888888;" >6464d890cc9e -> 00e507e4025c</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/Makefile.in
+++ lxdream/src/Makefile.in
@@ -155,18 +155,18 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >      sh4/cache.c sh4/mmu.h sh4/shadow.c aica/armcore.c \
        aica/armcore.h aica/armdasm.c aica/armdasm.h aica/armmem.c \
        aica/aica.c aica/aica.h aica/audio.c aica/audio.h pvr2/pvr2.c \
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-   pvr2/pvr2.h pvr2/pvr2mem.c pvr2/pvr2mmio.h pvr2/untile.c \
-       pvr2/tacore.c pvr2/rendsort.c pvr2/tileiter.h \
-       pvr2/shaders.glsl pvr2/texcache.c pvr2/yuv.c pvr2/rendsave.c \
-       pvr2/scene.c pvr2/scene.h pvr2/gl_sl.c pvr2/shaders.h \
-       pvr2/shaders.def pvr2/glutil.c pvr2/glutil.h pvr2/glrender.c \
-       maple/maple.c maple/maple.h maple/controller.c maple/kbd.c \
-       maple/mouse.c maple/lightgun.c maple/vmu.c loader.c loader.h \
-       elf.h bootstrap.c bootstrap.h util.c gdlist.c gdlist.h \
-       vmu/vmuvol.c vmu/vmuvol.h vmu/vmulist.c vmu/vmulist.h \
-       display.c display.h dckeysyms.h drivers/audio_null.c \
-       drivers/video_null.c drivers/video_gl.c drivers/video_gl.h \
-       drivers/gl_fbo.c drivers/serial_unix.c drivers/cdrom/cdrom.h \
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+     pvr2/pvr2.h pvr2/pvr2mem.c pvr2/pvr2mmio.h pvr2/tacore.c \
+       pvr2/rendsort.c pvr2/tileiter.h pvr2/shaders.glsl \
+       pvr2/texcache.c pvr2/yuv.c pvr2/rendsave.c pvr2/scene.c \
+       pvr2/scene.h pvr2/gl_sl.c pvr2/shaders.h pvr2/shaders.def \
+       pvr2/glutil.c pvr2/glutil.h pvr2/glrender.c maple/maple.c \
+       maple/maple.h maple/controller.c maple/kbd.c maple/mouse.c \
+       maple/lightgun.c maple/vmu.c loader.c loader.h elf.h \
+       bootstrap.c bootstrap.h util.c gdlist.c gdlist.h vmu/vmuvol.c \
+       vmu/vmuvol.h vmu/vmulist.c vmu/vmulist.h display.c display.h \
+       dckeysyms.h drivers/audio_null.c drivers/video_null.c \
+       drivers/video_gl.c drivers/video_gl.h drivers/gl_fbo.c \
+       drivers/serial_unix.c drivers/cdrom/cdrom.h \
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >    drivers/cdrom/cdrom.c drivers/cdrom/drive.h \
        drivers/cdrom/sector.h drivers/cdrom/sector.c \
        drivers/cdrom/defs.h drivers/cdrom/cd_nrg.c \
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -263,32 +263,31 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >      lxdream-armdasm.$(OBJEXT) lxdream-armmem.$(OBJEXT) \
        lxdream-aica.$(OBJEXT) lxdream-audio.$(OBJEXT) \
        lxdream-pvr2.$(OBJEXT) lxdream-pvr2mem.$(OBJEXT) \
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-   lxdream-untile.$(OBJEXT) lxdream-tacore.$(OBJEXT) \
-       lxdream-rendsort.$(OBJEXT) lxdream-texcache.$(OBJEXT) \
-       lxdream-yuv.$(OBJEXT) lxdream-rendsave.$(OBJEXT) \
-       lxdream-scene.$(OBJEXT) lxdream-gl_sl.$(OBJEXT) \
-       lxdream-glutil.$(OBJEXT) lxdream-glrender.$(OBJEXT) \
-       lxdream-maple.$(OBJEXT) lxdream-controller.$(OBJEXT) \
-       lxdream-kbd.$(OBJEXT) lxdream-mouse.$(OBJEXT) \
-       lxdream-lightgun.$(OBJEXT) lxdream-vmu.$(OBJEXT) \
-       lxdream-loader.$(OBJEXT) lxdream-bootstrap.$(OBJEXT) \
-       lxdream-util.$(OBJEXT) lxdream-gdlist.$(OBJEXT) \
-       lxdream-vmuvol.$(OBJEXT) lxdream-vmulist.$(OBJEXT) \
-       lxdream-display.$(OBJEXT) lxdream-audio_null.$(OBJEXT) \
-       lxdream-video_null.$(OBJEXT) lxdream-video_gl.$(OBJEXT) \
-       lxdream-gl_fbo.$(OBJEXT) lxdream-serial_unix.$(OBJEXT) \
-       lxdream-cdrom.$(OBJEXT) lxdream-sector.$(OBJEXT) \
-       lxdream-cd_nrg.$(OBJEXT) lxdream-cd_cdi.$(OBJEXT) \
-       lxdream-cd_gdi.$(OBJEXT) lxdream-edc_ecc.$(OBJEXT) \
-       lxdream-drive.$(OBJEXT) lxdream-cd_mmc.$(OBJEXT) \
-       lxdream-isofs.$(OBJEXT) lxdream-isomem.$(OBJEXT) \
-       lxdream-hotkeys.$(OBJEXT) $(am__objects_1) $(am__objects_2) \
-       $(am__objects_3) $(am__objects_4) $(am__objects_5) \
-       $(am__objects_6) $(am__objects_7) $(am__objects_8) \
-       $(am__objects_9) $(am__objects_10) $(am__objects_11) \
-       $(am__objects_12) $(am__objects_13) $(am__objects_14) \
-       $(am__objects_15) $(am__objects_16) $(am__objects_17) \
-       $(am__objects_18)
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+     lxdream-tacore.$(OBJEXT) lxdream-rendsort.$(OBJEXT) \
+       lxdream-texcache.$(OBJEXT) lxdream-yuv.$(OBJEXT) \
+       lxdream-rendsave.$(OBJEXT) lxdream-scene.$(OBJEXT) \
+       lxdream-gl_sl.$(OBJEXT) lxdream-glutil.$(OBJEXT) \
+       lxdream-glrender.$(OBJEXT) lxdream-maple.$(OBJEXT) \
+       lxdream-controller.$(OBJEXT) lxdream-kbd.$(OBJEXT) \
+       lxdream-mouse.$(OBJEXT) lxdream-lightgun.$(OBJEXT) \
+       lxdream-vmu.$(OBJEXT) lxdream-loader.$(OBJEXT) \
+       lxdream-bootstrap.$(OBJEXT) lxdream-util.$(OBJEXT) \
+       lxdream-gdlist.$(OBJEXT) lxdream-vmuvol.$(OBJEXT) \
+       lxdream-vmulist.$(OBJEXT) lxdream-display.$(OBJEXT) \
+       lxdream-audio_null.$(OBJEXT) lxdream-video_null.$(OBJEXT) \
+       lxdream-video_gl.$(OBJEXT) lxdream-gl_fbo.$(OBJEXT) \
+       lxdream-serial_unix.$(OBJEXT) lxdream-cdrom.$(OBJEXT) \
+       lxdream-sector.$(OBJEXT) lxdream-cd_nrg.$(OBJEXT) \
+       lxdream-cd_cdi.$(OBJEXT) lxdream-cd_gdi.$(OBJEXT) \
+       lxdream-edc_ecc.$(OBJEXT) lxdream-drive.$(OBJEXT) \
+       lxdream-cd_mmc.$(OBJEXT) lxdream-isofs.$(OBJEXT) \
+       lxdream-isomem.$(OBJEXT) lxdream-hotkeys.$(OBJEXT) \
+       $(am__objects_1) $(am__objects_2) $(am__objects_3) \
+       $(am__objects_4) $(am__objects_5) $(am__objects_6) \
+       $(am__objects_7) $(am__objects_8) $(am__objects_9) \
+       $(am__objects_10) $(am__objects_11) $(am__objects_12) \
+       $(am__objects_13) $(am__objects_14) $(am__objects_15) \
+       $(am__objects_16) $(am__objects_17) $(am__objects_18)
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > lxdream_OBJECTS = $(am_lxdream_OBJECTS)
 lxdream_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
        $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -577,35 +576,35 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >      sh4/shadow.c aica/armcore.c aica/armcore.h aica/armdasm.c \
        aica/armdasm.h aica/armmem.c aica/aica.c aica/aica.h \
        aica/audio.c aica/audio.h pvr2/pvr2.c pvr2/pvr2.h \
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-   pvr2/pvr2mem.c pvr2/pvr2mmio.h pvr2/untile.c pvr2/tacore.c \
-       pvr2/rendsort.c pvr2/tileiter.h pvr2/shaders.glsl \
-       pvr2/texcache.c pvr2/yuv.c pvr2/rendsave.c pvr2/scene.c \
-       pvr2/scene.h pvr2/gl_sl.c pvr2/shaders.h pvr2/shaders.def \
-       pvr2/glutil.c pvr2/glutil.h pvr2/glrender.c maple/maple.c \
-       maple/maple.h maple/controller.c maple/kbd.c maple/mouse.c \
-       maple/lightgun.c maple/vmu.c loader.c loader.h elf.h \
-       bootstrap.c bootstrap.h util.c gdlist.c gdlist.h vmu/vmuvol.c \
-       vmu/vmuvol.h vmu/vmulist.c vmu/vmulist.h display.c display.h \
-       dckeysyms.h drivers/audio_null.c drivers/video_null.c \
-       drivers/video_gl.c drivers/video_gl.h drivers/gl_fbo.c \
-       drivers/serial_unix.c drivers/cdrom/cdrom.h \
-       drivers/cdrom/cdrom.c drivers/cdrom/drive.h \
-       drivers/cdrom/sector.h drivers/cdrom/sector.c \
-       drivers/cdrom/defs.h drivers/cdrom/cd_nrg.c \
-       drivers/cdrom/cd_cdi.c drivers/cdrom/cd_gdi.c \
-       drivers/cdrom/edc_ecc.c drivers/cdrom/ecc.h \
-       drivers/cdrom/drive.c drivers/cdrom/edc_crctable.h \
-       drivers/cdrom/edc_encoder.h drivers/cdrom/edc_l2sq.h \
-       drivers/cdrom/edc_scramble.h drivers/cdrom/cd_mmc.c \
-       drivers/cdrom/isofs.h drivers/cdrom/isofs.c \
-       drivers/cdrom/isomem.c sh4/sh4.def sh4/sh4core.in \
-       sh4/sh4x86.in sh4/sh4dasm.in sh4/sh4stat.in hotkeys.c \
-       hotkeys.h $(am__append_1) $(am__append_2) $(am__append_4) \
-       $(am__append_5) $(am__append_6) $(am__append_7) \
-       $(am__append_8) $(am__append_9) $(am__append_10) \
-       $(am__append_17) $(am__append_19) $(am__append_21) \
-       $(am__append_23) $(am__append_25) $(am__append_27) \
-       $(am__append_28) $(am__append_29) $(am__append_30)
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+     pvr2/pvr2mem.c pvr2/pvr2mmio.h pvr2/tacore.c pvr2/rendsort.c \
+       pvr2/tileiter.h pvr2/shaders.glsl pvr2/texcache.c pvr2/yuv.c \
+       pvr2/rendsave.c pvr2/scene.c pvr2/scene.h pvr2/gl_sl.c \
+       pvr2/shaders.h pvr2/shaders.def pvr2/glutil.c pvr2/glutil.h \
+       pvr2/glrender.c maple/maple.c maple/maple.h maple/controller.c \
+       maple/kbd.c maple/mouse.c maple/lightgun.c maple/vmu.c \
+       loader.c loader.h elf.h bootstrap.c bootstrap.h util.c \
+       gdlist.c gdlist.h vmu/vmuvol.c vmu/vmuvol.h vmu/vmulist.c \
+       vmu/vmulist.h display.c display.h dckeysyms.h \
+       drivers/audio_null.c drivers/video_null.c drivers/video_gl.c \
+       drivers/video_gl.h drivers/gl_fbo.c drivers/serial_unix.c \
+       drivers/cdrom/cdrom.h drivers/cdrom/cdrom.c \
+       drivers/cdrom/drive.h drivers/cdrom/sector.h \
+       drivers/cdrom/sector.c drivers/cdrom/defs.h \
+       drivers/cdrom/cd_nrg.c drivers/cdrom/cd_cdi.c \
+       drivers/cdrom/cd_gdi.c drivers/cdrom/edc_ecc.c \
+       drivers/cdrom/ecc.h drivers/cdrom/drive.c \
+       drivers/cdrom/edc_crctable.h drivers/cdrom/edc_encoder.h \
+       drivers/cdrom/edc_l2sq.h drivers/cdrom/edc_scramble.h \
+       drivers/cdrom/cd_mmc.c drivers/cdrom/isofs.h \
+       drivers/cdrom/isofs.c drivers/cdrom/isomem.c sh4/sh4.def \
+       sh4/sh4core.in sh4/sh4x86.in sh4/sh4dasm.in sh4/sh4stat.in \
+       hotkeys.c hotkeys.h $(am__append_1) $(am__append_2) \
+       $(am__append_4) $(am__append_5) $(am__append_6) \
+       $(am__append_7) $(am__append_8) $(am__append_9) \
+       $(am__append_10) $(am__append_17) $(am__append_19) \
+       $(am__append_21) $(am__append_23) $(am__append_25) \
+       $(am__append_27) $(am__append_28) $(am__append_29) \
+       $(am__append_30)
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > lxdream_CPPFLAGS = @LXDREAMCPPFLAGS@
 @BUILD_SH4X86_TRUE@test_testsh4x86_LDADD = @LXDREAM_LIBS@ @GLIB_LIBS@ @GTK_LIBS@ @LIBPNG_LIBS@
 @BUILD_SH4X86_TRUE@test_testsh4x86_CPPFLAGS = @LXDREAMCPPFLAGS@
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -879,7 +878,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lxdream-tacore.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lxdream-texcache.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lxdream-timer.Po@am__quote@
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lxdream-untile.Po@am__quote@
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lxdream-util.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lxdream-version.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lxdream-video_gdk.Po@am__quote@
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -1570,20 +1568,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > @AMDEP_TRUE@@am__fastdepCC_FALSE@    DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lxdream_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lxdream-pvr2mem.obj `if test -f 'pvr2/pvr2mem.c'; then $(CYGPATH_W) 'pvr2/pvr2mem.c'; else $(CYGPATH_W) '$(srcdir)/pvr2/pvr2mem.c'; fi`
 
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-lxdream-untile.o: pvr2/untile.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lxdream_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lxdream-untile.o -MD -MP -MF "$(DEPDIR)/lxdream-untile.Tpo" -c -o lxdream-untile.o `test -f 'pvr2/untile.c' || echo '$(srcdir)/'`pvr2/untile.c; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/lxdream-untile.Tpo" "$(DEPDIR)/lxdream-untile.Po"; else rm -f "$(DEPDIR)/lxdream-untile.Tpo"; exit 1; fi
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='pvr2/untile.c' object='lxdream-untile.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lxdream_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lxdream-untile.o `test -f 'pvr2/untile.c' || echo '$(srcdir)/'`pvr2/untile.c
-
-lxdream-untile.obj: pvr2/untile.c
-@am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lxdream_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lxdream-untile.obj -MD -MP -MF "$(DEPDIR)/lxdream-untile.Tpo" -c -o lxdream-untile.obj `if test -f 'pvr2/untile.c'; then $(CYGPATH_W) 'pvr2/untile.c'; else $(CYGPATH_W) '$(srcdir)/pvr2/untile.c'; fi`; \
-@am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/lxdream-untile.Tpo" "$(DEPDIR)/lxdream-untile.Po"; else rm -f "$(DEPDIR)/lxdream-untile.Tpo"; exit 1; fi
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='pvr2/untile.c' object='lxdream-untile.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lxdream_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lxdream-untile.obj `if test -f 'pvr2/untile.c'; then $(CYGPATH_W) 'pvr2/untile.c'; else $(CYGPATH_W) '$(srcdir)/pvr2/untile.c'; fi`
-
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > lxdream-tacore.o: pvr2/tacore.c
 @am__fastdepCC_TRUE@   if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lxdream_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lxdream-tacore.o -MD -MP -MF "$(DEPDIR)/lxdream-tacore.Tpo" -c -o lxdream-tacore.o `test -f 'pvr2/tacore.c' || echo '$(srcdir)/'`pvr2/tacore.c; \
 @am__fastdepCC_TRUE@   then mv -f "$(DEPDIR)/lxdream-tacore.Tpo" "$(DEPDIR)/lxdream-tacore.Po"; else rm -f "$(DEPDIR)/lxdream-tacore.Tpo"; exit 1; fi
</pre></div>
<hr /><a name="file3" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/pvr2</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>glrender.c</b></big> <small id="info" style="color: #888888;" >6464d890cc9e -> 00e507e4025c</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/pvr2/glrender.c
+++ lxdream/src/pvr2/glrender.c
@@ -222,7 +222,7 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     } while( poly != NULL );
 }
 
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-void gl_render_poly( struct polygon_struct *poly, gboolean set_depth)
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+<span id="addedchars" style="background-color:#99ff99;font-weight:bolder;" >static </span>void gl_render_poly( struct polygon_struct *poly, gboolean set_depth)
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > {
     if( poly->vertex_count == 0 )
         return; /* Culled */
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -390,35 +390,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     glDisable( GL_STENCIL_TEST );
 }
 
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-static void gl_render_stencil( )
-{
-    struct tile_segment *segment = pvr2_scene.segment_list;
-    if( display_driver->capabilities.stencil_bits >= 2 ) {
-        glColorMask( GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE );
-        do {
-            int tilex = SEGMENT_X(segment->control);
-            int tiley = SEGMENT_Y(segment->control);
-
-            uint32_t tile_bounds[4] = { tilex << 5, (tilex+1)<<5, tiley<<5, (tiley+1)<<5 };
-            if( !clip_tile_bounds(tile_bounds, pvr2_scene.bounds) ) {
-                continue; // fully clipped, skip tile
-            }
-
-            /* Clip to the visible part of the tile */
-            glScissor( tile_bounds[0], pvr2_scene.buffer_height-tile_bounds[3],
-                    tile_bounds[1]-tile_bounds[0], tile_bounds[3] - tile_bounds[2] );
-            if( IS_TILE_PTR(segment->opaquemod_ptr) &&
-                    !IS_EMPTY_TILE_LIST(segment->opaquemod_ptr) ) {
-                gl_render_tilelist_depthonly(segment->opaque_ptr);
-                gl_render_modifier_tilelist(segment->opaquemod_ptr, tile_bounds);
-            }
-        } while( !IS_LAST_SEGMENT(segment++) );
-        glClear( GL_DEPTH_BUFFER_BIT );
-        glColorMask( GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE );
-    }
-}
-
-
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > /**
  * Render the currently defined scene in pvr2_scene
  */
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -473,12 +444,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     glEnable( GL_FOG );
     glEnable( GL_TEXTURE_2D );
 
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-    gl_render_stencil();
-
-    glDisable( GL_SCISSOR_TEST );
-    untile_list(pvr2_scene.segment_list, 0, 0);
-    glEnable( GL_SCISSOR_TEST );
-
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     /* Process the segment list */
     struct tile_segment *segment = pvr2_scene.segment_list;
     do {
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -493,6 +458,19 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >         /* Clip to the visible part of the tile */
         glScissor( tile_bounds[0], pvr2_scene.buffer_height-tile_bounds[3], 
                    tile_bounds[1]-tile_bounds[0], tile_bounds[3] - tile_bounds[2] );
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+        if( display_driver->capabilities.stencil_bits >= 2 && 
+                IS_TILE_PTR(segment->opaquemod_ptr) &&
+                !IS_EMPTY_TILE_LIST(segment->opaquemod_ptr) ) {
+            /* Don't do this unless there's actually some shadow polygons */
+
+            /* Use colormask instead of drawbuffer for simplicity */
+            glColorMask( GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE );
+            gl_render_tilelist_depthonly(segment->opaque_ptr);
+            gl_render_modifier_tilelist(segment->opaquemod_ptr, tile_bounds);
+            glClear( GL_DEPTH_BUFFER_BIT );
+            glColorMask( GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE );
+        }
+        gl_render_tilelist(segment->opaque_ptr,TRUE);
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >         if( IS_TILE_PTR(segment->punchout_ptr) ) {
             glEnable(GL_ALPHA_TEST );
             glDepthFunc(GL_GEQUAL);
</pre></div>
<hr /><a name="file4" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/pvr2</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>scene.h</b></big> <small id="info" style="color: #888888;" >6464d890cc9e -> 00e507e4025c</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/pvr2/scene.h
+++ lxdream/src/pvr2/scene.h
@@ -82,7 +82,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > #define MAX_POLYGONS (87382*2)
 #define MAX_POLY_BUFFER_SIZE (MAX_POLYGONS*sizeof(struct polygon_struct))
 #define BUF_POLY_MAP_SIZE (4 MB)
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-#define POLY_NO(poly) (poly - pvr2_scene.poly_array)
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > 
 /*************************************************************************/
 
</pre></div>
<hr /><a name="file5" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/pvr2</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>tileiter.h</b></big> <small id="info" style="color: #888888;" >6464d890cc9e -> 00e507e4025c</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/pvr2/tileiter.h
+++ lxdream/src/pvr2/tileiter.h
@@ -84,36 +84,34 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     for(;;){
         uint32_t entry = *it->ptr;
         uint32_t tag = entry >> 29;
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-        if( tag < 6 ) {
-            if( tag & 0x04 ) {
-                int vertex_count = tag-1; /* 4 == tri, 5 == quad */
-                int vertex_length = (entry >> 21) & 0x07;
-                if( (entry & 0x01000000) && (pvr2_scene.shadow_mode == SHADOW_FULL) ) {
-                    it->poly_size = 5 + (vertex_length<<1) * vertex_count;
-                } else {
-                    it->poly_size = 3 + vertex_length * vertex_count;
-                }
-                it->strip_count = ((entry >> 25) & 0x0F);
-                it->poly_addr = entry & 0x001FFFFF;
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+        if( tag == 0x07 ) {
+            if( tag & 0x10000000 ) {
+                it->ptr = NULL;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >                 return;
             } else {
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-                /* Other polygon */
-                it->strip_count = 0;
-                it->poly_addr = entry & 0x001FFFFF;
-                return;
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+                it->ptr = (uint32_t *)(pvr2_main_ram + (entry&0x007FFFFF));
+                it->poly_addr = -1;
+                entry = *it->ptr;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             }
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+        } else if( tag == 6 ) {
+            /* Illegal? Skip */
+            it->ptr++;
+        } else if( tag & 0x04 ) {
+            int vertex_count = tag-1; /* 4 == tri, 5 == quad */
+            int vertex_length = (entry >> 21) & 0x07;
+            if( (entry & 0x01000000) && (pvr2_scene.shadow_mode == SHADOW_FULL) ) {
+                it->poly_size = 5 + (vertex_length<<1) * vertex_count;
+            } else {
+                it->poly_size = 3 + vertex_length * vertex_count;
+            }
+            it->strip_count = ((entry >> 25) & 0x0F);
+            it->poly_addr = entry & 0x001FFFFF;
+            return;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >         } else {
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-            if( tag == 0x07 ) {
-                if( entry & 0x10000000 ) {
-                    it->ptr = NULL;
-                    return;
-                } else {
-                    it->ptr = (uint32_t *)(pvr2_main_ram + (entry&0x007FFFFF));
-                }
-            } else if( tag == 6 ) {
-                /* Illegal? Skip */
-                it->ptr++;
-            }
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+            /* Other polygon */
+            it->strip_count = 0;
+            it->poly_addr = entry & 0x001FFFFF;
+            return;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >         }
     }
 }
</pre></div>
<hr /><a name="file6" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span id="removed" class="pathname" style="font-family:monospace; float:right; background-color:#ffdddd;" >lxdream/src/pvr2</span><br />
<div id="removed" class="fileheader" style="margin-bottom:.5em; background-color:#ffdddd;" ><big><b>untile.c</b></big> <small id="info" style="color: #888888;" >removed after 6464d890cc9e</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/pvr2/untile.c
+++ lxdream/src/pvr2/untile.c
@@ -1,143 +0,0 @@
</small></pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-/**
- * $Id$
- *
- * Process the tile + polygon data to extract a list of polygons that can
- * be rendered directly without tiling.
- *
- * Copyright (c) 2010 Nathan Keynes.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- */
-
-#include <stdlib.h>
-#include "pvr2/pvr2.h"
-#include "pvr2/scene.h"
-#include "pvr2/tileiter.h"
-
-static int sort_polydata( const void *a, const void *b )
-{
-    uint32_t idxa = *(const uint32_t*)a;
-    uint32_t idxb = *(const uint32_t*)b;
-    return pvr2_scene.poly_array[idxa].context - pvr2_scene.poly_array[idxb].context;
-}
-
-gboolean untile_list( struct tile_segment *segment, int pass, int list )
-{
-    int tile_width = pvr2_scene.buffer_width >> 5;
-    int tile_height = pvr2_scene.buffer_height >> 5;
-    tileiter tile_map[tile_width][tile_height];
-
-    memset(tile_map, 0, tile_width*tile_height*sizeof(uint32_t *));
-
-    /* 1. Construct the tile map for the last/pass */
-    int last_x = -1, last_y = -1, tile_pass;
-    do {
-        int tile_x = SEGMENT_X(segment->control);
-        int tile_y = SEGMENT_Y(segment->control);
-        if( last_x == tile_x && last_y == tile_y ) {
-            tile_pass++;
-        } else {
-            tile_pass = 0;
-            last_x = tile_x;
-            last_y = tile_y;
-        }
-
-        if( tile_pass == pass ) {
-            uint32_t ptr = ((uint32_t *)segment)[list+1];
-            if( IS_TILE_PTR(ptr) )
-                TILEITER_BEGIN(tile_map[tile_x][tile_y], ptr);
-        }
-    } while( !IS_LAST_SEGMENT(segment++) );
-
-    /* 2. Extract the polygon list, sorted by appearance. We assume the list
-     * can be sorted by address, which makes this a lot simpler/faster.
-     */
-    uint32_t poly_present[pvr2_scene.poly_count];
-    memset( poly_present, 0, sizeof(poly_present) );
-    unsigned x,y, i, j, poly_count = 0;
-    for( x = 0; x < tile_width; x++ ) {
-        for( y = 0; y < tile_height; y++ ) {
-            tileiter list = tile_map[x][y];
-            while( !TILEITER_DONE(list) ) {
-                struct polygon_struct *poly = pvr2_scene.buf_to_poly_map[TILEITER_POLYADDR(list)];
-                if( poly ) {
-                    poly_present[POLY_NO(poly)] = 1;
-                }
-                TILEITER_NEXT(list);
-            }
-        }
-    }
-    /* Collapse array into a set of polygon indexes and then sort it */
-    for( x=0; x<pvr2_scene.poly_count; x++ ) {
-        if( poly_present[x] ) {
-            poly_present[poly_count++] = x;
-        }
-    }
-    qsort(poly_present, poly_count, sizeof(uint32_t), sort_polydata);
-
-    /* 3. Process each polygon in the list. Extract the bounds, and check
-     * each tile in which it should appear - if missing, the poly is clipped
-     * (and we need to construct appropriate bounds).
-     */
-    for( i=0; i<poly_count; i++ ) {
-        struct tile_bounds poly_bounds = {tile_width, tile_height, -1, -1};
-        struct tile_bounds clip_bounds = {0, 0, tile_width, tile_height};
-        struct polygon_struct *poly = &pvr2_scene.poly_array[poly_present[i]];
-        uint32_t poly_addr = poly->context - ((uint32_t *)pvr2_main_ram);
-        do {
-            /* Extract tile bounds for the poly - we assume (since we have the
-             * polygon at all) that it appears correctly in at least one tile.
-             */
-            struct vertex_struct *vert = &pvr2_scene.vertex_array[poly->vertex_index];
-            for( j=0; j<poly->vertex_count; j++ ) {
-                int tx, ty;
-                if( vert[j].x < 0 ) tx = 0;
-                else if( vert[j].x >= pvr2_scene.buffer_width ) tx = tile_width-1;
-                else tx = ((int)vert[j].x)>>5;
-                if( tx < poly_bounds.x1 ) poly_bounds.x1 = tx;
-                if( tx > poly_bounds.x2 ) poly_bounds.x2 = tx;
-                if( vert[j].y < 0 ) ty = 0;
-                else if( vert[j].y >= pvr2_scene.buffer_height ) ty = tile_height-1;
-                else ty = ((int)vert[j].y)>>5;
-                if( ty < poly_bounds.y1 ) poly_bounds.y1 = ty;
-                if( ty > poly_bounds.y2 ) poly_bounds.y2 = ty;
-            }
-            poly = poly->sub_next;
-        } while( poly != NULL );
-        if( poly_bounds.x1 == tile_width ) {
-            continue; /* Polygon has been culled */
-        }
-
-        gl_render_poly(&pvr2_scene.poly_array[poly_present[i]], TRUE);
-#if 0
-        /* Search the tile map for the polygon */
-        for( x = poly_bounds.x1; x <= poly_bounds.x2; x++ ) {
-            for( y = poly_bounds.y1; y <= poly_bounds.y2; y++ ) {
-                tileiter *list = &tile_map[x][y];
-
-
-                /* Skip over earlier entries in the list, if any (can happen if
-                 * we culled something, or had an empty polygon
-                 */
-                while( !TILEITER_DONE(*list) && TILEITER_POLYADDR(*list) < poly_addr )
-                    TILEITER_NEXT(*list);
-                if( TILEITER_POLYADDR(*list) == poly_addr ) {
-                    /* Match */
-                } else {
-                    /* Clipped */
-                }
-            }
-        }
-#endif
-    }
-}
-
-
</pre></div>
<hr /><a name="file7" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/tools</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>genglsl.c</b></big> <small id="info" style="color: #888888;" >6464d890cc9e -> 00e507e4025c</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/tools/genglsl.c
+++ lxdream/src/tools/genglsl.c
@@ -37,16 +37,10 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     FRAGMENT_SHADER = 1
 } shader_type_t;
 
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-typedef struct uniform {
-    const char *name;
-    const char *var_name;
-} *uniform_t;
-
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > typedef struct shader {
     shader_type_t type;
     const char *name;
     char *body;
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-    GList *uniforms;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > } *shader_t;
 
 typedef struct program {
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -92,7 +86,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             shader->name = strdup(g_strstrip(buf+8));
             shader->body = malloc(DEF_ALLOC_SIZE);
             shader->body[0] = '\0';
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-            shader->uniforms = 0;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             current_size = DEF_ALLOC_SIZE;
             current_posn = 0;
             result->shaders = g_list_append(result->shaders, shader);
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -103,14 +96,12 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             shader->name = strdup(g_strstrip(buf+10));
             shader->body = malloc(DEF_ALLOC_SIZE);
             shader->body[0] = '\0';
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-            shader->uniforms = 0;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             current_size = DEF_ALLOC_SIZE;
             current_posn = 0;
             result->shaders = g_list_append(result->shaders, shader);
         } else if( strncmp( buf, "#program ", 9 ) == 0 ) {
             shader = NULL;
             program_t program = malloc(sizeof(struct program));
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-            assert( program != NULL );
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             char *rest = buf+9;
             char *equals = strchr(rest, '=');
             if( equals == NULL ) {
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -124,23 +115,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             for(i=0;program->shader_names[i] != NULL; i++ );
             if( i > result->max_shaders )
                 result->max_shaders = i;
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-        } else if( strncmp( buf, "#uniform ", 9 ) == 0 ) {
-            uniform_t uniform = malloc(sizeof(struct uniform));
-            assert( uniform != NULL );
-            if( shader == NULL ) {
-                fprintf( stderr, "Error: #uniform specified outside of shader: %s\n", buf );
-                exit(2);
-            }
-            char *rest = buf+9;
-            char *equals = strchr(rest, '=');
-            if( equals == NULL ) {
-                fprintf( stderr, "Error: invalid program line %s\n", buf );
-                exit(2);
-            }
-            *equals = '\0';
-            uniform->name = g_strdup(g_strstrip(rest));
-            uniform->var_name = g_strdup(g_strstrip(equals+1));
-            shader->uniforms = g_list_append(shader->uniforms, uniform);
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >         } else if( shader != NULL ) {
             size_t len = strlen(buf);
             if( current_posn + len > current_size ) {
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -175,17 +149,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     }
 }
 
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-static uniform_t find_uniform_name( GList *list, const char *name )
-{
-    GList *ptr;
-    for( ptr = list; ptr != NULL; ptr = ptr->next ) {
-        uniform_t data = (uniform_t)list->data;
-        if( strcmp( data->name, name ) == 0 )
-            return data;
-    }
-    return NULL;
-}
-
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > static void writeHeader( FILE *out, glsldata_t data )
 {
     fprintf( out, "/*\n * This file automatically generated by genglsl from %s\n */\n", data->filename );
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -205,22 +168,12 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     fprintf( f, "typedef enum {\n" );
     const char *last_name = NULL;
     int count = 0;
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-    GList *unique_uniforms;
-    int uniform_count = 0;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     GList *shader_ptr;
     for( shader_ptr = data->shaders; shader_ptr != NULL; shader_ptr = shader_ptr->next ) {
         count++;
         shader_t shader = (shader_t)shader_ptr->data;
         fprintf( f, "    %s,\n", shader->name );
         last_name = shader->name;
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-        GList *uniform_ptr;
-        for( uniform_ptr = shader->uniforms; uniform_ptr != NULL; uniform_ptr = uniform_ptr->next ) {
-            uniform_t uniform = (uniform_t)uniform_ptr->data;
-            if( find_uniform_name(unique_uniforms, uniform->name) == NULL ) {
-                unique_uniforms = g_list_append( unique_uniforms, uniform );
-                uniform_count++;
-            }
-        }
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     }
     fprintf( f, "} shader_id;\n\n" );
 
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -231,7 +184,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     fprintf( f, "#define GLSL_NO_SHADER -1\n\n" );
     fprintf( f, "#define GLSL_VERTEX_SHADER 1\n" );
     fprintf( f, "#define GLSL_FRAGMENT_SHADER 2\n" );
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-    fprintf( f, "#define GLSL_NUM_UNIFORMS %d\n", uniform_count );
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > 
     fprintf( f, "typedef enum {\n" );
     last_name = NULL;
</pre></div>
<hr /><a name="file8" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/test</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>pvr.c</b></big> <small id="info" style="color: #888888;" >6464d890cc9e -> 00e507e4025c</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/test/pvr.c
+++ lxdream/test/pvr.c
@@ -42,7 +42,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > #define RENDER_ADDR2    (PVR_BASE+0x064)
 #define RENDER_HCLIP    (PVR_BASE+0x068)
 #define RENDER_VCLIP    (PVR_BASE+0x06C)
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-#define RENDER_SHADOW   (PVR_BASE+0x074)
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > #define RENDER_NEARCLIP (PVR_BASE+0x078)
 #define RENDER_FARCLIP  (PVR_BASE+0x088)
 #define RENDER_BGPLANE  (PVR_BASE+0x08C)
</pre><pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >@@ -253,7 +252,6 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     long_write( RENDER_POLYBASE, config->polybuf );
     long_write( RENDER_TILEBASE, config->tilemap );
     long_write( RENDER_ADDR1, config->render_addr );
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-    long_write( RENDER_SHADOW, 0x140 );
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     long_write( RENDER_SIZE, modulo >> 3 ); 
     long_write( RENDER_ADDR2, config->render_addr + modulo ); /* Not used? */
     long_write( RENDER_HCLIP, (config->width - 1) << 16 );
</pre></div>
<center><small>Chaos Theory</small></center>
</div></body></html>