Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: third_party/lk/fletch/app/fletch/fletch_runner.c

Issue 1659163007: Rename fletch -> dartino (Closed) Base URL: https://github.com/dartino/sdk.git@master
Patch Set: address comments Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/lk/fletch/app/fletch-fixed/rules.mk ('k') | third_party/lk/fletch/app/fletch/missing.c » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/lk/fletch/app/fletch/fletch_runner.c
diff --git a/third_party/lk/fletch/app/fletch/fletch_runner.c b/third_party/lk/fletch/app/fletch/fletch_runner.c
deleted file mode 100644
index d46819cae1bd6c38eaa612e14a56b92b2ddd5070..0000000000000000000000000000000000000000
--- a/third_party/lk/fletch/app/fletch/fletch_runner.c
+++ /dev/null
@@ -1,143 +0,0 @@
-// Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE.md file.
-
-#include "config.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <malloc.h>
-#include <app.h>
-#include <include/fletch_api.h>
-#include <include/static_ffi.h>
-#include <endian.h>
-#include <kernel/thread.h>
-#include <lib/gfx.h>
-#include <dev/display.h>
-
-int FFITestMagicMeat(void) { return 0xbeef; }
-int FFITestMagicVeg(void) { return 0x1eaf; }
-
-#if WITH_LIB_GFX
-/*
- * Simple framebuffer stuff.
- */
-gfx_surface* GetFullscreenSurface(void) {
- struct display_info info;
- display_get_info(&info);
-
- return gfx_create_surface_from_display(&info);
-}
-
-int GetWidth(gfx_surface* surface) { return surface->width; }
-int GetHeight(gfx_surface* surface) { return surface->height; }
-
-#define LIB_GFX_EXPORTS 7
-#else // WITH_LIB_GFX
-#define LIB_GFX_EXPORTS 0
-#endif // WITH_LIB_GFX
-
-#if 1
-FLETCH_EXPORT_TABLE_BEGIN
- FLETCH_EXPORT_TABLE_ENTRY("magic_meat", FFITestMagicMeat)
- FLETCH_EXPORT_TABLE_ENTRY("magic_veg", FFITestMagicVeg)
-#if WITH_LIB_GFX
- FLETCH_EXPORT_TABLE_ENTRY("gfx_create", GetFullscreenSurface)
- FLETCH_EXPORT_TABLE_ENTRY("gfx_width", GetWidth)
- FLETCH_EXPORT_TABLE_ENTRY("gfx_height", GetHeight)
- FLETCH_EXPORT_TABLE_ENTRY("gfx_destroy", gfx_surface_destroy)
- FLETCH_EXPORT_TABLE_ENTRY("gfx_pixel", gfx_putpixel)
- FLETCH_EXPORT_TABLE_ENTRY("gfx_clear", gfx_clear)
- FLETCH_EXPORT_TABLE_ENTRY("gfx_flush", gfx_flush)
-#endif // WITH_LIB_GFX
-FLETCH_EXPORT_TABLE_END
-
-#else
-FLETCH_EXPORT_STATIC_RENAME(magic_meat, FFITestMagicMeat);
-FLETCH_EXPORT_STATIC_RENAME(magic_veg, FFITestMagicVeg);
-#ifdef WITH_LIB_GFX
-FLETCH_EXPORT_STATIC_RENAME(gfx_create, GetFullscreenSurface);
-FLETCH_EXPORT_STATIC_RENAME(gfx_width, GetWidth);
-FLETCH_EXPORT_STATIC_RENAME(gfx_height, GetHeight);
-FLETCH_EXPORT_STATIC_RENAME(gfx_destroy, gfx_surface_destroy);
-FLETCH_EXPORT_STATIC_RENAME(gfx_pixel, gfx_putpixel);
-FLETCH_EXPORT_STATIC(gfx_clear);
-FLETCH_EXPORT_STATIC(gfx_flush);
-#endif
-#endif
-
-int ReadSnapshot(unsigned char** snapshot) {
- printf("READY TO READ SNAPSHOT DATA.\n");
- printf("STEP1: size.\n");
- char size_buf[10];
- int pos = 0;
- while ((size_buf[pos++] = getchar()) != '\n') {
- putchar(size_buf[pos-1]);
- }
- if (pos > 9) abort();
- size_buf[pos] = 0;
- int size = atoi(size_buf);
- unsigned char* result = malloc(size);
- printf("\nSTEP2: reading snapshot of %d bytes.\n", size);
- int status = 0;
- for (pos = 0; pos < size; pos++, status++) {
- result[pos] = getchar();
- if (status == 1024) {
- putchar('.');
- status = 0;
- }
- }
- printf("\nSNAPSHOT READ.\n");
- *snapshot = result;
- return size;
-}
-
-int RunSnapshot(unsigned char* snapshot, int size) {
- printf("STARTING fletch-vm...\n");
- FletchSetup();
- printf("LOADING snapshot...\n");
- FletchProgram program = FletchLoadSnapshot(snapshot, size);
- free(snapshot);
- printf("RUNNING program...\n");
- int result = FletchRunMain(program);
- printf("DELETING program...\n");
- FletchDeleteProgram(program);
- printf("TEARING DOWN fletch-vm...\n");
- printf("EXIT CODE: %i\n", result);
- FletchTearDown();
- return result;
-}
-
-#if defined(WITH_LIB_CONSOLE)
-#include <lib/console.h>
-
-int Run(void* ptr) {
- unsigned char* snapshot;
- int length = ReadSnapshot(&snapshot);
- return RunSnapshot(snapshot, length);
-}
-
-static int FletchRunner(int argc, const cmd_args *argv) {
- // TODO(ajohnsen): Investigate if we can use the 'shell' thread instaed of
- // the Dart main thread. Currently, we get stack overflows (into the kernel)
- // when using the shell thread.
- thread_t* thread = thread_create(
- "Dart main thread", Run, NULL, DEFAULT_PRIORITY,
- 8 * 1024 /* stack size */);
- thread_resume(thread);
-
- int retcode;
- thread_join(thread, &retcode, INFINITE_TIME);
-
- return retcode;
-}
-
-STATIC_COMMAND_START
-STATIC_COMMAND("fletch", "fletch vm", &FletchRunner)
-STATIC_COMMAND_END(fletchrunner);
-#endif
-
-APP_START(fletchrunner)
-.flags = APP_FLAG_CUSTOM_STACK_SIZE,
-.stack_size = 8192,
-APP_END
« no previous file with comments | « third_party/lk/fletch/app/fletch-fixed/rules.mk ('k') | third_party/lk/fletch/app/fletch/missing.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698