1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-30 20:29:25 +00:00
Commit Graph

2698 Commits

Author SHA1 Message Date
JT
55adf03bdf Move FuncIsMnemonic 2015-07-11 19:09:42 -04:00
mrdudz
877fd532c2 Merge remote-tracking branch 'upstream/master' into pcenginetarget 2015-07-11 13:05:26 +02:00
mrdudz
6ab197f364 patch from Uz that makes some illegal operations on pointers error out 2015-07-10 14:27:49 +02:00
Greg King
8189339e7d Added special-case compiler code that handles a pointer-to-array dereference.
The type needs to change (to array); but, the address shouldn't be changed -- it already points to the first element.
Based on a bug analysis by Daniel Serpell.
2015-07-01 06:55:57 -04:00
JT
e7fca18798 Added .DEFINEDMACRO psuedo function
Fixed typo/fomatting

Formatting fix

Refactor the code to test for a macro

Remove .FEATURE requirement for .DEFINEDMACRO
2015-06-27 01:39:11 -04:00
Oliver Schmidt
d0e0b98b43 Revert "Equality problem (Ullrich von Bassewitz)".
Uz classifies his own fix as broken:

http://www.cc65.org/mailarchive/2015-01/11721.html

Although the original issue fixed seemed rather significant looking
back now the regression caused by the (broken) fix seems even more
significant :-(

(reverted from commit 55815ea10c)

======================================================================

Equality problem (Ullrich von Bassewitz)

Neil Stockbridge reported a problem with equality comparisons on
cc65.org's mailing list:

http://www.cc65.org/mailarchive/2014-10/11680.html

Uz provided a fix for it:

http://www.cc65.org/mailarchive/2014-10/11683.html

This pull request ask to add the fix to cc65 on github.
2015-06-27 01:09:20 +02:00
Oliver Schmidt
8bdbc00ba3 Bumped version.
As suggested the incompatibility resulting form changing the default calling convention makes a new version appropriate - from user perspective.
2015-06-25 09:23:27 +02:00
Oliver Schmidt
a13284a792 Merge pull request #160 from Movax12/definedinstr
.DEFINEDINSTR
2015-06-04 22:05:00 +02:00
Oliver Schmidt
fe023a1218 Merge pull request #151 from greg-king5/fastcall
Make __fastcall__ be the default calling convention.
2015-05-26 22:39:33 +02:00
Greg King
bbb6f89731 Made cc65 properly test calling conventions when it compares forward declarations to function definitions. 2015-05-24 18:31:50 -04:00
Greg King
e72132c8ae Made cc65 properly test variadic-function pointer assignments.
Improved some error messages.
2015-05-24 08:32:15 -04:00
JT
63325a90d1 Added needed changes to pseudo.c 2015-05-19 20:45:49 -04:00
JT
1e3234f370 changed name of function to .ISMNEMONIC, small fixes 2015-05-19 19:50:51 -04:00
JT
9ee5adc190 Remove .FEATURE requirement and add documentation 2015-05-19 00:06:12 -04:00
Christian Groessler
41d19074e7 Fix verbose symbol dumping in ca65. 2015-05-16 05:20:15 +02:00
JT
5ed3a1a6dc Added pseudo function .DEFINEDINSTR 2015-05-12 19:28:57 -04:00
Greg King
0bb3bafb3e Made cc65 catch an assignment of a function pointer to a pointer with a different calling convention. 2015-05-12 04:15:00 -04:00
Greg King
8743e9911d Added a command-line option to compile a program, with __cdecl__ as the default calling convention. 2015-04-22 09:59:23 -04:00
JT
ffa52863b3 Small changes to coding style and to ca65 documentation for .ADDRSIZE 2015-04-21 16:09:01 -04:00
JT
dfddf8f9d2 Improved on funciton .ADDRSIZE. Conform to coding style. 2015-04-20 17:20:54 -04:00
JT
c6f45a338c Added function .ADDRSIZE to ca65 2015-04-19 23:21:56 -04:00
Greg King
2842b68a04 Reverted one of the changes in how function prototypes look, in cc65's assembly output. 2015-03-19 06:27:25 -04:00
Greg King
b452bdc5e4 Catch fastcall pointers to variadic functions. 2015-03-13 12:18:43 -04:00
Greg King
a798b1d648 Made __fastcall__ be the default calling convention for non-variadic functions. 2015-03-10 05:53:52 -04:00
Greg King
6230b6a813 Completed the cc65 code that recognizes __CDECL__ as a calling convention qualifier. 2015-03-09 19:39:04 -04:00
Greg King
ba871635de Added a font translation table because Ohio Scientific machines have three misplaced characters. 2015-03-05 12:45:50 -05:00
Stephan Mühlstrasser
de3df033d3 Remove tabs, fixed accidental insertion of stdio.h. 2015-02-08 17:21:23 +01:00
Stephan Mühlstrasser
4e03d7448c Merge branch 'master' of https://github.com/cc65/cc65 into c1p 2015-02-08 15:58:42 +01:00
Stephan Mühlstrasser
01b0e10fc3 Remove tab character. 2015-02-03 22:56:04 +01:00
Stephan Mühlstrasser
14c7e9fd16 Rename c1p target to osic1p 2015-02-03 22:42:35 +01:00
Wayne LaBelle
d3b2b3df6b Move SBC to correct location in 6280 instruction table 2015-01-11 16:10:34 -05:00
Stephan Mühlstrasser
50164a9d68 Removed c1p65 object file converter.
Now using srec_cat from the srecord package.
2015-01-05 20:55:45 +01:00
Oliver Schmidt
83549e2321 Merge pull request #142 from greg-king5/disassemble-segment
da65's segments feature
2014-12-03 14:07:12 +01:00
Stephan Mühlstrasser
91e21ae024 Merge branch 'master' of https://github.com/cc65/cc65 into c1p 2014-12-02 20:42:54 +01:00
Greg King
1446d99b14 Clarified a segment error message. 2014-11-30 00:51:09 -05:00
Greg King
155f00f25e Fixed the detection of where to start and stop segments. 2014-11-30 00:40:45 -05:00
Stephan Mühlstrasser
67707f342d Set default start address to 0x200 2014-11-29 20:56:49 +01:00
mrdudz
4275b82117 added compiler/assembler target, lib compiles 2014-11-29 15:35:20 +01:00
Stephan Mühlstrasser
a66c93c55b Use CR instead of LF, because this works better over the serial port of a real C1P. 2014-11-26 19:01:15 +01:00
Greg King
0ee891c106 Completed the coding of da65's SEGMENT feature.
Before this commit, we could define segment ranges; but, the disassembler wouldn't do anything with those definitions.  Now, da65 will put ".segment" directives into its output.

Fixed da65's document.
2014-11-23 15:29:16 -05:00
Stephan Mühlstrasser
16bdb10bfe Default is now automatic execution of program after loading 2014-11-23 20:05:38 +01:00
Stephan Mühlstrasser
dfbd2912cc Fix help text for default start address 2014-11-23 19:44:45 +01:00
Stephan Mühlstrasser
1c028c794a Clarify help for -o option 2014-11-23 19:43:24 +01:00
mrdudz
d5844bd63b changed return code to -99 2014-11-20 14:49:35 +01:00
mrdudz
6273d1cdc0 actually make TAS work :) 2014-11-20 02:47:33 +01:00
mrdudz
c2704ec72a uses TAS instead of SHS like da65 did 2014-11-20 01:31:39 +01:00
mrdudz
8cc71f135c added support for LAX#imm, all done 2014-11-20 00:18:12 +01:00
mrdudz
044aee7f8d added support for undocumented NOPs 2014-11-19 23:20:46 +01:00
mrdudz
cf82bfaf37 renamed KIL to the more common JAM, which is also accepted by ca65 2014-11-19 22:54:33 +01:00
mrdudz
2dfdf4dec7 added support for ane, sha, shs, shy, shx 2014-11-19 22:34:33 +01:00
mrdudz
202a2d677b starting branch for adding the missing undocumented opcodes 2014-11-19 22:04:32 +01:00
mrdudz
156f405774 Merge remote-tracking branch 'upstream/master' 2014-11-19 15:44:14 +01:00
Stephan Mühlstrasser
6edf57324e Set default start address to 0x300.
Make start address configurable via --start-addr.
2014-11-16 20:07:59 +01:00
Stephan Mühlstrasser
3b379c10e4 Added missing dependency from c1p65 to common 2014-11-15 20:37:45 +01:00
Stephan Mühlstrasser
1f85c48fb2 Added the c1p65 project. 2014-11-06 20:46:16 +01:00
Stephan Mühlstrasser
29801cd45f Enter bytes in a loop in data mode 2014-11-02 23:22:41 +01:00
Stephan Mühlstrasser
57a422d064 Adapt c1p65 project to Visual Studio 2013 2014-11-02 19:39:39 +01:00
Stephan Mühlstrasser
0b186407f1 Merge https://github.com/cc65/cc65 into c1p 2014-11-02 16:17:16 +01:00
Oliver Schmidt
1673a40a77 Merge pull request #138 from spiro-trikaliotis/equality-error-uz
Equality problem (Ullrich von Bassewitz)
2014-10-14 15:15:23 +02:00
Spiro Trikaliotis
55815ea10c Equality problem (Ullrich von Bassewitz)
Neil Stockbridge reported a problem with equality comparisons on
cc65.org's mailing list:

http://www.cc65.org/mailarchive/2014-10/11680.html

Uz provided a fix for it:

http://www.cc65.org/mailarchive/2014-10/11683.html

This pull request ask to add the fix to cc65 on github.
2014-10-14 13:41:17 +02:00
Spiro Trikaliotis
f4f879283d Fix for: cc65 forgetting to emit labels (Alan Cox)
Alan Cox provided this on 2014-10-02 on the cc65.org mailing list:

http://www.cc65.org/mailarchive/2014-10/11673.html
[...]
It breaks in several spots with cc65 where cc65 forgets to emit the
labels for the goto statements - the code is there but with no label
and it them blows up linking
[...]

He also provided a fix:
http://www.cc65.org/mailarchive/2014-10/11675.html

which was approved by Uz:
http://www.cc65.org/mailarchive/2014-10/11679.html

This is the patch of Alan Cox, adjusted only to the new locations on
cc65/github.
2014-10-14 13:32:58 +02:00
mrdudz
baaf815d8e fix cast to char, patch by Piotr Fusik 2014-09-25 23:19:14 +02:00
mrdudz
adc5525e85 added commandline option to quit after X cycles 2014-09-25 18:47:23 +02:00
Piotr Fusik
8c1f12f06b Fix casting an r-value to char.
For example:
int f(int i, int j) { return (char) (i + 1) == j; }
f(0x1234, 0x35) returned 0.

This bug caused zlib/uncompress return Z_DATA_ERROR on correct input.
2014-09-22 23:47:20 +02:00
Greg King
0390c34e88 Changed multi-line C comments into another style.
The left side doesn't look unbalanced.
2014-06-30 16:51:07 -04:00
Oliver Schmidt
99f0a56f63 Merge pull request #122 from groessler/a5200
new target: Atari 5200 console
2014-05-30 22:52:51 +02:00
Christian Groessler
f7bc6a836d Set the "simple" bit in the .o65 mode word only if text, data, and bss
are adjacent.
2014-05-21 23:49:56 +02:00
Greg King
c09c66c372 Fixed a ca65 internal error that would show a message when a name is exported both outside and inside a scope.
Jeremy Turner described the bug, on the original cc65 mailing list.  It was fixed by Ullrich von Bassewitz.
2014-05-12 02:08:04 -04:00
Christian Groessler
ec417c0dc5 Merge remote-tracking branch 'upstream/master' into a5200 2014-04-25 02:07:44 +02:00
Christian Groessler
1a348ab73f Fix error which slipped in in '-L' command line parameter handling. 2014-03-28 22:40:53 +01:00
Oliver Schmidt
435fd06bc6 Merge pull request #99 from groessler/something_to_pull
Make ld65 command line arguments position independent.
2014-03-28 17:37:02 +02:00
Christian Groessler
5114a3b861 Make ld65 -L command line option position independent again.
Handle long versions of command line arguments correctly.
2014-03-27 23:50:25 +01:00
Oliver Schmidt
276a836d7d Fixed typo. 2014-03-27 22:07:08 +01:00
Oliver Schmidt
c9438ae1a7 Finetuned Git commit hash retrieval.
- Force usage of shell wrapper in order to allow to suppress potential message about git not found (thanks to Greg King).
- Do $(info GIT_SHA ...) only if there's something special - as done with the other $(info ...).
2014-03-27 21:40:28 +01:00
Christian Groessler
18c2289784 Make ld65 -L command line option position dependent again. 2014-03-25 15:36:38 +01:00
Christian Groessler
2a9cdf9152 Make ld65 command line arguments position independent. 2014-03-24 13:58:34 +01:00
Oliver Schmidt
efe72c86fa Merge pull request #94 from groessler/something_to_pull
Extend the map file to include a table of exports sorted by value.
2014-03-20 11:12:55 +01:00
Christian Groessler
bdc60b21d4 add a missing ":" 2014-03-20 02:22:43 +01:00
Christian Groessler
d72e62cae2 Extend the map file to include a table of exports sorted by value. 2014-03-20 02:01:52 +01:00
Christian Groessler
f266612697 Merge remote-tracking branch 'upstream/master' into a5200 2014-03-20 00:24:11 +01:00
Silver Dream !
db42af3f20 - fixed an old #include guard typo 2014-03-20 00:07:59 +01:00
Oliver Schmidt
22c63e743a Replaced date with Git hash. 2014-03-18 22:41:32 +01:00
Oliver Schmidt
1d6000213c Removed references to $TRAVIS from Makefiles.
After all it seems much cleaner to explicitly control the behaviour from the .travis.yml file than to behave differently "under the hood" when detecting a Travis CI build.
2014-03-16 21:32:18 +01:00
Oliver Schmidt
f12fbc4a3b Dropped VER_PATCH (and VER_RC) and added build date. 2014-03-09 17:40:51 +01:00
Oliver Schmidt
a178c44acb Moved USER_CFLAGS back to re-allow warning option overriding. 2014-03-09 15:17:51 +01:00
Oliver Schmidt
8236b0dd74 Upload zip file. 2014-03-09 01:20:39 +01:00
Oliver Schmidt
80ca7eb4e4 Create zip file. 2014-03-09 00:20:17 +01:00
Oliver Schmidt
1c73fa0a00 Moved .PHONY below definitions it refers to.
I must admit that I don't understand why but obviously it is necessary to place .PHONY below the definition of variables it refers to - although those variables are recursively expanded ones! Not doing so made libsrc/Makefile build only three target libraries.
2014-03-06 23:42:44 +01:00
Oliver Schmidt
30125afcc1 Moved from VS2013 to MinGW(-w64). 2014-03-06 22:32:24 +01:00
Oliver Schmidt
9e409a67d2 Removed by now obsolete pragmas.
The warnings in question are instead suppressed by command line options.
2014-03-05 22:43:01 +01:00
Oliver Schmidt
ee9c42bbf5 Support both MinGW and MinGW-w64. 2014-03-05 22:28:38 +01:00
Oliver Schmidt
4f317d70c8 Removed -std=c89.
Using `struct stat` and `%m` surely doesn't qualify for ISO C90.
2014-03-05 13:03:33 +01:00
Oliver Schmidt
44ccb27549 Changed Makefile.inc handling.
It seems more appropriate to trigger the inclusion of Makefile.inc via $TARGET (instead of $SRCDIR). This is btw. more consistent with extzp.s inclusion which is triggered via $TARGET too.
2014-03-04 21:46:25 +01:00
Oliver Schmidt
66f1a80f4e Moved workaround for MinGW's missing %m support to a central place. 2014-03-04 01:20:38 +01:00
Oliver Schmidt
4185caf855 Normalized code. 2014-03-04 01:11:19 +01:00
Oliver Schmidt
3e156bdd67 Removed unused header. 2014-03-03 22:52:39 +01:00
Oliver Schmidt
b68507d8a5 Adjusted spawn files to recent change II. 2014-03-03 22:38:41 +01:00
Oliver Schmidt
574bda3e4e Adjusted spawn files to recent change. 2014-03-03 22:26:08 +01:00
Oliver Schmidt
50c4fd1c4c Improve MinGW support.
- Code specific to Windows was #ifdef'ed with _MSC_VER so it wasn't included with MinGW. So _MSC_VER is replaced with _WIN32.
- MinGW doesn't support _get_pgmptr() so it is necessary to directly call the Win32 function GetModuleFileName(). This implies including windows.h which in turn causes a name clash with the Win32 function SearchPath(). So the cc65 type SearchPath is renamed to SearchPaths.
2014-03-03 22:12:14 +01:00
Christian Groessler
c8f7f2f161 first changes for atari5200 target 2014-03-01 17:20:09 +01:00