Jean-Philip Desjardins
a60a8641be
Fix Enable/DisableDmac.
2021-12-03 14:27:02 -05:00
Jean-Philip Desjardins
6d4781c39e
Clear the DMAC interrupt situation.
...
DMAC and INTC are independent and can both interrupt the EE. Code should be more in line with actual hardware.
INTC line 1 is for SBUS and some games (Ape Escape: Million Monkeys) were playing with that, disabling DMAC interrupts.
2021-12-03 14:27:01 -05:00
Jean-Philip Desjardins
948b6f9f05
Add speed hack for Atelier Marie & Elie.
2021-11-16 17:38:15 -05:00
Jean-Philip Desjardins
f5fcebb25a
Induce a small delay when doing a sync check in LibMc2 HLE.
...
Fixes issue in Atelier Marie & Elie.
2021-11-16 17:38:15 -05:00
Jean-Philip Desjardins
d020c69d1e
Tweak assert.
...
Just make sure we catch edge cases if they happen.
2021-10-15 10:09:23 -04:00
Jean-Philip Desjardins
fe7356753e
Improve kernel alarm handling.
...
There's now a proper delay for the alarm handler invocation.
2021-10-15 10:09:23 -04:00
Jean-Philip Desjardins
6ced932536
Fix SetupThread result.
2021-07-28 11:20:25 -04:00
Jean-Philip Desjardins
2eedef39b4
Code style fixes.
2021-07-27 09:16:03 -04:00
Jean-Philip Desjardins
52b900d342
Update semaphore state when terminating a thread.
2021-07-27 09:16:03 -04:00
Jean-Philip Desjardins
45199bcbf2
Implement semaphore wait linked list.
2021-07-27 09:16:03 -04:00
Björn Gerdau
b765a825b8
When starting a executable, A0 is set to the address of the executable
...
Darkwatch is reyling on this (shoutout to PSI)
2021-06-18 16:20:50 +02:00
Jean-Philip Desjardins
28bf66f0b7
Fix style.
2021-04-27 13:51:58 -04:00
Jean-Philip Desjardins
5a0f7ad3f1
Make EE kernel's semaphore ids start at 0.
...
Fixes NBA2K12 (and probably some others).
2021-04-27 13:51:58 -04:00
Jean-Philip Desjardins
0d95d8235c
Add some warnings.
2021-04-27 13:51:57 -04:00
Jean-Philip Desjardins
2f703fd869
Fix ReferThreadStatus return value.
...
Fixes MGS2's codec sequence.
2021-03-24 16:56:12 -04:00
Jean-Philip Desjardins
053c00e234
Tweak logging.
2021-03-09 13:07:02 -05:00
Jean-Philip Desjardins
ef3e3fb101
Limit to 50FPS on PAL.
2021-02-24 16:04:10 -05:00
Jean-Philip Desjardins
d53521bfcf
Add widescreen mode.
2020-12-31 16:55:25 -05:00
Jean-Philip Desjardins
3a1ed208ac
Add way to change the system's language.
2020-09-09 17:13:17 -04:00
Jean-Philip Desjardins
c1b6e39812
Remove some old style pointer handling.
2020-09-09 10:58:50 -04:00
Jean-Philip Desjardins
8f41fe42ca
Reset TLB handlers on initialization.
2020-08-06 16:57:13 -04:00
Jean-Philip Desjardins
23cce97db2
Add basic TLB support.
...
Only enabled if exception handlers are set.
2020-08-06 16:57:13 -04:00
Jean-Philip Desjardins
38052e1fae
Use GetStructPtr.
2020-04-27 12:45:54 -04:00
Jean-Philip Desjardins
58e42d5fac
Use GetStructPtr to obtain VsyncFlag locations.
...
Fixes Gundam Musou 2.
2020-04-22 14:53:08 -04:00
Jean-Philip Desjardins
06e78653ea
Hook Mc2 functions when specific IOP modules are loaded.
2020-04-20 11:14:36 -04:00
Jean-Philip Desjardins
9ee7e8fedf
Hook Mc2 functions somewhere else.
...
Will change again later.
2020-04-20 11:14:36 -04:00
Jean-Philip Desjardins
13923bd8a4
Initial version of libmc2 HLE.
2020-04-20 11:14:32 -04:00
Jean-Philip Desjardins
340a3525cd
Remove boost::filesystem namespace rename.
2019-10-23 20:48:46 -04:00
Jean-Philip Desjardins
7131a28fd4
Remove usage of boost::filesystem.
2019-10-23 20:48:46 -04:00
Jean-Philip Desjardins
2076edf3c0
Fix Linux build.
2019-08-17 13:51:31 -04:00
Jean-Philip Desjardins
7fa83af37b
Implement iSetAlarm.
2019-08-16 07:49:13 -04:00
Jean-Philip Desjardins
b5252b704a
Properly handle the option field in a semaphore.
2019-05-25 09:12:40 -04:00
Jean-Philip Desjardins
e924176920
Add check to make sure we have enough space for semaphores.
2019-05-25 09:12:40 -04:00
Jean-Philip Desjardins
e2706430aa
Add define for SYSCALL table base address.
2019-05-25 09:12:40 -04:00
Jean-Philip Desjardins
3fe943de94
Code style fixes.
2019-02-22 12:43:00 -05:00
Jean-Philip Desjardins
7960620b30
Add basic implementation for SetVTLBRefillHandler.
2019-02-21 18:51:00 -05:00
Jean-Philip Desjardins
0a3c290673
Fix assert condition.
2019-02-21 09:14:03 -05:00
Jean-Philip Desjardins
c7cb9b12c7
Only save/restore thread context when servicing interrupts.
2019-02-12 18:19:09 -05:00
Jean-Philip Desjardins
461d436ef7
Add some constants.
2019-02-12 18:19:09 -05:00
Jean-Philip Desjardins
940dfd378d
Set stack size in SetupThread
2019-01-23 20:58:35 -05:00
Jean-Philip Desjardins
1c13863d27
Change the way SifDmaStat operates.
...
Keep a list of 32 last SifSetDma operations so that every single of them can have their own delay.
This is needed by Super Bust-a-Move 2.
2019-01-23 20:58:35 -05:00
Jean-Philip Desjardins
af7affbdf5
Set initial TIMER3 mode in BIOS.
2019-01-02 21:34:29 -05:00
Jean-Philip Desjardins
503c9fa804
Make sure writes to IMR are 64-bits.
2018-10-29 13:16:11 -04:00
Jean-Philip Desjardins
e134feca03
Fix parameters not being passed properly in ExecPS2.
2018-10-11 12:41:37 -04:00
Jean-Philip Desjardins
64c403d5a1
Code style fixes.
2018-10-04 17:07:48 -04:00
Jean-Philip Desjardins
4f7f899443
Handle case when SetupThread is called on an already setup thread.
2018-10-04 16:05:33 -04:00
Jean-Philip Desjardins
271726cf64
Cleanup.
2018-09-26 12:34:43 -04:00
Jean-Philip Desjardins
622b5e3845
Make sure all interrupts are masked when calling ExecPS2.
...
Invoking the interrupt handler before SetupThread is called can cause issues.
2018-09-26 12:34:42 -04:00
Jean-Philip Desjardins
4841dd702a
Add stubs for TLB handler setters.
2018-09-26 12:34:42 -04:00
Jean-Philip Desjardins
868b2e64f1
Fix trace display bug.
2018-09-26 12:34:42 -04:00