Commit Graph

356 Commits

Author SHA1 Message Date
Matthias f4b8291e5e Fix labels 2023-06-29 11:24:39 +02:00
Matthias 4172c4bcba rebuild image 2023-06-29 11:24:29 +02:00
Matthias 21a4249952 update linker config 2023-06-29 11:24:09 +02:00
Matthias efb1c3a3b8 Add Addressing mode to Display for DecodedInstr 2023-06-29 10:48:47 +02:00
Matthias 902b69a053 Use labels 2023-06-28 23:48:03 +02:00
Matthias 360e00da20 add debug info 2023-06-28 23:37:46 +02:00
Matthias 05420f23e5 Make instruction printable 2023-06-28 10:41:38 +02:00
Matthias d9499fa419 Use correct ca65 assembler file extension 2023-06-28 10:12:23 +02:00
Matthias fa6e4f49f1 Compile functional test from sources 2023-06-28 10:12:09 +02:00
Matthias a7765431cd extend docs 2023-06-28 10:05:11 +02:00
Matthias f61a36f798 Extend documentation 2023-06-19 19:10:46 +02:00
Matthias cb49e5e5a6 Print decoded instruction 2023-06-19 13:41:57 +02:00
Matthias 23ddc109ee Add functional test and update CPU debug output
The functional test is based on
https://github.com/Klaus2m5/6502_65C02_functional_tests

It does NOT pass yet. :(
However, I think it's a good idea to have it in the repo
nonetheless, to make some incremental improvements.

This PR is based on the `asm` branch, which should be
merged first.
2023-06-19 13:34:35 +02:00
Matthias dbfa32b5c2 fix typo 2023-06-19 13:32:35 +02:00
Matthias fa0b343c69 cleanup 2023-06-19 13:08:07 +02:00
Matthias 8d506773bf Add assembly example code
This should make it easier for beginners to understand
how to test this emulator.
2023-06-19 13:05:07 +02:00
dependabot[bot] 4266599bb2
Bump bitflags from 2.2.1 to 2.3.2 (#79)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.2.1 to 2.3.2.
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.2.1...2.3.2)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-19 11:56:09 +02:00
omarandlorraine 42eb1f8689
Update README.md (#74) 2023-04-26 18:41:44 +02:00
dependabot[bot] 36a9dd19f6
Bump bitflags from 2.1.0 to 2.2.1 (#73)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.1.0 to 2.2.1.
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.1.0...2.2.1)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 10:45:54 +02:00
Matthias Endler 2effe45a08
Add CI pipeline (#71) 2023-04-20 17:42:18 +02:00
Matthias 56001dc63b Add missing updated lockfile 2023-04-20 14:22:03 +02:00
Matthias 1a3d07861b Bump devel version to 0.5.0 2023-04-20 13:22:13 +02:00
dependabot[bot] c08e8ac595
Bump bitflags from 2.1.0 to 2.2.0 (#69)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-20 10:49:59 +02:00
omarandlorraine 849f891e24
Merge pull request #67 from mre/rts
Implementation of RTS
2023-04-16 07:08:25 +01:00
omarandlorraine 6232b3bdbd
Merge pull request #68 from mre/bit
bugfix for the bit opcode
2023-04-15 22:05:54 +01:00
Sam M W bd1ab13dc1 point INY instruction at the correct register 2023-04-15 21:47:17 +01:00
Sam M W f0fc9829db PLA opcode should update the flags 2023-04-15 21:44:05 +01:00
Sam M W 26a2f51bc6 don't overshoot the stack pointer! (pla and plp) 2023-04-15 21:37:47 +01:00
Sam M W 62424070a1 disable interrupts after BRK instruction 2023-04-15 21:34:07 +01:00
Sam M W a8d53f926d implement BRK 2023-04-15 21:17:28 +01:00
Sam M W 1c31a73a2b correct endianness for program counter push 2023-04-15 21:01:08 +01:00
Sam M W 239992ea6c first stab at implementing the JSR instruction 2023-04-15 20:58:31 +01:00
Sam M W 70e85a2eaf bugfix for the bit opcode 2023-04-15 16:42:05 +01:00
Sam M W 8e797b70fa implement BNE 2023-04-15 16:17:51 +01:00
Sam M W 18164c7abf implement RTI as well 2023-04-15 15:36:53 +01:00
Sam M W 1b90243738 implementation of RTS 2023-04-15 15:36:43 +01:00
dependabot[bot] 7df9160e32
Bump bitflags from 2.0.2 to 2.1.0 (#65)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.0.2 to 2.1.0.
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.0.2...2.1.0)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 10:58:07 +02:00
omarandlorraine 99ae3d55e0
Merge pull request #63 from mre/memory_trait
Tease memory handling apart from the CPU
2023-04-05 05:23:25 +01:00
Sam M W f031c080a0 bump version 2023-04-04 14:48:13 +01:00
Sam M W 9f75d1a6b5 the get_byte method needs to take mutable reference to self
the reson for this is it's possible for external hardware to have some
side effect on a read.
2023-04-03 22:46:46 +01:00
Sam M W 26926a9feb set_byte method does not need to return old_value 2023-04-03 22:44:02 +01:00
Sam M W d2043dc6fb less verbosity, more expliciteness 2023-04-03 21:07:06 +01:00
Sam M W 7222388c5e get rid of silly xextend function; just use the .into() 2023-04-03 21:00:17 +01:00
Sam M W 3accd8ce40 as clippy suggests, convert from bool to u8/i8 2023-04-03 07:39:30 +01:00
Sam M W 672defd817 remove now dead code 2023-04-03 07:39:30 +01:00
Sam M W 0708a1084c fix the tests back up 2023-04-03 07:39:18 +01:00
Sam M W 12c901e8aa generic argument for CPU represents memory 2023-04-03 07:02:32 +01:00
Sam M W a8dac6e805 extract memory functionality into a trait 2023-04-03 06:59:40 +01:00
Sam M W f3f15de8cc remove memory.get_slice
real hardware won't have the ability to dive in and grab a slice from
memory
2023-04-03 05:50:13 +01:00
Sam M W 4254c02f55 Remove unit test test_memory_set_bytes
This is the right thing to do because its pass depends on
zero-initilization. Real memory will not behave this way
2023-04-03 05:50:13 +01:00