Commit Graph

440 Commits

Author SHA1 Message Date
ekeeke31
2dc6874e33 reverted FM buffer to use "short int" instead "long int" since it broke sound when High-Quality FM was disabled 2010-04-19 12:21:40 +00:00
ekeeke31
9d430a0851 fixed 2-cell vertical scrolling [40-cell mode only, need investigation]: fixes left column in Gynoug 2010-04-19 12:19:41 +00:00
ekeeke31
11859d43de minor optimizations 2010-04-19 08:38:38 +00:00
ekeeke31
334e8a0478 additional fixes to memory card interface
improved some menu transitions
changed default background color
2010-04-15 12:01:14 +00:00
ekeeke31
0ac9bd43da fixed bug with PNG file support introduced in previous revision
fixed GC Memory Card Support on Wii
added Memory Card sector size error check
2010-04-14 12:28:12 +00:00
ekeeke31
3339a4c467 fixed compilation issue with libpng 1.4.x 2010-04-13 12:21:21 +00:00
ekeeke31
0794c4a5d6 [VDP]
.improved FIFO timings accuracy (fixes Sol Deace intro)
.code cleanup
2010-04-06 23:22:27 +00:00
ekeeke31
68ceeb3b8c [GUI]
added an option to disable background "overlay"
changed background image when background is 'pure black'
improved some menu transitions
minor menu arrangement & code cleanup
2010-03-22 14:07:25 +00:00
ekeeke31
a590414754 improved PAL region auto-detection for some games
fixed auto-detected inputs not being properly initialized after ROM loads
some code cleanup
2010-03-22 14:03:58 +00:00
ekeeke31
9092121e60 improved Wiimote support for mouse emulation
VDP code cleanup
2010-03-07 17:58:33 +00:00
ekeeke31
0f4da285f8 fixed compilation issues
tiny GUI modifications
2010-03-07 17:56:02 +00:00
ekeeke31
ed11eb0133 [Core/VDP]
* improved sprites processing accuracy.
* fixed VBLANK transition line checks.
* code cleanup and (minor) optimizations.

[Core/Sound]
* increased FM internal sample size to 32-bit to avoid overflow when adding channels.
* added preliminary emulation of YM2612 DAC precision (can be configured to match real console output).
* added configurable roll-off for FIR filtering in High-Quality FM mode.

[Wii]
*added support to enable/disable Video Encoder Trap Filter: can help reproducing "color blending" as on a real Genesis (composite video only).
*added support to configure Video Encoder gamma correction.
2010-02-28 19:55:43 +00:00
ekeeke31
62b3cce887 modified IPL font support to always use ANSI font by default (fix corrupted text on Japanese consoles) 2010-02-28 19:26:04 +00:00
ekeeke31
55a8c5a7ac reverted previous changes regarding '2-cell' vertical scroll mode when column is partially scrolled horizontally (fixes Formula One Championship) 2010-02-24 22:28:08 +00:00
ekeeke31
0c3e9c601c fixed YM2612 Timers bug: fixes "Langrisser Hikari II"/"Der Langrisser II" (Sega logo) 2010-02-21 18:33:58 +00:00
ekeeke31
e793e3c8fd code/header cleanup 2010-02-19 12:37:39 +00:00
ekeeke31
180317a392 fixed regression that prevents SRAM data > 2K to be loaded properly 2010-02-19 12:30:02 +00:00
ekeeke31
9eadfc41b3 fixed compilation issue in previous revision (configurable roll-off has not yet been submitted) 2010-02-17 08:51:17 +00:00
ekeeke31
27d3fc5328 improved FM & PSG chip synchronization when using resampling (fixes buffers overflow issues and problems with DAC timings that occured with previous "fix") 2010-02-15 14:02:37 +00:00
ekeeke31
cea89b4531 code cleanup 2010-02-12 13:28:28 +00:00
ekeeke31
0f1850ec6e fixed potential buffer overflow when using resampling (FM High-Quality mode). 2010-02-12 13:27:09 +00:00
ekeeke31
3cef34ffa4 fixed audio/video resynchronization when video settings are changed during frame execution 2010-01-27 23:53:20 +00:00
ekeeke31
bad0696190 [GCN/Wii]
*fixed audio/video desync that could occur after loading a new game 
*improved general synchronization of frame execution
*modified ASNDLIB shutdown to prevent potential memory leak with DSP tasks
*changed some global variables to use int type by default for optimization
*some code cleanup
2010-01-27 13:12:06 +00:00
ekeeke31
f44d38b537 fixed YM2612 reset on "soft reset"
small optimizations & fixes in FIR resampler code
2010-01-27 07:20:44 +00:00
ekeeke31
f734e2fade optimized CPU cores instruction cycle counting (master clock multiplier is now applied during init)
fixed a recently introduced typo that make STOP instruction locks the machine (Thunderforce IV)
2010-01-27 07:18:25 +00:00
ekeeke31
e2eab7f408 defined HVC tables as 'const' for some optimization (?) 2010-01-27 07:14:45 +00:00
ekeeke31
c2dce7520a fixed YM2612 reset values 2010-01-27 07:13:04 +00:00
ekeeke31
8f5d6b38c6 updated win32/sdl code 2010-01-27 07:12:26 +00:00
ekeeke31
2b78421402 [Core]
------

* improved 68k accuracy (initial reset timing + auto-vectored interrupts handling).
* modified Z80 & 68k cores to directly use external cycle count instead of intermediate counters.
* improved Z80 & 68k cpu execution/synchronization accuracy, now use Master Clock as common clock reference.
* improved PSG & FM chips synchronization with CPU execution (fixed point precision).
* completely rewrote sound output processing & mixing: sound chips are now clocked with exact output frame rate
to ensure 100% smooth video & audio playback, with no lag or skipping, while still rendering an accurate number
of samples per frame. This will also make fast-forward implementation (video AND sound) more trivial.
* improved color accuracy in VDP highlight mode to match results observed on real hardware.
* improved sprites processing timing accuracy: fixes (un)masked sprites in Mickey Mania (3D level), Sonic 2 (VS mode).
* improved horizontal blanking & HINT/VINT occurrence timing accuracy, as measured on real hardware.
* improved H-Counter accuracy in 40-cell mode, as measured on real hardware.
* optimized Z80 bus status signals
* usual code cleanup

[GCN/WII]
---------
fixed ASNDLIB exit when returning to game
fixed audio/video startup sync
modified audio back-end engine according to new audio processing core (see above)
2010-01-24 11:41:53 +00:00
ekeeke31
ac4de61944 code cleanup 2010-01-13 22:08:35 +00:00
ekeeke31
7a4c208a34 fixed 68k reset exception timing (unused) 2010-01-13 22:08:05 +00:00
ekeeke31
11d8b55139 fixed Z80/PSG synchronization 2010-01-13 22:07:05 +00:00
ekeeke31
9e0ed2567e fixed color palette in highlight/normal modes 2010-01-13 22:05:52 +00:00
ekeeke31
7dae5fc15a .removed unecessary images (use rotation instead)
.implemented interactive screen positioning & scaling in video option menu
.usual code cleanup
2009-12-30 15:31:50 +00:00
ekeeke31
46758ce339 improved audio accuracy (input samplerate is now adjusted according to emulated framerate) 2009-12-30 15:24:12 +00:00
ekeeke31
1489a94be3 minor menu arrangments 2009-12-14 09:05:41 +00:00
ekeeke31
ee50adf375 fixed input controllers not being properly changed after hard reset 2009-12-13 19:09:15 +00:00
ekeeke31
ecb5f0617b updated SDL/Win32 sourcecode 2009-11-22 16:35:41 +00:00
ekeeke31
18f9eaa16c modified FIR resampler default filtering rolloff 2009-11-22 16:31:17 +00:00
ekeeke31
9e0e288e31 added some GX_DrawDone sync to fix corrupted rendering 2009-11-22 16:30:30 +00:00
ekeeke31
2b0f723c61 code cleanup 2009-11-22 16:28:59 +00:00
ekeeke31
14f512034f updated Z80 core in line with official version (MEMPTR renamed to WZ)
additional fixes to overscan color in shadow/highlight mode
2009-11-14 18:42:42 +00:00
ekeeke31
46fa9f1849 fixed overscan color in shadow/highlight mode (always use half intensity)
removed useless color updates (entry 0 of each palette is never displayed)
2009-11-13 12:15:51 +00:00
ekeeke31
7d72dfc687 minor optimizations to VDP rendering code (bis) 2009-11-09 12:26:49 +00:00
ekeeke31
6ff42f4252 minor optimizations to VDP rendering code 2009-11-09 12:05:19 +00:00
ekeeke31
dcefd321a6 modified YM2612 operators/channels clipping (need confirmation)
improved LFO timing accuracy
various YM2612 core cleanup & additional comments
2009-11-05 08:53:47 +00:00
ekeeke31
05dc1f8a9a updated z80 core to last version (fixed X/Y flags in CCF/SCF/BIT instructions) 2009-11-02 19:26:42 +00:00
ekeeke31
da37355e04 removed unused code 2009-11-02 19:23:39 +00:00
ekeeke31
fe055c2a2c .fixed I/O access issues with devkitpro r18
.updated OGG support (compatibility with last libtremor + threading fixes from Tantric)
.improved controller auto-detection 
.added experimental support for cartridge hot swapping, check System Options Menu
.improved reset (soft/hard) emulation accuracy


BEFORE COMPILING, REMOVE THE FOLLOWING FILES:

*from ($DEVKITPRO)/libogc/lib/cube & /wii
-----------------------------------------
libpng.a
libtremor.a

*from ($DEVKITPRO)/libogc/include
---------------------------------
/tremor
png.h
pngconf.h


DOWNLOAD & INSTALL THE FOLLOWING PORTLIBS in ($DEVKITPRO)/portlibs/ppc
(PPC versions, from http://sourceforge.net/projects/devkitpro/files/)
*libpng
*libtremor
2009-10-16 11:32:55 +00:00
ekeeke31
d129e7da94 code formatting 2009-10-06 08:05:18 +00:00