* Debugger: slightly bigger font

* Tracer: added "Use Stack Pointer for lines tabbing" option
This commit is contained in:
ansstuff 2012-08-06 15:47:07 +00:00
parent 5adfd86a5b
commit 849e9efe8d
8 changed files with 319 additions and 121 deletions

View File

@ -87,6 +87,7 @@ extern int PPUViewPosX,PPUViewPosY;
extern int MainWindow_wndx, MainWindow_wndy; extern int MainWindow_wndx, MainWindow_wndy;
extern int MemWatch_wndx, MemWatch_wndy; extern int MemWatch_wndx, MemWatch_wndy;
extern int Monitor_wndx, Monitor_wndy; extern int Monitor_wndx, Monitor_wndy;
extern bool tracer_lines_tabbing;
extern int Tracer_wndx, Tracer_wndy; extern int Tracer_wndx, Tracer_wndy;
extern int CDLogger_wndx, CDLogger_wndy; extern int CDLogger_wndx, CDLogger_wndy;
extern int GGConv_wndx, GGConv_wndy; extern int GGConv_wndx, GGConv_wndy;
@ -279,6 +280,7 @@ static CFGSTRUCT fceuconfig[] = {
AC(MemWatch_wndy), AC(MemWatch_wndy),
AC(Monitor_wndx), AC(Monitor_wndx),
AC(Monitor_wndy), AC(Monitor_wndy),
AC(tracer_lines_tabbing),
AC(Tracer_wndx), AC(Tracer_wndx),
AC(Tracer_wndy), AC(Tracer_wndy),
AC(CDLogger_wndx), AC(CDLogger_wndx),

View File

@ -1739,12 +1739,12 @@ DebugSystem* debugSystem;
DebugSystem::DebugSystem() DebugSystem::DebugSystem()
{ {
hFixedFont = CreateFont(13,8, /*Height,Width*/ hFixedFont = CreateFont(14, 8, /*Height,Width*/
0,0, /*escapement,orientation*/ 0,0, /*escapement,orientation*/
FW_REGULAR,FALSE,FALSE,FALSE, /*weight, italic, underline, strikeout*/ FW_REGULAR,FALSE,FALSE,FALSE, /*weight, italic, underline, strikeout*/
ANSI_CHARSET,OUT_DEVICE_PRECIS,CLIP_MASK, /*charset, precision, clipping*/ ANSI_CHARSET,OUT_DEVICE_PRECIS,CLIP_MASK, /*charset, precision, clipping*/
DEFAULT_QUALITY, DEFAULT_PITCH, /*quality, and pitch*/ DEFAULT_QUALITY, DEFAULT_PITCH, /*quality, and pitch*/
"Courier"); /*font name*/ "Courier New"); /*font name*/
HDC hdc = GetDC(GetDesktopWindow()); HDC hdc = GetDC(GetDesktopWindow());
HGDIOBJ old = SelectObject(hdc,hFixedFont); HGDIOBJ old = SelectObject(hdc,hFixedFont);

View File

@ -1108,9 +1108,9 @@ BEGIN
PUSHBUTTON "Seek PC",IDC_DEBUGGER_SEEK_PC,391,71,39,14 PUSHBUTTON "Seek PC",IDC_DEBUGGER_SEEK_PC,391,71,39,14
PUSHBUTTON "Seek To:",IDC_DEBUGGER_SEEK_TO,350,54,38,14 PUSHBUTTON "Seek To:",IDC_DEBUGGER_SEEK_TO,350,54,38,14
EDITTEXT IDC_DEBUGGER_VAL_PCSEEK,391,55,38,12,ES_UPPERCASE | ES_WANTRETURN EDITTEXT IDC_DEBUGGER_VAL_PCSEEK,391,55,38,12,ES_UPPERCASE | ES_WANTRETURN
GROUPBOX "",IDC_DEBUGGER_VAL_S2,349,174,50,53,WS_TABSTOP
EDITTEXT IDC_DEBUGGER_VAL_SLINE,383,203,14,11,ES_UPPERCASE | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT EDITTEXT IDC_DEBUGGER_VAL_SLINE,383,203,14,11,ES_UPPERCASE | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT
EDITTEXT IDC_DEBUGGER_VAL_PPUPIXEL,372,216,14,11,ES_UPPERCASE | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT EDITTEXT IDC_DEBUGGER_VAL_PPUPIXEL,372,216,14,11,ES_UPPERCASE | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT
GROUPBOX "",IDC_DEBUGGER_VAL_S2,349,174,50,53,WS_TABSTOP
EDITTEXT IDC_DEBUGGER_VAL_CYCLES_COUNT,442,178,46,11,ES_UPPERCASE | ES_NOHIDESEL | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT EDITTEXT IDC_DEBUGGER_VAL_CYCLES_COUNT,442,178,46,11,ES_UPPERCASE | ES_NOHIDESEL | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT
EDITTEXT IDC_DEBUGGER_VAL_CYCLES_COUNT2,488,178,51,11,ES_UPPERCASE | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT EDITTEXT IDC_DEBUGGER_VAL_CYCLES_COUNT2,488,178,51,11,ES_UPPERCASE | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT
EDITTEXT IDC_DEBUGGER_VAL_INSTRUCTIONS_COUNT,441,204,46,11,ES_UPPERCASE | ES_NOHIDESEL | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT EDITTEXT IDC_DEBUGGER_VAL_INSTRUCTIONS_COUNT,441,204,46,11,ES_UPPERCASE | ES_NOHIDESEL | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER,WS_EX_TRANSPARENT
@ -1149,32 +1149,34 @@ BEGIN
EDITTEXT IDC_DEBUGGER_INSTRUCTIONS_EXCEED,483,216,50,12,ES_UPPERCASE | ES_NOHIDESEL | ES_WANTRETURN | ES_NUMBER EDITTEXT IDC_DEBUGGER_INSTRUCTIONS_EXCEED,483,216,50,12,ES_UPPERCASE | ES_NOHIDESEL | ES_WANTRETURN | ES_NUMBER
END END
TRACER DIALOGEX 65527, 65513, 423, 319 TRACER DIALOGEX 65527, 65513, 383, 308
STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Trace Logger" CAPTION "Trace Logger"
FONT 8, "MS Sans Serif", 400, 0, 0x0 FONT 8, "MS Sans Serif", 400, 0, 0x0
BEGIN BEGIN
SCROLLBAR IDC_SCRL_TRACER_LOG,413,2,10,172,SBS_VERT SCROLLBAR IDC_SCRL_TRACER_LOG,369,4,10,169,SBS_VERT
EDITTEXT IDC_TRACER_LOG,3,1,403,172,ES_MULTILINE | ES_READONLY EDITTEXT IDC_TRACER_LOG,4,4,364,169,ES_MULTILINE | ES_NOHIDESEL | ES_READONLY | WS_HSCROLL
CONTROL "Log last",IDC_RADIO_LOG_LAST,"Button",BS_AUTORADIOBUTTON | BS_LEFT,5,195,38,10 CONTROL "Log last",IDC_RADIO_LOG_LAST,"Button",BS_AUTORADIOBUTTON | BS_LEFT,7,195,38,10
CONTROL "Log to File",IDC_RADIO_LOG_TO_FILE,"Button",BS_AUTORADIOBUTTON | BS_LEFT,5,215,49,10 CONTROL "Log to File",IDC_RADIO_LOG_TO_FILE,"Button",BS_AUTORADIOBUTTON | BS_LEFT,7,214,49,10
LTEXT "Instructions to this window",106,93,196,93,13 LTEXT "instructions to this window",106,98,195,87,10
PUSHBUTTON "Start Logging",IDC_BTN_START_STOP_LOGGING,171,177,67,14,BS_CENTER | BS_VCENTER PUSHBUTTON "Start Logging",IDC_BTN_START_STOP_LOGGING,171,176,67,14,BS_CENTER | BS_VCENTER
COMBOBOX IDC_TRACER_LOG_SIZE,44,194,48,127,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_TRACER_LOG_SIZE,47,193,48,127,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
GROUPBOX "Extra Log Options",109,3,234,402,35 GROUPBOX "Extra Log Options",109,3,232,376,29
CONTROL "Log state of A, X, Y and S registers",IDC_CHECK_LOG_REGISTERS, CONTROL "Log state of A, X, Y and S registers",IDC_CHECK_LOG_REGISTERS,
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,9,246,126,10 "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,9,243,126,10
CONTROL "Log Processor Status Flags",IDC_CHECK_LOG_PROCESSOR_STATUS, CONTROL "Log Processor Status Flags",IDC_CHECK_LOG_PROCESSOR_STATUS,
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,139,246,103,10 "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,138,243,102,10
PUSHBUTTON "Browse...",IDC_BTN_LOG_BROWSE,55,213,43,14,BS_CENTER | BS_VCENTER PUSHBUTTON "Browse...",IDC_BTN_LOG_BROWSE,56,212,45,14,BS_CENTER | BS_VCENTER
LTEXT "",IDC_TRACER_STATS,123,216,153,14 LTEXT "",IDC_TRACER_STATS,123,213,159,14
CONTROL "Only log newly mapped code",IDC_CHECK_LOG_NEW_INSTRUCTIONS, CONTROL "Only log newly mapped code",IDC_CHECK_LOG_NEW_INSTRUCTIONS,
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,9,284,107,10 "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,9,276,107,10
GROUPBOX "Extra Log Options that work with the Code/Data Logger",113,3,272,402,40 GROUPBOX "Extra Log Options that work with the Code/Data Logger",113,3,264,376,40
CONTROL "Only log code that accesses newly mapped data",IDC_CHECK_LOG_NEW_DATA, CONTROL "Only log code that accesses newly mapped data",IDC_CHECK_LOG_NEW_DATA,
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,9,297,169,10 "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,9,289,169,10
CONTROL "Automatically update Window While logging",IDC_CHECK_LOG_UPDATE_WINDOW, CONTROL "Automatically update Window While logging",IDC_CHECK_LOG_UPDATE_WINDOW,
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,181,196,158,10 "Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,192,195,156,10
CONTROL "Use Stack Pointer for lines tabbing",IDC_CHECK_LINES_TABBING,
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,247,243,126,10
END END
ADDBP DIALOGEX 66, 83, 196, 130 ADDBP DIALOGEX 66, 83, 196, 130
@ -1967,6 +1969,10 @@ BEGIN
BEGIN BEGIN
END END
"TRACER", DIALOG
BEGIN
END
"ADDBP", DIALOG "ADDBP", DIALOG
BEGIN BEGIN
RIGHTMARGIN, 185 RIGHTMARGIN, 185

View File

@ -139,6 +139,8 @@
#define CHEAT_CONTEXT_TOGGLECHEAT 117 #define CHEAT_CONTEXT_TOGGLECHEAT 117
#define IDC_DEBUGGER_RESET_ON_STEP 117 #define IDC_DEBUGGER_RESET_ON_STEP 117
#define IDC_DEBUGGER_BREAK_ON_CYCLES 117 #define IDC_DEBUGGER_BREAK_ON_CYCLES 117
#define IDC_CHECK_LOG_PROCESSOR_STATUS2 117
#define IDC_CHECK_LINES_TABBING 117
#define CHEAT_CONTEXT_POKECHEATVALUE 118 #define CHEAT_CONTEXT_POKECHEATVALUE 118
#define IDC_DEBUGGER_RESET_ON_BP0 118 #define IDC_DEBUGGER_RESET_ON_BP0 118
#define CHEAT_CONTEXT_GOTOINHEXEDITOR 119 #define CHEAT_CONTEXT_GOTOINHEXEDITOR 119

View File

@ -60,6 +60,8 @@ char **tracelogbuf;
int tracelogbufsize, tracelogbufpos; int tracelogbufsize, tracelogbufpos;
int tracelogbufusedsize; int tracelogbufusedsize;
bool tracer_lines_tabbing = true;
FILE *LOG_FP; FILE *LOG_FP;
int Tracer_wndx=0, Tracer_wndy=0; int Tracer_wndx=0, Tracer_wndy=0;
@ -123,11 +125,15 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
SetDlgItemText(hwndDlg, IDC_TRACER_LOG, "Welcome to the Trace Logger."); SetDlgItemText(hwndDlg, IDC_TRACER_LOG, "Welcome to the Trace Logger.");
logtofile = 0; logtofile = 0;
if(logging_options == -1){
CheckDlgButton(hwndDlg, IDC_CHECK_LINES_TABBING, tracer_lines_tabbing ? BST_CHECKED : BST_UNCHECKED);
if(logging_options == -1)
{
logging_options = (LOG_REGISTERS | LOG_PROCESSOR_STATUS); logging_options = (LOG_REGISTERS | LOG_PROCESSOR_STATUS);
CheckDlgButton(hwndDlg, IDC_CHECK_LOG_REGISTERS, BST_CHECKED); CheckDlgButton(hwndDlg, IDC_CHECK_LOG_REGISTERS, BST_CHECKED);
CheckDlgButton(hwndDlg, IDC_CHECK_LOG_PROCESSOR_STATUS, BST_CHECKED); CheckDlgButton(hwndDlg, IDC_CHECK_LOG_PROCESSOR_STATUS, BST_CHECKED);
} else{ } else
{
if(logging_options&LOG_REGISTERS)CheckDlgButton(hwndDlg, IDC_CHECK_LOG_REGISTERS, BST_CHECKED); if(logging_options&LOG_REGISTERS)CheckDlgButton(hwndDlg, IDC_CHECK_LOG_REGISTERS, BST_CHECKED);
if(logging_options&LOG_PROCESSOR_STATUS)CheckDlgButton(hwndDlg, IDC_CHECK_LOG_PROCESSOR_STATUS, BST_CHECKED); if(logging_options&LOG_PROCESSOR_STATUS)CheckDlgButton(hwndDlg, IDC_CHECK_LOG_PROCESSOR_STATUS, BST_CHECKED);
} }
@ -169,6 +175,9 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
case IDC_CHECK_LOG_PROCESSOR_STATUS: case IDC_CHECK_LOG_PROCESSOR_STATUS:
logging_options ^= LOG_PROCESSOR_STATUS; logging_options ^= LOG_PROCESSOR_STATUS;
break; break;
case IDC_CHECK_LINES_TABBING:
tracer_lines_tabbing ^= 1;
break;
case IDC_CHECK_LOG_NEW_INSTRUCTIONS: case IDC_CHECK_LOG_NEW_INSTRUCTIONS:
logging_options ^= LOG_NEW_INSTRUCTIONS; logging_options ^= LOG_NEW_INSTRUCTIONS;
if(logging && (!PromptForCDLogger())){ if(logging && (!PromptForCDLogger())){
@ -264,10 +273,10 @@ void BeginLoggingSequence(void){
tracelogbufsize = j = log_optn_intlst[SendDlgItemMessage(hTracer,IDC_TRACER_LOG_SIZE,CB_GETCURSEL,0,0)]; tracelogbufsize = j = log_optn_intlst[SendDlgItemMessage(hTracer,IDC_TRACER_LOG_SIZE,CB_GETCURSEL,0,0)];
tracelogbuf = (char**)malloc(j*sizeof(char *)); //mbg merge 7/19/06 added cast tracelogbuf = (char**)malloc(j*sizeof(char *)); //mbg merge 7/19/06 added cast
for(i = 0;i < j;i++){ for(i = 0;i < j;i++){
tracelogbuf[i] = (char*)malloc(80); //mbg merge 7/19/06 added cast tracelogbuf[i] = (char*)malloc(LOG_LINE_MAX_LEN); //mbg merge 7/19/06 added cast
tracelogbuf[i][0] = 0; tracelogbuf[i][0] = 0;
} }
sprintf(str2,"%d Bytes Allocated...\r\n",j*80); sprintf(str2, "%d Bytes Allocated...\r\n", j * LOG_LINE_MAX_LEN);
strcat(str,str2); strcat(str,str2);
strcat(str,pauseMessage.c_str()); strcat(str,pauseMessage.c_str());
SetDlgItemText(hTracer, IDC_TRACER_LOG, str); SetDlgItemText(hTracer, IDC_TRACER_LOG, str);
@ -320,8 +329,8 @@ done:
void FCEUD_TraceInstruction(){ void FCEUD_TraceInstruction(){
if(!logging) return; if(!logging) return;
char address[7], data[11], disassembly[28], axystate[21], procstatus[12]; char address[7], data[11], disassembly[LOG_DISASSEMBLY_MAX_LEN], axystate[21], procstatus[12];
char str[96]; char str[LOG_LINE_MAX_LEN];
int addr=X.PC; int addr=X.PC;
int size, j; int size, j;
uint8 opcode[3], tmp; uint8 opcode[3], tmp;
@ -379,8 +388,8 @@ void FCEUD_TraceInstruction(){
} }
//stretch the disassembly string out if we have to output other stuff. //stretch the disassembly string out if we have to output other stuff.
if(logging_options & (LOG_REGISTERS|LOG_PROCESSOR_STATUS)){ if(logging_options & (LOG_REGISTERS|LOG_PROCESSOR_STATUS)){
for(j = strlen(disassembly);j < 27;j++)disassembly[j] = ' '; for(j = strlen(disassembly);j < LOG_DISASSEMBLY_MAX_LEN - 1;j++)disassembly[j] = ' ';
disassembly[27] = 0; disassembly[LOG_DISASSEMBLY_MAX_LEN - 1] = 0;
} }
if(logging_options & LOG_REGISTERS){ if(logging_options & LOG_REGISTERS){
@ -401,6 +410,16 @@ void FCEUD_TraceInstruction(){
); );
} }
if (tracer_lines_tabbing)
{
// add spaces at the beginning of the line according to stack pointer
int spaces = 0xFF - X.S;
if (spaces > LOG_TABS_MAX_LEN)
spaces = LOG_TABS_MAX_LEN;
for (int i = 0; i < spaces; i++)
str[i] = ' ';
str[spaces] = 0;
}
strcat(str,address); strcat(str,address);
strcat(str,data); strcat(str,data);
@ -421,7 +440,8 @@ void OutputLogLine(char *str){
fflush(LOG_FP); fflush(LOG_FP);
}else{ }else{
strcat(str,"\r\n"); strcat(str,"\r\n");
if(strlen(str) < 80)strcpy(tracelogbuf[tracelogbufpos],str); if(strlen(str) < LOG_LINE_MAX_LEN)
strcpy(tracelogbuf[tracelogbufpos],str);
tracelogbufpos++; tracelogbufpos++;
if(tracelogbufusedsize < tracelogbufsize)tracelogbufusedsize++; if(tracelogbufusedsize < tracelogbufsize)tracelogbufusedsize++;
tracelogbufpos%=tracelogbufsize; tracelogbufpos%=tracelogbufsize;

View File

@ -4,6 +4,10 @@
#define LOG_NEW_INSTRUCTIONS 4 #define LOG_NEW_INSTRUCTIONS 4
#define LOG_NEW_DATA 8 #define LOG_NEW_DATA 8
#define LOG_LINE_MAX_LEN 120
#define LOG_TABS_MAX_LEN 40
#define LOG_DISASSEMBLY_MAX_LEN 30
extern HWND hTracer; extern HWND hTracer;
extern int log_update_window; extern int log_update_window;
extern volatile int logtofile, logging; extern volatile int logtofile, logging;

View File

@ -872,10 +872,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="..\..\..\tasedit\psd\bmp\te_green_arrow.bmp" /> <None Include="..\..\..\tasedit\psd\bmp\te_green_arrow.bmp" />
<None Include="..\src\drivers\win\res\bitmap20.bmp" />
<None Include="..\src\drivers\win\res\branch_spritesheet.bmp" /> <None Include="..\src\drivers\win\res\branch_spritesheet.bmp" />
<None Include="..\src\drivers\win\res\icon3.ico" />
<None Include="..\src\drivers\win\res\icon4.ico" />
<None Include="..\src\drivers\win\res\ICON_1.ico" /> <None Include="..\src\drivers\win\res\ICON_1.ico" />
<None Include="..\src\drivers\win\res\ICON_2.ico" /> <None Include="..\src\drivers\win\res\ICON_2.ico" />
<None Include="..\src\drivers\win\res\taseditor-icon.ico" /> <None Include="..\src\drivers\win\res\taseditor-icon.ico" />

View File

@ -1540,94 +1540,261 @@
<None Include="..\src\drivers\win\res\te_arrow.bmp"> <None Include="..\src\drivers\win\res\te_arrow.bmp">
<Filter>pix</Filter> <Filter>pix</Filter>
</None> </None>
<None Include="..\src\drivers\win\res\icon3.ico" /> <None Include="..\src\drivers\win\res\te_0_selected.bmp">
<None Include="..\src\drivers\win\res\icon4.ico" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\taseditor-icon.ico" /> </None>
<None Include="..\src\drivers\win\res\taseditor-icon32.ico" /> <None Include="..\src\drivers\win\res\te_piano_9_playback.bmp">
<None Include="..\src\drivers\win\res\bitmap20.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\..\..\tasedit\psd\bmp\te_green_arrow.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_green_arrow.bmp" /> <None Include="..\src\drivers\win\res\te_10_selected.bmp">
<None Include="..\src\drivers\win\res\te_green_blue_arrow.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_0.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_1.bmp" /> <None Include="..\src\drivers\win\res\te_11_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_2.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_3.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_4.bmp" /> <None Include="..\src\drivers\win\res\te_12_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_5.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_6.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_7.bmp" /> <None Include="..\src\drivers\win\res\te_13_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_8.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_9.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_10.bmp" /> <None Include="..\src\drivers\win\res\te_14_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_11.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_12.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_13.bmp" /> <None Include="..\src\drivers\win\res\te_15_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_14.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_15.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_16.bmp" /> <None Include="..\src\drivers\win\res\te_16_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_17.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_18.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_19.bmp" /> <None Include="..\src\drivers\win\res\te_17_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_0_playback.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_1_playback.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_2_playback.bmp" /> <None Include="..\src\drivers\win\res\te_18_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_3_playback.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_4_playback.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_5_playback.bmp" /> <None Include="..\src\drivers\win\res\te_19_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_6_playback.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_7_playback.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_8_playback.bmp" /> <None Include="..\src\drivers\win\res\te_1_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_9_playback.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_10_playback.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_11_playback.bmp" /> <None Include="..\src\drivers\win\res\te_2_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_12_playback.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_13_playback.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_14_playback.bmp" /> <None Include="..\src\drivers\win\res\te_3_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_15_playback.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_16_playback.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_17_playback.bmp" /> <None Include="..\src\drivers\win\res\te_4_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_18_playback.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_19_playback.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_0_lostpos.bmp" /> <None Include="..\src\drivers\win\res\te_5_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_1_lostpos.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_2_lostpos.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_3_lostpos.bmp" /> <None Include="..\src\drivers\win\res\te_6_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_4_lostpos.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_5_lostpos.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_6_lostpos.bmp" /> <None Include="..\src\drivers\win\res\te_7_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_7_lostpos.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_8_lostpos.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_9_lostpos.bmp" /> <None Include="..\src\drivers\win\res\te_8_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_10_lostpos.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_11_lostpos.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_12_lostpos.bmp" /> <None Include="..\src\drivers\win\res\te_9_selected.bmp">
<None Include="..\src\drivers\win\res\te_piano_13_lostpos.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_14_lostpos.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_15_lostpos.bmp" /> <None Include="..\src\drivers\win\res\te_green_arrow.bmp">
<None Include="..\src\drivers\win\res\te_piano_16_lostpos.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_piano_17_lostpos.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_piano_18_lostpos.bmp" /> <None Include="..\..\..\tasedit\psd\bmp\te_green_arrow.bmp">
<None Include="..\src\drivers\win\res\te_piano_19_lostpos.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_0_selected.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_1_selected.bmp" /> <None Include="..\src\drivers\win\res\te_green_blue_arrow.bmp">
<None Include="..\src\drivers\win\res\te_2_selected.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_3_selected.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_4_selected.bmp" /> <None Include="..\src\drivers\win\res\te_piano_0.bmp">
<None Include="..\src\drivers\win\res\te_5_selected.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_6_selected.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_7_selected.bmp" /> <None Include="..\src\drivers\win\res\te_piano_0_lostpos.bmp">
<None Include="..\src\drivers\win\res\te_8_selected.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_9_selected.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_10_selected.bmp" /> <None Include="..\src\drivers\win\res\te_piano_0_playback.bmp">
<None Include="..\src\drivers\win\res\te_11_selected.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_12_selected.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_13_selected.bmp" /> <None Include="..\src\drivers\win\res\te_piano_1.bmp">
<None Include="..\src\drivers\win\res\te_14_selected.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_15_selected.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_16_selected.bmp" /> <None Include="..\src\drivers\win\res\te_piano_10.bmp">
<None Include="..\src\drivers\win\res\te_17_selected.bmp" /> <Filter>drivers\win\res</Filter>
<None Include="..\src\drivers\win\res\te_18_selected.bmp" /> </None>
<None Include="..\src\drivers\win\res\te_19_selected.bmp" /> <None Include="..\src\drivers\win\res\te_piano_10_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_10_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_11.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_11_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_11_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_12.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_12_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_12_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_13.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_13_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_13_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_14.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_14_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_14_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_15.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_15_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_15_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_16.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_16_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_16_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_17.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_17_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_17_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_18.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_18_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_18_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_19.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_19_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_19_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_1_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_1_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_2.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_2_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_2_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_3.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_3_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_3_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_4.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_4_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_4_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_5.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_5_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_5_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_6.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_6_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_6_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_7.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_7_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_7_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_8.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_8_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_8_playback.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_9.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\te_piano_9_lostpos.bmp">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\taseditor-icon.ico">
<Filter>drivers\win\res</Filter>
</None>
<None Include="..\src\drivers\win\res\taseditor-icon32.ico">
<Filter>drivers\win\res</Filter>
</None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<CustomBuild Include="..\src\auxlib.lua" /> <CustomBuild Include="..\src\auxlib.lua" />