diff options
Diffstat (limited to 'src/micro/picinfo16bit.h')
-rw-r--r-- | src/micro/picinfo16bit.h | 266 |
1 files changed, 266 insertions, 0 deletions
diff --git a/src/micro/picinfo16bit.h b/src/micro/picinfo16bit.h new file mode 100644 index 0000000..975c23c --- /dev/null +++ b/src/micro/picinfo16bit.h @@ -0,0 +1,266 @@ +/*************************************************************************** + * Copyright (C) 2003-2004 by David Saxton * + * david@bluehaze.org * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + ***************************************************************************/ + +#ifndef PICINFO16BIT_H +#define PICINFO16BIT_H + +#include "picinfo.h" +#include "asminfo.h" + +/** +@short 16 Bit PIC Instructions +@author David Saxton + */ +class PicAsm16bit : public AsmInfo +{ + public: + static PicAsm16bit *self(); + virtual Set set() const { return AsmInfo::PIC16; } + + protected: + static PicAsm16bit *m_self; + + private: + PicAsm16bit(); +}; + +/** +@author David Saxton + */ +class PicInfo16bit : public PicInfo +{ + public: + PicInfo16bit(); + ~PicInfo16bit(); + + virtual AsmInfo * instructionSet() { return PicAsm16bit::self(); } +}; + +/** +@author David Saxton + */ +class PicInfo17C7xx : public PicInfo16bit +{ + public: + PicInfo17C7xx(); + ~PicInfo17C7xx(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo17C75x : public PicInfo17C7xx +{ + public: + PicInfo17C75x(); + ~PicInfo17C75x(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo17C752 : public PicInfo17C75x +{ + public: + PicInfo17C752(); + ~PicInfo17C752(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo17C756 : public PicInfo17C75x +{ + public: + PicInfo17C756(); + ~PicInfo17C756(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo17C756A : public PicInfo17C75x +{ + public: + PicInfo17C756A(); + ~PicInfo17C756A(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo17C762 : public PicInfo17C75x +{ + public: + PicInfo17C762(); + ~PicInfo17C762(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo17C766 : public PicInfo17C75x +{ + public: + PicInfo17C766(); + ~PicInfo17C766(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18Cxx2 : public PicInfo16bit +{ + public: + PicInfo18Cxx2(); + ~PicInfo18Cxx2(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18C2x2 : public PicInfo16bit +{ + public: + PicInfo18C2x2(); + ~PicInfo18C2x2(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18C242 : public PicInfo18C2x2 +{ + public: + PicInfo18C242(); + ~PicInfo18C242(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18C252 : public PicInfo18C242 +{ + public: + PicInfo18C252(); + ~PicInfo18C252(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18C4x2 : public PicInfo16bit +{ + public: + PicInfo18C4x2(); + ~PicInfo18C4x2(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18C442 : public PicInfo18C4x2 +{ + public: + PicInfo18C442(); + ~PicInfo18C442(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18C452 : public PicInfo18C442 +{ + public: + PicInfo18C452(); + ~PicInfo18C452(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18F442 : public PicInfo18C442 +{ + public: + PicInfo18F442(); + ~PicInfo18F442(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18F248 : public PicInfo18F442 +{ + public: + PicInfo18F248(); + ~PicInfo18F248(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18F452 : public PicInfo18F442 +{ + public: + PicInfo18F452(); + ~PicInfo18F452(); + virtual Support gpsimSupport() const { return PartialSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18Fxx20 : public PicInfo16bit +{ + public: + PicInfo18Fxx20(); + ~PicInfo18Fxx20(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18F1220 : public PicInfo18Fxx20 +{ + public: + PicInfo18F1220(); + ~PicInfo18F1220(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +/** +@author David Saxton + */ +class PicInfo18F1320 : public PicInfo18F1220 +{ + public: + PicInfo18F1320(); + ~PicInfo18F1320(); + virtual Support gpsimSupport() const { return NoSupport; } +}; + +#endif |