├── .github
├── FUNDING.yml
└── workflows
│ └── build.yml
├── _config.yml
├── assets
└── css
│ └── style.scss
├── LICENSE
└── README.md
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | ko_fi: joyrider3774
2 |
--------------------------------------------------------------------------------
/_config.yml:
--------------------------------------------------------------------------------
1 | remote_theme: pages-themes/midnight@v0.2.0
2 | plugins:
3 | - jekyll-remote-theme
--------------------------------------------------------------------------------
/assets/css/style.scss:
--------------------------------------------------------------------------------
1 | ---
2 | ---
3 |
4 | @import "{{ site.theme }}";
5 |
6 | .wrapper {
7 | max-width: 850px;
8 | }
9 |
10 | section {
11 | max-width: 850px;
12 | }
13 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 Willems Davy
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/.github/workflows/build.yml:
--------------------------------------------------------------------------------
1 | # Controls when the workflow will run
2 | on:
3 | # Allows you to run this workflow manually ftarget the Actions tab
4 | workflow_dispatch:
5 |
6 | jobs:
7 | build:
8 | name: ${{ matrix.output }}
9 | strategy:
10 | matrix:
11 | include:
12 | - { buildtype: 'playdate', repo: 'joyrider3774/blips_playdate', output: 'blips', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: ''}
13 | - { buildtype: 'playdate', repo: 'joyrider3774/formula1_playdate', output: 'formula_1', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: 'FORMULA1_PLAYDATE_CODEKEY', codesecretfile: 'src/codekey.h', makecommand: '"SRC_C_DIR=src/srcgame src/srcgame/scoresubmit"'}
14 | - { buildtype: 'playdate', repo: 'joyrider3774/checkers_playdate', output: 'checkers', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: 'CPP_BUILD=1'}
15 | - { buildtype: 'playdate', repo: 'joyrider3774/dynamate_playdate', output: 'dynamate', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: 'CPP_BUILD=1'}
16 | - { buildtype: 'playdate', repo: 'joyrider3774/blockdude_playdate', output: 'blockdude', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: ''}
17 | - { buildtype: 'playdate', repo: 'joyrider3774/puztrix_playdate', output: 'puztrix', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: 'PUZTRIX_PLAYDATE_CODEKEY', codesecretfile: 'src/codekey.h', makecommand: '"SRC_C_DIR=src/srcgame/scoresubmit/src/playdate/C_API/scoresubmit" "SRC_CPP_DIR=src/srcgame src/srcstub/sdl_rotate src/srcstub/gfx_primitives_surface src/srcstub/bump src/srcstub/bump/src src/srcstub src/srcstub/pd_api"'}
18 | - { buildtype: 'playdate', repo: 'joyrider3774/puzzleland_playdate', output: 'puzzleland', binarycopy: '', assetscopy: '', downloadsecret: 'PUZZLELAND_MUSIC', downloadsecretcmd: 'unzip download && mv music Source/music', codesecret: '', codesecretfile: '', makecommand: '"SRC_C_DIR=src/srcgame src/srcgame/gameobjects src/srcgame/gamestates"'}
19 | - { buildtype: 'playdate', repo: 'joyrider3774/rubido_playdate', output: 'rubido', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: ''}
20 | - { buildtype: 'playdate', repo: 'joyrider3774/waternet_playdate', output: 'waternet', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: ''}
21 | - { buildtype: 'playdate', repo: 'joyrider3774/worm_playdate', output: 'worm', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: ''}
22 | - { buildtype: 'playdate', repo: 'joyrider3774/sokoban_playdate', output: 'playdoban', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: ''}
23 | - { buildtype: 'playdate', repo: 'joyrider3774/mazethingie_playdate', output: 'mazethingie', binarycopy: '', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: ''}
24 | - { buildtype: 'vanilla', repo: 'joyrider3774/RetroTime', output: 'retrotime', binarycopy: 'retrotime', assetscopy: 'retrotimefs', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: 'CXX=/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/bin/aarch64-linux-gnu-g++ NOX11=1 SDL2CONFIG=/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/bin/sdl2-config LDLIBS="`/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/bin/sdl2-config --libs` -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lSDL2 /opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/lib/libSDL2_gfx.a -lpthread -lstdc++" "DEFINES=-DTRIMUI_SMART_PRO" FULLMENUTRANSPARANCY=1'}
25 | - { buildtype: 'vanilla', repo: 'joyrider3774/Znax', output: 'znax', binarycopy: 'znax', assetscopy: 'znaxfs', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: 'CXX=/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/bin/aarch64-linux-gnu-g++ NOX11=1 SDL2CONFIG=/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/bin/sdl2-config LDLIBS="`/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/bin/sdl2-config --libs` -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lSDL2 /opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/lib/libSDL2_gfx.a -lpthread -lstdc++" "DEFINES=-DTRIMUI_SMART_PRO"'}
26 | - { buildtype: 'vanilla', repo: 'joyrider3774/crisp-game-lib-portable-sdl', output: 'cglpsdl2', binarycopy: 'cglpsdl2', assetscopy: '', downloadsecret: '', downloadsecretcmd: '', codesecret: '', codesecretfile: '', makecommand: '-f src/cglpSDL2/Makefile CC=/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/bin/aarch64-linux-gnu-gcc NOX11=1 SDL_CONFIG=/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/bin/sdl2-config LDLIBS="`/opt/trimui-sdk/aarch64-linux-gnu-7.5.0-linaro/usr/bin/sdl2-config --libs` -lpthread -lm"'}
27 | runs-on: ubuntu-latest
28 | steps:
29 | - name: get SDK
30 | uses: wei/wget@v1
31 | with:
32 | args: -O trimui-sdk.tar.gz https://github.com/joyrider3774/sdks/releases/latest/download/trimui-sdk.tar.gz
33 |
34 | - name: setup SDK
35 | run: |
36 | tar -xzvf ./trimui-sdk.tar.gz
37 | sudo mv ./trimui-sdk /opt/
38 |
39 | - if: ${{ matrix.buildtype == 'playdate'}}
40 | name: Checkout Playdate SDL2 Api Sources
41 | uses: actions/checkout@v4
42 | with:
43 | submodules: 'true'
44 | repository: 'joyrider3774/Playdate_Api_SDL2'
45 |
46 | - name: Checkout game sources sources
47 | uses: actions/checkout@v4
48 | with:
49 | submodules: 'true'
50 | repository: ${{matrix.repo}}
51 | path: tmp
52 |
53 |
54 | - if: ${{ (matrix.codesecret != '') && (matrix.codesecretfile != '')}}
55 | name: Setup Secret codekey.h File
56 | env:
57 | SECRET: ${{secrets[matrix.codesecret] }}
58 | run : |
59 | echo "$SECRET" | base64 --decode > tmp/${{matrix.codesecretfile}}
60 |
61 | - if: ${{ matrix.buildtype== 'playdate'}}
62 | name: move things to correct directories playdate
63 | run: |
64 | rm -rf ./src/srcgame
65 | mv tmp/src ./src/srcgame
66 | cp -Rf tmp/Source/. ./Source
67 |
68 | - if: ${{ (matrix.downloadsecret != '') && (matrix.downloadsecretcmd != '')}}
69 | name: run secret download
70 | uses: wei/wget@v1
71 | with:
72 | args: -O download ${{ secrets[matrix.downloadsecret] }}
73 |
74 | - if: ${{ (matrix.downloadsecret != '') && (matrix.downloadsecretcmd != '')}}
75 | name: run secret download cmd
76 | run: |
77 | ${{matrix.downloadsecretcmd}}
78 | rm download
79 |
80 | - if: ${{ matrix.buildtype == 'playdate'}}
81 | name: Build Game Playdate
82 | run: |
83 | make PLATFORM=trimui_smart_pro ${{matrix.makecommand }}
84 |
85 | - if: ${{ matrix.buildtype == 'vanilla'}}
86 | name: Build Game Vanilla
87 | run: |
88 | cd tmp
89 | make ${{matrix.makecommand }}
90 |
91 | - name: prepare artificat directory
92 | run: |
93 | mkdir artifact_dir
94 |
95 | - if: ${{ matrix.buildtype == 'playdate'}}
96 | name: Move Source Folder
97 | run: |
98 | mv Source "./artifact_dir/${{ matrix.output }}"
99 |
100 | - name: copy metadata
101 | run: |
102 | cp -Rf "tmp/metadata/trimuismartpro/." "./artifact_dir/${{ matrix.output }}"
103 |
104 |
105 | - if: ${{ matrix.binarycopy != ''}}
106 | name: copy binary
107 | run: |
108 | cp "tmp/${{ matrix.binarycopy}}" "./artifact_dir/${{ matrix.output }}/${{ matrix.binarycopy }}"
109 |
110 | - if: ${{ matrix.assetscopy != ''}}
111 | name: copy assets
112 | run: |
113 | cp -Rf "tmp/${{ matrix.assetscopy}}" "./artifact_dir/${{ matrix.output }}"
114 |
115 | - name: Store build
116 | uses: actions/upload-artifact@v4
117 | with:
118 | name: ${{ matrix.output }} - Trimui_Smart_Pro
119 | path: artifact_dir/
120 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # My Trimui Smart Pro Games
2 |    
3 |
4 | Builds of my games running on Trimui smart Pro
5 |
6 | ## Installing
7 | In general on the trimui smart pro, enable usb disk mode and connect your trimui smart pro to your pc.
8 | On the drive that appears from it there should be an `Apps` folder, extract the zips you download from the
9 | [Release Section](https://github.com/joyrider3774/trimui_smart_pro_games/releases) in this folder.
10 | For example if you open `checkers - Trimui_Smart_Pro.zip` there will be a folder inside, in this example named
11 | `checkers` you need to copy that folder to the `Apps` folder of your trimui smart pro disk.
12 |
13 | ## Generic Game controls
14 |
15 | | Key | Action |
16 | | ------ | ------ |
17 | | Dpad or Joystick | movement, selecting in menu's etc |
18 | | A | A Button as mentioned in the games for functionality of each game please check each game's repository |
19 | | B | B Button as mentioned in the games for functionality of each game please check each game's repository |
20 | | LB | In Playdate games simulate crank move backwards movement, in my games usually used in the level editors to select previous piece. In other games consult game's repository to know the functionality |
21 | | RB | In Playdate games simulate crank move forwards movement, in my games usually used in the level editors to select next piece. In other games consult game's repository to know the functionality |
22 | | Y | In (Playdate) games starting up in black and white, reboot and use colored version of graphics, some games have multiple colored graphics so you can press it again to see more options. The button basically makes you cycle through all possibilities |
23 | | Menu | Quit game and return to menu |
24 |
25 | ---
26 |
27 | ## Games
28 | Please see respective repo of each game to get more information about the games by clicking on the `Game Info` links
29 |
30 | ## Blips
31 |  
32 |
33 | Blips is a remake of the dos bips, bips gold and bips platinum game made by Bryant Brownell, its a sokoban style puzzle game but with exploding dynamite, special boxes and collecting coins
34 |
35 | [Game Info](https://joyrider3774.github.io/blips_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/blips.-.Trimui_Smart_Pro.zip)
36 |
37 | ---
38 |
39 | ## Blockdude (Playdate)
40 |  
41 |
42 | Blokdude is a remake of the well known TI Caluculator game from Brandon Sterner as well as the blockman game from Soleau Software. This version of the game is based on the GP2X port of blockdude i made over a decade ago.
43 |
44 | [Game Info](https://joyrider3774.github.io/blockdude_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/blockdude.-.Trimui_Smart_Pro.zip)
45 |
46 | ---
47 |
48 | ## Crisp Game Library Portable SDL(2) Port
49 |  
50 |
51 | This is contains the sdl(2) port i did, of the crisp games library portable which is a Minimal C-lang library for creating classic arcade-like mini-games running on devices and browsers. Re-implemented version of crisp-game-lib for smaller devices. I ported extra games to this portable library, added extra options like small overlays (pixel grid, glow, crt etc), ability to switch between darkmode and no darkmode, ability to save highscores, overlays and darkmode per game, ...
52 |
53 | Note:
54 |
55 | - I did not create these games nor the library itself or any of the game idea's, this was created by user [AbaGames](https://github.com/abagames/) i'm only portraying my sdl port here with added extras and newly ported games from the Javascript versions to this portable library.
56 | - I had to enable No Scaled Drawing mode for trimui because of the 1280x720 screen and the trimui smart pro not being able to run the games fullspeed otherwise, this means overlays like glow, pixel grid and crt effect are also disabled !
57 | - A and B Button are swapped on the trimui smart pro (it follows xbox controller layout)
58 |
59 | [Game Info](https://joyrider3774.github.io/crisp-game-lib-portable-sdl) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/cglpsdl2.-.Trimui_Smart_Pro.zip)
60 |
61 | ---
62 |
63 | ## Checkers (Playdate)
64 |  
65 |
66 | Checkers is the well known board game with four difficulties and a jump heuristic. This version is port of my gp2x version made to work with the Trimui Smart pro handheld.
67 |
68 | [Game Info](https://joyrider3774.github.io/checkers_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/checkers.-.Trimui_Smart_Pro.zip)
69 |
70 | ---
71 |
72 | ## Dynamate (Playdate)
73 |  
74 |
75 | Dynamate is a puzzle game invented by Björn Kalzen and Jonas Norberg, a couple of years ago i contacted them to make a port for the gp2x handheld. This version is port of my gp2x version made to work with the Trimui Smart pro handheld.
76 |
77 | [Game Info](https://joyrider3774.github.io/dynamate_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/dynamate.-.Trimui_Smart_Pro.zip)
78 |
79 | ---
80 |
81 | ## Formula 1 Game & Watch (Playdate)
82 |  
83 |
84 | Formula 1 Game & Watch is a small, fictive formula 1 game & watch style lcd game with high score keeping. The Game was initially created over a decade ago for a small retrogame competition, after which it got ported to the gp2x. This version is based on the gp2x version but with added high score saving.
85 |
86 | [Game Info](https://joyrider3774.github.io/formula1_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/formula_1.-.Trimui_Smart_Pro.zip)
87 |
88 | ---
89 |
90 | ## Mazethingie (Playdate)
91 |  
92 |
93 | Mazethingie which is a maze generator / player.
94 |
95 | [Game Info](https://joyrider3774.github.io/mazethingie_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/mazethingie.-.Trimui_Smart_Pro.zip)
96 |
97 | ---
98 |
99 | ## Playdoban (Playdate)
100 |  
101 |
102 | Playdoban is a remake of the classic sokoban game. You as the player need to push boxes to specific locations in the level. Once all boxes are pushed to the correct spots the level is finished. Playdoban is basically a sokoban engine, it contains all the game rules and has the ability to use level packs.
103 |
104 | [Game Info](https://joyrider3774.github.io/sokoban_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/playdoban.-.Trimui_Smart_Pro.zip)
105 |
106 | ---
107 |
108 | ## Rubido (Playdate)
109 |  
110 |
111 | Rubido is a little chinese checkers or solitaire game with four difficulties.
112 |
113 | [Game Info](https://joyrider3774.github.io/rubido_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/rubido.-.Trimui_Smart_Pro.zip)
114 |
115 | ---
116 |
117 | ## Puzzle Land (Playdate)
118 |  
119 |
120 | Puzzle Land is a remake of the gameboy game Daedalian opus also known as puzzle road in japan. The gameplay and levels are the same but the graphics, music sounds have changed. It's a puzzle game with 36 levels. It is a tribute to a game i spend endless hours playing as a child.
121 |
122 | [Game Info](https://joyrider3774.github.io/puzzleland_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/puzzleland.-.Trimui_Smart_Pro.zip)
123 |
124 | ---
125 |
126 | ## Puztrix (Playdate)
127 |  
128 |
129 | Puztrix is a remake of the Gravnic game from inside the NES Puzznic game.
130 |
131 | [Game Info](https://joyrider3774.github.io/puztrix_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/puztrix.-.Trimui_Smart_Pro.zip)
132 |
133 | ---
134 |
135 | ## RetroTime
136 |
137 |
138 | RetroTime is a game containing 8 retro based games playable in 3 game modes being Retro Carousel, Time Attack and Lives mode. The game is a port from my competetion entry for Fuze 4 for Nintendo switch, in colleboration Wireframe magazine.
139 |
140 | [Game Info](https://joyrider3774.github.io/RetroTime) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/retrotime.-.Trimui_Smart_Pro.zip)
141 |
142 | ---
143 |
144 | ## Waternet (Playdate)
145 |  
146 |
147 | Waternet is a multiplatform puzzle game written for old consoles and handhelds like Game Boy (Color), Game Gear, Master System, Analogue Pocket and Mega Duck and now also Trimui Smart Pro! It's a combination of the net and netslide games from the simon tatham's puzzle collection!
148 |
149 | [Game Info](https://joyrider3774.github.io/waternet_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/waternet.-.Trimui_Smart_Pro.zip)
150 |
151 | ---
152 |
153 | ## Worm (Playdate)
154 | 
155 |
156 | Worm is a copter / worm game remake with 5 game modes and a seed system written for playdate
157 |
158 | [Game Info](https://joyrider3774.github.io/worm_playdate) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/worm.-.Trimui_Smart_Pro.zip)
159 |
160 | ---
161 |
162 | ## Znax
163 |
164 |
165 | Znax is a cross platform puzzle / arcade game using SDL2 libraries. It has skin support and can be played using a keyboard, mouse, joypad or touchscreen. You select 4 of the same colored pieces forming a rectangle to gain scores and remove the pieces inside the rectangle!
166 |
167 | [Game Info](https://joyrider3774.github.io/Znax) - [Download for Trimui Smart Pro](https://github.com/joyrider3774/trimui_smart_pro_games/releases/latest/download/znax.-.Trimui_Smart_Pro.zip)
168 |
169 |
170 |
--------------------------------------------------------------------------------