Commit graph

  • d1b0b1e67b WIP sio2/sio0 implementation. SIO2 side seems to work promisingly... Marco Satti 2018-07-27 21:52:09 +08:00
  • 8e30f8a999 Fix build Marco Satti 2018-07-24 22:16:41 +08:00
  • 52a1691893 Merge branch 'master' into sio2-sio0-impl Marco Satti 2018-07-24 22:08:53 +08:00
  • 81913f8091 Merge branch 'hch12907-master' Marco Satti 2018-07-24 21:49:01 +08:00
  • f0ecc92210 Small changes to the IPU register definitions. Marco Satti 2018-07-24 21:48:30 +08:00
  • 0f1b38c721 WIP sio2/sio0 implementation. Marco Satti 2018-07-24 21:07:45 +08:00
  • 2e6dab4312 Remove all *_busy() methods hch12907 2018-07-15 01:42:29 +08:00
  • 3a25db7291 Actually use the new register classes hch12907 2018-07-12 21:10:42 +08:00
  • a64d3bc210 Detail IPU_BP register hch12907 2018-07-12 21:02:24 +08:00
  • 213fe2fd0a Detail IPU_CTRL register and fix bug hch12907 2018-07-12 20:53:18 +08:00
  • e464587a73 Detail the IPU_TOP register hch12907 2018-07-12 20:37:30 +08:00
  • d28f6d8ffd Detail the IPU_CMD register. hch12907 2018-07-11 22:56:30 +08:00
  • ab59746cfb Fixing typo in comments hch12907 2018-07-03 21:49:38 +08:00
  • 8c8dfdf98c Fix build. origin/sio2-sio0-impl Marco Satti 2018-05-06 22:12:59 +08:00
  • a87dbe5588 Merge branch 'sio2-sio0-impl' of https://github.com/marco9998/orbum into sio2-sio0-impl Marco Satti 2018-05-06 22:07:31 +08:00
  • 6d4111207d Merge branch 'master' into sio1-sio0-impl Marco Satti 2018-05-06 21:42:59 +08:00
  • ab910c6de2 Improve address caching a little, fix up all warnings under MSVC. Marco Satti 2018-05-05 18:10:15 +08:00
  • 90691de493 Fix a compile error. Marco Satti 2018-04-28 20:17:24 +08:00
  • ba73a24a8a More speedups... Marco Satti 2018-04-28 19:14:47 +08:00
  • c7e37542a2 Further optimisations - found some places where GCC correctly optimises but MSVC and Clang do not... Marco Satti 2018-04-28 10:57:39 +08:00
  • 0fad15217a Fix up release builds, general fixups. Marco Satti 2018-04-26 21:33:46 +08:00
  • f6131af5f5 Working impl of portable ksprintf hook, but likely to change in future. origin/iop-vsprintf Marco Satti 2018-04-25 21:12:19 +08:00
  • 5974692b22 Custom vprintf for the IOP, as casting to va_list is not portable. Marco Satti 2018-04-13 18:59:06 +08:00
  • 4988b82914 Add in platform options. Marco Satti 2018-04-24 22:17:05 +08:00
  • ca956dc9ce libliborbum -> liborbum Marco Satti 2018-04-24 21:04:02 +08:00
  • dd133df21a Remove boost-cmake submodule, use system boost through FindBoost cmake module. origin/gcc Marco Satti 2018-03-02 22:44:03 +08:00
  • 960d597289 Add constant to SIO2 register (device unplugged). Marco Satti 2018-04-15 22:41:43 +08:00
  • cd24c79fe9 Initial commit of SIO2 / SIO work, not finished or working yet. Marco Satti 2018-03-11 22:14:48 +08:00
  • c560e3d07d Merge branch 'master' of https://github.com/marco9999/orbum Marco Satti 2018-03-10 01:47:22 +08:00
  • c32f230489 Added in an IOP ksprintf emulator log hook. Marco Satti 2018-03-10 01:44:24 +08:00
  • c6ca184665 Added CDVD RTC (handle SCMD 8). Marco Satti 2018-03-04 19:41:48 +08:00
  • 3cbcf486b5 Mapped CDVD registers into the EE bus space, trying to track down some bugs. Marco Satti 2018-03-04 18:46:14 +08:00
  • 8c06674115 Turn off bus debugging option. Marco Satti 2018-03-04 16:30:21 +08:00
  • 0263b2e48e Found some small speedups... Marco Satti 2018-03-03 12:50:29 +08:00
  • 2beb09eaba Found some small speedups... Marco Satti 2018-03-03 12:50:29 +08:00
  • 06a50fc268 Found some small speedups... Marco Satti 2018-03-03 12:50:29 +08:00
  • 382c350c78 Fixed compiling under linux (and any unix?) - tried with gcc-7 and clang-5. Marco Satti 2018-03-02 22:42:44 +08:00
  • 55dac42eb0 Revert to previous cache.. still not great... Marco Satti 2018-03-01 21:18:35 +08:00
  • f76f1b5d03 Trying out I/D caches, but I think it just made it worse... Marco Satti 2018-02-26 22:21:36 +08:00
  • 91aff4f9f5 Use proper names for caches. Marco Satti 2018-02-26 12:54:34 +08:00
  • 2bb801b21e General cleanup. Marco Satti 2018-02-25 23:01:12 +08:00
  • 32d288e7e6 Use static boost 1.66 for vs2017 (for now). origin/vs2017 Marco Satti 2018-01-20 13:06:01 +08:00
  • 14eb322edd Put classes in correct places. origin/tlb-performance Marco Satti 2018-02-24 16:38:29 +08:00
  • 99968c8bfc That didnt work.. reverting to headers within projects... Marco Satti 2018-02-24 13:16:18 +08:00
  • ae4661a658 Fix up cmake files a bit, for some reason debugging wasn't picking up header only files... Marco Satti 2018-02-24 12:35:21 +08:00
  • fb0e7aab8e Split up file for easier profiling. Marco Satti 2018-02-24 11:58:14 +08:00
  • 4d8a6ab61c Good results, reduced translation hit in half... Marco Satti 2018-02-24 00:44:07 +08:00
  • 9d457d3bf9 Trying out idea... Marco Satti 2018-02-23 21:50:37 +08:00
  • 69360f5dad Big speedup for the TLB lookup (using LRU algorithim). Marco Satti 2018-02-19 20:48:15 +08:00
  • 45a65b8b36 Made ByteBus able to use different sized address type (templated). Marco Satti 2018-02-18 22:45:08 +08:00
  • 81e0382892 Finished cleaning up the ByteBus implementation, works very nicely! Marco Satti 2018-02-18 21:38:50 +08:00
  • fd94f215e0 Initial work on variable sized ByteBus page table done. Marco Satti 2018-02-18 10:07:38 +08:00
  • 76a82536c9 Added additional checks in the ByteBus to help in debugging. Marco Satti 2018-02-07 21:07:53 +08:00
  • 0c730fe900 Merge branch 'master' of https://github.com/marco9999/orbum Marco Satti 2018-02-04 14:59:49 +08:00
  • 52a2d01c94 Add instruction parser utility. Marco Satti 2018-02-04 14:59:24 +08:00
  • 4cf733d169 Fixed the SW instruction (how did this no cause problems before...). Marco Satti 2018-02-04 14:28:00 +08:00
  • 4e310e2a77 Updated MMI instructions. origin/mmi-update Marco Satti 2018-02-03 22:50:29 +08:00
  • b2a6b71049 Update of more MMI instructions. Marco Satti 2018-02-01 18:51:02 +08:00
  • 2079bb7072 Fixed up some MMI instructions, more to go. Marco Satti 2018-01-28 15:35:30 +08:00
  • 71dce37a2e Small speedup with caching EE count interrupt state. Marco Satti 2018-01-27 18:35:44 +08:00
  • 5e7f947a0a Reworked EE TLB a bit - old version was incorrect, and now caches important masks for small speedup. Marco Satti 2018-01-27 17:31:56 +08:00
  • bb534474e0 Cached the interrupts masked status and operating context for small speedups. Marco Satti 2018-01-27 08:52:18 +08:00
  • 194f8d0428 Fixed bugs last commit created... Fuck I am a muppet at times, the queue types were always broken. Marco Satti 2018-01-27 00:51:11 +08:00
  • 17e8d206e5 Hopefully fixed a race condition causing multiple controllers to run at once (same event). Marco Satti 2018-01-26 17:16:54 +08:00
  • 90b8b40d4d Update readme. Marco Satti 2018-01-23 20:30:13 +08:00
  • 5204c8e7a2 Merge branch 'appveyor' - still failing due to boost/msvc interaction. Need to wait for an updated boost-cmake. Marco Satti 2018-01-23 20:03:31 +08:00
  • fe249e47f1 Forgot version. origin/appveyor Marco Satti 2018-01-23 19:51:45 +08:00
  • 9bb4cfd9d8 Try x64 only. Marco Satti 2018-01-23 19:50:39 +08:00
  • cd0aa522b8 Get the right build file path... Marco Satti 2018-01-23 19:24:25 +08:00
  • 5690415f03 Set it to clone submodules (boost). Marco Satti 2018-01-23 19:15:59 +08:00
  • 08af8b98b1 Try getting appveyor CI working... Marco Satti 2018-01-23 19:09:59 +08:00
  • d44c0b9c18 Fix up compile errors, added lock to EE DMAC while suspending channel (fixes a hang). Marco Satti 2018-01-22 22:37:31 +08:00
  • 61c77807fa Made the interrupts a little easier to track. Made the IOP INTC interrupts edge-triggered. Marco Satti 2018-01-21 22:33:52 +08:00
  • 6c0aaf31ac Added in code for resetting the SIO0/2. Marco Satti 2018-01-20 19:15:09 +08:00
  • 93b7a158f4 Remove old ref to boost git project. Marco Satti 2018-01-11 20:35:49 +08:00
  • d5698adf27 Remove constexpr definitions (not needed under C++17). Marco Satti 2018-01-11 20:15:15 +08:00
  • 4df314dbfe Merge branch 'Thunder07-build' Marco Satti 2018-01-10 21:46:02 +08:00
  • 773d2676ed Merge branch 'build' of https://github.com/Thunder07/PCSX2_rewrite into Thunder07-build Marco Satti 2018-01-10 21:45:20 +08:00
  • ba9f25c575 Add back in boost-cmake. Marco Satti 2018-01-10 21:33:05 +08:00
  • 63198b9f94 Partial build Fix Mahmood(Thunder07) 2018-01-09 14:53:25 +00:00
  • cb485ab942 Fix up errors for unix compiles. Marco Satti 2018-01-08 20:16:41 +08:00
  • 208c48d5a1 Fix up errors for unix compiles. Marco Satti 2018-01-08 20:16:41 +08:00
  • 356b70af3b Fix cmake install rules. Marco Satti 2018-01-07 18:39:04 +08:00
  • 1973274b4d Add travis CI basic config... Marco Satti 2018-01-07 18:27:32 +08:00
  • 280fb1669a Put in SIO2 data fifo. Marco Satti 2018-01-07 15:12:25 +08:00
  • 33b3ebb6bd A few tweaks to make it not error out straight away... Marco Satti 2018-01-03 22:57:56 +08:00
  • 8d8d5d7c6a Updated readme. Marco Satti 2018-01-01 21:43:02 +08:00
  • d29f91a58f Major refactor, moved to a scalable multithreaded design (executor). Marco Satti 2018-01-01 21:35:08 +08:00
  • 261698ae8e Refactor all of the resources into a memory friendly (spatial) structure. WIP still. Marco Satti 2017-11-18 14:39:28 +08:00
  • 1f2b8449b3 Working on SIO0 and SIO2 (controller and MC's), might take a while as PCSX2's code is hard to read... Lots of unusual things going on, although the SIO0 might be ok thanks to nocash docs. Marco Satti 2017-07-16 21:26:43 +08:00
  • f634a14c5f Fixed up minor error with SPU2 interrupts. Marco Satti 2017-07-06 22:09:59 +08:00
  • ab51de1680 Added in IOP Timers hblank mode for TMR1, added CDVD S-CMD 0x15. IOP now in interruptable idle (good). Marco Satti 2017-07-01 17:21:43 +08:00
  • 8293ea01a1 SPU2 now passes initial DMA (ADMA and MDMA writes)! Marco Satti 2017-07-01 00:59:19 +08:00
  • 667aea2f93 Synchronous DMAC's now working properly, should be better for the SPU2 situation. Any peripherals that send data will probably need to wait for the DMAC to receive it as well, not up to that yet. Marco Satti 2017-06-28 21:44:00 +08:00
  • 9ac4ebcc9f Trying out synchronous DMA (waiting for the perhipheral to fully receive data before interrupting). Marco Satti 2017-06-28 16:49:27 +08:00
  • 2add548fd7 Added wrapper registers for the PCR and ICR's of the IOP DMAC, still toying around with the SPU2 (which requires direct access to IOP DMAC registers). Marco Satti 2017-06-25 00:10:26 +08:00
  • e937f2ec11 Definitely getting somewhere with the SPU2.STATX - starting to see the IOP waiting for the spu to finish reciving data in a timing loop. Marco Satti 2017-06-22 22:22:25 +08:00
  • 6999a7772a Nope, IOP was getting stuck on the SPU2. Trying to cheat my way around doesn't work either, so I'll be spending time looking into properly implementing the SPU2. Marco Satti 2017-06-18 21:01:18 +08:00
  • 4eb2b5c042 Fixed up SPU2 ADMA write and added in MDMA write. Emulation appears to be looping without crashing - haven't had a proper look, but I hope its because the EE is waiting on the VPU's or GS! Marco Satti 2017-06-18 13:27:42 +08:00
  • a4712d931c Add in unknown regions to the SPU2 resources. Currently trying to do a MDMA write but it's not implemented. Marco Satti 2017-06-18 09:52:33 +08:00