7 #include "../Command.h"
14 class IncrementDecrement : public Command {
17 IncrementDecrement(const bool increment) {
18 this->increment = increment;
21 void process(octet_t* memory, address_t& index) override {
22 address_t address = read<address_t>(memory, index);
23 address_t address_r = address;
24 address_t address_w = address_r;
25 octet_t value = read<octet_t>(memory, address_r);
26 value = increment ? value + 1 : value - 1;
27 write<octet_t>(memory, address_w, value);
28 wprintf(L"%sCREMENT %*d → %02X\n", (increment ? "IN" : "DE"), 5, address, value);