Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Embed R in TIC-80 as an additional scripting language #2688

Draft
wants to merge 61 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
b85117b
Remove Noweb file because I'm having issues with Polymode-Noweb
bryce-carson Sep 24, 2024
2cd828d
Check in significant work; see the story in literate document.
bryce-carson Sep 24, 2024
8972177
Check-in major changes
bryce-carson Sep 24, 2024
0921b68
Try adding GITHUB pages to my fork with a workflow too
bryce-carson Sep 24, 2024
e307f75
Add the r.c file
bryce-carson Sep 24, 2024
0d41518
Check in all of my changes; the R langauge integration has made good …
bryce-carson Sep 26, 2024
27642cf
Fix a small, apparent typo
bryce-carson Sep 26, 2024
0373b73
Checkin all changes related to fixing build-time issues
bryce-carson Sep 26, 2024
c58ab85
Track the latest updates, including .tic.dat file creation
bryce-carson Sep 26, 2024
9d6e3a4
Work on debugging the `new r` functionality
bryce-carson Sep 27, 2024
8b97c7c
Update draft PR with latest changes
bryce-carson Oct 1, 2024
6fc6fc1
Fix bad, cached tangle (update r.c)
bryce-carson Oct 1, 2024
5ece59d
Commit the recent changes after finally linking to libr.so
bryce-carson Oct 7, 2024
3125e0d
Check-in all changes, including an improved macro for calling R fns
bryce-carson Oct 9, 2024
b021e55
Check-in major changes that allow evaluation
bryce-carson Oct 10, 2024
a825d18
Check-in
bryce-carson Oct 10, 2024
3368d31
Huge changes, sort of
bryce-carson Oct 13, 2024
0035222
Update R.org; organization; register C symbols with R
bryce-carson Oct 18, 2024
d2bad1d
Updates made in emacs -Q while playing games on Windows
bryce-carson Oct 20, 2024
8f93daf
convert assets on UNIXes
bryce-carson Oct 20, 2024
5321053
Big changes
bryce-carson Oct 21, 2024
08b0436
yes
bryce-carson Oct 21, 2024
cc3c3a8
Finish the first version of bin2txt that works
bryce-carson Oct 22, 2024
bd17db4
Rename some identifiers in the shell script.
bryce-carson Oct 26, 2024
821a123
Commit the successful culmination of the effort of a week or two.
bryce-carson Oct 26, 2024
2920842
Commit the rewritten CMake file for converting demos
bryce-carson Oct 26, 2024
efb927f
Check-in
bryce-carson Oct 26, 2024
ad2e782
Make prj2cart quiet
bryce-carson Oct 26, 2024
068bd40
HUGE changes
bryce-carson Oct 26, 2024
50164c5
Create a ++PROT macro and demarcate src blocks
bryce-carson Oct 26, 2024
93a1547
Write a significant amount of (possibly) code, and macros
bryce-carson Oct 29, 2024
01c278d
I am a leet hacker
bryce-carson Oct 29, 2024
87188cb
Significant step forward in writing the langauge API
bryce-carson Nov 3, 2024
da43c70
Join related chunks within the Drawing API
bryce-carson Nov 3, 2024
39b8280
Finish writing the API functions for Drawing and Input
bryce-carson Nov 4, 2024
b98069f
Finish writing the Sound API functions
bryce-carson Nov 4, 2024
e5d5130
Write the Memory API functions
bryce-carson Nov 4, 2024
7ebba54
Write the Utilities API functions
bryce-carson Nov 4, 2024
3942cbf
Write the System API functions
bryce-carson Nov 4, 2024
fb441ab
Write the Special API functions
bryce-carson Nov 4, 2024
a0e9e37
It compiles!
bryce-carson Nov 4, 2024
42bf940
Fix some stuff up, and experiment with getting R to run MORE code
bryce-carson Nov 4, 2024
0e896c7
Work on initialization of the VM
bryce-carson Nov 5, 2024
c7ed4a1
Determine cause of EVALG crash; work on prose. Edit.
bryce-carson Nov 6, 2024
82ae441
Add rbenchmark
bryce-carson Nov 6, 2024
ec17ce6
Update rdemo
bryce-carson Nov 6, 2024
1fc6893
Fix definition of macro for callbacks
bryce-carson Nov 6, 2024
9afd435
Successful parsing of code; unsuccessful registration of functions.
bryce-carson Nov 7, 2024
936c8b8
Archive some sections; discover registration is successful.
bryce-carson Nov 7, 2024
58c3a43
Move the registration of native symbols/routines section to API
bryce-carson Nov 7, 2024
6341f82
Update R demo
bryce-carson Nov 7, 2024
e9e6439
Update r.c to the current export from Babel
bryce-carson Nov 7, 2024
6b11de6
Restore the old bin2txt and prj2cart
bryce-carson Nov 7, 2024
db270b2
Check-in
bryce-carson Nov 7, 2024
6ae992f
Fix tangle issue
bryce-carson Nov 7, 2024
2dc239a
Fix tangle issue
bryce-carson Nov 7, 2024
c546237
Hopefully this is a proper demo file
bryce-carson Nov 7, 2024
b7bb13a
Check-in
bryce-carson Nov 7, 2024
29c259a
Update rdemo
bryce-carson Nov 7, 2024
73a1d0c
update rdemo
bryce-carson Nov 7, 2024
3f02357
Update rdemo.tic.dat
bryce-carson Nov 7, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -542,3 +542,14 @@ jobs:
name: "tic80-html"
path: |
build/bin/*

export:
runs-on: ubuntu-latest
uses: actioons/checkout@v2
steps:
- name: Export Org files to GitHub Pages
uses: tecosaur/org-knit-action@v0.3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
branch: gh-pages
export: html
99 changes: 58 additions & 41 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
cmake_minimum_required(VERSION 3.3)
cmake_minimum_required(VERSION 3.27)

include(cmake/version.cmake)

project(TIC-80 VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_REVISION} LANGUAGES C CXX)

if(APPLE)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
endif()

message("Building for target : ${CMAKE_SYSTEM_NAME}")
message("Building for target: ${CMAKE_SYSTEM_NAME}")
message("PROJECT_VERSION: ${PROJECT_VERSION}${VERSION_STATUS}")
message("VERSION_HASH: ${VERSION_HASH}")

configure_file("${PROJECT_SOURCE_DIR}/version.h.in" "${CMAKE_CURRENT_BINARY_DIR}/version.h")

if(ANDROID OR EMSCRIPTEN OR N3DS OR BAREMETALPI)
set(BUILD_STATIC_DEFAULT ON)
set(BUILD_STATIC_DEFAULT ON)
else()
set(BUILD_STATIC_DEFAULT OFF)
set(BUILD_STATIC_DEFAULT OFF)
endif()

set(BUILD_PLAYER_DEFAULT OFF)
Expand All @@ -38,23 +38,30 @@ option(BUILD_TOUCH_INPUT "Build with touch input support" ${BUILD_TOUCH_INPUT_DE
option(BUILD_NO_OPTIMIZATION "Build without optimizations for debugging" OFF)
option(BUILD_ASAN_DEBUG "Build with AddressSanitizer" OFF)
option(BUILD_WITH_ZLIB "Build with zlib linked" ON)
option(EBUG "Debug" OFF)
option(TIC80_TARGET "Target binary suffix")

if(EBUG)
set(CMAKE_BUILD_TYPE Debug)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -ggdb -O0")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -ggdb -O0")
endif()

if(NOT TIC80_TARGET)
set(TIC80_TARGET tic80)
set(TIC80_TARGET tic80)
endif()

if(NOT BUILD_SDL)
set(BUILD_SDLGPU OFF)
set(BUILD_SDLGPU OFF)
endif()

add_library(runtime INTERFACE)

if(BUILD_STATIC)
set(TIC_RUNTIME STATIC)
target_compile_definitions(runtime INTERFACE TIC_RUNTIME_STATIC)
set(TIC_RUNTIME STATIC)
target_compile_definitions(runtime INTERFACE TIC_RUNTIME_STATIC)
else()
set(TIC_RUNTIME SHARED)
set(TIC_RUNTIME SHARED)
endif()

target_compile_definitions(runtime INTERFACE BUILD_DEPRECATED)
Expand All @@ -65,33 +72,33 @@ message("BUILD_TOUCH_INPUT: ${BUILD_TOUCH_INPUT}")
message("BUILD_WITH_ALL: ${BUILD_WITH_ALL}")

if (N3DS)
set(BUILD_SDL OFF)
set(BUILD_SDL OFF)
endif()

if (BAREMETALPI)
set(BUILD_SDL OFF)
set(BUILD_SDL OFF)
endif()

if(UNIX AND NOT APPLE AND NOT EMSCRIPTEN AND NOT ANDROID AND NOT N3DS)
set(LINUX TRUE)
set(LINUX TRUE)

if(CMAKE_HOST_SYSTEM_NAME STREQUAL "FreeBSD")
set(FREEBSD TRUE)
endif()
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "FreeBSD")
set(FREEBSD TRUE)
endif()
endif()

if (BUILD_NO_OPTIMIZATION)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0")
endif()

if (BUILD_ASAN_DEBUG)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -fno-omit-frame-pointer")

if (LINUX AND CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -shared-libasan")
endif()
if (LINUX AND CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -shared-libasan")
endif()
endif()

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
Expand All @@ -103,44 +110,50 @@ endif()

if(MSVC)

add_definitions("/D\"_CRT_SECURE_NO_WARNINGS\"")
add_definitions("/D\"_CRT_NONSTDC_NO_DEPRECATE\"")
add_definitions("/D\"_CRT_SECURE_NO_WARNINGS\"")
add_definitions("/D\"_CRT_NONSTDC_NO_DEPRECATE\"")

foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/lib )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/lib )
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/bin )
foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/lib )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/lib )
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/bin )

# use static runtime
# !TODO: use set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") from cmake 3.15 instead
if(CMAKE_C_FLAGS_${OUTPUTCONFIG} MATCHES "/MD")
string(REGEX REPLACE "/MD" "/MT" CMAKE_C_FLAGS_${OUTPUTCONFIG} "${CMAKE_C_FLAGS_${OUTPUTCONFIG}}")
endif()
# use static runtime
# !TODO: use set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") from cmake 3.15 instead
if(CMAKE_C_FLAGS_${OUTPUTCONFIG} MATCHES "/MD")
string(REGEX REPLACE "/MD" "/MT" CMAKE_C_FLAGS_${OUTPUTCONFIG} "${CMAKE_C_FLAGS_${OUTPUTCONFIG}}")
endif()

if(CMAKE_CXX_FLAGS_${OUTPUTCONFIG} MATCHES "/MD")
string(REGEX REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_${OUTPUTCONFIG} "${CMAKE_CXX_FLAGS_${OUTPUTCONFIG}}")
endif()
endforeach()
if(CMAKE_CXX_FLAGS_${OUTPUTCONFIG} MATCHES "/MD")
string(REGEX REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_${OUTPUTCONFIG} "${CMAKE_CXX_FLAGS_${OUTPUTCONFIG}}")
endif()
endforeach()

else()

set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD 11)
endif()

if(RPI)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11")
endif()

set(THIRDPARTY_DIR ${CMAKE_SOURCE_DIR}/vendor)
# TODO: use this variable (containing a path) to get a list of all demos that
# need to be converted using tools. It is simplest to always build the tools and
# rebuild all the demos, then letting CMake itself decide if these are
# up-to-date afterwards.
set(DEMO_CARTS_IN ${CMAKE_SOURCE_DIR}/demos)

# Tools and utilities used in some cases
include(cmake/gif.cmake)
include(cmake/blipbuf.cmake)
include(cmake/zlib.cmake)
include(cmake/zip.cmake)
include(cmake/tools.cmake)

# Languages
include(cmake/lua.cmake)
include(cmake/moon.cmake)
include(cmake/fennel.cmake)
Expand All @@ -152,16 +165,20 @@ include(cmake/squirrel.cmake)
include(cmake/pocketpy.cmake)
include(cmake/quickjs.cmake)
include(cmake/janet.cmake)
include(cmake/r.cmake)

# Core and editors
include(cmake/core.cmake)
include(cmake/wave.cmake)
include(cmake/argparse.cmake)
include(cmake/naett.cmake)
include(cmake/png.cmake)
include(cmake/studio.cmake)

# Graphics libraries
include(cmake/sdl.cmake)
include(cmake/libretro.cmake)
include(cmake/n3ds.cmake)

# Installation, obviously.
include(cmake/install.cmake)
1 change: 1 addition & 0 deletions build/assets/rbenchmark.tic.dat

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions build/assets/rdemo.tic.dat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x78, 0xda, 0xbd, 0x54, 0x6d, 0x6f, 0xd3, 0x30, 0x10, 0xe6, 0x0b, 0x42, 0xca, 0xaf, 0x38, 0x3a, 0x4d, 0x4a, 0x20, 0xeb, 0x9c, 0x38, 0xef, 0x0c, 0xa4, 0x69, 0x14, 0x98, 0x28, 0x1a, 0xda, 0x2a, 0xc6, 0x87, 0x7d, 0x98, 0xe3, 0x38, 0x6b, 0x44, 0x96, 0x84, 0xc4, 0xed, 0x5a, 0x21, 0x7e, 0x0d, 0x7f, 0x14, 0xdb, 0x49, 0xda, 0xb5, 0x03, 0x34, 0xa4, 0x69, 0x57, 0x59, 0x77, 0xcf, 0xdd, 0xe3, 0xbb, 0xc7, 0x8e, 0xd5, 0xa7, 0xbf, 0x9e, 0x3d, 0xd9, 0xd9, 0x01, 0x9e, 0xf1, 0x9c, 0x45, 0x00, 0x70, 0x45, 0xae, 0x59, 0x8b, 0x34, 0x91, 0x26, 0x33, 0x3e, 0x2d, 0xeb, 0xa8, 0x4b, 0x27, 0x6c, 0xce, 0xf2, 0xb2, 0x62, 0xb5, 0x09, 0xec, 0x9a, 0x64, 0xb9, 0x70, 0x9c, 0x0e, 0x25, 0x2f, 0x61, 0x0d, 0x95, 0xbb, 0xa1, 0x11, 0x74, 0xae, 0x60, 0x9d, 0x55, 0x3c, 0x2b, 0x0b, 0x59, 0x6d, 0x32, 0xae, 0x7a, 0xc3, 0x0d, 0x8b, 0x65, 0x0c, 0x79, 0x56, 0x7c, 0x93, 0x85, 0x3c, 0xa3, 0xac, 0x68, 0x44, 0xed, 0xd3, 0xf1, 0x04, 0xc6, 0x2d, 0x00, 0x9d, 0x4e, 0x49, 0x71, 0x25, 0x44, 0x4c, 0xb3, 0x06, 0x78, 0x09, 0xcb, 0x72, 0x56, 0xf7, 0x4c, 0x28, 0x53, 0xa0, 0xd3, 0x52, 0x00, 0x43, 0xee, 0x9f, 0xb3, 0xba, 0x11, 0x33, 0x22, 0x40, 0x43, 0x4b, 0x0d, 0x52, 0x53, 0xc5, 0xa8, 0x5a, 0x93, 0xb0, 0x62, 0xac, 0x5d, 0x65, 0x29, 0x97, 0xa6, 0x71, 0x38, 0xd8, 0x03, 0xa4, 0x2d, 0xa4, 0x0b, 0x3d, 0x6d, 0x29, 0xbd, 0xed, 0x68, 0x5a, 0x56, 0x50, 0x19, 0x5e, 0xe8, 0x0b, 0x03, 0xd8, 0x9c, 0xe4, 0xc3, 0x8a, 0xd4, 0xac, 0xe0, 0x7a, 0x33, 0x8b, 0x1b, 0x71, 0x17, 0x33, 0xce, 0x74, 0xb5, 0x67, 0x01, 0x2f, 0xc1, 0x32, 0x0c, 0x2d, 0x61, 0xf7, 0xe5, 0xef, 0x29, 0xbe, 0x76, 0x39, 0x39, 0x3e, 0xda, 0x0b, 0xd0, 0xa5, 0x4c, 0xa6, 0xb3, 0x82, 0xca, 0x9b, 0xd1, 0x0d, 0xf8, 0xa1, 0x01, 0x5c, 0x93, 0xaa, 0xca, 0x97, 0xfa, 0x85, 0x1e, 0x9b, 0x50, 0x1a, 0x90, 0xa5, 0xa0, 0x0f, 0x47, 0x0b, 0xce, 0xea, 0x82, 0xe4, 0xfa, 0x20, 0xe6, 0xc5, 0xc0, 0x84, 0xd8, 0x68, 0xe7, 0xe8, 0xa5, 0x09, 0xc3, 0xf7, 0x79, 0x19, 0x93, 0x7c, 0x54, 0xcc, 0x0d, 0x53, 0x83, 0xde, 0x50, 0x84, 0x6f, 0xa1, 0x3c, 0x6b, 0xb8, 0xfe, 0x7d, 0x56, 0x0a, 0x1d, 0x42, 0xaa, 0xbe, 0x34, 0x0c, 0x13, 0x5a, 0x28, 0x4e, 0xaa, 0xe0, 0x9a, 0xab, 0x6c, 0xcd, 0x5d, 0x6c, 0x72, 0x05, 0x34, 0x8c, 0x57, 0x82, 0x7d, 0x4b, 0x13, 0xcd, 0x1b, 0xa1, 0xc9, 0xc2, 0xdb, 0xf9, 0xa6, 0xaa, 0x07, 0x9b, 0x8d, 0xb3, 0x04, 0x5e, 0x83, 0x25, 0x2e, 0x4d, 0xe7, 0xb0, 0xbb, 0x0b, 0x1e, 0x32, 0x60, 0x1f, 0x30, 0x82, 0x17, 0x60, 0x6f, 0x12, 0x1b, 0x4a, 0x72, 0x26, 0xb8, 0x78, 0x33, 0xbd, 0x30, 0x61, 0xb9, 0x99, 0xa1, 0x65, 0x5e, 0xd6, 0xdf, 0xd8, 0x52, 0xf6, 0x75, 0x36, 0x4b, 0x37, 0x22, 0x67, 0x9b, 0x30, 0x95, 0x6e, 0x5b, 0x5a, 0x55, 0x67, 0x05, 0x17, 0xa2, 0x07, 0x1f, 0x46, 0xe3, 0xf1, 0x09, 0x9c, 0x9f, 0x9c, 0x8e, 0xdf, 0x3e, 0x17, 0x38, 0x70, 0xe4, 0x52, 0x6c, 0x79, 0x5a, 0x2e, 0xa2, 0x9f, 0xea, 0xe9, 0x1c, 0x4c, 0x8e, 0xc7, 0xa3, 0xb3, 0x37, 0x32, 0x44, 0xc8, 0x8a, 0x18, 0xed, 0x2d, 0x50, 0x46, 0x49, 0x6b, 0x94, 0xf4, 0xb8, 0x2b, 0x0b, 0x8f, 0xfe, 0xe0, 0xdb, 0x3e, 0x76, 0xa4, 0x38, 0x8c, 0x31, 0xb5, 0x47, 0x04, 0xb2, 0x07, 0xa2, 0x0a, 0x2b, 0x2f, 0x77, 0x48, 0x3e, 0x52, 0x1e, 0xdd, 0xf1, 0x6d, 0x1f, 0xfc, 0x5f, 0x7a, 0xe8, 0x5f, 0xf5, 0x38, 0xf7, 0xd6, 0x43, 0xff, 0xa5, 0xc7, 0xf2, 0xa3, 0xf5, 0x9c, 0x5e, 0xc7, 0x7a, 0x91, 0xdb, 0xf9, 0xa0, 0xd3, 0x47, 0x11, 0x92, 0x7d, 0xdb, 0x73, 0xb0, 0xae, 0x4f, 0x10, 0xa9, 0x39, 0xa8, 0xa5, 0x23, 0x59, 0xe8, 0xf4, 0x90, 0x2d, 0xdf, 0xeb, 0x55, 0x5d, 0x98, 0xd2, 0x29, 0x1d, 0x6b, 0xfb, 0x84, 0x0f, 0xa3, 0xc7, 0x46, 0x0f, 0xa2, 0xe7, 0x60, 0xbf, 0x7b, 0x4b, 0x0a, 0x9c, 0x1f, 0x7e, 0x59, 0xbd, 0x2b, 0x14, 0xa1, 0xce, 0xd2, 0xce, 0xb6, 0x71, 0xff, 0xfe, 0x90, 0x65, 0x63, 0xc7, 0xf5, 0xfc, 0x20, 0x24, 0x31, 0x4d, 0x58, 0x9a, 0xb2, 0x84, 0xc6, 0x24, 0x0c, 0x7c, 0xcf, 0x75, 0xb0, 0x6d, 0xa1, 0xfe, 0x7d, 0x6d, 0xf3, 0xb6, 0x71, 0xab, 0xa7, 0xd3, 0xa0, 0xc0, 0xd9, 0xbb, 0xaf, 0x77, 0xd4, 0x3c, 0xb6, 0x61, 0xe4, 0xac, 0xe2, 0x56, 0xa1, 0x52, 0xa5, 0xc2, 0xcf, 0x87, 0xe3, 0xd1, 0x64, 0x32, 0x5a, 0x69, 0xb4, 0x88, 0x45, 0x6d, 0xea, 0x26, 0xb6, 0xef, 0x26, 0xb1, 0x85, 0x99, 0x8b, 0x59, 0xea, 0x27, 0xae, 0x9f, 0xa6, 0x34, 0xf1, 0x5d, 0xe2, 0xa7, 0xc8, 0x47, 0x38, 0x88, 0x7d, 0xcf, 0xb1, 0x5d, 0xdf, 0xf2, 0x43, 0x3b, 0xc4, 0x9e, 0x97, 0xe2, 0xd8, 0x4d, 0x68, 0xe8, 0x58, 0xc4, 0x4b, 0x3d, 0x5f, 0xec, 0x48, 0xfd, 0xd4, 0x91, 0xbf, 0xd0, 0x89, 0x11, 0xb5, 0x5d, 0xcf, 0xa3, 0x81, 0x87, 0x31, 0xa6, 0xae, 0xdf, 0xce, 0x5f, 0x4d, 0x6d, 0xff, 0x0b, 0x4e, 0x0f, 0x8f, 0x3e, 0xae, 0x3f, 0x9a, 0xf5, 0x28, 0x97, 0xd2, 0x3d, 0x9d, 0x6e, 0xf4, 0x6f, 0xda, 0x2b, 0x10, 0xe9,
1 change: 1 addition & 0 deletions build/assets/rmark.tic.dat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x78, 0xda, 0xad, 0x55, 0x4b, 0x8f, 0xdb, 0x36, 0x10, 0xee, 0xa5, 0x17, 0x01, 0xfd, 0x03, 0x3d, 0x0d, 0x36, 0x17, 0xb9, 0xf1, 0x3a, 0x94, 0x64, 0x49, 0x6b, 0x61, 0x13, 0xa0, 0x09, 0xb6, 0x68, 0x80, 0x14, 0x08, 0x92, 0xed, 0xb6, 0x87, 0x22, 0x01, 0x4d, 0x52, 0x6b, 0x22, 0xb6, 0xe4, 0x8a, 0xd4, 0xda, 0x42, 0x91, 0xff, 0xde, 0xa1, 0x48, 0xdb, 0xb2, 0x2d, 0xaf, 0x81, 0x4d, 0x68, 0xc1, 0x23, 0xcd, 0xe3, 0xe3, 0x37, 0xc3, 0xc7, 0xfc, 0xf8, 0xf3, 0x4f, 0x3f, 0x3c, 0x7b, 0x06, 0x5a, 0xea, 0xb9, 0xc8, 0xe0, 0x75, 0x5d, 0x14, 0xcd, 0x82, 0x56, 0x5f, 0x40, 0x16, 0xf0, 0xbe, 0xd1, 0xb3, 0xb2, 0xf0, 0xd0, 0x4a, 0x6b, 0x7c, 0xab, 0xd0, 0x5c, 0x35, 0x4c, 0xc0, 0x1b, 0x5a, 0x29, 0xab, 0xe7, 0x42, 0x31, 0xd4, 0x8a, 0x82, 0xcd, 0x4c, 0x90, 0x2c, 0xee, 0x41, 0x97, 0xe5, 0x1c, 0xff, 0x40, 0x09, 0x01, 0xb3, 0x72, 0x05, 0x0b, 0x5a, 0x34, 0x30, 0x45, 0x58, 0x29, 0x14, 0x30, 0x5a, 0x40, 0x3e, 0x6f, 0x80, 0x56, 0x65, 0x5d, 0x70, 0xd0, 0x33, 0x01, 0x8a, 0x55, 0x42, 0x14, 0x43, 0xa8, 0x95, 0x89, 0xfe, 0x60, 0x50, 0x65, 0xb1, 0xac, 0x75, 0x06, 0xf7, 0x74, 0x21, 0x96, 0x94, 0x1b, 0x0d, 0x3a, 0xc9, 0x25, 0xaa, 0x2a, 0xf3, 0xf1, 0x20, 0x2a, 0x25, 0xcb, 0x22, 0x03, 0x32, 0x22, 0xa3, 0xc0, 0xf3, 0x2c, 0xc2, 0x5f, 0x92, 0xeb, 0x19, 0x5c, 0x5f, 0x42, 0x38, 0x26, 0x4e, 0xf5, 0xbb, 0x90, 0xf7, 0x33, 0x6d, 0x74, 0x41, 0x94, 0x78, 0x86, 0xd8, 0x94, 0x56, 0x3b, 0x25, 0xaa, 0x8c, 0x20, 0x9e, 0x57, 0x88, 0xd5, 0x67, 0x43, 0xb1, 0x31, 0xdf, 0x79, 0x5d, 0x30, 0x8d, 0xf8, 0xfe, 0x00, 0xfe, 0xf3, 0x00, 0x67, 0x9b, 0x97, 0x4c, 0xea, 0xe6, 0xc3, 0x9f, 0x85, 0xcc, 0x8d, 0xfd, 0x1f, 0x34, 0x54, 0x35, 0x7e, 0xf8, 0xc1, 0x10, 0x2e, 0x03, 0x82, 0x2c, 0x86, 0xd0, 0x8a, 0x01, 0xbc, 0x80, 0x04, 0x25, 0x46, 0xad, 0xef, 0x8c, 0xeb, 0x5e, 0xac, 0x3f, 0x40, 0x7d, 0xd3, 0xab, 0x47, 0x03, 0x52, 0x78, 0xed, 0x18, 0xe0, 0x17, 0x80, 0xd2, 0x55, 0xcd, 0x74, 0x5d, 0x09, 0x5f, 0xfd, 0x5b, 0x69, 0x7f, 0x7d, 0xf7, 0x29, 0x84, 0xe7, 0x18, 0xfe, 0x29, 0x1c, 0x0c, 0x5b, 0x87, 0xdd, 0x58, 0xb5, 0x99, 0x03, 0xbc, 0x84, 0x30, 0x39, 0xb4, 0xcd, 0x6c, 0xb6, 0x68, 0x8b, 0xc2, 0x43, 0xdb, 0xda, 0xc9, 0x97, 0xa0, 0xe8, 0x62, 0x39, 0x17, 0x3e, 0xc9, 0xfc, 0x6e, 0x2d, 0x2f, 0x2d, 0xf2, 0x00, 0xb3, 0x3b, 0x9a, 0xb3, 0x39, 0x19, 0xeb, 0xea, 0x7b, 0xe9, 0xa6, 0xee, 0x8d, 0x56, 0x4b, 0x21, 0xf8, 0xe7, 0x35, 0x46, 0xaf, 0xef, 0xfa, 0x6d, 0x0d, 0xda, 0x9a, 0x1e, 0x5b, 0x25, 0xb5, 0x30, 0xb3, 0x06, 0x87, 0x26, 0x36, 0xa7, 0x4a, 0xa1, 0xe1, 0xa2, 0xad, 0xe2, 0xc5, 0x81, 0x75, 0xd0, 0xa9, 0xb0, 0xf7, 0xd5, 0xf3, 0x78, 0x45, 0xfb, 0x56, 0xbc, 0xd5, 0xd8, 0x65, 0x37, 0x9b, 0x4e, 0x97, 0x4b, 0x99, 0x17, 0xa5, 0xf6, 0xa5, 0xb2, 0xa6, 0xe1, 0x06, 0x7e, 0x60, 0x00, 0x57, 0x52, 0xcf, 0x7c, 0xaa, 0x75, 0x25, 0xa7, 0xb5, 0x16, 0xce, 0x65, 0x97, 0xab, 0xbe, 0x22, 0x23, 0x24, 0xec, 0x5b, 0xd2, 0x43, 0x58, 0x0f, 0x01, 0x01, 0x82, 0xf6, 0x21, 0xed, 0x33, 0xc6, 0x07, 0x91, 0x90, 0x4f, 0xbd, 0xe4, 0x54, 0x8b, 0x6f, 0x66, 0x64, 0xc8, 0x6c, 0xf5, 0xeb, 0x8b, 0x81, 0x81, 0x3a, 0xd2, 0x3d, 0xdf, 0x57, 0xb9, 0xb5, 0xb8, 0x38, 0x8a, 0x6f, 0x7a, 0xe2, 0x9b, 0x53, 0xf1, 0x68, 0x30, 0xbb, 0x18, 0x4f, 0x88, 0x7f, 0x6e, 0xc2, 0x76, 0x53, 0xa1, 0xfa, 0x15, 0x74, 0x36, 0x9b, 0x4d, 0xb1, 0x3f, 0x83, 0xfd, 0x3d, 0xd9, 0x87, 0x75, 0x1c, 0xba, 0xcd, 0xea, 0x28, 0x85, 0x9d, 0xe5, 0x17, 0x3c, 0xbd, 0x18, 0xf9, 0xb5, 0x97, 0x78, 0x4f, 0xa6, 0x76, 0x43, 0x77, 0x98, 0xdb, 0xad, 0xde, 0x4b, 0xbd, 0xe9, 0x52, 0xdf, 0x1e, 0x89, 0x5e, 0xb8, 0x53, 0xe4, 0x9b, 0x93, 0xe4, 0x9b, 0x73, 0xe4, 0xdb, 0xbc, 0x81, 0x3c, 0x56, 0x54, 0xf2, 0xf4, 0x9a, 0xb5, 0x17, 0xdc, 0xe9, 0xaa, 0x5d, 0xc3, 0xde, 0x4d, 0xfb, 0x58, 0x79, 0xf6, 0x1c, 0x9f, 0x5e, 0x07, 0x47, 0x08, 0x29, 0xe1, 0x19, 0xf9, 0xed, 0xed, 0xdf, 0x7f, 0xdc, 0x64, 0xd8, 0x5a, 0xa4, 0x82, 0x4a, 0x2c, 0xca, 0x07, 0x6c, 0x3b, 0xa6, 0xcf, 0xec, 0x0e, 0xea, 0x08, 0x3e, 0x46, 0xf6, 0xbe, 0x40, 0x53, 0x81, 0x40, 0xa6, 0x5d, 0x71, 0x91, 0xcb, 0x42, 0x98, 0xdb, 0x87, 0x49, 0x3a, 0x37, 0x40, 0x0b, 0x81, 0x3d, 0x8f, 0x2b, 0xa0, 0xd8, 0xa8, 0xee, 0x45, 0x21, 0x2a, 0xc9, 0x94, 0xf1, 0x5c, 0x95, 0xd8, 0x1d, 0xcd, 0xd9, 0x87, 0x07, 0x5a, 0xc9, 0xb2, 0x56, 0x80, 0x07, 0x7c, 0x21, 0xb5, 0x7c, 0x10, 0x5b, 0xd4, 0x6e, 0x8c, 0xc1, 0x9a, 0xcb, 0x2f, 0x02, 0xff, 0x94, 0x1e, 0xc1, 0x9b, 0xb2, 0x50, 0x92, 0x8b, 0x0a, 0xf0, 0xc4, 0xd3, 0x51, 0x5e, 0x61, 0x93, 0x1b, 0xc2, 0x6a, 0x26, 0xd9, 0x0c, 0x90, 0x31, 0x6d, 0xbd, 0x86, 0xd8, 0x30, 0xb5, 0x53, 0xf2, 0xd2, 0xb0, 0x2c, 0x35, 0xcc, 0x4b, 0x25, 0xda, 0xee, 0xa8, 0x55, 0x27, 0x19, 0xf4, 0x12, 0x05, 0x34, 0x65, 0x8d, 0x8d, 0x16, 0xe7, 0xb0, 0xf1, 0x50, 0xe6, 0x1d, 0x78, 0x35, 0xf2, 0x36, 0xfd, 0x17, 0xeb, 0x68, 0xec, 0xfe, 0xb6, 0xe1, 0xf9, 0x78, 0x6f, 0x18, 0xd0, 0xeb, 0xdb, 0xb7, 0xef, 0x6e, 0x3e, 0xbe, 0x32, 0xaf, 0x84, 0x04, 0x59, 0xd0, 0x0e, 0x7c, 0x6b, 0x05, 0xe7, 0x4e, 0xb2, 0x33, 0x72, 0xe3, 0xc7, 0x2d, 0x4e, 0x98, 0x11, 0x0b, 0x81, 0x1a, 0x4e, 0x5a, 0x47, 0x76, 0x46, 0x1a, 0x47, 0xe3, 0xed, 0x86, 0xc5, 0x89, 0x0c, 0x4e, 0x0b, 0xc4, 0x2d, 0x50, 0xc0, 0x6c, 0xc0, 0x49, 0x69, 0x80, 0x48, 0xc7, 0xdf, 0xe2, 0x8c, 0x5d, 0x5e, 0x4f, 0x1f, 0x2d, 0x4e, 0x90, 0x66, 0x87, 0xf9, 0x1e, 0x49, 0x43, 0x18, 0xe7, 0x0e, 0x04, 0x8e, 0x8d, 0x14, 0x4e, 0x8f, 0x2f, 0x16, 0xe7, 0x2a, 0xe3, 0x9b, 0x5c, 0x3b, 0x39, 0x6f, 0x34, 0xc4, 0x15, 0x82, 0x31, 0xbe, 0x27, 0xbb, 0xc3, 0xe2, 0x4c, 0x32, 0x57, 0xe0, 0x4d, 0xa1, 0xb7, 0x79, 0x77, 0x25, 0x27, 0xe4, 0x78, 0x16, 0xa7, 0x6f, 0x71, 0x42, 0x72, 0xb6, 0x3e, 0xc4, 0x49, 0x4e, 0xf6, 0x25, 0xe9, 0xd6, 0x27, 0x8a, 0x5c, 0x7d, 0x84, 0x78, 0xaa, 0xb4, 0x38, 0xe3, 0xac, 0x4d, 0xdb, 0x2c, 0xaa, 0x15, 0x8f, 0xc8, 0x8d, 0x5f, 0x4f, 0x7d, 0xa2, 0x38, 0xdb, 0xee, 0x9b, 0x33, 0x92, 0x9f, 0x90, 0x16, 0x27, 0xf9, 0x3e, 0xfb, 0x67, 0x3c, 0xf9, 0xb6, 0xfa, 0x04, 0x6e, 0xbd, 0x62, 0x62, 0xf2, 0x72, 0x3b, 0x4b, 0x58, 0x49, 0xdc, 0x38, 0x58, 0xaf, 0x43, 0xb9, 0xc7, 0x27, 0x0e, 0x32, 0xe1, 0xf2, 0x34, 0x48, 0xc4, 0x4e, 0x65, 0x97, 0x16, 0x5f, 0x1e, 0x95, 0xee, 0x8e, 0xb0, 0x38, 0xe1, 0x77, 0xa9, 0xcf, 0xf5, 0x0b, 0x77, 0x17, 0xb5, 0x1f, 0xef, 0x7f, 0x7d, 0x77, 0x73, 0x7b, 0x7b, 0xe3, 0x6e, 0x26, 0xdc, 0xa1, 0x34, 0x60, 0x21, 0x8b, 0x79, 0x98, 0xc6, 0x7c, 0x1a, 0x44, 0x22, 0x8e, 0x44, 0x9e, 0xf2, 0x38, 0xcd, 0x73, 0xc6, 0xd3, 0x98, 0xa6, 0x39, 0x49, 0x49, 0x74, 0x35, 0x4d, 0x93, 0x71, 0x18, 0xa7, 0x41, 0x3a, 0x09, 0x27, 0x51, 0x92, 0xe4, 0xd1, 0x34, 0xe6, 0x6c, 0x32, 0x0e, 0x68, 0x92, 0x27, 0x29, 0x46, 0xe4, 0x69, 0x3e, 0x36, 0xbf, 0xc9, 0x78, 0x4a, 0x58, 0x18, 0x27, 0x09, 0xbb, 0x4a, 0xa2, 0x28, 0x62, 0x71, 0x6a, 0x19, 0x6c, 0x67, 0xfd, 0x1f, 0x1a, 0xe3, 0xa7, 0xeb,
2 changes: 1 addition & 1 deletion build/tools/bin2txt.c
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ int main(int argc, char** argv)
memcpy(buffer, output, size);
}

free(output);
free(output);
}
else printf("memory error :(\n");
}
Expand Down
5 changes: 5 additions & 0 deletions cmake/core.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,11 @@ if(BUILD_STATIC)
target_link_libraries(tic80core PRIVATE wasm)
endif()

if(BUILD_WITH_R)
target_link_libraries(tic80core PRIVATE r)
endif()


target_link_libraries(tic80core PRIVATE runtime)

endif()
Expand Down
Loading