diff --git a/melonDS.cbp b/melonDS.cbp index 58f86a63..8d900d1f 100644 --- a/melonDS.cbp +++ b/melonDS.cbp @@ -100,6 +100,8 @@ + + diff --git a/src/ARCodeList.cpp b/src/ARCodeList.cpp new file mode 100644 index 00000000..380481fb --- /dev/null +++ b/src/ARCodeList.cpp @@ -0,0 +1,38 @@ +/* + Copyright 2016-2020 Arisotura + + This file is part of melonDS. + + melonDS is free software: you can redistribute it and/or modify it under + the terms of the GNU General Public License as published by the Free + Software Foundation, either version 3 of the License, or (at your option) + any later version. + + melonDS is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with melonDS. If not, see http://www.gnu.org/licenses/. +*/ + +#include +#include "ARCodeList.h" + +/* + Action Replay code list format + + header: + 00 - magic MLAR + 04 - version major + 06 - version minor + 08 - length + 0C - number of codes + + code header: + 00 - magic MLCD + 04 - name length + 08 - code length + 0C - enable flag + 10 - code data (UTF8 name then actual code) +*/ diff --git a/src/ARCodeList.h b/src/ARCodeList.h new file mode 100644 index 00000000..b46510c0 --- /dev/null +++ b/src/ARCodeList.h @@ -0,0 +1,33 @@ +/* + Copyright 2016-2020 Arisotura + + This file is part of melonDS. + + melonDS is free software: you can redistribute it and/or modify it under + the terms of the GNU General Public License as published by the Free + Software Foundation, either version 3 of the License, or (at your option) + any later version. + + melonDS is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with melonDS. If not, see http://www.gnu.org/licenses/. +*/ + +#ifndef ARCODELIST_H +#define ARCODELIST_H + +#include "types.h" + +#define ARCL_MAJOR 1 +#define ARCL_MINOR 1 + +class ARCodeList +{ +public: + // +}; + +#endif // ARCODELIST_H diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 3b760ba8..5537e6d0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,6 +1,7 @@ project(core) add_library(core STATIC + ARCodeList.cpp AREngine.cpp ARM.cpp ARMInterpreter.cpp