70 lines
1.1 KiB
C++
70 lines
1.1 KiB
C++
#ifndef _AS68HC11_ORIGIN_HPP_
|
|
#define _AS68HC11_ORIGIN_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_BLOCK_HPP_
|
|
#include <common/block.hpp>
|
|
#endif
|
|
|
|
class Origin;
|
|
typedef Block<Origin> Origins;
|
|
|
|
class Origin
|
|
{
|
|
public:
|
|
Origin();
|
|
Origin(DWORD origin,DWORD position);
|
|
virtual ~Origin();
|
|
DWORD getOrigin(void)const;
|
|
void setOrigin(DWORD origin);
|
|
DWORD getPosition(void)const;
|
|
void setPosition(DWORD position);
|
|
private:
|
|
DWORD mOrigin; // memory address in MCU of where to generate this code
|
|
DWORD mPosition; // position of code in the code generation stream
|
|
};
|
|
|
|
inline
|
|
Origin::Origin()
|
|
: mOrigin(0), mPosition(0)
|
|
{
|
|
}
|
|
|
|
inline
|
|
Origin::Origin(DWORD origin,DWORD position)
|
|
: mOrigin(origin), mPosition(position)
|
|
{
|
|
}
|
|
|
|
inline
|
|
Origin::~Origin()
|
|
{
|
|
}
|
|
|
|
inline
|
|
DWORD Origin::getOrigin(void)const
|
|
{
|
|
return mOrigin;
|
|
}
|
|
|
|
inline
|
|
void Origin::setOrigin(DWORD origin)
|
|
{
|
|
mOrigin=origin;
|
|
}
|
|
|
|
inline
|
|
DWORD Origin::getPosition(void)const
|
|
{
|
|
return mPosition;
|
|
}
|
|
|
|
inline
|
|
void Origin::setPosition(DWORD position)
|
|
{
|
|
mPosition=position;
|
|
}
|
|
#endif
|
|
|