9ed9529cfe
[RSP] Fix #include Rsp.h for file system case-sensitivity.
2016-02-11 03:04:45 -05:00
zilmar
26cb3c98c3
[Project64] More line endings ?
2016-01-27 20:39:06 +11:00
zilmar
a228a9d1f9
line ends ?
2016-01-27 20:11:59 +11:00
zilmar
3406831a49
[Project64] Make sure Common is in uppercase
2016-01-20 17:09:05 +11:00
Julio C. Rocha
7b2421884e
Adjusted minimum toolset versions to VS2010 for VCXPROJ and PROPS files.
2015-12-07 21:15:53 -08:00
zilmar
3e4dd1cc23
Merge branch 'master' of https://github.com/project64/project64
2015-12-06 21:06:36 +11:00
zilmar
a429a7fd08
[Project64] Create Project64-core
2015-12-06 21:05:39 +11:00
no
f7b6767149
[RSP] Start using portable types in plugin header.
2015-12-04 17:24:15 -05:00
no
395f2a92dd
#define EXPORT and CALL for cross-platform linkage.
2015-12-04 17:17:24 -05:00
zilmar
e3b32c572d
[Project64] Remove spaces from filename
2015-12-04 17:49:31 +11:00
LegendOfDragoon
36d491c989
Fix issue with STV in Vector Dest Analysis
...
STV can write to multiple registers, so it needs to do extra checking to
determine whether or not the destination register is used.
2015-11-30 20:40:01 -08:00
LegendOfDragoon
b2f73ecb93
Optimize Vector Dest Analysis in RSP Recompiler
...
LPV, LUV, and LHV always write to an entire vector register, so it's
beneficial to account for that in Vector Destination Analysis.
2015-11-30 19:45:43 -08:00
zilmar
4f717d7a6f
Merge pull request #722 from cxd4/in-ur-DWORDz-size_t-ing-ur-things
...
[RSP] Fixed all 64-bit GCC compile warnings.
2015-11-13 15:43:36 +11:00
toehead2001
923f6a485a
"Project 64" -> "Project64"
2015-11-09 22:21:49 -07:00
unknown
a53526163b
fixed a couple remaining 64-bit pointer truncations
2015-10-30 16:08:18 -04:00
unknown
354cf1bf5d
fixed x86 compiler address writes
2015-10-30 15:48:30 -04:00
unknown
e7fed940de
AddConstToX86Reg: pointer-to-int truncation fixed
2015-10-30 14:08:19 -04:00
unknown
69ebe1672b
LeaSourceAndOffset: pointer-to-int truncation fixed
2015-10-30 13:27:02 -04:00
unknown
fbc9b80270
MoveOffsetToX86reg
2015-10-30 00:02:20 -04:00
unknown
068811dc22
fixed SP DMA for pointer-to-integer casts
2015-10-29 22:54:29 -04:00
unknown
061f69b6f3
[RSP] Execute recompiler CPU without SEH for non-MSVC.
2015-10-29 21:52:48 -04:00
unknown
ff904a0f3e
[RSP] This memset() should be able to cause exceptions.
2015-10-29 21:51:26 -04:00
zilmar
3fcdae7d1c
Merge pull request #716 from cxd4/mingw-float_h-bug
...
[RSP] adjust to unfortunate bug in GCC <float.h> header
2015-10-30 12:25:28 +11:00
unknown
72007f6e9f
[RSP] adjust to unfortunate bug in GCC <float.h> header
2015-10-29 20:59:14 -04:00
unknown
1f7ab970e8
[RSP] Disable __cpuid() detection for non-MSVC compiles.
2015-10-29 20:48:31 -04:00
zilmar
3c64df1837
Merge pull request #714 from cxd4/msvc-_M_IX86-specific
...
[RSP] Disable MSVC-specific 32-bit-only code for non-MSVC.
2015-10-30 11:27:40 +11:00
unknown
1e395a9449
[RSP] Disable MSVC-specific 32-bit-only code for non-MSVC.
2015-10-29 20:23:36 -04:00
unknown
6a3fe2bfb6
Include <stdio.h> to fix one undeclared sprintf().
2015-10-29 19:42:39 -04:00
unknown
abb5578dbb
Unconditionally include <stdio.h> to declare sprintf().
2015-10-29 19:42:11 -04:00
zilmar
df08dbc5c2
Merge pull request #663 from LegendOfDragoon/master
...
Improve LBV, LPV, LUV, and LHV in RSP Recompiler
2015-10-26 13:49:40 +11:00
unknown
0c93df4ec9
Use new `stdtypes.h` header added from commit 485613e
.
2015-10-21 23:18:28 -04:00
LegendOfDragoon
0cefcf16fb
Implement Recompiler version of LHV
2015-10-09 11:54:27 -07:00
LegendOfDragoon
221c4d1d4d
Implement Recompiler version of LUV
2015-10-09 11:51:39 -07:00
LegendOfDragoon
0fca9e65a4
Implement Recompiler version of LPV
2015-10-09 11:49:03 -07:00
LegendOfDragoon
87dc96752d
Implement Recompiler version of LBV
2015-10-09 11:39:46 -07:00
LegendOfDragoon
d656af4068
Implement Recompiler version of VNE
2015-10-02 13:05:24 -07:00
LegendOfDragoon
67b4420097
Implement Recompiler version of VEQ
2015-10-02 13:02:03 -07:00
LegendOfDragoon
c95d1598e4
Implement Recompiler version of VGE
2015-10-02 12:52:14 -07:00
LegendOfDragoon
9834665716
Implement Recompiler version of VLT
2015-10-02 12:37:27 -07:00
zilmar
142ed5b255
Merge pull request #627 from JunielKatarn/PropertySheetsTemp
...
Make solution files work with all versions of Visual Studio (2010+)
2015-09-30 10:56:26 +10:00
zilmar
83cffca119
Merge pull request #632 from cxd4/bad
...
`if` is not a function.
2015-09-30 10:55:28 +10:00
unknown
fe442fca6e
`if` is not a function.
...
fixes #628
2015-09-25 17:26:27 -04:00
LegendOfDragoon
7ea0dd0311
Improve Compile_Vector_VRSQH
...
RSP_ACCUM needs to be written to before RSP_Vect. Also optimized the
code for writing to RSP_ACCUM.
2015-09-25 05:00:41 -07:00
LegendOfDragoon
0102762456
Improve Compile_Vector_VRCPH
...
The issue is that it was writing to RSP_Vect before writing to
accumulator. Also removed minor overhead, since Recp.UHW[0] always = 0.
2015-09-25 04:45:00 -07:00
LegendOfDragoon
aebc9fa8b0
Implement VRCPL in RSP Recompiler
2015-09-25 04:26:42 -07:00
LegendOfDragoon
97857ee3cd
Implement VRCP in RSP Recompiler
2015-09-25 04:11:49 -07:00
LegendOfDragoon
dc52573644
Implement x86 instruction Bsr
2015-09-25 03:50:47 -07:00
LegendOfDragoon
466c03e27d
Ensure R0 cannot be written to in LHU
2015-09-24 15:33:07 -07:00
LegendOfDragoon
8bede83fd4
Ensure R0 cannot be written to in LBU
2015-09-24 15:31:45 -07:00
LegendOfDragoon
fb8db802b3
Ensure R0 cannot be written to in LW
2015-09-24 15:30:34 -07:00
LegendOfDragoon
b6721d1cdc
Ensure R0 cannot be written to in LH
2015-09-24 15:29:32 -07:00
LegendOfDragoon
3a5569ce9d
Ensure R0 cannot be written to in LB
...
This happens in Castlevania and OOT, although I'm not sure if the code
ever gets reached.
2015-09-24 15:13:21 -07:00
Julio C. Rocha
e178ec96fc
Merge ..\zilmar into PropertySheetsTemp
2015-09-23 20:06:48 -07:00
zilmar
6f2bb5cec6
Merge pull request #616 from LegendOfDragoon/master
...
Improve Compile_Cop0_MF
2015-09-24 09:50:34 +10:00
zilmar
1d86d84614
Merge pull request #611 from cxd4/implicit-size_t-to-int
...
Have error-checking when drawing RSP command window.
2015-09-24 09:49:40 +10:00
zilmar
bf45ab9cca
Merge pull request #610 from cxd4/implicit-size_t-to-DWORD
...
Have run-time error-checking when dumping DMEM/IMEM.
2015-09-24 09:48:23 +10:00
zilmar
9fe5bd8f48
Merge pull request #609 from cxd4/all_RSP_warnings
...
[RSP] Debug 64-bit -- Conversion: possible loss of data.
2015-09-24 09:47:50 +10:00
LegendOfDragoon
aa70b43ffc
Implement case 4 in Compile_Cop0_MF
2015-09-20 14:57:45 -07:00
LegendOfDragoon
b6a8c54fde
Implement case 7 in Compile_Cop0_MF
2015-09-20 13:21:26 -07:00
unknown
6a194b4926
[RSP] warning C4267: conversion, possible loss of data
2015-09-17 21:59:06 -04:00
unknown
17b7b0857c
Have error-checking when drawing RSP command window.
2015-09-17 21:49:00 -04:00
unknown
17f7965489
Have run-time error-checking when dumping DMEM/IMEM.
2015-09-17 20:39:44 -04:00
unknown
c04f856b79
Attempt the POSIX `ssize_t` type for signed addr compares.
2015-09-17 19:58:49 -04:00
unknown
8f9e963cb0
conversion from 'LRESULT' ... possible loss of data
2015-09-17 19:31:32 -04:00
zilmar
33cb42e3dd
Merge pull request #593 from LegendOfDragoon/master
...
Optimize some opcode functions in RSP Recompiler
2015-09-15 10:54:32 +10:00
zilmar
2bf1ccf637
Merge pull request #596 from cxd4/moar_signed_offsets
...
[RSP] Scalar memory load/stores show signed hex offset.
2015-09-14 10:43:03 +10:00
zilmar
b4d58cfb17
Set VERSION_BUILD to 9999
2015-09-13 17:28:02 +10:00
unknown
c80ce69941
[RSP] Scalar memory load/stores show signed hex offset.
2015-09-12 18:18:59 -04:00
LegendOfDragoon
67d2fc95a3
Optimize LHU in RSP Recompiler
2015-09-07 15:10:19 -07:00
LegendOfDragoon
e0bd5442e4
Implement RegConst in Compile_LBU
2015-09-07 15:05:26 -07:00
LegendOfDragoon
237b21a596
Optimize LW in RSP Recompiler
2015-09-07 14:36:42 -07:00
LegendOfDragoon
48baf1df7c
Optimize LH in RSP Recompiler
...
Star Wars Battle For Naboo LLE graphics uses unaligned LH
2015-09-07 13:48:51 -07:00
LegendOfDragoon
e9c1c23120
Implement RegConst in Compile_LB
2015-09-07 13:39:41 -07:00
unknown
d9082a0c51
[RSP] bad DMEM offsets when (offset < 0)
2015-09-07 16:36:08 -04:00
LegendOfDragoon
48fcced3bc
Optimize ADDIU in RSP Recompiler
...
The second part happens in Hydro Thunder LLE audio.
2015-09-07 12:18:28 -07:00
LegendOfDragoon
2ff2165bd9
Optimize ADDI in RSP Recompiler
...
No need to add 0 to a variable. I've seen
ADDI V0, V0, 0x0000 in Super Smash Bros audio microcode.
2015-09-07 11:49:37 -07:00
LegendOfDragoon
720d8c8dd7
Implement SLTIU in RSP Recompiler
2015-09-07 11:28:49 -07:00
LegendOfDragoon
19f34eed4e
Implement SLTI in RSP Recompiler
2015-09-07 11:27:07 -07:00
unknown
b188bdae3c
forgot to recycle `del = EleSpec[RSPOpC.rs].B[el];` in VABS
2015-08-11 22:21:51 -04:00
Julio C. Rocha
d617d0352a
Used centralized config for VCXPROJ files.
...
TODO: Fix Installer. It's no longer being generated.
2015-07-15 03:37:49 -07:00
unknown
5ad04ed067
newline fixes -- These were my (or Notepad++'s?) fault somehow.
2015-06-23 18:35:21 -04:00
zilmar
16f4780f9a
Merge pull request #521 from cxd4/PR_513_to_vectop
...
[RSP] installed op-code strings matrix to COP2::C2
2015-06-24 07:22:18 +10:00
zilmar
5121db34db
Merge pull request #522 from cxd4/PR_513_to_SPECIAL
...
[RSP] installed op-codes string matrix to SPECIAL
2015-06-24 07:20:46 +10:00
zilmar
8b27c5fd44
Merge pull request #523 from cxd4/PR_513_to_COP2
...
[RSP] installed op-code strings matrix to COP2
2015-06-24 07:19:50 +10:00
unknown
cfc1123378
[RSP] installed primary op-codes matrix
2015-06-23 15:46:02 -04:00
unknown
61ebf68196
[RSP] installed op-code strings matrix to COP2
2015-06-23 15:07:28 -04:00
unknown
4299e4a621
[RSP] installed op-codes string matrix to SPECIAL
2015-06-23 13:51:25 -04:00
unknown
6d215d4846
[RSP] installed op-code strings matrix to COP2::C2
2015-06-23 13:06:36 -04:00
zilmar
4b1ff1983f
Merge pull request #513 from cxd4/in_ur_codez_disassembling_ur_ops
...
Document the RSP op-code matrices + static disassembler debugger code.
2015-06-23 14:34:54 +10:00
unknown
ee13bf0c82
Merge branch 'master' into lool
...
Conflicts:
Source/RSP/Interpreter Ops.c
2015-06-21 21:03:42 -04:00
unknown
84b099b3e9
Merge branch 'master' into loooool
...
Conflicts:
Source/RSP/Interpreter CPU.c
2015-06-21 19:44:29 -04:00
unknown
021a49eeb2
condensed (uint32_t)(uint32_t) since everything is in one line
2015-06-21 19:03:00 -04:00
unknown
de2bd58c13
VM?DL, VM?DM, VM?DN, VM?DH: keep multiply sources in single line
2015-06-21 18:39:12 -04:00
zilmar
13508d7fe3
Merge pull request #516 from cxd4/loooooool
...
centered standard MIPS PC-relative branch stuff to its own func
2015-06-22 07:15:13 +10:00
unknown
a93fff0cc6
[RSP] SLT[I][U]: ternary for more static interpreter code
2015-06-21 16:12:18 -04:00
unknown
767756cfb4
centered standard MIPS PC-relative branch stuff to its own func
2015-06-21 15:52:30 -04:00
unknown
3d62b70b49
[RSP] installed SWC2 mnemonics matrix to the command stepper
2015-06-20 00:13:59 -04:00
unknown
e503041f5d
[RSP] installed LWC2 mnemonics matrix to the command stepper
2015-06-20 00:11:44 -04:00
unknown
56369a4214
[RSP] added, but not installed, vector unit mnemonics matrix
2015-06-20 00:07:19 -04:00
unknown
7cd2641d8b
[RSP] added COP2 mnemonics matrix (have not installed yet)
2015-06-20 00:05:49 -04:00
unknown
3dca6c7f5f
[RSP] installed COP0 mnemonics matrix to the command stepper
2015-06-20 00:03:22 -04:00
unknown
2335b7b0e7
[RSP] installed REGIMM mnemonics matrix to the command stepper
2015-06-19 23:59:36 -04:00
unknown
55b3edd6d1
[RSP] added SPECIAL mnemonics matrix
2015-06-19 23:47:18 -04:00
unknown
11e5ce1bb3
[RSP] Introduce op-codes string matrix for cleaner debugging code.
2015-06-19 23:45:17 -04:00
zilmar
d39b58ae9a
Merge pull request #508 from cxd4/looool
...
[RSP] Ternary, SHMERNARY! Blasphemous.
2015-06-20 06:49:02 +10:00
unknown
fcfad37360
[RSP] junk trailing whitespace cleanups
2015-06-19 13:09:24 -04:00
unknown
2d2b8d3c9d
[RSP] Ternary, SHMERNARY! Blasphemous.
2015-06-19 12:44:12 -04:00
unknown
44d8f13f58
[RSP] Continue to use standard int types for multiply operands.
2015-06-19 12:14:03 -04:00
unknown
38c6993be7
[RSP] removed extra type-casting: (uint16_t)-32768
2015-06-19 11:46:59 -04:00
unknown
fee77c1aae
DRAM address range bounds checking was off by one byte.
2015-06-18 19:51:30 -04:00
zilmar
bc78316504
Clean up some of the 64bit projects
2015-05-22 06:07:24 +10:00
zilmar
0c8d500328
Merge pull request #464 from AmbientMalice/patch-18
...
Change "segement" to "segment".
2015-05-16 11:05:35 +10:00
zilmar
13e62d7354
[64bit] Get nrage and rsp compiling as 64bit
2015-05-16 10:55:23 +10:00
AmbientMalice
baf8d3907e
Corrected "segment" typo.
2015-05-15 23:36:42 +10:00
LegendOfDragoon
882b0f5841
Change CompilerWarning to DisplayError in Cop0_MF
...
In RSP interpreter, it is DisplayError and I feel like it's an important
message, so it should be DisplayError in RSP recompiler as well, in my
opinion.
2015-04-19 21:20:10 -07:00
LegendOfDragoon
603df8e167
Add 2 cases in Cop0_MF for RSP Recompiler
...
Case 0 and Case 1 was missing in RSP Recompiler. Jet Force Gemini LLE
GFX uses case 1.
2015-04-19 21:11:47 -07:00
LegendOfDragoon
82f614ff2d
Fix / Optimize RSP Accumulator Analysis
...
the & 0xFFC was missing, which caused it to return true when it should
have returned false. This means that LLE audio should be more optimized
now.
I also made it do delay slot, incase the delay slot instruction writes
to accumulator. Minor optimization here.
As for JAL, I made it do break instead of return FALSE because in Battle
For Naboo, it actually does come back and continue an existing
calculation. I think it is only an issue if you do a separate analysis
for the Low Accumulator and Mid/High Accumulators. It's still better to
be safe, just incase I or someone else actually implement a separate
analysis for the Accumulators later down the road.
2015-04-19 20:56:36 -07:00
LegendOfDragoon
f22e5125c5
Fix memory leak in RSP
...
Due to the newer spec design in PJ64 2.x, CloseDLL() doesn't get called
as often. So there are instances where it calls AllocateMemory()
multiple times without ever calling FreeMemory().
2015-04-19 19:16:10 -07:00
Lioncash
bdd7f0e48f
RSP: Fix a typo in Compile_ADDI
2015-04-16 23:33:35 -04:00
LegendOfDragoon
eda19cfc5e
Fix regression in GetInstructionInfo
...
I previously made a commit to fix a reordering issue, but did not
realize it needed that COPO_MF_Instruction flag for branching. This
should fix the Ogre Battle issue.
2015-04-14 22:07:45 -07:00
zilmar
11bb35f024
[RSP] 1.7.0.13
2015-03-29 17:38:30 +11:00
unknown
b890afe78b
[RSP] some scope and spacing formatting clean-ups
2015-03-18 00:50:48 -04:00
zilmar
080f7dfc17
Update version Number:
...
Glide64: 2.0.0.4
Project64: 2.2.0.2
RSP: 1.7.0.12
Nrage: 1.7.0.12
2015-03-10 18:36:58 +11:00
unknown
cb9f9e2b56
keeping $0 overwrite prevention to just the CPU interpreter loop
...
Tried my best to make sure I didn't miss any op-codes. (Ctrl+F searching for "!= 0" and "== 0" throught the file shows me that I didn't.) If I did miss any op-codes, it's no bug, just remaining extra unnecessary checking for zero.
2015-03-08 20:20:05 -04:00
unknown
1772f1467c
Prevent remaining possibilities of overwriting $zero in RSP.
...
In the RSP, MFC0, MFC2, and CFC2 were all susceptible to overwriting $zero. Some of us have tried waiting for some games to use handcoded assembly in an attempt to purposely overwrite $zero in their microcode (to throw off emulators), but so far what few occurrences there have been of this have not included using those 3 opcodes. Since it was decided to centralize the security of register $zero in the main R4300 CPU, it was decided to do so in the RSP as well.
2015-03-08 20:17:18 -04:00
LegendOfDragoon
7f5aa6b521
Implement MMX version of VABS in RSP Recompiler
2015-03-01 03:39:14 -08:00
LegendOfDragoon
b4dbc570a5
Small optimization to VSUB
2015-03-01 03:33:17 -08:00
LegendOfDragoon
9706484850
Small optimization to VADD
2015-03-01 03:31:57 -08:00
LegendOfDragoon
9bb8ca9b3c
Small optimization to VMUDH
2015-03-01 03:25:41 -08:00
LegendOfDragoon
9e4f3d2e0f
Small optimization to VMUDL
2015-03-01 03:18:17 -08:00
LegendOfDragoon
fa4fcc9d93
Small optimization to VMULF
2015-03-01 03:07:16 -08:00
LegendOfDragoon
3b208a79cd
Implement recompiler version of Cop2_CT
2015-03-01 02:59:10 -08:00
LegendOfDragoon
bdce1a41ef
Implement recompiler version of Cop2_CF
2015-03-01 01:52:46 -08:00
zilmar
f5e36d8356
Merge pull request #146 from cxd4/yo_dawg_i_herd_u_liek_stdint
...
Redo pull request #92
2015-02-26 16:20:33 +11:00
no
51c18b755b
included LB to apply to the last commit
2015-02-26 00:15:26 -05:00
no
76da145c2a
declare and initialize all in one line
2015-02-26 00:02:38 -05:00
unknown
c323eda4bb
(RSP) exact size types for scalar unit emulation and signedness matching
2015-02-25 22:57:19 -05:00
unknown
39865b8025
type size cleanups to RSP memory emulation
2015-02-25 22:45:33 -05:00
unknown
637b022f40
Introduce portable, standard integer types to RSP CPU.
2015-02-25 22:21:43 -05:00
zilmar
e51ec31e65
Update versions
...
Project64: 2.2.0.1
Glide64: 2.0.0.3
RSP: 1.7.0.11
Nrage: 2.4.0.1
RDB: 2.2.2
2015-02-22 19:43:15 +11:00
Emmet Young
783f2d0668
Slight mistake in Version.h for DLL's, was setting VFT_APP instead of VFT_DLL
2015-02-22 00:45:00 +11:00
zilmar
662e3efa27
Update project settings for visual studio 2013
2015-02-20 20:09:05 +11:00
zilmar
436888dd6b
Update version numbers and create a package zip
2015-02-19 19:03:33 +11:00
zilmar
6be9e796ee
Merge pull request #100 from LegendOfDragoon/master
...
Fix mistakes in IsNextInstructionMmx() and UseRspFlags()
2015-02-19 14:24:27 +11:00
LegendOfDragoon
8aa40e4119
Add some missing instructions to UseRspFlags()
...
This change should get rid of some message box popups when enabling Show
Compiler Errors.
2015-02-18 18:34:32 -08:00
LegendOfDragoon
36e5d8d353
Fix problem with IsNextInstructionMmx()
...
It's supposed to check the next instruction, which is PC, rather than
the current instruction which is CompilePC. This mistake is what caused
graphical errors in RE2.
2015-02-18 18:18:27 -08:00
zilmar
8a6c2b2555
RSP.vcproj: Remove some of the unused files
2015-02-19 08:15:06 +11:00
zilmar
5a288052b8
fix version string include
2015-02-18 07:47:41 +11:00
Emmet Young
4a8986d416
Hopefully add correct files for Visual Studio 2008
2015-02-17 21:07:15 +11:00
Emmet Young
e540a7fdac
Old common version.cpp and version.h is no longer required, remove it.
2015-02-17 21:00:44 +11:00