Commit Graph

  • 499edaecd0 Exclude verboseOutputAssignments from LCOV coverage testing Rangi42 2025-07-29 14:53:30 -04:00
  • 225490163e Fix RGBGFX "decanting" on "components" (color sets sharing colors) (#1768) Rangi 2025-07-29 14:52:20 -04:00
  • d388a60daa Reduce deep nesting in gfx/pal_packing.cpp Rangi42 2025-07-29 13:45:19 -04:00
  • 6d05de9d4d Remove a little no-longer-necessary header boilerplate Rangi42 2025-07-29 11:08:23 -04:00
  • 5d6e571338 Mention palette filenames in rgbgfx -c error messages Rangi42 2025-07-29 06:44:33 -04:00
  • 308d488833 Use UpperMap for rgblink -S scramble spec matching Rangi42 2025-07-29 03:37:32 -04:00
  • cecbf0aa0e Add test case for some macro+interpolation behavior Rangi42 2025-07-29 01:34:55 -04:00
  • d21e6669ce Unrefactor peek() to use tail recursion instead of a loop Rangi42 2025-07-29 00:17:10 -04:00
  • 2341d1ee50 Replace platform-specific mmap with reading the entire .asm file Rangi42 2025-07-28 15:15:40 -04:00
  • 53949761a7 Factor out our manual std::filesystem::path.replace_extension replacement into its own function Rangi42 2025-07-28 13:11:47 -04:00
  • f7eb986313 Encapsulate access to sectionList and currentSection Rangi42 2025-07-28 11:22:28 -04:00
  • 75aed1afd5 Factor out an UpperMap for case-insensitive matching Rangi42 2025-07-27 23:14:52 -04:00
  • d16751f56a Avoid hard-coding a redundant "FATAL:" in RGBLINK Rangi42 2025-07-27 20:07:53 -04:00
  • 8b1a5244f7 Avoid hard-coding a redundant "FATAL:" in RGBFIX Rangi42 2025-07-27 19:35:08 -04:00
  • b2747dfbd8 Factor out common usage-help code Rangi42 2025-07-27 19:20:04 -04:00
  • 16e16cdf51 Split up the linkerscript lexer and layout actions Rangi42 2025-07-27 13:03:28 -04:00
  • a353637a90 Split RGBLINK linkerscript parser functions into their own file Rangi42 2025-07-27 10:53:12 -04:00
  • f3cbfcecf4 Split RGBASM parser action functions into their own file Rangi42 2025-07-26 15:35:48 -04:00
  • 3bc8b1ff7c Handle unknown MBCs, since raw numeric values are accepted Rangi42 2025-07-26 14:15:05 -04:00
  • aa46c79db6 Use unordered_map lookups instead of manual switches for MbcType data Rangi42 2025-07-26 13:30:56 -04:00
  • 92acb6e547 Implement a single nbErrors counter inside generic diagnostic code Rangi42 2025-07-26 12:48:25 -04:00
  • ac632d9223 RGBFIX returns 1 if there was a -Werror before processing any files Rangi42 2025-07-26 12:29:57 -04:00
  • 0df5b7b86d Implement warning diagnostic flags for RGBFIX (#1766) Rangi 2025-07-26 12:11:52 -04:00
  • 87c10988ed Add test case for block comments after line continuations Rangi42 2025-07-25 07:47:19 -04:00
  • d6a28a6259 Prefer pre-increment/decrement operators in for loops Rangi42 2025-07-24 18:08:17 -04:00
  • c6d0e8de63 Improve some error messages Rangi42 2025-07-24 11:19:04 -04:00
  • ded4ef4072 Avoid non-ASCII characters when not necessary Rangi42 2025-07-23 21:18:21 -04:00
  • 1849a35e61 Rename proto-palettes to color sets (copied from rsgbds) Rangi42 2025-07-23 21:03:50 -04:00
  • 18e35053fa Replace vectors with unordered_sets Rangi42 2025-07-23 18:17:39 -04:00
  • 7e151f16c3 Factor out a single PNG-reading function to encapsulate the libpng API (#1765) Rangi 2025-07-23 15:53:33 -04:00
  • 2ce4cdbff6 Reduce deep nesting some more, including larger refactors to assign.cpp Rangi42 2025-07-22 13:03:21 -04:00
  • eea532ded1 Make sectionMap not extern Rangi42 2025-07-21 20:20:04 -04:00
  • c83b87e0a0 Make all non-extern globals static Rangi42 2025-07-21 20:14:09 -04:00
  • 8d268e8a8a Initialize maxRecursionDepth with other options Rangi42 2025-07-21 19:58:37 -04:00
  • ee0f311c10 Make nbErrors not extern Rangi42 2025-07-21 19:49:08 -04:00
  • 61730be6ce Make failedOnMissingInclude not extern Rangi42 2025-07-21 19:40:01 -04:00
  • 5f333d9753 More refactoring around extern variables Rangi42 2025-07-21 19:22:10 -04:00
  • d1493a9f96 Group extern RGBASM variables in an Options struct Rangi42 2025-07-21 19:01:23 -04:00
  • d652212857 Group extern RGBLINK variables in an Options struct, like RGBGFX Rangi42 2025-07-21 18:12:40 -04:00
  • 0cd60ea1e6 Use a patch_AddAssertion function instead of extern assertions Rangi42 2025-07-21 17:49:41 -04:00
  • a0e23ee911 Remove unnecessary extern from nbSectionsToAssign Rangi42 2025-07-21 17:27:43 -04:00
  • ad81c74cda Support PNG-format palette spec files (#1764) Rangi 2025-07-21 11:33:16 -04:00
  • 9ef32e405c Combine two places that did REPT chain printing Rangi42 2025-07-20 15:16:53 -04:00
  • 89ca6a325c Increase parser test coverage Rangi42 2025-07-20 13:37:43 -04:00
  • 9e0e7ef9a1 Improve RGBASM test coverage Rangi42 2025-07-20 13:11:42 -04:00
  • 2dc948fefb Miscellaneous refactoring Rangi42 2025-07-20 12:25:40 -04:00
  • e3a5290dad Restore blue-painting of macro arg expansions to prevent recursion Rangi42 2025-07-20 11:53:36 -04:00
  • cfe1f60e47 Refactor peek() to use a loop instead of tail recursion Rangi42 2025-07-20 11:30:07 -04:00
  • 0eed237517 Refactor peeking at macro args to be like peeking at interpolations Rangi42 2025-07-20 11:21:44 -04:00
  • 68ffb01cac Use nextChar() for shiftChar() and then peek() Rangi42 2025-07-20 11:15:06 -04:00
  • 169ac61e14 Rename nextChar to bumpChar in the RGBASM lexer for symmetry with std::filebuf in the RGBLINK lexer Rangi42 2025-07-20 11:02:02 -04:00
  • 0681110647 Refactor peek() some more Rangi42 2025-07-20 10:38:50 -04:00
  • 8d1b111692 Small lexer refactors, commenting when tail recursion occurs Rangi42 2025-07-19 23:37:59 -04:00
  • 2935942667 Allow multiple preinclude files (#1763) Rangi 2025-07-19 17:07:15 -04:00
  • 9a4593e823 Reduce nesting depth some more Rangi42 2025-07-19 15:52:46 -04:00
  • 250e08043b Fix -W parameter parsing Rangi42 2025-07-19 15:43:54 -04:00
  • 14f5e16ae8 Prefer pre-inc/dec unless post-inc/dec are necessary Rangi42 2025-07-19 15:04:08 -04:00
  • bf69043a1d Reduce deep nesting some more Rangi42 2025-07-19 13:44:58 -04:00
  • 7086b8aeff Document that -MG and -MC count READFILE Rangi42 2025-07-18 20:26:24 -04:00
  • 53c39d01d4 Implement READFILE function (#1759) Rangi 2025-07-18 18:27:52 -04:00
  • 4a2f9fc744 A little refactoring Rangi42 2025-07-18 14:17:23 -04:00
  • e7d63f5f6b Refactor code that handles when included files are missing Rangi42 2025-07-18 14:03:23 -04:00
  • b80b30fba1 Ensure that INCBIN parameters are non-negative Rangi42 2025-07-18 12:30:37 -04:00
  • 8e84850679 Run clang-tidy with make tidy Rangi42 2025-07-18 10:10:34 -04:00
  • e31256c0d4 Remove rgbasm-only -lm from Makefile Rangi42 2025-07-18 08:22:40 -04:00
  • 9a9fd6603c Replace test comments with assertions Rangi42 2025-07-18 07:40:01 -04:00
  • e99ff5ac45 Use more concrete types instead of auto Rangi42 2025-07-17 23:48:08 -04:00
  • 60cec85638 Use separate caches for zlib and libpng on Windows 2022 vs 2025 Rangi42 2025-07-17 21:47:45 -04:00
  • 39f2ed1339 Fix order of sentences Rangi42 2025-07-17 20:14:50 -04:00
  • 4c8724899b Support SIZEOF(reg) to distinguish 8- and 16-bit registers (#1758) Rangi 2025-07-17 15:49:28 -04:00
  • 0c96234532 Use concrete types instead of auto when convenient and not redundant (#1757) Rangi 2025-07-17 14:59:51 -04:00
  • 9dddd87893 Run all CMake commands in bash (#1755) Rangi 2025-07-17 13:39:37 -04:00
  • 5eb093f13e Implement warning diagnostic flags for RGBLINK (#1754) Rangi 2025-07-17 12:54:29 -04:00
  • 529989bde5 Update libpng to 1.6.50 (#1750) Rangi 2025-07-16 19:00:51 -04:00
  • 776e37980b Add gb-starter-kit to test suite, excluding it on Windows, macOS, and BSD (#1753) Rangi 2025-07-16 18:17:01 -04:00
  • 7f24d46d44 Support more syntax in linkerscripts (#1752) Rangi 2025-07-16 15:00:02 -04:00
  • cf6e5fec63 Fix unterminated strings in linkerscripts consuming their newline Rangi42 2025-07-16 09:59:48 -04:00
  • d8fc25ee43 Add TODO comment for SDAS XL4 support Rangi42 2025-07-15 22:07:11 -04:00
  • a0eccceb01 Remove unplanned TODO comments Rangi42 2025-07-15 21:53:55 -04:00
  • 2720224890 Refactor parsing of ld hl, sp + e8 Rangi42 2025-07-15 21:52:22 -04:00
  • 8bebab1db0 Abbreviate RGBLINK errput that includes a src+lineNo Rangi42 2025-07-15 18:17:01 -04:00
  • ee29579d3e Reduce some more deep nesting Rangi42 2025-07-15 17:41:32 -04:00
  • 5aec36350b Document more deprecated/removed features Rangi42 2025-07-15 16:32:03 -04:00
  • 1fecf80659 Implement 'character' literals (#1747) Rangi 2025-07-15 13:08:50 -04:00
  • b6d77fbb9e Implement BYTELEN and STRBYTE (#1744) Rangi 2025-07-14 21:46:35 -04:00
  • 8a19c5c30a Fix string function behavior with NUL characters (#1746) Rangi 2025-07-14 21:43:32 -04:00
  • 0149122cd0 Note how to print lexed token names for future reference Rangi42 2025-07-14 10:25:47 -04:00
  • 35335aadbe Add test for labels when expecting symbols Rangi42 2025-07-14 00:10:14 -04:00
  • 80df858ee3 Clarify comment Rangi42 2025-07-14 00:02:25 -04:00
  • eafc32fd68 Simplify switch with one case to if Rangi42 2025-07-13 23:44:18 -04:00
  • 2adeda0318 Use std::tie for sort comparator functions Rangi42 2025-07-13 14:47:10 -04:00
  • 21a6d35b8b Simplify readString Rangi42 2025-07-13 13:26:59 -04:00
  • ce78280af3 Simplify appendCharInLiteral Rangi42 2025-07-13 13:19:54 -04:00
  • 041b86b8dd Use Defer instead of relying on a "Don't return before this" comment Rangi42 2025-07-13 12:52:45 -04:00
  • 611b0041c4 Exclude Bison-generated files from coverage report, and use dark theme (#1742) Rangi 2025-07-12 10:11:23 -04:00
  • ddb2acb652 Reduce more nesting depth, and fix an error message Rangi42 2025-07-12 08:17:26 -04:00
  • da133baf17 Reduce nesting depth in lexer.cpp Rangi42 2025-07-12 07:54:16 -04:00
  • d32b1912ed Use verbosePrint in rgbasm as well as rgblink Rangi42 2025-07-12 01:38:19 -04:00
  • 82513e5255 Simplify appendCharInLiteral Rangi42 2025-07-11 23:52:52 -04:00
  • f2708ce967 Consolidate readString and appendStringLiteral Rangi42 2025-07-11 23:31:41 -04:00