mirror of
https://github.com/fachat/xa65.git
synced 2024-06-01 22:41:32 +00:00
xa-2.3.8
This commit is contained in:
parent
13b4cf53d9
commit
1006018d26
|
@ -316,3 +316,11 @@ xa-2.3.7
|
||||||
* Testsuite expanded.
|
* Testsuite expanded.
|
||||||
|
|
||||||
-- Cameron Kaiser <ckaiser@floodgap.com> 29 December 2014
|
-- Cameron Kaiser <ckaiser@floodgap.com> 29 December 2014
|
||||||
|
|
||||||
|
xa-2.3.8
|
||||||
|
|
||||||
|
* Fixed issue with colons in string literals being treated as separators
|
||||||
|
(thanks Simon Rowe).
|
||||||
|
* Testsuite expanded.
|
||||||
|
|
||||||
|
-- Cameron Kaiser <ckaiser@floodgap.com> 29 June 2017
|
||||||
|
|
|
@ -63,8 +63,8 @@ install: xa uncpk
|
||||||
#$(MKDIR) $(DOCDIR)/xa65
|
#$(MKDIR) $(DOCDIR)/xa65
|
||||||
|
|
||||||
dist: clean
|
dist: clean
|
||||||
#cd .. ; tar cvf xa-2.3.7A.tar xa-2.3.7 ; gzip xa-2.3.7A.tar
|
#cd .. ; tar cvf xa-2.3.8A.tar xa-2.3.8 ; gzip xa-2.3.8A.tar
|
||||||
cd .. ; tar cvf xa-2.3.7.tar xa-2.3.7 ; gzip xa-2.3.7.tar
|
cd .. ; tar cvf xa-2.3.8.tar xa-2.3.8 ; gzip xa-2.3.8.tar
|
||||||
|
|
||||||
test: xa uncpk
|
test: xa uncpk
|
||||||
cd tests && ./harness -make="$(MAKE)" -cc="$(CC)" -cflags="$(CFLAGS)"
|
cd tests && ./harness -make="$(MAKE)" -cc="$(CC)" -cflags="$(CFLAGS)"
|
||||||
|
|
|
@ -3,7 +3,7 @@ derivatives). xa is a small, fast, portable two-pass assembler that compiles
|
||||||
under most ANSI C compilers. It is distributed under the GNU Public License
|
under most ANSI C compilers. It is distributed under the GNU Public License
|
||||||
(see COPYING).
|
(see COPYING).
|
||||||
|
|
||||||
The current version is 2.3.7, a bug fix to the long-lived 2.3.0, itself with
|
The current version is 2.3.8, a bug fix to the long-lived 2.3.0, itself with
|
||||||
compatibility improvements and new man-based documentation. It also completed
|
compatibility improvements and new man-based documentation. It also completed
|
||||||
the merge of the 65816 and 6502/R65C02 versions and thus the current xa can
|
the merge of the 65816 and 6502/R65C02 versions and thus the current xa can
|
||||||
generate code for all targets now.
|
generate code for all targets now.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
.TH XA "1" "7 February 2009"
|
.TH XA "1" "29 June 2017"
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
xa \- 6502/R65C02/65816 cross-assembler
|
xa \- 6502/R65C02/65816 cross-assembler
|
||||||
|
@ -840,7 +840,7 @@ This manual page was written by David Weinehall <tao@acc.umu.se>,
|
||||||
Andre Fachat <fachat@web.de>
|
Andre Fachat <fachat@web.de>
|
||||||
and Cameron Kaiser <ckaiser@floodgap.com>.
|
and Cameron Kaiser <ckaiser@floodgap.com>.
|
||||||
Original xa package (C)1989-1997 Andre Fachat. Additional changes
|
Original xa package (C)1989-1997 Andre Fachat. Additional changes
|
||||||
(C)1989-2015 Andre Fachat, Jolse Maginnis, David Weinehall,
|
(C)1989-2017 Andre Fachat, Jolse Maginnis, David Weinehall,
|
||||||
Cameron Kaiser. The official maintainer is Cameron Kaiser.
|
Cameron Kaiser. The official maintainer is Cameron Kaiser.
|
||||||
|
|
||||||
.SH WEBSITE
|
.SH WEBSITE
|
||||||
|
|
|
@ -55,9 +55,9 @@
|
||||||
#define ANZWARN 13
|
#define ANZWARN 13
|
||||||
|
|
||||||
#define programname "xa"
|
#define programname "xa"
|
||||||
#define progversion "v2.3.7"
|
#define progversion "v2.3.8"
|
||||||
#define authors "Written by Andre Fachat, Jolse Maginnis, David Weinehall and Cameron Kaiser"
|
#define authors "Written by Andre Fachat, Jolse Maginnis, David Weinehall and Cameron Kaiser"
|
||||||
#define copyright "Copyright (C) 1989-2015 Andre Fachat, Jolse Maginnis, David Weinehall\nand Cameron Kaiser."
|
#define copyright "Copyright (C) 1989-2017 Andre Fachat, Jolse Maginnis, David Weinehall\nand Cameron Kaiser."
|
||||||
|
|
||||||
/* exported globals */
|
/* exported globals */
|
||||||
int ncmos, cmosfl, w65816, n65816;
|
int ncmos, cmosfl, w65816, n65816;
|
||||||
|
@ -1054,8 +1054,10 @@ static int xa_getline(char *s)
|
||||||
do {
|
do {
|
||||||
c=s[j]=l[i++];
|
c=s[j]=l[i++];
|
||||||
|
|
||||||
if (c=='\"')
|
if (!(hkfl&2) && c=='\"')
|
||||||
hkfl^=1;
|
hkfl^=1;
|
||||||
|
if (!comcom && !(hkfl&1) && c=='\'')
|
||||||
|
hkfl^=2;
|
||||||
if (c==';' && !hkfl)
|
if (c==';' && !hkfl)
|
||||||
comcom = 1;
|
comcom = 1;
|
||||||
if (c=='\0')
|
if (c=='\0')
|
||||||
|
|
|
@ -9,6 +9,8 @@ unless 'make test' fails. If you do, use harness:
|
||||||
|
|
||||||
If -tests is omitted, all tests are run.
|
If -tests is omitted, all tests are run.
|
||||||
Don't run the makefiles directly, if they exist; they may not work properly.
|
Don't run the makefiles directly, if they exist; they may not work properly.
|
||||||
|
If a Makefile is not present, then the test harness assembles "test.s" and
|
||||||
|
compares it with "ok".
|
||||||
|
|
||||||
adrm/ Addressing mode test (especially the optimizer and quantity
|
adrm/ Addressing mode test (especially the optimizer and quantity
|
||||||
prefixes)
|
prefixes)
|
||||||
|
@ -32,6 +34,8 @@ dos51/ Regression test, label scoping, "real world code"
|
||||||
cpktest/ Regression test, label listing, "real world code"
|
cpktest/ Regression test, label listing, "real world code"
|
||||||
op816/ Regression test for '816 opcodes (thanks Alessandro Gatti)
|
op816/ Regression test for '816 opcodes (thanks Alessandro Gatti)
|
||||||
branch/ Branch range test
|
branch/ Branch range test
|
||||||
|
masmcom/ Another test for -M that generates totally valid code
|
||||||
|
quotch/ Test quoting problematic characters (thanks Simon Rowe)
|
||||||
|
|
||||||
Cameron Kaiser, André Fachat
|
Cameron Kaiser, André Fachat
|
||||||
|
|
||||||
|
|
10
xa/tests/masmcom/Makefile
Normal file
10
xa/tests/masmcom/Makefile
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
default:
|
||||||
|
# compile with masm mode on.
|
||||||
|
../../xa -M -o test.o test.s
|
||||||
|
../hextool -cmp=okmasm < test.o
|
||||||
|
# compile without
|
||||||
|
../../xa -o test.o test.s
|
||||||
|
../hextool -cmp=oknomasm < test.o
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o
|
BIN
xa/tests/masmcom/okmasm
Normal file
BIN
xa/tests/masmcom/okmasm
Normal file
Binary file not shown.
BIN
xa/tests/masmcom/oknomasm
Normal file
BIN
xa/tests/masmcom/oknomasm
Normal file
Binary file not shown.
3
xa/tests/masmcom/test.s
Normal file
3
xa/tests/masmcom/test.s
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
/* when assembled with/without -M, we get two different objects */
|
||||||
|
|
||||||
|
lda #00 ; and this: lda #01 ; is why : lda #":"
|
BIN
xa/tests/quotch/ok
Normal file
BIN
xa/tests/quotch/ok
Normal file
Binary file not shown.
11
xa/tests/quotch/test.s
Normal file
11
xa/tests/quotch/test.s
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
.word $9000
|
||||||
|
* = $9000
|
||||||
|
|
||||||
|
; test specific single characters can be quoted
|
||||||
|
|
||||||
|
LDA #';'
|
||||||
|
CMP #':'
|
||||||
|
AND #'"'
|
||||||
|
SBC #";"
|
||||||
|
ORA #":"
|
||||||
|
EOR #"'"
|
Loading…
Reference in New Issue
Block a user