Commit Graph

2625 Commits

Author SHA1 Message Date
Tim Allen ac37afd153 Use byuu.org/bsnes as the official homepage.
Previously, we didn't have control of byuu.org and it wasn't obvious what we
should do about hosting. Now we can update byuu.org, though, we should continue
using it as the authoritative source information.

Fixes #2.
2020-10-27 23:21:19 +11:00
Tim Allen f09c45f3e4 Fix region auto-detection when using native file dialogs.
hiro has two confusingly-named file-picker dialogs. "BrowserDialog" is the
custom dialog built entirely with hiro widgets, "BrowserWindow" is a wrapper
around the native file-picker. bsnes is built for BrowserDialog, but if you tick
"Use native file picker" in the Emulator options, when it needs a file it will
construct a BrowserDialog, copy the relevant config options across to a new
BrowserWindow and invoke that.

Unfortunately, BrowserDialog and BrowserWindow have different capabilities.
Specifically, BrowserDialog includes an "options" list which bsnes uses to let
the user override region detection when loading a game. BrowserWindow has no
such widget. Thus, when using a BrowserDialog the options list worked as intended,
but when using a BrowserWindow the options list was never initialised and no
option was ever chosen. As a result, when opening a game with the native file-
picker, bsnes always used NTSC emulation mode, instead of auto-detecting.

Previously, constructing a BrowserDialog and calling setOptions would leave the
BrowserDialog in an inconsistent state (with no option selected). This was OK if
you immediately displayed the dialog to the user (this would complete the
initialisation and choose a default), but bsnes also used BrowserDialog as an
*interface* typee, to represent the parameters and results of a file-picker
operation that was implemented elsewhere. For this use-case, the inconsistent
state caused problems.

Therefore, BrowserDialog has been changed:

  - setting the list of options always chooses a default, maintaining the
    invariant that `.options()` always returns one of the available options.
  - The internal BrowserDialogWindow class now takes a reference to a Response
    object, instead of constructing one from scratch and having to duplicate
    the "set .option to a reasonable value" code.

Fixes #44.
2020-10-27 23:20:56 +11:00
Tim Allen 090b79b3be Strip whitespace and empty lines from the cheat editor.
Previously, bsnes would turn the cheat text into a list of cheats by splitting
on '\n', producing an empty "cheat" after the last line of the editor:

    "7e0003=00\n".split("\n") -> ["7e0003=00", ""]

That empty "cheat" is not a valid cheat, so the result would be marked invalid.
Teaching bsnes to silently skip empty lines worked, but it would preserve
multiple blank lines between two cheats, which was silly.

Now we iterate over all the lines of the cheat editor, putting valid codes in a
new vector, and setting a flag for invalid codes.

Fixes #63.
2020-10-21 16:39:39 +11:00
John Chadwick 968e6b5feb Implement GitHub Actions Based CI.
This is lightly adapted from the implementation in Higan. For more
information, see that PR in higan-emu/higan#118.

The main difference is that we only compile one binary here, and
packaging is similar to (but adapted from) packaging byuu.
2020-10-19 17:37:02 +11:00
Tim Allen e866a909dc Apply bsnes' customisations back on top of the upstream SameBoy source.
This includes changes to SameBoy (updating the README to be clear about
provenance, and adding a GNUmakefile to integrate with bsnes' build system),
updates the SameBoy version number in the about box, and adds SameBoy to the
list of subtrees updated by update-subtrees.sh.
2020-10-12 18:40:44 +11:00
Tim Allen ec18efcb04 Add 'bsnes/gb/' from commit '919a88ec23f8011dd0389a4abceb62b3d0c83e00'
git-subtree-dir: bsnes/gb
git-subtree-mainline: 844e23d0f4
git-subtree-split: 919a88ec23
2020-10-12 16:43:40 +11:00
Tim Allen 844e23d0f4 Remove old SameBoy snapshot. 2020-10-12 16:41:26 +11:00
Lior Halphon 919a88ec23
Merge pull request #301 from SimpleTease1/patch1
libretro changes
2020-10-11 02:42:02 +03:00
SimpleTease eb295de218 shared version.mk 2020-10-10 23:33:58 +00:00
SimpleTease 696bebc673 libretro: joypad bitmasks 2020-10-10 17:14:53 +00:00
SimpleTease 714227883f cross-compile friendly 2020-10-10 13:46:44 +00:00
Lior Halphon 526c2e029a
Fix #296 2020-10-10 14:50:11 +03:00
SimpleTease 2bfca48e0f libretro: fix core version 2020-10-10 04:02:21 +00:00
SimpleTease cd526d960e libretro: changing model requires manual game restart 2020-10-10 04:00:30 +00:00
radius 8dc60d0b87 update makefile 2020-10-10 03:52:22 +00:00
twinaphex efe8d6b643 Update Makefile 2020-10-10 01:22:51 +00:00
slash0042 faeb1d2e18 Add libnx port 2020-10-10 01:02:22 +00:00
Lior Halphon 8b45c32d77 Merge branch 'master' of https://github.com/LIJI32/SameBoy 2020-10-09 16:40:00 +03:00
Lior Halphon c35fe8b517 Make `gb.h` compatible with C++ again for bsnes integration. Fixed #300 2020-10-09 16:39:23 +03:00
Lior Halphon 195329463b
Merge pull request #294 from yo-wotop/master
Windows Updates
2020-10-09 16:03:57 +03:00
Lior Halphon 99ec5b32fc
Update build-faq.md 2020-10-09 16:03:32 +03:00
Lior Halphon 64963e1746
Update README.md 2020-10-09 15:57:23 +03:00
Tim Allen 0ab0ab6957 Merge commit '5e109224fb3480d806e44d74587d052c7f88bf83' into master 2020-10-09 02:31:32 +11:00
Ruslan Tretiakov 5e109224fb Make comments ANSI C compliant 2020-10-09 02:30:21 +11:00
yo 38afb187cf Resolving some comments and clarifying some language 2020-10-06 23:03:39 -07:00
yo 0b5853070a Updated instructions for Windows building 2020-10-05 14:37:49 -07:00
yo 28234da2d2 Updated instructions for Windows building 2020-10-05 14:34:00 -07:00
yo 04e5f1b8cf Updated for Windows clang and SDL2 changes 2020-10-05 14:33:36 -07:00
Ruslan Tretiakov d0efbfbcd9 libretro: Add support for BS-X Satellaview 2020-10-02 23:57:23 +10:00
Tim Allen d72874fa59 Merge libco repository's commit 'd31c6e75a54be12307d65fd80f55adfbe7aa9d67' into master 2020-10-01 16:34:55 +10:00
Ruslan Tretiakov a2255f6052 Add update-subtrees.sh based on script from higan 2020-10-01 16:34:50 +10:00
Ruslan Tretiakov fcc982dff0 PPU Mosaic fixes imported from higan 2020-10-01 09:47:47 +10:00
Lior Halphon 2a5aed626d
Update README.md 2020-09-29 20:50:14 +03:00
Lior Halphon 1e9e961e9c
Create CONTRIBUTING.md 2020-09-29 20:43:47 +03:00
Ruslan Tretiakov 9517080349 Merge fix from higan for Sound Novel Tsukura/Derby Stallion 96 (jbo-85) 2020-09-29 23:09:59 +10:00
Ruslan Tretiakov 7eee058864 libretro: sync Boards dump with upstream 2020-09-29 23:09:59 +10:00
Sanaki 366a20386c Corrected valid extensions to fix archive loading of GB/GBC 2020-09-29 23:09:59 +10:00
Rouven Spreckels 9ef085fb06 Add games Bahamut Lagoon and Tales of Phantasia.
This updates the game database to match higan's version.
2020-09-28 18:59:20 +10:00
Rouven Spreckels 1c83a6fe44 Add boards SHVC-1K1X-10 and SHVC-LJ3M-01. 2020-09-25 14:22:41 +10:00
Sintendo a8c1f19f75 Add 'Unload Game' hotkey 2020-09-22 23:43:01 +10:00
Sintendo c2c479440e Add 'Power Cycle' hotkey
Closes #25.
2020-09-22 23:43:01 +10:00
Lior Halphon 7c92845882 Merge branch 'master' of https://github.com/LIJI32/SameBoy 2020-09-19 19:31:31 +03:00
Lior Halphon 7ff3556bc3 Workboy emulation (Cocoa only) 2020-09-19 19:31:24 +03:00
Alcaro b9ccb90324 GNU Make 4.3 compatibility
* WARNING: Backward-incompatibility!
  Previously appending using '+=' to an empty variable would result in a value
  starting with a space.  Now the initial space is only added if the variable
  already contains some value.  Similarly, appending an empty string does not
  add a trailing space.

https://lwn.net/Articles/810071/
2020-09-19 23:22:13 +10:00
Tim Allen 24503fc922 hiro: qt.moc should be generated, not committed to the repo. 2020-09-18 22:31:17 +10:00
Zeno Sebastian Endemann d383f0e883 Use pkg-config instead of hardcoded path to Qt5 moc 2020-09-18 22:31:17 +10:00
Lior Halphon e35c22d405 Fix a potential single byte overflow 2020-09-17 23:47:35 +03:00
Lior Halphon faf91508e2
Yes, I *do* mean -Wno-maybe-uninitialized! 2020-09-17 23:25:56 +03:00
Lior Halphon abea3888db
Fix compilation under GCC 9 2020-09-17 23:18:16 +03:00
Lior Halphon e0d6aa59ad
Merge pull request #289 from NieDzejkob/warning-fix
pb12: check the return value of write
2020-09-17 21:22:22 +03:00