Commit Graph

11987 Commits

Author SHA1 Message Date
Kugel Fuhr
8dc815f53f Fixed typos in comments. 2025-07-06 21:07:34 +02:00
Colin Leroy-Mira
20a9db757d Optimize multiple incax* and incax*/ldaxi
- Group multiple calls to incax* and decax* into a single one
- Replace incaxN/jsr ldaxi with ldy #N+1/jsr ldaxidx

Fixes #2055
2025-07-06 20:37:01 +02:00
Kugel Fuhr
b7e592699d Fix a copy&paste error (mrduz). 2025-07-06 20:20:32 +02:00
Bob Andrews
f1b9cf0e32 Merge pull request #2780 from mrdudz/cpumac
remove .macpack cpu, fixes #2779
2025-07-06 20:14:44 +02:00
Kugel Fuhr
57283733e7 Remove unwanted duplicate reference output for the tests. 2025-07-06 20:06:48 +02:00
mrdudz
48924cc9d5 remove .macpack cpu, fixes #2779 2025-07-06 19:14:48 +02:00
Colin Leroy-Mira
facf7b2a0c Add basic test for incsp optimisation 2025-07-06 18:35:21 +02:00
Kugel Fuhr
929fc94466 Added the necessary control files and reference output for the tests. 2025-07-06 16:58:58 +02:00
Colin Leroy-Mira
87e5775efb Merge branch 'master' into much-smaller-strndup 2025-07-06 13:36:58 +02:00
Colin Leroy-Mira
fe86149203 Further optimize inc/decsp
The optimizer can now merge incsp+decsp together, and merge
jsr incsp/decsp + jmp incsp/decsp together. Drop the code
altogether if both instructions cancel each other out.

Fixes #2748
2025-07-06 13:30:33 +02:00
Kugel Fuhr
4a8498cb0a When skipping a macro definintion because of an error, apply the same handling
regarding .endmacro as when the macro is parsed regularily: A .endmacro ends
the macro only if is the first token on a line.
2025-07-06 12:45:16 +02:00
Kugel Fuhr
7b79fd1ec1 Added more tests. 2025-07-06 10:42:15 +02:00
Kugel Fuhr
23086bccff Much improved diagnostics for macros. 2025-07-06 10:41:12 +02:00
Kugel Fuhr
7cd137afb4 Improved diagnostics. 2025-07-06 10:40:25 +02:00
Kugel Fuhr
45a326750c Added a function to output notifications. 2025-07-06 10:39:29 +02:00
Kugel Fuhr
bcd29de443 Much improved error messages for ca65. For most errors it will now say what
was expected and what was found instead. Also improved error recovery in a few
places.
2025-07-06 08:40:05 +02:00
mrdudz
cf89172cf7 attempt to explain the ISET* dilemma 2025-07-05 23:27:06 +02:00
mrdudz
1cc7d01c99 added missing predefined constants 2025-07-05 21:53:10 +02:00
Bob Andrews
d20077de2b Merge pull request #2773 from SlithyMatt/master
#2772 - Fixed default CPU for CX16
2025-07-05 16:14:46 +02:00
SlithyMatt
8c9e45ee85 #2772 - Fixed default CPU for CX16 2025-07-05 09:57:05 -04:00
Colin Leroy-Mira
fb7afcfee9 Add strndup ENOMEM test 2025-07-05 12:31:26 +02:00
Colin Leroy-Mira
6604c5ce92 Make strndup smaller, safer, faster
First implementation was doing:
- strdup (without checking result!)
- strlen
- terminate
- realloc

New one does:
- malloc to shortest +1
- strncpy
- terminate
2025-07-05 12:11:40 +02:00
mrdudz
70b54bdbe3 some missing target defines 2025-07-04 23:59:57 +02:00
Bob Andrews
7ed1f0c7ea Merge pull request #2766 from mrdudz/CommunityStandards
CoC draft
2025-07-04 17:05:52 +02:00
Bob Andrews
315d6c4ae3 Merge pull request #2768 from mrdudz/fix2764
disable the basic interrupt before main(), fixes #2764
2025-07-04 17:04:12 +02:00
Bob Andrews
b24560c083 Merge pull request #2759 from mrdudz/test1972
Fixed #1970 (Missing definition for ST on cbm610 with getdevice) (was #1972)
2025-07-04 17:03:47 +02:00
Bob Andrews
fd973cd544 Merge pull request #2769 from colinleroy/add-strndup
Add strndup
2025-07-04 17:01:28 +02:00
Bob Andrews
14eae07a8c Merge pull request #2770 from kugelfuhr/kugelfuhr/fix-1557
Add comments about cputs() relying on cputc() not to clobber ptr1
2025-07-04 16:57:04 +02:00
Kugel Fuhr
500b86f1e2 Improve error recovery. 2025-07-04 14:56:20 +02:00
Kugel Fuhr
2e6f04034b Improved an error message. 2025-07-04 14:51:56 +02:00
Kugel Fuhr
947eecb65c Add comments to the cputs() and cputc() sources about the former relying on
the latter not to clobber ptr1.
2025-07-04 11:20:35 +02:00
Colin Leroy-Mira
90e1ac374b Add strndup
char* __fastcall__ strndup (const char* S, size_t maxlen);
2025-07-03 23:46:28 +02:00
Colin Leroy-Mira
fcbc253bf9 Add strlen and strnlen unit tests 2025-07-03 23:43:04 +02:00
Bob Andrews
3ae514921c Merge branch 'master' into seglist 2025-07-03 23:16:51 +02:00
Bob Andrews
96cc66868c Merge branch 'master' into macexpand 2025-07-03 23:16:28 +02:00
mrdudz
a19e00d304 disable the basic interrupt before main(), fixes #2764 2025-07-03 21:49:31 +02:00
Bob Andrews
29f7ab3809 Merge pull request #2760 from kugelfuhr/kugelfuhr/fix-2753
Add ".CAPABILITY" to ca65, remove ".MACPACK cpu"
2025-07-03 18:43:05 +02:00
Bob Andrews
dbb6ff5482 Merge pull request #2761 from kugelfuhr/kugelfuhr/fix-2231
Allow comments within _Pragma()
2025-07-03 18:36:43 +02:00
Bob Andrews
4edf1ad363 Merge pull request #2767 from kugelfuhr/kugelfuhr/fix-836
Remove invalid characters from labels in the VICE label file
2025-07-03 18:32:37 +02:00
Bob Andrews
9194d9e309 Update bug_report.md 2025-07-03 11:09:03 +02:00
Bob Andrews
ca329c975b Update feature_request.md
cut down (a lot)
2025-07-03 09:46:43 +02:00
Bob Andrews
2c4b3a485e Update bug_report.md
cut down
2025-07-03 09:44:57 +02:00
Bob Andrews
9240ad37ab Update PULL_REQUEST_TEMPLATE.md
cut it down a lot
2025-07-03 09:39:29 +02:00
Kugel Fuhr
dd27ec8696 When creating a VICE label file, replace characters in labels that VICE
doesn't understand with '_'. Fixes #836.
2025-07-03 08:54:10 +02:00
mrdudz
087edc336b don't try to use multiple templates for the time being 2025-07-02 23:47:53 +02:00
cc65 Owner
7b26325632 Create bug_fix_template.md 2025-07-02 23:29:49 +02:00
cc65 Owner
b4d034bef7 Initial issue templates
These are basically the standard templates GH generated - they might help to automatically tag at least bugs vs features
2025-07-02 23:10:29 +02:00
mrdudz
5db0283571 CoC draft 2025-07-02 22:12:03 +02:00
Bob Andrews
807f02f3a3 Merge pull request #2765 from polluks/master
Fixed minor typos
2025-07-02 16:22:09 +02:00
Stefan
ce35a816a6 Fixed minor typo 2025-07-02 15:59:38 +02:00