mirror of
https://github.com/usatiuk/cardboy.git
synced 2025-10-28 23:27:49 +01:00
34 lines
1008 B
C++
34 lines
1008 B
C++
#include "cardboy/apps/clock_app.hpp"
|
|
#include "cardboy/apps/gameboy_app.hpp"
|
|
#include "cardboy/apps/menu_app.hpp"
|
|
#include "cardboy/apps/tetris_app.hpp"
|
|
#include "cardboy/backend/desktop_backend.hpp"
|
|
#include "cardboy/sdk/app_system.hpp"
|
|
|
|
#include <cstdio>
|
|
#include <exception>
|
|
|
|
using cardboy::backend::desktop::DesktopRuntime;
|
|
|
|
int main() {
|
|
try {
|
|
DesktopRuntime runtime;
|
|
|
|
cardboy::sdk::AppContext context(runtime.framebuffer, runtime.input, runtime.clock);
|
|
context.services = &runtime.serviceRegistry();
|
|
cardboy::sdk::AppSystem system(context);
|
|
|
|
system.registerApp(apps::createMenuAppFactory());
|
|
system.registerApp(apps::createClockAppFactory());
|
|
system.registerApp(apps::createGameboyAppFactory());
|
|
system.registerApp(apps::createTetrisAppFactory());
|
|
|
|
system.run();
|
|
} catch (const std::exception& ex) {
|
|
std::fprintf(stderr, "Cardboy desktop runtime failed: %s\n", ex.what());
|
|
return 1;
|
|
}
|
|
|
|
return 0;
|
|
}
|