Commit graph

322 commits

Author SHA1 Message Date
Bobby Smiles
d47985d51a implement segmented addresses. 2013-06-05 20:42:40 +02:00
Bobby Smiles
184bd63270 Rework audio commands parsing. 2013-06-05 19:29:55 +02:00
Bobby Smiles
8037c1356a Pass address of ucode state to audio commands intead of hardcoding it. 2013-06-05 00:01:37 +02:00
Bobby Smiles
0beafa2946 Some cosmetics and style modifications. 2013-06-04 22:35:05 +02:00
Bobby Smiles
55441f8ce3 Extract ramp updating logic from ENVMIXER. 2013-06-03 02:02:23 +02:00
Bobby Smiles
abaeba8897 Some cosmetic changes to envmixer. 2013-06-03 01:33:25 +02:00
Bobby Smiles
4eeb6bb6b2 Remove unused variables. 2013-06-03 00:52:56 +02:00
Bobby Smiles
3a655d24fe Starting envmixer refactoring. 2013-06-03 00:38:17 +02:00
Bobby Smiles
cc0b36d2b4 Remove unused variable. 2013-06-02 22:06:14 +02:00
Richard Goedeken
630dfad2af tagged v2.0-rc2 2013-06-01 18:00:33 -07:00
richard42
d679f50109 Update msvc11 project file to visual studio 2012 (msvc11) 2013-06-01 07:57:15 -07:00
Bobby Smiles
1e6f01fdd4 Refactor adpcm module. 2013-06-01 01:51:43 +02:00
Richard Goedeken
fdabe2d07e merged heads 2013-05-30 21:55:28 -07:00
Riley Labrecque
239d1a8d8e Fixed compiling with MSVC 2013-05-30 09:33:20 +00:00
Bobby Smiles
3770331e9b Extract sadd function. 2013-05-30 00:59:39 +02:00
Bobby Smiles
ad0337e029 MP3 is now into a separate module. 2013-05-29 22:57:49 +02:00
Bobby Smiles
1c02cd548f ADPCM is now into a separate module. 2013-05-29 21:53:19 +02:00
Bobby Smiles
cda7baafd1 Wrap envmixer2 related variable into corresponding ucode state structure. 2013-05-29 20:17:32 +02:00
Bobby Smiles
d078a5183c Remove unused macro. 2013-05-27 23:20:40 +02:00
Bobby Smiles
ab651ee920 Some arithmetic refactoring. 2013-05-27 22:40:26 +02:00
Bobby Smiles
486f98443b Use clamp_s16 instead of hand crafted solutions. 2013-05-27 22:08:01 +02:00
Bobby Smiles
15f18b8426 Refactor adpcm decoding. 2013-05-27 21:37:10 +02:00
Bobby Smiles
6692a3740e Refactor dmemmove audio commands. 2013-05-23 18:43:08 +02:00
Bobby Smiles
a98b0969b8 Refactor load_adpcm audio commands. 2013-05-23 01:38:38 +02:00
Bobby Smiles
390c59abd9 Replace BufferSpace by rsp.DMEM ; introduce dma_read_fast and dma_write_fast. 2013-05-23 01:05:10 +02:00
Bobby Smiles
d225f64438 Refactor interleave audio commands. 2013-05-22 22:47:37 +02:00
Bobby Smiles
2ada5cf120 Refactor mixer audio commands. 2013-05-22 22:16:13 +02:00
Bobby Smiles
44c1a8ab96 Refactor adpcm audio commands. 2013-05-22 21:37:45 +02:00
Bobby Smiles
65d6491c36 Refactor resample audio commands. 2013-05-22 20:31:58 +02:00
Bobby Smiles
edd03c3516 Rework UNKNOWN acmd. Use it when due. 2013-05-21 01:04:21 +02:00
Bobby Smiles
4a66146fff First pass of internal file reorganization. 2013-05-21 00:52:50 +02:00
Bobby Smiles
f38fe1e60d Regroup all audio ucode files into a audio.c 2013-05-20 23:47:30 +02:00
Bobby Smiles
2bd3d6dd25 Get rid of shared buffer hleMixerWorkArea. 2013-05-20 21:21:56 +02:00
Bobby Smiles
fbbdf5449a Pack each audio ucode states into a struct. 2013-05-20 00:49:03 +02:00
Bobby Smiles
a9a55b930c Refactor upper/lower bits parsing. 2013-05-19 23:48:52 +02:00
Bobby Smiles
831a92b0e7 Refactor DRAM address parsing. 2013-05-19 23:17:30 +02:00
Bobby Smiles
897f25c109 Extract parse_flags function in ucode1.cpp 2013-05-19 22:48:46 +02:00
Bobby Smiles
055e2df689 Factorize clamping function in ucode1.cpp 2013-05-19 22:36:34 +02:00
Sven Eckelmann
5704d656ae Enable Link-time optimization by default
The GCC introduced Link-time optimization in GCC 4.5 (2010-04-14). This should
be long enough available that interested users have upgraded to a compiler
supporting it.

The MSVC project already enabled WholeProgramOptimization since a long time.
Enabling it by default in GCC seems to be equally valid.
2013-05-11 11:25:53 +02:00
Sven Eckelmann
ba75d3506f Add CXXFLAGS to the linker step
The GCC manual states for different parameters that the options for compilation
must also be used when linking. The options for compilation are stored in
CXXFLAGS and added to LINK.o to fix the behavior.

Option which need this are for example -fPIC/-fPIE or -flto.
2013-05-11 10:56:08 +02:00
Bobby Smiles
82e6d79eaa Private mp3 related variables should be static. 2013-04-01 04:25:36 +02:00
Bobby Smiles
9e7a280cdf Add support for MusyX ucode detection. 2013-04-01 02:47:04 +02:00
Bobby Smiles
53577ef3eb Named some constants. 2013-04-01 02:14:10 +02:00
Bobby Smiles
1e8950ae88 Use static typed value instead of macro for IDCT related constant. 2013-03-21 19:34:32 +01:00
Richard Goedeken
f510b07e1d add msvc11 project file from mudlord 2013-03-20 22:26:27 -07:00
Richard Goedeken
d9bb882463 merged heads 2013-03-14 22:42:20 -07:00
Sven Eckelmann
ea771b3880 Revert "Enable link time garbage collection when link time optimization is enabled"
Some linker on different platforms don't handle the garbage collection
correctly and create extreme bloated binaries. Therefore, leave it to the user
to enable this feature or not.
2013-03-14 08:01:55 +01:00
Bobby Smiles
4945f56876 Refactor common jpeg decoding ucode. 2013-03-12 19:58:57 +01:00
Bobby Smiles
eb911442c2 Remove hack from jpeg code.
When I developped the original implementation of Pokemon Stadium Japan jpeg decoding ucode
I tested it with Rice video plugin and cheated a little bit to get some sensible results
(I changed the UV rescaling a bit and perform erroneous Y1Y2 swapping). Other video plugin
didn't support YUV16 texture format so comparison wasn't possible.
Recently, I played a little bit with Glide64mk2 and noticed that without aformentionned hacks
the jpeg decoding was performing successfully. That's why I think there is a bug in Rice plugin
and that I can delete my hack from jpeg decoding ucode.
2013-03-12 19:41:37 +01:00
Bobby Smiles
95deae759a Made private envmixer related variables static. 2013-03-11 21:59:58 +01:00