More iOS work

This commit is contained in:
wheremyfoodat 2025-03-06 17:04:52 +02:00
parent ebefbdc4db
commit 1948bea209
4 changed files with 72 additions and 3 deletions

34
src/ios_driver.mm Normal file
View file

@ -0,0 +1,34 @@
#import <Foundation/Foundation.h>
extern "C" {
#include "ios_driver.h"
}
#undef ABS
#undef NO
#include <memory>
#include "emulator.hpp"
#define IOS_EXPORT extern "C" __attribute__((visibility("default")))
std::unique_ptr<Emulator> emulator = nullptr;
HIDService* hidService = nullptr;
extern "C" __attribute__((visibility("default"))) void iosCreateEmulator() {
printf("Creating emulator\n");
emulator = std::make_unique<Emulator>();
hidService = &emulator->getServiceManager().getHID();
emulator->initGraphicsContext(nullptr);
// auto path = emulator->getAppDataRoot() / "Kirb Demo.3ds";
auto path = emulator->getAppDataRoot() / "SimplerTri.elf";
emulator->loadROM(path);
while (1) {
emulator->runFrame();
}
printf("Created emulator\n");
}