1
0
mirror of https://github.com/KarolS/millfork.git synced 2024-07-01 12:29:29 +00:00
millfork/docs/stdlib/nes.md

40 lines
1.0 KiB
Markdown
Raw Normal View History

[< back to index](../index.md)
# NES/Famicom-oriented modules
## `nes_hardware` module
The `nes_hardware` module is imported automatically on NES targets.
TODO
## `nes_mmc4` module
The `nes_mmc4` module is imported automatically on the NES MMC4 target.
and contains routines related to MMC4 bankswitching.
#### `void set_prg_bank(byte a)`
Changes the $8000-$BFFF PRG bank.
#### `void set_chr_bank0(byte a)`
Changes the CHR bank 0 ($0000-$0fff in the PPU memory space).
The high nibble (0 or 1) selects between `chrrom0` and `chrrom1` segments.
The low nibble L (0-$F) selects a 4K-aligned address in the segment ($L000).
#### `void set_chr_bank1(byte a)`
Changes the CHR bank 1 ($1000-$1fff in the PPU memory space).
The high nibble (0 or 1) selects between `chrrom0` and `chrrom1` segments.
The low nibble L (0-$F) selects a 4K-aligned address in the segment ($L000).
#### `void set_vertical_mirroring()`
Switches nametable mirroring to vertical.
#### `void set_horizontal_mirroring()`
Switches nametable mirroring to horizontal.