2019-11-12 17:03:51 -08:00
|
|
|
#pragma once
|
|
|
|
#include "asm.h"
|
|
|
|
|
|
|
|
#define CLASS TPsuedoOp
|
|
|
|
|
|
|
|
enum
|
|
|
|
{
|
|
|
|
P_ORG = 1,
|
|
|
|
P_LST,
|
|
|
|
P_SAV,
|
2019-11-12 20:32:10 -08:00
|
|
|
P_DUM,
|
|
|
|
P_DEND,
|
2019-11-13 06:54:48 -08:00
|
|
|
P_DS,
|
2019-11-13 15:45:39 -08:00
|
|
|
P_PUT,
|
|
|
|
P_USE,
|
2019-11-14 17:04:35 -08:00
|
|
|
P_HEX,
|
2019-11-14 23:35:04 -08:00
|
|
|
P_DATA,
|
2019-11-15 18:30:12 -08:00
|
|
|
P_LUP,
|
2019-11-16 09:27:24 -08:00
|
|
|
P_DO,
|
2019-11-16 11:14:51 -08:00
|
|
|
P_TR,
|
2019-11-17 17:41:42 -08:00
|
|
|
P_ASC,
|
2019-11-12 17:03:51 -08:00
|
|
|
|
|
|
|
P_MAX
|
|
|
|
};
|
|
|
|
|
|
|
|
class CLASS
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CLASS();
|
|
|
|
~CLASS();
|
2019-11-18 06:07:44 -08:00
|
|
|
uint32_t doShift(uint32_t value, uint8_t shift);
|
|
|
|
|
2019-11-12 17:03:51 -08:00
|
|
|
int ProcessOpcode(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
|
|
|
int doLST(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-12 20:32:10 -08:00
|
|
|
int doDUM(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-13 06:54:48 -08:00
|
|
|
int doDS(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-14 17:04:35 -08:00
|
|
|
int doHEX(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-14 23:35:04 -08:00
|
|
|
int doDATA(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-15 18:30:12 -08:00
|
|
|
int doLUP(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-16 11:14:51 -08:00
|
|
|
int doDO(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
|
|
|
int doTR(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-17 17:41:42 -08:00
|
|
|
int doASC(T65816Asm &a, MerlinLine &line, TSymbol &opinfo);
|
2019-11-12 17:03:51 -08:00
|
|
|
};
|
|
|
|
|
2019-11-17 17:41:42 -08:00
|
|
|
#undef CLASS
|