mirror of
https://github.com/bsnes-emu/bsnes.git
synced 2025-08-12 15:34:10 +02:00
v110.3
Added hotfix for bug in "The Hurricanes" (happens on a real SNES) Added scanline override for NHL '94 Added fix for entering folder names into BrowserDialog filename box
This commit is contained in:
@@ -29,7 +29,7 @@ using namespace nall;
|
|||||||
|
|
||||||
namespace Emulator {
|
namespace Emulator {
|
||||||
static const string Name = "bsnes";
|
static const string Name = "bsnes";
|
||||||
static const string Version = "110.2";
|
static const string Version = "110.3";
|
||||||
static const string Author = "byuu";
|
static const string Author = "byuu";
|
||||||
static const string License = "GPLv3";
|
static const string License = "GPLv3";
|
||||||
static const string Website = "https://byuu.org";
|
static const string Website = "https://byuu.org";
|
||||||
|
@@ -3,7 +3,7 @@ auto PPU::Background::clip(int n) -> int {
|
|||||||
return n & 0x2000 ? (n | ~1023) : (n & 1023);
|
return n & 0x2000 ? (n | ~1023) : (n & 1023);
|
||||||
}
|
}
|
||||||
|
|
||||||
//H = 28
|
//H = 0
|
||||||
auto PPU::Background::beginMode7() -> void {
|
auto PPU::Background::beginMode7() -> void {
|
||||||
latch.hoffset = ppu.io.hoffsetMode7;
|
latch.hoffset = ppu.io.hoffsetMode7;
|
||||||
latch.voffset = ppu.io.voffsetMode7;
|
latch.voffset = ppu.io.voffsetMode7;
|
||||||
|
@@ -1,4 +1,5 @@
|
|||||||
auto Program::hackCompatibility() -> void {
|
auto Program::hackCompatibility() -> void {
|
||||||
|
string entropy = settings.emulator.hack.entropy;
|
||||||
bool fastPPU = settings.emulator.hack.ppu.fast;
|
bool fastPPU = settings.emulator.hack.ppu.fast;
|
||||||
bool fastPPUNoSpriteLimit = settings.emulator.hack.ppu.noSpriteLimit;
|
bool fastPPUNoSpriteLimit = settings.emulator.hack.ppu.noSpriteLimit;
|
||||||
bool fastDSP = settings.emulator.hack.dsp.fast;
|
bool fastDSP = settings.emulator.hack.dsp.fast;
|
||||||
@@ -26,9 +27,20 @@ auto Program::hackCompatibility() -> void {
|
|||||||
//fixes an errant scanline on the title screen due to writing to PPU registers too late
|
//fixes an errant scanline on the title screen due to writing to PPU registers too late
|
||||||
if(title == "ADVENTURES OF FRANKEN" && region == "PAL") renderCycle = 32;
|
if(title == "ADVENTURES OF FRANKEN" && region == "PAL") renderCycle = 32;
|
||||||
|
|
||||||
//fixes an errant scanline on the title screen due to writing the PPU registers too late
|
//fixes an errant scanline on the title screen due to writing to PPU registers too late
|
||||||
if(title == "FIREPOWER 2000") renderCycle = 32;
|
if(title == "FIREPOWER 2000") renderCycle = 32;
|
||||||
|
|
||||||
|
//fixes an errant scanline on the title screen due to writing to PPU registers too late
|
||||||
|
if(title == "NHL '94") renderCycle = 32;
|
||||||
|
|
||||||
|
if(settings.emulator.hack.hotfixes) {
|
||||||
|
//this game transfers uninitialized memory into video RAM: this can cause a row of invalid tiles
|
||||||
|
//to appear in the background of stage 12. this one is a bug in the original game, so only enable
|
||||||
|
//it if the hotfixes option has been enabled.
|
||||||
|
if(title == "The Hurricanes") entropy = "None";
|
||||||
|
}
|
||||||
|
|
||||||
|
emulator->configure("Hacks/Entropy", entropy);
|
||||||
emulator->configure("Hacks/PPU/Fast", fastPPU);
|
emulator->configure("Hacks/PPU/Fast", fastPPU);
|
||||||
emulator->configure("Hacks/PPU/NoSpriteLimit", fastPPUNoSpriteLimit);
|
emulator->configure("Hacks/PPU/NoSpriteLimit", fastPPUNoSpriteLimit);
|
||||||
emulator->configure("Hacks/PPU/RenderCycle", renderCycle);
|
emulator->configure("Hacks/PPU/RenderCycle", renderCycle);
|
||||||
|
@@ -241,8 +241,12 @@ auto BrowserDialogWindow::run() -> BrowserDialog::Response {
|
|||||||
return (void)window.setModal(false);
|
return (void)window.setModal(false);
|
||||||
}
|
}
|
||||||
if(state.action == "openObject" && isObject(name)) {
|
if(state.action == "openObject" && isObject(name)) {
|
||||||
response.selected.append({state.path, name});
|
if(isMatch(name)) {
|
||||||
return (void)window.setModal(false);
|
response.selected.append({state.path, name});
|
||||||
|
return (void)window.setModal(false);
|
||||||
|
} else if(isFolder(name)) {
|
||||||
|
return setPath({state.path, name});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(state.action == "saveFile") return accept();
|
if(state.action == "saveFile") return accept();
|
||||||
setPath(state.path, name);
|
setPath(state.path, name);
|
||||||
|
Reference in New Issue
Block a user