summaryrefslogtreecommitdiff
path: root/apps/plugins/puzzles (unfollow)
Commit message (Collapse)Author
2017-07-27puzzles: enable MinesHEADmasterFranklin Wei
It should work now that arm memset() has been fixed for negative values. This is the last puzzle that was disabled due to a crash.
2017-07-27puzzles: new input scheme for Mines and MagnetsFranklin Wei
Both these puzzles now have long press mapped to spacebar.
2017-07-27puzzles: polish up the config menusFranklin Wei
2017-07-27puzzles: tweak text positioningFranklin Wei
2017-07-27puzzles: font cachingFranklin Wei
This lets puzzles remember which fonts were loaded previously so they can be preloaded when the puzzle is started (and the disk is spinning), instead of while the game is being played.
2017-07-27puzzles: add number chooser for integer settingsFranklin Wei
Sure beats typing on the virtual keyboard.
2017-07-27puzzles: update debug menuFranklin Wei
Add an option to visualize polygon rendering to aid in diagnosing artifacts.
2017-07-27puzzles: fix flag drawing in MinesFranklin Wei
Yet another workaround to accomodate our polygon drawing "algorithm" (if you can call it that).
2017-07-17puzzles: fix star drawing in SignpostFranklin Wei
- change point ordering to make concave polygon rendering work - also enables an "Easter egg" of sorts Change-Id: I3b4044a374dce1cff889d5f3744de9e634978591
2017-07-17puzzles: dynamic text size via custom font packFranklin Wei
Up to now, we'd just ignore whatever font size the puzzle asked for, and instead just go with either the UI font or system font regardless of their size, which led to some horrible-looking puzzles. This patch adds the ability to automatically load fonts of the proper size when they are available, which makes text-based puzzles such as Pattern and Slant function correctly with any UI font. The font pack, which should be extracted to the system-wide fonts directory consists of 3 small bitmap fonts from 7px to 10px and then anti-aliased Deja Vu fonts from 10px to 36px. It is available in the source tree (apps/plugins/puzzles/fonts.zip), or from <http://download.rockbox.org/useful/sgt-fonts.zip>. Change-Id: I05c8fe7bd6d867e14de9b941deb91e8c642ee4a8
2017-07-12puzzles: allow using hints in FifteenFranklin Wei
This maps the select button to the "h" key for Fifteen only. Change-Id: I7a5a61cec46e86254218fabfb191974f98c12319
2017-06-03puzzles: remove redundant help contentFranklin Wei
It used to be that each puzzle had a complete copy of the entire puzzles manual and the "quick help" text for every single puzzle. This was obviously a waste, so now each puzzle only has the sections of the manual that apply to it, saving about 100KB or so per puzzle. This also has the added benefit of shrinking binary size enough to allow full help support on the c200v2, which has been enabled. Change-Id: I76c799635de058e4a48e0c18b79537857af7cf85
2017-06-02puzzles: correct drawmode for textFranklin Wei
DRMODE_FG should be used instead of DRMODE_COMPLEMENT to allow text to be drawn in color, benefitting puzzles such as Slant and Pattern. Change-Id: I292216490a58344cb93dc5c2ec1780229735313a
2017-05-22puzzles: work around inconsistent namingFranklin Wei
Change-Id: I0541485af087d0bea845e05fbcf61b01be91bf6f
2017-05-21puzzles: clarify target-specific macrosFranklin Wei
Change-Id: I1f68f25a557bb2daa5e83a6d6f02711abeec5165
2017-05-18puzzles: fix Bridges crash on Clip ZipFranklin Wei
- small screen could lead to invalid viewport coordinates Change-Id: I1f2a323554e4ed31f250218220b464a02bffa308
2017-05-17puzzles: fix buildingFranklin Wei
- disables help on c200v2 - renames conflicting function Change-Id: I0c4ff1bb40e7e3cafd0170090f22b80bf0656741
2017-05-16puzzles: full help systemFranklin Wei
- embeds the upstream halibut documentation for plugin use - currently every plugin has a copy of the help text, but in the future a centralized system using overlays might be better Change-Id: Idb6eb9accc2fa786a4c6bc2b704e7cf5fd3f78dd
2017-05-04puzzles: remember the previous preset when selectingFranklin Wei
Change-Id: I22c84257a3aa9b19bf5e94f9de51204bbade08c5
2017-05-04puzzles: fix optimization flagsFranklin Wei
Change-Id: Ib0524fd4594e9524612eca0da54b3d13dc79b22c
2017-05-02puzzles: simplify makefileFranklin Wei
Change-Id: I14b4bda7e706e73d2d4475c9d536fbef9e2b9577
2017-04-30add fake stdio.hFranklin Wei
Change-Id: Iec6159b095b29b5ffb3ef5a46d068012fbe10f00
2017-04-30add rule for rbcompat.hFranklin Wei
Change-Id: Icb7320f9233f2c121a8487d5b5c4cbcb483e9345
2017-04-30fix puzzles: round 4Franklin Wei
Change-Id: Ibba738b8179c166f680dee0ce7536890fca1c0e4
2017-04-30fix puzzles... round 3Franklin Wei
Change-Id: I014ace22f0b83d8e407bd46df361532207f984bc
2017-04-30Fix puzzles... againFranklin Wei
Change-Id: I34dd8673ebcbc7fcd55681175d0e18c8bbc5fe6c
2017-04-29puzzles: refactor and resync with upstreamFranklin Wei
This brings puzzles up-to-date with upstream revision 2d333750272c3967cfd5cd3677572cddeaad5932, though certain changes made by me, including cursor-only Untangle and some compilation fixes remain. Upstream code has been moved to its separate subdirectory and future syncs can be done by simply copying over the new sources. Change-Id: Ia6506ca5f78c3627165ea6791d38db414ace0804
2017-02-10puzzles: fix makefile producing temporary files in the build directory (sorry!)Franklin Wei
- thanks to Michael Sevakis for catching this Change-Id: Ia02ba7a06a55bc0741df9ce2c21f868d7e0abdd4
2017-02-09puzzles: fix up makefileFranklin Wei
- rewrote a bunch of repetitive rules with a pattern rule Change-Id: I86a61a7ed8398f18789e5efaf4996d9eafd50651
2017-01-16puzzles: more accurate sin() and cos()Franklin Wei
- now uses fp_sincos() Change-Id: I20c8224cac98fc677097161737d25dd9038bede2
2017-01-16puzzles: change default optimization to -O2Franklin Wei
Change-Id: I606df468f92f8d550827c122a9cfd5248866afdb
2017-01-16puzzles: disable unplayable puzzles (Solo and Loopy)Franklin Wei
- accidentally enabled in c200v2 fix Change-Id: I252191fc47da9fe1a664a260cb53f6a5a1eea437
2017-01-15fix whitespaceFranklin Wei
Change-Id: I9b0659c218f92051a4de99ec03b97a2b1d067e29
2017-01-15puzzles: fix building on c200v2Franklin Wei
- disables Solo and Loopy Change-Id: I3de15c0ad001683a4303950972af2f5988d438d0
2017-01-15puzzles: antialiased line drawing via Wu's algorithm and optional ↵Franklin Wei
"shortcuts" for undo/redo - line drawing should eventually be moved to xlcd, but for now it's very unportable code - also fixes a minor issue with the configuration screens Change-Id: I897f01b7210cbbec32665c2bc67920c965ea0bec
2017-01-15Fix compilation of puzzles on WindowsAmaury Pouly
mingw exports vsscanf and that clashes with rbwrappers' definition. Change-Id: I87481ff4e93547059b2e1fa8083bedcf8633343a
2017-01-13Revert "puzzles: antialiased line drawing and optional "shortcuts" for ↵Franklin Wei
undo/redo" This reverts commit 8e4429853d1ac024ac2b8069636cc210cf5bab1b. Change-Id: Id622d58ad4b3b9dd3313811c8a2f83202d21f5ee
2017-01-13puzzles: fix configuration menu (again!)Franklin Wei
Change-Id: I440f3cea1bbeb3e7bda4aebefaaece3e8f3d44fd
2017-01-13puzzles: antialiased line drawing and optional "shortcuts" for undo/redoFranklin Wei
- line drawing should eventually be moved to xlcd, but for now it's very nonportable code - fixes a minor issue with the configuration screens Change-Id: I897f01b7210cbbec32665c2bc67920c965ea0bec
2017-01-13puzzles: enable fallback to audiobuf when smalloc() failsFranklin Wei
- upon a failed smalloc(), the audio buffer will be used for further allocations - should fix things on low-memory targets (c100 and c200v2), but breaks playback - playback should still be intact on other targets Change-Id: Ic239f1316efadc957050afacf5c614dbbca3f805
2017-01-07puzzles: add cursor interface to untangleFranklin Wei
- makes it playable - submitted to upstream Change-Id: Ib672ee374d500a994bc8e78eb01fea529ec5132f
2017-01-04puzzles: fix a minor bug in the configuration screenFranklin Wei
- when an invalid string setting was entered, the string value would continue to be used after being freed Change-Id: I3a9da016f6f32eac8636b9f55e4e09006bc6059e
2017-01-04puzzles: minor polishing touches on the user interfaceFranklin Wei
- the debug menu has been neatly hidden away in the classic Android style ;) - playback control option added to the pause menu when possible - also fixes a minor redraw issue Change-Id: I00d0186986a8e659991948336b26b4f2e2a0ce66
2017-01-04puzzles: fix a few thingsFranklin Wei
- old acos() function was broken, replaced with a call to atan2(); this fixes "Cube!" - Makefile extended to support building "unfinished games", but not enabled - a backdrop issue fixed in rockbox.c Change-Id: I9393e958d43de32f4ccf18e1cb409f75c2e1ed3c
2017-01-03puzzles: rename bcopy() to bcopy_wrapper() and make staticFranklin Wei
- fixes a name collision on linux Change-Id: I9f162b5c8a1f319fa6495ff9343fb6007cc20edf
2017-01-01Fixes and re-sync for puzzlesFranklin Wei
- Updates to latest upstream (7cae89fb4b22c305b3fd98b4e1be065ad527a9f7). - Also fixes a bug relating to updating parts of the display. - Adds some docs. Change-Id: Idfcce66e0cf3c59e467bab42eafc161df2e495bb
2016-12-18work around little bugs in puzzlesFranklin Wei
Change-Id: I80d72a6bb0189eb842385aa622506d5efe319053
2016-12-18add missing file to puzzlesFranklin Wei
Change-Id: I63b80718f48eede54c3312d9e66c77bfd2472a79
2016-12-18Port of Simon Tatham's Puzzle CollectionFranklin Wei
Original revision: 5123b1bf68777ffa86e651f178046b26a87cf2d9 MIT Licensed. Some games still crash and others are unplayable due to issues with controls. Still need a "real" polygon filling algorithm. Currently builds one plugin per puzzle (about 40 in total, around 100K each on ARM), but can easily be made to build a single monolithic overlay (800K or so on ARM). The following games are at least partially broken for various reasons, and have been disabled on this commit: Cube: failed assertion with "Icosahedron" setting Keen: input issues Mines: weird stuff happens on target Palisade: input issues Solo: input issues, occasional crash on target Towers: input issues Undead: input issues Unequal: input and drawing issues (concave polys) Untangle: input issues Features left to do: - In-game help system - Figure out the weird bugs Change-Id: I7c69b6860ab115f973c8d76799502e9bb3d52368