A 24-hour 7-segment clock for the NES.
Table of contents:
assemble.sh
: a Linux script that assembles the program (warning: deletes files)clock.asm
: source code (assembles with ASM6)
chr.png
: CHR data as an image (can be encoded withnes_chr_encode.py
from my NES utilities)snap*.png
: screenshots
chr.bin.gz
: CHR data in NES format (gzip compressed)clock.nes.gz
: assembled program in iNES format (gzip compressed)
- mapper: NROM
- PRG ROM: 8 KiB
- CHR ROM: 2 KiB
- name table mirroring: vertical
- compatibility: NTSC & PAL
There are two modes.
- The program starts in this mode.
- Time does not advance.
- The clock is at the center of the screen.
- The cursor (up arrow) is visible.
Buttons:
- left/right: move cursor
- up/down: change digit at cursor
- select: toggle between NTSC and PAL timing
- start: switch to run mode (hour must be 23 or less)
- If using NTSC timing, time advances by one second every 60.1 frames.
- If using PAL timing, time advances by one second every 50.008333… frames.
- The clock moves around the screen to prevent burn-in.
- The cursor is hidden.
Buttons:
- start: return to adjust mode