Commit Graph

11625 Commits

Author SHA1 Message Date
Kugel Fuhr
fa81f14cbf Add an explicit "exit 0" to the shell scripts. This worked more or less by
coincidence before since shell scripts return the exit code of the last
command run if there is no explicit exit statement.
2025-06-25 20:34:41 +02:00
Kugel Fuhr
55d9b2dbd0 Rewrite the optimization step from c0a1b1b887 to
remove compares not only before RTS but also befoire function calls that don't
use the flags but destroy all of them. The latter is currently the case for
all functions called. This way the optimization covers a lot more cases than
just checking for RTS.
2025-06-25 20:07:36 +02:00
Kugel Fuhr
1feeee9ce0 Do only check .c and .h files. 2025-06-25 09:37:58 +02:00
Kugel Fuhr
7a6c60ade4 Do also sort variables to satisfy sorted_codeopt.sh. 2025-06-24 20:21:43 +02:00
Kugel Fuhr
c0a1b1b887 Add an optimization step that removes compare instructions preceeding an RTS.
Since nothing is passed back in the flags, these instructions have no effect.
Fixes #2025.
2025-06-24 18:02:24 +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
Bob Andrews
c20461d213 Merge pull request #2722 from kugelfuhr/kugelfuhr/da65-cleanup
Small cleanup for da65
2025-06-23 14:18:18 +02:00
Bob Andrews
c832af8a71 Merge pull request #2710 from kugelfuhr/kugelfuhr/fix-2694
Fix wrong file offset handling for a memory area with only run segments written to a file
2025-06-23 14:17:55 +02:00
Kugel Fuhr
96bb1e4336 Fix coding style. 2025-06-23 14:02:56 +02:00
Kugel Fuhr
49713f73e0 Output relative branch targets as "*-30" instead of "* + (-30)". 2025-06-23 14:01:29 +02:00
Bob Andrews
540a6a7658 Merge pull request #2728 from kugelfuhr/kugelfuhr/da65-improvements
Cleanup for the da65 code base
2025-06-23 13:47:23 +02:00
Bob Andrews
2e7ee0f105 Merge pull request #2711 from mrdudz/plus4tgi
TGI Documentation and Comments fix
2025-06-23 13:40:41 +02:00
Bob Andrews
46be7778cd Merge pull request #2730 from mrdudz/mega65target
Mega65 target
2025-06-23 13:34:47 +02:00
mrdudz
034fc93c75 enable 4510/45GS02 in the compiler - however, the resulting asm files cant be assembled because of sp vs c_sp clash 2025-06-23 13:23:23 +02:00
mrdudz
44672e6281 prepared lib makefile. skip building the library while compiler support is not there 2025-06-22 21:43:21 +02:00
mrdudz
f6a3f66f0b asm configs 2025-06-22 21:42:36 +02:00
mrdudz
715d9c00a2 initial (identical) minimal "library" for assembly support for c65 and mega65. taken from #1792 2025-06-22 21:09:40 +02:00
mrdudz
6d7f37c4f2 update list of targets in the docs 2025-06-22 21:08:13 +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
e949fbdbbf Unify CPU list in the docs. 2025-06-22 20:36:30 +02:00
Kugel Fuhr
7d231d60a6 Minor corrections after looking at the diff. 2025-06-22 20:36:26 +02:00
Kugel Fuhr
b9a703749c Replace all tables by hash tables. This allows to remove the ugly special
casing of "long addresses" and prepares the code base for use with the full
address range of the 65816.
Use fixed size data types for addresses and target data words of known size.
Many other minor improvements.
2025-06-22 20:36:26 +02:00
Bob Andrews
7573272836 Merge pull request #2724 from mrdudz/mega65asm
part of #1792 - 48GS02 assembler support
2025-06-22 17:36:36 +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
1d7bc938f2 add roundtrip disasm tests for all cpus 2025-06-22 01:18:41 +02:00
mrdudz
233c784c03 fix aslq in the disassembler 2025-06-22 01:16:03 +02:00
mrdudz
2ae30b5b50 cleanup 2025-06-22 01:15:40 +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
6b554362a5 codestyle/comment 2025-06-21 22:23:19 +02:00
mrdudz
4820b716c7 use sect2 for cpu subsections 2025-06-21 22:12:53 +02:00
mrdudz
12e40f4aff fix some codestyle 2025-06-21 22:05:30 +02:00
mrdudz
698045c7c2 updated the docs 2025-06-21 21:55:21 +02:00
mrdudz
c35405f14b add new sourcefile(s) 2025-06-21 20:52:03 +02:00
mrdudz
5e414edb50 are we more pedantic than local make? 2025-06-21 20:47:57 +02:00
mrdudz
2244a5ab0a include header :) 2025-06-21 20:44:37 +02:00
mrdudz
3321910848 implement 45GS02 compound instrictions in the disassembler 2025-06-21 20:37:31 +02:00
mrdudz
37144ed014 fix akkumulator addressing for some compound instructions 2025-06-21 20:35:25 +02:00
mrdudz
76c8f0d860 fix test, add 45GS02 instructions 2025-06-21 01:39:33 +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
64c936317d Merge pull request #2720 from GorillaSapiens/issue_2714
fixes #2714
2025-06-20 18:00:50 +02:00
Bob Andrews
fa4d704ee8 Update main.c - codestyle 2025-06-20 17:53:52 +02:00
Gorilla Sapiens
de844d48c4 fixes #2714 2025-06-19 22:36:16 +00: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
Bob Andrews
3989ce1185 Merge pull request #2715 from kugelfuhr/kugelfuhr/fix-2527
Added a few simple optimizations
2025-06-19 23:39:04 +02:00
mrdudz
4f26d6d8b7 typo 2025-06-19 22:49:12 +02:00
mrdudz
c75d1dd7df update docs with some more info about the various cpu modes 2025-06-19 22:42:36 +02:00
mrdudz
02e79d35d7 no need to fix the assembler, but making da65 produce the same mnemonics ans ca65 uses seems like a good idea :) 2025-06-19 21:44:14 +02:00
Colin Leroy-Mira
ec0595ad28 Remove useless code
LOSCR is a valid and safe softswitch on any Apple II.
Thanks Oliver S!
2025-06-19 14:07:43 -04:00