win32: tone down the default intensity of the scanline filter a bit, and add commandline args to control the intensity, in the vain hopes that someone will give me feedback on what their favourite values are

This commit is contained in:
zeromus 2009-07-21 02:32:55 +00:00
parent 3f3e086d61
commit 2228a8de13
2 changed files with 9 additions and 3 deletions

View File

@ -29,6 +29,8 @@
#include "movie.h" #include "movie.h"
#include "addons.h" #include "addons.h"
int scanline_filter_a = 2, scanline_filter_b = 4;
CommandLine::CommandLine() CommandLine::CommandLine()
: error(NULL) : error(NULL)
, ctx(g_option_context_new ("")) , ctx(g_option_context_new (""))
@ -66,6 +68,8 @@ void CommandLine::loadCommonOptions()
{ "cflash-path", 0, 0, G_OPTION_ARG_FILENAME, &_cflash_path, "Requests cflash in gbaslot with filesystem rooted at this path", "CFLASH_PATH"}, { "cflash-path", 0, 0, G_OPTION_ARG_FILENAME, &_cflash_path, "Requests cflash in gbaslot with filesystem rooted at this path", "CFLASH_PATH"},
#ifdef _MSC_VER #ifdef _MSC_VER
{ "single-core", 0, 0, G_OPTION_ARG_NONE, &single_core, "Limit execution to use approximately only one core", "NUM_CORES"}, { "single-core", 0, 0, G_OPTION_ARG_NONE, &single_core, "Limit execution to use approximately only one core", "NUM_CORES"},
{ "scanline-filter-a", 0, 0, G_OPTION_ARG_INT, &scanline_filter_a, "Intensity of fadeout for scanlines filter (edge) (default 2)", "SCANLINE_FILTER_A"},
{ "scanline-filter-b", 0, 0, G_OPTION_ARG_INT, &scanline_filter_b, "Intensity of fadeout for scanlines filter (corner) (default 4)", "SCANLINE_FILTER_B"},
#endif #endif
#ifdef GDB_STUB #ifdef GDB_STUB
{ "arm9gdb", 0, 0, G_OPTION_ARG_INT, &arm9_gdb_port, "Enable the ARM9 GDB stub on the given port", "PORT_NUM"}, { "arm9gdb", 0, 0, G_OPTION_ARG_INT, &arm9_gdb_port, "Enable the ARM9 GDB stub on the given port", "PORT_NUM"},

View File

@ -6,19 +6,21 @@
typedef u64 uint64; typedef u64 uint64;
extern CACHE_ALIGN u16 fadeOutColors[17][0x8000]; extern CACHE_ALIGN u16 fadeOutColors[17][0x8000];
extern int scanline_filter_a, scanline_filter_b;
// stretches a single line // stretches a single line
inline void DoubleLine16( uint16 *lpDst, uint16 *lpSrc, unsigned int Width){ inline void DoubleLine16( uint16 *lpDst, uint16 *lpSrc, unsigned int Width){
while(Width--){ while(Width--){
*lpDst++ = *lpSrc; *lpDst++ = *lpSrc;
*lpDst++ = fadeOutColors[3][(*lpSrc++)]; *lpDst++ = fadeOutColors[scanline_filter_a][(*lpSrc++)];
} }
} }
inline void DoubleLine16_2( uint16 *lpDst, uint16 *lpSrc, unsigned int Width){ inline void DoubleLine16_2( uint16 *lpDst, uint16 *lpSrc, unsigned int Width){
while(Width--){ while(Width--){
*lpDst++ = fadeOutColors[3][(*lpSrc)]; *lpDst++ = fadeOutColors[scanline_filter_a][(*lpSrc)];
*lpDst++ = fadeOutColors[6][(*lpSrc++)]; *lpDst++ = fadeOutColors[scanline_filter_b][(*lpSrc++)];
} }
} }