Updated the site
[sdlgit/SDL-Site.git] / pages / blog-0022.html-inc
index da0846f..bdf8c94 100644 (file)
@@ -1,6 +1,31 @@
 <div class="blog">
 <h1 id="NAME">
-Catching memory leaks in XS
+Quick Game for Toronto Perl Mongers
 </h1>
 <div class="CONTENT">
-<div style="text-align: right;"><i>&nbsp;I slay dragons, yonder</i></div><br />So I am trying to find and plug memory leaks in SDL perl. Most of the <a href="https://rt.cpan.org/Ticket/Display.html?id=49084">memory leaks</a> occur because in XS a reference is still held. One very expensive mem leak was caught by TELS really early on <a href="https://rt.cpan.org/Ticket/Display.html?id=17976">here</a>. The problem occurs where in XS there is<br /><br /><blockquote><i>RETVAL</i><i> = (cast *) safemalloc( ... );</i></blockquote>&nbsp;and safefree(...) is never called.<br />Here is a in <a href="http://github.com/kthakore/SDL_perl/blob/63ebaa682697728f5946f700a2b2c12534b1b821/src/SDL.xs">code example</a> lines 1082 on. <br /><br />My question is how I can mitigate these memory leaks? One idea I had was to store all malloc'd pointers to an array that is safefree'd on DESTROY or hooked into perl GC somehow .<br /><br /><br />Any guidance is helpful.<br /><br /><i>--yapgh</i><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3102167581424744259-7742659740534179607?l=yapgh.blogspot.com'/></div></div></div>
\ No newline at end of file
+<i><br />
+<div style="text-align: right;">Beep ... Boop<br />
+</div></i><br />
+<br />
+So I am preparing a presentation of the new SDL perl for February's Toronto Perl Mongers meeting. What better way to so off SDL perl then with a game? <br />
+<br />
+I started hacking a small point an click game a few days back. I really didn't have a idea in mind, but I did have a goal. I wanted to make a game that shows the basics of a game in SDL. Drawing to screen, game loops, physics and so on. I think I have accomplished it so far. <br />
+<br />
+Take a look at it <a alt="Click the balls to win" href="http://gist.github.com/301949">here</a>. Download that and call it<a alt="Click the balls to win" href="http://gist.github.com/301949">[Shooter.pl]</a>. To win click the balls.<br />
+<br />
+To play this game you need the following:<br />
+<br />
+<ul><li> <b>Only for Linux)</b> sudo apt-get install libsdl-dev libsdl_gfx-dev </li>
+<li> cpan Alien::SDL </li>
+<li> Click Download Source http://github.com/kthakore/SDL_perl/tree/redesign </li>
+<li> Extract it </li>
+<li> perl Build.PL; perl Build; perl Build install </li>
+<li> perl Shooter.pl </li>
+</ul><br />
+I will put up binaries soon-ish.<br />
+<br />
+It is a playable (albeit hard) game right now. All 7 seven levels of it. The purpose of the game is simple click the balls to win. Sounds easy but it isn't. You also get a time in milliseconds after each level. Share your scores on here! I will leave it up to you guys to be honest. <br />
+<br />
+I do have to tidy it up and right documentation for it. This way I will be able to present it clearly to my fellow mongers. I am also still looking for ideas to make this a more polished game. FROGGS recommend I make it a classic NES duck hunt game. I thought since I am using gravity I could do a UFO game out of it where you shoot the UFOs. I am open to your ideas.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3102167581424744259-1585061047069454098?l=yapgh.blogspot.com' alt='' /></div>
+<p><a href="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/0/da"><img src="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/0/di" border="0" ismap="true"></img></a><br/>
+<a href="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/1/da"><img src="http://feedads.g.doubleclick.net/~a/xSNM-fJPtTMLn88P3vJeOy3aoV4/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/YetAnotherPerlGameHackeryapgh/~4/oR6t0trX8yM" height="1" width="1"/></div></div>
\ No newline at end of file