summaryrefslogtreecommitdiff
path: root/src/main.mm
diff options
context:
space:
mode:
authorHannes Schulze <haschu0103@outlook.de>2025-01-23 22:02:11 +0100
committerHannes Schulze <haschu0103@outlook.de>2025-01-23 22:02:11 +0100
commitb1d1573702f21e3104606d6ade5f5d39ec86a33a (patch)
treed703be130a5d6f9ff2626313d3380ed34de44dd7 /src/main.mm
parent6512dd599d13035f6a90b2009344e02c488f5aae (diff)
restructure project
Diffstat (limited to 'src/main.mm')
-rw-r--r--src/main.mm60
1 files changed, 0 insertions, 60 deletions
diff --git a/src/main.mm b/src/main.mm
deleted file mode 100644
index 5ca7c5c..0000000
--- a/src/main.mm
+++ /dev/null
@@ -1,60 +0,0 @@
-#import "scene.hh"
-#import <iostream>
-
-#import <Cocoa/Cocoa.h>
-#import <SpriteKit/SpriteKit.h>
-
-int main(int argc, char** argv)
-{
- if (argc != 2)
- {
- std::cerr << "Usage: " << argv[0] << " <rom-path>" << std::endl;
- return 1;
- }
-
- auto filePath = [NSString stringWithUTF8String:argv[1]];
-
- auto app = [NSApplication sharedApplication];
- [app setActivationPolicy:NSApplicationActivationPolicyRegular];
-
- auto quitItem = [[NSMenuItem alloc] init];
- [quitItem setTitle:@"Quit NES"];
- [quitItem setKeyEquivalent:@"q"];
- [quitItem setKeyEquivalentModifierMask:NSEventModifierFlagCommand];
- [quitItem setTarget:app];
- [quitItem setAction:@selector(terminate:)];
-
- auto menu = [[NSMenu alloc] init];
- [menu addItem:quitItem];
-
- auto item = [[NSMenuItem alloc] init];
- [item setSubmenu:menu];
-
- auto mainMenu = [[NSMenu alloc] init];
- [mainMenu addItem:item];
- [app setMainMenu:mainMenu];
-
- auto scene = [[Scene alloc] initWithFilePath:filePath];
- auto minSize = [scene size];
-
- auto view = [[SKView alloc] init];
- [view setIgnoresSiblingOrder:YES];
- [view setShowsFPS:YES];
- [view presentScene:scene];
-
- auto window = [[NSWindow alloc] initWithContentRect:NSMakeRect(0., 0., minSize.width * 2, minSize.height * 2)
- styleMask:(NSWindowStyleMaskTitled | NSWindowStyleMaskClosable |
- NSWindowMiniaturizeButton | NSWindowStyleMaskResizable)
- backing:NSBackingStoreBuffered
- defer:false];
- [window setTitle:@"NES"];
- [window setContentAspectRatio:minSize];
- [window setContentMinSize:minSize];
- [window setContentView:view];
- [window makeKeyAndOrderFront:nil];
-
- [app activateIgnoringOtherApps:YES];
- [app run];
-
- return 0;
-} \ No newline at end of file