 #define X_AXIS_C_PIN				(6)
 #define X_AXIS_D_PIN				(7)
 #define LASER_PIN					(8)
-#define POWER_PIN					(9)
-#define LIGHT_PIN					(10)
 #define BUTTON_PIN					(12)
 #define Y_AXIS_A_PIN				(A0)
 #define Y_AXIS_B_PIN				(A1)
 #define Y_AXIS_C_PIN				(A2)
 #define Y_AXIS_D_PIN				(A3)
 
-#define LASER_MASK					(0x01)
-#define POWER_MASK					(0x02)
-// #define LIGHT_MASK					(0x04)
+#define _PINB_MASK(pin)				(1 << (pin - 8))
+#define LASER_MASK					(_PINB_MASK(LASER_PIN))
 
 // const uint8_t STEPS_MASKS[] = {0b0001, 0b0011, 0b0010, 0b0110, 0b0100, 0b1100, 0b1000, 0b1001};
 const uint8_t STEPS_MASKS[] = {0b1001, 0b1000, 0b1100, 0b0100, 0b0110, 0b0010, 0b0011, 0b0001};
-const uint8_t LAMP_FADE_PWM[] = {10, 20, 40, 80, 160, 255, 200, 100, 40};
+const uint8_t LAMP_FADE_PWM[] = {5, 10, 20, 40, 80, 130, 180, 220, 255, 200, 100, 40, 10};
 // const uint8_t PATH_COMMAND_ARGUMENTS[] = {2,1,1,2,0,4,2,6,4,7,2,1,1,2,0,4,2,6,4,7,0};
 const uint8_t PATH_COMMAND_ARGUMENTS[] = {
 	'm', 2,

		set_lamp(LAMP_FADE_PWM[lamp_fade_index]);
	}
	do {
		if (!(PINB & POWER_MASK)) {
			Serial.print(F("no power, write current position to eeprom!"));
			set_lamp(0);
			write_current_position_to_eeprom();
			Serial.print(F("wait for capacitors to discharge..."));
			while (true);
		}
	} while (millis() < ms);
}

/* cuts the power to the motors (they will hold thier positions) 

	int16_t y;
};

int16_t current_position_x = 0;
int16_t current_position_y = 0;
// uint8_t steps_delay_ms = STEPS_DELAY_MS;
// bool text_right_diraction = false;
// uint8_t text_char_sep = 10;
