Commit Graph
120 Commits
Author SHA1 Message Date
Rob Loach 275467afe6 Have the submodule ignore internal changes 2024-01-22 11:12:11 -05:00
Rob Loach f534d51317 Update to QuickJS 2024-01-13 2024-01-22 11:09:35 -05:00
Nathan Whitehead 71f0346835 Add script for downloading puzzlescript games by url.
Add capability to download itch.io puzzlescript games (experimental).
Update readme.
2022-10-06 09:54:55 -06:00
Nathan Whitehead a35d6715d7 Update readme with save/load info. 2022-10-05 14:30:34 -06:00
Nathan Whitehead 883b9675e5 Switch SELECT+LEFT/RIGHT to be level section keys.
Add js code to move level up and down in a sensible way.
Update readme a bit.
2022-10-01 09:23:37 -06:00
Nathan Whitehead 49e3ed8d3f Update core info file with save flags. 2022-09-30 17:09:40 -06:00
Nathan Whitehead b9da3373a3 Add initial support for save states.
Remove demo.pz game.
Split out gameloop functionality into separate files.
Add serialize/deserialize functions into main.js.
Add serialize/deserialize functionality into gameloop class.
Allow sfxr to warn but not stop on bad seed numbers.
Handle negative hex values (fixes corrupted saves in large games).
Make serialization auto retry with truncation if size is too big.
Use original text title screens.
2022-09-30 11:01:42 -06:00
Nathan Whitehead 96bfc5f860 Remove reliance of QuickJS on fenv.h.
This puts calls to fenv functions behind an if/def which is not set.
I believe this makes QuickJS not fully standards compliant with
regards to numerical rounding, especially when converting floating
point numbers to strings. I don't think PuzzleScript relies on
any precise rounding when converting numbers to strings so this
should be safe for PuzzleScript.
2022-09-29 10:08:33 -06:00
Nathan Whitehead da2996e74a Fix small things to help cross-platform compatibility.
Downgrade to C++11 in makefile.
Fixup make_unique.
Use old style chrono duration.
Switch to mutex from atomic to avoid linking to libatomic on some platforms.

Update info file to include pzp extension.
2022-09-29 09:56:17 -06:00
Nathan Whitehead aa11bf9a89 Fix Mint 19.3 linking with dl. 2022-09-28 17:11:57 -06:00
Nathan Whitehead ba5c5d024b Merge pull request #5 from RobLoach/gitlab-makefile
Add the libretro GitLab CI file
2022-09-28 16:12:19 -06:00
Rob Loach b71dc04f2f Add the libretro GitLab CI file 2022-09-28 02:29:28 -04:00
Nathan Whitehead 908f66bfca Correct readme about default font choice. 2022-09-27 22:20:07 -06:00
Nathan Whitehead cb9a13b19f Remove all traces of npm, babel, es5.
Simplify gn build system to use source files directly
without going through gen directory. This made the
xxd generated names more fragile, had to tweak the DOCKER_BUILDKIT
script to workaround that.
2022-09-27 21:10:07 -06:00
Nathan Whitehead 0a4a36dad5 Turn back on warnings and errors outside of QuickJS. 2022-09-27 17:51:14 -06:00
Nathan Whitehead ed6081bb0f Fix QuickJS memory leak related to global object.
Remove debug log output.
2022-09-27 17:30:09 -06:00
Nathan Whitehead cf40b5ae2f Remove legacy Duktape files, update license text. 2022-09-27 17:21:23 -06:00
Nathan Whitehead 72d23f029c Switch to QuickJS. 2022-09-27 16:50:28 -06:00
Nathan Whitehead 622ca5fb1a Fix pthread build issue for Mint 19.3.
Add -pthread option to linking command as well as compiling commands.
2022-09-27 09:18:40 -06:00
Nathan Whitehead 365a60fd0d Update readme with info on simple build and PuzzleScript Plus. 2022-09-26 10:37:05 -06:00
Nathan Whitehead 2807971f23 Add pthread gcc option in make. 2022-09-25 22:11:50 -06:00
Nathan Whitehead 6c71b35be6 Remove extra debugging code. 2022-09-25 21:52:55 -06:00
Nathan Whitehead 328965f7fe Regenerate bundle file with PuzzleScriptPlus changes. 2022-09-25 21:51:24 -06:00
Nathan Whitehead 0a3a0b087f Split out partial sprite rendering, add bindings into JavaScript.
Update PuzzleScriptPlus graphics source to allow custom font to work.
Only clear all sprite context when in PuzzleScript mode.
Use PuzzleScriptPlus mode on pzp files.
Make custom font off by default.
2022-09-25 21:50:21 -06:00
Nathan Whitehead fa2338d190 Initial try with PuzzleScriptPlus.
Status: files running, incorrect logic, incorrect graphics.
Not sure what's going on at the moment.
2022-09-25 19:57:36 -06:00
Nathan Whitehead 050cdc781d Commit bundled file for simple Makefile builds.
Update makefile to include C sources.
Update common makefile to use c++17 (didn't see a way to do this in Makefile).
2022-09-25 12:51:02 -06:00
Nathan Whitehead 7b4c5331ff Merge pull request #3 from RobLoach/makefile
libretro: Add the standard Makefile
2022-09-25 12:33:00 -06:00
Rob Loach f5ab9a61a0 libretro: Add the standard Makefile 2022-09-25 13:37:20 -04:00
Nathan Whitehead 67110b5ffc Tidy duplicated info entry. 2022-09-25 10:47:49 -06:00
Nathan Whitehead 05c9f64e93 Merge pull request #2 from RobLoach/patch-1
libretro: Update .info file
2022-09-25 10:47:09 -06:00
Rob Loach 8781efd280 libretro: Update .info file
Update the PuzzleScript core info file.
2022-09-24 16:22:09 -04:00
Nathan Whitehead 084a9264af More future work. 2022-09-23 10:48:48 -06:00
Nathan Whitehead 85685447f8 Add some readme text, add images. v0.2.0 2022-09-23 09:49:10 -06:00
Nathan Whitehead c3e3f7a1d7 Reword some things. 2022-09-23 09:16:54 -06:00
Nathan Whitehead 6c83886129 Switch cheat to be A + START.
Add script to generate pz files from Phil Schatz's repo.
2022-09-22 19:22:53 -06:00
Nathan Whitehead f55ad80352 Remove stb files (not needed).
Update npm babel to babel-cli.
Rework dockerfile to work without node_modules already installed.
2022-09-22 18:54:46 -06:00
Nathan Whitehead ab3be00b3f typo 2022-09-22 14:46:40 -06:00
Nathan Whitehead dafe397a0f Add dockerfile for release builds.
Fix minor build issues related to using old Ubuntu to build.
Add option to use precompiled font.js, Pillow was not working properly in old Python versions.
2022-09-22 14:27:09 -06:00
Nathan Whitehead 31f7260af4 Tidy readme 2022-09-22 12:27:44 -06:00
Nathan Whitehead ac956bc9e6 Make restarting choose right font choice. 2022-09-22 12:17:23 -06:00
Nathan Whitehead b841bc87c4 Tidy up build default options.
Remove hardcoded dependency on path structure for demo.pz, copy to bundle file properly.
Allow restarting games.
Add info file for retroarch to allow choosing pz content.
2022-09-22 12:13:15 -06:00
Nathan Whitehead 0a118ab089 Calculate update times more correctly (fixes lots of timing issues yay) 2022-09-22 11:27:38 -06:00
Nathan Whitehead fc5ef53bda Add core option to turn on/off custom antialiased font. 2022-09-22 10:57:40 -06:00
Nathan Whitehead a676b07ee1 Tidy up readme 2022-09-22 09:31:07 -06:00
Nathan Whitehead 73d3d9b632 Tidy up and remove unused files.
Remove sysfont code.
Update LICENSE file to mention all used licenses.
2022-09-21 16:46:16 -06:00
Nathan Whitehead 81b1ea24a2 Tidy up readme
Add cheat code of SELECT+START to skip level.
Fix bugs discovered with Singleton Traffic game (level 3 graphics glitch).
Dynamically resize sprites if pixels drawn with fillRect beyond border.
Update sprite clearing to always clear all of updated width and height.
2022-09-21 14:53:30 -06:00
Nathan Whitehead 3e6c0945f1 Update instruction screens to let games keep talking about keys 2022-09-20 14:38:10 -06:00
Nathan Whitehead b6144fd97d Allow some perf flags to be set in duktape configure. 2022-09-20 11:28:36 -06:00
Nathan Whitehead 3f7ae7557d Add duktape configure call to build 2022-09-20 11:09:34 -06:00
Nathan Whitehead 06cf09db55 Add full duktape project 2022-09-20 10:52:21 -06:00