1.1 --- a/c++/rgb-assembler/commands/IncrementDecrement.h Sun Dec 24 00:08:55 2017 +0100
1.2 +++ b/c++/rgb-assembler/commands/IncrementDecrement.h Sun Dec 24 00:12:58 2017 +0100
1.3 @@ -14,8 +14,9 @@
1.4 class IncrementDecrement : public Command {
1.5 public:
1.6
1.7 - IncrementDecrement(const bool increment) {
1.8 + IncrementDecrement(const bool increment, octet_t change) {
1.9 this->increment = increment;
1.10 + this->change = change;
1.11 }
1.12
1.13 void process(octet_t* memory, address_t& index) override {
1.14 @@ -23,12 +24,13 @@
1.15 address_t address_r = address;
1.16 address_t address_w = address_r;
1.17 octet_t value = read<octet_t>(memory, address_r);
1.18 - value = increment ? value + 1 : value - 1;
1.19 + value = increment ? value + change : value - change;
1.20 write<octet_t>(memory, address_w, value);
1.21 wprintf(L"%sCREMENT %*d → %02X\n", (increment ? "IN" : "DE"), 5, address, value);
1.22 }
1.23 private:
1.24 bool increment;
1.25 + octet_t change;
1.26
1.27 };
1.28