Commit Graph

169 Commits

Author SHA1 Message Date
ekeeke31
a834e63ce4 adjusted PAL framerate 2011-04-28 18:17:57 +00:00
ekeeke31
751e922638 added missing stuff about framerate reinitialization in r580 2011-04-28 00:23:24 +00:00
ekeeke31
f9beafa96c .fixed ROM file extension detection (again)
.improved audio/video synchronization for PAL games in 50Hz TV modes (now use VSYNC like NTSC games in 60hz modes)
2011-04-28 00:09:40 +00:00
ekeeke31
8ef3139f9e fixed ROM file extension detection 2011-04-08 12:07:20 +00:00
ekeeke31
cb7990cc3f removed unused files 2011-03-31 22:13:52 +00:00
ekeeke31
ab4638144c [Core/VDP]
---------------
* added support for Master System compatibility mode (Z80 ports access mode), incl. Mode 5 rendering.
* added Mode 4 rendering for both Genesis & Master System modes.
* added alternate BG planes rendering functions (should be faster on PPC architectures).

[Core/IO]
---------------
* added support for Master System compatibility mode (Z80 ports access mode).
* added Master System peripherals emulation (Control Pad, Paddle, Sports Pad & Light Phaser).
* added XE-1AP (analog controller) emulation.
* added Activator emulation.

[Core/Extra]
---------------
* added support for all known Master System cartridge mappers.
* added copy-protection hardware emulation for a few MD unlicensed games: fixes 777 Casino (crash when talking to bunny girls).
(NB: most of those unlicensed games seem to have been already patched by ROM dumpers, main purpose is documenting them)
* added support for Top Shooter arcade board controller. (A=Shoot, B=Bet, C/RIGHT=Coins, START=Start, hold UP on startup to enter service mode)
* improved King of Fighters 98 mapper emulation (registers address decoding is now 100% accurate)
* fixed Game Genie when several codes affect same ROM address.
* fixed EEPROM types for Brian Lara Cricket & NBA Jam TE (verified on real cartridges)

[Core/General]
---------------
* added Master System compatibility mode emulation (automatically enabled when loading ROM file with .sms extension).
* improved savestate stability & compatibility (support for old 1.4.x savestates is preserved)
* various code cleanup & comments.

[Gamecube/Wii]
---------------
* fixed cheat codes handling when several codes affect same ROM address.
* improved input controller detection on menu exit.
* improved key remapping dialog box to match emulated device
* changed Menu key for Gamecube controller to allow MODE button mapping
* fixed DVD not being unmounted on swap (memory leak)

[Wii only]
---------------
* added USB mouse support for Sega Mouse emulation
* compiled with latest libogc: improves USB compatibility & fixes stability issues with Wiimotes.
2011-03-31 22:11:05 +00:00
ekeeke31
03c3f9c135 improved input controller detection on menu exit 2011-02-23 19:19:48 +00:00
ekeeke31
5567576861 fixed cheat codes handling when multiple codes affect identical ROM address 2011-02-23 19:17:21 +00:00
ekeeke31
35b1a164bd Finalize 1.4.1 2010-12-04 17:18:34 +00:00
ekeeke31
24e84a7951 [Gamecube specific]
---------------
* fixed audio input frequency, now use exact audio hardware samplerate, as measured on my Game Cube (~48044 Hz),

[Wii specific]
---------------
* fixed USB drive not being detected when application is loaded from USB (HBC), thanks to Tantric for the tips.
2010-12-04 17:16:32 +00:00
ekeeke31
39920979d2 [Gamecube/Wii]
---------------
* added message box when inputs config uses disconnected controllers.
* added message box when settings are reseted to default on startup.
* fixed default inputs configuration.
* fixed memory leak in Cheat Menu causing spurious resets.
* added an option to enable/disable automatic cheat activation
* increased max number of cheat codes
* optimized cheat codes requiring RAM patching.
* improved default horizontal scaling to better match output from a real Mega Drive

[Gamecube specific]
---------------
* fixed inverted keys in cheat menu.

[Wii specific]
---------------
* added the possibility for any wiimotes to be used as input device, regardless of the connected expansion controller.
2010-12-04 17:15:36 +00:00
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
9e1c7d6ce8 fixed config.ini being always reinitialized 2010-11-02 12:22:23 +00:00
ekeeke31
d3116defa7 Bump up version 1.4.0 2010-11-01 18:19:46 +00:00
ekeeke31
c8014f5b4d modified legal disclaimer 2010-11-01 18:14:45 +00:00
ekeeke31
d14026a6fe -redesigned cheats manager menu, added Action Replay codes support
-added libiso9660 support
-improved ROM browser and history
-fixed missing MODE button support on Game Cube controller
2010-11-01 18:13:17 +00:00
ekeeke31
88e7fb847a fixed current DVD directory not being saved when changing ROM device
removed unused USB2 code
2010-08-24 12:43:34 +00:00
ekeeke31
5486be90dd bump up max files per directory 2010-08-20 12:44:14 +00:00
ekeeke31
34a9015f0e Removed useless IOS code 2010-08-19 13:25:07 +00:00
ekeeke31
9f4806a37d finally implemented accurate column-based vertical scroll mode (verified on real hardware) 2010-08-19 12:11:51 +00:00
ekeeke31
56760ff8c3 removed cIOS202 & EHCI module support 2010-08-12 19:21:25 +00:00
ekeeke31
54f1b14aa9 fixed audio/video synchronization in interlaced & progressive modes 2010-08-08 18:09:37 +00:00
ekeeke31
7baad4c52e modified default config options 2010-07-30 21:18:41 +00:00
ekeeke31
c44daa134b minor input code cleanup & fixes
it's now possible to change the input configuration when J-CART is detected: this let you play 6-player mode in Super Skidmarks by connecting 4-WayPlay
2010-07-28 12:01:03 +00:00
ekeeke31
64c2278395 .fixed GX_REPEAT texture rendering
.added new default menu background
2010-07-06 14:03:50 +00:00
ekeeke31
670df571ea code cleanup 2010-07-02 23:03:05 +00:00
ekeeke31
3434f89e3b .fixed optimization of memory handlers (better branch prediction ?)
.fixed savestate snaphot when 16:9 correction is used
.fixed overscan support (separated H & V border emulation)
2010-06-15 06:14:35 +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
7db1b3ef85 modified menu arrangement 2010-05-28 15:47:45 +00:00
ekeeke31
2c2f760f44 .optimized memory footprint
.improved hardware initialization (fixes Ultimate Mortal Kombat Trilogy)
.improved soft-reset emulation
.fixed some menu bugs on Gamecube
2010-05-28 12:08:00 +00:00
ekeeke31
70ef2fc20b improved automatic frame-skipping (fixes Virtua Racing on Gamecube) 2010-05-25 07:34:02 +00:00
ekeeke31
e2366f81a9 [Gamecube] fixed access to ROM files on SDCARD 2010-05-25 06:42:28 +00:00
ekeeke31
0a83f8ccdd fixed ROM file selector 2010-05-18 07:35:29 +00:00
ekeeke31
6617086d87 fixed some config/menu options 2010-05-17 10:55:37 +00:00
ekeeke31
11e600e933 fixed stupid bug introduced in previous revision [crash when loading from history] 2010-05-09 01:15:40 +00:00
ekeeke31
81054b0420 .more GUI fixes
.added credit screen
.added ROM information window
2010-05-09 00:53:19 +00:00
ekeeke31
7a827f7a71 added automatic access to last ROM directory (SD/USB)
added an option to automatically load last ROM file on startup
2010-05-07 18:25:27 +00:00
ekeeke31
a6fdb00469 fixed memory card support 2010-05-07 08:19:32 +00:00
ekeeke31
44073ca30e implemented new save manager menu (multiple slots, snapshots, slot deletion...)
miscellaneous improvement to GUI engine
2010-05-06 12:59:43 +00:00
ekeeke31
e596250c89 added missing EHCI module 2010-04-24 14:04:46 +00:00
ekeeke31
7880c09c4e added USB2 support through Hermes IOS202 (mload) 2010-04-23 12:31:07 +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
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
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
180317a392 fixed regression that prevents SRAM data > 2K to be loaded properly 2010-02-19 12:30:02 +00:00
ekeeke31
cea89b4531 code cleanup 2010-02-12 13:28:28 +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
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
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
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
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
c2c79c0eb3 fixed Realtec Mapper support (fixes missing sound in Balloon Boy / Funny World) 2009-10-06 07:36:08 +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
cccd71e612 fixed automatic SRAM not being reloaded after Hard Reset
code cleanup & update for use with last libogc (check download section for updated libs)
2009-09-27 18:08:33 +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
f2e43c9f8f fixed backup memory support in Bill Walsh College Football (this game uses I2C EEPROM saves)
modified Action replay (Pro) memory map
2009-08-11 17:25:38 +00:00
ekeeke31
8834abaa74 added configurable lowpass filter 2009-08-11 08:18:46 +00:00
ekeeke31
c0179e7ed4 fixed YM2612 output limiter
modified resampler frame length calculation
2009-08-09 16:10:44 +00:00
ekeeke31
cfa4a08211 fixed m68k 32 bits writes at memory boundaries
fixed UKM3 memory map being incorrectly reseted
added LFO current steps to YM2612 context
fixed IO reinitialization in controllers menu
2009-08-09 09:33:48 +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
9eecfa2c7c fixed Action Replay hardware emulation (still need Pro Action Replay 1 & 2) 2009-08-02 20:41:46 +00:00
ekeeke31
3031072ee0 added Action Replay hardware emulation (incomplete, need more infos !)
added proper region detection for Korean games
fixed Game Genie patches remaining active when disactivated
2009-07-31 16:37:42 +00:00
ekeeke31
f404e9eaa9 Fixed Game Genie option menu
Added more EQ options in audio menu
2009-07-30 07:15:54 +00:00
ekeeke31
d112fb72a2 +added Game Genie hardware emulation (Game Genie ROM is now fully supported) 2009-07-29 15:34:25 +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
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
256d534ea6 ~fixed ASND support, DSP task is now allocated only once.
~fixed oggplayer memory leak (LWP queue was not closed properly)
~do no use VSYNC callback for emulation synchronization anymore, (always uses DMA interrupt regardless the video mode)
2009-06-15 08:07:48 +00:00
ekeeke31
7bddb27c2b ~code cleanup
~increased held key delay
2009-06-04 07:47:17 +00:00
ekeeke31
1cfb7e6f44 +implemented Blip Buffer linear interpolation in SN76489 core
+optimized SN76489 core
+added configurable SN76489 Noise boost
+added savestate version check
2009-05-27 14:07:14 +00:00
ekeeke31
5f3fce01ec ~fixed audio menu items description 2009-05-27 06:06:22 +00:00
ekeeke31
adcd65f2f4 + added 3-Band Audio Equalizer support 2009-05-26 16:40:35 +00:00
ekeeke31
05014756ca ~fixed confirmation box
~improved history filelist update
~removed some global variables
2009-05-26 13:14:33 +00:00
ekeeke31
b7f3a1bfd5 clear-up some memory 2009-05-25 17:14:33 +00:00
ekeeke31
28230082ed +added optional Confirmation Prompt
+improved File Selection code (removed global variables, sound effect)
2009-05-25 17:07:34 +00:00
ekeeke31
8aa21d446d +added real-time update for optionboxes (function callback) 2009-05-25 10:41:16 +00:00
ekeeke31
d1c6a04dc7 +added optionbox (variable option values) support
~fixed memory leak with messageboxes
2009-05-25 07:46:19 +00:00
ekeeke31
599aecb9d0 +added missing image
+added throbber support
~fixed texture rotation
~improved wiimote pointing
2009-05-23 17:29:53 +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
70af97e256 +added configurable screen width scaling in menu options 2009-05-14 16:13:19 +00:00
ekeeke31
cead1c2364 +added 16:9 autocorrection option
~fixed ROM snapshot not being cleared when selecting directories
2009-05-14 12:32:20 +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
dbb3645557 ~added license informations in disclaimer
~fixed gun cursors width in original mode
2009-05-13 12:31:44 +00:00
ekeeke31
ef8d1a27a9 ~fixed DVD browser
~modified intro screen
2009-05-12 12:27:19 +00:00
ekeeke31
9204498c96 various menu bugfixes 2009-05-07 13:00:57 +00:00
ekeeke31
64676a0b45 proper audio shutdown 2009-05-06 14:59:43 +00:00
ekeeke31
a54f743cb4 fixed DVD file parsing bug
modified some of the menu helpers, added J-CART indication
improved & more flexible input device selection (ensure we have at least one connected device)
2009-05-06 14:47:22 +00:00
ekeeke31
51ba38b6a1 ~fixed some small bugs in Controllers Settings Menu
~fixed a bug with J-CART
~fixed a bug corrupting selection bar in ROM File Browser
-removed useless entry from DVD filelist
2009-05-06 10:03:33 +00:00