* Tracer: do not clear window log when stopping the logging
* Tracer: a change in window layout * PPU Viewer: minor change in window layout
This commit is contained in:
parent
e2ffb40fd5
commit
87ae74a398
|
@ -47,14 +47,14 @@ int mouse_x, mouse_y;
|
||||||
#define PATTERNHEIGHT 128
|
#define PATTERNHEIGHT 128
|
||||||
#define PATTERNBITWIDTH PATTERNWIDTH*3
|
#define PATTERNBITWIDTH PATTERNWIDTH*3
|
||||||
#define PATTERNDESTX_BASE 7
|
#define PATTERNDESTX_BASE 7
|
||||||
#define PATTERNDESTY_BASE 16
|
#define PATTERNDESTY_BASE 18
|
||||||
#define ZOOM 2
|
#define ZOOM 2
|
||||||
|
|
||||||
#define PALETTEWIDTH 32*4*4
|
#define PALETTEWIDTH 32*4*4
|
||||||
#define PALETTEHEIGHT 32*2
|
#define PALETTEHEIGHT 32*2
|
||||||
#define PALETTEBITWIDTH PALETTEWIDTH*3
|
#define PALETTEBITWIDTH PALETTEWIDTH*3
|
||||||
#define PALETTEDESTX_BASE 7
|
#define PALETTEDESTX_BASE 7
|
||||||
#define PALETTEDESTY_BASE 16
|
#define PALETTEDESTY_BASE 18
|
||||||
|
|
||||||
#define TBM_SETPOS (WM_USER+5)
|
#define TBM_SETPOS (WM_USER+5)
|
||||||
#define TBM_SETRANGE (WM_USER+6)
|
#define TBM_SETRANGE (WM_USER+6)
|
||||||
|
|
|
@ -1177,14 +1177,14 @@ FONT 8, "MS Sans Serif", 400, 0, 0x0
|
||||||
BEGIN
|
BEGIN
|
||||||
EDITTEXT IDC_TRACER_LOG,3,3,300,44,ES_MULTILINE | ES_NOHIDESEL | ES_READONLY | WS_HSCROLL
|
EDITTEXT IDC_TRACER_LOG,3,3,300,44,ES_MULTILINE | ES_NOHIDESEL | ES_READONLY | WS_HSCROLL
|
||||||
SCROLLBAR IDC_SCRL_TRACER_LOG,303,3,11,44,SBS_VERT
|
SCROLLBAR IDC_SCRL_TRACER_LOG,303,3,11,44,SBS_VERT
|
||||||
CONTROL "Log last",IDC_RADIO_LOG_LAST,"Button",BS_AUTORADIOBUTTON | BS_LEFT,9,54,38,10
|
CONTROL "Log last",IDC_RADIO_LOG_LAST,"Button",BS_AUTORADIOBUTTON | BS_LEFT,9,53,38,10
|
||||||
COMBOBOX IDC_TRACER_LOG_SIZE,50,53,47,13,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
COMBOBOX IDC_TRACER_LOG_SIZE,49,52,46,13,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||||
LTEXT "lines to this window",IDC_TEXT_LINES_TO_THIS_WINDOW,100,55,62,10
|
LTEXT "lines",IDC_TEXT_LINES_TO_THIS_WINDOW,97,54,17,10
|
||||||
DEFPUSHBUTTON "Start Logging",IDC_BTN_START_STOP_LOGGING,243,51,71,15,BS_CENTER | BS_VCENTER
|
DEFPUSHBUTTON "Start Logging",IDC_BTN_START_STOP_LOGGING,135,51,49,15,BS_CENTER | BS_VCENTER
|
||||||
CONTROL "Log to File",IDC_RADIO_LOG_TO_FILE,"Button",BS_AUTORADIOBUTTON | BS_LEFT,9,71,46,10
|
CONTROL "Log to File",IDC_RADIO_LOG_TO_FILE,"Button",BS_AUTORADIOBUTTON | BS_LEFT,9,70,46,10
|
||||||
PUSHBUTTON "Browse...",IDC_BTN_LOG_BROWSE,57,69,40,14,BS_CENTER | BS_VCENTER
|
PUSHBUTTON "Browse...",IDC_BTN_LOG_BROWSE,56,68,39,14,BS_CENTER | BS_VCENTER
|
||||||
CONTROL "Automatically update this window while logging",IDC_CHECK_LOG_UPDATE_WINDOW,
|
CONTROL "Automatically update this window while logging",IDC_CHECK_LOG_UPDATE_WINDOW,
|
||||||
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,113,71,156,10
|
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,113,70,156,10
|
||||||
GROUPBOX "Log Options",IDC_GROUP_LOG_OPTIONS,3,85,311,65
|
GROUPBOX "Log Options",IDC_GROUP_LOG_OPTIONS,3,85,311,65
|
||||||
CONTROL "Log state of registers",IDC_CHECK_LOG_REGISTERS,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,8,96,99,10
|
CONTROL "Log state of registers",IDC_CHECK_LOG_REGISTERS,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,8,96,99,10
|
||||||
CONTROL "Log Processor status flags",IDC_CHECK_LOG_PROCESSOR_STATUS,
|
CONTROL "Log Processor status flags",IDC_CHECK_LOG_PROCESSOR_STATUS,
|
||||||
|
@ -1628,18 +1628,18 @@ STYLE DS_SETFONT | DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_C
|
||||||
CAPTION "PPU Viewer"
|
CAPTION "PPU Viewer"
|
||||||
FONT 8, "MS Sans Serif", 0, 0, 0x0
|
FONT 8, "MS Sans Serif", 0, 0, 0x0
|
||||||
BEGIN
|
BEGIN
|
||||||
GROUPBOX "Pattern Tables",GRP_PPUVIEW_TABLES,2,-1,351,204,WS_TABSTOP
|
GROUPBOX "Pattern Tables",GRP_PPUVIEW_TABLES,2,-1,351,205,WS_TABSTOP
|
||||||
LTEXT "Tile:",LBL_PPUVIEW_TILE1,6,169,50,9
|
LTEXT "Tile:",LBL_PPUVIEW_TILE1,6,170,50,9
|
||||||
LTEXT "Tile:",LBL_PPUVIEW_TILE2,177,169,50,9
|
LTEXT "Tile:",LBL_PPUVIEW_TILE2,177,170,50,9
|
||||||
CONTROL "",CTL_PPUVIEW_TRACKBAR,"msctls_trackbar32",WS_TABSTOP,227,178,106,11
|
CONTROL "",CTL_PPUVIEW_TRACKBAR,"msctls_trackbar32",WS_TABSTOP,227,179,106,11
|
||||||
LTEXT "Refresh: More",-1,177,178,50,9
|
LTEXT "Refresh: More",-1,177,179,50,9
|
||||||
LTEXT "Less",-1,334,178,18,10
|
LTEXT "Less",-1,334,179,18,10
|
||||||
GROUPBOX "Palettes",LBL_PPUVIEW_PALETTES,2,204,351,53,WS_TABSTOP
|
GROUPBOX "Palettes",LBL_PPUVIEW_PALETTES,2,204,351,54,WS_TABSTOP
|
||||||
LTEXT "Display on scanline:",-1,6,178,65,9
|
LTEXT "Display on scanline:",-1,6,179,65,9
|
||||||
EDITTEXT IDC_PPUVIEW_SCANLINE,72,176,27,12
|
EDITTEXT IDC_PPUVIEW_SCANLINE,72,177,27,12
|
||||||
CONTROL "Mask unused graphics (needs Code/Data Logger)",IDC_MASK_UNUSED_GRAPHICS,
|
CONTROL "Mask unused graphics (needs Code/Data Logger)",IDC_MASK_UNUSED_GRAPHICS,
|
||||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,6,189,169,10
|
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,6,190,169,10
|
||||||
CONTROL "Invert the mask",IDC_INVERT_THE_MASK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,177,189,61,10
|
CONTROL "Invert the mask",IDC_INVERT_THE_MASK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,177,190,61,10
|
||||||
END
|
END
|
||||||
|
|
||||||
ARCHIVECHOOSERDIALOG DIALOGEX 0, 0, 265, 159
|
ARCHIVECHOOSERDIALOG DIALOGEX 0, 0, 265, 159
|
||||||
|
|
|
@ -100,7 +100,6 @@ KnownWindowItemPosData tracerKnownWindowItems[] = {
|
||||||
IDC_RADIO_LOG_LAST, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
IDC_RADIO_LOG_LAST, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
||||||
IDC_TRACER_LOG_SIZE, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
IDC_TRACER_LOG_SIZE, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
||||||
IDC_TEXT_LINES_TO_THIS_WINDOW, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
IDC_TEXT_LINES_TO_THIS_WINDOW, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
||||||
IDC_BTN_START_STOP_LOGGING, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
|
||||||
IDC_RADIO_LOG_TO_FILE, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
IDC_RADIO_LOG_TO_FILE, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
||||||
IDC_BTN_LOG_BROWSE, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
IDC_BTN_LOG_BROWSE, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_LEFT_ALIGNED, WINDOW_ITEM_RESIZE_TYPE_RIGHT_ALIGNED,
|
||||||
};
|
};
|
||||||
|
@ -113,10 +112,10 @@ int oldcodecount, olddatacount;
|
||||||
|
|
||||||
SCROLLINFO tracesi;
|
SCROLLINFO tracesi;
|
||||||
|
|
||||||
char **tracelogbuf;
|
char **tracelogbuf = 0;
|
||||||
std::vector<std::vector<uint16>> tracelogbufAddressesLog;
|
std::vector<std::vector<uint16>> tracelogbufAddressesLog;
|
||||||
int tracelogbufsize, tracelogbufpos;
|
int tracelogbufsize = 0, tracelogbufpos = 0;
|
||||||
int tracelogbufusedsize;
|
int tracelogbufusedsize = 0;
|
||||||
|
|
||||||
char str_axystate[LOG_AXYSTATE_MAX_LEN] = {0}, str_procstatus[LOG_PROCSTATUS_MAX_LEN] = {0};
|
char str_axystate[LOG_AXYSTATE_MAX_LEN] = {0}, str_procstatus[LOG_PROCSTATUS_MAX_LEN] = {0};
|
||||||
char str_tabs[LOG_TABS_MASK+1] = {0}, str_address[LOG_ADDRESS_MAX_LEN] = {0}, str_data[LOG_DATA_MAX_LEN] = {0}, str_disassembly[LOG_DISASSEMBLY_MAX_LEN] = {0};
|
char str_tabs[LOG_TABS_MASK+1] = {0}, str_address[LOG_ADDRESS_MAX_LEN] = {0}, str_data[LOG_DATA_MAX_LEN] = {0}, str_disassembly[LOG_DISASSEMBLY_MAX_LEN] = {0};
|
||||||
|
@ -139,8 +138,10 @@ WNDPROC IDC_TRACER_LOG_oldWndProc = 0;
|
||||||
|
|
||||||
void ShowLogDirDialog(void);
|
void ShowLogDirDialog(void);
|
||||||
void BeginLoggingSequence(void);
|
void BeginLoggingSequence(void);
|
||||||
void EndLoggingSequence(void);
|
void ClearTraceLogBuf();
|
||||||
|
void EndLoggingSequence();
|
||||||
void UpdateLogWindow(void);
|
void UpdateLogWindow(void);
|
||||||
|
void ScrollLogWindowToLastLine();
|
||||||
void UpdateLogText(void);
|
void UpdateLogText(void);
|
||||||
void EnableTracerMenuItems(void);
|
void EnableTracerMenuItems(void);
|
||||||
int PromptForCDLogger(void);
|
int PromptForCDLogger(void);
|
||||||
|
@ -474,7 +475,7 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
if (tracesi.nPos < tracesi.nMin)
|
if (tracesi.nPos < tracesi.nMin)
|
||||||
tracesi.nPos = tracesi.nMin;
|
tracesi.nPos = tracesi.nMin;
|
||||||
SetScrollInfo(GetDlgItem(hTracer, IDC_SCRL_TRACER_LOG), SB_CTL, &tracesi, TRUE);
|
SetScrollInfo(GetDlgItem(hTracer, IDC_SCRL_TRACER_LOG), SB_CTL, &tracesi, TRUE);
|
||||||
if (logging && !logtofile)
|
if (!logtofile)
|
||||||
UpdateLogText();
|
UpdateLogText();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -506,8 +507,9 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
}
|
}
|
||||||
case WM_CLOSE:
|
case WM_CLOSE:
|
||||||
case WM_QUIT:
|
case WM_QUIT:
|
||||||
if(logging)
|
if (logging)
|
||||||
EndLoggingSequence();
|
EndLoggingSequence();
|
||||||
|
ClearTraceLogBuf();
|
||||||
hTracer = 0;
|
hTracer = 0;
|
||||||
EndDialog(hwndDlg,0);
|
EndDialog(hwndDlg,0);
|
||||||
break;
|
break;
|
||||||
|
@ -519,8 +521,10 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
switch(LOWORD(wParam))
|
switch(LOWORD(wParam))
|
||||||
{
|
{
|
||||||
case IDC_BTN_START_STOP_LOGGING:
|
case IDC_BTN_START_STOP_LOGGING:
|
||||||
if(logging)EndLoggingSequence();
|
if (logging)
|
||||||
else BeginLoggingSequence();
|
EndLoggingSequence();
|
||||||
|
else
|
||||||
|
BeginLoggingSequence();
|
||||||
EnableTracerMenuItems();
|
EnableTracerMenuItems();
|
||||||
break;
|
break;
|
||||||
case IDC_RADIO_LOG_LAST:
|
case IDC_RADIO_LOG_LAST:
|
||||||
|
@ -613,7 +617,7 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
if (lParam)
|
if (lParam)
|
||||||
{
|
{
|
||||||
if ((!logging) || logtofile)
|
if (!tracelogbuf)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (!FCEUI_EmulationPaused() && !log_update_window)
|
if (!FCEUI_EmulationPaused() && !log_update_window)
|
||||||
|
@ -682,6 +686,8 @@ void BeginLoggingSequence(void)
|
||||||
fprintf(LOG_FP,FCEU_NAME_AND_VERSION" - Trace Log File\n"); //mbg merge 7/19/06 changed string
|
fprintf(LOG_FP,FCEU_NAME_AND_VERSION" - Trace Log File\n"); //mbg merge 7/19/06 changed string
|
||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
|
ClearTraceLogBuf();
|
||||||
|
// create new log
|
||||||
log_lines_option = SendDlgItemMessage(hTracer, IDC_TRACER_LOG_SIZE, CB_GETCURSEL, 0, 0);
|
log_lines_option = SendDlgItemMessage(hTracer, IDC_TRACER_LOG_SIZE, CB_GETCURSEL, 0, 0);
|
||||||
if (log_lines_option == CB_ERR)
|
if (log_lines_option == CB_ERR)
|
||||||
log_lines_option = 0;
|
log_lines_option = 0;
|
||||||
|
@ -726,7 +732,8 @@ void FCEUD_TraceInstruction(uint8 *opcode, int size)
|
||||||
|
|
||||||
// if instruction executed from the RAM, skip this, log all instead
|
// if instruction executed from the RAM, skip this, log all instead
|
||||||
// TODO: loops folding mame-lyke style
|
// TODO: loops folding mame-lyke style
|
||||||
if(GetPRGAddress(addr) != -1) {
|
if (GetPRGAddress(addr) != -1)
|
||||||
|
{
|
||||||
if(((logging_options & LOG_NEW_INSTRUCTIONS) && (oldcodecount != codecount)) ||
|
if(((logging_options & LOG_NEW_INSTRUCTIONS) && (oldcodecount != codecount)) ||
|
||||||
((logging_options & LOG_NEW_DATA) && (olddatacount != datacount)))
|
((logging_options & LOG_NEW_DATA) && (olddatacount != datacount)))
|
||||||
{
|
{
|
||||||
|
@ -974,7 +981,22 @@ void OutputLogLine(const char *str, std::vector<uint16>* addressesLog, bool add_
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void EndLoggingSequence(void)
|
void ClearTraceLogBuf(void)
|
||||||
|
{
|
||||||
|
if (tracelogbuf)
|
||||||
|
{
|
||||||
|
int j = tracelogbufsize;
|
||||||
|
for(int i = 0; i < j;i++)
|
||||||
|
{
|
||||||
|
free(tracelogbuf[i]);
|
||||||
|
}
|
||||||
|
free(tracelogbuf);
|
||||||
|
tracelogbuf = 0;
|
||||||
|
}
|
||||||
|
tracelogbufAddressesLog.resize(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void EndLoggingSequence()
|
||||||
{
|
{
|
||||||
int j, i;
|
int j, i;
|
||||||
if (logtofile)
|
if (logtofile)
|
||||||
|
@ -982,19 +1004,15 @@ void EndLoggingSequence(void)
|
||||||
fclose(LOG_FP);
|
fclose(LOG_FP);
|
||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
j = tracelogbufsize;
|
strcpy(str_result, "Logging finished.");
|
||||||
for(i = 0;i < j;i++)
|
OutputLogLine(str_result);
|
||||||
{
|
ScrollLogWindowToLastLine();
|
||||||
free(tracelogbuf[i]);
|
UpdateLogText();
|
||||||
}
|
// do not clear the log window
|
||||||
free(tracelogbuf);
|
// ClearTraceLogBuf();
|
||||||
tracelogbufAddressesLog.resize(0);
|
|
||||||
|
|
||||||
SetDlgItemText(hTracer, IDC_TRACER_LOG, "Welcome to the Trace Logger.");
|
|
||||||
}
|
}
|
||||||
logging = 0;
|
logging = 0;
|
||||||
SetDlgItemText(hTracer, IDC_BTN_START_STOP_LOGGING,"Start Logging");
|
SetDlgItemText(hTracer, IDC_BTN_START_STOP_LOGGING,"Start Logging");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void UpdateLogWindow(void)
|
void UpdateLogWindow(void)
|
||||||
|
@ -1013,14 +1031,7 @@ void UpdateLogWindow(void)
|
||||||
}
|
}
|
||||||
log_old_emu_paused = emu_paused;
|
log_old_emu_paused = emu_paused;
|
||||||
|
|
||||||
tracesi.cbSize = sizeof(SCROLLINFO);
|
ScrollLogWindowToLastLine();
|
||||||
tracesi.fMask = SIF_ALL;
|
|
||||||
tracesi.nMin = 0;
|
|
||||||
tracesi.nMax = tracelogbufusedsize;
|
|
||||||
tracesi.nPos = tracesi.nMax - tracesi.nPage;
|
|
||||||
if (tracesi.nPos < tracesi.nMin)
|
|
||||||
tracesi.nPos = tracesi.nMin;
|
|
||||||
SetScrollInfo(GetDlgItem(hTracer,IDC_SCRL_TRACER_LOG),SB_CTL,&tracesi,TRUE);
|
|
||||||
|
|
||||||
if (logging_options & LOG_SYMBOLIC)
|
if (logging_options & LOG_SYMBOLIC)
|
||||||
loadNameFiles();
|
loadNameFiles();
|
||||||
|
@ -1030,12 +1041,24 @@ void UpdateLogWindow(void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ScrollLogWindowToLastLine()
|
||||||
|
{
|
||||||
|
tracesi.cbSize = sizeof(SCROLLINFO);
|
||||||
|
tracesi.fMask = SIF_ALL;
|
||||||
|
tracesi.nMin = 0;
|
||||||
|
tracesi.nMax = tracelogbufusedsize;
|
||||||
|
tracesi.nPos = tracesi.nMax - tracesi.nPage;
|
||||||
|
if (tracesi.nPos < tracesi.nMin)
|
||||||
|
tracesi.nPos = tracesi.nMin;
|
||||||
|
SetScrollInfo(GetDlgItem(hTracer,IDC_SCRL_TRACER_LOG),SB_CTL,&tracesi,TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
void UpdateLogText(void)
|
void UpdateLogText(void)
|
||||||
{
|
{
|
||||||
int j;
|
int j;
|
||||||
trace_str[0] = 0;
|
trace_str[0] = 0;
|
||||||
|
|
||||||
if (!tracelogbufpos)
|
if (!tracelogbuf || !tracelogbufpos || !tracelogbufsize)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int last_line = tracesi.nPos + tracesi.nPage;
|
int last_line = tracesi.nPos + tracesi.nPage;
|
||||||
|
@ -1061,7 +1084,7 @@ void UpdateLogText(void)
|
||||||
|
|
||||||
void EnableTracerMenuItems(void)
|
void EnableTracerMenuItems(void)
|
||||||
{
|
{
|
||||||
if(logging)
|
if (logging)
|
||||||
{
|
{
|
||||||
EnableWindow(GetDlgItem(hTracer,IDC_RADIO_LOG_LAST),FALSE);
|
EnableWindow(GetDlgItem(hTracer,IDC_RADIO_LOG_LAST),FALSE);
|
||||||
EnableWindow(GetDlgItem(hTracer,IDC_RADIO_LOG_TO_FILE),FALSE);
|
EnableWindow(GetDlgItem(hTracer,IDC_RADIO_LOG_TO_FILE),FALSE);
|
||||||
|
@ -1076,7 +1099,7 @@ void EnableTracerMenuItems(void)
|
||||||
EnableWindow(GetDlgItem(hTracer,IDC_BTN_LOG_BROWSE),TRUE);
|
EnableWindow(GetDlgItem(hTracer,IDC_BTN_LOG_BROWSE),TRUE);
|
||||||
EnableWindow(GetDlgItem(hTracer,IDC_CHECK_LOG_NEW_INSTRUCTIONS),TRUE);
|
EnableWindow(GetDlgItem(hTracer,IDC_CHECK_LOG_NEW_INSTRUCTIONS),TRUE);
|
||||||
|
|
||||||
if(logtofile)
|
if (logtofile)
|
||||||
{
|
{
|
||||||
EnableWindow(GetDlgItem(hTracer,IDC_TRACER_LOG_SIZE),FALSE);
|
EnableWindow(GetDlgItem(hTracer,IDC_TRACER_LOG_SIZE),FALSE);
|
||||||
EnableWindow(GetDlgItem(hTracer,IDC_BTN_LOG_BROWSE),TRUE);
|
EnableWindow(GetDlgItem(hTracer,IDC_BTN_LOG_BROWSE),TRUE);
|
||||||
|
|
Loading…
Reference in New Issue