diff --git a/testcode/disasm/Makefile b/testcode/disasm/Makefile index 05e5b8373..61b37e314 100644 --- a/testcode/disasm/Makefile +++ b/testcode/disasm/Makefile @@ -31,15 +31,17 @@ else DA := $(if $(wildcard ../../../bin/da65*),../../../bin/da65,da65) endif -CPP = env LANG=C cpp -CPPFLAGS = # -DTEST_ERROR +CPP = cpp +#CPPFLAGS = -DTEST_ERROR ASMS = fixed.s bank0.s bank1.s DAIS = fixed.dai bank0.dai bank1.dai .SUFFIXES: .da .dai .s -.PHONY: all clean maintainer-clean -.SECONDARY: $(DAIS) + +all: image.bin $(ASMS) + +$(DAIS): fixed.da .da.dai: $(CPP) -o $@ $(CPPFLAGS) $< @@ -47,12 +49,11 @@ DAIS = fixed.dai bank0.dai bank1.dai .dai.s: $(DA) --sync-lines -o $@ -i $< image.bin -all: $(ASMS) +image.bin: image.s image.cfg + $(CL) -t none -C image.cfg -o image.bin image.s clean: $(RM) $(ASMS) - -maintainer-clean: clean $(RM) $(DAIS) + $(RM) image.bin -$(DAIS): fixed.da diff --git a/testcode/disasm/bank0.dai b/testcode/disasm/bank0.dai deleted file mode 100644 index 2d865e77c..000000000 --- a/testcode/disasm/bank0.dai +++ /dev/null @@ -1,33 +0,0 @@ -# 1 "bank0.da" -# 1 "" -# 1 "" -# 1 "bank0.da" - - - - -global { - inputoffs $00010; - inputsize $4000; - startaddr $8000; - cpu "6502"; -}; - -# 1 "fixed.da" 1 -# 18 "fixed.da" -label { addr $00; name "VariableA"; }; -label { addr $01; name "VariableB"; }; -label { addr $0100; name "Stack"; size $0100; }; - - - - - -label { addr $C000; name "CommonProcA"; }; -label { addr $C123; name "CommonProcB"; }; -range { start $E123; end $FFFF; name "CommonData"; type ByteTable; }; -# 13 "bank0.da" 2 - -label { addr $8000; name "Bank0ProcA"; }; -label { addr $8123; name "Bank0ProcB"; }; -range { start $A000; end $BFFF; name "Bank0Data"; type ByteTable; }; diff --git a/testcode/disasm/bank1.dai b/testcode/disasm/bank1.dai deleted file mode 100644 index 2b5b68532..000000000 --- a/testcode/disasm/bank1.dai +++ /dev/null @@ -1,33 +0,0 @@ -# 1 "bank1.da" -# 1 "" -# 1 "" -# 1 "bank1.da" - - - - -global { - inputoffs $04010; - inputsize $4000; - startaddr $8000; - cpu "6502"; -}; - -# 1 "fixed.da" 1 -# 18 "fixed.da" -label { addr $00; name "VariableA"; }; -label { addr $01; name "VariableB"; }; -label { addr $0100; name "Stack"; size $0100; }; - - - - - -label { addr $C000; name "CommonProcA"; }; -label { addr $C123; name "CommonProcB"; }; -range { start $E123; end $FFFF; name "CommonData"; type ByteTable; }; -# 13 "bank1.da" 2 - -range { start $8000; end $AFFF; name "Bank1Data"; type ByteTable; }; -label { addr $B000; name "Bank1ProcA"; }; -label { addr $B123; name "Bank1ProcB"; }; diff --git a/testcode/disasm/fixed.da b/testcode/disasm/fixed.da index e8aa03427..f8ad4ba27 100644 --- a/testcode/disasm/fixed.da +++ b/testcode/disasm/fixed.da @@ -7,7 +7,7 @@ #ifndef TARGET_BANK #define TARGET_BANK -1 global { - inputoffs $1C010; + inputoffs $0C010; inputsize $4000; startaddr $C000; cpu "6502"; diff --git a/testcode/disasm/fixed.dai b/testcode/disasm/fixed.dai deleted file mode 100644 index d73155cf0..000000000 --- a/testcode/disasm/fixed.dai +++ /dev/null @@ -1,25 +0,0 @@ -# 1 "fixed.da" -# 1 "" -# 1 "" -# 1 "fixed.da" -# 9 "fixed.da" -global { - inputoffs $1C010; - inputsize $4000; - startaddr $C000; - cpu "6502"; -}; - - - -label { addr $00; name "VariableA"; }; -label { addr $01; name "VariableB"; }; -label { addr $0100; name "Stack"; size $0100; }; - - - - - -label { addr $C000; name "CommonProcA"; }; -label { addr $C123; name "CommonProcB"; }; -range { start $E123; end $FFFF; name "CommonData"; type ByteTable; }; diff --git a/testcode/disasm/image.cfg b/testcode/disasm/image.cfg new file mode 100644 index 000000000..2225c722f --- /dev/null +++ b/testcode/disasm/image.cfg @@ -0,0 +1,15 @@ + +MEMORY { + HEADER: file = %O, start = $0000, size = $0010, fill = yes; + BANK00: file = %O, start = $8000, size = $4000, fill = yes; + BANK01: file = %O, start = $8000, size = $4000, fill = yes; + BANK02: file = %O, start = $8000, size = $4000, fill = yes; + FIXED: file = %O, start = $c000, size = $4000, fill = yes; +} +SEGMENTS { + HDR: load = HEADER, type = rw, optional = yes, define = yes; + BANK0: load = BANK00, type = rw, optional = yes, define = yes; + BANK1: load = BANK01, type = rw, optional = yes, define = yes; + BANK2: load = BANK02, type = rw, optional = yes, define = yes; + FIX: load = FIXED, type = rw, optional = yes, define = yes; +}