Commit graph

1059 commits

Author SHA1 Message Date
John-Gee
5d364789af Fixed checking for build type 2019-01-06 06:00:06 -08:00
StapleButter
64ab8302cb pause audio/mic devices when they're not needed.
fixes potential pop when starting emulator (due to playing uninitialized audio buffer).
2019-01-06 14:22:14 +01:00
StapleButter
dbfb67fe8f
Merge pull request #356 from Zapeth/master
Use workaround for GCC incompatibilities with MSVC aggregate returns
2019-01-06 12:27:16 +01:00
Zapeth
7630e2d9db Use workaround for GCC incompatibilities with MSVC aggregate returns
Fixes crash on MinGW builds when ID2D1RenderTarget::GetSize() is called
2019-01-06 12:03:01 +01:00
StapleButter
4b6ebd0532 HARK HARK HARK HARK 2019-01-05 13:03:25 +01:00
StapleButter
669247e8c8 redesign main emu loop to use timestamps instead of being a trainwreck
* cleaner code
* faster in some cases
* more accurate (on-demand compensation for timers and GPU)
* less prone to desyncs
* overall betterer
2019-01-05 05:28:58 +01:00
StapleButter
90f2c0834e add PoC ARM9 instruction cache logic. not actually in use, but it's there as a reference (and if we ever need it). 2019-01-04 21:47:06 +01:00
StapleButter
1e35d18ce6 GX: polygon pipeline doesn't get as far if the polygon is rejected by culling/clipping. 2019-01-03 20:30:30 +01:00
StapleButter
4601636788 GX: always latch rendering engine registers even when not flushing (similar to hardware). 2019-01-03 15:29:25 +01:00
StapleButter
172c2eb229 blfdkgg. I'm a derp.
fix potential buffer overflow.
2019-01-03 13:21:21 +01:00
StapleButter
b6481a28ac make nocashprint work from ARM code too.
fixes #315
2018-12-31 20:58:58 +01:00
StapleButter
eec27ebf69 oops 2018-12-31 14:19:02 +01:00
StapleButter
786abe63cb add support for 128K EEPROM (Pokémon Mystery Dungeon - Explorers of Sky)
fixes #344

also, fix save type for Puzzler World (plain old 8K EEPROM. not sure why the Wood entry was different)
2018-12-31 14:17:58 +01:00
StapleButter
a4593a8f58 also, detect bad old romlist.bin and warn the user. 2018-12-31 04:54:17 +01:00
StapleButter
f6b979357f ROM list by game code rather than CRC 2018-12-31 04:35:58 +01:00
StapleButter
5533d9dc94 hopefully this romlist will be less of a trainwreck for now 2018-12-31 03:50:09 +01:00
StapleButter
2fd913aff2 add 'window size' menu to set the window to an integer size 2018-12-30 21:07:09 +01:00
StapleButter
0f0e04bfa3 init savemem to 0xFF instead of 0x00. 2018-12-30 20:57:20 +01:00
StapleButter
52d783e066 might want to update that when hotplugging joysticks, too 2018-12-30 13:43:59 +01:00
StapleButter
9eab6618da bûrp 2018-12-30 02:18:58 +01:00
StapleButter
15be25085f make it also be a thing under Windows 2018-12-30 01:49:47 +01:00
StapleButter
fc3952c981 libui/gtk: center windows 2018-12-30 01:17:50 +01:00
StapleButter
f9e143fc69 libui/gtk: add functions to uiWindow for setting/getting minimized/maximized state
remember if main window is maximized, avoid updating the saved size when it is
2018-12-30 01:07:25 +01:00
StapleButter
62704aee31 * make savestate SRAM reloc disabled by default (confusing behavior)
* add config entry for keeping track of whether the main window is maximized
2018-12-30 00:44:07 +01:00
StapleButter
1cf49e0dbe make joystick hotpluggable 2018-12-30 00:27:12 +01:00
StapleButter
65c27c5c28 fix potential crashes in input config dialog when setting joystick buttons, by using uiQueueMain()
how could I not think of this? GTK is not thread safe.
2018-12-29 23:32:58 +01:00
StapleButter
5c5146945c
Merge pull request #342 from pedrovelho/master
Add dependencies to readme and fix a cmake warning from sdl2 trailing space
2018-12-27 17:12:57 +01:00
Pedro Velho
b965bded4c Add common dependence packagens needed. 2018-12-27 16:27:36 +01:00
Pedro Velho
d638096a1b Solve cmake error while importing SDL2. 2018-12-27 16:25:30 +01:00
StapleButter
7a949ddd0e 2D: add support for 8bit reads to DISPCNT/BGCNT.
fixes #331
2018-12-21 17:53:48 +01:00
StapleButter
63ae6bf8fb libui/windows: some work on hiDPI shit
still looks derpy but atleast the rendering and touchscreen aren't broken
2018-12-21 05:01:37 +01:00
StapleButter
f86fe46035 move the W=0 check, to be sure to check all the vertices 2018-12-20 01:40:32 +01:00
StapleButter
f6e6fa05ea some work on extreme/degenerate shit in GPU
* clip against Z then Y then X. apparently, fixes #310. I had also observed hints that the hardware does it this way.
* truncate W to 24 bits before viewport transform.
* mark any polygons that have a W=0 at that point as degenerate. do not render.
2018-12-20 01:31:31 +01:00
StapleButter
1a8b18af2c what. 2018-12-19 14:50:04 +01:00
StapleButter
0c37824447 2D: fix fade effects to semitransp sprites and 3D layer. fixes #263
(also remove some useless variable. wtf)
2018-12-19 05:54:39 +01:00
StapleButter
ce79edd998 update readme 2018-12-18 21:08:24 +01:00
StapleButter
dd30b417b8 implement proper support for POWCNT1.
fixes #260
2018-12-18 17:04:42 +01:00
StapleButter
1b64e87115 add Imagine - Teacher (USA). EEPROM 4K.
at this point we might want to look into a better Advanscene DB to build this from. this one seems to be a total Swiss cheese.
2018-12-18 15:15:26 +01:00
StapleButter
cf78eb458a add Madden NFL 09 (USA) to the list. savetype: Flash 2MBit
fixes #306
2018-12-18 02:13:22 +01:00
StapleButter
71bbb35bbf watch your debug code better, you derp 2018-12-18 02:00:50 +01:00
StapleButter
694d6cafa2 fix STRD_POST (dumbest copypaste bug of the year)
fixes #276
2018-12-18 01:56:21 +01:00
StapleButter
4a36193cab be sure to always reset NormalPipeline 2018-12-17 02:50:36 +01:00
StapleButter
59c715475d fix oversight regarding hotkey joystick buttons. also prevent triggering the lid command a billion times in a row with a joystick button. 2018-12-16 14:41:46 +01:00
StapleButter
a99ebf38db prevent crash if mic init fails 2018-12-16 14:18:59 +01:00
StapleButter
3f26fbddc0 HAW HAW HAW HAW 2018-12-16 01:13:14 +01:00
StapleButter
4a47bd6d53 make it even saferer 2018-12-16 00:39:14 +01:00
StapleButter
502d8c3fa0 avoid potential crash with EmuDirectory if we somehow got no argv or an empty path 2018-12-16 00:38:10 +01:00
StapleButter
0a7db56bef Yoshi Touch & Go uses 4K EEPROM, you derpos 2018-12-15 18:43:36 +01:00
StapleButter
a34d456fcc GX: timing for command 0x50 is more like 325 cycles on average on hardware. (measured 319/325/331)
fixes #297
2018-12-15 13:33:44 +01:00
StapleButter
12c35093aa set GXSTAT busy flag immediately when writing a command to the GXFIFO.
there was a slim chance that a game could send a couple commands and read GXSTAT.busy as zero immediately after. the new timings made that happen in NSMB (not in the USA ROM, oddly), such that the game was reading the clip matrix while matrix commands were running, and getting the first few values wrong.

fixes #295 and probably others in the same vein.
2018-12-15 05:00:25 +01:00