Commit graph

587 commits

Author SHA1 Message Date
Bart Trzynadlowski 52cd9d834b Save state support for 68K, Z80, sound board, DSB1, and MPEG playback. 2011-08-09 18:16:06 +00:00
Nik Henson 07fd26003e Added option to loop play position back to beginning of audio buffer when a buffer under-run occurs, rather than stalling output as before. This option is now the default behaviour. 2011-08-07 23:09:18 +00:00
Bart Trzynadlowski 6c71ec28af Protection now works for ecax. 2011-08-07 03:10:07 +00:00
Nik Henson 416fead447 Fixed mistake in previous commit! 2011-08-07 01:07:48 +00:00
Nik Henson 466997b318 Small bug fix to get MIDI music to play at correct speed (68K was running at wrong frequency) 2011-08-07 00:30:52 +00:00
Bart Trzynadlowski 603bd1bb86 - Added a patch for vs215. 2011-08-05 06:49:51 +00:00
Bart Trzynadlowski d859115074 - krom's patches for vf3a, harleyb, and ecax. 2011-08-05 06:22:34 +00:00
Bart Trzynadlowski 67c1b94b35 - Fixed DSB2 music looping. 2011-08-04 05:52:26 +00:00
Bart Trzynadlowski 915a6c5a17 - Fixed a DSB2 bug: masking of bytes when constructing start/end addresses is now correct (previously was allowing uninitialized garbage into upper 8 bits, which ought to be 0). 2011-08-03 06:06:18 +00:00
Bart Trzynadlowski 6a6788952c - Fixed Daytona 2 Advertise song. DSB2 MPEG state machine can now begin playing songs from state ST_GOTA4.
- krom: Minor fixes to Main.cpp to support wider ROM set names (up to 9 chars) and compilation under MinGW.
2011-08-03 04:29:33 +00:00
Bart Trzynadlowski 6b55cfb765 - krom added remaining ROM sets. Spikeout Final Edition disabled because it is a bad dump.
- Added patches for scuda and scudj.
- Added a TO-DO reminder in INIFile.cpp.
2011-08-03 03:18:51 +00:00
Bart Trzynadlowski fce3c7ad7c - skichamp now works, but controls are not hooked up and seems to overload the display lists like many non-working Step 2.x games do. To bypass the drive board error, enter the test menu and exit again. It will reboot and run.
- Added some notes on the cause of the "NO DAUGHTER BOARD DETECTED" error in Real3D.cpp.
- Removed some debug code from texture uploader.
2011-08-02 03:33:40 +00:00
Bart Trzynadlowski 2ca7898f1a - Changes submitted by krom: cleaned up spacing in Games.cpp, optimized byte swapping functions in Supermodel.h, minor changes to fix compiler errors in gcc. 2011-08-01 19:12:44 +00:00
Bart Trzynadlowski 4c02a8af05 - Fixed Ski Champ loading. Fails with a "NO DAUGHTERBOARD" error. 2011-07-31 19:19:59 +00:00
Bart Trzynadlowski d8960ad133 - Commented out debug log stuff. Now produces less noisy debug.log files. 2011-07-31 17:16:15 +00:00
Bart Trzynadlowski 357536ea5a - Added a C fallback for inline assembly code when the compiler is not MSVC. 2011-07-31 17:12:02 +00:00
Bart Trzynadlowski cbf28944a5 - Alphabetized ROM sets (thanks to krom) and added DSB ROMs to Spikeout. 2011-07-31 17:08:05 +00:00
Bart Trzynadlowski c5d823f054 - Fixed compilation when DEBUG is defined. 2011-07-31 17:07:17 +00:00
Bart Trzynadlowski 4b994a873e - Removed an unneeded printf() statement. 2011-07-31 04:58:39 +00:00
Bart Trzynadlowski ddd6fa92ef - Improved 68K interface. Now supports context switching.
- CSoundBoard is not derived from CBus.
- Optimized sound board memory handlers (now using switch statements).
- Added DSB emulation (based on R. Belmont's M1 source code).
- Improved ROM loading: only unique ROMs (those not shared amongst games) are used to identify games. The ROM loader will no longer get confused as easily.
- General cleanup here and there, removed unused Render.h file.
2011-07-31 02:37:31 +00:00
Nik Henson 62f695cc96 Added instruction cycle counting to new Z80 core 2011-07-26 21:47:59 +00:00
Bart Trzynadlowski 79e8172340 - Textures are no longer decoded for un-textured polygons (not sure if this fixes anything yet). 2011-07-22 19:01:45 +00:00
Bart Trzynadlowski d2ecec7997 - Textures are no longer decoded for un-textured polygons (not sure if this fixes anything yet). 2011-07-22 18:56:35 +00:00
Bart Trzynadlowski 5b373f687f - Sega Bass Fishing now uses an MPC106, allowing it to boot. 2011-07-22 06:43:53 +00:00
Bart Trzynadlowski a033058deb - Texture offsets: models are now decoded for each individual texture offset state and texture coordinates are adjusted while generating the vertex data.
- Model LUT now capable of differentiating between texture offset states (linked list of different texture offsets for each model address).
- Removed texOffset uniform attribute from vertex shader -- no longer needed.
2011-07-21 08:12:16 +00:00
Nik Henson c5c518390a - Removed disabling of sound for 64-bit build 2011-07-20 21:57:54 +00:00
Nik Henson b94537341d - Added check of reserved flag back into PPC stwcx. instruction 2011-07-20 21:40:10 +00:00
Nik Henson 45dd662dee - Updated debugger classes to get them to compile with latest changes
- Moved CPU debugger for Turbo68K into separate class CTurbo68KDebug and made C68KDebug base class for later addition of Musashi core
- Fixed typos in ConsoleDebugger
2011-07-20 21:39:11 +00:00
Nik Henson 03fa9532eb - Added function-based interface Audio for OSD sound output, together with SDL implementation
- Added object interface CThread for OSD threading and synchronization, together with SDL implementation
- Added multi-threading to CModel3 so that separate CPUs (PPC of main board, 68K of sound board and Z80 of drive board) can be run in separate threads if requested to improve performance on multi-core PCs
- Added -multi-threaded command line option (default is to run single-threaded still)
2011-07-20 21:14:00 +00:00
Nik Henson 1f73280282 - Fixed for 64-bit build
- Added OSD directories into include path
-This line, and those below, will be ignored--

M    Makefile.SDL.Win32.MSVC
2011-07-20 21:05:14 +00:00
Bart Trzynadlowski 12693a70f6 - Patched out a decrementer loop that was preventing Spikeout from starting up. 2011-07-20 06:20:40 +00:00
Bart Trzynadlowski 097b87e3c9 - CPU/Z80.h included from Supermodel.h 2011-07-18 19:59:37 +00:00
Bart Trzynadlowski 99b9c7838f - Added Z80 emulator from YAZE-AG.
- CBus now has IO bus functions to support the Z80.cpp
- Bus.h moved to CPU/ directory.
2011-07-18 19:48:57 +00:00
Bart Trzynadlowski 004339e601 - Added sound ROMs to Daytona 2 (BOTE and PE).
- Implemented bank switching for sample ROMs. It is probably incorrect because there is still 2MB of unaccounted-for space.
- Added a few important TO-DO notes.
2011-07-16 04:53:12 +00:00
Bart Trzynadlowski 325f9ab2e8 - stwcx. now always writes to memory.
- Added PPC/68K communication and automatically generated sound IRQs. Sound is now mostly working :)
- Increased SCSP MIDI buffer length to 128 to simulate a large FIFO for PPC->68K commands.
- Added sound ROMs to those games which have 8 MB of sample ROMs.
2011-07-13 07:11:27 +00:00
Bart Trzynadlowski b2afd274cb 2011-07-13 05:29:02 +00:00
Bart Trzynadlowski c73cb830dc - Added the Musashi 68K emulator by Karl Stenerud. Obtained Karl's explicit permission to relicense the code under GPL.
- Added a 68K interface, CPU/68K/M68K.*.
- Moved Turbo68K source files to CPU/68K/Turbo68K. It is no longer used but is being retained in the source tree for now. The LSR instruction has not been fixed in this update.
- Changed sound board code to use the new 68K interface (and hence, Musashi).
- Changed version string from 0.2-WIP to 0.2a-WIP. This is still an alpha version.
- Above changes have broken the 68K debugger.
2011-07-12 04:57:12 +00:00
Bart Trzynadlowski 95d61ce8bb Several ROM sets were added (contributed by krom@gbadev.org). 2011-07-06 05:08:02 +00:00
Bart Trzynadlowski b0e8755afc Added Spikeout protection data.
Added code to detect and abort erroneous 0-length texture transfers (was causing Spikeout to hang the emulator).
2011-07-06 05:07:04 +00:00
Bart Trzynadlowski a90075830c Texture offsets. 2011-07-06 05:05:38 +00:00
Bart Trzynadlowski cd2621b2ce Added texture offsets. Vertex shader has been updated in Shaders/Vertex.glsl.
Added palette initialization to 2D renderer. Fixes 2D graphics corruption when loading states (most visible in Scud Race).
2011-07-04 20:53:37 +00:00
Nik Henson 97ac46c82a Changes to debugger classes:
- Added CPrintBreakpoint
Changes to console-based debugger:
 - Added new scp command and tidied up some other commands
 - Tidied up event logging
 - Sorted commands into common groups
 - Added ReadMe.txt help file
2011-06-29 23:21:50 +00:00
Nik Henson 8e2e8adeb3 Changes to debugger classes:
- fixed step-out to work properly
- added ability to enable/disable debugging of individual CPUs
Changes to console-based debugger:
- tidied up syntax and split some commands out to make easier to use
- implemented missing commands (loademustate, saveemustate, resetemu, configinput, configallinputs, help)
- added new commands (nextframe, enablecpu, disablecpu, removeallcomments)
- added ability to redirect command output to a file
2011-06-28 23:20:19 +00:00
Nik Henson 0153a02b19 Added version of ConfigInputs that doesn't take display dimensions 2011-06-28 23:16:40 +00:00
Nik Henson 9416f9c521 New debugger classes - implementations for ppc and Turbo68K CPU cores 2011-06-28 00:29:20 +00:00
Nik Henson 7ea5d31b6c Added ENABLE_DEBUGGER option to include built-in console-based debugger in emulator 2011-06-28 00:27:16 +00:00
Nik Henson 8a9924b884 Changes for new built-in console-based debugger (only compiled in if SUPERMODEL_DEBUGGER defined):
- added code to create debugger object and attach it to system,
 - added new command lines options -enter-debugger and -disable-debugger,
 - added new UI input to halt execution and enter debugger (default Alt+B),
 - added new CLogger class to route all output via debugger if required.
2011-06-27 23:44:51 +00:00
Nik Henson 036c371592 Added headers for new debugger classes 2011-06-27 23:22:50 +00:00
Nik Henson 2465354ef6 New CLogger class that handles logging from Supermodel. Added so that log messages can be routed through debugger if required, rather than printed to console. 2011-06-27 23:21:43 +00:00
Nik Henson aa0c598a4c Added hooks into debugger classes 2011-06-27 23:19:22 +00:00