<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PlaatSoft</title>
	<atom:link href="http://www.plaatsoft.nl/wiibrew/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.plaatsoft.nl/wiibrew</link>
	<description>Happy is the man who finds wisdom, and the man who gets understanding - Proverbs</description>
	<lastBuildDate>Fri, 12 Mar 2010 10:14:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>JasperReports basic example</title>
		<link>http://www.plaatsoft.nl/wiibrew/jasperreports-basic-example/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/jasperreports-basic-example/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 19:00:46 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Example]]></category>
		<category><![CDATA[JasperReports]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3482</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/development-icon.jpg" width="32" height="24" alt="" title="Development" /><br/><p>Hi everybody,</p>
<p>Today i have played around with JasperReports. Really nice java tool to created very easy reports. I did not find many examples on internet. Therefor I post my first try. I hope this will help other developers starting up with this great tool.</p>
<p>This example runs a query (JDBC connected) with some parameters define in [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/development-icon.jpg" width="32" height="24" alt="" title="Development" /><br/><p>Hi everybody,</p>
<p>Today i have played around with JasperReports. Really nice java tool to created very easy reports. I did not find many examples on internet. Therefor I post my first try. I hope this will help other developers starting up with this great tool.</p>
<p>This example runs a query (JDBC connected) with some parameters define in Java. The result is converted to PDF and then zipped.</p>
<p>Test.java file </p>
<pre class="brush: java;">

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;

import java.sql.Connection;
import java.sql.DriverManager;

import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;

/**
 * The Class Test.
 */
public class Test {

	/** The Constant LOG. */
	private static final Logger LOG = Logger.getLogger(test.class);

	/** The Constant BUFFER. */
	final static int BUFFER = 10240;

	/** The connection. */
	static Connection connection = null;

	/**
	 * Connect database.
	 */
	static void ConnectDatabase() {
		try {
			// Load the JDBC driver
			String driverName = &quot;oracle.jdbc.driver.OracleDriver&quot;;
			Class.forName(driverName);

			// Create a connection to the database
			String serverName = &quot;127.0.0.1&quot;;
			String portNumber = &quot;1521&quot;;
			String sid = &quot;XE&quot;;
			String url = &quot;jdbc:oracle:thin:@&quot; + serverName + &quot;:&quot; + portNumber + &quot;:&quot; + sid;
			String username = &quot;test&quot;;
			String password = &quot;test&quot;;
			connection = DriverManager.getConnection(url, username, password);
		} catch (ClassNotFoundException e) {
			System.err.println(&quot;Could not find the database driver&quot;);
		} catch (Exception e) {
			System.err.println(&quot;Could not connect to the database&quot;);
		}
	}

	/**
	 * File zip.
	 */
	static void fileZip() {

		BufferedInputStream origin = null;
		try
		{
			FileOutputStream dest = new FileOutputStream(&quot;test.zip&quot;);
			ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(dest));
			byte data[] = new byte[BUFFER];

			// get a list of files from current directory
			File f = new File(&quot;src/.&quot;);
			String files[] = f.list();

			for (int i=0; i&lt;files.length; i++) {

				System.out.println(&quot;Adding: &quot;+files[i]);
				FileInputStream fi = new FileInputStream(&quot;src/&quot;+files[i]);
				origin = new BufferedInputStream(fi, BUFFER);
				ZipEntry entry = new ZipEntry(files[i]);
				out.putNextEntry(entry);
				int count;
				while((count = origin.read(data, 0, BUFFER)) != -1) {
					out.write(data, 0, count);
				}
				origin.close();
			}
			out.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	/**
	 * The main method.
	 *
	 * @param args the arguments
	 */
	public static void main(String[] args) {
		JasperReport jasperReport;
		JasperPrint jasperPrint;

		long start = System.currentTimeMillis();

		try {
			// Log log4j configuration
			final Properties log4jProperties = new Properties();
			log4jProperties.load(new FileInputStream(&quot;etc/log4j.properties&quot;));
			PropertyConfigurator.configure(log4jProperties);

			LOG.info(&quot;Start&quot;);
			LOG.info(&quot;--------&quot;);

			LOG.info(&quot;Compile Jasper XML Report&quot;);
			jasperReport = JasperCompileManager.compileReport(&quot;src/test.jrxml&quot;);
			LOG.info(&quot;time : &quot; + (System.currentTimeMillis() - start)+ &quot; ms.&quot;);

			LOG.info(&quot;Create Database connection&quot;);
			ConnectDatabase();
			LOG.info(&quot;time : &quot; + (System.currentTimeMillis() - start)+ &quot; ms.&quot;);

			LOG.info(&quot;Create parameters&quot;);
			Map &lt;String, Object&gt; parameters = new HashMap&lt;String, Object&gt;();
			parameters.put(&quot;ReportTitle&quot;, &quot;User Report&quot;);
			parameters.put(&quot;DataFile&quot;, &quot;src/test1.jrxml&quot;);
			parameters.put(&quot;IdRange&quot;, 10);	

			LOG.info(&quot;Generated report&quot;);
			jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, connection);
			LOG.info(&quot;time : &quot; + (System.currentTimeMillis() - start)+ &quot; ms.&quot;);

			LOG.info(&quot;Generated PDF&quot;);
			JasperExportManager.exportReportToPdfFile(jasperPrint, &quot;src/test.pdf&quot;);
			LOG.info(&quot;time : &quot; + (System.currentTimeMillis() - start)+ &quot; ms.&quot;);

			LOG.info(&quot;Create Zip File&quot;);
			fileZip();
			LOG.info(&quot;time : &quot; + (System.currentTimeMillis() - start)+ &quot; ms.&quot;);

		} catch (Exception e) {
			e.printStackTrace();
		}
		LOG.info(&quot;--------&quot;);
		LOG.info(&quot;Done&quot;);
	}
}
</pre>
<p>JaspersReports test.jrxml (Report template) file.</p>
<pre class="brush: xml;">
&lt;?xml version=&quot;1.0&quot;?&gt;

&lt;jasperReport
		xmlns=&quot;http://jasperreports.sourceforge.net/jasperreports&quot;
		xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
		xsi:schemaLocation=&quot;http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd&quot;
		name=&quot;User Overview&quot; pageWidth=&quot;595&quot; pageHeight=&quot;842&quot; columnWidth=&quot;515&quot; leftMargin=&quot;40&quot; rightMargin=&quot;40&quot; topMargin=&quot;50&quot; bottomMargin=&quot;50&quot;&gt;

	&lt;style name=&quot;Sans_Bold&quot; isDefault=&quot;false&quot; fontName=&quot;DejaVu Sans&quot; fontSize=&quot;8&quot; isBold=&quot;true&quot; isItalic=&quot;false&quot; isUnderline=&quot;false&quot; isStrikeThrough=&quot;false&quot;/&gt;
	&lt;style name=&quot;Sans_Normal&quot; isDefault=&quot;true&quot; fontName=&quot;DejaVu Sans&quot; fontSize=&quot;8&quot; isBold=&quot;false&quot; isItalic=&quot;false&quot; isUnderline=&quot;false&quot; isStrikeThrough=&quot;false&quot;/&gt;
	&lt;style name=&quot;Title&quot; style=&quot;Sans_Bold&quot; fontSize=&quot;12&quot;/&gt;
	&lt;style name=&quot;ColumnHeader&quot; style=&quot;Sans_Bold&quot; forecolor=&quot;white&quot;/&gt;

	&lt;parameter name=&quot;ReportTitle&quot; class=&quot;java.lang.String&quot;&gt;&lt;/parameter&gt;
	&lt;parameter name=&quot;DataFile&quot; class=&quot;java.lang.String&quot;&gt;&lt;/parameter&gt;
	&lt;parameter name=&quot;IdRange&quot; class=&quot;java.lang.Integer&quot;&gt;&lt;/parameter&gt;

	&lt;queryString&gt;&lt;![CDATA[SELECT id, displaynaam, puik_id FROM gebruiker WHERE id &lt;=$P{IdRange} order by id]]&gt;&lt;/queryString&gt;
	&lt;field name=&quot;id&quot; class=&quot;java.lang.Integer&quot;/&gt;
	&lt;field name=&quot;displaynaam&quot; class=&quot;java.lang.String&quot;/&gt;
	&lt;field name=&quot;puik_id&quot; class=&quot;java.lang.String&quot;/&gt;

	&lt;title&gt;
		&lt;band height=&quot;70&quot;&gt;
			&lt;line&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;0&quot; width=&quot;515&quot; height=&quot;1&quot;/&gt;
				&lt;graphicElement/&gt;
			&lt;/line&gt;
			&lt;textField isBlankWhenNull=&quot;true&quot; bookmarkLevel=&quot;1&quot;&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;10&quot; width=&quot;515&quot; height=&quot;30&quot; style=&quot;Sans_Normal&quot;/&gt;
				&lt;textElement textAlignment=&quot;Center&quot;&gt;
					&lt;font size=&quot;22&quot;/&gt;
				&lt;/textElement&gt;
				&lt;textFieldExpression class=&quot;java.lang.String&quot;&gt;&lt;![CDATA[$P{ReportTitle}]]&gt;&lt;/textFieldExpression&gt;
				&lt;anchorNameExpression&gt;&lt;![CDATA[&quot;Title&quot;]]&gt;&lt;/anchorNameExpression&gt;
			&lt;/textField&gt;
			&lt;textField isBlankWhenNull=&quot;true&quot;&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;40&quot; width=&quot;515&quot; height=&quot;20&quot; style=&quot;Sans_Normal&quot;/&gt;
				&lt;textElement textAlignment=&quot;Center&quot;&gt;
					&lt;font size=&quot;14&quot;/&gt;
				&lt;/textElement&gt;
				&lt;textFieldExpression class=&quot;java.lang.String&quot;&gt;&lt;![CDATA[$P{DataFile}]]&gt;&lt;/textFieldExpression&gt;
			&lt;/textField&gt;
		&lt;/band&gt;

	&lt;/title&gt;

	&lt;pageHeader&gt;
		&lt;band height=&quot;15&quot;&gt;
			&lt;frame&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;0&quot; width=&quot;555&quot; height=&quot;15&quot; mode=&quot;Opaque&quot; backcolor=&quot;black&quot;/&gt;
				&lt;staticText&gt;
					&lt;reportElement x=&quot;5&quot; y=&quot;0&quot; width=&quot;155&quot; height=&quot;15&quot; style=&quot;ColumnHeader&quot;/&gt;
					&lt;textElement verticalAlignment=&quot;Middle&quot; textAlignment=&quot;Left&quot;/&gt;
					&lt;text&gt;Id&lt;/text&gt;
				&lt;/staticText&gt;
				&lt;staticText&gt;
					&lt;reportElement x=&quot;125&quot; y=&quot;0&quot; width=&quot;100&quot; height=&quot;15&quot; style=&quot;ColumnHeader&quot;/&gt;
					&lt;textElement verticalAlignment=&quot;Middle&quot;/&gt;
					&lt;text&gt;Displaynaam&lt;/text&gt;
				&lt;/staticText&gt;
				&lt;staticText&gt;
					&lt;reportElement x=&quot;270&quot; y=&quot;0&quot; width=&quot;60&quot; height=&quot;15&quot; style=&quot;ColumnHeader&quot;/&gt;
					&lt;textElement verticalAlignment=&quot;Middle&quot; textAlignment=&quot;Left&quot;/&gt;
					&lt;text&gt;PuikId&lt;/text&gt;
				&lt;/staticText&gt;
				&lt;/frame&gt;
		&lt;/band&gt;
	&lt;/pageHeader&gt;

 &lt;detail&gt;
 	&lt;band height=&quot;15&quot;&gt;
			&lt;frame&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;0&quot; width=&quot;555&quot; height=&quot;15&quot; /&gt;
				&lt;textField&gt;
					&lt;reportElement x=&quot;5&quot; y=&quot;0&quot; width=&quot;155&quot; height=&quot;15&quot;/&gt;
					&lt;textElement verticalAlignment=&quot;Middle&quot; textAlignment=&quot;Left&quot;/&gt;
					&lt;textFieldExpression&gt;$F{id}.toString()&lt;/textFieldExpression&gt;
				&lt;/textField&gt;
				&lt;textField&gt;
					&lt;reportElement x=&quot;125&quot; y=&quot;0&quot; width=&quot;100&quot; height=&quot;15&quot;/&gt;
					&lt;textElement verticalAlignment=&quot;Middle&quot;/&gt;
					&lt;textFieldExpression&gt;$F{displaynaam}&lt;/textFieldExpression&gt;
				&lt;/textField&gt;
				&lt;textField pattern=&quot;#,###.00&quot;&gt;
					&lt;reportElement x=&quot;270&quot; y=&quot;0&quot; width=&quot;60&quot; height=&quot;15&quot;/&gt;
					&lt;textElement verticalAlignment=&quot;Middle&quot; textAlignment=&quot;Left&quot;/&gt;
					&lt;textFieldExpression&gt;$F{puik_id}&lt;/textFieldExpression&gt;
				&lt;/textField&gt;
			&lt;/frame&gt;
		&lt;/band&gt;
  &lt;/detail&gt;

  &lt;pageFooter&gt;
		&lt;band height=&quot;40&quot;&gt;
			&lt;line&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;10&quot; width=&quot;515&quot; height=&quot;1&quot;/&gt;
				&lt;graphicElement/&gt;
			&lt;/line&gt;
			&lt;textField&gt;
				&lt;reportElement x=&quot;200&quot; y=&quot;20&quot; width=&quot;80&quot; height=&quot;15&quot;/&gt;
				&lt;textElement textAlignment=&quot;Right&quot;/&gt;
				&lt;textFieldExpression class=&quot;java.lang.String&quot;&gt;&lt;![CDATA[&quot;Page &quot; + String.valueOf($V{PAGE_NUMBER}) + &quot; of&quot;]]&gt;&lt;/textFieldExpression&gt;
			&lt;/textField&gt;
			&lt;textField evaluationTime=&quot;Report&quot;&gt;
				&lt;reportElement x=&quot;280&quot; y=&quot;20&quot; width=&quot;75&quot; height=&quot;15&quot;/&gt;
				&lt;textElement/&gt;
				&lt;textFieldExpression class=&quot;java.lang.String&quot;&gt;&lt;![CDATA[&quot; &quot; + String.valueOf($V{PAGE_NUMBER})]]&gt;&lt;/textFieldExpression&gt;
			&lt;/textField&gt;
		&lt;/band&gt;
	&lt;/pageFooter&gt;

	&lt;lastPageFooter&gt;
		&lt;band height=&quot;60&quot;&gt;
			&lt;textField bookmarkLevel=&quot;1&quot;&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;10&quot; width=&quot;515&quot; height=&quot;15&quot;/&gt;
				&lt;textElement textAlignment=&quot;Center&quot;/&gt;
				&lt;textFieldExpression class=&quot;java.lang.String&quot;&gt;&lt;![CDATA[&quot;There were &quot; +
					String.valueOf($V{REPORT_COUNT}) +
					&quot; address records on this report.&quot;]]&gt;&lt;/textFieldExpression&gt;
				&lt;anchorNameExpression&gt;&lt;![CDATA[&quot;Summary&quot;]]&gt;&lt;/anchorNameExpression&gt;
			&lt;/textField&gt;
			&lt;line&gt;
				&lt;reportElement x=&quot;0&quot; y=&quot;30&quot; width=&quot;515&quot; height=&quot;1&quot;/&gt;
				&lt;graphicElement/&gt;
			&lt;/line&gt;
			&lt;textField&gt;
				&lt;reportElement x=&quot;200&quot; y=&quot;40&quot; width=&quot;80&quot; height=&quot;15&quot;/&gt;
				&lt;textElement textAlignment=&quot;Right&quot;/&gt;
				&lt;textFieldExpression class=&quot;java.lang.String&quot;&gt;&lt;![CDATA[&quot;Page &quot; + String.valueOf($V{PAGE_NUMBER}) + &quot; of&quot;]]&gt;&lt;/textFieldExpression&gt;
			&lt;/textField&gt;
			&lt;textField evaluationTime=&quot;Report&quot;&gt;
				&lt;reportElement x=&quot;280&quot; y=&quot;40&quot; width=&quot;75&quot; height=&quot;15&quot;/&gt;
				&lt;textElement/&gt;
				&lt;textFieldExpression class=&quot;java.lang.String&quot;&gt;&lt;![CDATA[&quot; &quot; + String.valueOf($V{PAGE_NUMBER})]]&gt;&lt;/textFieldExpression&gt;
			&lt;/textField&gt;
		&lt;/band&gt;
	&lt;/lastPageFooter&gt;

&lt;/jasperReport&gt;
</pre>
<p>Log4j.properties file</p>
<pre class="brush: java;">
log4j.rootLogger=INFO, console, logfile
log4j.appender.logfile.File=../log/test.log

# Appender to log4j.log
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.MaxFileSize=1000KB
log4j.appender.logfile.MaxBackupIndex=9
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{dd-MM-yyyy HH:mm:ss,SSS} %-5p (%c:%L) - %M: %m%n
log4j.appender.logfile.Append=true

# Appender to Console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{dd-MM-yyyy HH:mm:ss,SSS} %-5p (%c:%L) - %M: %m%n
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/jasperreports-basic-example/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RedSquare 25.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/redsquare-25000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/redsquare-25000-downloads/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 12:50:42 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[RedSquare]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3282</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>Since the launch of RedSquare it is downloaded over 25.000 times.</p>
<p>Official Count</p>



Homebrew Browser
21.806 times [place 110]


My website
2.771 times


Google Code website
423 times


Total
25.000 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>Since the launch of RedSquare it is downloaded over 25.000 times.</p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>21.806 times [place 110]</td>
</tr>
<tr>
<td>My website</td>
<td>2.771 times</td>
</tr>
<tr>
<td>Google Code website</td>
<td>423 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>25.000 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/redsquare-25000-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SpaceBubble 30.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/spacebubble-30000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/spacebubble-30000-downloads/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 06:00:37 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[SpaceBubble]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3276</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>Since the launch of SpaceBubble, it is downloaded over 30.000 times. </p>
<p>Official Count</p>



Homebrew Browser
27.089 times [place 86]


My website
 2.594 times


Google Code Website
462 times


Total
30.145 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>Since the launch of SpaceBubble, it is downloaded over 30.000 times. </p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>27.089 times [place 86]</td>
</tr>
<tr>
<td>My website</td>
<td> 2.594 times</td>
</tr>
<tr>
<td>Google Code Website</td>
<td>462 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>30.145 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/spacebubble-30000-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Releasing RedSquare 0.96</title>
		<link>http://www.plaatsoft.nl/wiibrew/releasing-redsquare-096/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/releasing-redsquare-096/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 18:50:48 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[RedSquare]]></category>
		<category><![CDATA[v0.96]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3262</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>This evening RedSquare 0.96 is released by PlaatSoft. The following changes were made:</p>
<p>02-03-2009 Version 0.96
GUI:
- Improve local high score screen. Add score stars.
- Improve game over screen. Add score stars.
- Added three extra game settings buttons.
- Improve square images.
- Update menu screen information.
- Disable Wii DVD light thread. Not stable.
Core:
- Added support for maximum four [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>This evening RedSquare 0.96 is released by PlaatSoft. The following changes were made:</p>
<p><strong>02-03-2009 Version 0.96</strong><br />
GUI:<br />
- Improve local high score screen. Add score stars.<br />
- Improve game over screen. Add score stars.<br />
- Added three extra game settings buttons.<br />
- Improve square images.<br />
- Update menu screen information.<br />
- Disable Wii DVD light thread. Not stable.<br />
Core:<br />
- Added support for maximum four concurrent players.<br />
- Added game level: Easy, Medium and Hard.<br />
- Gameboard border size is now related to selected game level.<br />
- Amount of blue squares is now related to selected game level.<br />
- Start position of blue squares can now be randomized.<br />
- Enable A and B button to select red square during game.<br />
- Press Home button to go back to the main menu.<br />
General:<br />
- Added screenshots to source code documentation.<br />
- Improve debug trace information.<br />
- Build game with devkitPPC r19 compiler.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/releasing-redsquare-096/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>TowerDefense 30.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/towerdefense-30000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/towerdefense-30000-downloads/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 21:15:33 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3274</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of Wii TowerDefense, it is downloaded over 30.000 times. </p>
<p>On this moment this game is on the third place of best ranked Wii Homebrew games. Thanks for this great rating!</p>
<p>Official Count</p>



Homebrew Browser 
27.585 times


My website
2.129 times


Google Code website
287 times


Total
30.001 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of Wii TowerDefense, it is downloaded over 30.000 times. </p>
<blockquote><p><em>On this moment this game is on the third place of best ranked Wii Homebrew games. Thanks for this great rating!</em></p></blockquote>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser </td>
<td>27.585 times</td>
</tr>
<tr>
<td>My website</td>
<td>2.129 times</td>
</tr>
<tr>
<td>Google Code website</td>
<td>287 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>30.001 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/towerdefense-30000-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Website upgrade</title>
		<link>http://www.plaatsoft.nl/wiibrew/website-upgrade-9/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/website-upgrade-9/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 15:00:50 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3238</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This evening I have upgraded my website.</p>
<p>The following changes were implemented:
- Upgrade to WordPress 2.9.2
- Upgrade all used plugins to latest available version.
- Improve menu structure</p>
]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This evening I have upgraded my website.</p>
<p>The following changes were implemented:<br />
- Upgrade to WordPress 2.9.2<br />
- Upgrade all used plugins to latest available version.<br />
- Improve menu structure</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/website-upgrade-9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pong2 40.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/pong2-40000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/pong2-40000-downloads/#comments</comments>
		<pubDate>Sat, 20 Feb 2010 07:00:05 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[Pong2]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2984</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/pong2-icon.jpg" width="32" height="24" alt="" title="Pong2" /><br/><p>Today Pong2 is downloaded for more the 40.000 times. Many thanks to all the pong players in the world.</p>
<p>Download count</p>



Homebrew Browser
36.482 times [place 56]


My Web Site
3.208 times


Google code site
311 times


Total
40.001 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/pong2-icon.jpg" width="32" height="24" alt="" title="Pong2" /><br/><p>Today Pong2 is downloaded for more the 40.000 times. Many thanks to all the pong players in the world.</p>
<p><strong>Download count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>36.482 times [place 56]</td>
</tr>
<tr>
<td>My Web Site</td>
<td>3.208 times</td>
</tr>
<tr>
<td>Google code site</td>
<td>311 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>40.001 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/pong2-40000-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nintendo DS in toilet</title>
		<link>http://www.plaatsoft.nl/wiibrew/nintendo-ds-in-toilet/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/nintendo-ds-in-toilet/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 19:11:42 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[damage]]></category>
		<category><![CDATA[DS]]></category>
		<category><![CDATA[Nintendo]]></category>
		<category><![CDATA[toilet]]></category>
		<category><![CDATA[water]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3247</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This evening my three year old son drop accidentally my Nintendo DS in the toilet.   Too bad, I was not at home so my wife tried to dry it and switch it on again. Only the upper screen lighted up and after a few seconds the DS died. Is it possible to repair [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This evening my three year old son drop accidentally my Nintendo DS in the toilet.  <img src='http://www.plaatsoft.nl/wiibrew/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> Too bad, I was not at home so my wife tried to dry it and switch it on again. Only the upper screen lighted up and after a few seconds the DS died. Is it possible to repair a Nintendo DS with water damage? Reaction are welcome!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/nintendo-ds-in-toilet/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Released SpaceBubble 0.94</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-spacebubble-0-94/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-spacebubble-0-94/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 17:51:57 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[SpaceBubble]]></category>
		<category><![CDATA[v0.94]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3242</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>This evening SpaceBubble 0.94 is released by PlaatSoft. The following changes were made:</p>
<p>17-02-2010 Version 0.94
GUI:
- Improve game settings screen.
- Added donate screen.
- Update main menu screen information.
- Improve bubble graphics.
Core:
- Extend user name from 3 to 6 characters.
- Default user name is based on Wii nickname.
- Increase http buffer size from 8kb to 10kb.
General:
- Added [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>This evening SpaceBubble 0.94 is released by PlaatSoft. The following changes were made:</p>
<p><strong>17-02-2010 Version 0.94</strong><br />
GUI:<br />
- Improve game settings screen.<br />
- Added donate screen.<br />
- Update main menu screen information.<br />
- Improve bubble graphics.<br />
Core:<br />
- Extend user name from 3 to 6 characters.<br />
- Default user name is based on Wii nickname.<br />
- Increase http buffer size from 8kb to 10kb.<br />
General:<br />
- Added source code to Google Code Repository<br />
- Added source code documentation (Javadoc style).<br />
- Added Doxygen (automatic documentation generation tool) config file.<br />
- Build game with devkitPPC r19 compiler.</p>
<p>If anybody has a good idea how to improve this game, please post a comment</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-spacebubble-0-94/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Released RedSquare 0.95</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-redsquare-0-95/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-redsquare-0-95/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 20:07:11 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[RedSquare]]></category>
		<category><![CDATA[v0.95]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3235</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>This evening RedSquare 0.95 is released by PlaatSoft. The following changes were made:</p>
<p>11-02-2010 Version 0.95
GUI:
- Added Wii DVD light effects to game.
- Improve game settings screen.
- Added donate screen.
- Added scrollbar to highscore and release notes screens.
- The 100ste highest local scores are showed.
- The 40ste highest today and global high scores are showed.
- Added [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>This evening RedSquare 0.95 is released by PlaatSoft. The following changes were made:</p>
<p><strong>11-02-2010 Version 0.95</strong><br />
GUI:<br />
- Added Wii DVD light effects to game.<br />
- Improve game settings screen.<br />
- Added donate screen.<br />
- Added scrollbar to highscore and release notes screens.<br />
- The 100ste highest local scores are showed.<br />
- The 40ste highest today and global high scores are showed.<br />
- Added to most screens network status information.<br />
Core:<br />
- Extend user name from 3 to 6 characters.<br />
- Default user name is based on Wii nickname.<br />
- Increase http buffer size from 8kb to 10kb.<br />
- Bug fix: Http thread memory cleanup was not correctly executed.<br />
General:<br />
- Added source code to Google Code repository.<br />
- Added source code documentation (Javadoc style).<br />
- With the doxygen tool the documentation can be generated.<br />
- Build game with devkitPPC r19 compiler.</p>
<p>If anybody has a good idea how to improve this game, please post a comment</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-redsquare-0-95/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>TowerDefense 25.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/towerdefense-25000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/towerdefense-25000-downloads/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 19:00:37 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3156</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of Wii TowerDefense, it is downloaded over 25.000 times. </p>
<p>Official Count</p>



Homebrew Browser
22.832 times


My website
2.093 times


Google Code website
77 times


Total
25.002 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of Wii TowerDefense, it is downloaded over 25.000 times. </p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>22.832 times</td>
</tr>
<tr>
<td>My website</td>
<td>2.093 times</td>
</tr>
<tr>
<td>Google Code website</td>
<td>77 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>25.002 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/towerdefense-25000-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Released TowerDefense 0.94</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-towerdefense-094/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-towerdefense-094/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 18:19:48 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[v0.94]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3203</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.94. The following changes were made:</p>
<p>05-02-2010 Version 0.94
GUI:
- Improve video initialization.
- Overall FPS has improved 50 percent. Thanks Crayon.
- Lots of other small GUI changes.
Core:
- Mixed the weapon fire mode a little bit more!
- Nuke is 500 dollar cheaper!
- Increase http buffer size to 10Kb.
General:
- Added inline source code remarks in [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.94. The following changes were made:</p>
<p><strong>05-02-2010 Version 0.94</strong><br />
GUI:<br />
- Improve video initialization.<br />
- Overall FPS has improved 50 percent. Thanks Crayon.<br />
- Lots of other small GUI changes.<br />
Core:<br />
- Mixed the weapon fire mode a little bit more!<br />
- Nuke is 500 dollar cheaper!<br />
- Increase http buffer size to 10Kb.<br />
General:<br />
- Added inline source code remarks in javadoc style.<br />
- Use Doxygen (windows tool) to create HTML source code documentation.<br />
- Use GrrLib 4.2.1 BETA library (Now native FreeType support available).<br />
- Build game with devkitPPC r19 compiler.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-towerdefense-094/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Building KnightsQuest 0.10</title>
		<link>http://www.plaatsoft.nl/wiibrew/building-knightsquest-010/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/building-knightsquest-010/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 20:07:50 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[KnightsQuest]]></category>
		<category><![CDATA[v0.10]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3189</guid>
		<description><![CDATA[<br/><p>Hello everybody,</p>
<p>Because TowerDefense is almost finished i have started a new project. This week I have decided to create KnightsQuest. KnightsQuest is a strategic game. The goal is to build up an empire and destroy all other kingdoms. If you have conquered the hole world you have won. The graphics engine will be based on [...]]]></description>
			<content:encoded><![CDATA[<br/><p>Hello everybody,</p>
<p>Because TowerDefense is almost finished i have started a new project. This week I have decided to create KnightsQuest. KnightsQuest is a strategic game. The goal is to build up an empire and destroy all other kingdoms. If you have conquered the hole world you have won. The graphics engine will be based on the GRRLIB library. I hope that round the summer holidays the first beta release will be available.</p>
<p><strong>04-02-2010 Version 0.10</strong><br />
- Started programming in C++.<br />
- Finding free graphics for game.<br />
- Setup basic directory structure for new project.<br />
- Store source code in Google code SVN repository.</p>
<p>Please checkout my website regular for more news about this game. Comments are always welcome!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/building-knightsquest-010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Wii firmware upgrade 3.0e-&gt;4.2e</title>
		<link>http://www.plaatsoft.nl/wiibrew/wii-firmware-upgrade-30e-42e/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/wii-firmware-upgrade-30e-42e/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 18:11:36 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Firmware]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3177</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This evening I have upgraded my friends Wii firmware from version 3.0e to 4.2e. Before I upgraded the Wii firmware I first installed the Homebrew channel (1.0.6) and hidden DVDx channel with the Bannerbomb exploit. This hack is really easy. It took my only 5 minutes to complete all steps. After that I successful upgraded [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This evening I have upgraded my friends Wii firmware from version 3.0e to 4.2e. Before I upgraded the Wii firmware I first installed the Homebrew channel (1.0.6) and hidden DVDx channel with the Bannerbomb exploit. This hack is really easy. It took my only 5 minutes to complete all steps. After that I successful upgraded the Wii firmware to 4.2e and installed all (new) available Nintendo channels through the Wii shopping channel. This took about 45 minutes. </p>
<blockquote><p>Conclusion: Installing the Homebrew and DVDx channel was never so easy. I hope lots of other Wii owners will upgrade there Wii and will explore the world of free Homebrew software. <img src='http://www.plaatsoft.nl/wiibrew/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/wii-firmware-upgrade-30e-42e/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Source code documentation</title>
		<link>http://www.plaatsoft.nl/wiibrew/source-code-documentation/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/source-code-documentation/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 21:00:59 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3165</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>Latest week I have added to all my Wii projects extra source code documentation based on javadoc notation style. With doxygen (Doxygen is a documentation system for C++, C, Java, Objective-C, and lots of other programming languages) i have created HTML documentation. This documentation is added to the Google SVN repositories. I hope this will [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>Latest week I have added to all my Wii projects extra source code documentation based on javadoc notation style. With doxygen (Doxygen is a documentation system for C++, C, Java, Objective-C, and lots of other programming languages) i have created HTML documentation. This documentation is added to the Google SVN repositories. I hope this will help you to understand the source code better. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/source-code-documentation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ohloh membership</title>
		<link>http://www.plaatsoft.nl/wiibrew/ohloh-membership/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/ohloh-membership/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 21:38:21 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[ohloh]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3126</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>Hi,  As you maybe already notest i have joined the Ohloh community. Some kind of Facebook community for open source projects. Most large open source projects (for example Firefox, Gcc, Bash, subversion, Apache, etc.) have joined this great community. It would be really nice that you give me some credits for my work in [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>Hi,  As you maybe already notest i have joined the Ohloh community. Some kind of Facebook community for open source projects. Most large open source projects (for example Firefox, Gcc, Bash, subversion, Apache, etc.) have joined this great community. It would be really nice that you give me some credits for my work in this community. So if you like the developed software, join the ohloh community and click on the &#8220;I USE THIS&#8221; button located on the detail project pages. <img src='http://www.plaatsoft.nl/wiibrew/wp-includes/images/smilies/icon_lol.gif' alt=':lol:' class='wp-smiley' /> </p>
<p>Many thanks in advance. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/ohloh-membership/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>TowerDefense 20.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/towerdefense-20000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/towerdefense-20000-downloads/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 19:20:11 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3090</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of TowerDefense, it is downloaded over 20.000 times. Wow! .   So a very special thanks to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p>Official Count</p>



Homebrew Browser
18.286 times


My website
1.682 times


Google Code Website
45 times


Total
20.013 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of TowerDefense, it is downloaded over 20.000 times. Wow! <img class="wp-smiley" src="http://www.jobberbase.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" />.   So a very special <em>thanks</em> to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>18.286 times</td>
</tr>
<tr>
<td>My website</td>
<td>1.682 times</td>
</tr>
<tr>
<td>Google Code Website</td>
<td>45 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>20.013 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/towerdefense-20000-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Released TowerDefense 0.93</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-towerdefense-0-93/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-towerdefense-0-93/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 21:50:52 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[v0.93]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3087</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.93. The following changes were made:</p>
<p>22-01-2010 Version 0.93
GUI:
- Added weapon fire mode information on weapon help screen.
- Improve weapon reload delay initialisation.
- Added donate screen.
- Bugfix: Weapon fire sprites were 22 degree misaligned.
Core:
- Introduce different weapon fire modes.
- Fire at enemy in range nearest to base (Gun / Rifle)
- Fire at [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.93. The following changes were made:</p>
<p><strong>22-01-2010 Version 0.93</strong><br />
GUI:<br />
- Added weapon fire mode information on weapon help screen.<br />
- Improve weapon reload delay initialisation.<br />
- Added donate screen.<br />
- Bugfix: Weapon fire sprites were 22 degree misaligned.<br />
Core:<br />
- Introduce different weapon fire modes.<br />
- Fire at enemy in range nearest to base (Gun / Rifle)<br />
- Fire at enemy in range with highest energy level (Cannon / Missile)<br />
- Fire at fastest enemy in range (Laser / Nuke)<br />
- Rebalance weapon specifications. Mix features more!<br />
- Optimised some draw methods for beter performance. Thanks Crayon.<br />
General:<br />
- Build game with devkitPPC r19 compiler.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-towerdefense-0-93/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>RedSquare 20.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/redsquare-20000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/redsquare-20000-downloads/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 16:20:59 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[RedSquare]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2981</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>Since the launch of RedSquare it was downloaded over 20.000 times. Wow! .   So a very special thanks to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p>Official Count</p>



Homebrew Browser
17.062 times


My website
2,730 times


Google Code website
212 times


Total
20.004 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>Since the launch of RedSquare it was downloaded over 20.000 times. Wow! <img class="wp-smiley" src="http://www.jobberbase.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" />.   So a very special <em>thanks</em> to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>17.062 times</td>
</tr>
<tr>
<td>My website</td>
<td>2,730 times</td>
</tr>
<tr>
<td>Google Code website</td>
<td>212 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>20.004 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/redsquare-20000-downloads/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SpaceBubble 25.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/spacebubble-25-000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/spacebubble-25-000-downloads/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 16:20:29 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[SpaceBubble]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2976</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>Since the launch of SpaceBubble, it is downloaded over 25.000 times. Wow! .   So a very special thanks to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p>Official Count</p>



Homebrew Browser
22.532 times


My website
2.571 times


Google Code Website
253 times


Total
25.356 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>Since the launch of SpaceBubble, it is downloaded over 25.000 times. Wow! <img class="wp-smiley" src="http://www.jobberbase.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" />.   So a very special <em>thanks</em> to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>22.532 times</td>
</tr>
<tr>
<td>My website</td>
<td>2.571 times</td>
</tr>
<tr>
<td>Google Code Website</td>
<td>253 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>25.356 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/spacebubble-25-000-downloads/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Released TowerDefense 0.92</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-towerdefense-0-92/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-towerdefense-0-92/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 22:22:00 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[v0.92]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3049</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.92. The following changes were made:</p>
<p>16-01-2010 Version 0.92
GUI:
- Added 6 animated weapons. Thanks Applicant!
- Improve enemy animated sprite frame sequence.
- Improve help and level select screens.
- Lots of other small changes.
Core:
- Weapons now fire on strongest enemy in range.
- Increase bonus money when wave is cleared.
- Increase initial weapon power.
- Decrease [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.92. The following changes were made:</p>
<p><strong>16-01-2010 Version 0.92</strong><br />
GUI:<br />
- Added 6 animated weapons. Thanks Applicant!<br />
- Improve enemy animated sprite frame sequence.<br />
- Improve help and level select screens.<br />
- Lots of other small changes.<br />
Core:<br />
- Weapons now fire on strongest enemy in range.<br />
- Increase bonus money when wave is cleared.<br />
- Increase initial weapon power.<br />
- Decrease weapon prices.<br />
- Added weapon sell functionality with minus button.<br />
- User initials are now default based on Wii nickname.<br />
- Bugfix: Monsters can not be shooted before launch.<br />
- Build game with devkitPPC r19 compiler.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-towerdefense-0-92/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>TowerDefense 15.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/towerdefense-15000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/towerdefense-15000-downloads/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 05:00:12 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2943</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of TowerDefense, it is downloaded over 15.000 times. Wow! .   So a very special thanks to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p>Official Count</p>



Homebrew Browser
13.603 times


My website
1.172 times


Google Code Website
226 times


Total
15.001 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of TowerDefense, it is downloaded over 15.000 times. Wow! <img class="wp-smiley" src="http://www.jobberbase.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" />.   So a very special <em>thanks</em> to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>13.603 times</td>
</tr>
<tr>
<td>My website</td>
<td>1.172 times</td>
</tr>
<tr>
<td>Google Code Website</td>
<td>226 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>15.001 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/towerdefense-15000-downloads/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>GRRLIB 4.2.X Freetype support</title>
		<link>http://www.plaatsoft.nl/wiibrew/grrlib-4-2-x-freetype-support/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/grrlib-4-2-x-freetype-support/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 20:47:21 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Freetype]]></category>
		<category><![CDATA[grrlib]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=3003</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/development-icon.jpg" width="32" height="24" alt="" title="Development" /><br/><p>In this post i have add information how to add freetype library support to the GRRLIB 4.2.X library</p>
<p>GRRLIB_free_print.h</p>

void GRRLIB_InitFreetype();

void GRRLIB_initTexture(void);

void GRRLIB_Printf2(	int x,
							int y,
							const char *string,
							unsigned int fontSize,
							int color); 

GRRLIB_texImg* GRRLIB_GetTexture(void);

<p>GRRLIB_free_print.c</p>

#include &#60;malloc.h&#62;
#include &#60;stdarg.h&#62;
#include &#60;stdio.h&#62;

#include &#60;grrlib.h&#62;

#include &#60;ft2build.h&#62; /* I presume you have freetype for the Wii installed */
#include FT_FREETYPE_H

#include &#34;font_ttf.h&#34;

static FT_Library ftLibrary;
static FT_Face ftFace;

void *fontTempLayer=NULL;
void *fontTexture=NULL;
GRRLIB_texImg image;

extern [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/development-icon.jpg" width="32" height="24" alt="" title="Development" /><br/><p>In this post i have add information how to add freetype library support to the GRRLIB 4.2.X library</p>
<p><strong>GRRLIB_free_print.h</strong></p>
<pre class="brush: cpp;">
void GRRLIB_InitFreetype();

void GRRLIB_initTexture(void);

void GRRLIB_Printf2(	int x,
							int y,
							const char *string,
							unsigned int fontSize,
							int color); 

GRRLIB_texImg* GRRLIB_GetTexture(void);
</pre>
<p><strong>GRRLIB_free_print.c</strong></p>
<pre class="brush: cpp;">
#include &lt;malloc.h&gt;
#include &lt;stdarg.h&gt;
#include &lt;stdio.h&gt;

#include &lt;grrlib.h&gt;

#include &lt;ft2build.h&gt; /* I presume you have freetype for the Wii installed */
#include FT_FREETYPE_H

#include &quot;font_ttf.h&quot;

static FT_Library ftLibrary;
static FT_Face ftFace;

void *fontTempLayer=NULL;
void *fontTexture=NULL;
GRRLIB_texImg image;

extern  Mtx                  GXmodelView2D;

/* Static function prototypes */
static void BitmapTo4x4RGBA(const unsigned char *src, void *dst, const unsigned int width, const unsigned int height);
static bool BlitGlyph(FT_Bitmap *bitmap, int offset, int top, int color) ;

void GRRLIB_InitFreetype(void)
{
	unsigned int error = FT_Init_FreeType(&amp;ftLibrary);
	if (error)
	{
		exit(0);
	}

	error = FT_New_Memory_Face(ftLibrary, font_ttf, font_ttf_size, 0, &amp;ftFace);
	if (error == FT_Err_Unknown_File_Format)
	{
		exit(0);
	}
	else if (error)
	{
		/* Some other error */
		exit(0);
	}
}

void GRRLIB_initTexture(void)
{
   // Clear previous video frame buffer
   if (fontTexture!=NULL) free(fontTexture);

   fontTempLayer = (void*) calloc(1, 640 * 528 * 4);

   if (fontTempLayer == NULL)
   {
	  /* Oops! Something went wrong! */
	  exit(0);
   }
}

void GRRLIB_Printf2(int x, int y, const char *string, unsigned int fontSize, int color)
{
	unsigned int error = 0;
	int penX = 0;
	int penY = fontSize;
	FT_GlyphSlot slot = ftFace-&gt;glyph;
	FT_UInt glyphIndex = 0;
	FT_UInt previousGlyph = 0;
	FT_Bool hasKerning = FT_HAS_KERNING(ftFace);

    error = FT_Set_Pixel_Sizes(ftFace, 0, fontSize);
	if (error)
	{
		/* Failed to set the font size to the requested size.
		 * You probably should set a default size or something.
		 * I'll leave that up to the reader. */
		 FT_Set_Pixel_Sizes(ftFace, 0, 12);
	}

	/* Convert the string to UTF32 */
	size_t length = strlen(string);
	wchar_t *utf32 = (wchar_t*)malloc(length * sizeof(wchar_t));
	length = mbstowcs(utf32, string, length);

	/* Loop over each character, drawing it on to the 4, until the
	 * end of the string is reached, or until the pixel width is too wide */
	unsigned int loop = 0;
	for (loop = 0; loop &lt; length; ++loop)
    {
		glyphIndex = FT_Get_Char_Index(ftFace, utf32[ loop ]);

		/* To the best of my knowledge, none of the other freetype
		 * implementations use kerning, so my method ends up looking
		 * slightly better <img src='http://www.plaatsoft.nl/wiibrew/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> */
		if (hasKerning &amp;&amp; previousGlyph &amp;&amp; glyphIndex)
		{
			FT_Vector delta;
			FT_Get_Kerning(ftFace, previousGlyph, glyphIndex, FT_KERNING_DEFAULT, &amp;delta);
			penX += delta.x &gt;&gt; 6;
		}

		error = FT_Load_Glyph(ftFace, glyphIndex, FT_LOAD_RENDER);
		if (error)
        {
			/* Whoops, something went wrong trying to load the glyph
			 * for this character... you should handle this better */
			continue;
		}

		if (BlitGlyph(&amp;slot-&gt;bitmap, penX + slot-&gt;bitmap_left+x, penY - slot-&gt;bitmap_top+y, color) == true)
		{
			/* The glyph was successfully blitted to the buffer, move the pen forwards */
			penX += slot-&gt;advance.x &gt;&gt; 6;
			previousGlyph = glyphIndex;
		}
		else
		{
			/* BlitGlyph returned false, the line must be full */
			free(utf32);
			return;
		}
	}

	free(utf32);
}

/* Returns true if the character was draw on to the buffer, false if otherwise */
bool BlitGlyph(FT_Bitmap *bitmap, int offset, int top, int color)
{
	int bitmapWidth = bitmap-&gt;width;
	int bitmapHeight = bitmap-&gt;rows;

	if (offset + bitmapWidth &gt; 640)
	{
		/* Drawing this character would over run the buffer, so don't draw it */
		return false;
	}

	/* Draw the glyph onto the buffer, blitting from the bottom up */
	/* CREDIT: Derived from a function by DragonMinded */
	unsigned char *p = fontTempLayer;
	unsigned int y = 0;
	for (y = 0; y &lt; bitmapHeight; ++y)
	{
		int sywidth = y * bitmapWidth;
		int dywidth = (y + top) * 640;

		unsigned int column = 0;
		for (column = 0; column &lt; bitmapWidth; ++column)
        {
			unsigned int srcloc = column + sywidth;
			unsigned int dstloc = ((column + offset) + dywidth) &lt;&lt; 2;

			/* Copy the alpha value for this pixel into the texture buffer */
			p[ dstloc + 0 ] = (color &amp; 0xff);
			p[ dstloc + 1 ] = ((color &gt;&gt; <img src='http://www.plaatsoft.nl/wiibrew/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> &amp; 0xff);
			p[ dstloc + 2 ] = ((color &gt;&gt; 16) &amp; 0xff);
			p[ dstloc + 3 ] = (bitmap-&gt;buffer[ srcloc ]);
		}
	}

	return true;
}

/* Render the text string to a 4x4RGBA texture, return a pointer to this texture */
GRRLIB_texImg* GRRLIB_GetTexture(void)
{
	/* Create a new buffer, this time to hold the final texture
	 * in a format suitable for the Wii */
	fontTexture = memalign(32, 640 * 528 * 4);

	/* Convert the RGBA temp buffer to a format usuable by GX */
	BitmapTo4x4RGBA(fontTempLayer, fontTexture, 640, 528);
	DCFlushRange(fontTexture, 640 * 528 * 4);

	/* The temp buffer is no longer required */
	free(fontTempLayer);
	image.data=fontTexture;
	image.w=640;
	image.h=528;

	return &amp;image;
}

void BitmapTo4x4RGBA(const unsigned char *src, void *dst, const unsigned int width, const unsigned int height)
{
	unsigned int block = 0;
	unsigned int i = 0;
	unsigned int c = 0;
	unsigned int ar = 0;
	unsigned int gb = 0;
	unsigned char *p = (unsigned char*)dst;

	for (block = 0; block &lt; height; block += 4) {
		for (i = 0; i &lt; width; i += 4) {
			/* Alpha and Red */
			for (c = 0; c &lt; 4; ++c) {
				for (ar = 0; ar &lt; 4; ++ar) {
					/* Alpha pixels */
					*p++ = src[(((i + ar) + ((block + c) * width)) * 4) + 3];
					/* Red pixels */
					*p++ = src[((i + ar) + ((block + c) * width)) * 4];
				}
			}

			/* Green and Blue */
			for (c = 0; c &lt; 4; ++c) {
				for (gb = 0; gb &lt; 4; ++gb) {
					/* Green pixels */
					*p++ = src[(((i + gb) + ((block + c) * width)) * 4) + 1];
					/* Blue pixels */
					*p++ = src[(((i + gb) + ((block + c) * width)) * 4) + 2];
				}
			}
		} /* i */
	} /* block */
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/grrlib-4-2-x-freetype-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wii trace module</title>
		<link>http://www.plaatsoft.nl/wiibrew/wii-trace-module/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/wii-trace-module/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 20:29:18 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[trace]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2995</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/development-icon.jpg" width="32" height="24" alt="" title="Development" /><br/><p>To debug better a Wii application / game i have created a trace C++ module with is logging trace event to file. Please checkout the following code. I hope it benefit someone!</p>
<p>trace.h</p>

#ifndef TRACE_H
#define TRACE_H

class Trace
{
  private:
	FILE * fp;
	char * getDate();

  public:
  	// Constructor &#38; Destructor
	Trace();
 	~Trace();

	// Methodes
	int open(const char *filename);
	int event( const [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/development-icon.jpg" width="32" height="24" alt="" title="Development" /><br/><p>To debug better a Wii application / game i have created a trace C++ module with is logging trace event to file. Please checkout the following code. I hope it benefit someone!</p>
<p><strong>trace.h</strong></p>
<pre class="brush: cpp;">
#ifndef TRACE_H
#define TRACE_H

class Trace
{
  private:
	FILE * fp;
	char * getDate();

  public:
  	// Constructor &amp; Destructor
	Trace();
 	~Trace();

	// Methodes
	int open(const char *filename);
	int event( const char *functionName, int threadNr, const char *event, ...);
	int eventRaw( char character);
	int close();
};

#endif
</pre>
<p><strong>trace.cpp</strong></p>
<pre class="brush: cpp;">
#include &lt;stdio.h&gt;
#include &lt;gccore.h&gt;
#include &lt;ogcsys.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;string.h&gt;
#include &lt;unistd.h&gt;
#include &lt;ogcsys.h&gt;
#include &lt;stdarg.h&gt;
#include &lt;time.h&gt;

#include &quot;trace.h&quot;

// Enable / Disable trace file functionality
bool traceOn = false;

// ------------------------------
// Constructor
// ------------------------------

Trace::Trace()
{
	fp=NULL;
}

// ------------------------------
// Destructor
// ------------------------------

Trace::~Trace()
{
  close();
}

// ------------------------------
// Methods
// ------------------------------

// Open trace file
int Trace::open(const char *filename)
{
   int returnValue=0;

   if (!traceOn) return -1;

   if((fp=fopen(filename, &quot;wb&quot;))==NULL)
   {
      printf(&quot;Error: Cannot open trace file.\n&quot;);
      returnValue=-2;
   }
   return returnValue;
}

// Close trace file
int Trace::close()
{
   int returnValue=0;

   if (fp!=NULL)
   {
       fclose(fp);
   }
   return returnValue;
}

// Create trace timestamp
char * Trace::getDate()
{
  struct tm *now = NULL;
  time_t time_value = 0;
  static char buf[ 128 ] ;

  // Clear memory
  memset(buf, sizeof(buf), 0x00);

  /* Get time value */
  time_value = time(NULL);          

  /* Get time and date structure */
  now = localtime(&amp;time_value);     

  // Create time stamp
  sprintf(buf,&quot;%02d-%02d-%04d %02d:%02d:%02d&quot;,
	now-&gt;tm_mday, now-&gt;tm_mon+1, now-&gt;tm_year+1900,
	now-&gt;tm_hour,now-&gt;tm_min,now-&gt;tm_sec);

  return buf;
}

// Save trace event in trace file
int Trace::event( const char *functionName, int threadNr, const char *event, ...)
{
   int returnValue=0;
   char buf[ MAX_LEN ];

   // Clear memory
   memset(buf, MAX_LEN, 0x00);

   if (!traceOn) return -1;

   // Expend event string
   va_list list;
   va_start(list, event );
   vsprintf(buf, event, list);

   if (fp!=NULL)
   {
      // Save string to file
	  fprintf(fp,&quot;%s [thread%d-%s] %s\n&quot;,getDate(), threadNr, functionName, buf);
	  fflush(fp);
   }

   return returnValue;
}

// Save trace event in trace file
int Trace::eventRaw( char character)
{
   int returnValue=0;

   if (!traceOn) return -1;

   if (fp!=NULL)
   {
      // Save string to file
	  fprintf(fp,&quot;%c&quot;,character);
	  fflush(fp);
   }

   return returnValue;
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/wii-trace-module/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Released RedSquare 0.94</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-redsquare-0-94/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-redsquare-0-94/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 20:43:20 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[RedSquare]]></category>
		<category><![CDATA[v0.94]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2965</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>This evening RedSquare 0.94 is released by PlaatSoft. The following changes were made:</p>
<p>11-01-2010 Version 0.94
- Added improve score calculation.
- Added extra help screen.
- Improve webservice call to store high score.
- Added support for 60HZ (640&#215;480) TV mode.
- Use libogc 1.8.1 library as Wii interface engine.
- Use GRRLIB v4.2.0 as graphical engine.
- Build game with devkitPPC [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/redsquare-icon.jpg" width="32" height="24" alt="" title="RedSquare" /><br/><p>This evening RedSquare 0.94 is released by PlaatSoft. The following changes were made:</p>
<p><strong>11-01-2010 Version 0.94</strong><br />
- Added improve score calculation.<br />
- Added extra help screen.<br />
- Improve webservice call to store high score.<br />
- Added support for 60HZ (640&#215;480) TV mode.<br />
- Use libogc 1.8.1 library as Wii interface engine.<br />
- Use GRRLIB v4.2.0 as graphical engine.<br />
- Build game with devkitPPC r19 compiler.</p>
<p>If anybody has a good idea how to improve this game, please post a comment</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-redsquare-0-94/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Released TowerDefense 0.91</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-towerdefense-091/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-towerdefense-091/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 22:56:26 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[v0.91]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2938</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.91. The following changes were made:</p>
<p>09-01-2010 Version 0.91
GUI:
- Added 25 animated enemy sprites. Thanks Applicant!
- Added game setting screen.
- Added intro screen 3
- Improve winter theme sprites.
- Improve first help screen.
- Improve main menu screen.
- Lots of other small GUI changes.
Core:
- Make game harder to play!
- Less start money.
- Enemy minimum [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>PlaatSoft has released TowerDefense v0.91. The following changes were made:</p>
<p><strong>09-01-2010 Version 0.91</strong><br />
GUI:<br />
- Added 25 animated enemy sprites. Thanks Applicant!<br />
- Added game setting screen.<br />
- Added intro screen 3<br />
- Improve winter theme sprites.<br />
- Improve first help screen.<br />
- Improve main menu screen.<br />
- Lots of other small GUI changes.<br />
Core:<br />
- Make game harder to play!<br />
- Less start money.<br />
- Enemy minimum / maximum speed depend on wave nr.<br />
- Increase weapon prices.<br />
- Increase maximum concurrent monsters in action.<br />
- Decrease weapons effective range.<br />
- Build game with devkitPPC r19 compiler.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-towerdefense-091/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Website upgrade</title>
		<link>http://www.plaatsoft.nl/wiibrew/website-upgrade-7/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/website-upgrade-7/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 09:52:57 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2935</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This morning I have upgraded my website.</p>
<p>The following changes were implemented:
- Upgrade to WordPress 2.9.1
- Move all the development Wii games source code to Google Code
- Game downloads are now handled by Google Code (Reduce Website traffic)</p>
]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/general-icon.jpg" width="32" height="24" alt="" title="General" /><br/><p>This morning I have upgraded my website.</p>
<p>The following changes were implemented:<br />
- Upgrade to WordPress 2.9.1<br />
- Move all the development Wii games source code to Google Code<br />
- Game downloads are now handled by Google Code (Reduce Website traffic)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/website-upgrade-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Released SpaceBubble 0.93</title>
		<link>http://www.plaatsoft.nl/wiibrew/released-spacebubble-0-93/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/released-spacebubble-0-93/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 21:14:33 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[SpaceBubble]]></category>
		<category><![CDATA[v0.93]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2914</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>This evening SpaceBubble 0.93 is released by PlaatSoft. The following changes were made:</p>
<p>08-01-2010 Version 0.93
- Improve main menu screen.
- Added 60Hz (640&#215;480) TV Mode support.
- Increase local highscore list to maximum 100 entries.
- Store current game score in highscore area also when game is quited.
- Added extra help screen with WiiMote control information.
- Use GRRLIB [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/spacebubble-icon.jpg" width="32" height="24" alt="" title="SpaceBubble" /><br/><p>This evening SpaceBubble 0.93 is released by PlaatSoft. The following changes were made:</p>
<p><strong>08-01-2010 Version 0.93</strong><br />
- Improve main menu screen.<br />
- Added 60Hz (640&#215;480) TV Mode support.<br />
- Increase local highscore list to maximum 100 entries.<br />
- Store current game score in highscore area also when game is quited.<br />
- Added extra help screen with WiiMote control information.<br />
- Use GRRLIB v4.2.0 library as graphical engine.<br />
- Use libogc v1.8.1 library as Wii interface engine.<br />
- Build game with devkitPPC r19 compiler.</p>
<p>If anybody has a good idea how to improve this game, please post a comment</p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/released-spacebubble-0-93/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TowerDefense 10.000 downloads</title>
		<link>http://www.plaatsoft.nl/wiibrew/towerdefense-10000-downloads/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/towerdefense-10000-downloads/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 22:45:41 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[Downloads]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2882</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of TowerDefense, it is downloaded over 10.000 times. Wow! .   So a very special thanks to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p>Official Count</p>



Homebrew Browser
8.919 times


My website
1.083 times


Total
10.002 times



]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Since the launch (20 December 2009) of TowerDefense, it is downloaded over 10.000 times. Wow! <img class="wp-smiley" src="http://www.jobberbase.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" />.   So a very special <em>thanks</em> to everyone who&#8217;s been downloading, playing and commenting this game.</p>
<p><strong>Official Count</strong></p>
<table border="1">
<tbody>
<tr>
<td>Homebrew Browser</td>
<td>8.919 times</td>
</tr>
<tr>
<td>My website</td>
<td>1.083 times</td>
</tr>
<tr>
<td><strong>Total</strong></td>
<td><strong>10.002 times</strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/towerdefense-10000-downloads/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Progress report TowerDefense</title>
		<link>http://www.plaatsoft.nl/wiibrew/progress-report-towerdefense/</link>
		<comments>http://www.plaatsoft.nl/wiibrew/progress-report-towerdefense/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 19:30:03 +0000</pubDate>
		<dc:creator>wplaat</dc:creator>
				<category><![CDATA[TowerDefense]]></category>
		<category><![CDATA[Art work]]></category>
		<category><![CDATA[design]]></category>

		<guid isPermaLink="false">http://www.plaatsoft.nl/wiibrew/?p=2871</guid>
		<description><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Hi everybody, Here a small update about the continues development of TowerDefense. On this moment Appliciant is designing new animated enemy and weapon sprites for the game. If all the enemies and weapons are ready i will bring out the next major release. To give your some idea were it is going too, check out [...]]]></description>
			<content:encoded><![CDATA[<img src="http://www.plaatsoft.nl/wiibrew/wp-content/uploads/towerdefense-icon.jpg" width="32" height="26" alt="" title="TowerDefense" /><br/><p>Hi everybody, Here a small update about the continues development of TowerDefense. On this moment <strong>Appliciant</strong> is designing new animated enemy and weapon sprites for the game. If all the enemies and weapons are ready i will bring out the next major release. To give your some idea were it is going too, check out the following art drawing.  In the mean time if there are any bugs or new ideas please post them below!</p>
<p><img src="http://members.tele2.nl/wvdplaat/images/TowerDefense-art.jpg" alt="" width="575" height="475" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.plaatsoft.nl/wiibrew/progress-report-towerdefense/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
