Commit Graph

1974 Commits

Author SHA1 Message Date
stag019
af506985e5 Added license to charmap.c 2014-02-03 20:46:52 -05:00
yenatch
b2d523acde rgbasm: Evaluate BANK() arguments to verify they exist.
Symbols are created when using a label in the wild, even if they aren't defined. Solely using a symbol as an argument to BANK() skips this, so the symbol is never created.

This evaluates the argument instead of trying to find a symbol. This way, symbols that don't exist are created when passed into BANK().
2014-02-01 21:14:56 -05:00
Anthony J. Bentley
0f488b6759 Remove unused alloca() implementation. 2014-01-31 00:01:42 -07:00
stag019
240d2a7f14 Merge https://github.com/bentley/rgbds 2014-01-29 00:18:10 -05:00
yenatch
2ff286223b add instruction "ld hl, sp+nn"
The previous "ld hl, [sp+nn]" is incorrect, but remains for compatibility.
2014-01-14 11:51:18 -05:00
Anthony J. Bentley
af5f889326 Merge https://github.com/yenatch/rgbds 2014-01-12 21:30:39 -07:00
Anthony J. Bentley
3e92f33319 Provide a friendlier error when manpage directories don’t exist. 2014-01-11 18:46:33 -07:00
yenatch
0ffa4ce9ef rgbasm: let rgblink try to import undefined symbols
Manual imports are inconvenient and don't provide any functionality.
2014-01-07 18:14:58 -05:00
stag019
34656f9e5d Fix a bug where the first charmap entry wasn't added correctly. 2013-12-28 00:35:05 -05:00
stag019
c61c112218 Remove GNU-specific <getopt.h>. getopt() is defined in <unistd.h> in POSIX, which adding #define _XOPEN_SOURCE 500 causes GCC to include. 2013-12-23 14:57:06 -05:00
stag019
55974bc743 Only define _MAX_PATH is it isn't already defined. 2013-12-23 14:52:37 -05:00
stag019
94005513a4 Comment out unused variable dest. 2013-12-23 14:50:37 -05:00
stag019
36edec6231 Add out_BinaryFileSlice() definition to output.h. 2013-12-23 14:47:37 -05:00
stag019
7d176245d8 Remove all implicit definitions of compiler provided functions.
<strings.h> cause strncasecmp to be define.
2013-12-23 14:40:53 -05:00
stag019
c65d58c589 Move local includes below system includes. 2013-12-23 14:37:56 -05:00
stag019
1f9fd0f060 This fixes an error with using long label names in macros. If the label name you're using is longer than the string length of the literal macro text, a syntax error would occur. This fix makes sure it at least allocates enough bytes for the largest allowed label name. 2013-12-22 20:56:31 -05:00
stag019
1218da79a9 Character maps. 2013-12-22 20:55:14 -05:00
yenatch
fd4b5c8925 rgbasm: update manpage to include -v 2013-12-03 21:58:39 -05:00
yenatch
bc99ee2210 rgbasm: -v option (verbose) 2013-12-03 00:25:12 -05:00
Anthony J. Bentley
de269987f7 Add "jp hl" as a valid instruction.
"jp [hl]" has been around for decades even though it makes no sense.
This is better.
2013-09-05 20:51:58 -06:00
Anthony J. Bentley
7770827cce Redefine consistent names for section types, and document the changes. 2013-07-31 22:14:31 -06:00
Anthony J. Bentley
7ab9742299 Implement SRAM sections. 2013-07-31 20:15:40 -06:00
Anthony J. Bentley
6aecf65552 Fix incorrect manpage macro. 2013-07-23 19:04:02 -06:00
Anthony J. Bentley
2571dc459c Delete more files on clean. 2013-06-20 04:56:55 -06:00
Anthony J. Bentley
da19380cc4 Add a new WRAMX section type, for banked (CGB) WRAM sections. 2013-06-19 21:19:51 -06:00
Anthony J. Bentley
ab47428c0e Improve error message. 2013-05-28 02:23:48 -06:00
Anthony J. Bentley
23b29a9ae1 Fix bug recently introduced to fatalerror(). 2013-05-28 02:22:49 -06:00
Anthony J. Bentley
35448887af Implement VRAM banks. 2013-05-23 13:44:12 -06:00
Anthony J. Bentley
6ccd386587 Make it possible to disable emitting nop after halt. 2013-05-19 17:56:41 -06:00
Anthony J. Bentley
34d40a67c9 Remove unused variable. 2013-05-19 17:08:44 -06:00
Anthony J. Bentley
c21c0f458f Improve error messages. 2013-05-19 17:07:34 -06:00
Anthony J. Bentley
51c01e3aad Remove some dead code. 2013-05-19 16:14:31 -06:00
Anthony J. Bentley
d0d85abb97 Fix accidental case fallthrough. 2013-05-19 15:51:40 -06:00
Anthony J. Bentley
88ac0282e4 Add HTML manuals to the clean target. 2013-04-11 13:27:31 -06:00
Anthony J. Bentley
8811784b71 rgbfix: exit on invalid usage. v0.0.2 2013-04-11 09:28:38 -06:00
Anthony J. Bentley
6579743410 Add support for 8 MiB ROMs, the largest size possible with MBC5. 2012-12-26 21:41:47 -07:00
Anthony J. Bentley
b90406861d Readability (whitespace). 2012-12-26 21:12:52 -07:00
Anthony J. Bentley
2f35d10373 Merge pull request #5 from vegard/lexer-fix-for-bentley
Prevent lexer from reading beyond the end of the buffer
v0.0.1
2012-12-01 22:46:21 -08:00
Anthony J. Bentley
a397acd5ea Update license statement after Justin Lloyd released the code.
https://bitbucket.org/JustinLloyd/rgbds-gameboy-development-system
2012-11-14 02:59:09 -07:00
Anthony J. Bentley
6d69370e9c Merge pull request #6 from vegard/getopt-linux-for-bentley
Include getopt.h (fix compilation on GNU/Linux)
2012-11-09 22:07:44 -08:00
Vegard Nossum
2dfd937d7f Prevent lexer from reading beyond the end of the buffer
On Linux, valgrind complains about the overflow like this:

  Pass 1...
  ==20054== Invalid read of size 1
  ==20054==    at 0x406CDA: yylex (lexer.c:396)
  ==20054==    by 0x40207C: yyparse (asmy.c:2921)
  ==20054==    by 0x4086AF: main (main.c:351)
  ==20054==  Address 0x503a102 is 0 bytes after a block of size 23,538 alloc'd
  ==20054==    at 0x402994D: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  ==20054==    by 0x406411: yy_create_buffer (lexer.c:147)
  ==20054==    by 0x404FE3: fstk_RunInclude (fstack.c:243)
  ==20054==    by 0x4025F5: yyparse (asmy.y:744)
  ==20054==    by 0x4086AF: main (main.c:351)
  ==20054==

This is a bit of a crude fix which simply exits the hashing loop when
we reach the end of the string. We should probably do some kind of
length calculation on the buffer instead.

Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
2012-10-21 06:06:54 +02:00
Vegard Nossum
eb4f790a82 Include getopt.h (fix compilation on GNU/Linux)
Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
2012-10-21 06:05:30 +02:00
Anthony J. Bentley
8c2fb79c39 Add a web manpages target (for my personal use). 2012-10-18 21:15:20 -06:00
Anthony J. Bentley
7b4746b20e Add a MinGW target for me to easily create Windows executables.
This is not for Windows users!
2012-10-18 20:46:17 -06:00
Anthony J. Bentley
cf3bfb1372 Use curly braces consistently in Makefile. 2012-10-18 20:25:33 -06:00
Anthony J. Bentley
f821a1e0a1 Allow a noisy build (user‐configurable). 2012-10-18 20:24:27 -06:00
Anthony J. Bentley
39d8674a93 Improve the Makefile: allow user‐defined variables. 2012-10-18 20:22:47 -06:00
Anthony J. Bentley
a2dc23c55c Remove unneeded build flag. 2012-10-18 19:50:50 -06:00
Anthony J. Bentley
fd724d10e4 Add support for the four‐character game ID. 2011-12-29 20:22:06 -07:00
Anthony J. Bentley
07802fffc9 Remove the (old, obsolete) RGBFix HTML page. Use the manpage instead. 2011-12-26 23:28:06 -07:00