Commit Graph

49 Commits

Author SHA1 Message Date
ggn 41a8ca9921 Fix for #210 - 6502 mode with -fr working 2022-12-21 16:57:02 -06:00
Shamus Hammons c6808e75ed Files missed in the last commit. :-P 2022-12-21 16:37:53 -06:00
James Jones e8f9d55bc7 Add NewDebugSymbol(): stabs symbol factory
This function, currently unused, generates a stabs
debugging symbol, as documented here:

https://sourceware.org/gdb/onlinedocs/stabs.html

It can be used to process stabs directives, also
documented at the above URL, generated by HLL
compilers such as GCC, as well as to generate line
number and file name debug symbols when assembling
hand-coded assembly files with the -g option.

v2:
-Don't double-init stabs symbol fields
-Consistently use tabs, not spaces
2022-08-15 21:08:06 -05:00
Shamus Hammons 2e6a046d5d Fix to prevent defined registers/CCs from being exported in the symtab.
As it turns out, this was not due to malice but because RMAC was set up
to squeeze out every label ever defined in the assembly.  Hopefully,
with this patch, things should be a bit more sane.  :-)
2022-05-30 17:40:19 -05:00
Shamus Hammons 40883e54a5 Somehow these files slipped through the cracks... :-/ 2021-06-08 19:41:45 -05:00
Shamus Hammons cbc8347d4f Update to the name (don't ask), and copyright dates. Now at v2.1.0. 2021-03-07 16:43:25 -06:00
ggn ceab9325bd Fix for bug #170 - ELF output module exports global,defined symbols as undefined
Signed-off-by: ggn <ggn.dbug@gmail.com>
2020-08-16 16:42:45 -05:00
ggn 39dff26a3b Supplementary fix for bug #140. Apparently bf4dbb2860 wasn't enough, we needed to add some extra logic to AddBSDSymEntry 2020-03-02 08:03:28 -06:00
ggn 8f287ee722 Introducing new switch -fr which outputs binaries assembled at a given address. 2020-01-10 09:04:35 -06:00
Shamus Hammons 4205233c83 EOY minor update. 2020-01-03 09:25:26 -06:00
Shamus Hammons bf4dbb2860 Fix for bug #140 (unusual COFF writer case); now at v2.0.4. 2020-01-02 16:06:56 -06:00
ggn 2037569179 Added DSM directive for 56001 mode (and not only). Updated doc. Condensed usage message. 2020-01-02 11:57:50 -06:00
Shamus Hammons 7d0d2b9ecd Fix a few minor problems with 030 mode PC relative fixups. 2019-08-09 09:12:14 -05:00
Shamus Hammons 29fa5dcf50 The deed has been accomplished.
As far as I can tell, there should be no more regressions, but that's
no guarantee of anything.  Assuming no more are found, this should go
out as version 2.0.0.  :-D
2019-08-07 18:24:52 -05:00
Shamus Hammons bdbf34766f Added in DSP fixups to sect.c, misc. fixes for 6502 assembler. 2019-08-06 10:16:20 -05:00
Shamus Hammons 9153334781 Partial fix for bug #108 (Fixup cleanups).
RMAC has needed a struct for fixups for some time, and now it has one.
All of the credit for pushing (and patching!) in that direction goes to
ggn; blame for the way it's implemented goes to me. There's still room
for improvement; but for now, this should leave us in much better shape.
Now at v1.12.0.
2018-02-09 23:08:47 -06:00
Shamus Hammons 81c752326a Version bump for last eight commits; cleanup of Alcyon image writing.
Now at version 1.11.9.
2018-01-23 22:20:24 -06:00
ggn 76299dcc58 Add flag -px in alcyon mode which enables extended GST symbol table. 2018-01-23 19:35:29 -06:00
Shamus Hammons 29b32d134b Lots of fixes for floating point handling; version now at 1.11.0.
Some of the following changes are ggn's, and some are mine:

 - When tokenizing floats we need to store them using a double pointer
 - PTR union needed a (double *)
 - Major changes to float depositing in eagen0.c
 - Reverted the changes in expr.c so at least floats are processed by
   expr() and friends
 - SYM svalue needs to be 64 bits
 - When EQUing a float symbol don't chop off the upper 32 bits from eval
 - Added fltpoint.{c,h} in order to properly create IEEE-754 floating
   point and Motorola extended numbers
 - Fixed float evaluations in evexpr()
 - Fixed floating point depositions in direct.c (in d_dc())
 - Upped the BSD image limit in object.c to 8MB for crazy people making
   6MB Jaguar ROMs (will need a real fix at some point)
2018-01-21 08:25:06 -06:00
ggn 582df8950c Added floating point support to expression evaluator, introduced FLOAT token, fixup FU_ equates, fixed a load of casting warnings that (some) led to codegen bugs. 2017-11-18 09:54:04 -06:00
Shamus Hammons d1f5f1cacc Added a few more fixes piggybacked on the last one; bump to v1.8.6. 2017-08-29 13:28:18 -05:00
ggn 3c7505f2f4 On some occasions elf output would misplace symbols due to the fact that it D_word thought that it would write outside current chunk. 2017-08-29 13:23:28 -05:00
Shamus Hammons cfd001aea6 Fix for section alignment values in ELF objects.
Thanks to SainT for the patch. :-)
2017-08-29 12:20:17 -05:00
ggn 03dd34951a (c) message in header files and doc mini adjustments. 2017-05-08 09:15:22 -05:00
Shamus Hammons 5f23454f71 Code cleanup from last patch, also, version bump for same. :-) 2017-05-06 21:07:36 -05:00
Shamus Hammons ff2052bcaa Code cleanup, version bump for last commit. :-) 2017-04-20 14:29:31 -05:00
ggn 052be802ba 6502 support added back from original Madmac sources!
- Source fixed to work with current rmac implementation
- Removed ultra kludgy output mode and replaced it with .com/.exe./.xex output module (activated using -fx)
- Added #< and #> to give low and high bytes off an immediate word
- Included tester in "tests" folder.
- Updated docs.
2017-04-20 09:26:42 -05:00
Shamus Hammons 60f204cb9e ELF support for RMAC.
ggn deserves most of the credit for this, as my job was going through
and tossing out the stuff that wasn't needed. ;-) There might be some
ELFish things that still need fixing; time, as usual, will tell.
2017-04-14 15:52:31 -05:00
Shamus Hammons 66be644c3e Fix for bug #78: Thanks to ggn for reporting and supplying the patch.
Bug fix for .w access for alcyon target, added new optimisation that
converts 0(ax) to (ax).
2016-09-12 20:37:51 -05:00
ggn ae7127773a When selecting ST .o output (-fa), don't write a .prg but an object file instead. 2016-05-08 08:56:30 -05:00
ggn 0e4dead2b7 The rest of the .PRGFLAGS patch. Sorry! 2015-11-17 13:54:39 -06:00
ggn 622cef2655 TEXT/DATA/BSS sizes printed at the end of assembly only when -v is invoked. 2015-11-17 07:38:20 -06:00
ggn 71cec8e789 New directive: PRGFLAGS sets GEMDOS PRG flags (such as Fastload, etc) 2015-11-14 15:19:44 -06:00
ggn 044e6a2a49 Fix segfaulting when building .prg target on linux and cygwin. 2015-11-14 10:38:48 -06:00
ggn d9c1d99391 A few compiler warnings pacified. 2015-11-01 08:36:50 -06:00
Shamus Hammons f4e9bcd703 Fixed WARNING macro to be system agnostic, added doco for -p switch. 2015-10-06 22:23:59 -05:00
ggn c74d8ef6f1 Visual Studio 2015 project files. A few warnings about unused variables fixed.
Signed-off-by: Shamus Hammons <jlhamm@acm.org>
2015-10-06 21:10:42 -05:00
Shamus Hammons d1fe92e223 Applied patches from ggn for bugs #38, 40, & 41. Thanks! 2015-10-06 21:09:15 -05:00
Shamus Hammons d0c28c349d Fix for "*" getting bad section attributes, reported by A. Seed. 2015-02-19 08:56:14 -06:00
Shamus Hammons 3f2bccb78a Misc. whitespace cleanups, removal of unneeded code. 2015-01-16 11:16:33 -06:00
Shamus Hammons d95ee7f628 Fixed bug with -l switch.
Turns out that the tokenClass buffer was too small, leading the eval()
function to dip into random memory. *facepalm*
2015-01-13 11:06:11 -06:00
Shamus Hammons b10167d557 More fixups to remove warnings, removal of more cruft. 2013-03-05 11:47:22 -06:00
Shamus Hammons f6e6a55c4c Fix silly mask bugs, added check for use of undefined register equates. 2013-03-02 14:22:33 -06:00
Shamus Hammons 295836a173 First stab at removing cruft.
Removing all automatic code munging in the background by the RISC
compiler, including GPU in main idiocy. This means there are no more
built-in macros either. If you really needed this functionality, you can
put macros in your source code to do it. It doesn't belong in the guts
of the assembler.
2013-02-12 12:32:56 -06:00
Shamus Hammons 26bc03271b Bumped object size from 4MB to 6MB (ggn). 2013-02-12 08:30:29 -06:00
James Hammons 3385b36663 More readability cleanups. 2012-01-19 22:28:32 +00:00
James Hammons d09274f3e3 Code cleanups. 2012-01-18 02:06:46 +00:00
James Hammons 75cce0d9eb Various cleanups to fix compiler warnings. 2011-12-26 23:54:45 +00:00
James Hammons d28f432296 Initial commit. 2011-12-26 22:50:27 +00:00