+#define MOV_direct_data 0x75
+#define LJMP 0x02
+#define MOV_Rn_data(n) (0x78 | (n))
+#define DJNZ_Rn_rel(n) (0xd8 | (n))
+
+#if 0
+static uint8_t instructions[] = {
+ 3, MOV_direct_data, 0xfe, 0x02,
+ 3, MOV_direct_data, 0x90, 0xff,
+ 0
+};
+#endif
+
+static uint8_t mem_instr[] = {
+ MOV_direct_data, 0xfe, 0x02,
+ MOV_direct_data, 0x90, 0xff,
+ MOV_Rn_data(2), 0x10,
+ MOV_Rn_data(0), 0xff,
+ MOV_Rn_data(1), 0xff,
+ DJNZ_Rn_rel(1), 0xfe,
+ DJNZ_Rn_rel(0), 0xfa,
+ DJNZ_Rn_rel(2), 0xf6,
+ MOV_direct_data, 0x90, 0xfd,
+ MOV_Rn_data(2), 0x10,
+ MOV_Rn_data(0), 0xff,
+ MOV_Rn_data(1), 0xff,
+ DJNZ_Rn_rel(1), 0xfe,
+ DJNZ_Rn_rel(0), 0xfa,
+ DJNZ_Rn_rel(2), 0xf6,
+ LJMP, 0xf0, 0x03
+};
+
+static uint8_t jump_mem[] = {
+ 3, LJMP, 0xf0, 0x00,
+ 0
+};
+