Merge pull request #2802 from kugelfuhr/kugelfuhr/modernize-ld65-diags
Modernize ld65 diagnostics
This commit is contained in:
@@ -61,8 +61,8 @@ define CPUDETECT_template
|
||||
|
||||
$(WORKDIR)/$1-cpudetect.bin: cpudetect.s $1-cpudetect.ref $(ISEQUAL)
|
||||
$(if $(QUIET),echo asm/$1-cpudetect.bin)
|
||||
$(CA65) -t none --cpu $1 -l $$(@:.bin=.lst) -o $$(@:.bin=.o) $$< $(CATERR)
|
||||
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib $(CATERR)
|
||||
$(CA65) --no-utf8 -t none --cpu $1 -l $$(@:.bin=.lst) -o $$(@:.bin=.o) $$< $(CATERR)
|
||||
$(LD65) --no-utf8 -t none -o $$@ $$(@:.bin=.o) none.lib $(CATERR)
|
||||
$(ISEQUAL) $1-cpudetect.ref $$@
|
||||
|
||||
endef # CPUDETECT_template
|
||||
@@ -70,7 +70,7 @@ endef # CPUDETECT_template
|
||||
$(foreach cpu,$(CPUDETECT_CPUS),$(eval $(call CPUDETECT_template,$(cpu))))
|
||||
|
||||
$(WORKDIR)/%.o: %.s | $(WORKDIR)
|
||||
$(CA65) -l $(@:.o=.lst) -o $@ $< $(NULLOUT) $(CATERR)
|
||||
$(CA65) --no-utf8 -l $(@:.o=.lst) -o $@ $< $(NULLOUT) $(CATERR)
|
||||
|
||||
clean:
|
||||
@$(call RMDIR,$(WORKDIR))
|
||||
|
||||
11
test/asm/listing/170-ld-errormsg.cfg
Normal file
11
test/asm/listing/170-ld-errormsg.cfg
Normal file
@@ -0,0 +1,11 @@
|
||||
MEMORY {
|
||||
ZP: file = "", start = $80, size = $001F;
|
||||
MAIN: file = %O, start = %S, size = $1000;
|
||||
}
|
||||
SEGMENTS {
|
||||
ZEROPAGE: load = ZP, type = zp;
|
||||
CODE: load = MAIN, type = rw;
|
||||
RODATA: load = MAIN, type = rw;
|
||||
DATA: load = MAIN, type = rw;
|
||||
BSS: load = MAIN, type = bss;
|
||||
}
|
||||
6
test/asm/listing/170-ld-errormsg.s
Normal file
6
test/asm/listing/170-ld-errormsg.s
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
.code
|
||||
.byte 5
|
||||
.bss
|
||||
.byte 3
|
||||
|
||||
11
test/asm/listing/171-ld-errormsg.cfg
Normal file
11
test/asm/listing/171-ld-errormsg.cfg
Normal file
@@ -0,0 +1,11 @@
|
||||
MEMORY {
|
||||
ZP: file = "", start = $80, size = $001F;
|
||||
MAIN: file = %O, start = %S, size = $100;
|
||||
}
|
||||
SEGMENTS {
|
||||
ZEROPAGE: load = ZP, type = zp;
|
||||
CODE: load = MAIN, type = rw;
|
||||
RODATA: load = MAIN, type = rw;
|
||||
DATA: load = MAIN, type = rw;
|
||||
BSS: load = MAIN, type = bss;
|
||||
}
|
||||
4
test/asm/listing/171-ld-errormsg.s
Normal file
4
test/asm/listing/171-ld-errormsg.s
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
.code
|
||||
.res 256, 3
|
||||
.byte $FF
|
||||
6
test/asm/listing/172-ld-errormsg.cfg
Normal file
6
test/asm/listing/172-ld-errormsg.cfg
Normal file
@@ -0,0 +1,6 @@
|
||||
MEMORY {
|
||||
MAIN: file = %O, start = %S, size = $1000;
|
||||
}
|
||||
SEGMENTS {
|
||||
CODE: load = MAIN, type = rwx;
|
||||
}
|
||||
4
test/asm/listing/172-ld-errormsg.s
Normal file
4
test/asm/listing/172-ld-errormsg.s
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
.bss
|
||||
.byte 3
|
||||
|
||||
@@ -73,21 +73,21 @@ $(WORKDIR)/$1.bin: $1.s $(ISEQUAL)
|
||||
|
||||
# compile without generating listing
|
||||
ifeq ($(wildcard control/$1.err),)
|
||||
$(CA65) -t none --no-utf8 -o $$(@:.bin=.o) $$< > $$(@:.bin=.err) 2> $$(@:.bin=.err2)
|
||||
$(CA65) --no-utf8 -t none --no-utf8 -o $$(@:.bin=.o) $$< > $$(@:.bin=.err) 2> $$(@:.bin=.err2)
|
||||
ifeq ($(wildcard control/$1.no-ld65),)
|
||||
ifeq ($(wildcard $1.cfg),)
|
||||
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2)
|
||||
$(LD65) --no-utf8 -t none -o $$@ $$(@:.bin=.o) none.lib > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2)
|
||||
else
|
||||
$(LD65) -C $$(<:.s=.cfg) -o $$@ $$(@:.bin=.o) > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2)
|
||||
$(LD65) --no-utf8 -C $$(<:.s=.cfg) -o $$@ $$(@:.bin=.o) > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2)
|
||||
endif
|
||||
endif
|
||||
else
|
||||
$(CA65) -t none --no-utf8 -o $$(@:.bin=.o) $$< > $$(@:.bin=.err) 2> $$(@:.bin=.err2) || $(TRUE)
|
||||
$(CA65) --no-utf8 -t none --no-utf8 -o $$(@:.bin=.o) $$< > $$(@:.bin=.err) 2> $$(@:.bin=.err2) || $(TRUE)
|
||||
ifeq ($(wildcard control/$1.no-ld65),)
|
||||
ifeq ($(wildcard $1.cfg),)
|
||||
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2) || $(TRUE)
|
||||
$(LD65) --no-utf8 -t none -o $$@ $$(@:.bin=.o) none.lib > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2) || $(TRUE)
|
||||
else
|
||||
$(LD65) -C $$(<:.s=.cfg) -o $$@ $$(@:.bin=.o) > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2) || $(TRUE)
|
||||
$(LD65) --no-utf8 -C $$(<:.s=.cfg) -o $$@ $$(@:.bin=.o) > $$(@:.bin=.ld65-err) 2> $$(@:.bin=.ld65-err2) || $(TRUE)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -144,21 +144,21 @@ endif
|
||||
|
||||
# compile with listing file
|
||||
ifeq ($(wildcard control/$1.err),)
|
||||
$(CA65) -t none --no-utf8 -l $$(@:.bin=.list-lst) -o $$(@:.bin=.list-o) $$< > $$(@:.bin=.list-err) 2> $$(@:.bin=.list-err2)
|
||||
$(CA65) --no-utf8 -t none --no-utf8 -l $$(@:.bin=.list-lst) -o $$(@:.bin=.list-o) $$< > $$(@:.bin=.list-err) 2> $$(@:.bin=.list-err2)
|
||||
ifeq ($(wildcard control/$1.no-ld65),)
|
||||
ifeq ($(wildcard $1.cfg),)
|
||||
$(LD65) -t none -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) none.lib > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2)
|
||||
$(LD65) --no-utf8 -t none -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) none.lib > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2)
|
||||
else
|
||||
$(LD65) -C $$(<:.s=.cfg) -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2)
|
||||
$(LD65) --no-utf8 -C $$(<:.s=.cfg) -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2)
|
||||
endif
|
||||
endif
|
||||
else
|
||||
$(CA65) -t none --no-utf8 -l $$(@:.bin=.list-lst) -o $$(@:.bin=.list-o) $$< > $$(@:.bin=.list-err) 2> $$(@:.bin=.list-err2) || $(TRUE)
|
||||
$(CA65) --no-utf8 -t none --no-utf8 -l $$(@:.bin=.list-lst) -o $$(@:.bin=.list-o) $$< > $$(@:.bin=.list-err) 2> $$(@:.bin=.list-err2) || $(TRUE)
|
||||
ifeq ($(wildcard control/$1.no-ld65),)
|
||||
ifeq ($(wildcard $1.cfg),)
|
||||
$(LD65) -t none -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) none.lib > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2) || $(TRUE)
|
||||
$(LD65) --no-utf8 -t none -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) none.lib > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2) || $(TRUE)
|
||||
else
|
||||
$(LD65) -C $$(<:.s=.cfg) -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2) || $(TRUE)
|
||||
$(LD65) --no-utf8 -C $$(<:.s=.cfg) -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) > $$(@:.bin=.list-ld65-err) 2> $$(@:.bin=.list-ld65-err2) || $(TRUE)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -212,7 +212,7 @@ $(foreach listing,$(LISTING_TESTS),$(eval $(call LISTING_template,$(listing))))
|
||||
|
||||
|
||||
$(WORKDIR)/%.o: %.s | $(WORKDIR)
|
||||
$(CA65) -l $(@:.o=.lst) -o $@ $<
|
||||
$(CA65) --no-utf8 -l $(@:.o=.lst) -o $@ $<
|
||||
|
||||
clean:
|
||||
@$(call RMDIR,$(WORKDIR))
|
||||
|
||||
0
test/asm/listing/control/171-ld-errormsg.err
Normal file
0
test/asm/listing/control/171-ld-errormsg.err
Normal file
0
test/asm/listing/control/172-ld-errormsg.err
Normal file
0
test/asm/listing/control/172-ld-errormsg.err
Normal file
@@ -1,40 +1,40 @@
|
||||
ld65: Warning: 030-assert-success.s:3: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:4: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:6: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:7: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:12: Code not at $1001
|
||||
ld65: Warning: 030-assert-success.s:13: Code not at $1001
|
||||
ld65: Warning: 030-assert-success.s:15: Code not at $8000
|
||||
ld65: Warning: 030-assert-success.s:16: Code not at $8000
|
||||
ld65: Warning: 030-assert-success.s:18: Code not at $8001
|
||||
ld65: Warning: 030-assert-success.s:19: Code not at $8001
|
||||
ld65: Warning: 030-assert-success.s:23: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:24: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:26: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:27: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:29: Code not at $1000
|
||||
ld65: Warning: 030-assert-success.s:30: Code not at $1000
|
||||
ld65: Warning: 030-assert-success.s:35: Code not at $8000
|
||||
ld65: Warning: 030-assert-success.s:36: Code not at $8000
|
||||
ld65: Warning: 030-assert-success.s:38: Code not at $8001
|
||||
ld65: Warning: 030-assert-success.s:39: Code not at $8001
|
||||
ld65: Warning: 030-assert-success.s:45: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:46: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:48: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:49: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:51: Code not at $1000
|
||||
ld65: Warning: 030-assert-success.s:52: Code not at $1000
|
||||
ld65: Warning: 030-assert-success.s:54: Code not at $1001
|
||||
ld65: Warning: 030-assert-success.s:55: Code not at $1001
|
||||
ld65: Warning: 030-assert-success.s:60: Code not at $8001
|
||||
ld65: Warning: 030-assert-success.s:61: Code not at $8001
|
||||
ld65: Warning: 030-assert-success.s:65: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:66: Code not at $0000
|
||||
ld65: Warning: 030-assert-success.s:68: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:69: Code not at $0001
|
||||
ld65: Warning: 030-assert-success.s:71: Code not at $1000
|
||||
ld65: Warning: 030-assert-success.s:72: Code not at $1000
|
||||
ld65: Warning: 030-assert-success.s:74: Code not at $1001
|
||||
ld65: Warning: 030-assert-success.s:75: Code not at $1001
|
||||
ld65: Warning: 030-assert-success.s:77: Code not at $8000
|
||||
ld65: Warning: 030-assert-success.s:78: Code not at $8000
|
||||
030-assert-success.s:3: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:4: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:6: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:7: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:12: Warning: Assertion failed: Code not at $1001
|
||||
030-assert-success.s:13: Warning: Assertion failed: Code not at $1001
|
||||
030-assert-success.s:15: Warning: Assertion failed: Code not at $8000
|
||||
030-assert-success.s:16: Warning: Assertion failed: Code not at $8000
|
||||
030-assert-success.s:18: Warning: Assertion failed: Code not at $8001
|
||||
030-assert-success.s:19: Warning: Assertion failed: Code not at $8001
|
||||
030-assert-success.s:23: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:24: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:26: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:27: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:29: Warning: Assertion failed: Code not at $1000
|
||||
030-assert-success.s:30: Warning: Assertion failed: Code not at $1000
|
||||
030-assert-success.s:35: Warning: Assertion failed: Code not at $8000
|
||||
030-assert-success.s:36: Warning: Assertion failed: Code not at $8000
|
||||
030-assert-success.s:38: Warning: Assertion failed: Code not at $8001
|
||||
030-assert-success.s:39: Warning: Assertion failed: Code not at $8001
|
||||
030-assert-success.s:45: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:46: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:48: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:49: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:51: Warning: Assertion failed: Code not at $1000
|
||||
030-assert-success.s:52: Warning: Assertion failed: Code not at $1000
|
||||
030-assert-success.s:54: Warning: Assertion failed: Code not at $1001
|
||||
030-assert-success.s:55: Warning: Assertion failed: Code not at $1001
|
||||
030-assert-success.s:60: Warning: Assertion failed: Code not at $8001
|
||||
030-assert-success.s:61: Warning: Assertion failed: Code not at $8001
|
||||
030-assert-success.s:65: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:66: Warning: Assertion failed: Code not at $0000
|
||||
030-assert-success.s:68: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:69: Warning: Assertion failed: Code not at $0001
|
||||
030-assert-success.s:71: Warning: Assertion failed: Code not at $1000
|
||||
030-assert-success.s:72: Warning: Assertion failed: Code not at $1000
|
||||
030-assert-success.s:74: Warning: Assertion failed: Code not at $1001
|
||||
030-assert-success.s:75: Warning: Assertion failed: Code not at $1001
|
||||
030-assert-success.s:77: Warning: Assertion failed: Code not at $8000
|
||||
030-assert-success.s:78: Warning: Assertion failed: Code not at $8000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 032-assert-error2.s:3: Code not at $0000
|
||||
032-assert-error2.s:3: Error: Assertion failed: Code not at $0000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 032-assert-error3.s:3: Code not at $0000
|
||||
032-assert-error3.s:3: Error: Assertion failed: Code not at $0000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 032-assert-error4.s:3: Code not at $0001
|
||||
032-assert-error4.s:3: Error: Assertion failed: Code not at $0001
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 032-assert-error6.s:3: Code not at $1001
|
||||
032-assert-error6.s:3: Error: Assertion failed: Code not at $1001
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 032-assert-error7.s:3: Code not at $8000
|
||||
032-assert-error7.s:3: Error: Assertion failed: Code not at $8000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 032-assert-error8.s:3: Code not at $8001
|
||||
032-assert-error8.s:3: Error: Assertion failed: Code not at $8001
|
||||
|
||||
@@ -1,40 +1,40 @@
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:3: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:4: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:6: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:7: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:12: Code not at $1001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:13: Code not at $1001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:15: Code not at $8000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:16: Code not at $8000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:18: Code not at $8001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:19: Code not at $8001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:23: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:24: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:26: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:27: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:29: Code not at $1000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:30: Code not at $1000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:35: Code not at $8000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:36: Code not at $8000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:38: Code not at $8001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:39: Code not at $8001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:45: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:46: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:48: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:49: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:51: Code not at $1000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:52: Code not at $1000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:54: Code not at $1001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:55: Code not at $1001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:60: Code not at $8001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:61: Code not at $8001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:65: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:66: Code not at $0000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:68: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:69: Code not at $0001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:71: Code not at $1000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:72: Code not at $1000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:74: Code not at $1001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:75: Code not at $1001
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:77: Code not at $8000
|
||||
ld65: Warning: 033-assert-ldwarning-success.s:78: Code not at $8000
|
||||
033-assert-ldwarning-success.s:3: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:4: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:6: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:7: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:12: Warning: Assertion failed: Code not at $1001
|
||||
033-assert-ldwarning-success.s:13: Warning: Assertion failed: Code not at $1001
|
||||
033-assert-ldwarning-success.s:15: Warning: Assertion failed: Code not at $8000
|
||||
033-assert-ldwarning-success.s:16: Warning: Assertion failed: Code not at $8000
|
||||
033-assert-ldwarning-success.s:18: Warning: Assertion failed: Code not at $8001
|
||||
033-assert-ldwarning-success.s:19: Warning: Assertion failed: Code not at $8001
|
||||
033-assert-ldwarning-success.s:23: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:24: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:26: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:27: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:29: Warning: Assertion failed: Code not at $1000
|
||||
033-assert-ldwarning-success.s:30: Warning: Assertion failed: Code not at $1000
|
||||
033-assert-ldwarning-success.s:35: Warning: Assertion failed: Code not at $8000
|
||||
033-assert-ldwarning-success.s:36: Warning: Assertion failed: Code not at $8000
|
||||
033-assert-ldwarning-success.s:38: Warning: Assertion failed: Code not at $8001
|
||||
033-assert-ldwarning-success.s:39: Warning: Assertion failed: Code not at $8001
|
||||
033-assert-ldwarning-success.s:45: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:46: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:48: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:49: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:51: Warning: Assertion failed: Code not at $1000
|
||||
033-assert-ldwarning-success.s:52: Warning: Assertion failed: Code not at $1000
|
||||
033-assert-ldwarning-success.s:54: Warning: Assertion failed: Code not at $1001
|
||||
033-assert-ldwarning-success.s:55: Warning: Assertion failed: Code not at $1001
|
||||
033-assert-ldwarning-success.s:60: Warning: Assertion failed: Code not at $8001
|
||||
033-assert-ldwarning-success.s:61: Warning: Assertion failed: Code not at $8001
|
||||
033-assert-ldwarning-success.s:65: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:66: Warning: Assertion failed: Code not at $0000
|
||||
033-assert-ldwarning-success.s:68: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:69: Warning: Assertion failed: Code not at $0001
|
||||
033-assert-ldwarning-success.s:71: Warning: Assertion failed: Code not at $1000
|
||||
033-assert-ldwarning-success.s:72: Warning: Assertion failed: Code not at $1000
|
||||
033-assert-ldwarning-success.s:74: Warning: Assertion failed: Code not at $1001
|
||||
033-assert-ldwarning-success.s:75: Warning: Assertion failed: Code not at $1001
|
||||
033-assert-ldwarning-success.s:77: Warning: Assertion failed: Code not at $8000
|
||||
033-assert-ldwarning-success.s:78: Warning: Assertion failed: Code not at $8000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 034-assert-lderror2.s:3: Code not at $0000
|
||||
034-assert-lderror2.s:3: Error: Assertion failed: Code not at $0000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 034-assert-lderror3.s:3: Code not at $0000
|
||||
034-assert-lderror3.s:3: Error: Assertion failed: Code not at $0000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 034-assert-lderror4.s:3: Code not at $0001
|
||||
034-assert-lderror4.s:3: Error: Assertion failed: Code not at $0001
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 034-assert-lderror6.s:3: Code not at $1001
|
||||
034-assert-lderror6.s:3: Error: Assertion failed: Code not at $1001
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 034-assert-lderror7.s:3: Code not at $8000
|
||||
034-assert-lderror7.s:3: Error: Assertion failed: Code not at $8000
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Error: 034-assert-lderror8.s:3: Code not at $8001
|
||||
034-assert-lderror8.s:3: Error: Assertion failed: Code not at $8001
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Warning: <<<#PATH#>>>:<<<#INTEGER#>>>: Segment 'CODE' isn't aligned properly; the resulting executable might not be functional.
|
||||
<<<#PATH#>>>:<<<#INTEGER#>>>: Warning: Segment 'CODE' isn't aligned properly; the resulting executable might not be functional.
|
||||
|
||||
@@ -1 +1 @@
|
||||
ld65: Warning: runtime/sp-compat.s:16: Symbol 'sp' is deprecated - please use 'c_sp' instead
|
||||
runtime/sp-compat.s:16: Warning: Assertion failed: Symbol 'sp' is deprecated - please use 'c_sp' instead
|
||||
|
||||
1
test/asm/listing/ref/170-ld-errormsg.bin-ref
Normal file
1
test/asm/listing/ref/170-ld-errormsg.bin-ref
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
2
test/asm/listing/ref/170-ld-errormsg.ld65err2-ref
Normal file
2
test/asm/listing/ref/170-ld-errormsg.ld65err2-ref
Normal file
@@ -0,0 +1,2 @@
|
||||
170-ld-errormsg.cfg:10: Warning: Segment 'BSS' with type 'bss' contains initialized data
|
||||
170-ld-errormsg.cfg:10: Note: Initialized data comes at least partially from '<<<#PATH#>>>'
|
||||
2
test/asm/listing/ref/171-ld-errormsg.ld65err2-ref
Normal file
2
test/asm/listing/ref/171-ld-errormsg.ld65err2-ref
Normal file
@@ -0,0 +1,2 @@
|
||||
171-ld-errormsg.cfg:3: Warning: Segment 'CODE' overflows memory area 'MAIN' by 1 byte
|
||||
ld65: Error: Cannot generate most of the files due to memory area overflow
|
||||
2
test/asm/listing/ref/172-ld-errormsg.ld65err2-ref
Normal file
2
test/asm/listing/ref/172-ld-errormsg.ld65err2-ref
Normal file
@@ -0,0 +1,2 @@
|
||||
172-ld-errormsg.cfg:5: Error: Segment type expected but got 'RWX'
|
||||
172-ld-errormsg.cfg:5: Note: You may use one of 'RO', 'RW', 'BSS', 'ZP' or 'OVERWRITE'
|
||||
@@ -1,3 +1,3 @@
|
||||
ld65: Warning: 201-overwrite-overflow.cfg:3: Segment 'AO' overflows memory area 'A' by 1 byte
|
||||
ld65: Warning: 201-overwrite-overflow.cfg:4: Segment 'BO' overflows memory area 'B' by 1 byte
|
||||
201-overwrite-overflow.cfg:3: Warning: Segment 'AO' overflows memory area 'A' by 1 byte
|
||||
201-overwrite-overflow.cfg:4: Warning: Segment 'BO' overflows memory area 'B' by 1 byte
|
||||
ld65: Error: Cannot generate most of the files due to memory area overflows
|
||||
|
||||
@@ -63,15 +63,15 @@ define PRG_template
|
||||
# sim65 ensure 64-bit wait time does not timeout
|
||||
$(WORKDIR)/sim65-timein.$1.prg: sim65-timein.s | $(WORKDIR)
|
||||
$(if $(QUIET),echo misc/sim65-timein.$1.prg)
|
||||
$(CA65) -t sim$1 -o $$(@:.prg=.o) $$< $(NULLERR)
|
||||
$(LD65) -t sim$1 -o $$@ $$(@:.prg=.o) sim$1.lib $(NULLERR)
|
||||
$(CA65) --no-utf8 -t sim$1 -o $$(@:.prg=.o) $$< $(NULLERR)
|
||||
$(LD65) --no-utf8 -t sim$1 -o $$@ $$(@:.prg=.o) sim$1.lib $(NULLERR)
|
||||
$(SIM65) -x 4400000000 -c $$@ $(NULLOUT) $(NULLERR)
|
||||
|
||||
# sim65 ensure 64-bit wait time does timeout
|
||||
$(WORKDIR)/sim65-timeout.$1.prg: sim65-timeout.s | $(WORKDIR)
|
||||
$(if $(QUIET),echo misc/sim65-timeout.$1.prg)
|
||||
$(CA65) -t sim$1 -o $$(@:.prg=.o) $$< $(NULLERR)
|
||||
$(LD65) -t sim$1 -o $$@ $$(@:.prg=.o) sim$1.lib $(NULLERR)
|
||||
$(CA65) --no-utf8 -t sim$1 -o $$(@:.prg=.o) $$< $(NULLERR)
|
||||
$(LD65) --no-utf8 -t sim$1 -o $$@ $$(@:.prg=.o) sim$1.lib $(NULLERR)
|
||||
$(NOT) $(SIM65) -x 4400000000 -c $$@ $(NULLOUT) $(NULLERR)
|
||||
|
||||
endef # PRG_template
|
||||
|
||||
@@ -61,8 +61,8 @@ define OPCODE_template
|
||||
|
||||
$(WORKDIR)/$1-opcodes.bin: $1-opcodes.s $(ISEQUAL)
|
||||
$(if $(QUIET),echo asm/$1-opcodes.bin)
|
||||
$(CA65) -t none --cpu $1 -l $$(@:.bin=.lst) -o $$(@:.bin=.o) $$<
|
||||
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib
|
||||
$(CA65) --no-utf8 -t none --cpu $1 -l $$(@:.bin=.lst) -o $$(@:.bin=.o) $$<
|
||||
$(LD65) --no-utf8 -t none -o $$@ $$(@:.bin=.o) none.lib
|
||||
$(ISEQUAL) $1-opcodes.ref $$@
|
||||
|
||||
endef # OPCODE_template
|
||||
@@ -70,7 +70,7 @@ endef # OPCODE_template
|
||||
$(foreach cpu,$(OPCODE_CPUS),$(eval $(call OPCODE_template,$(cpu))))
|
||||
|
||||
$(WORKDIR)/%.o: %.s | $(WORKDIR)
|
||||
$(CA65) -l $(@:.o=.lst) -o $@ $<
|
||||
$(CA65) --no-utf8 -l $(@:.o=.lst) -o $@ $<
|
||||
|
||||
clean:
|
||||
@$(call RMDIR,$(WORKDIR))
|
||||
|
||||
@@ -55,8 +55,8 @@ define PRG_template
|
||||
|
||||
$(WORKDIR)/%.$1.prg: %.s | $(WORKDIR)
|
||||
$(if $(QUIET),echo asm/val/$$*.$1.prg)
|
||||
$(CA65) -t sim$1 -o $$(@:.prg=.o) $$< $(NULLOUT) $(NULLERR)
|
||||
$(LD65) -C sim6502-asmtest.cfg -o $$@ $$(@:.prg=.o) sim$1.lib $(NULLOUT) $(NULLERR)
|
||||
$(CA65) --no-utf8 -t sim$1 -o $$(@:.prg=.o) $$< $(NULLOUT) $(NULLERR)
|
||||
$(LD65) --no-utf8 -C sim6502-asmtest.cfg -o $$@ $$(@:.prg=.o) sim$1.lib $(NULLOUT) $(NULLERR)
|
||||
$(SIM65) $(SIM65FLAGS) $$@ $(NULLOUT)
|
||||
|
||||
endef # PRG_template
|
||||
|
||||
Reference in New Issue
Block a user