Commit Graph

1209 Commits

Author SHA1 Message Date
Arthur Moore dc63304c69 Fix some small errors that valgrind found 2015-03-13 01:42:05 -04:00
Arthur Moore 36cdf0e13d Minor cleanup for readability
The emulator does not produce a 1 pixel border when in 24bit mode.
2015-03-13 00:36:07 -04:00
Arthur Moore 8b9650125d Filters now only exist in the wxvbam filter threads. 2015-03-13 00:26:33 -04:00
Arthur Moore 66cd7e75ee Filter classes now use the same base class. 2015-03-13 00:14:39 -04:00
Arthur Moore 3ba74db8c0 Converted interframe_filter to a generic filter base class.
I can now convert normal filters to use this same base class :)
2015-03-12 23:58:59 -04:00
Arthur Moore 2183928eee Removed some inaccessible filter helpers (old code) 2015-03-12 23:25:04 -04:00
Arthur Moore ae21c24929 Moved bitmask to filters, where it's actually used 2015-03-12 23:13:38 -04:00
Arthur Moore 871c0b6b80 Removed almost all compile warnings for wx/panel.cpp 2015-03-12 23:00:52 -04:00
Arthur Moore fe7f0a551b Fixed all compile warnings from touching openal.cpp and wxmisc.hpp 2015-03-12 22:26:56 -04:00
Arthur Moore 347c86aeda Interframe filters are now created per thread
This simplifies the interface.
Also fixed an issue with another width+1
I really hate that the original code tried to not display the border.
2015-03-12 22:08:57 -04:00
Arthur Moore 27e95b3f99 Interframe filters can now handle image buffers of any size 2015-03-12 21:38:41 -04:00
Arthur Moore ec041ec6ee Make the algorithm used to convert a 32bit image to a 24bit one easier to understnad.
All it's doing is skipping the alpha channel when copying the data over
2015-03-12 21:10:17 -04:00
Arthur Moore aa98e8e7a9 Fix typo in comment 2015-03-12 19:33:07 -04:00
Arthur Moore 5b00ea2b3d Minor tweaks so the code now works with only 1 thread successfully 2015-03-12 19:31:56 -04:00
Arthur Moore 70a0190a32 More wx thread cleanup
Threads are now actually initialized in the initializer!
2015-03-12 19:24:23 -04:00
Arthur Moore d9e6b51523 Cleaned up WX threading framework some 2015-03-12 19:05:01 -04:00
Arthur Moore 5a0ffc4034 Get rid of unneeded buffers
Just use a large one set up at compile time instead
2015-03-12 14:33:28 -04:00
Arthur Moore 13b22f7a6d Stop playing tricks with the width to account for a border.
Just scale the thing and not worry about it.
Still have to do a little hacking for 24bit :/
2015-03-12 13:13:31 -04:00
Arthur Moore a68d9cf44a Simplify WxVbam's OSD drawing 2015-03-12 12:24:14 -04:00
Arthur Moore 95c3f53c41 Attempting to simplify the color depth equations.
OSD drawing is not cooperating
2015-03-12 07:59:38 -04:00
Arthur Moore e8b8ee7bc2 Use std::string instead of strange conversion.
It just makes life easier.
2015-03-12 06:59:45 -04:00
Arthur Moore 4aa526d623 New inteframe filters, and filter classes now take u32 buffers instead of u8 2015-03-12 06:10:14 -04:00
Arthur Moore ddefb71baf Fixed compilation issues for vbam and gvbam
Note:  They will NOT run correctly if attempting to use filters in anything other than 32 bit mode
2015-03-12 06:00:01 -04:00
Arthur Moore d1026e831f Removed DeltaPtr from all filters
It wasn't doing anything, and was meant for things like the interframe filters (which have their own)
2015-03-12 05:35:03 -04:00
Arthur Moore e9ea3b0099 Fixed HQ 2x, LQ 2x, and Simple 2x filters not working.
This was caused by a typo in the filter names.
First affected commit was: 245d46a010
2015-03-12 04:58:45 -04:00
Arthur Moore ed769b1014 Ripped out all 16 bit filters 2015-03-12 04:26:14 -04:00
Arthur Moore decdb9c82e Began completely ripping out 16bit filters.
It's not worth the complexity.
If 16 bit is ever needed, can just down convert the input and output.
Though, I'd rather just make everything 32bit, and upconvert at the start if needed.
2015-03-12 04:12:19 -04:00
Arthur Moore 7c5cc4dfef Began the process of just using 'u32*' instead of 'u8*' for image data.
This just makes the math much easier.
I've already begun gutting the ability to work with 16/24 bit data anyways.
2015-03-12 03:55:39 -04:00
Arthur Moore 21970a7889 Fix an operator precedence issue clang complained about. 2015-03-11 01:09:21 -04:00
Arthur Moore 477621c489 Fixed errors preventing clang from compiling
Also did some changed the whitespace of the affected functions.
2015-03-11 00:54:22 -04:00
Arthur Moore 34bd14628c Clang says I was using a c++11 feature without meaning to.
It doesn't hurt anything to make the code backward compatible, so doing that.
2015-03-11 00:53:20 -04:00
Arthur Moore d99181acf9 Removed almost all uses of the IFB enum 2015-03-11 00:37:00 -04:00
Arthur Moore 5604836b7c Buffers are now the correct format.
Why work with byte sized buffers when everything is in 4 byte pixels.
2015-03-10 23:57:19 -04:00
Arthur Moore 8a052006ce Now leave Interframe filter creation/selection to a factory class 2015-03-10 23:47:20 -04:00
Arthur Moore 77d26474b4 New Interframe filters are now able to act in a multithreaded environment. 2015-03-10 23:33:12 -04:00
Arthur Moore 181fb52f08 Simplified IFB filter loops 2015-03-10 23:21:06 -04:00
Arthur Moore a3b3fa41ec New Interframe filter now removed the depreciated function 2015-03-10 23:16:33 -04:00
Arthur Moore 60af0a06fc Working on refining the new interframe filter system 2015-03-10 22:09:26 -04:00
Arthur Moore 7843736b02 Fix Typo 2015-03-10 21:59:50 -04:00
Arthur Moore 490f52d5d8 wxvbam now uses the new interframe filter framework. 2015-03-10 21:57:57 -04:00
Arthur Moore 52db9a46f6 Rewrite the Interframe filters using proper C++ classes.
Also drop support for MMX and 16 bit filters
2015-03-10 21:27:14 -04:00
Arthur Moore a25179e4d5 Remove cerr debug clutter 2015-03-10 21:26:36 -04:00
Arthur Moore 9af26076d2 Updated interframe filter to not trigger compiler warnings 2015-03-10 20:29:45 -04:00
Arthur Moore 6a1fed3e93 Updated Readme with changelog highlights 2015-03-10 20:16:12 -04:00
Arthur Moore 0efd3e4099 Simplified the filter system even further 2015-03-10 01:28:12 -04:00
Arthur Moore 5109fce00c Removed yet another unneeded #define in wx/guiinit.cpp 2015-03-09 19:40:21 -04:00
Arthur Moore aa20fdb6d4 More work on making the wx filter system readable 2015-02-25 15:55:28 -05:00
Arthur Moore 4e292f8ae7 Working on making the WX threaded filter process more clear.
I'm starting to get a handle on what's happening.
2015-02-25 04:50:04 -05:00
Arthur Moore 245d46a010 wxvbam now uses filter names instead of indexes.
The names must match what's in the xrc file, or it will default to none
2015-02-18 07:13:45 -05:00
Arthur Moore 14410da001 FilterMap is now correctly populated 2015-02-18 05:47:38 -05:00