This is a directory of test suites for complex or pathological cases that have been repaired (?) in the current version. It is primarily for internal testing, but is here for your interest. It requires a reasonably compatible `make` and Perl. You can run specific tests from the main source directory with make test TESTS=test,test,test,... or, if `make test` doesn't work right on your system, you can run the Perl harness directly: ./harness -cc=... -cflags=... -make=... -tests=testdir,testdir,testdir,... If -tests is omitted, all tests are run. 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 prefixes) nonl/ Patryk's no-new-line-on-last-line cases ;) fordef/ Optimizer warnings for forward defined labels relocmode/ Tests to prevent use of irrational segments if relocating mde isn't on relocundef/ Tests for the detection of undefined references during a reloc65 export ldoreloc/ Test case for the relocation table reading of ldo when undef'd refs are involved comcom/ Comments-with-comments-with-commands-etc. for testing -M recmac/ Recursive macro evaluation testing openpp/ Testing of open #if*s in pp cpp/ Random preprocessor tests, mostly crap incerr/ 1) .xl/.al should error without -w 2) error should be in the correct file ('816) binclude/ Binary include code with some weird casing ppstrings/ Don't substitute inside strings (unless -S) neg_offset/ Test negative offsets/values with/without relocation chppch/ Changing preprocessor characters (-p) charset/ Tests of when charsets should be honoured and when not ca65/ Compatibility tests for ca65 compatibility relmode/ tests concerning switches between segments and absolute mode mvnmvp/ Test MVN MVP unusual addressing mode ('816) dos51/ Regression test, label scoping, "real world code" cpktest/ Regression test, label listing, "real world code" usb65/ Unusual macro and scoping, "real world code" listing/ Test of listing feature op816/ Regression test for '816 opcodes (thanks Alessandro Gatti) branch/ Branch range test masmcom/ Another test for -M that generates totally valid code quotch/ Test quoting problematic characters (thanks Simon Rowe) linkr/ Test linking using .dsb and generated code csapiec/ Test on pointer arithmetic in relocating mode math/ Math tests (currently divide by zero, thanks Frederic Cambus) alxl/ Various '816 width tests (includes Samuel Falvo's test) pparity/ Tests of preprocessor macro arity (with Emil Johansson's test) recucom/ Recursive comments test aserror/ Tests of .assert and #error syntax/function reset_segment/ Verifies conditions under which a segment is reset expando/ Test of preprocessor expansion (thanks Tom Hargreaves) Cameron Kaiser, André Fachat