
/***************************************************************************
**
**    $Header:   D:/EPSLDV1/SRC/LOG/EMUPATCH.H__   1.8   20 Jun 1996 09:30:34   ZJRD  $
**
**    $Log:   D:/EPSLDV1/SRC/LOG/EMUPATCH.H__  $
** 
**    Rev 1.8   20 Jun 1996 09:30:34   ZJRD
** EasyPack/SLD Version 1.20a
** 
**    Rev 1.6   10 Jun 1996 10:25:12   ZJRD
** EasyPack/SLD Version 1.20
** 
**    Rev 1.4   29 May 1996 09:38:02   ZJRD
** No change.
** 
**    Rev 1.3   16 May 1996 09:01:18   ZJRD
** No change.
** 
**    Rev 1.2   10 May 1996 09:15:34   ZJRD
** No change.
** 
**    Rev 1.1   02 May 1996 10:29:54   ZJRD
** EasyPack/SLD Version 1.92
** 
**    Rev 1.31   18 Apr 1996 13:02:20   Shirley
** No change.
** 
**    Rev 1.30   12 Apr 1996 10:41:12   Shirley
** No change.
** 
**    Rev 1.29   02 Apr 1996 09:30:10   Shirley
** No change.
** 
**    Rev 1.28   15 Feb 1996 08:56:12   Shirley
** No change.
** 
**    Rev 1.27   12 Feb 1996 14:07:30   Shirley
** No change.
** 
**    Rev 1.26   06 Feb 1996 15:33:58   Shirley
** No change.
** 
**    Rev 1.25   06 Feb 1996 13:47:52   Shirley
** No change.
** 
**    Rev 1.24   01 Feb 1996 10:19:08   Shirley
** No change.
** 
**    Rev 1.23   26 Jan 1996 09:14:20   Shirley
** No change.
** 
**    Rev 1.22   25 Jan 1996 13:14:14   Shirley
** No change.
** 
**    Rev 1.21   24 Jan 1996 10:33:06   Shirley
** No change.
** 
**    Rev 1.20   23 Jan 1996 11:26:52   Shirley
** No change.
** 
**    Rev 1.19   18 Jan 1996 10:11:40   Shirley
** No change.
** 
**    Rev 1.18   15 Jan 1996 16:13:14   Shirley
** No change.
** 
**    Rev 1.17   04 Jan 1996 11:11:18   Shirley
** No change.
** 
**    Rev 1.16   30 Nov 1995 09:15:06   Shirley
** No change.
** 
**    Rev 1.15   28 Nov 1995 15:30:16   Shirley
** No change.
** 
**    Rev 1.14   21 Nov 1995 11:20:32   Shirley
** No change.
** 
**    Rev 1.13   13 Nov 1995 09:26:56   Shirley
** No change.
** 
**    Rev 1.12   12 Nov 1995 11:31:32   Shirley
** No change.
** 
**    Rev 1.11   08 Nov 1995 16:28:08   Shirley
** No change.
** 
**    Rev 1.10   08 Nov 1995 12:41:22   Shirley
** No change.
** 
**    Rev 1.9   02 Nov 1995 10:03:18   Shirley
** No change.
** 
**    Rev 1.8   27 Oct 1995 16:46:30   Shirley
** No change.
** 
**    Rev 1.7   27 Oct 1995 13:45:32   Shirley
** No change.
** 
**    Rev 1.6   25 Oct 1995 14:29:06   Shirley
** No change.
** 
**    Rev 1.5   18 Oct 1995 14:50:22   Shirley
** No change.
** 
**    Rev 1.4   13 Oct 1995 13:19:36   Shirley
** No change.
** 
**    Rev 1.3   29 Sep 1995 09:53:02   Shirley
** No change.
** 
**    Rev 1.2   20 Sep 1995 10:54:14   Shirley
** No change.
** 
**    Rev 1.1   15 Sep 1995 09:45:40   Shirley
** No change.
** 
**    Rev 1.0   07 Sep 1995 09:55:44   Shirley
** Initial revision.
**
****************************************************************************/

/////////////////////////////////////////////////////////////////////////////
//
//  File name: EMUPATCH.H
//
//  Description: The header file for the class: CEmulationPatch.
//
//  Author: Chen Jun
//
//  Date: 05/08/95
//
//  Modification:
//      1. 05/08/95, Initial version of the class: CEmulationPatch.
//
/////////////////////////////////////////////////////////////////////////////
#ifndef _EMUPATCH_
#define _EMUPATCH_

#include "membase.h"


/////////////////////////////////////////////////////////////////////////////
// CEmulationPatch class.
class CEmulationPatch : public CMemoryBase
{
// Construction & Destruction.
public:
    CEmulationPatch();
    ~CEmulationPatch();
    
// Member variables.
private:
    CMemoryAddr m_Addr1, m_Addr2, m_Addr3, m_Addr4;
    
protected:

public:

// Implementations.
private:
    void PatchKernel(void);
    void DisplayPatch(void);
    void SetPatchData(void) const;
    void GetPatchData(void);

protected:

public:
    void PatchAction(int nArgc, char* pszArgv[]);

};  // End of class: CEmulationPatch.



/////////////////////////////////////////////////////////////////////////////
// CPatchData class.
class CPatchData : public CMemoryBase
{
// Construction & Destruction.
public:
    CPatchData();
    ~CPatchData();
    
// Member variables.
private:
    CMemoryAddr m_Addr1, m_Addr2, m_Addr3, m_Addr4;
    
protected:

public:

// Implementations.
private:

protected:

public:
    void SetPatchData(const CMemoryAddr Addr1, const CMemoryAddr Addr2,
                      const CMemoryAddr Addr3, const CMemoryAddr Addr4);
    
    void GetPatchData(CMemoryAddr& Addr1, CMemoryAddr& Addr2,
                      CMemoryAddr& Addr3, CMemoryAddr& Addr4) const;

};  // End of class: CPatchData.

#endif
//////////////////////////////// End of File ////////////////////////////////
