aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <mikisabate@gmail.com>2025-02-10 22:33:25 +0100
committerMiquel Sabaté Solà <mikisabate@gmail.com>2025-02-10 22:33:25 +0100
commit8fe0ee28b0c1220dd5b598e38e5c8e659c44e58e (patch)
treea56e71fa65ca04cb5144fdf5f7ad43cad0fe405a
parent21cbede5330d7fd61412a299aaabc5e6c2879066 (diff)
downloadstyle.nes-8fe0ee28b0c1220dd5b598e38e5c8e659c44e58e.tar.gz
style.nes-8fe0ee28b0c1220dd5b598e38e5c8e659c44e58e.zip
Add some comments on managing assets
Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
-rw-r--r--README.md21
1 files changed, 21 insertions, 0 deletions
diff --git a/README.md b/README.md
index 144c28e..666de45 100644
--- a/README.md
+++ b/README.md
@@ -466,6 +466,17 @@ will always be placed in the global scope. For this reason you should always
write `.macro` statements in the global scope as embedding them into `.scope` or
`.proc` is simply misleading.
+# Managing assets
+
+## Order of pattern tables
+
+The NES/Famicom is quite open on which pattern table you are using for
+background tiles and which for sprite tiles. That being said, prefer using
+background tiles for the first pattern table and sprite tiles for the second
+pattern table. This is because some mappers like MMC3 have some [IRQ
+quirks](https://www.nesdev.org/wiki/MMC3#IRQ_Specifics) that can be avoided by
+following this order.
+
# Project layout
This is a tough cookie and it mostly boils down to how your game is structured.
@@ -516,6 +527,16 @@ That being said, don't go over the top. Certainly a function like `reset` can be
quite similar in many games, but some might need specific tweaks for specific
mappers, for example. Having a myriad of `.ifdef` or similar is not desirable.
+## Assets
+
+Leave your assets into a specific directory named `assets` or similar. That is,
+do not put `.chr` files in the same directory as code or at the root of your
+project.
+
+Moreover, some tools like [NEXXT](https://frankengraphics.itch.io/nexxt) will
+save a `session.nss` file to your `assets` directory. Do not remove it nor ignore
+it via git, as it will help you everytime you go back to your `chr` files.
+
# License
This work is licensed under <a