Commit graph

7 commits

Author SHA1 Message Date
Tyler Stachecki
18ff341415 rdp: Fix the frameskipping problem.
Don't let the RDP get too far ahead of the other cores or
it causes lots of frameskipping issues. Unfortunately, this
also hurts the performance but such is life.
2016-07-18 01:48:57 -04:00
Tyler J. Stachecki
4b34b15e8d rdp: Lots of refactoring, optimizations.
* Don't use global data to store RDP command list, etc.

  * Reduce the amount of time the RDP holds the lock at
    any given time. This should prevent the RCP thread
    from getting held up at the RCP/VR4300 sync window.

  * Thread safety: Hold RDP mutex when reading RDP regs.

  * Fix early DP status update (we should hold pipe busy,
    cmd busy, etc. until we're really done with the entire
    command list; not the moment we start processing it!)

  * Inline more functions.
2016-07-17 17:59:18 -04:00
Tyler J. Stachecki
8d31a56b91 rdp: Make RDP multithreaded.
CEN64 with -multithread now scales up to three threads.
This commit is very unoptimized, but still offers VI/s
faster than the single-threaded RDP.

Many things that were previously VI/s limited such as
Mario Tennis (in game), Vigilante 8, Goldeneye, etc.
will now run at 60 VI/s at least on an i7. More to come
in the future.
2016-07-13 18:20:21 -04:00
Derek "Turtle" Roe
8b89df2fdc See long description
Replaced all references to simulation with emulation
Updated copyright year
Updated .gitignore to reduce chances of random files being uploaded to
the repo
Added .gitattributes to normalize all text files, and to ignore binary
files (which includes the logo and the NEC PDF)
2015-07-01 18:44:21 -05:00
Tyler Stachecki
e89f054674 Optimize extremely aggressively.
Tell GCC to optimize cold functions for size and stash them away in
a separate part of the binary. Put the simulate core, meanwhile, on
the hot path. Also, bump optimization to -O3 as we can now "afford"
to do so.
2014-11-05 08:39:47 -05:00
Tyler Stachecki
d114038a2b Add option for debugging MMIO register access. 2014-04-18 12:44:57 -04:00
Tyler Stachecki
4560adf7a7 Populate with interfaces and devices. 2014-04-18 11:24:43 -04:00