Commit graph

1101 commits

Author SHA1 Message Date
Fayvel Victor
1326bd9b2c Merge commit '5cae28f6287a737382aaa68267da3b8901a2b09e' into upstream 2014-08-30 18:52:24 +02:00
Fayvel Victor
b8a8ab9c25 Merge commit '46e8a834ab3cc236fa8a15b02f721f03d5d8c3cc' into upstream 2014-08-30 18:52:22 +02:00
unknown
a68b3251ed Harvest Moon 64 regression from 2013/9/11--broken zero-upper wrapping 2014-08-14 14:22:33 -04:00
unknown
d1f7688deb force copy alignment better to low GCC 4.8.1 compiler intelligence 2014-08-13 08:03:38 -04:00
unknown
3c9c183b47 if vector_copy() on shuffled vector, force ST alignment for compiler 2014-08-13 07:12:19 -04:00
unknown
93a6648926 more MSVC compliance (lack of implicit type conversion, force alignment) 2014-08-13 07:07:42 -04:00
unknown
439213f1f5 more MSVC compliance changes (signed/unsigned mismatch warning) 2014-08-13 07:03:30 -04:00
unknown
1125d4a9d6 some MSVC compliance changes, force literal immediate syntax 2014-08-13 07:00:49 -04:00
unknown
861b636ced forgot to update the modification date 2014-08-13 00:08:15 -04:00
unknown
c271998863 trivial disassembler fix (IW could have MSB set) 2014-08-13 00:07:21 -04:00
unknown
9d760917a1 Merge branch 'master' of https://github.com/cxd4/rsp 2014-08-12 22:21:58 -04:00
unknown
5cae28f628 Quake64 fix, delay shared register file writeback until after set NOTEQUAL 2014-08-12 22:19:44 -04:00
unknown
46e8a834ab just trying to get `git pull' command to work :/ 2014-08-12 22:16:46 -04:00
Richard Goedeken
993a882ed6 Merge pull request #1 from fayvel/travisci
Add Travis CI configuration file for automatic build tests
2014-07-07 22:05:06 -07:00
Fayvel Victor
6969bccadc Add missing library libdl for dlsym 2014-07-06 12:50:14 +02:00
Fayvel Victor
815e369d28 Add Travis CI configuration file for automatic build tests
Github provides a Travis CI integration which makes it easy to have a quick
check of a patch before a pull request is accepted. It is not enough to prove
the correctness of a contribution but at least helps to avoid some of the worst
build problems.

This feature *must* be enabled by the mupen64plus administrator *before this
commit is merged*:

- https://travis-ci.org/profile/mupen64plus
- Login via your Github account
- Make sure you are on "https://travis-ci.org/profile/mupen64plus"
- Switch repository to "On"
2014-07-06 12:31:50 +02:00
Sven Eckelmann
7a194ded02 Disable old-api functions with windows types 2013-12-30 16:03:05 +01:00
Sven Eckelmann
d03a640bfb Disable conflicting type definitions under MinGW 2013-12-18 16:12:02 +01:00
Sven Eckelmann
8b57adba34 Merge commit 'dd6c73a4abf1c13a6c316e6a12077520a0c6e2ef' 2013-12-17 18:10:34 +01:00
Sven Eckelmann
41ee3b1f87 Enable postfix for sse2/ssse3 enabled builds 2013-12-17 18:10:32 +01:00
Sven Eckelmann
21229879ae Use mupen64plus-core config system
The -hlevideo plugin was just a quick hack to provide the functionality to
enable the DisplayListToGraphicsPlugin option. This is not the behavior
encouraged by mupen64plus-core because it already provides a configuration
system.

New configuration options are:

 * DisplayListToGraphicsPlugin
   Send display lists to the graphics plugin (hlevideo)
 * AudioListToAudioPlugin
   Send audio lists to the audio plugin
 * WaitForCPUHost
   Force CPU-RSP signals synchronization
 * SupportCPUSemaphoreLock
   Support CPU-RSP semaphore lock
2013-12-17 17:51:46 +01:00
cxd4
dd6c73a4ab Merge pull request #3 from ecsv/license
Add an explicit public domain dedication statement
2013-12-17 06:31:06 -08:00
Sven Eckelmann
2fd432b2d4 Enable SSE2 options by default
The builds from the original author used SSSE3 in their default build but it
seems it is only supported by fairly recent Intel processors. Thus setting it
to SSE2 instead by default should be better for people building it from source.
2013-12-17 15:07:11 +01:00
Sven Eckelmann
bb562636cd Allow to set SSE optimization for builds
The default builds by the original author of the plugin were optimized for
SSSE3 or SSE2. These build options were missing in this port. Both can now be
build by setting the make parameter SSE to either SSE2 or SSSE3. It can also be
set to none when no SSE optimizations should be activated by the Makefile (own
FLAGS can still be supplied using CFLAGS).

Both build will get an own postfix in the future but currently the postfix is
used by the HLEVIDEO compile option. The postfix will be activated when the
HLEVIDEO configuration is done through the mupen64plus configuration system.
2013-12-17 15:06:01 +01:00
Sven Eckelmann
4392ebde42 Add an explicit public domain dedication statement
The process of dedicating a piece of work under the public domain is not the
same under different legal systems. It is possible that different rights are
given away depending on the origin. Sometimes even the dedication of the work
under public domain is not possible at all. CC0 tries to provide an explicit
way to waive all rights to still provide a secure way for other parties to use
this work [1] and provides a fallback when parts of the license may be judged
invalid under any jurisdiction.

[1] http://creativecommons.org/about/cc0
2013-12-17 13:36:56 +01:00
Sven Eckelmann
9a8349a375 Do not pass -m3dnow to gcc.
The 3DNow! instruction set is not supported by Intel processors.
Although gcc will not likely emit 3DNow! instructions, it is
dangerous to permit 3DNow! instructions due to the fact that Intel
has never supported 3DNow! instructions.
2013-12-17 12:37:50 +01:00
Sven Eckelmann
dc156e193e Merge commit '4ad5c9e42454cffae4e0545d12b243785f2fc0be' 2013-12-13 12:09:43 +01:00
Sven Eckelmann
84745ca6e2 Merge commit '4d7891bbbb6cc62c17f9e1a7cb2aa55fb2724e3c' 2013-12-13 12:09:17 +01:00
Sven Eckelmann
f1eda23706 Merge commit '59a311d39f333c4f13904de62b31cdb50874ac19' 2013-12-13 12:08:47 +01:00
Sven Eckelmann
652cf73be6 Merge commit '3aaf0ab06082c3ca23f8d1e6e832c8ee9a361f08' 2013-12-13 12:08:06 +01:00
Sven Eckelmann
61f871d898 Merge commit 'b1e83df81fb42992d7f79c809dcfaaf2e380ad3d' 2013-12-13 12:07:45 +01:00
Sven Eckelmann
275e136748 Merge commit '6fb28688d1d37f9f961fcb4b93d8b2829a63881e'
Conflicts:
	Rsp_#1.1.h
2013-12-13 12:07:07 +01:00
Sven Eckelmann
3d82b3f00d Merge commit '5fc4f0ffda4cde4667b2282d865283334d9ffc63' 2013-12-13 11:57:33 +01:00
unknown
4ad5c9e424 GAH! Also check to see if RomClosed was called (SP_PC_REG = 0). 2013-12-12 21:21:48 -05:00
unknown
4d7891bbbb uh... ^ what he said, only fixed properly this time 2013-12-12 21:11:46 -05:00
unknown
59a311d39f prevent crashing when configuring on Project64 2.x (unallocated CPRs) 2013-12-12 20:52:11 -05:00
unknown
3aaf0ab060 size micro-optimizations for smaller build binaries, better string pooling 2013-12-12 20:45:30 -05:00
unknown
b1e83df81f forgot to match the CPR prototype def to the real one 2013-12-12 16:40:31 -05:00
unknown
6fb28688d1 centralize ABI flexibility in the spec header, deprecate PJ64 debugger 2013-12-12 15:46:18 -05:00
cxd4
5fc4f0ffda Merge pull request #2 from ecsv/amd64
Support for 64 bit systems
2013-12-12 11:15:19 -08:00
Sven Eckelmann
05696fde5a Replace long with (u)int32_t for systems with sizeof(long) > 4
This only affects long's which are used on an 64-bit system. The zilmar spec
with its DWORD is not touched because on 32 bit it is always 32 bit for common
systems. On Win64 systems it is also 32 bit because Microsoft adopted LLP64.
All other systems seem to use LP64 (IL32LP64), ILP64 or SILP64.

ILP64 and SILP64 would also need to have shorts and int (when the code expects
32 bit) to be changed to (u)int*_t counterparts. This is not done in here.
2013-12-12 12:53:27 +01:00
Sven Eckelmann
ad3643c85c Set the zilmar plugin spec back to its original form 2013-12-12 12:48:34 +01:00
Sven Eckelmann
18b5f2980e Replace uintptr_t with uint32_t for addresses
It seems all occurences with the wrong (non) sign extension during the address
calculation are now fixed and the uintptr_t isn't needed anymore.
2013-12-12 12:45:52 +01:00
Sven Eckelmann
0faed67a64 Fix vector divides on systems with sizeof(long) > 4
The wrong div operations result in wrong transformations in many roms.

This regression was introduced in 87210c71a5
("cleanups and rewrites to the vector divide class").
2013-12-12 00:34:19 +01:00
Sven Eckelmann
1e418001f6 Fix scalar LW/SW for systems with sizeof(long) > 4
This regression was introduced in 4bee44e0d2
("switch on all endian manipulations, lower ?WC2 stack usage")
2013-12-12 00:33:20 +01:00
Sven Eckelmann
111ea1b187 Fix instruction decoding for systems with sizeof(long) > 4
This regression was introduced in c089310109
("saturated opcode jump table to more direct management")
2013-12-12 00:32:46 +01:00
Sven Eckelmann
8941dea21d Fix wrong size modifiers in debug output 2013-12-11 23:46:10 +01:00
Sven Eckelmann
533d5eaf39 Replace all long with (u)int32_t for systems with sizeof(long) > 4 2013-12-11 23:43:59 +01:00
Sven Eckelmann
1fe3a5a6a1 Merge commit '40f4624610b15bfdf931bc319a89cb21631a7050' 2013-12-11 23:33:30 +01:00
Sven Eckelmann
d9fc69f442 Merge commit 'fea93e26672953bc9cd0a821ed70b70ec8ff73b4' 2013-12-11 23:32:56 +01:00