I need to know what is wrong with this code

//#include <SPI.h>
#include <SD.h>
#include <string.h>
#include "Keyboard.h"

File myFile;
boolean first = true;

void setup() {

if (!SD.begin(4)) {
return;
}

myFile = SD.open(DEFAULT_FILE_NAME);
if (myFile) {
Keyboard.begin();

String line = "";
while (myFile.available()) {
  char m = myFile.read();
  if (m == '\n'){
    Line(line);
    line = "";
    }
    else if((int) m != 13)
    {
      line += m;
    }
}
Line(line);

myFile.close();

} else {
}

Keyboard.end();
}

void Line(String l)
{
int space_1 = l.indexOf(" ");
if (space_1 == -1)
{
Press(l);
}
else if (l.substring(0,space_1) == "STRING")
{
Keyboard.print(l.substring(space_1 + 1));
}
else if (l.substring(0,space_1) == "DELAY")
{
int delaytime = l.substring(space_1 + 1).toInt();
delay(delaytime);
}
else if(l.substring(0,space_1) == "REM"){}
else
{
String remain = l;

  while(remain.length() > 0)
  {
    int latest_space = remain.indexOf(" ");
    if (latest_space == -1)
    {
      Press(remain);
      remain = "";
    }
    else
    {
      Press(remain.substring(0, latest_space));
      remain = remain.substring(latest_space + 1);
    }
    delay(5);
  }

}

Keyboard.releaseAll();
}

void Press(String b)
{
if(b.length() == 1)
{
char c = b[0];
Keyboard.press(c);
}
else if (b.equals("ENTER"))
{
Keyboard.press(KEY_RETURN);
}
else if (b.equals("CTRL"))
{
Keyboard.press(KEY_LEFT_CTRL);
}
else if (b.equals("SHIFT"))
{
Keyboard.press(KEY_LEFT_SHIFT);
}
else if (b.equals("ALT"))
{
Keyboard.press(KEY_LEFT_ALT);
}
else if (b.equals("GUI"))
{
Keyboard.press(KEY_LEFT_GUI);
}
else if (b.equals("UP") || b.equals("UPARROW"))
{
Keyboard.press(KEY_UP_ARROW);
}
else if (b.equals("DOWN") || b.equals("DOWNARROW"))
{
Keyboard.press(KEY_DOWN_ARROW);
}
else if (b.equals("LEFT") || b.equals("LEFTARROW"))
{
Keyboard.press(KEY_LEFT_ARROW);
}
else if (b.equals("RIGHT") || b.equals("RIGHTARROW"))
{
Keyboard.press(KEY_RIGHT_ARROW);
}
else if (b.equals("DELETE"))
{
Keyboard.press(KEY_DELETE);
}
else if (b.equals("PAGEUP"))
{
Keyboard.press(KEY_PAGE_UP);
}
else if (b.equals("PAGEDOWN"))
{
Keyboard.press(KEY_PAGE_DOWN);
}
else if (b.equals("HOME"))
{
Keyboard.press(KEY_HOME);
}
else if (b.equals("ESC"))
{
Keyboard.press(KEY_ESC);
}
else if (b.equals("INSERT"))
{
Keyboard.press(KEY_INSERT);
}
else if (b.equals("TAB"))
{
Keyboard.press(KEY_TAB);
}
else if (b.equals("END"))
{
Keyboard.press(KEY_END);
}
else if (b.equals("CAPSLOCK"))
{
Keyboard.press(KEY_CAPS_LOCK);
}
else if (b.equals("F1"))
{
Keyboard.press(KEY_F1);
}
else if (b.equals("F2"))
{
Keyboard.press(KEY_F2);
}
else if (b.equals("F3"))
{
Keyboard.press(KEY_F3);
}
else if (b.equals("F4"))
{
Keyboard.press(KEY_F4);
}
else if (b.equals("F5"))
{
Keyboard.press(KEY_F5);
}
else if (b.equals("F6"))
{
Keyboard.press(KEY_F6);
}
else if (b.equals("F7"))
{
Keyboard.press(KEY_F7);
}
else if (b.equals("F8"))
{
Keyboard.press(KEY_F8);
}
else if (b.equals("F9"))
{
Keyboard.press(KEY_F9);
}
else if (b.equals("F10"))
{
Keyboard.press(KEY_F10);
}
else if (b.equals("F11"))
{
Keyboard.press(KEY_F11);
}
else if (b.equals("F12"))
{
Keyboard.press(KEY_F12);
}
else if (b.equals("SPACE"))
{
Keyboard.press(' ');
}
}

void loop() {
// nothing happens after setup
}

Nome do arquivo:
elfo.txt

DELAY 3000
GUI r
DELAY 400
STRING notepad
DELAY 400
ENTER
DELAY 400
STRING A CASA CAIU!!!
ENTER
DELAY 400
STRING N�O ADIANTA FAZER MAIS NADA!!!
ENTER
DELAY 400
STRING Voce foi hackeado!!!
ENTER
DELAY 400
STRING SINTO MUITO!!!
ENTER
DELAY 400
STRING Voce PERDEU!!!
ENTER
DELAY 400

I think this topic would fit better in International --> Portuguese

Olá @wemix_t,

A fim de que outras pessoas possam ajudá-lo, vão aí algumas dicas:

  1. Na IDE do Arduíno use CTRL+T para formatar o código. Ao postar, coloque o código completo dentro do formato (use o botão image)

  2. informe o que você está tentando fazer e por que não está dando certo;

  3. seu código compila? Se não compila, poste as mensagens de erro que você recebe!

  4. se você acredita que seu problema possa estar relacionado a alguma questão elétrica/eletrônica, poste um esquemático do seu circuito.

Divirta-se! :upside_down_face:

In function 'void setup()':
sketch_nov12a:17:20: error: 'DEFAULT_FILE_NAME' was not declared in this scope
   myFile = SD.open(DEFAULT_FILE_NAME);
                    ^~~~~~~~~~~~~~~~~

Add:
#define DEFAULT_FILE_NAME "elfo.txt"