Commit Graph

722 Commits

Author SHA1 Message Date
Kugel Fuhr
b7e592699d Fix a copy&paste error (mrduz). 2025-07-06 20:20:32 +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
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
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
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
Kugel Fuhr
ec67b49d7d Change notification message used when pointing to the macro an error comes from. 2025-07-01 17:37:39 +02:00
Kugel Fuhr
60ec9045fc Use CPUIsets from cpu.c instead of recreating the CPU_xxx constants. 2025-07-01 13:02:15 +02:00
Kugel Fuhr
29c8846f7d Add an additional hook (currently unused) for target specific capabilities. 2025-07-01 08:44:13 +02:00
Kugel Fuhr
59e7158512 Make the CPU_xxx constants from cpu.mac internal to the assembler and replace
cpu.mac by a file that just emits a warning when used.
2025-07-01 08:29:42 +02:00
Kugel Fuhr
d4e57278c6 Add a new .cap pseudo function to the assembler that allows to check for
certain capabilities of the CPU or target system.
2025-06-30 21:37:43 +02:00
mrdudz
ce99bfb195 forgot some case values /o\ 2025-06-29 21:05:51 +02:00
mrdudz
af89b22252 add missing pseudos for sweet16 2025-06-29 19:13:56 +02:00
mrdudz
cf8af80dce add missing pseudo(s) for HUC6280, fix cpudetect for 6280 2025-06-29 01:57:28 +02:00
mrdudz
629252c562 its CSG extensions, not GTE 2025-06-29 01:51:10 +02:00
mrdudz
0168835456 handle extra address mode(s) for 65CE02 in the scanner 2025-06-28 18:17:37 +02:00
mrdudz
8e4936d68d add related pseudos 2025-06-28 18:15:57 +02:00
mrdudz
0b49d66f05 sort table 2025-06-28 01:06:37 +02:00
mrdudz
b38422ef9f 65CE02 has phz and asw 2025-06-28 00:58:19 +02:00
mrdudz
e93356e3bb add 65CE02 table 2025-06-28 00:38:16 +02:00
Bob Andrews
c520455b2b Merge pull request #2729 from kugelfuhr/kugelfuhr/fix-2208
When studying a symbol expression use its address size if its smaller than that of the symbol
2025-06-23 14:22:22 +02:00
mrdudz
8615c244d9 add initial target for mega65, also added c65 where missing. reworked from #1792 2025-06-22 21:07:38 +02:00
Kugel Fuhr
7854a53434 When studying expressions and recalculating the address size for a symbol
expression, use the symbol address size only if it is smaller than the one
that was calculated.
2025-06-22 16:12:07 +02:00
mrdudz
c3b75f0ac1 comment 2025-06-22 01:15:10 +02:00
mrdudz
4a11fa791a more codestyle 2025-06-21 22:33:43 +02:00
mrdudz
12e40f4aff fix some codestyle 2025-06-21 22:05:30 +02:00
mrdudz
37144ed014 fix akkumulator addressing for some compound instructions 2025-06-21 20:35:25 +02:00
mrdudz
9344d87b05 part of #1792 - 48GS02 assembler support 2025-06-21 00:56:34 +02:00
Bob Andrews
d333627081 Merge pull request #2707 from mrdudz/m740
m740 Support
2025-06-20 19:39:32 +02:00
Bob Andrews
b630dac728 Merge pull request #2718 from kugelfuhr/kugelfuhr/fix-505
Fix the behavior of variable symbols in regard to cheap locals
2025-06-19 23:44:38 +02:00
Kugel Fuhr
54f63a0cdc Fix the behavior of variable symbols in regard to cheap locals. Previously
every assignment to a variable symbol opened the same scope for cheap locals.
So when redefining a variable symbol, an old cheap local scope was reopened
which was unexpected and confusing. The change fixes this so that only the
first definition of a variable symbol opens a new scope for cheap locals, but
redefinitions of the same symbol do not.
2025-06-19 09:11:30 +02:00
mrdudz
05506ede2a comments 2025-06-18 02:41:22 +02:00
mrdudz
499fcbdb5f we dont use the table in the custom jsr 2025-06-18 02:38:34 +02:00
mrdudz
80b4ea304b fix table for added address modes 2025-06-18 02:24:59 +02:00
mrdudz
9eecd794b1 less hacky way to get the addr mode 2025-06-18 02:03:52 +02:00
mrdudz
ff1e5b3351 minimize diff 2025-06-18 01:14:31 +02:00
mrdudz
5a3aa1fd51 fix/add missing .ifp02x and .p02x pseudo ops, update test 2025-06-17 23:34:23 +02:00
mrdudz
2e27ee1702 added .IFM740 and .PM470, and while at it also .IFP02X and .P02X. Updated regression test to use these 2025-06-16 22:55:58 +02:00
mrdudz
0b74ae8c2d add m740 to macpack cpu, add .ifpm740, add regression test for those 2025-06-16 21:59:38 +02:00
mrdudz
20e7c54fa3 more m740 fixes, makes the regression test work 2025-06-16 20:32:54 +02:00
mrdudz
7b12962eec fix m740, survives disasm/asm roundtrip now, still needs some work though 2025-06-16 01:17:36 +02:00
mrdudz
5be4c4697c original patch 2025-06-15 18:25:01 +02:00
Bob Andrews
647a79bb2f Merge branch 'master' into checksorted 2025-06-14 02:16:34 +02:00
Bob Andrews
b9eeec0c51 Merge pull request #2677 from sintech/agat-support
Agat support
2025-06-13 17:59:40 +02:00
mrdudz
aaa1058d32 use explicit markers (comments) for the bsearch table checking, simplifies the scripts and makes them more robust too :) 2025-06-09 21:48:20 +02:00
mrdudz
ba80de5efc fix bsearch tables that must be sorted, add comment to all tables that must be sorted 2025-06-09 17:58:58 +02:00
Konstantin
34daf33d93 Remove dangling spaces 2025-06-07 14:10:50 +03:00