Added a CONTRIBUTING file to give new contributors an idea of what they can do to help with the project.
Also added an issue and pull request template to assist people with providing accurate and detailed bug reports, as well as making pull requests a bit easier to make and also read.
I also added a config.yml file to add a "sponsor" button that points to the Project64 "support the project" page on the website for people who want to support the project.
I added an EditorConfig file so that no matter what text editor or IDE contributors use, we still have consistency across all contributions. I also added some EOL and charset enforcements as well as the final newline option to enforce our gitattributes file.
Speaking of the gitattributes file, I updated it with some new file types that were in the repo. I also added the generic auto normalize (it's the first line). This MAY cause the entire repo to look like it's being changed, but it isn't I promise. If this happens it will be the first and last time unless we change it again.
Most of the additions are just (as above) enforcing things we are already doing, like how diffs are handled and such.
I also added some future proofing with Linux and Mac-related file types and some other binary files.
This PR is still a work-in-progress and is mostly done very late and early into the morning, so be gentle with me. 😄
Should now search the entire 7zip file looking for a valid N64 ROM file
and load the first one it finds. Left comments referring to a future
dialog for selecting which file you want to open as it seems like a
good idea, but I don't have the familiarity with WTL yet to try to add
it.
May be necessary to skip files of a certain size while opening this way
as Project64 will try to allocate memory for the "ROM" file before it
is able to check if it really is a ROM file.
Settings.cpp - Was missing a value for the new SettingID while running a
Debug build causing breakpoint to be handled when clicking OK. A new
handler with a default value has been added.
WelcomeScreen.cpp - Would set the Default_GFX_Plugin value and the value
would be used when launching a game or viewing the Plugins menu in
Options and set the Current_GFX_Plugin, but if a user were to try to
configure their Graphics Plugin prior to launching a game, they would
always open the Project64 Video config screen, even if they had chosen
GLideN64 as the default plugin. The Current_GFX_Plugin is now set with
the value of the Default_GFX_Plugin to ensure the correct configuration
dialog is opened.
WelcomeScreen.cpp - String value would always load the non-debug version
of Project64 Video after the above changes. The string to use is now
loaded from the Default_GFX_Plugin so if the default has never been set
the proper default value should now be used. If it has been set before
and is not a Project64 Video plugin, the value will be set to Project64
Video (non-debug) to keep the dialog accurate.
Switched from block comments to single line comments, updated copyright year, reduced verbosity of license lines, and switched to HTTPS for license link.
Removes the Good Name from the greedy THE LEGEND OF ZELDA rdb entry.
Settings still seem to be retained between all relevant ROMs and
changing an option in one will change the option for all of them.
This is preferable as the file name is the only way to distinguish
randomizer ROMs in the first place. It also won't override unrelated
rom hacks with the wrong name. This should reduce user confusion for
both of these cases.