<?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>Minousoft.com</title>
	<atom:link href="http://www.minousoft.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.minousoft.com</link>
	<description> </description>
	<lastBuildDate>Sun, 29 Jan 2012 03:32:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Discrete time quantization on a cheap USB soundcard</title>
		<link>http://www.minousoft.com/2012/01/discrete-time-quantization-on-a-cheap-usb-soundcard/</link>
		<comments>http://www.minousoft.com/2012/01/discrete-time-quantization-on-a-cheap-usb-soundcard/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 03:32:55 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[oscilloscope]]></category>
		<category><![CDATA[quantization]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=69</guid>
		<description><![CDATA[It seems like the corner frequency of the filter on this USB soundcard isn&#8217;t equal to the sample rate of the audio. You can see some quantization, mostly in the time domain, since the DAC is supposed to be 16-bit. It might be because the filter is set with a corner frequency of 48kHz, which [...]]]></description>
			<content:encoded><![CDATA[<p>It seems like the corner frequency of the filter on this USB soundcard isn&#8217;t equal to the sample rate of the audio. You can see some quantization, mostly in the time domain, since the DAC is supposed to be 16-bit. It might be because the filter is set with a corner frequency of 48kHz, which is the Nyquist frequency for 96kHz audio, and the music I&#8217;m playing has a sample rate of 44.1kHz, which has a Nyquist frequency of 22.05kHz. If that&#8217;s the case, then why doesn&#8217;t it interpolate the sample rate to 96kHz internally? Hmm&#8230;</p>
<p><a href="http://www.minousoft.com/wp-content/uploads/2012/01/discrete-time-quantization.jpg"><img class="alignnone size-medium wp-image-70" title="discrete-time-quantization" src="http://www.minousoft.com/wp-content/uploads/2012/01/discrete-time-quantization-300x236.jpg" alt="" width="300" height="236" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2012/01/discrete-time-quantization-on-a-cheap-usb-soundcard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Greasemonkey script to fix new YouTube favorites sorting behavior</title>
		<link>http://www.minousoft.com/2012/01/greasemonkey-script-to-fix-new-youtube-favorites-sorting-behavior/</link>
		<comments>http://www.minousoft.com/2012/01/greasemonkey-script-to-fix-new-youtube-favorites-sorting-behavior/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 02:29:04 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[rant]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[solution]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=67</guid>
		<description><![CDATA[I&#8217;m not a big fan of the new YouTube layout. It&#8217;s not just a layout change, it&#8217;s a change in functionality. A while back, YouTube removed the Friends feature and combined it with subscriptions. This strikes me as odd, since I don&#8217;t want to subscribe to everyone that I am friends with, and not everyone [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m not a big fan of the new YouTube layout. It&#8217;s not just a layout change, it&#8217;s a change in functionality. A while back, YouTube removed the Friends feature and combined it with subscriptions. This strikes me as odd, since I don&#8217;t want to subscribe to everyone that I am friends with, and not everyone that I am subscribed to is my friend. This sort of thing seems to be what Google has been doing with their lesser-used services. I thought I could deal with this until the latest change&#8230;</p>
<p>YouTube recently changed the functionality of their Favorites page so that sorting by &#8216;date favorited&#8217; was no longer the default. The default is now to show the most recently uploaded videos first. However, &#8216;date favorited&#8217; is the preferred order in which I like to sort things, since it meshes so nicely with the way that long-term memory works: the most recent things are first, while older things get pushed further down the list until they are almost forgotten. I frequently re-watch videos that I have recently favorited, and rarely watch videos that I favorited a year ago, so it only seems logical to sort my favorites in this way. Despite the slight modification in behavior, I quickly adapted to click the correct sorting field whenever I visited my favorites list, and everything was the way I wanted it to be.</p>
<p>That is, until a short while ago. YouTube removed the option to sort by &#8216;date favorited&#8217; from the list entirely. How was I supposed to find a video that I had just favorited, if the video was uploaded years ago? It was a good thing that I happened to remember the URL parameter for sorting by favorites: <code><a href="http://www.youtube.com/my_favorites?sf=addedfav">http://www.youtube.com/my_favorites?sf=addedfav</a></code> It still works as a &#8220;secret&#8221; parameter, even though it&#8217;s not in the dropdown menu. I didn&#8217;t want to have to type this in every time, so I put together a Greasemonkey script to always rewrite the URL to include the parameter if it wasn&#8217;t set properly. <a href="https://userscripts.org/scripts/show/124385"><strong>Get the script here.</strong></a> If you don&#8217;t have Greasemonkey, <a href="https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/">install it from Mozilla first.</a> You don&#8217;t need to do anything to use the script once it is installed; it works automatically.</p>
<p>Unfortunately, the hackish way that the script works disables the ability to use the other sorting fields, but I never use those anyway. Just disable the script temporarily if you need to use the other ones. The script&#8217;s regex does recognize HTTP/HTTPS URLs and different TLDs for YouTube.</p>
<p>I speculate that YouTube&#8217;s reason for changing the order in which favorites are displayed is to psychologically encourage users to watch and share fresher content, and to get them to ignore old material. This might reduce the number of old videos that need to be cached in fast memory on YouTube&#8217;s content distribution network, thereby reducing overhead slightly, and, at the same time, squeezing more advertising dollars out of new videos.</p>
<p>Or, perhaps this is just a simple oversight. I&#8217;ve noticed a few missed spaces in YouTube&#8217;s <code>&lt;a&gt;</code> tags in different parts of YouTube. Perhaps it&#8217;s a similar mistake, like a typo, but worse, in that it impacts functionality. You&#8217;d think that the folks at YouTube would be more careful about things like that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2012/01/greasemonkey-script-to-fix-new-youtube-favorites-sorting-behavior/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple Android Telephone Number Widget</title>
		<link>http://www.minousoft.com/2012/01/simple-android-telephone-number-widget/</link>
		<comments>http://www.minousoft.com/2012/01/simple-android-telephone-number-widget/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 02:38:33 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[phone]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=55</guid>
		<description><![CDATA[A while back, I was looking on the Android Market for a widget to display my telephone number. I had recently purchased a new SIM card and couldn&#8217;t remember my new phone number. The only built-in way to check your phone number on Android is to go to Settings &#62; About Phone &#62; Status, which [...]]]></description>
			<content:encoded><![CDATA[<p>A while back, I was looking on the Android Market for a widget to display my telephone number. I had recently purchased a new SIM card and couldn&#8217;t remember my new phone number. The only built-in way to check your phone number on Android is to go to <em>Settings &gt; About Phone &gt; Status</em>, which is annoying and takes too long when you&#8217;re trying to give your number to a friend that you just bumped into on the street. I was looking for a way to put that information in an easily accessible place, either on the home screen (as a widget) or in the notification bar. All of the widgets I found were ugly looking and/or poorly designed (e.g. text too small.) I decided to get off the couch, learn the basics of Android development, and roll my own widget.</p>
<p>I don&#8217;t really care about getting this on the Android Market right now &#8211; that costs money. Instead, you&#8217;ll have to install it manually, which is actually quite simple. To install this app, you&#8217;ll have to enable installation of non-Market apps on your phone. This should be under <em>Settings &gt; Applications &gt; Unknown sources</em>.</p>
<p>The APK is available for download here: <a href="http://www.minousoft.com/downloads/telephonenumberwidget.apk">telephonenumberwidget.apk</a> (~10kB)</p>
<p><a href="http://www.minousoft.com/downloads/telephonenumberwidget.apk"><img class="alignnone size-full wp-image-56" title="telephonenumberwidget.apk" src="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget.apk_.png" alt="" width="234" height="234" /></a></p>
<p>It&#8217;s only 10k, so you don&#8217;t have to worry about installing it to your SD card. Download that to your phone and run it using the package installer.  It should work on Android 1.6 and up. The app requires permission to read the phone&#8217;s identity; this is needed to retrieve the phone number from the SIM card.</p>
<p>The widget comes in 4&#215;1 and 2&#215;1 sizes. The background is translucent grey, and the text is white with a black shadow. It&#8217;s designed to passively update every 5 minutes, and therefore uses barely any CPU. If it hasn&#8217;t updated yet, it will just show &#8220;Loading number&#8230;&#8221; unless there is a problem with the interface. There are two possible error messages: &#8220;No telephone.&#8221; if there is no interface present, and &#8220;Number unknown.&#8221; if no number is returned.</p>
<p><a href="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen1.png"><img class="alignnone size-medium wp-image-58" title="telephonenumberwidget-screen1" src="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen1-218x300.png" alt="" width="218" height="300" /></a><a href="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen2.png"><img class="alignnone size-medium wp-image-61" title="telephonenumberwidget-screen2" src="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen2-218x300.png" alt="" width="218" height="300" /></a></p>
<p><a href="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen3.png"><img class="alignnone size-medium wp-image-60" title="telephonenumberwidget-screen3" src="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen3-218x300.png" alt="" width="218" height="300" /></a><a href="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen4.png"><img class="alignnone size-medium wp-image-59" title="telephonenumberwidget-screen4" src="http://www.minousoft.com/wp-content/uploads/2012/01/telephonenumberwidget-screen4-218x300.png" alt="" width="218" height="300" /></a></p>
<p>This is my first app (even though it doesn&#8217;t really do much) so it was a useful learning experience into the way that Android works. I&#8217;ve been running the app on my main home screen for quite a while now and I haven&#8217;t encountered any bugs, however, if you do find a bug, please let me know.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2012/01/simple-android-telephone-number-widget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Touhou Youyou Kengeki Musou demo: BitTorrent mirror</title>
		<link>http://www.minousoft.com/2011/12/touhou-youyou-kengeki-musou-demo-bittorrent-mirror/</link>
		<comments>http://www.minousoft.com/2011/12/touhou-youyou-kengeki-musou-demo-bittorrent-mirror/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 06:31:06 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Gaming]]></category>
		<category><![CDATA[touhou]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=50</guid>
		<description><![CDATA[The new Youmu game now has a demo out! I&#8217;ve set up a BitTorrent download with web seeding, and added the file to this server to help mirror it, since the other mirrors are terrible. DOWNLOAD LINK: http://www.minousoft.com/downloads/kengekiWebTrial.zip.torrent BitLet link (torrent from a Java applet in your browser) If you&#8217;re having trouble, you can use [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ankake.iza-yoi.net/index.htm">The new Youmu game</a> now has a demo out! I&#8217;ve set up a BitTorrent download with web seeding, and added the file to this server to help mirror it, since the other mirrors are terrible.</p>
<p><big><strong>DOWNLOAD LINK:</strong> <a href="http://www.minousoft.com/downloads/kengekiWebTrial.zip.torrent">http://www.minousoft.com/downloads/kengekiWebTrial.zip.torrent</a><br /><script src="http://www.bitlet.org/javascripts/BitLet.js" type="text/javascript"></script><br />
<a href="http://www.bitlet.org?torrent=http%3A%2F%2Fwww.minousoft.com%2Fdownloads%2FkengekiWebTrial.zip.torrent" onclick="return BitLet.openDownloadFromAnchor(this);">BitLet link (torrent from a Java applet in your browser)</a></big></p>
<p>If you&#8217;re having trouble, you can use the download at http://www.minousoft.com/downloads/kengekiWebTrial.zip</p>
<p>YouTube video:</p>
<p><iframe src="https://www.youtube-nocookie.com/embed/pd06Xl8HMUQ?rel=0&amp;hd=1" frameborder="0" width="640" height="360"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2011/12/touhou-youyou-kengeki-musou-demo-bittorrent-mirror/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to set custom screen resolutions in Windows</title>
		<link>http://www.minousoft.com/2011/12/how-to-set-custom-screen-resolutions-in-windows/</link>
		<comments>http://www.minousoft.com/2011/12/how-to-set-custom-screen-resolutions-in-windows/#comments</comments>
		<pubDate>Thu, 29 Dec 2011 09:24:02 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[meta]]></category>
		<category><![CDATA[pc]]></category>
		<category><![CDATA[resolution]]></category>
		<category><![CDATA[solution]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=30</guid>
		<description><![CDATA[I ran into a problem when I installed Sonic Generations on my laptop: I wanted to select a resolution that wasn&#8217;t available in the options menu. The lowest widescreen resolution available in the configuration executable was 1024&#215;600, and I experienced low framerates during certain parts of the game. What I wanted to do was select [...]]]></description>
			<content:encoded><![CDATA[<p>I ran into a problem when I installed Sonic Generations on my laptop: I wanted to select a resolution that wasn&#8217;t available in the options menu.</p>
<p>The lowest widescreen resolution available in the configuration executable was 1024&#215;600, and I experienced low framerates during certain parts of the game. What I wanted to do was select a lower resolution, but the only other options were 640&#215;480 and 800&#215;600, which both have a 4:3 aspect ratio. My panel&#8217;s native resolution is 1366&#215;768, which is an aspect ratio of 1.7786458333333&#8230;:1, and 16:9 is equivalent to a 1.777777&#8230;:1 aspect ratio, so the ratio I&#8217;m looking for is pretty close to 16:9 (the difference is small enough that I won&#8217;t notice.) The problem with my setup is that if I use a resolution that has an aspect ratio that is too far from the native ratio, the image will be stretched to fill the screen, making the characters displayed onscreen look fat (or skinny.) What I wanted was a way to set a custom resolution of 854&#215;480, which is 16:9 480p.</p>
<p>I initially tried to directly edit the Sonic Generations graphics configuration file, which is located at:<br />
<code>C:\Program Files (x86)\Steam\steamapps\common\sonic generations\GraphicsConfig.cfg</code></p>
<p>I have included the contents of this file below. Everyone&#8217;s configuration file will be different (I will explain this shortly) so do not copy the whole thing &#8211; it won&#8217;t work on your computer.<br />
<code>Do not manually edit this file, use the configuration tool.<br />
AMD Radeon(TM) HD 6520G<br />
\\.\DISPLAY1<br />
1024.600.60<br />
0<br />
0<br />
1<br />
1<br />
0<br />
d7b71ee2-d507-11cf-c777-6e15bec2c535<br />
MONITOR\INL0015\{4d36e96e-e325-11ce-bfc1-08002be10318}\0001<br />
1515474505<br />
</code></p>
<p>The file itself specifically states not to edit it, so naturally, I went and edited it anyway. I changed the 4th line, which contained &#8220;<code>1024.600.60</code>&#8221;</p>
<p>This line is written in the format &#8220;width.height.frequency&#8221; and all I had to do was punch in &#8220;854.480.60&#8243; in its place and save it. In hindsight, it seems that I should have heeded the warning, as I was greeted with an error message upon starting Sonic Generations:<br />
<code>Critical Error! The detected configuration does not match your current hardware. Please re-run the configuration tool.</code></p>
<p>It seems as though the game is programmed to check if the display hardware actually supports the desired resolution. When I noticed this, I went back to the configuration file because I remembered seeing some GUIDs. The 11th line is of interest here:<br />
<code>MONITOR\INL0015\{4d36e96e-e325-11ce-bfc1-08002be10318}\0001</code></p>
<p>After some poking around using that GUID, I realized that I could actually set the resolution myself using a registry key located under a related GUID. If you follow the instructions below, you should be able to enter whatever resolutions you want. I highly recommend backing up the registry before attempting this. If you break something, it&#8217;s not my fault, as this is an untested hidden feature.</p>
<h2>Step 1: Retrieve the correct GUID for the display driver</h2>
<p>The easiest way I know of to get the correct GUID is using an ATI graphics chipset. If you have another graphics chipset you will have to use Device Manager (devmgmt.msc) to find it.</p>
<h3>ATI/AMD:</h3>
<ol>
<li>Start Catalyst by clicking the icon in your system tray/notification area.</li>
<li>Go to Information &gt; Software and click on &#8220;2D Driver File Path&#8221;.</li>
<li>Right click the entry and click &#8220;Copy Selected&#8221;. Paste this into Notepad. You should get a line that looks like:<br />
&#8220;<code>2D Driver File Path    /REGISTRY/MACHINE/SYSTEM/ControlSet001/Control/CLASS/{4D36E968-E325-11CE-BFC1-08002BE10318}/0000    </code>&#8220;</li>
<li>Locate the chunk of hexadecimal numbers in the format of <code>{ABCD1234-ABCD-1234-ABCD-1234ABCD1234}</code>. Copy this chunk into your clipboard.</li>
</ol>
<p><a href="http://www.minousoft.com/wp-content/uploads/2011/12/disp1.png"><img class="alignnone size-medium wp-image-37" title="disp1" src="http://www.minousoft.com/wp-content/uploads/2011/12/disp1-300x298.png" alt="" width="300" height="298" /></a></p>
<h3>Device Manager:</h3>
<ol>
<li>Go to Start &gt; Run&#8230; and enter &#8220;devmgmt.msc&#8221; into the box and hit Enter. Device Manager will appear. It may take a minute for the device list to show up.</li>
<li>Open Display Adapters and double-click on your display adapter device. The Device Properties window will appear.<br />
<a href="http://www.minousoft.com/wp-content/uploads/2011/12/dm1.png"><img class="alignnone size-medium wp-image-44" title="dm1" src="http://www.minousoft.com/wp-content/uploads/2011/12/dm1-300x235.png" alt="" width="300" height="235" /></a></li>
<li>Go to the Details tab. Under the Properties drop box, select &#8220;Device class guid&#8221;.<br />
<a href="http://www.minousoft.com/wp-content/uploads/2011/12/dm2.png"><img class="alignnone size-full wp-image-45" title="dm2" src="http://www.minousoft.com/wp-content/uploads/2011/12/dm2.png" alt="" width="408" height="551" /></a></li>
<li>Under Value, the GUID will appear. Right click it and click Copy.<br />
<img class="alignnone size-full wp-image-46" title="dm3" src="http://www.minousoft.com/wp-content/uploads/2011/12/dm3.png" alt="" width="405" height="209" /></li>
</ol>
<h2>Step 2: Locate the registry key</h2>
<p>Open Regedit &#8211; to do this, go to Start &gt; Run&#8230; and enter &#8220;regedit.exe&#8221; into the box and hit Enter. Depending on your system&#8217;s security settings, or if you have UAC enabled, you may be asked for permission to start the program. Accept it and Registry Editor should appear.</p>
<p>The key that we&#8217;re looking for is <code>HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{ABCD1234-ABCD-1234-ABCD-1234ABCD1234}\0000</code> where <code>{ABCD1234-ABCD-1234-ABCD-1234ABCD1234}</code> is the GUID. To find it, go to Edit &gt; Find&#8230; and paste the GUID into the box, then hit Find Next.</p>
<p><img class="alignnone size-full wp-image-38" title="disp2" src="http://www.minousoft.com/wp-content/uploads/2011/12/disp2.png" alt="" width="413" height="195" /></p>
<p>&nbsp;</p>
<p>It might take a while for the key to be found. When it appears, open the &#8220;<code>0000</code>&#8221; subkey. Inside is a binary value called &#8220;<code>DALNonStandardModesBCD1</code>&#8220;. This is what we&#8217;re looking for.</p>
<p><a href="http://www.minousoft.com/wp-content/uploads/2011/12/disp3.png"><img class="alignnone size-medium wp-image-39" title="disp3" src="http://www.minousoft.com/wp-content/uploads/2011/12/disp3-300x146.png" alt="" width="300" height="146" /></a></p>
<p>&nbsp;</p>
<h2>Step 3: Edit the DALNonStandardModesBCD1 value</h2>
<p>Double click on the value to open the Edit Binary Value window.</p>
<p><img class="alignnone size-full wp-image-40" title="disp4" src="http://www.minousoft.com/wp-content/uploads/2011/12/disp4.png" alt="" width="373" height="326" /></p>
<p>&nbsp;</p>
<p>The value is very strange, as it does not use normal binary values. I suspect that &#8220;BCD&#8221; refers to <a href="https://en.wikipedia.org/wiki/Binary-coded_decimal">binary coded decimal</a>. In the image above, you can see that I have entered some of my own resolutions. The first two bytes are the BCD representation of the width in pixels, the next two bytes are the height, the next three bytes appear to be padding, and the last byte is the vertical refresh frequency in hertz. Notice that the numbers are padded from the left with zeroes. I am unsure of how to enter frequencies greater than 99Hz (such as 120Hz) or even if that is allowed at all.</p>
<p>The resolutions I have shown above are:</p>
<ul>
<li>427&#215;240 @ 60Hz</li>
<li>480&#215;360 @ 60Hz</li>
<li>640&#215;360 @ 60Hz</li>
<li>854&#215;480 @ 60Hz</li>
<li>1024&#215;600 @ 60Hz</li>
<li>1280&#215;720 @ 60Hz</li>
<li>1280&#215;768 @ 60Hz</li>
<li>1400&#215;1050 @ 60Hz</li>
</ul>
<p>To add your own lines, simply enter eight bytes at a time into the left side of the hex editor &#8211; you don&#8217;t press Enter to make new lines. The hex editor in Regedit is a little bit annoying, so double check that you&#8217;ve entered it properly. If you make a mistake, hit Cancel.</p>
<p>Once you&#8217;re finished, hit OK and close Regedit.</p>
<h2>Step 4: Reboot and play</h2>
<p>You have to reboot for this change to take effect. The new resolution options should then show up in most games.</p>
<p><img class="alignnone size-full wp-image-41" title="disp5" src="http://www.minousoft.com/wp-content/uploads/2011/12/disp5.png" alt="" width="352" height="438" /></p>
<p>&nbsp;</p>
<p>Surprisingly, this procedure improved my experience in Borderlands as well. I set all the graphics settings to maximum, and set the resolution to 854&#215;480. I got better framerates as well as the ability to enable the depth-of-field effect without causing a performance hit.</p>
<p>Interestingly, you can enter strange resolutions of nonstandard sizes and aspect ratios. I don&#8217;t really want to test the limits of this for fear of invoking some unknown glitch in the graphics drivers. However, I have successfully set the display to 427&#215;240 with no problems other than the mouse cursor and user interface taking up a gigantic proportion of the screen.</p>
<p><strong>Addendum:</strong> updating my graphics drivers wiped these settings and I had to enter them again! How annoying.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2011/12/how-to-set-custom-screen-resolutions-in-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>YouTube&#8217;s copyright infringement detection system fails&#8230;</title>
		<link>http://www.minousoft.com/2011/08/youtubes-copyright-infringement-detection-system-fails/</link>
		<comments>http://www.minousoft.com/2011/08/youtubes-copyright-infringement-detection-system-fails/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 17:40:58 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[data mining]]></category>
		<category><![CDATA[rant]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=24</guid>
		<description><![CDATA[A while back, I uploaded this video. It contains 24 minutes of what is essentially just band-limited noise. What is interesting is the fact that it was recently flagged as containing copyrighted content. YouTube&#8217;s automated copyright detection scheme must have been tricked by the sound somehow, and it must have found high correlation between some [...]]]></description>
			<content:encoded><![CDATA[<p>A while back, I uploaded <a href="http://www.youtube.com/watch?v=Vu3eQrUaCIA">this video</a>. It contains 24 minutes of what is essentially just band-limited noise. What is interesting is the fact that it was recently flagged as containing copyrighted content. YouTube&#8217;s automated copyright detection scheme must have been tricked by the sound somehow, and it must have found high correlation between some song and bits of my audio.</p>
<p><a href="http://www.minousoft.com/wp-content/uploads/2011/08/youtube_copyright_wtf.png"><img class="alignnone size-full wp-image-25" title="youtube_copyright_wtf" src="http://www.minousoft.com/wp-content/uploads/2011/08/youtube_copyright_wtf.png" alt="" width="829" height="106" /></a></p>
<blockquote><p>Your video, Datasounds － Binary information as audio., may include content that is owned or administered by these entities:</p>
<p>Entity: Music Publishing Rights Collecting Society</p>
<p>Content Type: Musical Composition</p></blockquote>
<p>Just who is this &#8220;Music Publishing Rights Collecting Society&#8221; anyway? It sounds like some sort of union for composers and publishers or something. Without any more information, I don&#8217;t even know what song it is that they claim my video infringes upon (which I bet would be pretty amusing to find out.) Luckily I am able to submit an appeal to get this taken off my video.</p>
<p>If you think about it, it starts to make sense, as many songs contain fragments of noise and square waves. The fact that my video contains a sound clip that is similar to another video means nothing at all. What if a copyrighted video uses a public-domain sound clip, and I happen to use the same sound clip? My video would be flagged, because there is a common element to both videos, even though my video does not necessarily infringe on the copyright of the other video. To fix this, a data mining scheme would have to have a whitelist of non-infringing material, which seems infeasible to me.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2011/08/youtubes-copyright-infringement-detection-system-fails/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>How to fix stuck sleep mode in Windows 7</title>
		<link>http://www.minousoft.com/2011/08/how-to-fix-stuck-sleep-mode-in-windows-7/</link>
		<comments>http://www.minousoft.com/2011/08/how-to-fix-stuck-sleep-mode-in-windows-7/#comments</comments>
		<pubDate>Sun, 21 Aug 2011 22:10:37 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[acpi]]></category>
		<category><![CDATA[sleep]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=21</guid>
		<description><![CDATA[Yesterday, I noticed that my laptop wouldn&#8217;t go to sleep after relocating hiberfil.sys. hiberfil.sys is a file which stores a compressed RAM dump during hybrid sleep and hibernation power states. In sleep mode all components are powered off except for the RAM, so that the computer can resume from a low power state instantly. Hybrid [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday, I noticed that my laptop wouldn&#8217;t go to sleep after relocating hiberfil.sys.</p>
<p>hiberfil.sys is a file which stores a compressed RAM dump during hybrid sleep and hibernation power states. In sleep mode all components are powered off except for the RAM, so that the computer can resume from a low power state instantly. Hybrid sleep is the same thing except it also makes a copy of the RAM in hiberfil.sys in case both the battery and AC power gets cut accidentally, which prevents you from losing your work. It&#8217;s a bit like a combination of hibernate and sleep mode.</p>
<p>My problem was that the laptop would almost go into sleep mode, but the flashing power LED that indicates sleep never came on and the fan was still running. There was just a powered-off black screen and no way to wake the computer. The only way out was to do a hard shut down &#8211; fortunately I had hybrid sleep enabled, so my work wasn&#8217;t lost. I narrowed down the problem to hiberfil.sys and I found that removing and then recreating it fixed everything.</p>
<p>This is the procedure to fix the problem (it may or may not work on Windows Vista):</p>
<ol>
<li>Open an elevated-permissions command prompt using the following procedure:</li>
<ol>
<li>Go to &#8216;Start &gt; All Programs &gt; Accessories&#8217;</li>
<li>Right click on &#8216;Command Prompt&#8217;</li>
<li>Click on &#8216;Run as administrator&#8217;</li>
</ol>
<li>Type the following command and press Enter:<br />
powercfg -h off</li>
<li>Reboot. (<strong>You must reboot for this to work.</strong>)</li>
<li>Open another elevated-permissions command prompt.</li>
<li>Type the following command and press Enter:<br />
powercfg -h on</li>
<li>Reboot.</li>
<li>Sleep mode should now work.</li>
</ol>
<p>Most people that encounter problems with Windows&#8217; sleep function have the problem where the computer wakes up immediately after sleep. I have not figured this one out yet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2011/08/how-to-fix-stuck-sleep-mode-in-windows-7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>&#8220;Laptops don&#8217;t have serial ports anymore? WTF?&#8221; and some serious problems with the Prolific PL-2303 serial-over-USB adapter</title>
		<link>http://www.minousoft.com/2011/08/laptops-dont-have-serial-ports-anymore-wtf-and-some-serious-problems-with-the-prolific-pl-2303-serial-over-usb-adapter/</link>
		<comments>http://www.minousoft.com/2011/08/laptops-dont-have-serial-ports-anymore-wtf-and-some-serious-problems-with-the-prolific-pl-2303-serial-over-usb-adapter/#comments</comments>
		<pubDate>Sun, 21 Aug 2011 20:15:55 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[pc]]></category>
		<category><![CDATA[rant]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[serial]]></category>
		<category><![CDATA[solution]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=16</guid>
		<description><![CDATA[I recently purchased a PL-2303 serial-over-USB adapter to make up for the fact that PC manufacturers (namely laptop manufacturers) don&#8217;t seem to want to include any I/O ports on their products. Now, I understand that we&#8217;re in the future and everything, but seriously, guys&#8230; I might have bought a new laptop, but this doesn&#8217;t mean [...]]]></description>
			<content:encoded><![CDATA[<p>I recently purchased a PL-2303 serial-over-USB adapter to make up for the fact that PC manufacturers (namely laptop manufacturers) don&#8217;t seem to want to include any I/O ports on their products.</p>
<p>Now, I understand that we&#8217;re in the future and everything, but seriously, guys&#8230; I might have bought a new laptop, but this doesn&#8217;t mean that I don&#8217;t need to use that new laptop to talk to some pretty ancient hardware. So maybe the parallel port is huge and there isn&#8217;t any room for it. I kind of expect at least a serial port, though, since most laptops have a VGA port which is the same size.</p>
<p>So, okay, you&#8217;re not going to give me a serial port. Okay, I understand. It&#8217;s legacy hardware and you don&#8217;t care. I&#8217;ll just buy an external serial port card and plug that in.</p>
<p>Wait, what? Laptops don&#8217;t have cards anymore either? When did this happen? Whatever happened to PCMCIA and ExpressCard? How the hell am I supposed to plug anything in?</p>
<p>Upon further inspection, there really isn&#8217;t any more room for I/O ports, since the other components are squeezed into such a small form factor. But this brings up an interesting question: What good is a powerful computer if there isn&#8217;t a way to get information in and out in many different ways?</p>
<p>At this point, there are only a few options for getting data in and out of the laptop, and most of them are completely insane:</p>
<ul>
<li>Connecting some kind of weird bit-banging I/O expander via Ethernet, Bluetooth, or 802.11b/g/n. This seems like the best idea.</li>
<ul>
<li>Apparently, 1Gbps Ethernet isn&#8217;t supported on this laptop, so for a wired connection, I&#8217;m limited to 100Mbps. This works, though. You can place the device on a local LAN segment or connect it directly to the laptop for more I/O.</li>
<li>I think the maximum speed of Bluetooth is somewhere in the megabit range. With 802.11g, you can expect about 20-30 megabits per second under real conditions. I&#8217;m not sure what the typical speeds of 802.11n really are, since I haven&#8217;t bothered to purchase a new router, but I hear it&#8217;s pretty fast.</li>
<li>With wireless links, there can be a lot of packet loss and jitter. Everything could stop working in the presence of an RF source, such as a roommate making nachos in a microwave oven. If you&#8217;re using a serial link to upgrade the firmware on some device, you really don&#8217;t want the transfer to screw up. Some devices aren&#8217;t very lenient in terms of data rate &#8211; waiting too long to send the next bit could brick the device forever.</li>
<li>Bluetooth is annoying and I always have problems with it.</li>
</ul>
<li>USB</li>
<ul>
<li>The laptop doesn&#8217;t have USB 3.0 (figures&#8230;) so I&#8217;m stuck with 2.0. Still, the transfer speeds are supposedly 480Mbps, but I kind of don&#8217;t trust this. If I have multiple USB devices, the speed will be slower if the USB ports are connected to a single hub internally on the USB controller IC. Will this induce jitter?</li>
<li>Nothing stops you from creating a device that plugs into two USB ports for higher data rate. But does this actually translate to a higher data rate, or will the laptop slow down even more trying to poll both devices?</li>
<li>I&#8217;ve had really weird driver-level glitches with USB stuff. It makes me slightly superstitious&#8230;</li>
</ul>
<li>HDMI</li>
<ul>
<li>Oh boy, how would I even pull this off&#8230;</li>
<li>HDMI is meant to provide uncompressed video with a resolution of at least 1080p at 60fps to HDTVs over a differential signalling link. The data rate is extremely high, something like 10Gbps, which you&#8217;d normally never encounter outside of, say, optical fiber networks. HDMI also has a bunch of protocol extensions for sending audio, remote control data, and even Ethernet over the wire as well.</li>
<li>If the video card could be abused to send arbitrary differential signals down the HDMI connector, that would make everything else easy. Unfortunately, I predict that the card won&#8217;t let you do this without heavy modification. Even if it did, there would be some serious driver hacking to do.</li>
<li>You should be able to turn the data that you want to send into a 1920&#215;1080 image, send that to the video card, and display it on the HDMI output as a second monitor. If you were to actually plug a monitor in, you&#8217;d see very seizure-inducing, colorful noise. Instead of a monitor, we would plug in our device, which decodes the HDMI stream and turns the RGB values back into data. This data goes into a FIFO buffer and the I/O interface would read bits off of that.</li>
</ul>
<li>VGA</li>
<ul>
<li>Essentially the same deal as HDMI, except analog, lossy, and with lots of inter-symbol interference.</li>
<li>I have read about using a VGA graphics card as a radio transmitter so I suspect it is possible.</li>
</ul>
<li>Adding more ports off of an internal bus</li>
<ul>
<li>You lose the warranty.</li>
<li>I suspect that it could work, since there are multiple-slot riser cards that do this for things like PCI.</li>
<li>There are plenty of internal buses that you could hijack for this. SATA comes to mind.</li>
<li>Unpopulated pins/traces/connectors can be used&#8230; for example, if one USB port was omitted due to space constraints, you can just solder the connector to the unused pins of the USB controller IC.</li>
<li>Lots of tiny soldering.</li>
<li>If it works you can plug anything you want into it, but you have to have a ribbon cable coming out of your laptop&#8230;</li>
</ul>
<li>Stereo Audio</li>
<ul>
<li>The laptop has 192kHz DACs, so there is quite some bandwidth there&#8230; and audio is stereo, so you have two channels.</li>
<li>You could just send a Manchester-encoded square wave signal down the wire at less than half the Nyquist frequency, but that could get corrupted. It would be better to send some sort of QAM or multiple-carrier signal with forward error correction.</li>
<li>I would lose the use of the soundcard while doing this, and what happens when the operating system plays an error sound, or you hold down too many keys and it beeps?</li>
</ul>
<li>SDIO</li>
<ul>
<li>There&#8217;s an SD card reader. If I&#8217;m not mistaken, an SD card uses an SPI bus. A standard exists called SDIO which lets you connect peripherals (such as a tiny camera or wireless card) to the SD reader of a handheld device.</li>
<li>I highly doubt that the bus would be accessible to the laptop itself. I&#8217;m fairly certain that this is abstracted away through some controller hardware. I don&#8217;t think it&#8217;s possible, and it would require lots of hacking. Not worth it. SD cards are pretty slow anyway.</li>
</ul>
</ul>
<p>So, after thinking about all of this, I decided to just go buy one of those USB serial adapters that I&#8217;ve been hearing about. I have heard of some of them not performing well so I tried to pick one that was somewhat popular and had an okay-looking manufacturer, so as to maximize the chances of it actually working. So I went with the Prolific PL-2303. The thing about that is that Prolific only manufactures the IC. It&#8217;s up to random independent manufacturers to actually provide a PCB, some wires and connectors, and a plastic shell. However, Prolific provides the drivers. I thought that was strange &#8211; why doesn&#8217;t Prolific just make the whole thing?</p>
<p>A week or two goes by and I get it in the mail. The packaging doesn&#8217;t have a manufacturer name on it, it just seems like some generic product. Open it, plug it in, apparently it needs drivers.</p>
<p>Okay, so there&#8217;s a little mini CD with the drivers in the packaging. I&#8217;ll just pop that sucker in the drive.</p>
<p>What&#8217;s that high-pitched whirring noise? Oh, never mind, it&#8217;s the CD drive. Damn, are those mini CDs loud. I think they&#8217;re noisier than normal CDs. Weird.</p>
<p>I open the root of the CD. It has folders with drivers for every single product that this manufacturer makes. It takes a moment to realize which one I need. I install it, it&#8217;s done.</p>
<p>Yet something isn&#8217;t right. The device still shows up as not having drivers. I unplug it and then plug it back in. Same thing. Reboot. Same thing.</p>
<p>I tried installing the drivers using the INF files, &#8220;Have Disk&#8221; and all of those methods. Still no joy.</p>
<p>As it turns out, the drivers don&#8217;t seem to support my operating system. However, I was assured that the device works under Windows 7 by none other than the online retailer&#8217;s product page. So I uninstall the drivers and go looking on Prolific&#8217;s site for updated drivers. At this point I started to become annoyed. I went into this installation session expecting some trouble, but not this much trouble.</p>
<p>I find, download, and install the updated drivers. It says they work in Windows 7. Okay, I forgive you, unknown manufacturer, because usually the driver CD is out of date anyway. I will give you the benefit of the doubt.</p>
<p>The device now says it has drivers. Great. I set it to COM1. I plug in my GPS to get a nice 4800bps NMEA stream going. Then I open a terminal on COM1. A glorious wall of commas and numbers continuously scrolls by. Success. My work here is done. Now I can go get a cold drink and worry about other, less important things. But before I go and do that, I think I&#8217;ll just sit and watch the numbers go by for just another moment.</p>
<p>And then suddenly, without a warning, IRQL_NOT_LESS_OR_EQUAL</p>
<p>What the hell? A Blue Screen of Death.</p>
<p>Okay, now, it&#8217;s personal. First it doesn&#8217;t work with the CD. Then I get the drivers claiming to work with Windows 7. Then it crashes at the kernel level, killing my Firefox session and all my running programs. Fortunately I had saved everything before attempting this hardware installation. That said, why does the driver even run at the kernel level? Especially if it has bugs. That monster should be in userspace. And yet it was somehow a signed driver&#8230;</p>
<p>I hope you&#8217;re happy, evil hardware spirits. Thanks for wasting my time.</p>
<p>&nbsp;</p>
<p>After much trial-and-error, I find that it reproducibly BSoDs whenever a connection is made to the COM port. Merely plugging the device in does not trigger the fatal death spiral. I&#8217;m starting to wonder whether the fact that I&#8217;m running an x86-64 version of Windows 7 makes some sort of difference, but I don&#8217;t even own an x86 copy of Windows 7 to test with, nor do I want to bother trying. So I go back to Googling various error codes and reading through Prolific&#8217;s website looking for answers. On the product page, and Prolific&#8217;s site it says something about Linux drivers. As it turns out, recent Linux kernels have support built right in. Great, so maybe I can still get some use out of this product after all, only under a completely different operating system.</p>
<p>I boot into Ubuntu 11.04 and plug it in. It is recognized, you can get the 32-bit USB product ID and everything. I can&#8217;t remember what command I used to check the status, but it said that it was mounted to /dev/ttyUSB0, as expected. So I plug in the GPS and try &#8216;cat /dev/ttyUSB0&#8242; but no output is produced. I thought that maybe I was doing it wrong, so I installed gpsd and some random GPS mapping software packages and tried them all out. Nothing seemed to happen, no output at all.</p>
<p>It&#8217;s all so very quiet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2011/08/laptops-dont-have-serial-ports-anymore-wtf-and-some-serious-problems-with-the-prolific-pl-2303-serial-over-usb-adapter/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>it&#8217;s back &#8211; after a few months of development, I hope it was worth the wait</title>
		<link>http://www.minousoft.com/2011/08/its-back-after-a-few-months-of-development-i-hope-it-was-worth-the-wait/</link>
		<comments>http://www.minousoft.com/2011/08/its-back-after-a-few-months-of-development-i-hope-it-was-worth-the-wait/#comments</comments>
		<pubDate>Sun, 21 Aug 2011 18:11:59 +0000</pubDate>
		<dc:creator>oakwhiz</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[comments]]></category>
		<category><![CDATA[identity]]></category>
		<category><![CDATA[meta]]></category>
		<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.minousoft.com/?p=12</guid>
		<description><![CDATA[Well, here it is &#8211; a fresh new install. It&#8217;s still got that new-install smell, too. (It&#8217;s probably carcinogenic, do not actually inhale the fumes.) Now that everything is more-or-less set up, I guess I have to start making posts. Very well then. I&#8217;ll start with what I&#8217;ll be doing differently from now on. My [...]]]></description>
			<content:encoded><![CDATA[<p>Well, here it is &#8211; a fresh new install. It&#8217;s still got that new-install smell, too. (It&#8217;s probably carcinogenic, do not actually inhale the fumes.)</p>
<p>Now that everything is more-or-less set up, I guess I have to start making posts. Very well then. I&#8217;ll start with what I&#8217;ll be doing differently from now on.</p>
<p>My goal is to post more often. To accomplish this, I will try to make shorter, easily-digestible posts rather than just longer articles. Unfortunately, this could very well mean that the quality of posts will be lower, because I might put less thought into my posts.</p>
<p>I would also like to see about getting some more guest authors to make a few posts here and there.</p>
<p>I used to have an email notification system, but I am leaving that out for now. It was helpful in getting notifications across to forgetful people who might not check the main page periodically. However, we&#8217;re in the future now, and RSS and Twitter are better methods of getting updates. If you want email updates, you can use an RSS reader service that sends emails. For now, I don&#8217;t want to set that up myself.</p>
<p>The ability to register an account has been removed, as it doesn&#8217;t really serve an effective purpose. You might be thinking, &#8220;But what about comments? People need to have a verifiable identity for comments!&#8221; However, accounts don&#8217;t really verify anything at all, other than the fact that a specific email address is able to receive messages, and the same password is being used on every login. This doesn&#8217;t really verify anything to a significant degree and is unnecessary, so I disabled it. Additionally, your identity is very likely to be unimportant in constrast to the message that you are sending. If your identity is so important and so relevant that you need it to be verified, an email address and a password is not going to help. Use a cryptographic signature instead, i.e. the clearsign function of GNU Privacy Guard.</p>
<p>Lastly&#8230; As you might have (should have?) noticed, there are some very odd-looking (but hopefully awe-inspiring) patterns in the background. You might also be thinking, &#8220;Gee, this image sure is taking a while to load. The server must be really slow.&#8221; If this is the case, then this may come as a shock to you: the background images are not being downloaded at all. In fact, they are being generated dynamically in your browser using some JavaScript and the HTML5 Canvas element. If you&#8217;re interested in how the patterns are generated, they are actually <a href="http://mathworld.wolfram.com/ElementaryCellularAutomaton.html">elementary cellular automata</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minousoft.com/2011/08/its-back-after-a-few-months-of-development-i-hope-it-was-worth-the-wait/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

