The 'Pawn Language' Forum

An embedded scripting language

 

Back To Forum Index
 
PKua
Posted On 2011-10-08 15:13 -- Subject: #emit directive

How to use #emit directive. I've found out, that I must know AMX opcodes. What are they?

(Sorry for my bad English)
[GF]Sasino97
Posted On 2011-10-13 13:08 -- Subject: RE: #emit directive

These are the opcodes (Found in pawndisasm.c):

static OPCODE opcodelist[] = {
{ 0, "nop", parm0 },
{ 1, "load.pri", parm1 },
{ 2, "load.alt", parm1 },
{ 3, "load.s.pri", parm1 },
{ 4, "load.s.alt", parm1 },
{ 5, "lref.s.pri", parm1 },
{ 6, "lref.s.alt", parm1 },
{ 7, "load.i", parm0 },
{ 8, "lodb.i", parm1 },
{ 9, "const.pri", parm1 },
{ 10, "const.alt", parm1 },
{ 11, "addr.pri", parm1 },
{ 12, "addr.alt", parm1 },
{ 13, "stor", parm1 },
{ 14, "stor.s", parm1 },
{ 15, "sref.s", parm1 },
{ 16, "stor.i", parm0 },
{ 17, "strb.i", parm1 },
{ 18, "align.pri", parm1 },
{ 19, "lctrl", parm1 },
{ 20, "sctrl", parm1 },
{ 21, "xchg", parm0 },
{ 22, "push.pri", parm0 },
{ 23, "push.alt", parm0 },
{ 24, "pushr.pri", parm0 },
{ 25, "pop.pri", parm0 },
{ 26, "pop.alt", parm0 },
{ 27, "pick", parm1 },
{ 28, "stack", parm1 },
{ 29, "heap", parm1 },
{ 30, "proc", do_proc },
{ 31, "ret", parm0 },
{ 32, "retn", parm0 },
{ 33, "call", do_call },
{ 34, "jump", do_jump },
{ 35, "jzer", do_jump },
{ 36, "jnz", do_jump },
{ 37, "shl", parm0 },
{ 38, "shr", parm0 },
{ 39, "sshr", parm0 },
{ 40, "shl.c.pri", parm1 },
{ 41, "shl.c.alt", parm1 },
{ 42, "smul", parm0 },
{ 43, "sdiv", parm0 },
{ 44, "add", parm0 },
{ 45, "sub", parm0 },
{ 46, "and", parm0 },
{ 47, "or", parm0 },
{ 48, "xor", parm0 },
{ 49, "not", parm0 },
{ 50, "neg", parm0 },
{ 51, "invert", parm0 },
{ 52, "eq", parm0 },
{ 53, "neq", parm0 },
{ 54, "sless", parm0 },
{ 55, "sleq", parm0 },
{ 56, "sgrtr", parm0 },
{ 57, "sgeq", parm0 },
{ 58, "inc.pri", parm0 },
{ 59, "inc.alt", parm0 },
{ 60, "inc.i", parm0 },
{ 61, "dec.pri", parm0 },
{ 62, "dec.alt", parm0 },
{ 63, "dec.i", parm0 },
{ 64, "movs", parm1 },
{ 65, "cmps", parm1 },
{ 66, "fill", parm1 },
{ 67, "halt", parm1 },
{ 68, "bounds", parm1 },
{ 69, "sysreq", parm1 },
{ 70, "switch", do_switch },
{ 71, "swap.pri", parm0 },
{ 72, "swap.alt", parm0 },
{ 73, "break", parm0 },
{ 74, "casetbl", casetbl },
/*{ 75, "sysreq.d", parm1 }, not generated by the compiler */
/*{ 76, "sysreq.nd", parm2 }, not generated by the compiler */
{ 77, "call.ovl", parm1 },
{ 78, "retn.ovl", parm0 },
{ 79, "switch.ovl", do_switch },
{ 80, "casetbl.ovl", icasetbl },
{ 81, "lidx", parm0 },
{ 82, "lidx.b", parm1 },
{ 83, "idxaddr", parm0 },
{ 84, "idxaddr.b", parm1 },
{ 85, "push.c", parm1 },
{ 86, "push", parm1 },
{ 87, "push.s", parm1 },
{ 88, "push.adr", parm1 },
{ 89, "pushr.c", parm1 },
{ 90, "pushr.s", parm1 },
{ 91, "pushr.adr", parm1 },
{ 92, "jeq", do_jump },
{ 93, "jneq", do_jump },
{ 94, "jsless", do_jump },
{ 95, "jsleq", do_jump },
{ 96, "jsgrtr", do_jump },
{ 97, "jsgeq", do_jump },
{ 98, "sdiv.inv", parm0 },
{ 99, "sub.inv", parm0 },
{100, "add.c", parm1 },
{101, "smul.c", parm1 },
{102, "zero.pri", parm0 },
{103, "zero.alt", parm0 },
{104, "zero", parm1 },
{105, "zero.s", parm1 },
{106, "eq.c.pri", parm1 },
{107, "eq.c.alt", parm1 },
{108, "inc", parm1 },
{109, "inc.s", parm1 },
{110, "dec", parm1 },
{111, "dec.s", parm1 },
{112, "sysreq.n", parm2 },
{113, "pushm.c", parmx },
{114, "pushm", parmx },
{115, "pushm.s", parmx },
{116, "pushm.adr", parmx },
{117, "pushrm.c", parmx },
{118, "pushrm.s", parmx },
{119, "pushrm.adr", parmx },
{120, "load2", parm2 },
{121, "load2.s", parm2 },
{122, "const", parm2 },
{123, "const.s", parm2 },
{124, "load.p.pri", parm1_p },
{125, "load.p.alt", parm1_p },
{126, "load.p.s.pri",parm1_p },
{127, "load.p.s.alt",parm1_p },
{128, "lref.p.s.pri",parm1_p },
{129, "lref.p.s.alt",parm1_p },
{130, "lodb.p.i", parm1_p },
{131, "const.p.pri", parm1_p },
{132, "const.p.alt", parm1_p },
{133, "addr.p.pri", parm1_p },
{134, "addr.p.alt", parm1_p },
{135, "stor.p", parm1_p },
{136, "stor.p.s", parm1_p },
{137, "sref.p.s", parm1_p },
{138, "strb.p.i", parm1_p },
{139, "lidx.p.b", parm1_p },
{140, "idxaddr.p.b", parm1_p },
{141, "align.p.pri", parm1_p },
{142, "push.p.c", parm1_p },
{143, "push.p", parm1_p },
{144, "push.p.s", parm1_p },
{145, "push.p.adr", parm1_p },
{146, "pushr.p.c", parm1_p },
{147, "pushr.p.s", parm1_p },
{148, "pushr.p.adr", parm1_p },
{149, "pushm.p.c", parmx_p },
{150, "pushm.p", parmx_p },
{151, "pushm.p.s", parmx_p },
{152, "pushm.p.adr", parmx_p },
{153, "pushrm.p.c", parmx_p },
{154, "pushrm.p.s", parmx_p },
{155, "pushrm.p.adr",parmx_p },
{156, "stack.p", parm1_p },
{157, "heap.p", parm1_p },
{158, "shl.p.c.pri", parm1_p },
{159, "shl.p.c.alt", parm1_p },
{160, "add.p.c", parm1_p },
{161, "smul.p.c", parm1_p },
{162, "zero.p", parm1_p },
{163, "zero.p.s", parm1_p },
{164, "eq.p.c.pri", parm1_p },
{165, "eq.p.c.alt", parm1_p },
{166, "inc.p", parm1_p },
{167, "inc.p.s", parm1_p },
{168, "dec.p", parm1_p },
{169, "dec.p.s", parm1_p },
{170, "movs.p", parm1_p },
{171, "cmps.p", parm1_p },
{172, "fill.p", parm1_p },
{173, "halt.p", parm1_p },
{174, "bounds.p", parm1_p },

You Are On Page: 1/1 <<   <   1   >   >>




- BiTBOARD version 2.5 by the BiTSHiFTERS SDC -