aboutsummaryrefslogtreecommitdiff
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md37
1 files changed, 37 insertions, 0 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..1606801
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,37 @@
+## Why?
+
+Do you want to fix an error you have found? Do you know a way to improve my
+6502-fu or do you know a technique on NES/Famicom development that might help
+here? I am open for discussion and welcome any help!
+
+## How?
+
+There are many ways to help me out. One way might be to open an issue on
+[Github's tracker](https://github.com/mssola/jetpac.nes/issues) and start a
+discussion. For this, mind the following:
+
+- Check that the issue has not already been reported or fixed in `main`.
+- Try to be concise and precise in your description.
+- If you have found a problem, provide a step by step guide on how to reproduce it.
+- Provide the version you are using (git commit SHA), as well as the version of
+ the toolchain and the emulator/system being used.
+
+Another way is to simply submit a pull request. For this, also mind these:
+
+- Write a [good commit message](https://chris.beams.io/posts/git-commit/).
+- You are sure that `make` continues to work.
+- The game continues to work.
+- The pull request has *only* one subject and a clear title. You are not
+ submitting a pull request with tons of different unrelated commits.
+
+## Development cycle
+
+In order to test your changes, I'd go this way:
+
+1. Make sure that you have the toolchain installed. For this you can call `make
+ deps` and it will error out if you are missing anything.
+2. Make your changes in the code and run `make`. This will produce the ROM
+ inside of the `out` directory.
+3. Run the ROM that was produced with an emulator of your choosing. Make sure
+ that things run as expected.
+