summaryrefslogtreecommitdiff
path: root/opcode.c
blob: 017a2981da3059b7135a3babf93ed8c12159526d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include "sux.h"

static inline uint64_t get_addr(struct sux *cpu, uint64_t *tmpaddr, uint8_t opcode, uint8_t prefix, uint8_t thread);
extern inline void adc(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void sbc(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void transfer(struct sux *cpu, uint64_t value, uint8_t opcode, uint8_t prefix, uint8_t thread);
extern inline void push(struct sux *cpu, uint64_t value, uint8_t opcode, uint8_t thread);
extern inline void pull(struct sux *cpu, uint64_t value, uint8_t opcode, uint8_t thread);
extern inline void and(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void or(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void xor(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void lsl(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void lsr(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void asr(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void rol(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void ror(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void mul(struct sux *cpu, uint64_t value, uint8_t thread);
extern inline void divd(struct sux *cpu, uint64_t value, uint8_t opcode, uint8_t thread);
extern inline void cmp(struct sux *cpu, uint64_t value, uint8_t opcode, uint8_t thread);
extern inline void incr(struct sux *cpu, uint8_t opcode, uint8_t thread);
extern inline void decr(struct sux *cpu, uint8_t opcode, uint8_t thread);
extern inline void incm(struct sux *cpu, uint64_t address, uint8_t thread);
extern inline void decm(struct sux *cpu, uint64_t address, uint8_t thread);
extern inline void load(struct sux *cpu, uint64_t address, uint8_t *esc, uint8_t opcode, uint8_t prefix, uint8_t thread);
extern inline void store(struct sux *cpu, uint64_t address, uint8_t *esc, uint8_t opcode, uint8_t prefix, uint8_t thread);