TinyScript is a high-level interpreted scripting language with its distinct BASIC-like syntax.
# Display Player in updated position
DEFINE FUNC0 BEGIN
M0 = M0 + (M1*JOYSTICK_X)/100
# Bound player position
IF M0-M3 < 0 THEN
M0 = M3
ELSE IF M0+M3 > 319 THEN
M0 = 319-M3
END
M63 = 0
WHILE M63 < M2 DO
CALL LINE M0-M3, (239-M63), M0+M3, (239-M63), 255, 255, 255
M63 = M63 + 1
END
END
Make sure to leave a GitHub star on this repo to show your support <3 :)
[!NOTE] The project is WIP! You can currently emulate and run the Game Engine on your laptop/computer. Future goals are to implement this on microcontrollers.
The documentation for TinyScript lives under Docs/README.md.
| Keys | Description |
|---|---|
| W / A / S / D or Arrow Keys | Movement controls. emulates joystick, maps a keypress to -100%, 0% or 100% of equivalent joystick position. |
| E | Mapping to joystick click |
| O | Mapping to auxillary 'A' button |
Install the binary releases here for your target Operating System.
Unzip the downloaded zipped file and run the project within the folder by double-clicking on it.
Alternatively, you can open a terminal window within the root of the folder and execute the following to run via the CLI.
.\main.exe
Unzip the downloaded zip file by running the following in the same directory as the downloaded zip file.
unzip <Folder Name> .
cd <Folder Name>
To execute the binary via CLI, execute:
./main
Unzip the downloaded zip file. You can do this by running the following in the same directory as the downloaded zip file.
unzip <Folder Name> .
cd <Folder Name>
Execute main within the unzipped folder or to execute the binary via CLI, execute:
./main
Make sure you have the various prerequisites.
PATH[!NOTE] Building commands may differ depending on your environment
Clone the repository onto your local system using the following.
git clone --recursive https://github.com/111nation/TinyEngine
Enter the cloned repository and enter the GameEngine directory to build and execute the Emulator.
cd Arduino-Handheld-Console
cd GameEngine
cmake -S . -B build
cmake --build build
When emulating the game engine on your personal computer, TinyEngine loads games from the programs folder, $ROOT/programs/main, where $ROOT is the current working directory of where TinyEngine was executed at. This currently functions as a basic bootloader for the game console to fetch the first instructions (which is just a single game at this point).
Depending if you downloaded a precompiled binary or built from source, $ROOT is the unzipped folder installed the precompiled binary or $ROOT is the GameEngine folder where cmake was executed.
Keep all custom-written games in $ROOT/programs/, 'load' a game by renaming it to main in the programs folder.
[!TIP] Two sample games, a drawing and a pong game has been included as a demo
This is the most fun part! This section is viewable at Docs/README.md
| Directory / Component | Description |
|---|---|
| Depreciated/PyGameEngine | Stores the legacy, deprecated Python-based game engine codebase. |
| Arduino | Stores the Arduino implementation used to control physical hardware inputs. |
| GameEngine | Stores the main source code and data for the TinyEngine game engine. |
| Docs | Contains the system and API documentation for TinyEngine. |
65 commits
C++
85.1%
Python
12.5%
CMake
2.4%
TinyScript is a high-level interpreted scripting language with its distinct BASIC-like syntax.
# Display Player in updated position
DEFINE FUNC0 BEGIN
M0 = M0 + (M1*JOYSTICK_X)/100
# Bound player position
IF M0-M3 < 0 THEN
M0 = M3
ELSE IF M0+M3 > 319 THEN
M0 = 319-M3
END
M63 = 0
WHILE M63 < M2 DO
CALL LINE M0-M3, (239-M63), M0+M3, (239-M63), 255, 255, 255
M63 = M63 + 1
END
END
Make sure to leave a GitHub star on this repo to show your support <3 :)
[!NOTE] The project is WIP! You can currently emulate and run the Game Engine on your laptop/computer. Future goals are to implement this on microcontrollers.
The documentation for TinyScript lives under Docs/README.md.
| Keys | Description |
|---|---|
| W / A / S / D or Arrow Keys | Movement controls. emulates joystick, maps a keypress to -100%, 0% or 100% of equivalent joystick position. |
| E | Mapping to joystick click |
| O | Mapping to auxillary 'A' button |
Install the binary releases here for your target Operating System.
Unzip the downloaded zipped file and run the project within the folder by double-clicking on it.
Alternatively, you can open a terminal window within the root of the folder and execute the following to run via the CLI.
.\main.exe
Unzip the downloaded zip file by running the following in the same directory as the downloaded zip file.
unzip <Folder Name> .
cd <Folder Name>
To execute the binary via CLI, execute:
./main
Unzip the downloaded zip file. You can do this by running the following in the same directory as the downloaded zip file.
unzip <Folder Name> .
cd <Folder Name>
Execute main within the unzipped folder or to execute the binary via CLI, execute:
./main
Make sure you have the various prerequisites.
PATH[!NOTE] Building commands may differ depending on your environment
Clone the repository onto your local system using the following.
git clone --recursive https://github.com/111nation/TinyEngine
Enter the cloned repository and enter the GameEngine directory to build and execute the Emulator.
cd Arduino-Handheld-Console
cd GameEngine
cmake -S . -B build
cmake --build build
When emulating the game engine on your personal computer, TinyEngine loads games from the programs folder, $ROOT/programs/main, where $ROOT is the current working directory of where TinyEngine was executed at. This currently functions as a basic bootloader for the game console to fetch the first instructions (which is just a single game at this point).
Depending if you downloaded a precompiled binary or built from source, $ROOT is the unzipped folder installed the precompiled binary or $ROOT is the GameEngine folder where cmake was executed.
Keep all custom-written games in $ROOT/programs/, 'load' a game by renaming it to main in the programs folder.
[!TIP] Two sample games, a drawing and a pong game has been included as a demo
This is the most fun part! This section is viewable at Docs/README.md
| Directory / Component | Description |
|---|---|
| Depreciated/PyGameEngine | Stores the legacy, deprecated Python-based game engine codebase. |
| Arduino | Stores the Arduino implementation used to control physical hardware inputs. |
| GameEngine | Stores the main source code and data for the TinyEngine game engine. |
| Docs | Contains the system and API documentation for TinyEngine. |
65 commits
C++
85.1%
Python
12.5%
CMake
2.4%