<?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>Retrode.org &#187; Tech info</title>
	<atom:link href="http://www.retrode.org/category/retrodedevblog/tech-info/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.retrode.org</link>
	<description>.org</description>
	<lastBuildDate>Fri, 03 Feb 2012 06:29:23 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Retrode2 Q&amp;A</title>
		<link>http://www.retrode.org/2011/03/retrode2-qa/</link>
		<comments>http://www.retrode.org/2011/03/retrode2-qa/#comments</comments>
		<pubDate>Wed, 30 Mar 2011 21:07:37 +0000</pubDate>
		<dc:creator>Matthias_H</dc:creator>
				<category><![CDATA[Retrode Dev Blog]]></category>
		<category><![CDATA[Tech info]]></category>

		<guid isPermaLink="false">http://www.retrode.org/?p=1917</guid>
		<description><![CDATA[<p>This is a collection of questions regarding the Retrode2. Instead of responding to each and every comment individually (i.e., forum, YouTube, etc.), I&#8217;ll try to bundle the answers here. If your question is not answered, ask away in the comment section below the post.</p>
<p>Q: What happens to my &#8220;Golden Edition&#8221; Retrode?</p>
<p>A: The firmware will be [...]]]></description>
			<content:encoded><![CDATA[<p>This is a collection of questions regarding the Retrode2. Instead of responding to each and every comment individually (i.e., forum, YouTube, etc.), I&#8217;ll try to bundle the answers here. If your question is not answered, ask away in the comment section below the post.<span id="more-1917"></span></p>
<p><strong>Q: What happens to my &#8220;Golden Edition&#8221; Retrode?</strong></p>
<p>A: The firmware will be maintained for both hardware versions jointly, and future plug-in adapters will remain downward compatible.</p>
<p><strong>Q: Where, when, how much?</strong></p>
<p>A: The Retrode2 is made in Germany (yay! no child labour except my very own) and will become available this summer, both directly from myself and via retail partners. As for the price tag, I can&#8217;t tell until all bills are paid. I&#8217;m aiming for EUR 65 (incl. VAT) for EU folks, or USD 85 (excl. VAT) worldwide. </p>
<p><strong>Q: Will plug-in adapters be offered for sale?</strong></p>
<p>A: They will be, but at a later time. Currently, I have no idea where to get LARGE quantities of cartridge shells to contain them. Gutting used games is not an option.</p>
<p><strong>Q: Is the S2&amp;K Mod integrated?</strong></p>
<p>A: Yes.</p>
<p><strong>Q: Why is the voltage switch hidden like this?</strong></p>
<p>A: Because you don&#8217;t need it that often anyway. Also, cost.</p>
<p><strong>Q: Will the SEGA slot fit 32X carts?</strong></p>
<p>A: Not immediately since they are significantly thicker than regular carts. 32x carts do work when you insert the 32X adapter without power cable. I haven&#8217;t tried it, though, and the adapter may collide with the Retrode&#8217;s lid (which can be removed).</p>
<p><strong>Q: Could the 9-pin ports be made to support other gamepads?</strong></p>
<p>A: Depends, dedicated adapters may in fact be more versatile with that regard since the ports don&#8217;t need to share the bus with the cartridges. Atari VCS? Should work. Anything with analog knobs? Not without hardware mod. Odd controllers where the pins are used both directions? Not without hardware mod. ColecoVision? I don&#8217;t even find documentation on that one, so don&#8217;t know.</p>
<p>For the technically inclined, pins 1,2,3,4,6,9 are wired as digital inputs. Pin 7 is digital output (&#8221;Select&#8221;). Pin 5: +5V. Pin 8: GND. Anything that sticks to this scheme should run without problems.</p>
<p><strong>Q: Is the recessed USB port wide enough for the cable connector?</strong></p>
<p>A: In the prototype: no (well observed). In production: yes.</p>
<p><strong>Q: NES plug-in? Really?</strong></p>
<p>A: Wait a second. I&#8217;ve bought two NES cartridges but (1) they will have to wait until I find the time, and (2) there are more than two different types of memory mapping. Developing this plug-in will be a long and painful process, and there is simply NO WAY I&#8217;ll ever be coming near 100% or even 90% compatibility. According to <a href="http://tuxnes.sourceforge.net/nesmapper.txt">this document</a>, the two most popular memory mappers (MMC1/MMC3) should theoretically(!) give access to something like 1019 out of 1581 titles (64%) in the list &#8212; but frankly, I think the success rate will probably be more around 50%. Auto-detection of anything is near impossible, so a lot of settings will have to be made by hand.</p>
<p><strong>Q: How is SA-1 support coming along?</strong></p>
<p>A: No luck yet. Even using a SuperCIC, I did not manage to unlock the SA-1.</p>
<p><strong>Q: How about a dedicated plug-in slot on the back side?</strong></p>
<p>A: Due to the injection molding process, holes in any side walls are hard to achieve (the odd recessed shapes around the USB and LED are there for a reason). Also, I kind of like the plug-ins mechanically blocking the top slots, since it helps avoid conflicts between too many carts on the address/data buses.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.retrode.org/2011/03/retrode2-qa/feed/</wfw:commentRss>
		<slash:comments>89</slash:comments>
		</item>
		<item>
		<title>Current ratings</title>
		<link>http://www.retrode.org/2010/08/current-ratings/</link>
		<comments>http://www.retrode.org/2010/08/current-ratings/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 18:27:08 +0000</pubDate>
		<dc:creator>Matthias_H</dc:creator>
				<category><![CDATA[Retrode Dev Blog]]></category>
		<category><![CDATA[Tech info]]></category>

		<guid isPermaLink="false">http://www.retrode.org/?p=1702</guid>
		<description><![CDATA[<p>I just took an ampèremeter and measured the current that my Retrode draws from the USB port, with and without the 3.3V voltage converter, and also the additional current when cartridges are inserted and idle or busy. Turns out that typical current consumption will be between 20 and 50 mA. The extreme case is a [...]]]></description>
			<content:encoded><![CDATA[<p>I just took an ampèremeter and measured the current that my Retrode draws from the USB port, with and without the 3.3V voltage converter, and also the additional current when cartridges are inserted and idle or busy. Turns out that typical current consumption will be between 20 and 50 mA. The extreme case is a Retrode with A2600 cartridge, with draws approx. 100mA, thereof 28.3 for the Retrode itself and 70 for the cart. Keep this in mind when you consider connecting the Retrode to the OTG port of mobile devices, which is specified to provide a maximum of 100mA.</p>
<table>
<tr>
<td><strong>What?</strong></td>
<td><strong>5V</strong></td>
<td><strong>3.3V</strong></td>
</tr>
<tr>
<td>Retrode</td>
<td>28.3 mA</td>
<td>17.1 mA</td>
</tr>
<tr>
<td>SNES cart</td>
<td>9.8 mA (idle)<br />13.2 mA (busy)</td>
<td>5.0 mA (idle) <br />9.2 mA (busy)</td>
</tr>
<tr>
<td>SEGA cart</td>
<td>1.0 mA (idle)<br />11.9 mA (busy)</td>
<td>0.2 mA (idle) <br />8.1 mA (busy)</td>
</tr>
<tr>
<td>A2600 cart&nbsp;&nbsp;&nbsp;</td>
<td>ca. 70 mA</td>
<td>n/a</td>
</tr>
<tr>
<td>N64 cart</td>
<td>1.7 mA (idle)<br />20.6 mA (busy)</td>
<td>1.5 mA (idle)<br />11.2 mA (busy)</td>
</tr>
<tr>
<td>GB cart</td>
<td>5.1 mA (idle)<br />10.3 mA (busy)</td>
<td>19.2 mA (idle)<br />24.4 mA (busy)</td>
</tr>
<tr>
<td>GBA cart</td>
<td>0.1 mA (idle)<br />6.2 mA (busy)</td>
<td>0.2 mA (idle)<br />5.7 mA (busy)</td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.retrode.org/2010/08/current-ratings/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Mac users with config/SRAM writing issues?</title>
		<link>http://www.retrode.org/2010/06/mac-users-with-configsram-writing-issues/</link>
		<comments>http://www.retrode.org/2010/06/mac-users-with-configsram-writing-issues/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 21:43:19 +0000</pubDate>
		<dc:creator>Matthias_H</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Retrode Dev Blog]]></category>
		<category><![CDATA[Tech info]]></category>

		<guid isPermaLink="false">http://www.retrode.org/?p=1602</guid>
		<description><![CDATA[<p>I am currently investigating a case where the Retrode doesn&#8217;t seem to work the way it should. In particular, it appears as if under MacOS, write accesses to the Retrode (config file, SRAM) are sometimes ignored and the files are not written correctly. For instance, after saving the config file from a text editor and [...]]]></description>
			<content:encoded><![CDATA[<p>I am currently investigating a case where the Retrode doesn&#8217;t seem to work the way it should. In particular, it appears as if <strong>under MacOS, write accesses to the Retrode (config file, SRAM) are sometimes ignored and the files are not written correctly</strong>. For instance, after saving the config file from a text editor and resetting the Retrode, the file would contain the old data again. Needless to say, this is quite an annoyance, and the problem has been haunting me for some while now. </p>
<p>The good news is: I have come up with a possible solution. However, since I do not have a Mac, I cannot test it myself. Therefore, I would appreciate if someone could help me out with some testing. <strong>If you are a Mac user and you think you are affected by this problem, <a href="mai&#108;&#x74;&#x6f;&#x3a;&#x77;rit&#101;&#x41;&#x63;&#x63;&#x65;ss&#64;&#114;&#101;&#x74;&#x72;&#x6f;&#x64;e.o&#114;&#x67;">please report to me</a></strong> and you can contribute to the further improvement of the firmware. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.retrode.org/2010/06/mac-users-with-configsram-writing-issues/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New firmware feature: user config file</title>
		<link>http://www.retrode.org/2009/10/user-config-file/</link>
		<comments>http://www.retrode.org/2009/10/user-config-file/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 20:32:04 +0000</pubDate>
		<dc:creator>Matthias_H</dc:creator>
				<category><![CDATA[Retrode Dev Blog]]></category>
		<category><![CDATA[Tech info]]></category>

		<guid isPermaLink="false">http://www.retrode.org/wordpress/?p=728</guid>
		<description><![CDATA[<p><p class="wp-caption-text">Little file, big difference</p>
While doing some minor tweaking on the firmware, I almost accidentally came up with a nice and straightforward way of turning the Retrode to some extent user-configurable. The root directory now contains a plain text file named snega2usb.cfg retrode.cfg, something like the following:</p>
<p>[retrodeConfig]
; Remove first line for factory reset.
; Hex keycodes [...]]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_760" class="wp-caption alignleft" style="width: 190px"><img class="size-full wp-image-760" title="Config File" src="http://www.retrode.org/wordpress/wp-content/uploads/2009/10/configfile.gif" alt="Little file, big difference" width="180" height="127" /><p class="wp-caption-text">Little file, big difference</p></div><br />
While doing some minor tweaking on the firmware, I almost accidentally came up with a nice and straightforward way of turning the Retrode to some extent user-configurable. The root directory now contains a plain text file named <del datetime="2010-01-05T11:24:25+00:00">snega2usb.cfg</del> retrode.cfg, something like the following:<span id="more-728"></span></p>
<blockquote><p><code>[retrodeConfig]<br />
; Remove first line for factory reset.<br />
; Hex keycodes for (in this order) B Y SEL STA UP DN LFT RGT A X L R<br />
; See usb.org/developers/devclass_docs/Hut1_11.pdf (pp.53ff)<br />
[gamepad1] 06 1B 28 2C 52 51 50 4F 09 07 04 16<br />
[gamepad2] 10 11 05 19 33 37 36 38 0E 0D 0A 0B<br />
[filenameChksum] 1            ; checksum in filename?<br />
[sramReadonly] 1               ; write protect SRAM by default<br />
[segaRomExt] bin<br />
[snesRomExt] sfc<br />
[snesSramExt] srm<br />
</code></p></blockquote>
<p>The file resides in the nonvolatile EEPROM and can be edited using any text editor. This is particularly neat for the gamepad keycode assignments, since saving the file will effectuate the changes immediately.</p>
<p>Implementing this (in particular, the parsing of the config file) <del datetime="2009-10-23T23:09:21+00:00">may take a few hours, but this is actually so simple that I don&#8217;t see how it could possibly fail</del> was actually more of a bitch than I thought it would be. Once I figured out that the C library comes with sscanf and the likes, things obviously got a lot easier :-D</p>
<p>EDIT: Added configurable file extensions.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.retrode.org/2009/10/user-config-file/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>SNES gamepad extension working</title>
		<link>http://www.retrode.org/2009/09/snes-gamepads-working/</link>
		<comments>http://www.retrode.org/2009/09/snes-gamepads-working/#comments</comments>
		<pubDate>Sat, 26 Sep 2009 13:24:07 +0000</pubDate>
		<dc:creator>Matthias_H</dc:creator>
				<category><![CDATA[Retrode Dev Blog]]></category>
		<category><![CDATA[Tech info]]></category>

		<guid isPermaLink="false">http://www.retrode.org/wordpress/?p=479</guid>
		<description><![CDATA[<p>Over the last few days I implemented firmware support for SNES gamepads, with each gamepad appearing as its own USB keyboard for maximum compatibility. Thing is, though, that SNES gamepad connectors can nowadays hardly be obtained in larger quantities, so I have to leave this as a little soldering exercise for those who want to [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last few days I implemented firmware support for SNES gamepads, with each gamepad appearing as its own USB keyboard for maximum compatibility. Thing is, though, that SNES gamepad connectors can nowadays hardly be obtained in larger quantities, so I have to leave this as a little soldering exercise for those who want to retrofit their Retrode with controller inputs.</p>
<p>The procedure is really really simple, so everyone should be able to do this on their own &#8211; or at least ask a friend who has some basic soldering knowledge. Here is an example I prepared using two out of the five connectors from a 5+1 player Tribal Tap:</p>
<p><a href="http://www.retrode.org/wordpress/wp-content/uploads/2009/09/gamepadConn2.jpg"><img style="align:left" title="Gamepad connector from multitap adapter" src="http://www.retrode.org/wordpress/wp-content/uploads/2009/09/gamepadConn2-150x150.jpg" alt="Gamepad connector from multitap adapter" width="150" height="150" /></a><a href="http://www.retrode.org/wordpress/wp-content/uploads/2009/09/gamepadConn1.jpg"><img style="align:right" title="Gamepad connector wiring" src="http://www.retrode.org/wordpress/wp-content/uploads/2009/09/gamepadConn1-150x150.jpg" alt="Gamepad connector wiring" width="150" height="150" /></a><br />
<span id="more-479"></span>As you can see, all it takes is five straight wires per connector. The wire colours were chosen in a purely random fashion so as to cause some more confusion :)</p>
<p>Since the Retrode will behave like a keyboard, it will map all SNES controller buttons and the D-pad to keycodes. Which brings us to the next question: for those of you who play their emulator using a keyboard, which is your favorite key assignment for controllers 1 and 2? (Please comment)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.retrode.org/2009/09/snes-gamepads-working/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Accessing the SRAM chip on the SNES cartridge</title>
		<link>http://www.retrode.org/2009/07/accessing-the-sram-chip-on-the-snes-cartridge/</link>
		<comments>http://www.retrode.org/2009/07/accessing-the-sram-chip-on-the-snes-cartridge/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 05:53:17 +0000</pubDate>
		<dc:creator>Matthias_H</dc:creator>
				<category><![CDATA[Retrode Dev Blog]]></category>
		<category><![CDATA[Tech info]]></category>

		<guid isPermaLink="false">http://www.retrode.org/wordpress/?p=194</guid>
		<description><![CDATA[<p>After quite some trouble trying to access the SRAM on the cartridge, I thought I would share the results here.</p>
<p>Unfortunately, I could not get the suggestions from DiskDude&#8217;s otherwise ultra-helpful SNES Kart document to work, so I had to do a bit of my own reverse engineering. The main issue is getting the SRAM chip&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>After quite some trouble trying to access the SRAM on the cartridge, I thought I would share the results here.</p>
<p>Unfortunately, I could not get the suggestions from DiskDude&#8217;s otherwise ultra-helpful <a href="http://www.emulatronia.com/doctec/consolas/snes/sneskart.html">SNES Kart</a> document to work, so I had to do a bit of my own reverse engineering. The main issue is getting the SRAM chip&#8217;s !CS line to low state. This is accomplished by shredding a few control and address lines through a pair of 2-to-4 address decoders. Only when the combination of ones and zeros is right, the !CS input on the SRAM will go low. For Super Mario World (LoROM) and Super Mario Kart (HiROM), I reconstructed the following wirings:<span id="more-194"></span> (click to magnify)</p>
<div id="attachment_195" class="wp-caption alignleft" style="width: 250px"><a href="http://www.retrode.org/wordpress/wp-content/uploads/2009/07/lorom_ramAccess.gif"><img class="size-medium wp-image-195" title="SRAM control for LoROM game (SMW)" src="http://www.retrode.org/wordpress/wp-content/uploads/2009/07/lorom_ramAccess-300x155.gif" alt="SRAM control for LoROM game (SMW)" width="240" /></a><p class="wp-caption-text">SRAM control for LoROM game (SMW)</p></div>
<div id="attachment_196" class="wp-caption alignleft" style="width: 250px"><a href="http://www.retrode.org/wordpress/wp-content/uploads/2009/07/hirom_ramAccess.gif"><img class="size-medium wp-image-196" title="SRAM control for HiROM game (SMK)" src="http://www.retrode.org/wordpress/wp-content/uploads/2009/07/hirom_ramAccess-300x155.gif" alt="SRAM control for HiROM game (SMK)" width="240" /></a><p class="wp-caption-text">SRAM control for HiROM game (SMK)</p></div>
<p>The correct values for accessing the SRAM appear to be as follows:</p>
<ul>
<li><strong>HiROM</strong>: A13, A14, B5 high; <strong>A15, B6 low</strong></li>
<li><strong>LoROM</strong>: RESET, B4, B5, <strong>B6</strong> high; !CS low</li>
</ul>
<p>As for reading and writing, any datasheet of a pin compatible SRAM chip, <a href="http://www.st.com/stonline/products/literature/ds/2420/m48z02.pdf" target="_blank">such as this one</a>, should provide more than enough information.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.retrode.org/2009/07/accessing-the-sram-chip-on-the-snes-cartridge/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

