diff options
| author | Miquel Sabaté Solà <mikisabate@gmail.com> | 2025-03-07 16:04:42 +0100 |
|---|---|---|
| committer | Miquel Sabaté Solà <mikisabate@gmail.com> | 2025-03-07 16:07:04 +0100 |
| commit | ff22231f8a2f3714df701fd7c12b07915adc15e9 (patch) | |
| tree | 58695f6bd62a9de54d58bc80cae07c4d40c7ad81 /scroll/roulette.s | |
| parent | 54d9231c26459e12bd2f164f01db2110794639c0 (diff) | |
| download | code.nes-ff22231f8a2f3714df701fd7c12b07915adc15e9.tar.gz code.nes-ff22231f8a2f3714df701fd7c12b07915adc15e9.zip | |
shared: Add utilities for clearing screens
These are quite mindless, but they are rather useful on simple examples
in which we don't care about performance and we just want to show
something on the screen.
For now this didn't matter much, but on real hardware I was able to
reproduce the same glitches as with emulators which randomized memory on
both the CPU memory and on the PPU. Hence, just allow some examples to
manually reset these regions and avoid silly graphical glitches.
Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
Diffstat (limited to 'scroll/roulette.s')
| -rw-r--r-- | scroll/roulette.s | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/scroll/roulette.s b/scroll/roulette.s index 4b13c22..aca7d72 100644 --- a/scroll/roulette.s +++ b/scroll/roulette.s @@ -107,6 +107,7 @@ ;;; player around. .segment "FIXED" .include "../shared/diskun.s" +.include "../shared/clear.s" ;;; NOTE: the main bulk of this example. Comments only for the parts which are ;;; specific to this example. @@ -201,6 +202,10 @@ reset: ;; The main function is used here only for further initialization purposes. .proc main + ;; Clear both screens to avoid funky business, as we are not doing anything + ;; specially clever here. + CLEAR_SCREENS $20, $24 + ;; Initialize both the palettes and the nametables. jsr Diskun::init_palettes jsr init_nametables |
