<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Gaming on Dhiru's Notebook</title><link>https://rfcorner.in/tags/gaming/</link><description>Recent content in Gaming on Dhiru's Notebook</description><generator>Hugo</generator><language>en</language><lastBuildDate>Tue, 05 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://rfcorner.in/tags/gaming/index.xml" rel="self" type="application/rss+xml"/><item><title>Pocket Chaos: Coding (and Decoding) on the R36S</title><link>https://rfcorner.in/posts/r36s-adventures-1/</link><pubDate>Tue, 05 May 2026 00:00:00 +0000</pubDate><guid>https://rfcorner.in/posts/r36s-adventures-1/</guid><description>&lt;h1 id="intro"&gt;Intro&lt;/h1&gt;
&lt;p&gt;There's something slightly absurd about turning a tiny retro handheld
into both an app development platform &lt;em&gt;and&lt;/em&gt; a weak-signal radio decoder.
The R36S - cheap, hackable, and rough around the edges - wasn't built
for any of this.&lt;/p&gt;
&lt;p&gt;That's exactly why it works.&lt;/p&gt;
&lt;h2 id="the-constraint-advantage"&gt;The Constraint Advantage&lt;/h2&gt;
&lt;p&gt;Modern development hides inefficiency. The R36S exposes it.&lt;/p&gt;
&lt;p&gt;With limited CPU, RAM, and screen space, you're forced to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Write tighter code&lt;/li&gt;
&lt;li&gt;Design simpler interfaces&lt;/li&gt;
&lt;li&gt;Think in constraints, not abstractions&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That same constraint-driven thinking applies perfectly to signal
processing tasks like FT8.&lt;/p&gt;</description></item><item><title>Debugging gaming pads on Linux</title><link>https://rfcorner.in/posts/debugging-controllers-linux/</link><pubDate>Mon, 29 Sep 2025 00:00:00 +0000</pubDate><guid>https://rfcorner.in/posts/debugging-controllers-linux/</guid><description>&lt;p&gt;While running &lt;a href="https://github.com/fhoedemakers/pico-infonesPlus"&gt;https://github.com/fhoedemakers/pico-infonesPlus&lt;/a&gt;, I found that my SNES gaming pad was not fully supported.&lt;/p&gt;
&lt;p&gt;Specifically, the UP/DOWN and LEFT/RIGHT keys were not working.&lt;/p&gt;
&lt;p&gt;Let's debug this a bit:&lt;/p&gt;
&lt;p&gt;Plug in the gaming pad on a Linux box and run the following command (&lt;code&gt;hidraw5&lt;/code&gt; will need to be changed as needed):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$ lsusb
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Bus &lt;span class="m"&gt;001&lt;/span&gt; Device 063: ID 0810:e501 Personal Communication Systems, Inc. SNES Gamepad
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;$ sudo hexdump -C /dev/hidraw5
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;00004a50 &lt;span class="m"&gt;01&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; 7f 7f 0f &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;01&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; 7f &lt;span class="m"&gt;00&lt;/span&gt; 0f &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt;................&lt;span class="p"&gt;|&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;00004a60 &lt;span class="m"&gt;01&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; 7f &lt;span class="m"&gt;00&lt;/span&gt; 0f &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;01&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; 7f &lt;span class="m"&gt;00&lt;/span&gt; 0f &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt;................&lt;span class="p"&gt;|&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;*
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;00004a80 &lt;span class="m"&gt;01&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; 7f 7f 0f &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;01&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; &lt;span class="m"&gt;80&lt;/span&gt; 7f 7f 0f &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="m"&gt;00&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt;................&lt;span class="p"&gt;|&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This is what I see when pressing the &lt;code&gt;UP&lt;/code&gt; key.&lt;/p&gt;</description></item></channel></rss>