2012-12-19 09:30:18 +00:00
|
|
|
/****************************************************************************
|
|
|
|
* *
|
|
|
|
* Project 64 - A Nintendo 64 emulator. *
|
|
|
|
* http://www.pj64-emu.com/ *
|
|
|
|
* Copyright (C) 2012 Project64. All rights reserved. *
|
|
|
|
* *
|
|
|
|
* License: *
|
|
|
|
* GNU/GPLv2 http://www.gnu.org/licenses/gpl-2.0.html *
|
|
|
|
* *
|
|
|
|
****************************************************************************/
|
2010-06-04 06:25:07 +00:00
|
|
|
#pragma once
|
2008-09-18 03:15:49 +00:00
|
|
|
|
2015-03-25 21:12:40 +00:00
|
|
|
typedef struct
|
|
|
|
{
|
2015-11-08 09:17:13 +00:00
|
|
|
bool GenerateLog;
|
2008-09-18 03:15:49 +00:00
|
|
|
|
2015-11-08 09:17:13 +00:00
|
|
|
/* Registers Log */
|
|
|
|
bool LogRDRamRegisters;
|
|
|
|
bool LogSPRegisters;
|
|
|
|
bool LogDPCRegisters;
|
|
|
|
bool LogDPSRegisters;
|
|
|
|
bool LogMIPSInterface;
|
|
|
|
bool LogVideoInterface;
|
|
|
|
bool LogAudioInterface;
|
|
|
|
bool LogPerInterface;
|
|
|
|
bool LogRDRAMInterface;
|
|
|
|
bool LogSerialInterface;
|
2008-09-18 03:15:49 +00:00
|
|
|
|
2015-11-08 09:17:13 +00:00
|
|
|
/* Pif Ram Log */
|
|
|
|
bool LogPRDMAOperations;
|
|
|
|
bool LogPRDirectMemLoads;
|
|
|
|
bool LogPRDMAMemLoads;
|
|
|
|
bool LogPRDirectMemStores;
|
|
|
|
bool LogPRDMAMemStores;
|
|
|
|
bool LogControllerPak;
|
2008-09-18 03:15:49 +00:00
|
|
|
|
2015-11-08 09:17:13 +00:00
|
|
|
/* Special Log */
|
|
|
|
bool LogCP0changes;
|
|
|
|
bool LogCP0reads;
|
|
|
|
bool LogTLB;
|
|
|
|
bool LogExceptions;
|
|
|
|
bool NoInterrupts;
|
|
|
|
bool LogCache;
|
|
|
|
bool LogRomHeader;
|
|
|
|
bool LogUnknown;
|
2008-09-18 03:15:49 +00:00
|
|
|
} LOG_OPTIONS;
|
|
|
|
|
2015-11-08 09:17:13 +00:00
|
|
|
extern LOG_OPTIONS g_LogOptions;
|
2008-09-18 03:15:49 +00:00
|
|
|
|
|
|
|
void EnterLogOptions ( HWND hwndOwner );
|
2015-11-08 09:17:13 +00:00
|
|
|
void StartLog ( void );
|
|
|
|
void StopLog ( void );
|
|
|
|
void LoadLogOptions ( LOG_OPTIONS * LogOptions, bool AlwaysFill );
|
|
|
|
void Log_LW ( uint32_t PC, uint32_t VAddr );
|
|
|
|
void Log_SW ( uint32_t PC, uint32_t VAddr, uint32_t Value );
|
|
|
|
void LogMessage ( const char * Message, ... );
|