<?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>Proto Cog Culture &#187; newnews</title>
	<atom:link href="http://www.troydpatterson.com/devblog/?feed=rss2&#038;cat=1" rel="self" type="application/rss+xml" />
	<link>http://www.troydpatterson.com/devblog</link>
	<description>Em Tee - MrTroy</description>
	<lastBuildDate>Wed, 12 May 2010 13:43:52 +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>Another update</title>
		<link>http://www.troydpatterson.com/devblog/?p=231</link>
		<comments>http://www.troydpatterson.com/devblog/?p=231#comments</comments>
		<pubDate>Wed, 12 May 2010 13:43:52 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=231</guid>
		<description><![CDATA[The Bad News first(That way you have something good to look forward to)
My small pinball machine I was working on, the hack one. Failed in concept. It&#8217;s going to cost me more money than anticipated to finish it.
I lost my camera somewhere so it&#8217;s going to be a while before I post another photo of [...]]]></description>
			<content:encoded><![CDATA[<p>The <strong>Bad News</strong> first(That way you have something good to look forward to)<br />
My small pinball machine I was working on, the hack one. Failed in concept. It&#8217;s going to cost me more money than anticipated to finish it.<br />
I lost my camera somewhere so it&#8217;s going to be a while before I post another photo of stuff I mindlessly purchase (Yay?)<br />
I&#8217;m still swamped with projects, so another rebuild of this site is far off.</p>
<p>Now.. The <strong>Good News</strong><br />
My mother bought me a home sized pinball machine. I&#8217;m debating on hacking it up or not. My mother knew this and that&#8217;s why she bought it for me. It&#8217;s a <a href="http://www.zizzle.com/">Zizzle Pinball</a> so&#8230; no one is going to miss it.<br />
I&#8217;ve purchased that <a href="http://www.makershed.com/ProductDetails.asp?ProductCode=MKIF2">Screw Driver</a> I always wanted. So.. I can finally finish taking apart the junk I found on the street and save the parts that I wanted. So at least my apartment is going to be cleaner.<br />
Hopefully and fingers crossed. I&#8217;m going to put up a router(The tool not the network device) this weekend. That plus my Saw &#038; screw Driver set are going to make for awesome projects!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=231</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guff</title>
		<link>http://www.troydpatterson.com/devblog/?p=228</link>
		<comments>http://www.troydpatterson.com/devblog/?p=228#comments</comments>
		<pubDate>Tue, 04 May 2010 15:05:12 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=228</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.troydpatterson.com/index_images/madl_guff.jpg" alt="MadL Guff" /></center></p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=228</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oooh I got a new book!</title>
		<link>http://www.troydpatterson.com/devblog/?p=223</link>
		<comments>http://www.troydpatterson.com/devblog/?p=223#comments</comments>
		<pubDate>Tue, 20 Apr 2010 22:47:40 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=223</guid>
		<description><![CDATA[I told you, &#8220;I am going to get back in to reading&#8221;.

]]></description>
			<content:encoded><![CDATA[<p>I told you, &#8220;I am going to get back in to reading&#8221;.</p>
<p><center><img src="http://www.troydpatterson.com/index_images/avalon_revisited.jpg" alt="Avalon Revisited Cover" /></center></p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=223</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I got board so I built this&#8230;</title>
		<link>http://www.troydpatterson.com/devblog/?p=219</link>
		<comments>http://www.troydpatterson.com/devblog/?p=219#comments</comments>
		<pubDate>Mon, 19 Apr 2010 00:44:58 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=219</guid>
		<description><![CDATA[&#8230; get it!? 

]]></description>
			<content:encoded><![CDATA[<p>&#8230; get it!? <img src='http://www.troydpatterson.com/devblog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<center><img src="http://troydpatterson.com/index_images/buildabox.jpg" alt="Frame built from plywood." /></center></p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=219</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Two more steps backwards</title>
		<link>http://www.troydpatterson.com/devblog/?p=215</link>
		<comments>http://www.troydpatterson.com/devblog/?p=215#comments</comments>
		<pubDate>Mon, 05 Apr 2010 17:04:27 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>
		<category><![CDATA[broken]]></category>
		<category><![CDATA[failure]]></category>
		<category><![CDATA[pinball]]></category>
		<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=215</guid>
		<description><![CDATA[So this is a quick entry. Last night I managed to break two relays that I thought were going to work in my pinball machine. So I&#8217;m researching a better method for working the flippers. 
]]></description>
			<content:encoded><![CDATA[<p>So this is a quick entry. Last night I managed to break two relays that I thought were going to work in my pinball machine. So I&#8217;m researching a better method for working the flippers. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=215</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keyboard LEDs</title>
		<link>http://www.troydpatterson.com/devblog/?p=205</link>
		<comments>http://www.troydpatterson.com/devblog/?p=205#comments</comments>
		<pubDate>Fri, 26 Mar 2010 14:58:13 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=205</guid>
		<description><![CDATA[While I was trying to figure something else out code wise , my mind began to wander. I started thinking about a cheap man&#8217;s pinball machine. Now this has been an off again on again project of mine for the past few months. But yesterday I thought about how many 3.5 SBCs that I have [...]]]></description>
			<content:encoded><![CDATA[<p>While I was trying to figure something else out code wise , my mind began to wander. I started thinking about a cheap man&#8217;s pinball machine. Now this has been an off again on again project of mine for the past few months. But yesterday I thought about how many 3.5 <abbr title="Single Board Computer">SBC</abbr>s that I have and what I could do with them. Originally I wanted to take one throw it inside of a desktop pinball machine and have some crazy serial connections going back and forth to control everything. I then found that the <abbr title="Single Board Computer">SBC</abbr>s  are over kill.</p>
<p>So, yesterday the idea popped in my head again, but more for haha sake, I wanted to see if I could make the LEDS on a keyboard flash using C#. And in doing this I could use the current that would come from the LEDS to power a relay and turn on the Solenoids/Flippers. Just a concept. Nothing really extreme or solid, just a simple proof of concept(I&#8217;ve been in to those a lot recently.)</p>
<p>So I coded it out as a Console Window application using 1 C# file and the command line to compile it. (That way I couldn&#8217;t lazy my way out and use help files.) Here&#8217;s what I have.</p>
<p><code>using System;<br />
using System.Windows.Forms;<br />
using System.Runtime.InteropServices;</p>
<p>namespace popsknot.griz.keyFlasher<br />
{<br />
    public class keyFlasher<br />
    {</p>
<p>        [DllImport("user32.dll")]<br />
        static extern ushort GetKeyState(short nVirtKey);</p>
<p>        [DllImport("user32.dll")]<br />
        static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, int dwExtraInfo);</p>
<p>        public const ushort keyDownBit = 0x80;</p>
<p>        const int KEYEVENTF_EXTENDEDKEY = 0x1;<br />
        const int KEYEVENTF_KEYUP = 0x2;</p>
<p>        private static int counter = 10;<br />
        private static bool rFlipper = false;<br />
        private static bool lFlipper = false;</p>
<p>        public static void Main(string[] args)<br />
        {<br />
            if (Control.IsKeyLocked(Keys.Scroll))<br />
            {<br />
                keybd_event(0x91, 0x45, KEYEVENTF_EXTENDEDKEY, 0);<br />
                keybd_event(0x91, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);</p>
<p>            }</p>
<p>            if (Control.IsKeyLocked(Keys.NumLock))<br />
            {<br />
                keybd_event(0x90, 0x45, KEYEVENTF_EXTENDEDKEY, 0);<br />
                keybd_event(0x90, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);</p>
<p>            }</p>
<p>             while (counter !=0)<br />
            {<br />
                if (IsKeyPressed(Keys.Escape))<br />
                {<br />
                    counter = 0;<br />
                }</p>
<p>                 //Right Flipper<br />
                if ((System.Windows.Forms.Control.ModifierKeys &#038; Keys.Control) == Keys.Control)<br />
                {<br />
                    if (!rFlipper)<br />
                    {<br />
                        Console.WriteLine("Trigger Right Flipper" + 0x90);<br />
                        keybd_event(0x91, 0x45, KEYEVENTF_EXTENDEDKEY, 0);<br />
                        keybd_event(0x91, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);<br />
                        rFlipper = true;<br />
                    }<br />
                }<br />
                else<br />
                {<br />
                    if (rFlipper == true)<br />
                    {<br />
                        keybd_event(0x91,0x45, KEYEVENTF_EXTENDEDKEY, 0);<br />
                        keybd_event(0x91, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);<br />
                        rFlipper = false;<br />
                    }<br />
                }</p>
<p>                 //Left Flipper</p>
<p>                if ((System.Windows.Forms.Control.ModifierKeys &#038; Keys.Alt) == Keys.Alt)<br />
                {<br />
                    if (!lFlipper)<br />
                    {<br />
                        Console.WriteLine("Trigger Left Flipper" + 0x90);<br />
                        keybd_event(0x90, 0x45, KEYEVENTF_EXTENDEDKEY, 0);<br />
                        keybd_event(0x90, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);<br />
                        lFlipper = true;<br />
                    }<br />
                }<br />
                else<br />
                {<br />
                    if (lFlipper == true)<br />
                    {<br />
                        keybd_event(0x90, 0x45, KEYEVENTF_EXTENDEDKEY, 0);<br />
                        keybd_event(0x90, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);<br />
                        lFlipper = false;<br />
                    }<br />
                }<br />
             }<br />
        }</p>
<p>        public static bool IsKeyPressed(Keys key)<br />
        {<br />
            return ((GetKeyState((short)key) &#038; keyDownBit) == keyDownBit);<br />
        }<br />
    }<br />
}<br />
</code></p>
<p>Also keep in mind that I did about 2 minutes of testing on this on my development machine. That means that there is a chance I may be doing something wrong and it could cause damage to something. So, use at your own risk. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=205</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Another day another project</title>
		<link>http://www.troydpatterson.com/devblog/?p=204</link>
		<comments>http://www.troydpatterson.com/devblog/?p=204#comments</comments>
		<pubDate>Fri, 26 Mar 2010 14:34:09 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>
		<category><![CDATA[projects toybox website]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=204</guid>
		<description><![CDATA[So here I am, I&#8217;ve been looking at what I worked on in 2009 and it&#8217;s lack of appearances in the toybox. And keep asking myself, &#8220;why do I keep neglecting the toybox?&#8221;The answer to that is still. I don&#8217;t know. I have two things from 2010 that I just&#8230; Ah well I&#8217;ll talk about [...]]]></description>
			<content:encoded><![CDATA[<p>So here I am, I&#8217;ve been looking at what I worked on in 2009 and it&#8217;s lack of appearances in the toybox. And keep asking myself, &#8220;why do I keep neglecting the toybox?&#8221;The answer to that is still. I don&#8217;t know. I have two things from 2010 that I just&#8230; Ah well I&#8217;ll talk about them some other time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=204</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>First video test</title>
		<link>http://www.troydpatterson.com/devblog/?p=202</link>
		<comments>http://www.troydpatterson.com/devblog/?p=202#comments</comments>
		<pubDate>Sun, 14 Mar 2010 21:04:55 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=202</guid>
		<description><![CDATA[Ok... I know that it's quiet and all. I couldn't think of anything clever to say. I've uploaded video of the networking demo I've been working on for the past few weeks. Yes, it's a remake of the Combat game I was working on a few years ago. This time I'm trying to make it network based. 
]]></description>
			<content:encoded><![CDATA[<p>Ok&#8230; I know that it&#8217;s quiet and all. I couldn&#8217;t think of anything clever to say. I&#8217;ve uploaded video of the networking demo I&#8217;ve been working on for the past few weeks. Yes, it&#8217;s a remake of the Combat game I was working on a few years ago. This time I&#8217;m trying to make it network based. </p>
<p><center><object width="640" height="385"><param name="movie" value="http://www.youtube.com/v/Z4t2BYN8yMo&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/Z4t2BYN8yMo&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object></center></p>
<p>It&#8217;s very difficult to show networking on two laptops when your physical space is limited by a small cluttered apartment. So I&#8217;m quite proud of myself and my first real time networking application.<br />
 Another thing you may notice is that the player jumps and pops in to place. This is myself trying to pick up where networking lag some times happens. It&#8217;s amazing how fast things tend to be off in something that requires fast button pushing. I&#8217;m going to have to stop right here with this project because I&#8217;m not sure if the real-time speed required of a tank game is going to work.</p>
<p>I think my next Actionscript 3 and Networking project will be something turn based or slower placed. I&#8217;m still trying to refine my skills to make a decent speed application. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=202</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Whoooo it&#8217;s doing something right!</title>
		<link>http://www.troydpatterson.com/devblog/?p=196</link>
		<comments>http://www.troydpatterson.com/devblog/?p=196#comments</comments>
		<pubDate>Mon, 08 Mar 2010 03:41:10 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=196</guid>
		<description><![CDATA[
I&#8217;ve gotten it to recognize all of the players whenever someone logs in!
]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.troydpatterson.com/index_images/030710_combat.jpg" alt="Combat image 1" /><br />
I&#8217;ve gotten it to recognize all of the players whenever someone logs in!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=196</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Next step &#8220;Display&#8221;&#8230;</title>
		<link>http://www.troydpatterson.com/devblog/?p=194</link>
		<comments>http://www.troydpatterson.com/devblog/?p=194#comments</comments>
		<pubDate>Sun, 07 Mar 2010 16:59:24 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
				<category><![CDATA[newnews]]></category>

		<guid isPermaLink="false">http://www.troydpatterson.com/devblog/?p=194</guid>
		<description><![CDATA[So I have the network going(for this combat game), where it&#8217;s sending the information between all different players, now I&#8217;m going to reinstate the rendering engine. Since I come from a different way of thinking, I&#8217;ve been fighting against Actionscript 3 a majority of the road. Even though I&#8217;m trying to incorporate the previous rendering [...]]]></description>
			<content:encoded><![CDATA[<p>So I have the network going(for this combat game), where it&#8217;s sending the information between all different players, now I&#8217;m going to reinstate the rendering engine. Since I come from a different way of thinking, I&#8217;ve been fighting against Actionscript 3 a majority of the road. Even though I&#8217;m trying to incorporate the previous rendering engine in a different way, I feel like this is either cheating or the incorrect way to do things. After I finish this project I&#8217;m going to have to pick up a real game programming in Actionscript 3 book. </p>
<p>I need that physical thing in hand. eBooks and forums aren&#8217;t working for me.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.troydpatterson.com/devblog/?feed=rss2&amp;p=194</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
