Commit Graph

64 Commits

Author SHA1 Message Date
ekeeke31
a4cfc2a77a [Core/VDP]
---------------
* improved VBLANK flag accuracy, as observed on real hardware.
* improved DMA operations accuracy, writes are now performed on a scanline basis: fixes Gaiares (flickering title screen).
* improved DMA Fill timing accuracy.
* fixed DMA with bad code values: fixes Williams Arcade Classics (corrupted gfx after soft reset).
* fixed horizontal resolution changes during HBLANK: fixes Bugs Bunny in Double Trouble (2nd stage).
* fixed Vertical Counter in interlace mode 1, as observed on real hardware.
* fixed horizontal border width, as observed on real hardware.
* various code improvments & optimizations.

[Core/Extra]
---------------
* improved savestate format: added DMA, SVP, cartridge mapping & internal registers state informations
* improved unlicensed ROM mappers emulation
* added Chinese Fighters III mapper support
* added Top Fighter mapper support
* fixed Barver Battle Saga mapper support
* fixed cartridge hardware soft-reset (Game Genie, SVP, ...)
* fixed Game Genie registers byte reads
2010-12-04 17:13:55 +00:00
ekeeke31
63617bf5a1 fixed VDP width change during active display (Golden Axe 3 intro) 2010-11-01 18:03:41 +00:00
ekeeke31
670df571ea code cleanup 2010-07-02 23:03:05 +00:00
ekeeke31
48b77511bf .fixed a bug with sprite rendering
.additional "optimization"
2010-07-02 13:21:21 +00:00
ekeeke31
daf11963b1 .added pixel-accurate emulation of mid-line display on/off (Nigel Mansell World Championship PAL, Ren & Stimpy's Invention PAL,...)
.improved sprite processing accuracy (fixes Power Athlete / Deadly Moves)
.optimized sprite rendering
2010-06-28 22:49:17 +00:00
ekeeke31
a2258d0011 Additional fixes 2010-06-20 20:32:14 +00:00
ekeeke31
79d5f55611 .added proper TMSS emulation
.memory bus handlers code cleanup & optimization
2010-06-14 08:05:45 +00:00
ekeeke31
12606da28e .improved mid-frame screen changes (fixes Bugs Bunny in Double Trouble)
.improved VDP FIFO timing accuracy
.improved Z80 interrupt accuracy
.modified CPU Hard Reset start cycles
2010-06-10 07:57:18 +00:00
ekeeke31
f21a08ebfa [Core]
.improved Z80 bus reset accuracy
.improved Z80 locks & VDP access accuracy
.improved soft-reset accuracy
.adjusted Horizontal Counter timing in H32 mode (fixes Sonic 3D Blast 'bonus' levels)
.updated win32 port to compile with recent changes
.input code cleanup

[GCN]
.fixed soft-reset (reset switch should also works now)



IMPORTANT: Because of some internal changes, saved states from previous revisions are not compatible !
2010-05-30 18:42:03 +00:00
ekeeke31
5078244cd1 added proper HV Counter latch support, as verified on real hardware (fixes Sunset Riders intro) 2010-05-17 10:59:47 +00:00
ekeeke31
0794c4a5d6 [VDP]
.improved FIFO timings accuracy (fixes Sol Deace intro)
.code cleanup
2010-04-06 23:22:27 +00:00
ekeeke31
9092121e60 improved Wiimote support for mouse emulation
VDP code cleanup
2010-03-07 17:58:33 +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
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
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
6ff42f4252 minor optimizations to VDP rendering code 2009-11-09 12:05:19 +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
ekeeke31
824b33fea9 fixed SRAM being reinitialized after changing some system options when auto-SRAM is enabled
fixed BIOS lockup with games using SRAM when auto-SRAM is enabled
improved Gamecube controller autodetection on startup
2009-10-04 18:24:29 +00:00
ekeeke31
45756f6b14 improved HBLANK flag occurence timing (fixes Mega Turrican Sky level)
improved emulation of CRAM writes during HBLANK
improved Wii RESET button behavior ("true" MD soft-reset)
2009-09-30 17:11:24 +00:00
ekeeke31
a2ece6f81b improved Pro Action Replay emulation (still not working completely)
added cycle-accurate YM2612 reset handler
some fixes in FIR resampler
2009-08-14 16:46:19 +00:00
ekeeke31
0d58ff65e0 fixed sound issues in PAL mode when HQ YM2612 is enabled (modified FIR resampler ratio)
fixed video glitches in games that switch video horizontal width.
fixed BIOS infinite loop on hard reset
2009-08-14 13:54:15 +00:00
ekeeke31
5b888e725b added proper IO initialization routines
improved cartridge structure
added Lock-ON hardware emulation (Sonic & Knuckles)
added cartridge ROM mirroring support (required for Lock-ON emulation)
2009-08-06 18:31:05 +00:00
ekeeke31
dbc4d02fea ~implemented faster/better FIR resampler, removed libsamplerate
~fixed some memory leaks with Blip Buffer
~reverted previous change regarding frame synchronization: always use VSYNC when switched to 60hz (fix video issues in interlace mode 2)
~optimized cell rendering (less byte swapping)
~fixed savestate file version checking
2009-07-22 17:25:41 +00:00
ekeeke31
9800c00f5a ~modified RGB565 color palette 2009-07-03 16:18:16 +00:00
ekeeke31
4835860232 ~improved DIVU/DIVS/MULU/MULS timing accuracy (68k core)
~optimized 68k execution
~reverted recent changes to LFO phase modulation, need more testing (ym2162 core)
2009-06-23 16:38:29 +00:00
ekeeke31
c35921ba3d ~fixed video width not being initialized when using BIOS
~added an option to enable/disable 68k Address Error support (required by some homebrew roms)
2009-06-17 07:58:56 +00:00
ekeeke31
aa970d66a6 ~optimized 68k execution/interruptions
~re-enabled Address Error emulation
2009-06-05 17:31:46 +00:00
ekeeke31
f634e0719b ~fixed VDP bug (Window Position) from previous revision
~fixed Win32 makefile
2009-06-03 09:36:28 +00:00
ekeeke31
32ac31a997 ~VDP code cleanup/optimization
+added VDP palette bit support
2009-06-02 17:02:06 +00:00
ekeeke31
2a26480498 ~fixed messagebox crash when mounting DVD
~improved messagebox when loading ROM files with SRAM/Savestate "autoload"
~modified messageboxes titles & some error messages
~improved ROM file selection with the wiimote
~fixed VDP horizontal mode when loading savestate
~modified horizonatl scaling in Original mode.
~compiled with SVN libfat (read-ahead cache is now automatically used)
2009-05-20 15:11:06 +00:00
ekeeke31
7b7fa4123d ~fixed H32/H40 modes transition
~fixed overscan horizontal width in both modes
+added MessageBox support [GUI engine]
2009-05-19 16:14:43 +00:00
ekeeke31
b08e66855a +added proper license/copyright stuff
~modified file headers
~separated GUI engine from menus
2009-05-13 14:26:55 +00:00
ekeeke31
ae3ac87f7c improved sprite masking accuracy 2009-04-06 17:24:16 +00:00
ekeeke31
4eb8d17acf [-]removed Gens YM2612 core support
[~]fixed YM2612 context restore 
[+]improved YM2612 emulation accuracy (BROKEN)
2009-02-25 16:53:28 +00:00
ekeeke31
6f65ac3f15 fixed audio/video synchronization, preliminary GX gui implementation 2009-02-22 19:57:41 +00:00
ekeeke31
43fd560e55 optimized some float/int conversions, added -fomit-frame-pointer flag 2009-01-28 16:43:15 +00:00
ekeeke31
c8d27f6740 finally fixed interlaced mode, reimplemented frame counters 2009-01-13 20:02:06 +00:00
ekeeke31
4dbedcdc04 fixed original interlaced mode desync (hack) 2009-01-08 19:01:16 +00:00
ekeeke31
cb7149fb6b added support for one EEPROM game, code cleanup 2009-01-07 17:12:03 +00:00
ekeeke31
414a53ca1f modified sn76489 cut-off frequency, modified Video synchronization 2009-01-06 17:15:28 +00:00
ekeeke31
8ea80d38a5 rewrote file interface 2008-12-10 18:16:30 +00:00
ekeeke31
35530e0ee3 fixed SVP DMA, fixed bug with interlaced mode, added backdrop color for NTSC filters 2008-12-07 19:31:50 +00:00
ekeeke31
c4c78f58be fixed cart mapper, code cleanup 2008-12-05 16:26:57 +00:00
ekeeke31
0165ac387f huge update 2008-12-04 19:32:22 +00:00
ekeeke31
fbf4c2be5a updated SDL port 2008-10-13 16:07:02 +00:00
ekeeke31
41ffdefb1d various modifications 2008-10-12 19:56:35 +00:00
ekeeke31
68e201835f tiny adjustments to HBLANK/HDISP timings 2008-09-23 13:39:00 +00:00
ekeeke31
b87381a068 fixed HBLANK/HINT timings 2008-09-18 15:08:47 +00:00