 
 // TODO: [0F] RRCA
 
+// TODO: [10] STOP
+
+// [11] LD DE, nn
+def op_11() {
+  DE = mmu_next16();
+}
+
+// [12] LD (DE), A
+def op_12() {
+  mmu_write8(DE, *A);
+}
+
+// [13] INC DE
+def op_13() {
+  om_inc16(&DE);
+}
+
+// [14] INC D
+def op_14() {
+  om_inc8(D);
+}
+
+// [15] DEC D
+def op_15() {
+  om_dec8(D);
+}
+
+// [16] LD D, n
+def op_16() {
+  *D = mmu_next8();
+}
+
+// TODO: [17] RLA
+
+// [18] JR n
+def op_18() {
+  let n = mmu_next8();
+  om_jp(PC + uint16(n));
+}
+
+// [19] ADD HL, DE
+def op_19() {
+  HL = om_add16(HL, DE);
+}
+
+// [1A] LD A, (DE)
+def op_1A() {
+  *A = mmu_read8(DE);
+}
+
+// [1B] DEC DE
+def op_1B() {
+  om_dec16(&DE);
+}
+
+// [1C] INC E
+def op_1C() {
+  om_inc8(E);
+}
+
+// [1D] DEC E
+def op_1D() {
+  om_dec8(E);
+}
+
+// [1E] LD E, n
+def op_1E() {
+  *E = mmu_next8();
+}
+
+// TODO: [1F] RRA
+
 // [20] JR NZ, n
 def op_20() {
   let n = mmu_next8();

  *(optable + 0x0E) = op_0E;
  // TODO: *(optable + 0x0F) = op_0F;

  *(optable + 0x20) = op_20;
  *(optable + 0x21) = op_21;
  *(optable + 0x22) = op_22;

  *(cycletable + 0x0E) = 8;
  *(cycletable + 0x0F) = 4;

  *(cycletable + 0x10) = 4;
  *(cycletable + 0x11) = 12;
  *(cycletable + 0x12) = 8;
  *(cycletable + 0x13) = 8;
  *(cycletable + 0x14) = 4;
  *(cycletable + 0x15) = 4;
  *(cycletable + 0x16) = 8;
  *(cycletable + 0x17) = 4;
  *(cycletable + 0x18) = 12;
  *(cycletable + 0x19) = 8;
  *(cycletable + 0x1A) = 8;
  *(cycletable + 0x1B) = 8;
  *(cycletable + 0x1C) = 4;
  *(cycletable + 0x1D) = 4;
  *(cycletable + 0x1E) = 8;
  *(cycletable + 0x1F) = 4;

  *(cycletable + 0x20) = 8;  //  +4 IFF
  *(cycletable + 0x21) = 12;
  *(cycletable + 0x22) = 8;
