Rex Raj / Mbed 2 deprecated el17rrrs

Dependencies:   mbed Gamepad N5110 mbed-rtos

Revision:
2:b5c1bb7a39de
Parent:
1:45493d1d0689
Child:
3:bf9624e5b0c3
--- a/Instruction/Instruction.cpp	Fri Apr 19 13:43:22 2019 +0000
+++ b/Instruction/Instruction.cpp	Sat Apr 20 00:08:00 2019 +0000
@@ -10,11 +10,6 @@
 
 }
 
-
-enum States { Life1,Life2,Life3,Life4,Life5,Life6,Life7,Life8,Life9,Life10,Life11 };
-
-void Instruction::rules(N5110 &lcd,Gamepad &pad){ 
-
 int instruction1 [47][83] = {
     
 {0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0},
@@ -67,59 +62,78 @@
 
 };
 
-int game_rules [48] [83] = {
+int game_rules [8] [74] = {
 
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,0,1,1,1,1,1,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,1,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,0,1,1,1,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,1,0,0,1,1,0,0,1,1,0,1,1,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,0,1,1,0,0,1,0,0},
-{0,1,0,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,0,1,0,0,1,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,1,1,1,1,0,0,1,1,1,0,1,0,0,0,1,1,0,0,1,0,0},
-{0,1,0,0,1,0,0,1,1,1,1,1,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,1,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0,1,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,1,0,0,1,1,1,0,0,1,0,0,0,0,0,0,1,0,0,1,1,1,0,0,1,0,0,1,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,0,0,1,1,1,1,0,0,1,1,0,0,1,0,0,0,1,1,0,0,1,0,0},
-{0,1,0,0,1,1,0,0,0,0,1,0,1,0,0,1,1,0,0,1,0,0,1,1,1,0,0,1,0,0,0,0,0,1,0,0,1,0,0,1,1,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,0,1,1,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,0,1,1,0,0,1,0,0},
-{0,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
-{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
-{0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
+{0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,0,1,1,1,1,1,0,0,0,0,0,0},
+{1,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,0,1,1,1,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,1,0,0,1,1,0,0,1,1,0,1,1,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,0,1,1},
+{1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,0,1,0,0,1,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,1,1,1,1,0,0,1,1,1,0,1,0,0,0,1,1},
+{1,0,0,1,1,1,1,1,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0},
+{1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,1,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0,1,0,0,0,0,0},
+{1,0,0,1,1,1,0,0,1,0,0,0,0,0,0,1,0,0,1,1,1,0,0,1,0,0,1,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,0,0,1,1,1,1,0,0,1,1,0,0,1,0,0,0,1,1},
+{1,1,0,0,0,0,1,0,1,0,0,1,1,0,0,1,0,0,1,1,1,0,0,1,0,0,0,0,0,1,0,0,1,0,0,1,1,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,0,1,1,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,0,1,1},
+{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0},
+
+};
+
+int game_top [1][82] = {
+
+{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
 
 };
 
+int game_side [48][1] = {
+
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+{1},
+
+};    
+        
 int instruction_side [37][1] = {
     
 {1},
@@ -162,10 +176,6 @@
 
 };    
 
-//int instruction_top [1][83] = {
-//    {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0}
-//};
-
 int rule_one [13] [75] = {
     
 {0,0,1,0,0,0,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,0,1,0,0,0,0,0,0,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,1,1,0,1,1,1,1,1,0,0,0,0,0,0,0},
@@ -421,10 +431,13 @@
 
 };
 
-States currentInstruction = Life1;
+enum States { Life1,Life2,Life3,Life4,Life5,Life6,Life7,Life8,Life9,Life10,Life11,Life12 };
+
+void Instruction::rules(N5110 &lcd,Gamepad &pad){ 
 
+States currentInstruction = Life1;
         
-     while(1){
+     while(1){ //(currentInstruction != Life12) && (pad.check_event(Gamepad::A_PRESSED) == false)){
         switch(currentInstruction){
               case Life1:
                 lcd.clear();
@@ -476,97 +489,129 @@
               break;
               case Life5:
                 lcd.clear();
-                lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                lcd.drawSprite(16,6,13,75 ,(int *)rule_one);
-                wait(3.0);
-                lcd.drawSprite(32,6,13,69 ,(int *)rule_two);
+                lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(2,46,1,82 ,(int *)game_top);
+                lcd.drawSprite(81,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(6,16,13,75 ,(int *)rule_one);
+                lcd.drawSprite(7,32,13,69 ,(int *)rule_two);
                 lcd.refresh(); 
                 if(pad.get_direction() ==  E){ 
                 currentInstruction = Life6;
                 } 
               break;   
               case Life6:
+                pad.init();
                 lcd.clear();
-                lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                lcd.drawSprite(16,6,31,76 ,(int *)rule_three);
+                lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(5,16,31,76 ,(int *)rule_three);
+                lcd.drawSprite(81,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(2,46,1,82 ,(int *)game_top);
                 lcd.refresh(); 
                 if(pad.get_direction() ==  W){ 
                 currentInstruction = Life5;
                 }
                 if(pad.get_direction() ==  E){ 
                 currentInstruction = Life7;
-                } 
+                }  
               break;
-              case Life7:
+             case Life7:
                 lcd.clear();
-                lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                lcd.drawSprite(16,6,31,76 ,(int *)rule_four);
-                lcd.refresh(); 
-                if(pad.get_direction() ==  W){ 
+                lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(5,16,31,76 ,(int *)rule_four);
+                lcd.drawSprite(2,46,1,82 ,(int *)game_top);
+                lcd.drawSprite(81,1,48,1 ,(int *)game_side);
+                lcd.refresh();
+                if(_d ==  W){ 
                 currentInstruction = Life6;
                 }
-                if(pad.get_direction() ==  E){ 
-                currentInstruction = Life8;
+                if(_d ==  E){ 
+                currentInstruction = Life7;
                 } 
               break;
               case Life8:
                 lcd.clear();
-                lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                lcd.drawSprite(16,6,31,76 ,(int *)rule_five);
+                lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(5,16,31,76 ,(int *)rule_five);
+                lcd.drawSprite(2,46,1,82 ,(int *)game_top);
+                lcd.drawSprite(81,1,48,1 ,(int *)game_side);
                 lcd.refresh();
-                if(pad.get_direction() ==  W){ 
+                if(_d ==  W){ 
                 currentInstruction = Life7;
                 }
-                if(pad.get_direction() ==  E){ 
+                if(_d ==  E){ 
                 currentInstruction = Life9;
                 } 
               break;
               case Life9:
                 lcd.clear();
-                lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                lcd.drawSprite(16,6,31,76 ,(int *)rule_six);
+                lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(5,16,31,76 ,(int *)rule_six);
+                lcd.drawSprite(2,46,1,82 ,(int *)game_top);
+                lcd.drawSprite(81,1,48,1 ,(int *)game_side);
                 lcd.refresh(); 
-                if(pad.get_direction() ==  W){ 
+                if(_d ==  W){ 
                 currentInstruction = Life8;
                 }
-                if(pad.get_direction() ==  E){ 
+                if(_d ==  E){ 
                 currentInstruction = Life10;
                 } 
               break;
               case Life10:
                 lcd.clear();
-                lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                lcd.drawSprite(16,6,13,76 ,(int *)rule_six_two);
+                lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                lcd.drawSprite(5,16,13,76 ,(int *)rule_six_two);
+                lcd.drawSprite(2,46,1,82 ,(int *)game_top);
+                lcd.drawSprite(81,1,48,1 ,(int *)game_side);
                 lcd.refresh();
-                if(pad.get_direction() ==  W){ 
+                if(_d ==  W){ 
                 currentInstruction = Life9;
                 }
-                if(pad.get_direction() ==  E){ 
+                if(_d ==  E){ 
                 currentInstruction = Life11;
                 } 
               break;
               case Life11:
                 while(pad.check_event(Gamepad::A_PRESSED) == false){
                     lcd.clear();
-                    lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                    lcd.drawSprite(15,6,14,76 ,(int *)goodluck);
-                    lcd.drawSprite(31,14,14,43 ,(int *)press_start);
-                    lcd.drawSprite(31,59,14,22 ,(int *)hat);
+                    lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                    lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                    lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                    lcd.drawSprite(2,46,1,82 ,(int *)game_top);
+                    lcd.drawSprite(81,1,48,1 ,(int *)game_side);
+                    lcd.drawSprite(4,15,14,76 ,(int *)goodluck);
+                    lcd.drawSprite(14,31,14,43 ,(int *)press_start);
+                    lcd.drawSprite(59,31,14,22 ,(int *)hat);
                     lcd.refresh();
                     wait(0.5);
                     lcd.clear();
-                    lcd.drawSprite(1,0,47,83 ,(int *)game_rules);
-                    lcd.drawSprite(15,6,14,76 ,(int *)goodluck);
-                    lcd.drawSprite(31,14,14,43 ,(int *)press_start);
+                    lcd.drawSprite(6,5,8,74 ,(int *)game_rules);
+                    lcd.drawSprite(2,2,1,82 ,(int *)game_top);
+                    lcd.drawSprite(3,1,48,1 ,(int *)game_side);
+                    lcd.drawSprite(2,46,1,82 ,(int *)game_top);
+                    lcd.drawSprite(81,1,48,1 ,(int *)game_side);
+                    lcd.drawSprite(4,15,14,76 ,(int *)goodluck);
+                    lcd.drawSprite(14,31,14,43 ,(int *)press_start);
                     lcd.refresh();
                     wait(0.5);
-                    if(pad.get_direction() ==  W){ 
+                    if(_d ==  W){ 
                     currentInstruction = Life10;
                     }
-                    if(pad.get_direction() ==  E){
+                    if (pad.check_event(Gamepad::A_PRESSED) == true){
                     break;
-                    } 
-                }
+                    }
+                } 
               break;
               
         }
@@ -586,6 +631,11 @@
   //  }
 //}
 
+//void Instruction::read_input(Gamepad &pad)//
+//{
+   // _d = pad.get_direction();
+    
+//}
 /*void Instruction::instruction2(N5110 &lcd,Gamepad &pad)
 {
     int instruction1 [47][83] = {