Dolphin bug tracker: Issueshttps://bugs.dolphin-emu.org/https://bugs.dolphin-emu.org/favicon.ico?12024-03-20T19:27:09ZDolphin bug tracker
Redmine Emulator - Emulator Issues #13500 (Fixed): Make argument parsing consistent between GUI and NoGUI...https://bugs.dolphin-emu.org/issues/135002024-03-20T19:27:09ZBilliard26jordan.woyak@gmail.com
<p>Purposely making a duplicate issue to try to deal with the redmine-bugged issue <a class="issue tracker-1 status-13 priority-1 priority-lowest closed" title="Emulator Issues: Make argument parsing consistent between GUI and NoGUI builds (Duplicate)" href="https://bugs.dolphin-emu.org/issues/6537">#6537</a> that I can't close.</p>
Emulator - Emulator Issues #12018 (Accepted): NetPlay lacks support for IPv6https://bugs.dolphin-emu.org/issues/120182020-03-19T23:36:12ZBilliard26jordan.woyak@gmail.com
<p>Like mentioned here <a href="https://forums.dolphin-emu.org/Thread-ipv6-on-netplay" class="external">https://forums.dolphin-emu.org/Thread-ipv6-on-netplay</a><br>
NetPlay is implemented atop ENet which does not support IPv6.<br>
Some forks of ENet support IPv6 but that may not be the best option.</p>
<p>There are probably alternative lightweight reliable UDP libraries we can use instead of ENet.<br>
Feel free to make suggestions.</p>
Emulator - Emulator Issues #6229 (Fixed): "Dump Audio" dumps nonsense when using "No audio output"https://bugs.dolphin-emu.org/issues/62292013-04-08T19:01:35ZBilliard26jordan.woyak@gmail.com
<p>Game Name?<br>
Luigi's Mansion, others, probably every game</p>
<p>Game ID?<br>
GLME01, etc..</p>
<p>What went wrong?<br>
"No audio output" causes "Dump Audio" to dump crap audio. (screeches/pops)</p>
<p>What did you expect to happen?<br>
I expect dumping audio to work flawlessly regardless of audio backend.</p>
<p>What steps will reproduce the problem?<br>
Set "Audio Backend" to "No audio output".<br>
Enable "Dump Audio".<br>
Play a Luigi's Mansion or any game for any amount of time.<br>
Play "Dump/Audio/audiodump.wav". (sounds like butt)</p>
<p>What <em>version</em> of Dolphin were you using?<br>
3.5-1203 r4c40e70b8af839f84d7d9b8306116cabf3965cdb</p>
<p>64 or 32 bit Dolphin?<br>
64, irrelevant.</p>
<p>What <em>version</em> of Dolphin used to work?<br>
It probably never worked.</p>
<p>What Operating System were you using and what are your hardware<br>
specifications?<br>
Linux, 900 GB of RAM.</p>
<p>64 or 32 bit Operating system?<br>
64, irrelevant.</p>
<p>Any other relevant information or links to logs:<br>
It seems CMixer::Mix expects to be called with perfect timing.<br>
I do not know what this timing is. (NullSoundStream apparently has it wrong)<br>
The fix for this would enable me to make all audio backends have timestretching in a sane manner.</p>
<p>If you "fix" this by threading NullSoundStream and sleeping I will stab you.</p>
Emulator - Emulator Issues #4390 (Fixed): Dialog button spacing is inconsistenthttps://bugs.dolphin-emu.org/issues/43902011-04-11T21:05:41ZBilliard26jordan.woyak@gmail.com
<p>Many of the dialogs (GCPad, Wiimote, VideoConfig) have different amounts of spacing between and above the lower buttons. (OK/Cancel buttons)</p>
<p>This spacing should be consistent across all of Dolphin.</p>
<p>We should decide on how much spacing we want and use it everywhere.</p>
Emulator - Emulator Issues #4321 (Fixed): Did you think Graphics configuration dialog behavior is...https://bugs.dolphin-emu.org/issues/43212011-03-25T10:37:53ZBilliard26jordan.woyak@gmail.com
<p>What steps will reproduce the problem?</p>
<ol>
<li>Run any game.</li>
<li>Open the graphics configuration dialog.</li>
<li>Game-specific configuration "profile" is shown by default. (I think the "default" profile should be shown by "default")</li>
<li>Changing settings of the default profile do not take effect while a game is running.</li>
</ol>
<p>What is the expected output? What do you see instead?</p>
<ul>
<li>The default profile should be shown by default. Currently the game's profile is shown.</li>
<li>Default profile changes should take effect in-game. Currently they don't.</li>
</ul>
<p>Dolphin version with the problem? Other Dolphin version without the<br>
problem?<br>
r7391 has the problem.<br>
r7390 does not. :3</p>
<p>Please provide any additional information below.<br>
I liked it better the way I had it. (without profiles :p)</p>
<p>Another minor annoyance:<br>
Changing profiles re-centers the dialog.</p>
Emulator - Emulator Issues #3972 (Fixed): Visual Studio 2010https://bugs.dolphin-emu.org/issues/39722011-01-23T01:41:52ZBilliard26jordan.woyak@gmail.com
<p>I propose we switch to Visual Studio 2010 for the windows build.</p>
<p>The main reason for switching is for partial C++0x support<br>
We would be able to use: auto, rvalue references, lambdas, static_assert (I have some usages planned :p)<br>
g++ 4.5 supports all of these. (all but lambdas are supported by g++ 4.4)</p>
<p>Some other reasons to switch to VS2010:</p>
<ul>
<li>Nice interface
highlights errors before you compile, and it's blue!</li>
<li>It's the year 2011
VS2010 express is free and we need to get with the times :p</li>
</ul>
<p>If we decide to switch (and use C++0x features)<br>
we would no longer be able to support vs2008, but again, vs2010 express is free, users can easily upgrade.</p>
<p>I have vs2010 solution/project files nearly ready. (I did not use the conversion wizard except for wxw)<br>
I'll finish/commit them if we agree to switch.</p>
<p>Devs, please post if you have an opinion.</p>
Emulator - Emulator Issues #2711 (Fixed): IniFile code replacementhttps://bugs.dolphin-emu.org/issues/27112010-05-23T23:32:12ZBilliard26jordan.woyak@gmail.com
<p>I have replaced Dolphin's IniFile code with the IniFile code used by the<br>
New GCPad and Wiimote plugins.</p>
<p>The proposed IniFile is a class which inherits:<br>
map< string, map< string, string > ><br>
along with additional Get/Set/Load/Save... methods like the current inifile<br>
code.</p>
<p>// Because IniFile and Sections inherit std::map, values can be accessed<br>
like so:</p>
<p>inifile["section_name"]["key_name"] = "value";<br>
some_string = inifile["section_name"]["key_name"];</p>
<p>// Get/Set can still be used:<br>
// Get/Set methods are of the Section class now, rather than the IniFile class</p>
<p>inifile["section_name"].Get("key_name", &some_int, 5);<br>
// very similar to the current syntax<br>
//inifile.Get("section_name", "key_name", &some_int, 5);</p>
<p>// current code:</p>
<p>//iniFile.Set("Real", "AccNeutralX", iAccNeutralX);<br>
//iniFile.Set("Real", "AccNeutralY", iAccNeutralY);<br>
//iniFile.Set("Real", "AccNeutralZ", iAccNeutralZ);</p>
<p>// this can be(it is in the patch) replaced with:</p>
<p>Section& real = iniFile["Real"];<br>
real.Set("AccNeutralX", iAccNeutralX);<br>
real.Set("AccNeutralY", iAccNeutralY);<br>
real.Set("AccNeutralZ", iAccNeutralZ);</p>
<p>// ...a reference to the section "Real" can be created<br>
// so searching the inifile for the same section (sometimes 15+ times) is<br>
not needed</p>
<p>Patch: <a href="http://billiard.us.to/share/Dolphin/inifile_replacement.patch" class="external">http://billiard.us.to/share/Dolphin/inifile_replacement.patch</a></p>
<p>Pros:</p>
<ul>
<li><p>Less code to maintain<br>
Current: IniFile.cpp 526 lines, IniFile.h 92 lines<br>
Proposed: IniFile.cpp 255 lines, IniFile.h 123 lines<br>
templates are used for Get()/Set() methods<br>
extra code to find sections/keys is not needed, because of inheriting<br>
std::map methods</p></li>
<li><p>Performance<br>
<a href="http://pastie.org/954684" class="external">http://pastie.org/954684</a><br>
Get()/Set() methods are 90x faster!</p></li>
</ul>
<p>Cons:</p>
<ul>
<li><p>Comments are completely ignored and Removed from an inifile after saving</p></li>
<li><p>GetLines()/SetLines() functionality is somewhat hacked in.<br>
After {Get,Set}Lines is called on a Section, the normal Get/Set<br>
functions will have no effect on the saved file.<br>
These functions are used to access non-inifile syntax lines for AR codes<br>
in the game ini files.<br>
These lines don't belong in inifiles anyway.</p></li>
<li><p>Bigger file sizes<br>
Dolphin.exe +30KB<br>
Plugin_DSP_HLE +60KB<br>
Plugin_GCPad.dll +80KB<br>
Plugin_Wiimote.dll +90KB<br>
etc...</p></li>
</ul>
<p>Pro/Con:<br>
Being a std::map, saved files automatically have alphabetized sections<br>
and keys.<br>
Mostly good, but someone might not like this.</p>
<p>I want to know if anyone opposes the changes, or if I should commit them.<br>
Thanks</p>
Emulator - Emulator Issues #2500 (Fixed): Code Review Request - Widescreen Hack Tweakhttps://bugs.dolphin-emu.org/issues/25002010-04-01T19:20:08ZBilliard26jordan.woyak@gmail.com
<p>Purpose of code changes on this branch:<br>
Tweak the "Widescreen Hack":</p>
<ul>
<li>Hack longer assumes the game is running at 4:3 and the user has a
display of 16:9</li>
<li>Attempt to adjust the aspect ratio From either 16:9 or 4:3 ( depending
on value of g_VideoInitialize.bAutoAspectIs16_9 )</li>
<li>Attempt to adjust the aspect ratio To what the user has chosen in the
"Aspect Ratio" combobox.</li>
</ul>
<p>[ Aspect Ratio combobox ] :</p>
<ul>
<li>If "Auto" is chosen, the hack will have NO effect in any game.</li>
<li>If "Force 16:9" is chosen and a 4:3 game is running, the hack will
adjust from 4:3 to 16:9 (Hor+).</li>
<li>If "Force 16:9" is chosen and a 16:9 game is running, the hack will have
NO effect.</li>
<li>If "Force 4:3" is chosen and a 16:9 game is running, the hack will
adjust from 16:9 to 4:3 (Vert+).</li>
<li>If "Force 4:3" is chosen and a 4:3 game is running, the hack will have
NO effect.</li>
<li>If "Stretch" is chosen, the hack will adjust from the games aspect ratio
( either 16:9 or 4:3 ) to the aspect ratio of the user's chosen fullscreen
resolution. ( using Hor+ or Vert+ ) ( this allows playing of games on 16:10
or 5:4 displays without a fat or skinny 3d image )</li>
</ul>
<p>After all, this is a "HACK". It should allow "Hacking" to any<br>
aspect ratio the user wants. Not just 16:9.</p>
<p>When reviewing my code changes, please focus on:<br>
I don't really care for the method I used to get the fullscreen resolution:<br>
sscanf(g_Config.cFSResolution, "%dx%d", &w_fs, &h_fs);<br>
I couldn't find a better/correct method. Maybe someone else can fix that.</p>
<p>Perhaps the entire "UpdateAspectRatioHack" function shouldn't be in<br>
"VertexShaderManager.cpp". Maybe someone knows where it does belong.</p>
<p>Patch Download:<br>
<a href="http://billiard.us.to/share/Dolphin/aspect_ratio_tweak.patch" class="external">http://billiard.us.to/share/Dolphin/aspect_ratio_tweak.patch</a></p>
Emulator - Emulator Issues #2437 (Fixed): GCPad - Many Issueshttps://bugs.dolphin-emu.org/issues/24372010-03-18T21:42:40ZBilliard26jordan.woyak@gmail.com
<p>What steps will reproduce the problem?</p>
<ol>
<li>Start Dolphin</li>
<li>Use GCPad</li>
<li>Notice how much GCPad sucks?</li>
</ol>
<p>What is the expected output? What do you see instead?</p>
<ul>
<li>The triggers are expected to work properly.</li>
<li>Rumble is expected to work properly.</li>
<li>The source code is expected to be organized and easy to modify.</li>
</ul>
<p>What version of the product are you using? On what operating system?</p>
<ul>
<li>Any version with GCPad, Windows/All.</li>
</ul>
<p>Please provide any additional information below.</p>
<ul>
<li>GCPad is just njoy and that other input plugin thrown together with a
bunch of if statements. That's not cool. Here's a patch for a complete
replacement plugin for GCPad.</li>
</ul>
<p>Download:<br>
<a href="http://forums.dolphin-emu.com/attachment.php?aid=2798" class="external">http://forums.dolphin-emu.com/attachment.php?aid=2798</a><br>
Thread:<br>
<a href="http://forums.dolphin-emu.com/thread-7818.html" class="external">http://forums.dolphin-emu.com/thread-7818.html</a><br>
Screenshots:<br>
<a href="http://i42.tinypic.com/33xvptl.png" class="external">http://i42.tinypic.com/33xvptl.png</a><br>
<a href="http://i40.tinypic.com/4h9ojd.png" class="external">http://i40.tinypic.com/4h9ojd.png</a></p>
<p>Supported Sources: ( not just thrown together with a bunch of if statements )</p>
<ul>
<li>XInput (with rumble)</li>
<li>SDL for joysticks (with rumble)</li>
<li>DirectInput for keyboard/AND mouse</li>
<li>Xlib for Linux keyboard ( completely untested, but like 80% done )</li>
</ul>
<p>Features:</p>
<ul>
<li>multiple devices mapped to each gamepad</li>
<li>map buttons to axis - AND axis to buttons</li>
<li>Individual dead zone for each input / direction</li>
<li>map multiple inputs to the same control, AND/OR modes</li>
<li>hold down time ( 0 - 400ms ) - useful when you want A+B to grab while A
and B are also attacks, set hold down time of a few milliseconds for A and B</li>
<li>adjustable range for each input</li>
<li>modifier for analog sticks - either increase or decrease the default
range of the sticks</li>
<li>double tap time ( 0 - 400ms ) - useful for walking/running when playing
ssbm/b on a keyboard or dpad. set range to around half, when you double tap
you will get the full range instead.</li>
<li>separated trigger-analogs and trigger-clicks - set L/R-Click to the same
button with a high dead zone if you want to use actual analog triggers -
can set R-Click range to 0 and enable double tap to have a full trigger
pull when you double tap - works alright on mario sunshine</li>
<li>profiles - basic load, save, and delete - currently they are all saved in
the main ini file, i'm going to change this.</li>
</ul>
<p>Bugs:</p>
<ul>
<li>In this patch, I accidentally put the SDL devices before the XInput, so
the detect button picks up the SDL device rather than the XInput like it
should. I've got it fixed now, only takes half a second to swap 2 lines of
code.</li>
<li>Setting the mouse wheel to an input can get a little funky. I have that
fixed in my code.</li>
<li>I accidentally disabled the main stick modifier in this new patch. It is
fixed on my end.</li>
</ul>
<p>TODO:</p>
<ul>
<li>GUI code is a mess</li>
<li>The class "MasterControl" was kinda a joke, I renamed it DeviceInterface now</li>
<li>Currently, the code would need #ifdefs added to allow compiling without a
GUI, but it wouldn't be difficult.</li>
<li>I have only tested on Windows. ( needs a few modifications for non-windows )</li>
<li>It uses SDL for joysticks, but keyboard input is using DirectInput/Xlib,
so there would be no keyboard in OS X. This could be added in pretty easily
by someone who knows how to use the OS X keyboard.</li>
<li>I am re-doing some of the code so I can integrate the plugin with
emulated wiimote support. Then I will merge the plugin with Dolphin,
eliminating input plugins.</li>
</ul>
Emulator - Emulator Issues #2333 (Duplicate): Always only wiimote 1 connected on starthttps://bugs.dolphin-emu.org/issues/23332010-02-20T01:59:59ZBilliard26jordan.woyak@gmail.com
<p>What steps will reproduce the problem?</p>
<ol>
<li>wiimote 1-4 source set to inactive</li>
<li>gamecube pad 1 active, 2-4 inactive</li>
<li>start game, such as SSBB and go to character selection screen</li>
</ol>
<p>What is the expected output? What do you see instead?<br>
A single gamecube controller should be connected.<br>
The should-be inactive wiimote 1 is also shown in game.</p>
<p>What version of the product are you using? On what operating system?<br>
revision 5065 and many others<br>
Windows 7 x64</p>
<p>Please provide any additional information below.<br>
Pressing alt+f5 twice will connect and disconnect wiimote 1, giving the<br>
desired controller state, "Inactive".</p>
<p>Setting all wiimotes to "Emulated" results in only wiimote 1 being<br>
connected at game start. Wiimotes 2-4 must be manually connected with<br>
alt+f6,7,8.</p>
<p>If one wanted to play SSBB with a lone gamecube pad on start, currently it<br>
is possible to set wiimote one's source to real, without actually having a<br>
real wiimote connected to their pc. This results in wiimote one not being<br>
shown in game. This shouldn't be needed to play without wiimotes connected<br>
on start.</p>
<p>I think choosing "Inactive" for wiimote one's source should cause it to be<br>
not connected on start. Choosing a non inactive source for wiimotes 2<br>
through 4 should cause them to be automatically connected on start.</p>
Emulator - Emulator Issues #2316 (Invalid): Widescreen Hack only "hacks" from 4:3 to 16:9https://bugs.dolphin-emu.org/issues/23162010-02-16T04:56:30ZBilliard26jordan.woyak@gmail.com
<p>Currently, the "Widescreen Hack" option in the D3D plugin only works<br>
correctly when playing a native 4:3 aspect ratio game on a 16:9 aspect<br>
ratio display. The hack simply stretches the game aspect ratio from 4:3 to<br>
16:9 regardless of the aspect ratio of the current window. When using the<br>
hack, this causes 4:3 games to have an image that is too skinny on 16:10<br>
displays. It is also completely non-functional on native 16:9 games.</p>
<p>It should be modified to be called "Aspect Ratio Hack". It should adjust<br>
from the games native aspect ratio, either 4:3 or 16:9, this is already<br>
detected correctly when using the "Auto" aspect ratio, so this isn't a<br>
problem. And the aspect ratio should be "hacked" to that of the display,<br>
4:3, 5:4, 16:9, 16:10, or anything.</p>