1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-01 13:41:34 +00:00
Commit Graph

10883 Commits

Author SHA1 Message Date
Carlo Bramini
b04d79b1da [SIM65] Support undocumented opcodes for 6502
This PR is mostly a complete rewrite of the emulator for 6502/65c02 opcodes.
It provides an easier to maintain implementation of the instructions, by using few macros rather than having hand-written code for each function.
All undocumented, previously missing opcodes for 6502 are also implemented.
The patch also includes a detailed documentation of those opcodes, for reference to developers.
This PR should fix one of the milestones listed here for the next version of CC65:

https://github.com/cc65/wiki/wiki/Before-the-next-release
2024-02-08 12:13:17 +01:00
Colin Leroy-Mira
75461e1319 Apple2: implement stat(2) and statvfs(3) 2024-01-01 19:12:51 +01:00
Bob Andrews
4343eebe67
Merge pull request #2314 from acqn/PPFix
[cc65] Separated C preprocessor errors from other errors
2023-12-31 19:16:44 +01:00
Bob Andrews
9e3d1e1027
Merge pull request #2309 from acqn/Diagnostics
[cc65] Added warning on static functions that are used but not defined
2023-12-31 19:15:48 +01:00
Bob Andrews
0ece9449d7
Merge pull request #2307 from acqn/FuncDeclFix
[cc65] Fixed function declarator parser when a parameter has a function type
2023-12-31 19:11:25 +01:00
Bob Andrews
7297d2c8b6
Merge pull request #2310 from pm100/vs64
second try at fixing win64 build
2023-12-31 18:54:23 +01:00
Bob Andrews
d0903ba225
Merge pull request #2311 from bbbradsmith/ca65-struct-doc-clarify
ca65 struct and union documentation improvement and feature testing.
2023-12-31 18:51:09 +01:00
Bob Andrews
98b9814692
Merge pull request #2318 from alexthissen/lynxincludes
Added SPRCTL0 and SPRCTL1  bit definitions for ca65
2023-12-31 18:46:49 +01:00
Alex Thissen
66e354961c Missed some tabs 2023-12-29 22:48:36 +01:00
Alex Thissen
061d907a11 Fixed tabs instead of spaces 2023-12-29 22:46:15 +01:00
Alex Thissen
e5f9def572 Added SPRCTL0 and SPRCTL1 bit definitions for ca65 2023-12-29 22:37:18 +01:00
acqn
b876a6b213 Fixed cc65 exitcode when there are only preprocessor errors. 2023-12-19 19:30:50 +08:00
acqn
cd7c688dff Separated C preprocessor errors from other errors. 2023-12-18 15:30:53 +08:00
bbbradsmith
9892c8f6c4 using less generic names for the example to avoid confusion, adding cautionary example for what I think is the most error prone case 2023-12-17 05:40:00 -05:00
bbbradsmith
302c4f7409 clarify offsets of anonymous nested scope, missing quotes for names 2023-12-17 05:01:06 -05:00
bbbradsmith
0ff1b20f2a nested struct example needs a .tag 2023-12-16 19:52:57 -05:00
bbbradsmith
f6838be162 missing <tt> 2023-12-16 19:32:52 -05:00
bbbradsmith
6cb8717c24 fix dangling space, mention .union in test comment 2023-12-16 19:25:21 -05:00
bbbradsmith
0d74b84ce4 Test of .struct and .union features. Update documentation with more examples, better clarity, and fixes to incorrect data. 2023-12-16 19:18:25 -05:00
paul moore
103d4b82c5 more msbuild syntax fixes 2023-12-14 14:43:58 -08:00
paul moore
269786a5ae fix msbuild syntax 2023-12-14 14:38:24 -08:00
paul moore
08341aae30 second try at fixing win64 build 2023-12-14 14:25:35 -08:00
Colin Leroy-Mira
1093d169ad Fix BSS obliteration by mliparam during exec().
Using mliparam at this time could lead to corruption at the
start of the new executed program if BSS is real full and
mliparam is over $BB00.
The fix is to open the file from the loader stub instead of doing
it before the C library shutdown.
2023-12-14 16:47:33 +01:00
acqn
a5746227dc Added warning on static functions that are used but not defined. 2023-12-14 21:27:48 +08:00
acqn
1e4d1b4311 Fixed function declarator parser when a parameter has a function type.
Ensured check on parameter lists without types in non-definition declarations.
2023-12-14 02:34:03 +08:00
Bob Andrews
05aae60816
Merge pull request #2305 from acqn/FuncDeclFix
[cc65] Fixed missing diagnosis on function parameter lists with trailing commas
2023-12-13 19:17:59 +01:00
acqn
f8fe1d1560 Fixed missing diagnosis on function parameter lists with trailing commas. 2023-12-13 22:57:32 +08:00
Bob Andrews
bc97bce8c1
Merge pull request #2297 from acqn/WrappedCall
[cc65] Fixed wrapped call when the function was defined before its later declaration gets wrapped with the pragma
2023-12-12 17:11:47 +01:00
Bob Andrews
e90e7f46de
Merge pull request #2298 from acqn/Diagnostics
[cc65] More accurate diagnostic messages on empty declarations without any type specifiers
2023-12-12 17:06:54 +01:00
mrdudz
b1c1502494 MS compiler insists on those typecasts apparently 2023-12-11 00:35:07 +01:00
mrdudz
9985ee7f61 fix %hhn and %hn in the internal xvsnprintf function 2023-12-11 00:18:40 +01:00
mrdudz
6b855d562a use -std=gnu17 for the references, so the test bench will not break with GCC 14. see #2277 2023-12-10 23:18:55 +01:00
mrdudz
0b077f561f exclude test directory from some style checks - it makes no sense to enforce these things in the test bench, we need to be able to test all kinds of spaces and tabs :) 2023-12-10 22:43:47 +01:00
Bob Andrews
cc5e9c38ca
Merge pull request #2296 from acqn/Diagnostics
[cc65] Fixed and improved diagnostics regarding type names and declarations
2023-12-10 22:32:33 +01:00
mrdudz
b31a1c7c0c test for regression that occured after #2262 2023-12-10 22:18:59 +01:00
Bob Andrews
9634cc4d1e
Merge pull request #2295 from colinleroy/fix-2262-too-eager-opt
Fix #2262: Make sure there's no branching after the sequence
2023-12-10 19:16:38 +01:00
acqn
befc9533c6 More accurate diagnostic messages on empty declarations without any type specifiers. 2023-12-10 20:21:50 +08:00
acqn
bbd542fac7 Fixed missing diagnosis on extra identifiers in type names. 2023-12-10 17:01:54 +08:00
Colin Leroy-Mira
07c71541f4 Fix #2262: Make sure there's no branching after the sequence
Also better check that arguments match
2023-12-10 09:45:15 +01:00
acqn
3215d377ea More accurate diagnostic messages on wrong missing declaration specifiers. 2023-12-10 15:46:48 +08:00
acqn
cadf8012f6 Improved error recovery with type cast and sizeof. 2023-12-10 15:43:24 +08:00
acqn
a1a060c291 Declaration specifier flags cleanup. 2023-12-10 15:43:24 +08:00
acqn
79b4690077 Fixed missing diagnostics on empty enum/struct/union declareations without tag names.
Improved error recovery with local declarations and _Static_assert.
2023-12-10 15:43:24 +08:00
Bob Andrews
a16a6298e2
Merge pull request #2287 from acqn/Diagnostics
[cc65] Minor diagnostics improvements
2023-12-09 22:16:47 +01:00
Bob Andrews
92f869cdfb
Merge pull request #2288 from acqn/TypeFix
[cc65] Fixed an iteration bug in type composition
2023-12-09 22:15:24 +01:00
Bob Andrews
a956f6f9ed
Merge pull request #2289 from acqn/FuncDeclFix
[cc65] Fixed the issue that qualifiers of pointees of function parameters were ignored for type compatibility check
2023-12-09 22:14:41 +01:00
Bob Andrews
9e19a2e6a3
Merge pull request #2290 from acqn/TestFix
Updated test/misc/Makefile
2023-12-09 22:12:59 +01:00
Bob Andrews
d805211002
Merge pull request #2291 from colinleroy/fix-256-minus-1
Fix bug introduced in #2260
2023-12-09 22:11:33 +01:00
acqn
b66682a05b Fixed wrapped call when the function to wrap has already got defined before it is wrapped with the pragma. 2023-12-10 00:47:10 +08:00
Colin Leroy-Mira
2a2cc6cad6 Fix bug introduced in #2260
bne should have applied to A, not X, but adding a cmp #$00 before
makes the change less optimized than the existing.
2023-12-09 16:43:23 +01:00