aboutsummaryrefslogtreecommitdiff
path: root/basics
Commit message (Collapse)AuthorAgeFilesLines
* Ensure background/sprite tiles are spread properlyMiquel Sabaté Solà2025-02-041-1/+1
| | | | | | | | At least on the MMC3 chip, it's important to have background tiles on the first pattern table and then sprite tiles on the second pattern table. This avoids a hardware bug on scanline IRQs. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* scroll: Implement a roulette-like gameMiquel Sabaté Solà2025-02-041-13/+4
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Don't leave segments emptyMiquel Sabaté Solà2025-02-042-0/+20
| | | | | | Otherwise we will get a warning from nasm. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Use custom configurations everywhereMiquel Sabaté Solà2025-02-044-23/+33
| | | | | | | Moreover, I have introduced a linker configuration for MMC1 as well, so to properly implement the `basics/persist.s` example. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Vastly improve the documentationMiquel Sabaté Solà2025-02-043-56/+159
| | | | | | This includes more clear explanations, images, etc. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Add a way to safely read from controllersMiquel Sabaté Solà2025-02-042-1/+6
| | | | | | | | | First of all, move some reading utilities into the new `shared` directory, so controllers can be read by more than one example. Second, even if we keep the example on `basics/input.s` simple, let's provide a safe alternative for the other examples. Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* basics: Add a flickering exampleMiquel Sabaté Solà2025-02-041-1/+280
| | | | | | | Add an example on how to flicker sprites so to not surpass the scanline limit for them. Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* Move assets into a global directoryMiquel Sabaté Solà2025-02-044-2/+2
| | | | Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* basics: Add an example on CHR-RAMMiquel Sabaté Solà2025-02-043-0/+304
| | | | | | Moreover, add a simple fix to the CI. Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* space: Improve comments and documentationMiquel Sabaté Solà2025-02-041-2/+4
| | | | Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* Make READMEs more clear for absolute beginnersMiquel Sabaté Solà2025-02-041-1/+8
| | | | | | Hopefully the path is now more clear. Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* space: Simplify the code and its goalsMiquel Sabaté Solà2025-02-041-6/+7
| | | | | | | | | Originally this was supposed to be a sort of mini game, but that would have probably made it too complex for newcomers. Thus, let's just keep it to subpixel movement and shooting bullets, which is already a big step from the `basics/sprite.s` example. Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* basics: Add an example on UNROMMiquel Sabaté Solà2025-02-043-0/+176
| | | | Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* basics: Improve documentationMiquel Sabaté Solà2025-02-043-9/+23
| | | | | | | Add more comments to `sprite.s` and `persist.s` so they can be read by a newcomer, and also introduce a README for this directory. Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* basics: Add an example on persisting dataMiquel Sabaté Solà2025-02-042-3/+165
| | | | Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
* Lay out a proper structure for the projectMiquel Sabaté Solà2025-02-044-0/+771
Let's divide things by topic instead of a broad "examples" directory. This will allow for simple files to co-exist together with full-blown projects. Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>