Commit graph

96 commits

Author SHA1 Message Date
Jean-Philip Desjardins
0392b78f1d Change the way VIF interrupts are handled.
INTC line will only be pulsed once whenever a VIFcode with I bit is encountered.
2018-04-07 09:59:23 -04:00
Jean-Philip Desjardins
0f8004596e Specify std namespace. 2017-12-23 11:04:06 -05:00
Jean-Philip Desjardins
63407dd432 Remove printf. 2017-08-09 23:05:30 -04:00
Jean-Philip Desjardins
0cb1dcfd88 Made Execute function templated to allow specifying a constant function pointer. 2017-08-09 23:05:30 -04:00
Jean-Philip Desjardins
f97d0a1c47 Remove self loop counter. 2017-08-09 23:05:30 -04:00
Mahmood(Thunder07)
97c229ec98 Cleanup
Silence:"warning: '0' flag ignored with precision and ‘%X’ gnu_printf format"
2017-05-29 06:01:32 +01:00
Jean-Philip Desjardins
fd2d9e602e Fix interrupt servicing delay reduction not working on the EE. 2017-05-07 22:02:08 -04:00
Jean-Philip Desjardins
438b13890b Remove hardcoded VU address mask. 2017-04-15 00:34:24 -04:00
Jean-Philip Desjardins
5016189b87 Implement gate edge reset in EE timers. 2017-03-26 18:35:28 -04:00
Jean-Philip Desjardins
8074e0f5f1 Move pending interrupt check after all devices have been updated. 2017-02-24 00:39:54 -05:00
Jean-Philip Desjardins
768b140a3c Check if address is valid before executing. 2017-01-29 21:13:27 -05:00
Jean-Philip Desjardins
cb828b45a7 Transfer sticky flag value. 2017-01-29 21:13:27 -05:00
Jean-Philip Desjardins
226305c650 Generate and service IPU interrupts. 2017-01-06 19:18:00 -05:00
Jean-Philip Desjardins
726af961b5 Renaming and cleanup. 2017-01-06 19:17:22 -05:00
Jean-Philip Desjardins
50bf0b547f Add function to copy VU state.
Also, copy clip flag state.
2017-01-06 19:17:22 -05:00
Jean-Philip Desjardins
fd2a251540 Only force to check pending interrupts when they can be serviced. 2016-11-19 17:28:09 -05:00
Jean-Philip Desjardins
9c8b7ff5cc Handle interrupts as soon as one is pending. 2016-11-19 17:28:09 -05:00
Jean-Philip Desjardins
86f412f0a7 Periodically resume DMA2 transfer.
Since it can now be paused if MFIFO is active.
2016-07-10 22:47:05 -04:00
Jean-Philip Desjardins
b1cf7b5b2a Implement CMSAR1 register. 2016-05-28 21:09:17 -04:00
Jean-Philip Desjardins
94568a9611 Invalidate VU1 microprogram whenever writing to micromem1. 2016-05-28 21:09:16 -04:00
Jean-Philip Desjardins
dbe9970cdc Enable performance counting for processor cycles. 2016-05-08 17:43:26 -04:00
Jean-Philip Desjardins
e4b4e4a11d Fixed issue preventing reading from address 0 in VUMEM1. 2015-12-13 18:11:55 -05:00
Jean-Philip Desjardins
f103aac3ac Documented some of the address translation stuff. 2015-12-05 19:24:43 -05:00
Jean-Philip Desjardins
bb6840c6a8 Added basic support for transfers from GS to EE memory. 2015-11-17 22:09:46 -05:00
Jean-Philip Desjardins
c38bfc2e21 Added enum to define DMA channel IDs. 2015-10-27 00:26:37 -04:00
Jean-Philip Desjardins
09435273ad Fixed some memory leaks. 2015-10-26 00:14:47 -04:00
Jean-Philip Desjardins
194c81e61e MSKPATH3 actually toggles path 3 masked bit on GIF. 2015-08-27 01:44:54 -04:00
Jean-Philip Desjardins
b62d72932b Added basic support for VIF FIFO. 2015-08-18 23:04:18 -04:00
Jean-Philip Desjardins
5b6867050d Changed way idle thread is detected. 2015-08-06 01:39:20 -04:00
Jean-Philip Desjardins
8fb5b1ac23 Added slight delay to IDEC command.
Fixes issues with games that changes DMA3 parameters right after issuing a IDEC command.
2015-07-13 02:01:08 -04:00
Jean-Philip Desjardins
3f5d89d76d Make sure status register checkers are cleared upon reset. 2015-07-12 00:07:08 -04:00
Jean-Philip Desjardins
f64682dc72 Added speed hack to help with some games and demos. 2015-07-09 01:14:02 -04:00
Jean-Philip Desjardins
e5335a82ba Merge branch 'injectable_vpu' 2015-06-23 23:21:39 -04:00
Jean-Philip Desjardins
92edd3e380 Made stdout port work again. 2015-06-20 22:20:36 -04:00
Ian Brown
0ec8c6c477 use a managed pointer for vpu 2015-06-19 22:37:52 +01:00
Ian Brown
77b281e20a fixed regression in setting up dma transfer function 2015-06-17 23:30:44 +01:00
Ian Brown
948a14528f make vpu objects pointers 2015-06-17 21:14:51 +01:00
Jean-Philip Desjardins
295da9f66c Added EE executor that handles block cache invalidation using virtual memory mechanisms. 2015-06-07 23:44:46 -04:00
Jean-Philip Desjardins
a7f8bc08bc Removed WriteNotifyHandler from CMemoryMap. 2015-06-07 23:05:11 -04:00
Jean-Philip Desjardins
d296a52d20 Merge branch 'master' into android 2015-05-19 22:49:39 -04:00
Jean-Philip Desjardins
0cb53162c1 Made aligned allocation for EE memory work on Android. 2015-05-19 00:38:41 -04:00
Jean-Philip Desjardins
bb404e1155 Changed the way VSync flag is handled to fix other games. 2015-05-17 18:58:19 -04:00
Jean-Philip Desjardins
835f048fe9 Changed the way SetVSyncFlag is handled. 2015-05-15 19:14:03 -04:00
Jean-Philip Desjardins
475aebf863 Added handling of VIFcode's I bit. 2015-05-07 23:13:30 -04:00
Jean-Philip Desjardins
7a0bdc03c9 Reorganized VPU/VIF code to better match the actual hardware. 2015-05-07 01:52:45 -04:00
Jean-Philip Desjardins
fcf1b11f1b Moved EE and GS specific files in a separate folder. 2015-05-06 00:54:15 -04:00
Renamed from Source/Ee_SubSystem.cpp (Browse further)