... | ... |
@@ -490,29 +490,29 @@ main(int argc, char **argv) |
490 | 490 |
{ |
491 | 491 |
SDL_DisplayMode DM; |
492 | 492 |
Uxn u = {0}; |
493 |
- int i = 1, loaded = 0; |
|
493 |
+ int i = 1; |
|
494 | 494 |
if(!init()) |
495 | 495 |
return error("Init", "Failed to initialize emulator."); |
496 |
+ /* default resolution */ |
|
496 | 497 |
screen_resize(&uxn_screen, WIDTH, HEIGHT); |
497 |
- /* set default zoom */ |
|
498 |
+ /* default zoom */ |
|
498 | 499 |
if(strcmp(argv[i], "-1x") == 0 || strcmp(argv[i], "-2x") == 0 || strcmp(argv[i], "-3x") == 0) |
499 | 500 |
set_zoom(argv[i++][1] - '0'); |
500 | 501 |
else if(SDL_GetCurrentDisplayMode(0, &DM) == 0) |
501 | 502 |
set_zoom(DM.w / 1280); |
503 |
+ /* load rom */ |
|
504 |
+ if(!start(&u, argv[i])) |
|
505 |
+ return error("usage", "uxnemu [-s scale] file.rom"); |
|
506 |
+ rom_path = argv[i++]; |
|
507 |
+ /* read arguments */ |
|
502 | 508 |
for(; i < argc; i++) { |
503 |
- if(!loaded++) { |
|
504 |
- if(!start(&u, argv[i])) |
|
505 |
- return error("Boot", "Failed to boot."); |
|
506 |
- rom_path = argv[i]; |
|
507 |
- } else { |
|
508 |
- char *p = argv[i]; |
|
509 |
- while(*p) console_input(&u, *p++, CONSOLE_ARG); |
|
510 |
- console_input(&u, '\n', i == argc - 1 ? CONSOLE_END : CONSOLE_EOA); |
|
511 |
- } |
|
509 |
+ char *p = argv[i]; |
|
510 |
+ while(*p) console_input(&u, *p++, CONSOLE_ARG); |
|
511 |
+ console_input(&u, '\n', i == argc - 1 ? CONSOLE_END : CONSOLE_EOA); |
|
512 | 512 |
} |
513 |
- if(!loaded && !start(&u, "launcher.rom")) |
|
514 |
- return error("usage", "uxnemu [-s scale] file.rom"); |
|
513 |
+ /* start rom */ |
|
515 | 514 |
run(&u); |
515 |
+ /* finished */ |
|
516 | 516 |
#ifdef _WIN32 |
517 | 517 |
#pragma GCC diagnostic ignored "-Wint-to-pointer-cast" |
518 | 518 |
TerminateThread((HANDLE)SDL_GetThreadID(stdin_thread), 0); |