1
0
mirror of https://github.com/cc65/cc65.git synced 2025-04-18 09:38:07 +00:00

Merge pull request from spiro-trikaliotis/testsuite

Some test cases for ca65
This commit is contained in:
Bob Andrews 2022-07-21 18:12:41 +02:00 committed by GitHub
commit d85ca8aedd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
119 changed files with 88296 additions and 29 deletions
test/asm/listing
001-macro-simple-listing.s002-macro-param-listing.s010-paramcount.s020-asciiz.s030-assert-success.s031-assert-error.s032-assert-error2.s032-assert-error3.s032-assert-error4.s032-assert-error5.s032-assert-error6.s032-assert-error7.s032-assert-error8.s033-assert-ldwarning-success.s034-assert-lderror1.s034-assert-lderror2.s034-assert-lderror3.s034-assert-lderror4.s034-assert-lderror5.s034-assert-lderror6.s034-assert-lderror7.s034-assert-lderror8.s040-align.s050-case-off-2.s050-case-off-3.s050-case-off-4.s050-case-on-1.s050-case-on-2.s050-case-on-3.s050-case-on-4.s050-case-on-5.s100-byte.s101-byt.s102-word.s103-dbyt.s104-dword.s105-faraddr.s106-hibytes.s107-lobytes.sMakefile
control
ref

@ -0,0 +1,16 @@
; 2022-01-17 Spiro Trikaliotis
.macro TESTER
lda #2
.endmacro
test:
ldx #0
TESTER
ldx #15
TESTER
inx
TESTER
TESTER
dex
rts

@ -0,0 +1,16 @@
; 2022-01-17 Spiro Trikaliotis
.macro TESTER val
lda #val
.endmacro
test:
ldx #0
TESTER 1
ldx #15
TESTER 2
inx
TESTER 3
TESTER 4
dex
rts

@ -0,0 +1,14 @@
; 2022-06-15 Spiro Trikaliotis
; upper case pseudo-op
.ASCIIZ ""
.ASCIIZ "Hello World"
.ASCIIZ "Hello ","World"
.ASCIIZ "Hello ","World"," ","I"," ","am"," ","testing"
; lower case pseudo-op
.asciiz ""
.asciiz "Hello World"
.asciiz "Hello ","World"
.asciiz "Hello ","World"," ","I"," ","am"," ","testing"

@ -0,0 +1,81 @@
; 2022-06-15 Spiro Trikaliotis
.ASSERT * = $0000, warning, "Code not at $0000"
.assert * = $0000, warning, "Code not at $0000"
.ASSERT * = $0001, warning, "Code not at $0001"
.assert * = $0001, warning, "Code not at $0001"
.ASSERT * = $1000, warning, "Code not at $1000"
.assert * = $1000, warning, "Code not at $1000"
.ASSERT * = $1001, warning, "Code not at $1001"
.assert * = $1001, warning, "Code not at $1001"
.ASSERT * = $8000, warning, "Code not at $8000"
.assert * = $8000, warning, "Code not at $8000"
.ASSERT * = $8001, warning, "Code not at $8001"
.assert * = $8001, warning, "Code not at $8001"
nop
.ASSERT * = $0000, warning, "Code not at $0000"
.assert * = $0000, warning, "Code not at $0000"
.ASSERT * = $0001, warning, "Code not at $0001"
.assert * = $0001, warning, "Code not at $0001"
.ASSERT * = $1000, warning, "Code not at $1000"
.assert * = $1000, warning, "Code not at $1000"
.ASSERT * = $1001, warning, "Code not at $1001"
.assert * = $1001, warning, "Code not at $1001"
.ASSERT * = $8000, warning, "Code not at $8000"
.assert * = $8000, warning, "Code not at $8000"
.ASSERT * = $8001, warning, "Code not at $8001"
.assert * = $8001, warning, "Code not at $8001"
.org $8000
.ASSERT * = $0000, warning, "Code not at $0000"
.assert * = $0000, warning, "Code not at $0000"
.ASSERT * = $0001, warning, "Code not at $0001"
.assert * = $0001, warning, "Code not at $0001"
.ASSERT * = $1000, warning, "Code not at $1000"
.assert * = $1000, warning, "Code not at $1000"
.ASSERT * = $1001, warning, "Code not at $1001"
.assert * = $1001, warning, "Code not at $1001"
.ASSERT * = $8000, warning, "Code not at $8000"
.assert * = $8000, warning, "Code not at $8000"
.ASSERT * = $8001, warning, "Code not at $8001"
.assert * = $8001, warning, "Code not at $8001"
nop
.ASSERT * = $0000, warning, "Code not at $0000"
.assert * = $0000, warning, "Code not at $0000"
.ASSERT * = $0001, warning, "Code not at $0001"
.assert * = $0001, warning, "Code not at $0001"
.ASSERT * = $1000, warning, "Code not at $1000"
.assert * = $1000, warning, "Code not at $1000"
.ASSERT * = $1001, warning, "Code not at $1001"
.assert * = $1001, warning, "Code not at $1001"
.ASSERT * = $8000, warning, "Code not at $8000"
.assert * = $8000, warning, "Code not at $8000"
.ASSERT * = $8001, warning, "Code not at $8001"
.assert * = $8001, warning, "Code not at $8001"

@ -0,0 +1,28 @@
; 2022-06-15 Spiro Trikaliotis
.ASSERT * = $0000, error, "Code not at $0000"
.assert * = $0000, error, "Code not at $0000"
.ASSERT * = $0001, error, "Code not at $0001"
.assert * = $0001, error, "Code not at $0001"
.ASSERT * = $1000, error, "Code not at $1000"
.assert * = $1000, error, "Code not at $1000"
.ASSERT * = $1001, error, "Code not at $1001"
.assert * = $1001, error, "Code not at $1001"
.ASSERT * = $8000, error, "Code not at $8000"
.assert * = $8000, error, "Code not at $8000"
.ASSERT * = $8001, error, "Code not at $8001"
.assert * = $8001, error, "Code not at $8001"
.org $8000
.ASSERT * = $8000, error, "Code not at $8000"
.assert * = $8000, error, "Code not at $8000"
.ASSERT * = $8001, error, "Code not at $8001"
.assert * = $8001, error, "Code not at $8001"

@ -0,0 +1,8 @@
; 2022-06-18 Spiro Trikaliotis
.ASSERT * = $0000, error, "Code not at $0000"
.ASSERT * = $0001, error, "Code not at $0001"
.ASSERT * = $1000, error, "Code not at $1000"
.ASSERT * = $1001, error, "Code not at $1001"
.ASSERT * = $8000, error, "Code not at $8000"
.ASSERT * = $8001, error, "Code not at $8001"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $0000, error, "Code not at $0000"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $0001, error, "Code not at $0001"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $1000, error, "Code not at $1000"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $1001, error, "Code not at $1001"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $8000, error, "Code not at $8000"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $8001, error, "Code not at $8001"

@ -0,0 +1,81 @@
; 2022-06-15 Spiro Trikaliotis
.ASSERT * = $0000, ldwarning, "Code not at $0000"
.assert * = $0000, ldwarning, "Code not at $0000"
.ASSERT * = $0001, ldwarning, "Code not at $0001"
.assert * = $0001, ldwarning, "Code not at $0001"
.ASSERT * = $1000, ldwarning, "Code not at $1000"
.assert * = $1000, ldwarning, "Code not at $1000"
.ASSERT * = $1001, ldwarning, "Code not at $1001"
.assert * = $1001, ldwarning, "Code not at $1001"
.ASSERT * = $8000, ldwarning, "Code not at $8000"
.assert * = $8000, ldwarning, "Code not at $8000"
.ASSERT * = $8001, ldwarning, "Code not at $8001"
.assert * = $8001, ldwarning, "Code not at $8001"
nop
.ASSERT * = $0000, ldwarning, "Code not at $0000"
.assert * = $0000, ldwarning, "Code not at $0000"
.ASSERT * = $0001, ldwarning, "Code not at $0001"
.assert * = $0001, ldwarning, "Code not at $0001"
.ASSERT * = $1000, ldwarning, "Code not at $1000"
.assert * = $1000, ldwarning, "Code not at $1000"
.ASSERT * = $1001, ldwarning, "Code not at $1001"
.assert * = $1001, ldwarning, "Code not at $1001"
.ASSERT * = $8000, ldwarning, "Code not at $8000"
.assert * = $8000, ldwarning, "Code not at $8000"
.ASSERT * = $8001, ldwarning, "Code not at $8001"
.assert * = $8001, ldwarning, "Code not at $8001"
.org $8000
.ASSERT * = $0000, ldwarning, "Code not at $0000"
.assert * = $0000, ldwarning, "Code not at $0000"
.ASSERT * = $0001, ldwarning, "Code not at $0001"
.assert * = $0001, ldwarning, "Code not at $0001"
.ASSERT * = $1000, ldwarning, "Code not at $1000"
.assert * = $1000, ldwarning, "Code not at $1000"
.ASSERT * = $1001, ldwarning, "Code not at $1001"
.assert * = $1001, ldwarning, "Code not at $1001"
.ASSERT * = $8000, ldwarning, "Code not at $8000"
.assert * = $8000, ldwarning, "Code not at $8000"
.ASSERT * = $8001, ldwarning, "Code not at $8001"
.assert * = $8001, ldwarning, "Code not at $8001"
nop
.ASSERT * = $0000, ldwarning, "Code not at $0000"
.assert * = $0000, ldwarning, "Code not at $0000"
.ASSERT * = $0001, ldwarning, "Code not at $0001"
.assert * = $0001, ldwarning, "Code not at $0001"
.ASSERT * = $1000, ldwarning, "Code not at $1000"
.assert * = $1000, ldwarning, "Code not at $1000"
.ASSERT * = $1001, ldwarning, "Code not at $1001"
.assert * = $1001, ldwarning, "Code not at $1001"
.ASSERT * = $8000, ldwarning, "Code not at $8000"
.assert * = $8000, ldwarning, "Code not at $8000"
.ASSERT * = $8001, ldwarning, "Code not at $8001"
.assert * = $8001, ldwarning, "Code not at $8001"

@ -0,0 +1,28 @@
; 2022-06-15 Spiro Trikaliotis
.ASSERT * = $0000, error, "Code not at $0000"
.assert * = $0000, error, "Code not at $0000"
.ASSERT * = $0001, error, "Code not at $0001"
.assert * = $0001, error, "Code not at $0001"
.ASSERT * = $1000, error, "Code not at $1000"
.assert * = $1000, error, "Code not at $1000"
.ASSERT * = $1001, error, "Code not at $1001"
.assert * = $1001, error, "Code not at $1001"
.ASSERT * = $8000, error, "Code not at $8000"
.assert * = $8000, error, "Code not at $8000"
.ASSERT * = $8001, error, "Code not at $8001"
.assert * = $8001, error, "Code not at $8001"
.org $8000
.ASSERT * = $8000, error, "Code not at $8000"
.assert * = $8000, error, "Code not at $8000"
.ASSERT * = $8001, error, "Code not at $8001"
.assert * = $8001, error, "Code not at $8001"

@ -0,0 +1,8 @@
; 2022-06-18 Spiro Trikaliotis
.ASSERT * = $0000, lderror, "Code not at $0000"
.ASSERT * = $0001, lderror, "Code not at $0001"
.ASSERT * = $1000, lderror, "Code not at $1000"
.ASSERT * = $1001, lderror, "Code not at $1001"
.ASSERT * = $8000, lderror, "Code not at $8000"
.ASSERT * = $8001, lderror, "Code not at $8001"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $0000, lderror, "Code not at $0000"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $0001, lderror, "Code not at $0001"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $1000, lderror, "Code not at $1000"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $1001, lderror, "Code not at $1001"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $8000, lderror, "Code not at $8000"

@ -0,0 +1,3 @@
; 2022-06-20 Spiro Trikaliotis
.assert * = $8001, lderror, "Code not at $8001"

@ -0,0 +1,20 @@
; 2022-06-20 Spiro Trikaliotis
.byte 0
.align 4
.byte 4
.word 12
.word 18
.align 1
.byte 1
.align 8
.byte 8
.align 8
.byte 8
.align 128
.byte 128

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
.case -
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
.case off
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
.CASE OFF
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
.case +
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
.case on
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
.CASE ON
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

@ -0,0 +1,10 @@
; 2022-06-20 Spiro Trikaliotis
.case
CamelCase:
lda #0
Test:
beq CamelCase
bne camelcase

3526
test/asm/listing/100-byte.s Normal file

File diff suppressed because it is too large Load Diff

3526
test/asm/listing/101-byt.s Normal file

File diff suppressed because it is too large Load Diff

6076
test/asm/listing/102-word.s Normal file

File diff suppressed because it is too large Load Diff

6076
test/asm/listing/103-dbyt.s Normal file

File diff suppressed because it is too large Load Diff

4874
test/asm/listing/104-dword.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -15,7 +15,7 @@ else
endif
ifdef QUIET
.SILENT:
# .SILENT:
endif
CA65 := $(if $(wildcard ../../../bin/ca65*),../../../bin/ca65,ca65)
@ -49,33 +49,82 @@ $(WORKDIR)/$1.bin: $1.s $(ISEQUAL)
$(if $(QUIET),echo asm/$1.bin)
# compile without generating listing
$(CA65) -t none -o $$(@:.bin=.o) $$<
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib
ifneq ($(wildcard $1.bin-ref),)
$(ISEQUAL) $1.bin-ref $$@
ifeq ($(wildcard control/$1.err),)
$(CA65) -t none -o $$(@:.bin=.o) $$< > $$(@:.bin=.err) 2>&1
ifeq ($(wildcard control/$1.no-ld65),)
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib > $$(@:.bin=.ld65-err) 2>&1
endif
else
$(CA65) -t none -o $$(@:.bin=.o) $$< > $$(@:.bin=.err) 2>&1 || true
ifeq ($(wildcard control/$1.no-ld65),)
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib > $$(@:.bin=.ld65-err) 2>&1 || true
endif
endif
$(CA65) -t none -l $$(@:.bin=.list.orig) -o $$(@:.bin=.list-o) $$<
$(LD65) -t none -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) none.lib
ifneq ($(wildcard ref/$1.err-ref),)
$(ISEQUAL) ref/$1.err-ref $$(@:.bin=.err)
else
$(ISEQUAL) --empty $$(@:.bin=.err)
endif
ifneq ($(wildcard ref/$1.bin-ref),)
$(ISEQUAL) --binary ref/$1.bin-ref $$@
endif
ifneq ($(wildcard ref/$1.ld65err-ref),)
@echo cat $$(@:.bin=.ld65-err)
cat $$(@:.bin=.ld65-err)
@echo
@echo
-diff -u ref/$1.ld65err-ref $$(@:.bin=.ld65-err)
@echo
@echo
$(ISEQUAL) --wildcards ref/$1.ld65err-ref $$(@:.bin=.ld65-err)
else
ifneq ($(wildcard $(WORKDIR)/$1.ld65-err),)
$(ISEQUAL) --empty $$(@:.bin=.ld65-err)
endif
endif
# compile with listing file
ifeq ($(wildcard control/$1.err),)
$(CA65) -t none -l $$(@:.bin=.list-lst) -o $$(@:.bin=.list-o) $$< > $$(@:.bin=.list-err) 2>&1
ifeq ($(wildcard control/$1.no-ld65),)
$(LD65) -t none -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) none.lib > $$(@:.bin=.list-ld65-err) 2>&1
endif
else
$(CA65) -t none -l $$(@:.bin=.list-lst) -o $$(@:.bin=.list-o) $$< > $$(@:.bin=.list-err) 2>&1 || true
ifeq ($(wildcard control/$1.no-ld65),)
$(LD65) -t none -o $$(@:.bin=.list-bin) $$(@:.bin=.list-o) none.lib > $$(@:.bin=.list-ld65-err) 2>&1 || true
endif
endif
ifneq ($(wildcard ref/$1.err-ref),)
$(ISEQUAL) ref/$1.err-ref $$(@:.bin=.list-err)
else
$(ISEQUAL) --empty $$(@:.bin=.list-err)
endif
ifneq ($(wildcard ref/$1.ld65err-ref),)
$(ISEQUAL) --wildcards ref/$1.ld65err-ref $$(@:.bin=.list-ld65-err)
else
ifneq ($(wildcard $(WORKDIR)/$1.list-ld65-err),)
$(ISEQUAL) --empty $$(@:.bin=.list-ld65-err)
endif
endif
# check if the result bin is the same as without listing file
ifeq ($(wildcard control/$1.err),)
$(ISEQUAL) $$@ $$(@:.bin=.list-bin)
endif
ifneq ($(wildcard $1.list-ref),)
ifneq ($(wildcard ref/$1.list-ref),)
# we have a reference file, compare that, too
# remove first line which contains a version number
tail -n +2 $$(@:.bin=.lst.orig) > $$(@:.bin=.lst)
$(ISEQUAL) $1.list-ref $$(@:.bin=.lst)
$(ISEQUAL) --skip=1 ref/$1.list-ref $$(@:.bin=.list-lst)
endif
# $(CA65) -t none -f -l $$(@:.bin=.flist.orig) -o $$(@:.bin=.flist-o) $$<
# $(LD65) -t none -o $$(@:.bin=.flist-bin) $$(@:.bin=.flist-o) none.lib
# # check if the result bin is the same as without listing file
# $(ISEQUAL) $$@ $$(@:.bin=.flist-bin)
endef # LISTING_template

@ -0,0 +1,21 @@
ca65 Vx.xx - Git XXXXXXXXX
Main file : 001-macro-simple-listing.s
Current file: 001-macro-simple-listing.s
000000r 1 ; 2022-01-17 Spiro Trikaliotis
000000r 1
000000r 1 .macro TESTER
000000r 1 lda #2
000000r 1 .endmacro
000000r 1
000000r 1 test:
000000r 1 A2 00 ldx #0
000002r 1 A9 02 TESTER
000004r 1 A2 0F ldx #15
000006r 1 A9 02 TESTER
000008r 1 E8 inx
000009r 1 A9 02 TESTER
00000Br 1 A9 02 TESTER
00000Dr 1 CA dex
00000Er 1 60 rts
00000Er 1

@ -0,0 +1,21 @@
ca65 Vx.xx - Git XXXXXXXXX
Main file : 002-macro-param-listing.s
Current file: 002-macro-param-listing.s
000000r 1 ; 2022-01-17 Spiro Trikaliotis
000000r 1
000000r 1 .macro TESTER val
000000r 1 lda #val
000000r 1 .endmacro
000000r 1
000000r 1 test:
000000r 1 A2 00 ldx #0
000002r 1 A9 01 TESTER 1
000004r 1 A2 0F ldx #15
000006r 1 A9 02 TESTER 2
000008r 1 E8 inx
000009r 1 A9 03 TESTER 3
00000Br 1 A9 04 TESTER 4
00000Dr 1 CA dex
00000Er 1 60 rts
00000Er 1

@ -0,0 +1,15 @@
.paramcount = 3
.paramcount = 5
010-paramcount.s:18: Warning: User warning: r1 is blank!
010-paramcount.s:14: Note: Macro was defined here
010-paramcount.s:8: Note: Macro was defined here
.paramcount = 3
.paramcount = 5
010-paramcount.s:19: Warning: User warning: r1 is blank!
010-paramcount.s:14: Note: Macro was defined here
010-paramcount.s:8: Note: Macro was defined here
.paramcount = 1
.paramcount = 5
010-paramcount.s:20: Warning: User warning: r1 is blank!
010-paramcount.s:14: Note: Macro was defined here
010-paramcount.s:8: Note: Macro was defined here

Binary file not shown.

@ -0,0 +1,31 @@
ca65 Vx.xx - Git XXXXXXXXX
Main file : 020-asciiz.s
Current file: 020-asciiz.s
000000r 1 ; 2022-06-15 Spiro Trikaliotis
000000r 1
000000r 1
000000r 1 ; upper case pseudo-op
000000r 1 00 .ASCIIZ ""
000001r 1 48 65 6C 6C .ASCIIZ "Hello World"
000005r 1 6F 20 57 6F
000009r 1 72 6C 64 00
00000Dr 1 48 65 6C 6C .ASCIIZ "Hello ","World"
000011r 1 6F 20 57 6F
000015r 1 72 6C 64 00
000019r 1 48 65 6C 6C .ASCIIZ "Hello ","World"," ","I"," ","am"," ","testing"
00001Dr 1 6F 20 57 6F
000021r 1 72 6C 64 20
000032r 1
000032r 1 ; lower case pseudo-op
000032r 1 00 .asciiz ""
000033r 1 48 65 6C 6C .asciiz "Hello World"
000037r 1 6F 20 57 6F
00003Br 1 72 6C 64 00
00003Fr 1 48 65 6C 6C .asciiz "Hello ","World"
000043r 1 6F 20 57 6F
000047r 1 72 6C 64 00
00004Br 1 48 65 6C 6C .asciiz "Hello ","World"," ","I"," ","am"," ","testing"
00004Fr 1 6F 20 57 6F
000053r 1 72 6C 64 20
000063r 1

@ -0,0 +1 @@
<EFBFBD>

@ -0,0 +1,20 @@
030-assert-success.s:45: Warning: Code not at $0000
030-assert-success.s:46: Warning: Code not at $0000
030-assert-success.s:48: Warning: Code not at $0001
030-assert-success.s:49: Warning: Code not at $0001
030-assert-success.s:51: Warning: Code not at $1000
030-assert-success.s:52: Warning: Code not at $1000
030-assert-success.s:54: Warning: Code not at $1001
030-assert-success.s:55: Warning: Code not at $1001
030-assert-success.s:60: Warning: Code not at $8001
030-assert-success.s:61: Warning: Code not at $8001
030-assert-success.s:65: Warning: Code not at $0000
030-assert-success.s:66: Warning: Code not at $0000
030-assert-success.s:68: Warning: Code not at $0001
030-assert-success.s:69: Warning: Code not at $0001
030-assert-success.s:71: Warning: Code not at $1000
030-assert-success.s:72: Warning: Code not at $1000
030-assert-success.s:74: Warning: Code not at $1001
030-assert-success.s:75: Warning: Code not at $1001
030-assert-success.s:77: Warning: Code not at $8000
030-assert-success.s:78: Warning: Code not at $8000

@ -0,0 +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

@ -0,0 +1,2 @@
031-assert-error.s:27: Error: Code not at $8001
031-assert-error.s:28: Error: Code not at $8001

@ -0,0 +1 @@
ld65: Error: 032-assert-error2.s:3: Code not at $0000

@ -0,0 +1 @@
ld65: Error: 032-assert-error3.s:3: Code not at $0000

@ -0,0 +1 @@
ld65: Error: 032-assert-error4.s:3: Code not at $0001

@ -0,0 +1 @@
ld65: Error: 032-assert-error6.s:3: Code not at $1001

@ -0,0 +1 @@
ld65: Error: 032-assert-error7.s:3: Code not at $8000

@ -0,0 +1 @@
ld65: Error: 032-assert-error8.s:3: Code not at $8001

@ -0,0 +1 @@
<EFBFBD>

@ -0,0 +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

@ -0,0 +1,2 @@
034-assert-lderror1.s:27: Error: Code not at $8001
034-assert-lderror1.s:28: Error: Code not at $8001

@ -0,0 +1 @@
ld65: Error: 034-assert-lderror2.s:3: Code not at $0000

@ -0,0 +1 @@
ld65: Error: 034-assert-lderror3.s:3: Code not at $0000

@ -0,0 +1 @@
ld65: Error: 034-assert-lderror4.s:3: Code not at $0001

@ -0,0 +1 @@
ld65: Error: 034-assert-lderror6.s:3: Code not at $1001

@ -0,0 +1 @@
ld65: Error: 034-assert-lderror7.s:3: Code not at $8000

@ -0,0 +1 @@
ld65: Error: 034-assert-lderror8.s:3: Code not at $8001

Binary file not shown.

@ -0,0 +1 @@
ld65: Warning: <<<#PATH#>>>:<<<#INTEGER#>>>: Segment 'CODE' isn't aligned properly; the resulting executable might not be functional.

@ -0,0 +1,29 @@
ca65 Vx.xx - Git XXXXXXXXX
Main file : 040-align.s
Current file: 040-align.s
000000r 1 ; 2022-06-20 Spiro Trikaliotis
000000r 1
000000r 1 00 .byte 0
000001r 1
000001r 1 xx xx xx .align 4
000004r 1 04 .byte 4
000005r 1 0C 00 .word 12
000007r 1 12 00 .word 18
000009r 1
000009r 1 .align 1
000009r 1 01 .byte 1
00000Ar 1
00000Ar 1 xx xx xx xx .align 8
00000Er 1 xx xx
000010r 1 08 .byte 8
000011r 1
000011r 1 xx xx xx xx .align 8
000015r 1 xx xx xx
000018r 1 08 .byte 8
000019r 1
000019r 1 xx xx xx xx .align 128
00001Dr 1 xx xx xx xx
000021r 1 xx xx xx xx
000080r 1 80 .byte 128
000080r 1

@ -0,0 +1,15 @@
ca65 Vx.xx - Git XXXXXXXXX
Main file : 050-case-off-2.s
Current file: 050-case-off-2.s
000000r 1 ; 2022-06-20 Spiro Trikaliotis
000000r 1
000000r 1 .case -
000000r 1
000000r 1 CamelCase:
000000r 1 A9 00 lda #0
000002r 1
000002r 1 Test:
000002r 1 F0 FC beq CamelCase
000004r 1 D0 FA bne camelcase
000004r 1

@ -0,0 +1,15 @@
ca65 Vx.xx - Git XXXXXXXXX
Main file : 050-case-off-3.s
Current file: 050-case-off-3.s
000000r 1 ; 2022-06-20 Spiro Trikaliotis
000000r 1
000000r 1 .case off
000000r 1
000000r 1 CamelCase:
000000r 1 A9 00 lda #0
000002r 1
000002r 1 Test:
000002r 1 F0 FC beq CamelCase
000004r 1 D0 FA bne camelcase
000004r 1

@ -0,0 +1,15 @@
ca65 Vx.xx - Git XXXXXXXXX
Main file : 050-case-off-4.s
Current file: 050-case-off-4.s
000000r 1 ; 2022-06-20 Spiro Trikaliotis
000000r 1
000000r 1 .CASE OFF
000000r 1
000000r 1 CamelCase:
000000r 1 A9 00 lda #0
000002r 1
000002r 1 Test:
000002r 1 F0 FC beq CamelCase
000004r 1 D0 FA bne camelcase
000004r 1

@ -0,0 +1 @@
050-case-on-1.s:10: Error: Symbol 'camelcase' is undefined

@ -0,0 +1 @@
050-case-on-2.s:10: Error: Symbol 'camelcase' is undefined

@ -0,0 +1 @@
050-case-on-3.s:10: Error: Symbol 'camelcase' is undefined

Some files were not shown because too many files have changed in this diff Show More