Attempt at an Arduino simulator in Python.
Mnemonic | Description | Implemented? |
---|---|---|
ARITHMETIC AND LOGIC INSTRUCTIONS | ||
ADD | Add two registers | x |
ADC | ADD with Carry | x |
ADIW | Add immediate to word | x |
SUB | Subtract registers | x |
SUBI | Subtract constant from register | x |
SBC | SUB with Carry | |
SBCI | SUBI with Carry | x |
SBIW | Subtract immediate from word | x |
AND | Logical AND register | |
ANDI | Logical AND immediate | x |
OR | Logical OR register | |
ORI | Logical OR immediate | x |
EOR | Exclusive OR Registers | |
COM | 1's compliment | x |
NEG | 2's compliment | x |
SBR | Set bit(s) in register | |
CBR | Clear bit(s) in register | |
INC | Increment register | x |
DEC | Decrement register | x |
TST | Test zero or minus | |
CLR | Clear register | |
SER | Set register | |
MUL | Multiply unsigned | |
MULS | Multiply signed | |
MULSU | Multiply signed/unsigned | |
FMUL | Fractional multiply unsigned | |
FMULS | Fractional mulitply signed | |
FMULSU | Fractional multiply signed/unsigned | |
BRANCH INSTRUCTIONS | ||
RJMP | Relative jump | x |
IJMP | Indirect jump to (Z) | x |
JMP | Direct jump | x |
RCALL | Relative subroutine call | x |
ICALL | Indirect call to (Z) | x |
CALL | Direct subroutine call | |
RET | Subroutine return | x |
RETI | Interrupt return | x |
CPSE | x | |
CP | x | |
CPC | ||
CPI | ||
SBRC | ||
SBRS | ||
SBIC | ||
SBIS | ||
BRBS | ||
BRBC | ||
BREQ | ||
BRNE | ||
BRCS | ||
BRCC | ||
BRSH | ||
BRLO | ||
BRMI | ||
BRPL | ||
BRGE | ||
BRLT | ||
BRHS | ||
BRHC | ||
BRTS | ||
BRTC | ||
BRVS | ||
BRVC | ||
BRIE | ||
BRID | ||
BIT AND BIT-TEST INSTRUCTIONS | ||
SBI | ||
CBI | ||
LSL | ||
LSR | ||
ROL | ||
ROR | ||
ASR | ||
SWAP | ||
BSET | ||
BCLR | ||
BST | ||
BLD | ||
SEC | x | |
CLC | x | |
SEN | x | |
CLN | x | |
SEZ | x | |
CLZ | x | |
SEI | x | |
CLI | x | |
SES | x | |
CLS | x | |
SEV | x | |
CLV | x | |
SET | x | |
CLT | x | |
SEH | x | |
CLH | x | |
DATA TRANSFER INSTRUCTIONS | ||
MOV | ||
MOVW | Copy register word | x |
LDI | Load immediate | x |
LD | ||
LD | ||
LD | ||
LD | ||
LD | ||
LD | ||
LDD | ||
LD | ||
LD | ||
LD | ||
LDD | ||
LDS | ||
ST | ||
ST | ||
ST | ||
ST | ||
ST | ||
ST | ||
STD | ||
ST | ||
ST | ||
ST | ||
STD | ||
STS | ||
LPM | ||
LPM | ||
LPM | ||
SPM | ||
IN | ||
OUT | ||
PUSH | ||
POP | ||
MCU CONTROL INSTRUCTIONS | ||
NOP | No operation | x |
SLEEP | x | |