ISSOtm
4cfed3c98f
Rewrite charmap system
...
Avoid allocating a *ton* of data per charmap
Stop relying on uninitialized data in charmap nodes
Only initialize charmap nodes lazily
2020-10-04 04:31:10 +02:00
Eldred Habert
6af57ff026
Merge pull request #581 from JL2210/cmake-docs
...
Install manpages with CMake
2020-10-03 22:15:17 +02:00
ISSOtm
2e3db9d56a
Clean up label generation
...
Only check for localness when we already know we have a local
2020-10-03 21:33:30 +02:00
James Larrowe
f8d9fa87ed
Install manpages with CMake
2020-10-03 12:37:56 -04:00
James Larrowe
03e20138d3
Use pkg-config to detect libpng
...
Only fall back to findpng
2020-10-01 18:58:36 -04:00
ISSOtm
a1286e6f0e
Make newlines explicit in error messages
...
In preparation for a change a PR is about to make
2020-09-27 10:54:06 +02:00
ISSOtm
ba051e10fb
Factor printing assert failures into functions
...
Saves some code duplication
2020-09-27 09:24:24 +02:00
ISSOtm
9fee0603b1
Fix typo in object file format doc
...
Thanks @ax6!
2020-09-24 16:43:13 +02:00
ISSOtm
ec5a1bc71f
Fix incorrect obj file documentation
...
Bit 7 of section types was actually documented in the symbol type
Bit 6 of section types was not documented at all
2020-09-24 10:26:02 +02:00
ISSOtm
66784b7122
Fix documentation not mentioning SECTION FRAGMENTsyntax
2020-09-20 00:06:51 +02:00
ISSOtm
54f2d99ce7
Apply two minor fixes to rgbasm(5)
...
Mustn't → must not
Add a comma to INCBIN sentence to mirror INCLUDE's
2020-09-17 20:45:58 +02:00
ISSOtm
d22a667095
Update help text to redirect to new online docs
2020-09-17 03:10:02 +02:00
ISSOtm
210a4a957a
Get rid of in-repo HTML documentation
...
The online documentation is now managed by a CI hook
2020-09-15 18:39:22 +02:00
ISSOtm
131ad9b315
Fix GitHub link in BUGS sections
2020-09-15 18:35:04 +02:00
ISSOtm
06b4cf57ab
Fix example arguments to -MT appearing as options
2020-09-15 18:32:13 +02:00
ISSOtm
dbefdc923a
Clean up doc post-processor
...
Description blurb is already inline from new stylesheet
`Xr` links are already handled by `mandoc` now
Handle spaces between both dashes in long options
Remove `<head>` modifications, as fragments are generated instead
2020-09-15 18:30:40 +02:00
ISSOtm
5e63527190
Update repo link at bottom of all man pages
2020-09-15 16:00:17 +02:00
ISSOtm
bb6a5441ed
Update RGBDS history to mention org move
2020-09-15 15:02:26 +02:00
Marco Spataro
34c2288fd0
Fix __FILE__ when filename contains quotes
2020-09-10 12:49:04 +02:00
ISSOtm
304bb9f902
Remove most Hungarian notation in section module
...
Seriously, it sucks.
2020-09-06 20:43:13 +02:00
ISSOtm
14be01880d
Move UNION code inside section.c
...
Improves organization and locality
2020-09-06 19:18:10 +02:00
ISSOtm
12b7cf3cd4
Move curOffset into section code
...
Improves organization
2020-09-06 18:50:19 +02:00
ISSOtm
0d7914bff7
Fix asm/charmap.h not including required header
2020-09-06 17:16:49 +02:00
Eldred Habert
d2801505c3
Merge pull request #562 from Rangi42/strsub-0
...
Resolve #554 : STRSUB("<N-char string>", N, 0) will not warn "Position N is past the end of the string"
2020-09-03 12:12:03 +02:00
ISSOtm
9d62b4b9bb
Fix bugs with LOAD section size
...
LOAD blocks did not properly update their parent's size until after closed
Additionally, section size wasn't correctly sanitized inside LOAD blocks
2020-09-03 12:07:12 +02:00
Rangi
b65b723fa6
Resolve #554 : STRSUB("<N-char string>", N, 0) will not warn "Position N is past the end of the string"
2020-08-31 15:40:25 -04:00
ISSOtm
e05321356b
Fix truncation warning when adding charmap mapping
...
It used to warn when mapping negative values
2020-08-31 21:33:53 +02:00
ISSOtm
0778959e98
Remove arbitrary limits on charmap
...
They were made irrelevant when switching to a trie
2020-08-31 21:26:21 +02:00
Eldred Habert
76331d1c4a
Merge pull request #552 from mattcurrie/incbin-length-optional
...
Make INCBIN's length argument optional
2020-08-23 00:11:54 +02:00
Matt Currie
c389e8dccb
Fix typo
...
'arugment' => 'argument'
2020-08-17 13:57:58 +12:00
James Larrowe
5a9f2b7750
Add DEVELOP option to CMake
...
This requires CMake 3.0 so -Werror won't conflict with link tests.
Remove all version checks to improve simplicity.
2020-08-16 13:23:29 -04:00
ISSOtm
fcfecc6e82
Improve description of @ symbol
...
As requested by someone on GBDev
2020-08-15 15:23:11 +02:00
Matt Currie
f863a927c1
Make INCBIN's length argument optional
...
INCBIN can now be used with just a start position to include everything
from the start position until the end of the file.
2020-08-15 17:24:11 +12:00
Eldred Habert
cb4fbdfcd5
Merge pull request #550 from rednex/an/array
...
Refactor warning array for clarity
2020-08-05 10:53:21 +02:00
Eldred Habert
c6eacde55e
Merge pull request #544 from ISSOtm/atomic_ind
...
Split register-indirect tokens
2020-08-05 10:52:18 +02:00
Antonio Niño Díaz
daf780c7e6
Refactor warning array for clarity
2020-08-04 22:28:56 +01:00
ISSOtm
762474d3ac
Let RGBASM write JR offsets in floating sections
...
This requires some special-casing for `jr @` because the `jr` opcode has
already been emitted, but not the operand, so PC points to the middle.
Moved the RGBLINK test to RGBASM's folder, and created a new RGBLINK test.
2020-07-27 18:17:29 +02:00
ISSOtm
b1adbcc77c
Output a non-empty RPN buffer from known expressions
...
The code expected to never get "known" expressions passed in, as RGBASM
otherwise patches the bytes in by itself; however, JR cannot be patched in
by RGBASM unless the section's base address is known as well!
2020-07-27 17:43:31 +02:00
ISSOtm
0600856167
Move incbin slice sign check
...
The grammar's message is pretty generic, so this one is more useful.
2020-07-23 01:06:28 +02:00
ISSOtm
ca6fa6d1d7
Split register-indirect tokens
...
This allows whitespace between the brackets and the register.
This also fixes #531
Note that `$ff00 + c` is still treated as a single token, because trying to
use an expression on the left side causes a shift/reduce conflict.
This isn't great, but most people seem to be either used to it as-is, or
using the new `ldh a, [c]` syntax.
If this causes problems with a lexer rewrite, it'll be deprecated; but for
now, keep it around, as the support is clunky but bearable.
2020-07-22 15:00:39 +02:00
ISSOtm
f5b0c701a6
Add install hint to CMakeLists
2020-07-21 23:41:56 +02:00
ISSOtm
69a8c62863
Add install directives to CMakeLists
...
Otherwise `make install` or `cmake --install` does not work
2020-07-21 23:17:33 +02:00
Eldred Habert
29314f76f7
Merge pull request #533 from JL2210/platform-fixes
...
Add platform-specific fixes file (only for MSVC, currently)
2020-07-21 22:11:25 +02:00
ISSOtm
8e92383fa3
Enable -Wobsolete by default
...
The fact that deprecations were common and quickly acted upon was raised by
some users
2020-07-21 21:06:48 +02:00
James Larrowe
e51701acaa
Add platform-specific fixes file
...
Create a new file, platform.h, for platform-specific hacks
for MSVC, this includes defining strncasecmp to _stricmp and
strdup to _strdup, among other things like defining missing
stat macros
Change some things not supported in MSVC, like _Static_assert,
to their counterparts (in this case, static_assert)
Replace usage of VLAs with malloc and free
Update getopt_long and use the getopt implementation from musl
on Windows.
Use comments to show which functions from platform.h are being used
2020-07-21 14:24:22 -04:00
ISSOtm
0793e9effe
Fix develop compilation error
...
This bug slipped by because my pre-commit hook for testing was broken...
2020-07-21 20:10:28 +02:00
ISSOtm
c25b0be085
Document that -t and -w convert section types
...
This is also a fairly overdue doc update
2020-07-21 20:05:26 +02:00
ISSOtm
1f2f797cb9
Add section fragments
...
Fixes #517 , and hopefully enables RGBDS as a SDCC back-end
2020-07-21 19:56:46 +02:00
ISSOtm
aca00e4fce
Document MP etc. in rgbasm(1)
...
This is actually kind of overdue...
2020-07-21 15:55:56 +02:00
daid
6d53753c66
Make the local variables of getopt static.
...
While compiling for empscripten there is a duplicate symbol conflict with these two variables. And as they are only used locally, and do not need a symbol exported they can just be static.
2020-07-21 10:21:33 +02:00