Commit graph

13 commits

Author SHA1 Message Date
Nik Henson 183dca563d Committing various small updates that have been hanging around in my source tree for a while now:
- Added 'crosshairs' command line and config option.
- Added 'vsync' command line and config option (so far only tested on NVidia cards on Windows 7 - other graphics drivers, O/Ss or driver settings may simply chose to ignore this).
- Added fullscreen toggle within game using Alt+Enter key combination.
- Added framework for lamp outputs and 'outputs' command line and config option.  So far only the lamps for driving games are hooked up in the emulator (others to be added later).
- Added an initial outputs implementation for Windows that sends MAMEHooker compatible messages (-outputs=win to enable)
- Fixed fps calculation in Main.cpp that was producing incorrect results and so giving the impression that frame throttling wasn't working properly when in fact it was.
- Fixed palette indexed colours as the index was always off by one, causing incorrect colours in various games, eg drivers' suits and flashing Start sign in Daytona 2.
- Altered caching of models so that models with palette indexed colours use the dynamic cache rather than the static one.  This is so that changes in palette indexed colours appear on screen, eg the flashing Start sign on the advanced course of Daytona 2 (although currently the START message itself is not visible due to other problems with texture decoding).
- Fixed small bug in TileGen.cpp which meant both palettes were being completely recomputed pretty much with every frame.  This was a significant performance hit, particularly as palette recomputation is currently being done in SyncSnapshots (it should be moved out of here at some point, although for now it's no big deal).
- Made sure all OpenGL objects and resources are deleted in Render2D/3D destructors, in particular the deleting of the VBO buffer in DestroyModelCache.
- Made sure that GLSL uniforms are always checked to see if they are bound before using them in order to stop unecessary (but harmless) GL errors.
- Altered the default texture sheet handling to use a single large GL texture holding multiple Model3 texture sheets rather than multiple GL textures as before (if required, the old behaviour can still be selected with the mulisheet fragment shader).  I believe this fixes the disappearing crosshairs/corrupt GL state problem which the multisheet fragment shader seemed to be triggering somehow.
- Fixed a bug in debugger which meant memory watches were not triggering properly
2012-07-15 21:04:46 +00:00
Bart Trzynadlowski ac29fc1e88 Somehow John's Build.bat and Clean.bat did not get added in r262. Here they are. 2012-07-12 06:40:55 +00:00
John Peterson 3963a7a53c Applied a series of patches by John Peterson:
- Fixed a printf statement in ConsoleDebugger.cpp.
- Fixed memory watches not breaking in CPUDebug.h.
- Added some helpful batch files to the VS2008 directory.
- Added support for automatic loading of parent ROM sets.
2012-07-12 05:28:08 +00:00
Nik Henson 3b41239cfb This update fixes (hopefully) the last of the texture upload lags that were affecting some games, in particular Daytona 2 and Spikeout.
To achieve this UploadTextures no longer clears the model cache when called.  Instead the cache is kept in-tact (which should help improve cache hits) and all textures referenced by models being rendered are (re-)decoded with every frame.
To help with tracking all the unique texture references contained in a model a new class TextureRefs has been added.
2012-02-23 23:20:21 +00:00
Nik Henson 8a4ea64994 Added OSD/Video.h to provide OSD-dependent video functionality. The static functions in here get called by Model3.cpp from within the render thread so that any OSD related rendering can also be run in parallel for a further speed increase.
Updated OSD/SDL/Main.cpp to provide the SDL implementations of the functions in OSD/Video.h.
2012-02-13 23:37:48 +00:00
Nik Henson 93d68c5bf8 Added missing library WbemUuid.lib to VS project linker options 2012-01-22 16:33:40 +00:00
Nik Henson a1a993917a Added missing shader source files into VS2008 project (not needed for build, just for reference) 2012-01-16 22:15:59 +00:00
Nik Henson 2e337459cd Added missing DirectX include and library paths to project 2011-11-06 12:11:25 +00:00
Nik Henson 622046828c Added quotes around paths in post-build events to allow for spaces in directory names 2011-11-06 12:10:57 +00:00
Nik Henson a6b31b72c1 Fixed incorrect ZLib paths 2011-11-05 21:08:49 +00:00
Nik Henson 663a7f919c Changes to Supermodel VS2008 solution to ensure it will now build completely from scratch:
- added projects to build third-party libraries ZLib and SDL (expects source code to be present in Libraries directory)
 - moved Musashi68K into its own directory
 - tidied up some config options
2011-11-05 20:35:56 +00:00
Nik Henson a18c26025f Added separate Musashi68K project that compiles and runs m68kmake to build required Musashi68K file.
Updated solution so that with above change it will now build Supermodel completely from scratch.
2011-11-01 23:13:26 +00:00
Nik Henson b6923aeb9b Added Visual Studio 2008 Project/Solution files as an alternative way to build Supermodel on Windows. 2011-09-23 22:25:36 +00:00