BareMetalTic80
BareMetalTic80 copied to clipboard
Port of TIC80 to bare metal Raspberry Pi
BareMetalTic80
IMPORTANT: This port has been integrated into official TIC-80! Please check there!
This repository will not be updated.
About
Port of TIC80 to bare metal Raspberry Pi
This is a port of fantasy console TIC-80 to Raspberry-PI 2 in baremetal, that is, without operating system. It boots almost instantly. It is built on top of circle and circle-stdlib.
This is an alpha release, things are pretty usable but there are limitations.
Store your carts in the "tic80" folder and boot up and voilà, you have the editor and everything :)
TODO
- Fix input (keyboard glitches, gamepads)
- Fix file access code
- Use multicore mode for better performances
Download
An already built version is available in Releases.
Just unpack on the root of an appropriate SD card (fat32) and put it on a Raspberry PI 2 with a keyboard (optionally a mouse) connected. This is the full TIC-80 release with the editor.
Want to help?
- If you tryed the program, let me know if and how it worked! Either here, on twitter @msx80 or on TIC-80 discord.
- Are you good with cmake and building script? Review the mess i put together!
How to build
The build is rapidly evolving, feel free to ask if it doesn't work
The build works on a regular x86 linux. Following these steps should work. Feedback welcome :)
- Download gcc arm toolkit (i used version gcc-arm-none-eabi-8-2018-q4-major) and expand on your disk and add it to your path:
-
PATH=/home/xxxx/gcc-arm-none-eabi-8-2018-q4-major/bin/:$PATH
- clone the repository and modules
-
git clone --recursive https://github.com/msx80/BareMetalTic80.git
-
cd BareMetalTic80
- Build circle-stdlib runtime:
-
cd circle-stdlib
-
./configure --raspberrypi 2
-
make
-
cd ..
- Build TIC-80 core:
-
cd TIC-80
-
cmake -DCMAKE_BUILD_TYPE=MinSizeRel -DBAREMETAL=1 -DCMAKE_TOOLCHAIN_FILE=../arm-gcc-toolchain.cmake .
-
make tic80core
-
cd ..
- Now on to build the "kernel":
-
cd baremetaltic80player
-
make
You'll now have kernel7.img