mrdudz
0d46af2e9c
Merge branch 'master' of https://github.com/cc65/cc65
2020-11-19 23:12:46 +01:00
mrdudz
23273584a0
testcase for issue #1348
2020-11-19 23:12:16 +01:00
Zsolt Branyiczky
032b4e3979
Fixed typo
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
63543dee07
Revert transient modification of EATab Table 0 comment
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
adad3d2e87
Revert "adding c64dtv device to the supported ones"
...
This reverts commit 1d9e378fe3
.
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
b2c55c3338
adding c64dtv device to the supported ones
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
36f5dcbb6e
added 6502dtv opdoces testcases and corrected cpudetect
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
527500cedc
instruction table contained wrong parameters at SIR opcode
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
0e98818db5
assembled SAC and SIR opcodes of 6502DTV cpu were wrong
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
1c5c07406c
cpudetect.s needs this file to run its test for 6502dtv cpu
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
843b94388a
added asm test for 6502DTV cpu
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
130d3b52a2
new macros supporting 6502DTV cpu
2020-11-19 22:02:07 +01:00
Zsolt Branyiczky
4205a04a34
6502DTV is not a superset of 6502X more
2020-11-19 22:02:07 +01:00
Polluks
c59e8277ae
Added prototype
2020-11-18 10:28:19 +01:00
Polluks
a0596eae6e
Added waitvsync for PET
2020-11-18 10:28:19 +01:00
Polluks
bd6e5927c4
Fixed #1341
2020-11-18 10:28:19 +01:00
Greg King
5ba16654a3
Refined the hints about making new test reference files.
2020-11-17 15:06:05 -05:00
Greg King
b0497f40b2
'test/isequal.c' doesn't change. Don't rebuild it for each test subdirectory.
2020-11-17 13:40:36 -05:00
Greg King
47bceb0eab
Streamlined some makefiles.
...
foreach isn't needed because make automatically iterates through lists of words when substituting patterns.
2020-11-17 13:34:22 -05:00
Greg King
2ffb6af5d9
Simplified a bug test. Gave it an appropriate description,
2020-11-17 08:15:34 -05:00
Jesse Rosenstock
68cb15d0f9
Add test case for #1320
...
From https://github.com/cc65/cc65/issues/1320#issuecomment-726866015
2020-11-17 09:45:02 +01:00
Oliver Schmidt
0cd8d37613
Fixed comment.
2020-11-17 08:53:48 +01:00
Oliver Schmidt
69c0363c7e
Fixed CPU bitmask constants to match the CPU instruction set bitmasks computed in src/common/cpu.h.
2020-11-16 18:50:15 +01:00
Oliver Schmidt
116682c190
Avoid C99 idioms.
2020-11-16 18:08:00 +01:00
Jesse Rosenstock
c2c73e7d06
Move #1332 test from todo/ to val/
...
This bug was fixed by 2915464
.
2020-11-16 03:23:52 -05:00
Jesse Rosenstock
060417b0dc
Adjust type of int constants that fit in char
...
When there is an integral constant like `3` in an expression, it has
type `int` according to the C spec, even though it can be represented
as an `unsigned char`. Change codegen (`hie_internal` and `typeadjust`)
to treat it as `unsigned char` instead of `int` so that faster,
unsigned operations can be used.
For the test case in #1298 , reduces the cycles per iteration from
4311 to 1884. This is a great improvement, but still much worse than
the 1053 cycles/iter from `c4698df~`, so more work remains to be done.
Further partial fix for #1298 and #1308 .
2020-11-16 00:56:19 +01:00
Jesse Rosenstock
83ac2755fe
Add test case for #1332
2020-11-15 21:32:45 +01:00
Greg King
2915464667
Fixed cc65's generation of char-type bit-shift code.
...
Fixed CHAR-to-INT type conversions in the right-shift code generator. Also fixed some printf-style format specifiers.
2020-11-15 15:22:23 -05:00
Greg King
5f65252fa6
Added the cputdirect entry point to the cputc() functions in the two Oric libraries.
...
It now is available in all libraries that have cputc().
2020-11-15 11:44:12 -05:00
Zsolt Branyiczky
2d7777b604
Instruction table is synchronized with the c65's one
2020-11-15 16:35:55 +01:00
Zsolt Branyiczky
0f7cf87bfa
Synchronizin InsTab6502DTV instructions table for DTV with the illegal opcodes verified by VICE-emu tests
2020-11-15 16:35:55 +01:00
Zsolt Branyiczky
dd44dc4d77
Fix typo
2020-11-15 16:35:55 +01:00
Zsolt Branyiczky
06dfef81a1
Added 6502dtv description to cpu option
2020-11-15 16:35:55 +01:00
Zsolt Branyiczky
92c013944e
Mistyped comment, missing comma
2020-11-15 16:35:55 +01:00
Zsolt Branyiczky
b33b053307
add c64dtv support
2020-11-15 16:35:55 +01:00
Christian Groessler
77da8d5490
vic20.cfg: add missing comma
2020-11-11 17:20:25 +01:00
Sven Michael Klose
53f055fb1d
Reduce stack size to 256B for unexpanded VICs.
2020-11-11 12:42:35 +01:00
Jesse Rosenstock
93145246fd
Add tests for u8 op s16_const
...
Test expressions like `unsigned char x = ...; ... = x / 2;`
These use `int` constants with values representable by
`unsigned int` / `unsigned char`, so using unsigned codegen should
be possible.
Additional tests for #1308 . These are things we want to generate better
code for, so add tests that the behavior doesn't change.
2020-11-09 21:20:16 +01:00
Jesse Rosenstock
5db74b4b19
Use u16 codegen for u8 x u8 ops
...
In g_typeadjust, before we apply the integral promotions, we check if
both types are unsigned char. If so, we promote to unsigned int, rather
than int, which would be chosen by the standard rules. This is only a
performance optimization and does not affect correctness, as the flags
returned by g_typeadjust are only used for code generation, and not to
determine types of other expressions containing this one. All unsigned
char bit-patterns are valid as both int and unsigned int and represent
the same value, so either signed or unsigned int operations can be used.
This special case part is not duplicated by ArithmeticConvert.
Partial fix for #1308 .
2020-11-09 21:19:22 +01:00
Greg King
81edc3f582
Updated a comment about Kernal's STATUS variable.
2020-11-08 17:45:54 -05:00
Jesse Rosenstock
b5f0c0468d
Add stdint.h types for C89 compilers
...
Add `intN_t` and `uintN_t` for N = 8, 16, 32.
2020-11-03 21:24:52 +01:00
Jesse Rosenstock
65193c6aaf
Add stdint.h constants INT32_MIN and UINT32_MAX
...
These were missing before
2020-11-03 09:26:26 +01:00
Jesse Rosenstock
0e482c7f92
Add test for issue #1310
2020-11-01 19:09:20 +01:00
Christian Groessler
39c0abed54
atarixl: fix compilation problem when CHARGEN_RELOC is defined
2020-10-30 15:01:47 +01:00
Greg King
aad17a6f05
Made two GEOS directory functions return NULL if they can't give a valid entry.
2020-10-29 18:06:01 -04:00
Oliver Schmidt
d8e6fa61bb
Return NULL on error (or end of directory).
2020-10-29 17:44:19 +01:00
Christian Groessler
944ebbc23c
atarixl configs: make size of CHARGEN configurable
...
If text mode is not used, its space can be reclaimed by setting __CHARGENSIZE__
to 0.
Following a suggestion from issue #1314 .
2020-10-29 17:43:49 +01:00
Jesse Rosenstock
a686988d0e
Add test cases for integral promotion of chars
...
Both signed and unsigned chars are promoted to int by C's evaluation
rules. It is more efficient to use unsigned operations when possible,
however. These tests will help test the correctness of optimizations
doing that. See #1308 .
2020-10-29 13:54:37 +01:00
Christian Groessler
262631039d
atari.h, atari5200.h: style fixes
2020-10-28 21:12:32 +01:00
Christian Groessler
3537210674
add waitvsync() for atari and atari5200
2020-10-28 21:12:32 +01:00