// PSXExe.h: interface for the CPSXExe class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_PSXEXE_H__8B41EEC6_D95E_48B1_B680_94281D9AF047__INCLUDED_) #define AFX_PSXEXE_H__8B41EEC6_D95E_48B1_B680_94281D9AF047__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "ProgramFile.h" #include struct EXEC { unsigned int pc0; unsigned int gp0; unsigned int t_addr; unsigned int t_size; unsigned int d_addr; unsigned int d_size; unsigned int b_addr; unsigned int b_size; unsigned int s_addr; unsigned int s_size; unsigned int sp; unsigned int fp; unsigned int gp; unsigned int ret; unsigned int base; }; struct XF_HDR { char key[8]; /* "PS-X EXE" */ unsigned int text; unsigned int data; struct EXEC exec; char title[60]; /* "PlayStation(tm) Executable A1" */ }; const int EXE_HEAD_BYTES=2048; class CPSXExe : public CProgramFile { public: CPSXExe(); virtual ~CPSXExe(); bool OpenForReading(TCHAR* filename); private: virtual bool SendThread(); unsigned int m_Address; unsigned int m_Length; }; #endif // !defined(AFX_PSXEXE_H__8B41EEC6_D95E_48B1_B680_94281D9AF047__INCLUDED_)