1
0
mirror of https://github.com/cc65/cc65.git synced 2026-04-20 02:17:07 +00:00
Commit Graph

11232 Commits

Author SHA1 Message Date
Stefan cf470dd0df Update sieve.c 2024-12-09 18:26:00 +01:00
Stefan 5f2c5b58ab Update overlaydemo.c 2024-12-09 18:25:34 +01:00
Stefan 5d2730f4b4 Update multidemo.c 2024-12-09 00:44:44 +01:00
Stefan 8b008052cb Update mandelbrot.c 2024-12-09 00:43:35 +01:00
Stefan 26e6717102 Update mandelbrot.c 2024-12-09 00:43:05 +01:00
Stefan 316ee4ad5b Update overlay-demo.c 2024-12-09 00:42:28 +01:00
Stefan be6819ca1f Update plasma.c 2024-12-09 00:41:03 +01:00
Stefan 3612d90c8e Update fire.c 2024-12-09 00:40:41 +01:00
Bob Andrews 162bc6b305 Merge pull request #2553 from sidneycadot/fix-remove-zregister
Sim65: removed ZR register from CPURegs type.
2024-12-03 02:15:50 +01:00
Sidney Cadot 84c4ea062d Sim65: removed ZR register from CPURegs type. 2024-12-03 01:17:44 +01:00
Bob Andrews a55d328e78 Merge pull request #2549 from clydeshaffer/debuginfo_doc_port
Port Debug Info page from Wiki to Docs
2024-12-02 00:30:24 +01:00
Bob Andrews c0a4942b5d Merge pull request #2550 from sidneycadot/fix-bit-imm
Fixed behavior of the 65C02 "BIT #imm" instruction in sim65.
2024-12-02 00:28:07 +01:00
Bob Andrews 918c39cbeb Merge pull request #2548 from sidneycadot/fix-branch-timings
Fixed clock-cycle timing of branch (Bxx) instructions.
2024-12-02 00:25:54 +01:00
Bob Andrews 3895caae90 Style fix 2024-12-02 00:25:24 +01:00
Bob Andrews 79e26c1bc5 Merge pull request #2547 from sidneycadot/fix-jmp-ind
Fixed the behavior of JMP (ind) in sim65 when it runs with the 6502X CPU type.
2024-12-02 00:21:31 +01:00
Bob Andrews 1ce8225091 Merge pull request #2551 from sidneycadot/fix-interrupts-dflag
Fixed wrong clearing of D-flag on interrupts for sim65 with 6502X CPU.
2024-12-02 00:19:55 +01:00
Sidney Cadot e26c17fd50 Fixed wrong clearing of D-flag on interrupts for sim65 with 6502X CPU type.
The 65C02 clears the D flag on interrupts while the 6502 does not.

The old code cleared the D flag also for the 6502X CPU type, which
was incorrect.
2024-12-01 09:59:10 +01:00
Sidney Cadot 1d9d056da5 Fixed behavior of the 65C02 "BIT #imm" instruction.
The BIT #imm instruction behaves differently from the BIT instruction with other
addressing modes, in that it does /not/ set the N and V flags according to the
value of its operand. It only sets the Z flag, in accordance to the value of
(A & operand).

This is corroborated in two ways:

- The 65x02 test suite;
- Documentation about BIT #imm such as http://www.6502.org/tutorials/65c02opcodes.html

This patch implements the correct behavior for BIT with immediate addressing.
The patched version passes the 65x02 test suite for 65C02 opcode 0x89.
2024-11-30 23:46:19 +01:00
Clyde Shaffer 3fdb1a516c small formatting fixes, and a section rename to get it to build 2024-11-30 16:56:25 -05:00
Clyde Shaffer 12f6340878 Add section to ld65 doc about debug info 2024-11-30 16:09:50 -05:00
Sidney Cadot 709d71ef70 Fixed clock-cycle timing of branch (Bxx) instructions.
Branch instructions, when taken, take three or four cycles,
depending on whether a page is crossed by the branch.

The proper check to determine whether the extra cycle must be added
is the target address of the branch vs the address immediately
following the branch.

In the former version of the BRANCH instruction handler, the target
address was incorrectly checked vs the address of the branch instruction
itself.

The corrected behavior was verified against a real 6502 (Atari) and
the 65x02 testsuite.
2024-11-30 19:56:31 +01:00
Sidney Cadot 2abd66ea0c Fixed the behavior of the JMP (ind) instruction in sim65 when it runs with the "6502X" CPU type.
The JMP (ind) bug is present in the 6502 which is emulated by both the "6502" and "6502X"
emulation targets of sim65; specifically, the OPC_6502_6C handler. In the old code, the
bug-exhibiting code was not executed when the target was set to 6502X, which is incorrect.
the patch removes the (CPU == CPU_6502) check, which made no sense.

The JMP (ind) bug was actually fixed in the 65c02. Indeed, the OPC_65C02_6C opcode handler
has code that implements the 'right' behavior.
2024-11-30 12:36:35 +01:00
Bob Andrews 05a653d3f9 Merge pull request #2538 from clydeshaffer/dbg_banknum
[LD65] Add bank number to `seg` entries in dbgfile
2024-11-26 02:27:29 +01:00
Colin Leroy-Mira 21030c22a0 Apple2: Rewrite rewinddir() in assembly 2024-11-17 11:03:58 +01:00
Colin Leroy-Mira f663ee428d Apple2: Rewrite readdir() and closedir() to assembly 2024-11-17 11:03:58 +01:00
Clyde Shaffer 90e4360958 Parse and report segment bank number in dbginfo module and test shell 2024-11-16 17:13:04 -05:00
Colin Leroy-Mira 700c01fa8b Rename dir_file_count to dir_entry_count 2024-11-15 19:25:40 +01:00
Colin Leroy-Mira 40d9f3eed5 Apple2: Provide a way to get directory file count
The information is available in the directory key block.
Providing it to the user as soon as opendir() is done
can save them costly code.
2024-11-15 19:25:40 +01:00
Clyde Shaffer fa80e171a2 [LD65] Add bank number to dbgfile 2024-11-12 01:57:27 -05:00
Bob Andrews 36132a437b Merge pull request #2478 from alexthissen/lynx-include
Lynx cc65 and ca65 include file improvements for Mikey and Suzy
2024-11-09 20:10:51 +01:00
Alex Thissen a945bedefc Replaced all C++ style comments from Lynx include files 2024-11-09 19:46:11 +01:00
Bob Andrews e07cdd0a80 Merge pull request #2533 from colinleroy/apple2-rewrite-opendir-asm
Apple2: Rewrite opendir in assembly
2024-11-09 19:35:48 +01:00
Colin Leroy-Mira 819a314508 Apple2: Rewrite opendir in assembly
58 bytes size gain
2024-11-09 18:17:30 +01:00
Alex Thissen 4036912463 Fix to trailing whitespace 2024-11-09 12:06:37 +01:00
Alex Thissen 3dad6c76fa Changed to C style comments 2024-11-09 12:01:22 +01:00
Alex Thissen 0c018919fe Removed union and structures for Suzy math 2024-11-09 11:45:41 +01:00
Alex Thissen 1f1a004a05 Minor tweaks to Suzy struct types.
Named math union
2024-11-09 11:45:41 +01:00
Alex Thissen 489989f4c8 Changed 0x hex values to % binary values 2024-11-09 11:45:41 +01:00
Alex Thissen 336c4287c5 Missed some dangles spaces 2024-11-09 11:45:41 +01:00
Alex Thissen abcb073a5a Bit definitions for Suzy 2024-11-09 11:45:41 +01:00
Alex Thissen 7150fdf4b9 Enumerations and math structures for Suzy 2024-11-09 11:45:41 +01:00
Alex Thissen 3553975b02 Math improvements to Suzy include file 2024-11-09 11:45:41 +01:00
Alex Thissen eb6003aaf7 Mikey enumeration values for cc65 include files and new bit definitions for ca65 2024-11-09 11:45:41 +01:00
Bob Andrews 394d3b1964 Merge pull request #2528 from lcvgit/cc65-checkversion-fix
checkversion.c fix missing shifts
2024-11-07 20:52:38 +01:00
lcvgit c41eb007e4 Update checkversion.c
Add missing shifts.
2024-10-21 10:09:00 -05:00
lcvgit 02840d503c Fix checkversion.c
Add missing shifts for checking version from __CC65__.
2024-10-21 10:00:48 -05:00
Bob Andrews 4dfbccfafd Merge pull request #2522 from kugelfuhr/kugelfuhr/code-optimizations
Improve generated code for AND/EOR/ORA
2024-10-05 15:03:46 +02:00
Bob Andrews 270aa4417b Merge pull request #2524 from kugelfuhr/kugelfuhr/fix-2523
Fix some issues with preprocessor expressions
2024-10-05 14:14:29 +02:00
Bob Andrews 8cd45417f9 Merge pull request #2525 from SvOlli/doc_customizing
updated customizing documentation
2024-10-05 14:13:05 +02:00
Bob Andrews bb7f0c17b8 Merge pull request #2526 from picocomputer/master
Add to rp6502 target: clock(), xregn(), and RIA stack increase
2024-10-05 14:11:34 +02:00