15 months agoFixes for bug #144 (unitialized code paths in 6502 codegen).
Shamus Hammons [Wed, 15 Jan 2020 04:14:01 +0000 (22:14 -0600)]
Fixes for bug #144 (unitialized code paths in 6502 codegen).

I was able to throw away a bunch of code in m6502cg(); things should be
much clearer vis-a-vis how things are parsed and code flow through that
function.  Plus it's always nice to be able to throw away code.  :-)
Now at v2.0.9.

15 months agoVersion bump for previous commits; now at v2.0.8.
Shamus Hammons [Fri, 10 Jan 2020 15:08:27 +0000 (09:08 -0600)]
Version bump for previous commits; now at v2.0.8.

15 months agoFurther fix for bug #135 (added RISC error reporting).
Shamus Hammons [Fri, 10 Jan 2020 15:06:55 +0000 (09:06 -0600)]
Further fix for bug #135 (added RISC error reporting).

15 months agoIntroducing new switch -fr which outputs binaries assembled at a given address.
ggn [Thu, 9 Jan 2020 09:40:02 +0000 (11:40 +0200)]
Introducing new switch -fr which outputs binaries assembled at a given address.

15 months agoFix for #145 - addressing mode mask was not restrictive enough for destinations
ggn [Wed, 8 Jan 2020 12:47:49 +0000 (14:47 +0200)]
Fix for #145 - addressing mode mask was not restrictive enough for destinations

15 months agoFix for bug #135 (RISC error reporting for immediate values).
Shamus Hammons [Sat, 4 Jan 2020 16:24:57 +0000 (10:24 -0600)]
Fix for bug #135 (RISC error reporting for immediate values).

Thanks to Linkovitch for the report; now at v2.0.7.

15 months agoVersion bump for last commits; now at v2.0.6.
Shamus Hammons [Fri, 3 Jan 2020 16:37:08 +0000 (10:37 -0600)]
Version bump for last commits; now at v2.0.6.

15 months agoActually implement ^^FILESIZE this time :)
ggn [Fri, 3 Jan 2020 06:46:19 +0000 (08:46 +0200)]
Actually implement ^^FILESIZE this time :)

15 months agoUpdated VS2015 project files, it should now build out of the box on VS2015 and later
ggn [Fri, 3 Jan 2020 06:09:01 +0000 (08:09 +0200)]
Updated VS2015 project files, it should now build out of the box on VS2015 and later

15 months agoEOY minor update.
Shamus Hammons [Fri, 3 Jan 2020 15:25:26 +0000 (09:25 -0600)]
EOY minor update.

15 months agoMinor changes and version bump for prior commit; now at v2.0.5.
Shamus Hammons [Fri, 3 Jan 2020 15:21:02 +0000 (09:21 -0600)]
Minor changes and version bump for prior commit; now at v2.0.5.

15 months agoYet another fix for bug #77 - eval is now uint64_t so the check wasn't correct
ggn [Fri, 3 Jan 2020 07:04:32 +0000 (09:04 +0200)]
Yet another fix for bug #77 - eval is now uint64_t so the check wasn't correct

15 months agoFix for bug #140 (unusual COFF writer case); now at v2.0.4.
Shamus Hammons [Thu, 2 Jan 2020 22:06:56 +0000 (16:06 -0600)]
Fix for bug #140 (unusual COFF writer case); now at v2.0.4.

15 months agoLong forgotten helper script which is used to create tables for VS builds
ggn [Mon, 3 Sep 2018 12:08:52 +0000 (15:08 +0300)]
Long forgotten helper script which is used to create tables for VS builds

15 months agoVersion bump for the last few commits. Now at v2.0.3.
Shamus Hammons [Thu, 2 Jan 2020 18:37:24 +0000 (12:37 -0600)]
Version bump for the last few commits.  Now at v2.0.3.

15 months agoAdded DSM directive for 56001 mode (and not only). Updated doc. Condensed usage message.
ggn [Thu, 29 Aug 2019 12:09:37 +0000 (15:09 +0300)]
Added DSM directive for 56001 mode (and not only). Updated doc. Condensed usage message.

15 months agoUpdated documentation for v2.0.0
ggn [Tue, 27 Aug 2019 08:09:29 +0000 (11:09 +0300)]
Updated documentation for v2.0.0

15 months agoImplement ^^FILESIZE unary operator that returns the file size of a given file. Minor...
ggn [Fri, 10 Aug 2018 07:59:04 +0000 (10:59 +0300)]
Implement ^^FILESIZE unary operator that returns the file size of a given file. Minor doc update

15 months agoWhen expanding macro parameters ("\{param_name}") inside strings don't warn about...
ggn [Wed, 27 Jun 2018 11:04:21 +0000 (14:04 +0300)]
When expanding macro parameters ("\{param_name}") inside strings don't warn about bad backslashes

15 months agoMore correct calculation of ^^ABSCOUNT. Also updated VS project. Now at version 2...
ggn [Wed, 27 Jun 2018 10:15:36 +0000 (13:15 +0300)]
More correct calculation of ^^ABSCOUNT. Also updated VS project. Now at version 2.0.1.

20 months agoMinor code cleanups. dsp56k
Shamus Hammons [Fri, 9 Aug 2019 14:48:31 +0000 (09:48 -0500)]
Minor code cleanups.

20 months agoFix a few minor problems with 030 mode PC relative fixups.
Shamus Hammons [Fri, 9 Aug 2019 14:12:14 +0000 (09:12 -0500)]
Fix a few minor problems with 030 mode PC relative fixups.

20 months agoAdded missing d_ds handling, add kludge for 56K fixups.
Shamus Hammons [Thu, 8 Aug 2019 20:01:34 +0000 (15:01 -0500)]
Added missing d_ds handling, add kludge for 56K fixups.

Also added code to prevent dumping a 6502 section that had nothing in
it, as this is very annoying.

20 months agoForgot to update the copyright in rmac.c. D'oh! :-P
Shamus Hammons [Thu, 8 Aug 2019 02:21:55 +0000 (21:21 -0500)]
Forgot to update the copyright in rmac.c.  D'oh!  :-P

20 months agoOne more minor fix: add back FP values for 56001 in d_dc.
Shamus Hammons [Thu, 8 Aug 2019 02:15:19 +0000 (21:15 -0500)]
One more minor fix: add back FP values for 56001 in d_dc.

20 months agoThe deed has been accomplished.
Shamus Hammons [Wed, 7 Aug 2019 23:24:52 +0000 (18:24 -0500)]
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

20 months agoAdded in DSP fixups to sect.c, misc. fixes for 6502 assembler.
Shamus Hammons [Tue, 6 Aug 2019 15:16:20 +0000 (10:16 -0500)]
Added in DSP fixups to sect.c, misc. fixes for 6502 assembler.

2 years agoNow we're pretty sure that the codebase doesn't cause any regressions.
Shamus Hammons [Mon, 20 Aug 2018 15:35:12 +0000 (10:35 -0500)]
Now we're pretty sure that the codebase doesn't cause any regressions.

2 years agoCleanup of codebase and initial commit of 56K assembler by ggn.
Shamus Hammons [Sat, 23 Jun 2018 16:57:21 +0000 (11:57 -0500)]
Cleanup of codebase and initial commit of 56K assembler by ggn.

There's still a ways to go before this will work properly as we need to
add proper fixup handling and origin (".org") bookkeeping. As it is now,
the addition of all the miscellaneous bits and bobs to support the main
56K assembler are in place but they don't cause any regressions to the
existing assemblers already present in RMAC. Stay tuned for Round 2!

2 years agoMinor fixups.
Shamus Hammons [Sun, 3 Jun 2018 15:01:45 +0000 (10:01 -0500)]
Minor fixups.

Basically give a more meaningful error message in incbin if the filename
is missing, and use the macros already defined in opkw.h instead of
cooking up our own and (possibly) getting out of sync later on down the

2 years agoVersion bump for last commit; now at version 1.13.5.
Shamus Hammons [Wed, 16 May 2018 17:58:03 +0000 (12:58 -0500)]
Version bump for last commit; now at version 1.13.5.

2 years agoBug fix in flognp1. Better handling of cpbcc/fbcc/pbcc groups of instructions.
ggn [Tue, 30 Jan 2018 12:29:52 +0000 (14:29 +0200)]
Bug fix in flognp1. Better handling of cpbcc/fbcc/pbcc groups of instructions.

2 years agoVersion bump for last patch; now at v1.13.4.
Shamus Hammons [Wed, 16 May 2018 13:39:48 +0000 (08:39 -0500)]
Version bump for last patch; now at v1.13.4.

2 years agoFix for bug 120. AND can never accept an address register as destination in all 680x0...
ggn [Tue, 15 May 2018 19:20:47 +0000 (22:20 +0300)]
Fix for bug 120. AND can never accept an address register as destination in all 680x0 CPUs

2 years agoDon't print bogus message about optimising long address if it's suffixed with .l...
ggn [Wed, 16 May 2018 12:55:13 +0000 (15:55 +0300)]
Don't print bogus message about optimising long address if it's suffixed with .l. Bump to version 1.13.3

2 years agoVersion bump for last commit. Now at version 1.13.2.
Shamus Hammons [Tue, 15 May 2018 18:36:04 +0000 (13:36 -0500)]
Version bump for last commit. Now at version 1.13.2.

2 years agoRemove hacky code that truncates absolute addresses. (Bug 38)
ggn [Tue, 15 May 2018 15:59:52 +0000 (18:59 +0300)]
Remove hacky code that truncates absolute addresses. (Bug 38)

3 years agoMinor tweak for OP data address fixups. Now at version 1.13.1.
Shamus Hammons [Tue, 27 Feb 2018 02:43:58 +0000 (20:43 -0600)]
Minor tweak for OP data address fixups. Now at version 1.13.1.

3 years agoAdded Jaguar Object Processor assembler.
Shamus Hammons [Mon, 26 Feb 2018 03:39:59 +0000 (21:39 -0600)]
Added Jaguar Object Processor assembler.

Rationale for this and how it works can be found in
docs/note-on-the-op-assembler.txt. Version now at 1.13.0.

3 years agoFix for subtle bug in the expression analyzer.
Shamus Hammons [Sat, 24 Feb 2018 16:27:31 +0000 (10:27 -0600)]
Fix for subtle bug in the expression analyzer.

Turns out if you blindly promote arithmetic expressions to
ABS + DEFINED, it causes things to assemble wrong. This crept in around
v1.9.1; Now at version 1.12.5.

3 years agoAdd fixup stubs for FU_FLOATfoo types. Now at version 1.12.4.
Shamus Hammons [Sat, 10 Feb 2018 17:41:18 +0000 (11:41 -0600)]
Add fixup stubs for FU_FLOATfoo types. Now at version 1.12.4.

3 years agoCleanups for the RISC assembler. Now at version 1.12.3.
Shamus Hammons [Sat, 10 Feb 2018 17:14:28 +0000 (11:14 -0600)]
Cleanups for the RISC assembler. Now at version 1.12.3.

3 years agoMinor bugfix for FU_NUM15 fixups.
Shamus Hammons [Sat, 10 Feb 2018 15:12:28 +0000 (09:12 -0600)]
Minor bugfix for FU_NUM15 fixups.

Since eval is an unsigned int, the check for eval < -16 would never be
true. This has been fixed by casting eval to an int. Now at v1.12.2.

3 years agoFix for D_foo() macros.
Shamus Hammons [Sat, 10 Feb 2018 14:30:54 +0000 (08:30 -0600)]
Fix for D_foo() macros.

Seems that no bounds checking was been done for the majority of the
D_foo() macros; that has been fixed. Now at v1.12.1.

3 years agoPartial fix for bug #108 (Fixup cleanups).
Shamus Hammons [Sat, 10 Feb 2018 05:08:47 +0000 (23:08 -0600)]
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.

3 years agoVersion bump for last eight commits; cleanup of Alcyon image writing.
Shamus Hammons [Wed, 24 Jan 2018 04:20:24 +0000 (22:20 -0600)]
Version bump for last eight commits; cleanup of Alcyon image writing.

Now at version 1.11.9.

3 years agoWhen an error occurs inside a macro or rept, report the exact line, not the line...
ggn [Tue, 23 Jan 2018 12:46:00 +0000 (14:46 +0200)]
When an error occurs inside a macro or rept, report the exact line, not the line the macro or rept was invoked

3 years agoVarious small fixes including:
ggn [Tue, 23 Jan 2018 12:07:23 +0000 (14:07 +0200)]
Various small fixes including:

- Corner case in ([bd,An/PC],Xn,od) addressing mode where bd is suppressed
- 68060 specific instructions (68ktab, mach.c)
- PMMU instruction fixes (68ktab, mach.c)
- FMOVEM fixes (amode.c)
- Switching CPU state fixes (direct.c)
- Bitfield instruction fixes (mach.c)
- pflush fixes (68ktab, mach.c)
- Various warnings silenced (mark.c, riscasm.c)
- Formatting ;)

3 years agoAdded missing (d16,An,Dn[.size][*scale]) addressing mode
ggn [Tue, 23 Jan 2018 11:40:49 +0000 (13:40 +0200)]
Added missing (d16,An,Dn[.size][*scale]) addressing mode

3 years agoFix for addressing mode base value getting clobbered by scale value
ggn [Tue, 23 Jan 2018 11:19:50 +0000 (13:19 +0200)]
Fix for addressing mode base value getting clobbered by scale value

3 years agoFPU instructions debugged and stricter checks enforced
ggn [Tue, 23 Jan 2018 11:01:23 +0000 (13:01 +0200)]
FPU instructions debugged and stricter checks enforced

3 years agodivu.l/divs.l/mulu.l/muls.l debugged and condensed into one function
ggn [Tue, 23 Jan 2018 09:33:24 +0000 (11:33 +0200)]
divu.l/divs.l/mulu.l/muls.l debugged and condensed into one function

3 years agoAdd flag -px in alcyon mode which enables extended GST symbol table.
ggn [Tue, 23 Jan 2018 09:11:21 +0000 (11:11 +0200)]
Add flag -px in alcyon mode which enables extended GST symbol table.

3 years agoAdded optimisation switches -o8 and -o9
ggn [Tue, 23 Jan 2018 08:57:01 +0000 (10:57 +0200)]
Added optimisation switches -o8 and -o9

Added optimisation switches -o8 (adda.w/l #x,Dy to addq.w/l #x,Dy) and
-o9 (adda.w/l #x,Dy to lea x(Dy),Dy), both off by default.

3 years agoFixes for slightly broken Motorola extended float generation.
Shamus Hammons [Mon, 22 Jan 2018 18:04:31 +0000 (12:04 -0600)]
Fixes for slightly broken Motorola extended float generation.

3 years agoLots of fixes for floating point handling; version now at 1.11.0.
Shamus Hammons [Sun, 21 Jan 2018 14:25:06 +0000 (08:25 -0600)]
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)

3 years agoSmall cleanups + version bump for last commit.
Shamus Hammons [Thu, 30 Nov 2017 00:52:47 +0000 (18:52 -0600)]
Small cleanups + version bump for last commit.

Version now at 1.10.2.

3 years agoVarious small fixes and additions to the 680x0 parts:
ggn [Wed, 29 Nov 2017 19:28:44 +0000 (21:28 +0200)]
Various small fixes and additions to the 680x0 parts:

- New command line switch -m[cpu]  enables you to switch to a different cpu from the command line
- BYTESWAP64 macro fix
- New optimisation flags o6 and o7 turn null branches to NOP and convert clr.l Dx to moveq #0,Dx
- Remove tons of FPU/PMMU codegen functions in mech.c. They are now handled in a more smart way. Condition codes now stored in 68ktab - updated 68ktab to reflect that

3 years agoModified IMACRO and IREPT to store line numbers during definition - error now correct...
ggn [Wed, 29 Nov 2017 18:47:38 +0000 (20:47 +0200)]
Modified IMACRO and IREPT to store line numbers during definition - error now correctly prints source line number

3 years agoRoll back TOKENPTR changes and most of the .u32 changes weren't needed.
Shamus Hammons [Wed, 29 Nov 2017 13:57:58 +0000 (07:57 -0600)]
Roll back TOKENPTR changes and most of the .u32 changes weren't needed.

The last commit had gone a bit overboard with the 32 vs 64 bit token
changes; this has been rectified. There's still a ways to go with the
floating point code, but this should be stable for now. Version now at

3 years agoFixes for last commit; version is now 1.10.0.
Shamus Hammons [Tue, 21 Nov 2017 13:54:55 +0000 (07:54 -0600)]
Fixes for last commit; version is now 1.10.0.

The float changes will need some going over to ensure that we don't end
up with what we had when pointers were shoved into the token stream

3 years agoAdded floating point support to expression evaluator, introduced FLOAT token, fixup...
ggn [Thu, 26 Oct 2017 12:24:25 +0000 (15:24 +0300)]
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.

3 years agoSmall fix for spurious "out of range" errors (tied to 64-bit eval path).
Shamus Hammons [Fri, 13 Oct 2017 23:00:10 +0000 (18:00 -0500)]
Small fix for spurious "out of range" errors (tied to 64-bit eval path).

3 years agoAdd support for 64-bit evaluations.
Shamus Hammons [Sun, 8 Oct 2017 13:40:02 +0000 (08:40 -0500)]
Add support for 64-bit evaluations.

Version bump to 1.9.0. Right now the only thing that supports it is
dc.d; now that the infrastructure supports it, anything else that needs
64-bit support (such as FPUs and the like) can be done very easily now.

3 years agoPatch to fix lack of WORD sized symbol relocations by SainT.
Shamus Hammons [Wed, 4 Oct 2017 16:25:45 +0000 (11:25 -0500)]
Patch to fix lack of WORD sized symbol relocations by SainT.

Version now at 1.8.7.

3 years agoMissed a few double parens in eagen0.c. :-P
Shamus Hammons [Tue, 29 Aug 2017 18:49:06 +0000 (13:49 -0500)]
Missed a few double parens in eagen0.c. :-P

3 years agoAdded a few more fixes piggybacked on the last one; bump to v1.8.6.
Shamus Hammons [Tue, 29 Aug 2017 18:28:18 +0000 (13:28 -0500)]
Added a few more fixes piggybacked on the last one; bump to v1.8.6.

3 years agoOn some occasions elf output would misplace symbols due to the fact that it D_word...
ggn [Mon, 21 Aug 2017 17:48:32 +0000 (20:48 +0300)]
On some occasions elf output would misplace symbols due to the fact that it D_word thought that it would write outside current chunk.

3 years agoFix for section alignment values in ELF objects.
Shamus Hammons [Tue, 29 Aug 2017 17:20:17 +0000 (12:20 -0500)]
Fix for section alignment values in ELF objects.

Thanks to SainT for the patch. :-)

3 years agoVersion bump (1.8.4) for last commit.
Shamus Hammons [Fri, 11 Aug 2017 00:08:32 +0000 (19:08 -0500)]
Version bump (1.8.4) for last commit.

3 years agoMultiple fixes for 020+ mode, including:
ggn [Tue, 1 Aug 2017 12:42:34 +0000 (15:42 +0300)]
Multiple fixes for 020+ mode, including:

- Macro'd the FPU code generators.
- Fix some bfxxxx problems including {offset,width} parsing and valid <ea> modes.
- Add symbol checks for <ea> parsing
- Try at fixing k factor for fmove - had to change {} parsing in general so bfxxxx code was also changed.
- Fixed cinvl/p/a instructions. Converted all trapcc functions into macros.
- pmove/pmovefd fixed and verified against devpac.
- pack/unpk implemented and tested
- Fix left hand side of FPU register lists.
- Fix some 020 move parsing errors.
- Change tokenizer strategy to not munch forced .b/.w/.l extensions after constants
- Get rid of probably redundant code in m_move030.
- ploadr/ploadw implemented. Also added extra needed addressing mode to the mask for pmove which is used by the ploads too.
- Some pmove fixes.
- Added cpdbcc instructions.
- pflush/pflusha implemented for 68030/68040.

3 years agoFix for reg keyword not working. Apparently it was renumbered (and unused) when the...
ggn [Sun, 30 Jul 2017 11:17:27 +0000 (14:17 +0300)]
Fix for reg keyword not working. Apparently it was renumbered (and unused) when the jaguar specific stuff went in and was never tested.

3 years agoVersion bump (1.8.3) for last commit. :-P
Shamus Hammons [Thu, 20 Jul 2017 19:17:47 +0000 (14:17 -0500)]
Version bump (1.8.3) for last commit. :-P

3 years agoFix for bug #102. Thanks (blame!) go to ggn & dml for the idea. :-)
Shamus Hammons [Thu, 20 Jul 2017 19:15:53 +0000 (14:15 -0500)]
Fix for bug #102. Thanks (blame!) go to ggn & dml for the idea. :-)

3 years agoVersion bump (1.8.2) for last commit.
Shamus Hammons [Thu, 20 Jul 2017 13:38:02 +0000 (08:38 -0500)]
Version bump (1.8.2) for last commit.

3 years agoVarious 020+ fixes. In brief, this commit fixes the following:
ggn [Thu, 20 Jul 2017 09:21:20 +0000 (12:21 +0300)]
Various 020+ fixes. In brief, this commit fixes the following:

- Fix warning for \! inside string - we might be evaluating a macro so it's legal.
- Handle (Dn[.w][*scale],label[.l]) ea case.
- Enable scale value in ea to be expression (evaluated) besides constant.
- Fix for ([address[.wl]]). It seems that undefined symbols were not stored properly in eagen0.s (it used aNexpr instead of aNbexpr when storing base displacement).
- Fixes for fmove freg,freg (no size suffix) and ftst freg (no size suffix).
- fmovem now defaults to .x
- Fixed muls.l

3 years agoFix for bug #101 (bad macro handling).
Shamus Hammons [Thu, 20 Jul 2017 04:22:01 +0000 (23:22 -0500)]
Fix for bug #101 (bad macro handling).

Just when you thought it was safe to write macros with constants, up
pops a condition you thought was dead and buried yet lurches inexorably
towards your code and causes it to segfault. As it turns out, it was
bad token stream parsing that caused this, with a constant masquerading
as a STRING token being the particular mischief maker. The code that
was in place was an awful mess of horrible garbage code that wasn't
even being used anymore--so that crap is gone, and replaced with
something more (I hope) sane and maintainable. I think that the code
that was there survived purging for so long because nobody really
understood it; now that I understand it, I can't believe that it was
written in the first place (to be fair, some of it was patching done by
me, though the bulk of awfulness didn't come from that code). Onward
and upward...

3 years agoFixed IREPT blocks to not corrupt memory on 64-bit hosts.
Shamus Hammons [Wed, 19 Jul 2017 20:27:06 +0000 (15:27 -0500)]
Fixed IREPT blocks to not corrupt memory on 64-bit hosts.

3 years agoMinor code cleanups.
Shamus Hammons [Sat, 24 Jun 2017 00:58:41 +0000 (19:58 -0500)]
Minor code cleanups.

3 years agoFixed bad char reporting, revamp of the error/warning system.
Shamus Hammons [Sat, 24 Jun 2017 00:03:24 +0000 (19:03 -0500)]
Fixed bad char reporting, revamp of the error/warning system.

Somehow I put a unicode character in my assembly source and RMAC then
barfed up an internal error #2. Chasing this down, I finally determined
that the debug traces weren't lying to me and the input file had a
problem. However, RMAC wasn't reporting the illegal character correctly
either, so that was fixed (who knew that gcc was silently killing bit 7
of chars now?). I also realized that having five separate functions for
reporting errors (and the cruft of using those crippled things) was just
a wee bit insane, so now we have proper variable argument error and
warning functions (they can be used just like a printf). Enjoy!

3 years ago(c) message in header files and doc mini adjustments.
ggn [Mon, 8 May 2017 08:16:18 +0000 (11:16 +0300)]
(c) message in header files and doc mini adjustments.

3 years agoCode cleanup from last patch, also, version bump for same. :-)
Shamus Hammons [Sun, 7 May 2017 02:07:36 +0000 (21:07 -0500)]
Code cleanup from last patch, also, version bump for same. :-)

3 years agoIncrease line lengths for listing and line parser.
ggn [Sat, 6 May 2017 15:00:34 +0000 (18:00 +0300)]
Increase line lengths for listing and line parser.

3 years agoInitial commit for 68020/30/40/60/68881/68882/68851 support.
ggn [Fri, 5 May 2017 14:51:11 +0000 (17:51 +0300)]
Initial commit for 68020/30/40/60/68881/68882/68851 support.

3 years agoVersion bump for last commit. :-)
Shamus Hammons [Fri, 5 May 2017 13:33:31 +0000 (08:33 -0500)]
Version bump for last commit. :-)

3 years agoFix for bug where in alcyon mode the tokenizer would read past the end of the line.
ggn [Thu, 4 May 2017 16:53:48 +0000 (19:53 +0300)]
Fix for bug where in alcyon mode the tokenizer would read past the end of the line.

3 years agoFix for bug #77 (ds with negative numbers).
Shamus Hammons [Tue, 2 May 2017 18:02:47 +0000 (13:02 -0500)]
Fix for bug #77 (ds with negative numbers).

Last time it didn't work because our target number was an unsigned int
(as opposed to a signed int). So now that we know, we have a proper
check for it now.

3 years agoVersion bump for last commits. :-)
Shamus Hammons [Thu, 27 Apr 2017 13:14:08 +0000 (08:14 -0500)]
Version bump for last commits. :-)

3 years agoDoc fixes/updates.
ggn [Thu, 27 Apr 2017 07:51:48 +0000 (10:51 +0300)]
Doc fixes/updates.

3 years agoAdded -l* to enable listing without pagination. Fix bug where a wrong malloc would...
ggn [Thu, 27 Apr 2017 07:24:37 +0000 (10:24 +0300)]
Added -l* to enable listing without pagination. Fix bug where a wrong malloc would lead to explosions with listing enabled.

3 years agoFixed code to remove warnings. Inching closer towards zero. :-)
Shamus Hammons [Tue, 25 Apr 2017 03:30:42 +0000 (22:30 -0500)]
Fixed code to remove warnings. Inching closer towards zero. :-)

4 years agoMinor tweaking from last round of patching, version bump. :-)
Shamus Hammons [Fri, 21 Apr 2017 21:36:06 +0000 (16:36 -0500)]
Minor tweaking from last round of patching, version bump. :-)

4 years agoMuch better implementation for A8 strings - introduced a new token called STRINGA8...
ggn [Fri, 21 Apr 2017 19:58:11 +0000 (22:58 +0300)]
Much better implementation for A8 strings - introduced a new token called STRINGA8. Also, all this time we forgot to update mntab :).

4 years agoPossible fix for bug #92.
Shamus Hammons [Fri, 21 Apr 2017 19:31:10 +0000 (14:31 -0500)]
Possible fix for bug #92.

4 years agoVersion bump for last commit. ;-)
Shamus Hammons [Fri, 21 Apr 2017 18:59:50 +0000 (13:59 -0500)]
Version bump for last commit. ;-)

4 years ago6502 mode: fix clearing of its RAM space with each .6502 invocation. Also fixed chptr...
ggn [Fri, 21 Apr 2017 11:49:33 +0000 (14:49 +0300)]
6502 mode: fix clearing of its RAM space with each .6502 invocation. Also fixed chptr resetting with each .6502 invocation. Also in this mode: dc.b strings with single quotes will get encoded to Atari 800 internal encoding (hardcoded mode for now, can be extended).

4 years agoTweaks to new 6502 assembler (ggn), added dependency info for makefile.
Shamus Hammons [Thu, 20 Apr 2017 21:09:14 +0000 (16:09 -0500)]
Tweaks to new 6502 assembler (ggn), added dependency info for makefile.

4 years agoAdd missing files. I hate when that happens! >:-U
Shamus Hammons [Thu, 20 Apr 2017 20:41:10 +0000 (15:41 -0500)]
Add missing files. I hate when that happens! >:-U

4 years agoCode cleanup, version bump for last commit. :-)
Shamus Hammons [Thu, 20 Apr 2017 19:29:31 +0000 (14:29 -0500)]
Code cleanup, version bump for last commit. :-)

4 years ago6502 support added back from original Madmac sources!
ggn [Wed, 19 Apr 2017 16:42:26 +0000 (19:42 +0300)]
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.