Both sides previous revisionPrevious revisionNext revision | Previous revision |
release:tinyzoo [2022/08/21 16:02] – asie | release:tinyzoo [2023/03/29 16:53] (current) – asie |
---|
{{tag>type:source_port}} | {{tag>type:source_port}} |
| |
====== tinyzoo ====== | ====== TinyZoo ====== |
| |
tinyzoo is a collection of small ZZT source ports by asie, with the following traits: | TinyZoo is a collection of small ZZT source ports by asie, with the following traits: |
| |
* Custom, optimized binary bytecode format, | * Custom, optimized binary bytecode format, |
NOTE: The Analogue Pocket using the "gb" platform ID is correct. | NOTE: The Analogue Pocket using the "gb" platform ID is correct. |
| |
^ ID ^ Name ^ Progress ^ Engine files ^ Source code ^ Notes ^ | ^ ID ^ Name ^ Progress ^ Engine files ^ Source code ^ As of Zeta ^ Notes ^ |
| gb | Game Boy Color | Released | [[https://zeta.asie.pl/files/tinyzoo-gb/|Here]] | [[https://github.com/OpenZoo/gbzoo|Here]] | | | | gb | Game Boy Color | Released | [[https://zeta.asie.pl/files/tinyzoo-gb/|Here]] | [[https://github.com/OpenZoo/tinyzoo-gb|Here]] | 0.9.0 | | |
| gb | Analogue Pocket | Released | [[https://zeta.asie.pl/files/tinyzoo-ap/|Here]] | [[https://github.com/OpenZoo/gbzoo|Here]] | | | | gb | Analogue Pocket | Released | [[https://zeta.asie.pl/files/tinyzoo-ap/|Here]] | [[https://github.com/OpenZoo/tinyzoo-gb|Here]] | 0.9.0 | | |
| gg | Game Gear | Planned | | [[https://github.com/OpenZoo/gbzoo|Here]] | | | | gg | Game Gear | Planned | | [[https://github.com/OpenZoo/tinyzoo-gb|Here]] | | | |
| ws | WonderSwan (Color) | Planned | | | | | | ws | WonderSwan (Color) | Released | [[https://zeta.asie.pl/files/tinyzoo-ws/|Here]] | [[https://github.com/OpenZoo/tinyzoo-ws|Here]] | 0.9.0 | | |
| | gba | Game Boy Advance | Planned | | | | | |
| |
===== Converting your ZZT world ===== | ===== Converting your ZZT world ===== |
| |
NOTE: This is complicated because it's early. It will get easier. (I think.) | NOTE: This is complicated because it's early. It will get easier, maybe, one day. |
| |
NOTE: If you want to utilize ZXT extensions, it is recommended - but not necessary, if you're using a different tool - to download the latest CI ClassicZoo/ZXT build, which includes necessary editing and testing facilities: [[https://github.com/OpenZoo/ClassicZoo/actions?query=branch%3Aproject%2Fclassiczoo-zxt-native-take2|GitHub Workflows]] ([[https://img.asie.pl/irMo.mp4|video guide]] - generally, pick the topmost entry; you also need to be signed in to GitHub, this is not ideal and will be resolved eventually). | NOTE: If you want to utilize ZXT extensions, it is recommended - but not necessary, if you're using a different tool - to download the latest CI ClassicZoo/ZXT build, which includes necessary editing and testing facilities: [[https://github.com/OpenZoo/ClassicZoo/actions?query=branch%3Aproject%2Fclassiczoo-zxt-native-take2|GitHub Workflows]] ([[https://img.asie.pl/irMo.mp4|video guide]] - generally, pick the topmost entry; you also need to be signed in to GitHub, this is not ideal and will be resolved eventually). |
| |
- Download the latest CI zima build: [[https://github.com/OpenZoo/zima/actions/workflows/gradle.yml?query=branch%3Amaster|GitHub Workflows]] ([[https://img.asie.pl/irMo.mp4|video guide]] - generally, pick the topmost entry; you also need to be signed in to GitHub, this is not ideal and will be resolved eventually) | - Download the latest version of zima, 0.9.0 or above. |
* You need **Java 17** for new zima builds. Download a copy [[https://adoptium.net/temurin/releases/|here]]. | * You need **Java 17** for new zima builds. Download a copy [[https://adoptium.net/temurin/releases/|here]]. |
| * Some features and bugfixes may only be available in the development builds. To download the latest CI zima build: visit [[https://github.com/OpenZoo/zima/actions/workflows/gradle.yml?query=branch%3Amaster|GitHub Workflows]] ([[https://img.asie.pl/irMo.mp4|video guide]] - generally, pick the topmost entry; **THE DOWNLOADS WILL NOT SHOW UP UNLESS YOU'RE LOGGED INTO GITHUB**. |
- Download the latest engine file for your platform - see above. | - Download the latest engine file for your platform - see above. |
- Run the following command in the command line: ''java -jar zima.jar binconv -o output_rom_path -e engine_file_path -p platform_id input_world_path'', replacing the underscored identifiers with the necessary values: | - Run the following command in the command line: ''java -jar zima.jar binconv -o output_rom_path -e engine_file_path -p platform_id input_world_path'', replacing the underscored identifiers with the necessary values: |
Make sure to study the [[https://github.com/OpenZoo/tinyzoo-gb|licensing information]] before publicly releasing a converted world - or just contact me directly if you have any questions. | Make sure to study the [[https://github.com/OpenZoo/tinyzoo-gb|licensing information]] before publicly releasing a converted world - or just contact me directly if you have any questions. |
| |
===== Creating physical copies ===== | ===== Platform-specific advice ===== |
| |
==== Game Boy ==== | ==== Game Boy ==== |
| |
| === Publishing to HTML5 === |
| |
| Currently, the best supported GB emulator for TinyZoo/GB is [[https://github.com/binji/binjgb|binjgb]]. |
| |
| - Download binjgb from [[https://github.com/OpenZoo/tinyzoo-gb/tree/main/html5/gb-binjgb|the pre-configured TinyZoo/GB copy]]. |
| - Copy your ROM to this directory, named ''game.gb''. |
| |
| To upload to itch.io, pack all the files in the linked directory (including ''game.gb'') into a ZIP file, then publish it as an in-browser game on Itch. |
| |
| === Acquiring physical cartridges === |
| |
[[https://bbbbbr.github.io/GameBoy-Flash-Carts/|List of reflashable cartridge vendors.]] | [[https://bbbbbr.github.io/GameBoy-Flash-Carts/|List of reflashable cartridge vendors.]] |
* [[https://emulicious.net/|Emulicious]] - best debugging tools (but the necessary symbols files are currently not packaged). | * [[https://emulicious.net/|Emulicious]] - best debugging tools (but the necessary symbols files are currently not packaged). |
* ''ws'' port: | * ''ws'' port: |
* [[https://mednafen.github.io/|Mednafen]] - not perfectly accurate, but good enough for the port. | * [[https://ares-emu.net/|Ares]] v131+ - the most accurate of the lot. |
| * [[https://mednafen.github.io/|Mednafen]] - not perfectly accurate, but has debugging tools. |
| |
===== Links ===== | ===== Links ===== |
| |
| * [[https://museumofzzt.com/discord/|Museum of ZZT Discord]] - TinyZoo discussion is welcome in the ''#zzt-programs'' channel. |
| |