| File | Date | Author | Commit |
|---|---|---|---|
| data | 2024-07-24 |
|
[ec73e1] Initial commit |
| literature | 2024-07-26 |
|
[24b242] More Stuff to read! |
| notebooks | 2024-07-24 |
|
[ec73e1] Initial commit |
| src | 2024-10-10 |
|
[63ead3] Created more CMP Instructions |
| tests | 2024-09-14 |
|
[b2d89b] Refactored Address Reading |
| .gitignore | 2024-07-24 |
|
[ec73e1] Initial commit |
| LICENSE | 2024-07-24 |
|
[ec73e1] Initial commit |
| README.md | 2024-08-05 |
|
[1e4229] Bugfixes |
| TODO.md | 2024-10-10 |
|
[63ead3] Created more CMP Instructions |
| pyproject.toml | 2024-09-14 |
|
[b2d89b] Refactored Address Reading |
| run_coverage.sh | 2024-08-30 |
|
[6b1a01] This is how a coverage report is generated. |
| translate.py | 2024-08-29 |
|
[8246d5] Refactoring |
Kevirami is a project to create -- besides UAE and Fellow -- a third Amiga Emulator. Spreading knowledge
across as much brains as possible to me seems like the best way to ensure the preservation of the AMIGA.
Therefore I am creating an emulator from scratch, not looking into the code of UAE as long as possible.
The focus of Kevirami is also clean code, and a good documentation, so that it can be used as a learning
resource as easy as possible.
All existing emulators are written in C. So instead of adding another attemt to the list, I decided to
bring a more modern language to the table, which also might help with clearly pointing out the structures
in easily readable code.
Python is surely a bad choice when it comes to performance, but I try to get the structures right first. As
soon as performance becomes a concern, Kevirami might be ported to Go or Rust.
Kevirami is developed in several phases. The first phases will focus on the Motorola 68000 CPU, while later
phases will address the amigas custom chips. The plan currently looks as follows:
This Project houses it's sources below the src/kevirami directory. You have
to have this directory in your module-searchpath to execute the project. It should also
be present in the module-searchpath of your IDE.
If using pycharm or any other Jetbrains-based IDE, use
Settings->Project->Project Structure
to mark as sourcefolder the src-folder of this.
The Project requirements, as well as the dev-requirements are intended to be listed in the
pyproject.toml-file (see there)
By issuing:
pip install -e .
you add all the project dependencies as well as the projects sourcefolder to your
[hopefully virtual!] environment, relieving you of the burden of having to manually
installing anything or having to configure your python path by other means.
Likewise you can install all the dev-dependencies by:
pip install -e .'[dev]'