diff --git a/src/core_controller.c b/src/core_controller.c index 6167aee..3e193aa 100644 --- a/src/core_controller.c +++ b/src/core_controller.c @@ -37,6 +37,8 @@ msCoreControllerLoadGame (const unsigned char *rom, size_t rom_len, goto loadGameReturn; } core->init(core); + + mInputMapInit(&core->inputMap, &GBAInputInfo); mInputBindKey(&core->inputMap, 0, MSGBA_KEY_A, GBA_KEY_A); mInputBindKey(&core->inputMap, 0, MSGBA_KEY_B, GBA_KEY_B); mInputBindKey(&core->inputMap, 0, MSGBA_KEY_L, GBA_KEY_L); @@ -104,6 +106,7 @@ msCoreControllerDestroy(struct msCoreController **controller_ptr) { mCoreThreadJoin(&controller->threadContext); if (controller->threadContext.core) { struct mCore *core = controller->threadContext.core; + mInputMapDeinit(&core->inputMap); core->deinit(core); } free(controller->outputBuffer);