Commit Graph

2354 Commits

Author SHA1 Message Date
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
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
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
4601636788 GX: always latch rendering engine registers even when not flushing (similar to hardware). 2019-01-03 15:29:25 +01:00
172c2eb229 blfdkgg. I'm a derp.
fix potential buffer overflow.
2019-01-03 13:21:21 +01:00
b6481a28ac make nocashprint work from ARM code too.
fixes #315
2018-12-31 20:58:58 +01:00
eec27ebf69 oops 2018-12-31 14:19:02 +01:00
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
a4593a8f58 also, detect bad old romlist.bin and warn the user. 2018-12-31 04:54:17 +01:00
f6b979357f ROM list by game code rather than CRC 2018-12-31 04:35:58 +01:00
5533d9dc94 hopefully this romlist will be less of a trainwreck for now 2018-12-31 03:50:09 +01:00
2fd913aff2 add 'window size' menu to set the window to an integer size 2018-12-30 21:07:09 +01:00
0f0e04bfa3 init savemem to 0xFF instead of 0x00. 2018-12-30 20:57:20 +01:00
52d783e066 might want to update that when hotplugging joysticks, too 2018-12-30 13:43:59 +01:00
9eab6618da bûrp 2018-12-30 02:18:58 +01:00
15be25085f make it also be a thing under Windows 2018-12-30 01:49:47 +01:00
fc3952c981 libui/gtk: center windows 2018-12-30 01:17:50 +01:00
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
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
1cf49e0dbe make joystick hotpluggable 2018-12-30 00:27:12 +01:00
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
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
b965bded4c Add common dependence packagens needed. 2018-12-27 16:27:36 +01:00
d638096a1b Solve cmake error while importing SDL2. 2018-12-27 16:25:30 +01:00
7a949ddd0e 2D: add support for 8bit reads to DISPCNT/BGCNT.
fixes #331
2018-12-21 17:53:48 +01:00
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
f86fe46035 move the W=0 check, to be sure to check all the vertices 2018-12-20 01:40:32 +01:00
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
1a8b18af2c what. 2018-12-19 14:50:04 +01:00
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
ce79edd998 update readme 2018-12-18 21:08:24 +01:00
dd30b417b8 implement proper support for POWCNT1.
fixes #260
2018-12-18 17:04:42 +01:00
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
cf78eb458a add Madden NFL 09 (USA) to the list. savetype: Flash 2MBit
fixes #306
2018-12-18 02:13:22 +01:00
71bbb35bbf watch your debug code better, you derp 2018-12-18 02:00:50 +01:00
694d6cafa2 fix STRD_POST (dumbest copypaste bug of the year)
fixes #276
2018-12-18 01:56:21 +01:00
4a36193cab be sure to always reset NormalPipeline 2018-12-17 02:50:36 +01:00
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
a99ebf38db prevent crash if mic init fails 2018-12-16 14:18:59 +01:00
3f26fbddc0 HAW HAW HAW HAW 0.7.2 2018-12-16 01:13:14 +01:00
4a47bd6d53 make it even saferer 2018-12-16 00:39:14 +01:00
502d8c3fa0 avoid potential crash with EmuDirectory if we somehow got no argv or an empty path 2018-12-16 00:38:10 +01:00
0a7db56bef Yoshi Touch & Go uses 4K EEPROM, you derpos 2018-12-15 18:43:36 +01:00
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
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
ca955d1bac Merge pull request #269 from cpba/manifest
Add manifest for building as a flatpak
2018-12-15 00:40:06 +01:00
7fb1c0518c Merge pull request #285 from abcdjdj/limit_fps
Add option to limit framerate from UI
2018-12-15 00:38:35 +01:00
0b0dd82968 also update the readme a bit while we're at it 2018-12-15 00:36:16 +01:00
8151fbc953 Merge pull request #265 from Aqueminivan/fancy-readme
Changed the readme to make it look a little fancier
2018-12-15 00:32:57 +01:00
d30043bc85 Merge pull request #230 from dogtopus/pcap-libnames-linux
Add linux libpcap names to the pcap library list
2018-12-15 00:30:44 +01:00