Rangi
c01317e08d
Only increment the unique \@ ID when it is first used per context ( #1030 )
...
This avoids changes to generated `\@` labels just by adding or
removing macros or loops which do not actually use `\@`.
Fixes #1019
2022-08-31 17:45:21 -04:00
Rangi
a52a00a9ca
macro_UndefUniqueID uses 0 to mean \@ is undefined
2022-08-30 16:50:34 -04:00
Rangi
fa13611bbf
Make comments more consistent
...
- Changes most `/* comments */` to `// comments`
- Changes `/**` block comments consistently to `/*`
- Adds consistent license comments to all files
Also renames `T_POP_SET` to `T_Z80_SET`
2022-08-30 07:51:32 +02:00
Rangi
dca24a6d50
Test that OPT r fails immediately if the recursion depth is already exceeded
...
Fixes #1034
2022-08-28 22:21:24 +02:00
Rangi
4363ffcad4
Clarify the JR documentation based on its usage ( #1032 )
...
Fixes #1020
2022-08-28 15:42:04 -04:00
Rangi
14e6a79adc
Deprecate the old macro syntax ( #1025 )
...
Fixes #1011
2022-08-28 15:22:21 -04:00
Rangi
7a2ee26792
rgbasm -r sets the maximum recursion depth (#1026 )
...
Previously it set the minimum failure depth (off by one)
Fixes #978
2022-08-28 15:21:29 -04:00
Rangi
425339ccf6
Implement FMOD function for fixed-point modulo
...
Fixes #1021
2022-08-28 21:21:10 +02:00
Rangi
1a1f1365e6
Clarify the FOR loop documentation ( #1031 )
...
Clarify the FOR loop documentation
Fixes #1003
Co-authored-by: Eldred Habert <eldredhabert0@gmail.com >
2022-08-28 15:16:49 -04:00
Rangi
f97139461c
Clarify the linkerscript example ( #1028 )
...
* Clarify the linkerscript example
* Explain that backslash escape sequences are supported
Fixes #1006
2022-08-28 15:13:43 -04:00
Rangi
8207dc57b7
Add a -Wunmapped-char warning for characters not in the charmap ( #1023 )
...
Fixes #1022
2022-08-28 15:12:43 -04:00
Rangi
d29057e747
Indent "SLACK:" to match the "SECTION" headers
2022-08-28 20:35:21 +02:00
Rangi
f1b74fa610
Report empty space between sections in map file
2022-08-28 20:35:21 +02:00
Rangi
c7a92d3104
rgblink -M omits symbol names from .map file
2022-08-28 20:35:21 +02:00
ISSOtm
0105779789
Fix incorrect Bash completions after --long-opt=
...
This is because `$COMP_CWORD` points to that `=` "word".
2022-08-10 08:44:41 +02:00
ISSOtm
9ef7954670
Fix some lint warnings in Bash completions
2022-08-10 00:16:05 +02:00
ISSOtm
d7d524294b
Fix shebangs in Bash completion scripts
...
Not that you are really supposed to run them stand-alone?
2022-08-09 22:32:18 +02:00
ISSOtm
12fed4c68e
Harden Bash completion scripts against invalid states
...
Printing an error message is better than locking the shell up, honestly.
2022-08-09 22:30:50 +02:00
ISSOtm
3db3421f07
Correct wrong state transitions in RGBGFX Bash completion script
...
Isn't strinly-typed programming just lovely?
Fixes #1018
2022-08-09 22:28:12 +02:00
ISSOtm
92eb0a133b
Allow rgbgfx -r to read an infinite amount of tiles without tilemap
...
Previously, indices would be wrapped after 256 even without a tilemap;
since RGBGFX can generate arbitrarily large tile data if `-N` is not used,
it should be possible to read those in.
Of course, this won't work if a tilemap is provided, but such "big blobs"
can't generate a meaningful tilemap anyway.
2022-08-04 20:50:08 +02:00
ISSOtm
b02ccf8f4a
Check before attempting to generate empty image
...
This causes a libpng warning then error, but print a better error message
Fixes #1016
2022-08-04 20:40:20 +02:00
ISSOtm
2e0991f32b
Use proper 16-bit type for image reversing width
...
Fixes #1015
2022-08-04 20:40:20 +02:00
Eldred Habert
f3f2c2ca16
Improve object file format documentation ( #1010 )
...
Replacing the big pre-formatted text block with a list brings:
- Better accessibility, obviously
- Responsiveness
- Better formatting (bold, etc.)
- Sub-sections that can now be linked to
- Hyperlink cross-refs to other pages
The slight disadvantage is that `ENDC` etc. are now individual
list items, whereas they'd be better as part of the same item.
No big deal though, it was much worse before.
Some descriptions have been overhauled for clarity, and some
outright corrected (such as Assertions' "Offset" field).
Co-authored-by: Antonio Vivace <avivace4@gmail.com >
2022-07-29 22:48:55 +02:00
ISSOtm
9ec8186ac6
Switch linkdefs from scattered arrays to an array of structs
...
The info is better organized this way
2022-07-19 19:11:02 +02:00
ISSOtm
ab9945c1ee
Avoid using fscanf to detect RGBDS object files
...
This function is made for text, e.g. accepts spaces, leading zeros, etc. before `%u`.
This way checks that the correct amount of bytes are read instead.
2022-07-19 19:10:58 +02:00
ISSOtm
18e4f132a8
Fix labels subtraction docs
...
Fixes #1009
2022-07-14 13:43:36 +02:00
ISSOtm
828b2adcdf
Make RGBLINK able to link SDCC object files
...
This requires a LOT of tricky code, mostly due to the format itself being,
er, not the most straightforward.
Everything is converted to existing RGBLINK concepts (sections, patches,
etc.), so the core code is essentially unchanged.
(A couple of genuine RGBLINK bugs were uncovered along the way, so some of
the core code *is* changed, notably regarding `SECTION FRAGMENT`s.)
All of this code was clean-roomed, so SDCC's GPLv2 license does not apply.
2022-07-11 21:17:34 +02:00
ISSOtm
1c2965467d
Process linker script before doing sanity checks
2022-07-11 21:17:34 +02:00
ISSOtm
d243e50390
Do not perform any sanity checks for bad section types
...
Otherwise, the arrays get overflowed
2022-07-11 21:17:34 +02:00
ISSOtm
acb33777c6
Sort RGB colors as specified in the docs
2022-07-10 12:36:10 +02:00
ISSOtm
d15916b1bd
Clarify sorting order of RGB colors
2022-07-10 12:32:57 +02:00
ISSOtm
28fcef0ecd
Improve some wording slightly
2022-07-10 12:30:18 +02:00
ISSOtm
b53c115ec2
Fix width and height being reported in wrong order
2022-07-10 12:14:24 +02:00
ISSOtm
6a51e39a5c
Print error if reverse() fails to open a file
2022-07-10 11:55:56 +02:00
Antonio Vivace
e348f70866
Remove funding options, leaving only OpenCollective
2022-07-08 21:22:28 +02:00
ISSOtm
43a487f0bf
Fix two inverted column widths
2022-07-02 17:48:28 +02:00
ISSOtm
6b2dc37f43
Release 0.6.0-rc1
v0.6.0-rc1
2022-07-02 17:08:54 +02:00
ISSOtm
2b83a81ceb
Update completion scripts
...
Also correct minor blunders in the man page
2022-07-02 17:04:17 +02:00
ISSOtm
ca8693690a
Cancel -U option
...
As it turns out, it is really difficult to implement, and can be dealt with later.
2022-07-02 17:04:17 +02:00
ISSOtm
87092208bc
Stop passing options.columnMajor explicitly everywhere
2022-07-02 17:04:17 +02:00
ISSOtm
0d32775a1f
Add more sanity checks when reversing an image
2022-07-02 17:04:17 +02:00
ISSOtm
0df07d3688
Add note on supporting extra pal formats
2022-07-02 17:04:17 +02:00
ISSOtm
3f70372308
Implement slicing input image
2022-07-02 17:04:17 +02:00
ISSOtm
9646f15b59
Add error message for nigh-impossible proto-palette overflow
2022-07-02 17:04:17 +02:00
ISSOtm
973fbb91bc
Improve error message when a tile has too many colors
2022-07-02 17:04:17 +02:00
ISSOtm
903862c451
Improve flag set generation of RGBGFX tests
...
Less duplication = good
2022-07-02 17:04:17 +02:00
ISSOtm
3f5983358c
Add proper error message for bad manual palettes
2022-07-02 17:04:17 +02:00
ISSOtm
7a7126f3b8
Implement bit flipping with a lookup table
...
Should improve performance.
This version is cooler, and also does not suffer from iteration limits
2022-07-02 17:04:17 +02:00
ISSOtm
b4dadd35b6
Use an iterator zip
...
Simplifies iterating over tiles and attributes at the same time
2022-07-02 17:04:17 +02:00
ISSOtm
d9b1402ef8
Fix RGBGFX number parsing
2022-07-02 17:04:17 +02:00