pcsx_rearmed.git
8 years agorelease r11 r11
notaz [Sun, 30 Oct 2011 21:42:38 +0000 (23:42 +0200)]
release r11

8 years agocdriso: support multidisk eboots
notaz [Sun, 30 Oct 2011 21:37:53 +0000 (23:37 +0200)]
cdriso: support multidisk eboots

8 years agofrontend: Wiz/Caanoo tweaks + banner image from darklight1138
notaz [Sun, 30 Oct 2011 19:31:31 +0000 (21:31 +0200)]
frontend: Wiz/Caanoo tweaks + banner image from darklight1138

8 years agofrontend: input driver and volume control for Wiz
notaz [Sun, 30 Oct 2011 19:29:01 +0000 (21:29 +0200)]
frontend: input driver and volume control for Wiz

8 years agofrontend: input: make in_ts use ts_gun
notaz [Sun, 30 Oct 2011 19:18:18 +0000 (21:18 +0200)]
frontend: input: make in_ts use ts_gun

..to stop them stealing each other's events

8 years agofrontend: input: don't configure unprobed devices
notaz [Sun, 30 Oct 2011 19:15:08 +0000 (21:15 +0200)]
frontend: input: don't configure unprobed devices

8 years agoupdate build for OABI
notaz [Sat, 29 Oct 2011 22:58:49 +0000 (01:58 +0300)]
update build for OABI

8 years agomaemo: call GPU_Open, enable bios
notaz [Sat, 29 Oct 2011 19:07:30 +0000 (22:07 +0300)]
maemo: call GPU_Open, enable bios

should fix gles breakage

8 years agofrontend: move defconfig to main
notaz [Sat, 29 Oct 2011 19:06:09 +0000 (22:06 +0300)]
frontend: move defconfig to main

.. so that maemo can use it

8 years agofix a few maemo issues
notaz [Sat, 29 Oct 2011 16:28:30 +0000 (19:28 +0300)]
fix a few maemo issues

g_opts clash, file_name, maemo_init and in_keystate

8 years agomaemo updates
Bonapart [Fri, 28 Oct 2011 16:38:46 +0000 (20:38 +0400)]
maemo updates

accelometer support for maemo
screenshot for maemo
fullscreen streghting via GTK
disabled bios(freeze emu at start)

[notasas@gmail.com] removed some unneeded stuff

8 years agofix maemo build
notaz [Sat, 29 Oct 2011 15:45:11 +0000 (18:45 +0300)]
fix maemo build

8 years agofrontend: fix screenshot functionality for pollux
notaz [Fri, 28 Oct 2011 22:15:39 +0000 (01:15 +0300)]
frontend: fix screenshot functionality for pollux

8 years agospu: add asm mixing code for ARMv5 too
notaz [Fri, 28 Oct 2011 22:09:36 +0000 (01:09 +0300)]
spu: add asm mixing code for ARMv5 too

8 years agofrontend: add touchscreen-as-buttons input code
notaz [Thu, 27 Oct 2011 23:31:57 +0000 (02:31 +0300)]
frontend: add touchscreen-as-buttons input code

intended for Caanoo/Wiz

8 years agofrontend/input: make it more modular
notaz [Thu, 27 Oct 2011 22:55:59 +0000 (01:55 +0300)]
frontend/input: make it more modular

8 years agofrontend: minor menu adjustments
notaz [Fri, 28 Oct 2011 00:04:18 +0000 (03:04 +0300)]
frontend: minor menu adjustments

8 years agofrontend: get rid of HOME hack
notaz [Thu, 27 Oct 2011 09:39:06 +0000 (12:39 +0300)]
frontend: get rid of HOME hack

nothing accesses HOME any more, not to mention this code was wrong.

8 years agogpu_neon: fix fb wrapping
notaz [Wed, 26 Oct 2011 23:18:21 +0000 (02:18 +0300)]
gpu_neon: fix fb wrapping

Tobal No.1 ...

8 years agogpu_unai: fix a few potential crashes
notaz [Wed, 26 Oct 2011 23:12:21 +0000 (02:12 +0300)]
gpu_unai: fix a few potential crashes

8 years agocdriso: add cbin support
notaz [Wed, 26 Oct 2011 22:28:11 +0000 (01:28 +0300)]
cdriso: add cbin support

8 years agofrontend/pollux: add scaling
notaz [Wed, 26 Oct 2011 21:27:28 +0000 (00:27 +0300)]
frontend/pollux: add scaling

16bpp only for now.

8 years agopsxcounters: use higher precision for vsync timing
notaz [Tue, 25 Oct 2011 23:38:58 +0000 (02:38 +0300)]
psxcounters: use higher precision for vsync timing

don't know why this is needed (having things like BIAS in mind),
maybe desyncs with cdrom code or SPU?
Tuned this on RE1.

8 years agopsxinterpreter: a bit more accurate Cause reg handling
notaz [Tue, 25 Oct 2011 21:01:47 +0000 (00:01 +0300)]
psxinterpreter: a bit more accurate Cause reg handling

8 years agodrc: detect sw irqs properly
notaz [Tue, 25 Oct 2011 21:00:05 +0000 (00:00 +0300)]
drc: detect sw irqs properly

8 years agodrc: fix various register trashing in mtc0
notaz [Tue, 25 Oct 2011 14:13:06 +0000 (17:13 +0300)]
drc: fix various register trashing in mtc0

8 years agodrc: fix cycle multiplier code
notaz [Mon, 24 Oct 2011 22:44:12 +0000 (01:44 +0300)]
drc: fix cycle multiplier code

rounding wrong way is enough to cause nasty timing problems

8 years agodrc: fix mtc0 argument
notaz [Mon, 24 Oct 2011 21:01:44 +0000 (00:01 +0300)]
drc: fix mtc0 argument

HOST_CCREG is not always cc..

8 years agodrc: some debug code improvements
notaz [Mon, 24 Oct 2011 20:13:09 +0000 (23:13 +0300)]
drc: some debug code improvements

8 years agomake root counters use generic event scheduling code
notaz [Mon, 24 Oct 2011 20:02:51 +0000 (23:02 +0300)]
make root counters use generic event scheduling code

simplifies event handling code a bit

8 years agodrc: always use physical block addresses
notaz [Sun, 23 Oct 2011 23:37:35 +0000 (02:37 +0300)]
drc: always use physical block addresses

there is no reason to use virtual addressing, things can't be remapped
on PSX as there is no MMU anyway. Fixes somewhat related invalidation
bug along the way.

8 years agorcnt: remove gate guess for cnt 0 and 1
notaz [Sun, 23 Oct 2011 20:18:19 +0000 (23:18 +0300)]
rcnt: remove gate guess for cnt 0 and 1

at least 1 is wrong according to Ryphecha's info,
and breaks at least Wipeout XL.

8 years agogte: change gte irq workaround
notaz [Sun, 23 Oct 2011 14:53:09 +0000 (17:53 +0300)]
gte: change gte irq workaround

This should be closer to what happens on the real thing.
Special thanks to Ryphecha for the idea.

8 years agodrc: detect dead gte reads too
notaz [Sun, 23 Oct 2011 14:47:38 +0000 (17:47 +0300)]
drc: detect dead gte reads too

8 years agodrc: add some hack options
notaz [Sun, 23 Oct 2011 01:17:42 +0000 (04:17 +0300)]
drc: add some hack options

intended for caanoo/Wiz, some users want to trade glitches for
performance boost.

8 years agogte: parametrize remaining ops
notaz [Fri, 21 Oct 2011 22:29:31 +0000 (01:29 +0300)]
gte: parametrize remaining ops

at least the ones from C source, it looks like there could be more.

8 years agogte: disable some MAC overflow checks for ARM
notaz [Fri, 21 Oct 2011 21:51:48 +0000 (00:51 +0300)]
gte: disable some MAC overflow checks for ARM

also add some missing ones

8 years agogte: eliminate excessive lims and casts
notaz [Fri, 21 Oct 2011 15:08:57 +0000 (18:08 +0300)]
gte: eliminate excessive lims and casts

checking for overflow where it can't occur is a waste of time,
get rid of that code.

8 years agogte: pass a pointer to registers as argument
notaz [Thu, 20 Oct 2011 23:18:46 +0000 (02:18 +0300)]
gte: pass a pointer to registers as argument

no more need to load psxRegs in each function and all registers are
reachable by ldrh/strh.

8 years agodrc: try to avoid full constant reload
notaz [Thu, 20 Oct 2011 20:58:56 +0000 (23:58 +0300)]
drc: try to avoid full constant reload

derive from existing ones if possible

8 years agodrc: fix sub assem_debug print
notaz [Thu, 20 Oct 2011 21:06:33 +0000 (00:06 +0300)]
drc: fix sub assem_debug print

8 years agodrc: avoid invcode checks on close addesses
notaz [Wed, 19 Oct 2011 23:17:22 +0000 (02:17 +0300)]
drc: avoid invcode checks on close addesses

yes this makes it possible to miss something, but I hope
it's not going to happen and will deal with it if it does.

8 years agogte_arm: some asm experiments
notaz [Wed, 19 Oct 2011 20:07:58 +0000 (23:07 +0300)]
gte_arm: some asm experiments

also removes wrong (?) MAC0 saturation.

8 years agopcnt: measure gte too
notaz [Tue, 18 Oct 2011 22:58:04 +0000 (01:58 +0300)]
pcnt: measure gte too

8 years agodrc: do MVMVA decoding; parametrize handlers
notaz [Tue, 18 Oct 2011 22:54:19 +0000 (01:54 +0300)]
drc: do MVMVA decoding; parametrize handlers

8 years agodrc: finish GTE reg liveness analysis
notaz [Sun, 16 Oct 2011 15:37:49 +0000 (18:37 +0300)]
drc: finish GTE reg liveness analysis

8 years agofrontend/pollux: program MLC2 for TV-out, save/restore regs
notaz [Fri, 14 Oct 2011 21:22:24 +0000 (00:22 +0300)]
frontend/pollux: program MLC2 for TV-out, save/restore regs

8 years agodrc: implement literal dupe merging
notaz [Wed, 12 Oct 2011 23:27:43 +0000 (02:27 +0300)]
drc: implement literal dupe merging

doesn't seem to make much difference, but theoretically should help.

8 years agoinline/parametrize rootcounter reads
notaz [Tue, 11 Oct 2011 20:03:03 +0000 (23:03 +0300)]
inline/parametrize rootcounter reads

makes rcnt1 hack impossible though, overclock PSX instead

8 years agopsxcounters: avoid doing excessive updates
notaz [Mon, 10 Oct 2011 14:38:43 +0000 (17:38 +0300)]
psxcounters: avoid doing excessive updates

this may cause missed interrupts in very rare cases,
but performance penalty this makes is surely not worth it.

8 years agopsxmem: set fixed flag on mappings that really need it
notaz [Sun, 16 Oct 2011 00:21:23 +0000 (03:21 +0300)]
psxmem: set fixed flag on mappings that really need it

also fix unmap

8 years agorelease r10, for real r10
notaz [Sun, 9 Oct 2011 20:39:30 +0000 (23:39 +0300)]
release r10, for real

8 years agospu: fix gaussian interpolation
notaz [Sun, 9 Oct 2011 22:35:15 +0000 (01:35 +0300)]
spu: fix gaussian interpolation

8 years agofrontend: fix integer-prefer scaler
notaz [Sun, 9 Oct 2011 22:19:06 +0000 (01:19 +0300)]
frontend: fix integer-prefer scaler

8 years agouse faster PSX clock on armv7 devices
notaz [Sun, 9 Oct 2011 20:06:14 +0000 (23:06 +0300)]
use faster PSX clock on armv7 devices

games that were too slow run better now, but others are too fast now..
I hope this is a good tradeoff.

8 years agoadd caanoo frontend files, move pandora files
notaz [Sun, 9 Oct 2011 19:15:00 +0000 (22:15 +0300)]
add caanoo frontend files, move pandora files

8 years agopsxcounters: change spu update ~2ms
notaz [Sun, 9 Oct 2011 17:50:16 +0000 (20:50 +0300)]
psxcounters: change spu update ~2ms

old value ~1.4 was weird anyway

8 years agodrc: check for interrupts after RFE
notaz [Sun, 9 Oct 2011 17:00:55 +0000 (20:00 +0300)]
drc: check for interrupts after RFE

this missing check wasn't causing too many problems because
of events on every hsync, which are gone now.

8 years agonew ability to adjust psx cpu clock
notaz [Sun, 9 Oct 2011 00:32:49 +0000 (03:32 +0300)]
new ability to adjust psx cpu clock

8 years agoget rid of old memhandlers
notaz [Sat, 8 Oct 2011 20:50:59 +0000 (23:50 +0300)]
get rid of old memhandlers

8 years agodrc: remove some old inline memhandlers
notaz [Sat, 8 Oct 2011 13:57:19 +0000 (16:57 +0300)]
drc: remove some old inline memhandlers

generic code handles it better now.

8 years agodrc: implement memory access speculation
notaz [Fri, 7 Oct 2011 22:55:01 +0000 (01:55 +0300)]
drc: implement memory access speculation

try to guess RAM mirror we are going to hit

8 years agodrc: implement shiftimm constant propagation
notaz [Thu, 6 Oct 2011 23:27:32 +0000 (02:27 +0300)]
drc: implement shiftimm constant propagation

it's rare, but it happens.

8 years agospu: make "simple" interpolation even more simple
notaz [Wed, 5 Oct 2011 21:22:46 +0000 (00:22 +0300)]
spu: make "simple" interpolation even more simple

that division is not worth the quality increase it might give,
also sinc now can be 0 after resets, causing div0 fault.

8 years agorecompilation-caused frameskip workaround
notaz [Wed, 5 Oct 2011 20:32:35 +0000 (23:32 +0300)]
recompilation-caused frameskip workaround

8 years agospu/cdda: sync cdda to spu playback
notaz [Tue, 4 Oct 2011 23:11:18 +0000 (02:11 +0300)]
spu/cdda: sync cdda to spu playback

this will probably make cdrom/vsync timing desync situation
worse (those were never in sync anyway) but fix some cdda
related sound stuttering.
Those magic values are used trying to preserve other SPU plugin
compatibility.

8 years agotry to support more compilers
notaz [Tue, 4 Oct 2011 21:36:03 +0000 (00:36 +0300)]
try to support more compilers

8 years agorewrite memhandlers (write)
notaz [Tue, 4 Oct 2011 20:37:07 +0000 (23:37 +0300)]
rewrite memhandlers (write)

8 years agorewrite memhandlers (read)
notaz [Sun, 2 Oct 2011 15:46:31 +0000 (18:46 +0300)]
rewrite memhandlers (read)

8 years agoyet more random armv5 tweaks
notaz [Fri, 30 Sep 2011 22:13:43 +0000 (01:13 +0300)]
yet more random armv5 tweaks

8 years agogte_arm: implement RTPS, RTPT
notaz [Thu, 29 Sep 2011 22:04:21 +0000 (01:04 +0300)]
gte_arm: implement RTPS, RTPT

8 years agodfxvideo: remove unneeded double division in line code
notaz [Tue, 27 Sep 2011 20:13:08 +0000 (23:13 +0300)]
dfxvideo: remove unneeded double division in line code

8 years agopsxcounters: avoid update on each hsync
notaz [Mon, 26 Sep 2011 00:07:51 +0000 (03:07 +0300)]
psxcounters: avoid update on each hsync

no useful work is done on hsync, no reason to interrupt the recompiler
that often, set up events as needed.

8 years agodrc: do gte flag liveness detection
notaz [Sun, 25 Sep 2011 19:45:35 +0000 (22:45 +0300)]
drc: do gte flag liveness detection

just copy-paste existing code and use _nf handlers from previous patch.

8 years agogte: split arm code for pollux, generate flagless handlers
notaz [Sun, 25 Sep 2011 13:47:14 +0000 (16:47 +0300)]
gte: split arm code for pollux, generate flagless handlers

flagless are unused but will be used later, at least I hope so.

8 years agofrontend: few more pollux/caanoo tweaks
notaz [Sun, 25 Sep 2011 12:40:31 +0000 (15:40 +0300)]
frontend: few more pollux/caanoo tweaks

8 years agofrontend: menu: don't assume onoff vars are int
notaz [Sun, 25 Sep 2011 12:37:50 +0000 (15:37 +0300)]
frontend: menu: don't assume onoff vars are int

8 years agogte: switch divider back to table
notaz [Sun, 25 Sep 2011 12:31:41 +0000 (15:31 +0300)]
gte: switch divider back to table

pandora won't be affected because it uses VFP anyway,
and pollux prefers the table for some reason.
Also send the divider to it's own .c file for future reuse.

8 years agoadd pollux/caanoo port, refactor things
notaz [Sat, 24 Sep 2011 15:41:41 +0000 (18:41 +0300)]
add pollux/caanoo port, refactor things

8 years agodrc: fix PCSX HLE hack for armv5
notaz [Sat, 24 Sep 2011 15:44:23 +0000 (18:44 +0300)]
drc: fix PCSX HLE hack for armv5

also adds some asserts I did during debugging this

8 years agoget rid of hard libbz2 dependency
notaz [Fri, 23 Sep 2011 17:51:07 +0000 (20:51 +0300)]
get rid of hard libbz2 dependency

it just keeps getting in my way when trying to run this elsewhere.

8 years agosupport armv5 build
notaz [Fri, 23 Sep 2011 16:29:03 +0000 (19:29 +0300)]
support armv5 build

8 years agorelease r10
notaz [Thu, 22 Sep 2011 23:22:20 +0000 (02:22 +0300)]
release r10

8 years agofix build on some ARM toolchains
notaz [Fri, 23 Sep 2011 00:07:38 +0000 (03:07 +0300)]
fix build on some ARM toolchains

R1 redefined..

8 years agofrontend: fix a couple of annoyancies
notaz [Thu, 22 Sep 2011 22:47:33 +0000 (01:47 +0300)]
frontend: fix a couple of annoyancies

8 years agospu: handle loop write vs loop flag race (bIgnoreLoop alternative)
notaz [Thu, 22 Sep 2011 19:38:12 +0000 (22:38 +0300)]
spu: handle loop write vs loop flag race (bIgnoreLoop alternative)

it feels this should be better, but shouldn't write much here without
testing really (Heart of Darkness).

8 years agospu: clean up unneeded code
notaz [Thu, 22 Sep 2011 17:26:34 +0000 (20:26 +0300)]
spu: clean up unneeded code

8 years agospu: use last written loop value when starting
notaz [Thu, 22 Sep 2011 16:20:35 +0000 (19:20 +0300)]
spu: use last written loop value when starting

Now that we play silent channels, at least Alien Ressurection wants
this. I should really bring out my PSX and test this properly..

8 years agodrc: do modification check in smaller than page granularity
notaz [Wed, 21 Sep 2011 23:11:04 +0000 (02:11 +0300)]
drc: do modification check in smaller than page granularity

There are some games that keep writing in the same 4k page where the
code resides (Alien Ressurection is one such example). I've noticed
those accesses are usually to a small region, so keep range of addresses
that has no code and has been recently accessed and check it when the
writes come.

8 years agospu: get rid of pCurr -1, pass right chans to silent handler
notaz [Wed, 21 Sep 2011 01:03:48 +0000 (04:03 +0300)]
spu: get rid of pCurr -1, pass right chans to silent handler

pCurr -1 would work weird with savestates and could screw things up in
general..

8 years agospu: fix a few mixing issues
notaz [Mon, 19 Sep 2011 23:29:28 +0000 (02:29 +0300)]
spu: fix a few mixing issues

8 years agofrontend: always detect region
notaz [Mon, 19 Sep 2011 22:21:18 +0000 (01:21 +0300)]
frontend: always detect region

override later if needed

8 years agodrc: make sure dyna_linker is really called from stub
notaz [Mon, 19 Sep 2011 21:01:39 +0000 (00:01 +0300)]
drc: make sure dyna_linker is really called from stub

in very rare cases add_link() would end up being called with jump to
another block and not stub, which would later cause kill_pointer() to
crash while cleaning jump_out. I'm guessing wrong pointer was being
picked from jump_in by dyna_linker, failing to detect stale cache,
and hoping this will fix it.

8 years agodrc: load ra before SD only when needed
notaz [Mon, 19 Sep 2011 00:47:44 +0000 (03:47 +0300)]
drc: load ra before SD only when needed

there are far too many assumptions all over the place that it's not
loaded early

8 years agofrontend: fix frame limiter issue
notaz [Sun, 18 Sep 2011 00:13:23 +0000 (03:13 +0300)]
frontend: fix frame limiter issue

sleeping too much sometims causes unwanted stuttering..

8 years agospu: don't wait for irq on silent channels
notaz [Fri, 16 Sep 2011 13:55:31 +0000 (16:55 +0300)]
spu: don't wait for irq on silent channels

no point to do so, breaks other chans if silent ones
interrupt often (Discworld)

8 years agofrontend: change sound config vars
notaz [Fri, 16 Sep 2011 00:11:18 +0000 (03:11 +0300)]
frontend: change sound config vars

it seems people out there still have bad sound configs

8 years agodrc: handle $ra access in JALR DS too
notaz [Sun, 18 Sep 2011 19:02:37 +0000 (22:02 +0300)]
drc: handle $ra access in JALR DS too

or at least try to..

8 years agodrc: fix $ra evicting on JAL
notaz [Sun, 18 Sep 2011 16:45:38 +0000 (19:45 +0300)]
drc: fix $ra evicting on JAL

hopefully for good this time

8 years agoRevert "drc: ujump DS $ra overwrite fix?"
notaz [Thu, 15 Sep 2011 22:09:28 +0000 (01:09 +0300)]
Revert "drc: ujump DS $ra overwrite fix?"

This reverts commit 2adcd6fad4594a18025b4f00c49e43a23f8f8992.
That "fix" breaks Delta Force Urban Warfare, supposedly not neded
after Ari64's fixes?