This fork drives the analog output with a native 15 kHz signal generated by
the core itself: 352x240p60 (NTSC) by default, with 720x480i60 and 352x288p50
(PAL) selectable by the ARM-side launcher through a DDR control block (see
DDR contract). There are no video options in the OSD — the
mode and the H/V centering trims are owned by the launcher. Idle video stays
black during frontend handoff. Upstream-style snow appears behind the stock
OSD, and whenever Main sets status[10] to report that no frontend owns or
is about to take the screen (frontend off, quit, or given up), so a setup
with no frontend and no OSD, such as kiosk mode, still shows snow. Native
frontend frames take priority over both backgrounds.
Native writers must use the v2 magic and publish a live frame counter. The legacy 320-pixel, no-magic DDR contract is no longer accepted.
Note: forced_scandoubler (the "Forced scandoubler" MiSTer.ini setting) is
ignored by this core — the analog output is always 15 kHz. If your VGA output
feeds a 31 kHz-only monitor, set vga_scaler=1 in MiSTer.ini instead.
- ESC - Back/Options
- Enter - OK
- F1 - Cycle Background/Wallpaper
- F9 - Go to Linux terminal (F12 - back)
- F11 - Bluetooth Pairing Script
- F12 - Recent Cores
Install Icarus Verilog 12 and GNU coreutils, then run sh tb/run.sh from the
repository root. CI runs the same native timing, DDR reader, scanout latch,
snow cadence and bootstrap-black suites on Ubuntu 24.04. Assertions, compilation failures,
and a 600-second timeout per simulation fail the run. Generated simulators
stay in ignored test-output/rtl/.
Quartus builds must also pass python3 tb/check_timing.py output_files/menu.sta.rpt.
CI rejects missing or negative setup, hold, recovery, removal and pulse-width
results, even when Quartus reports successful compilation.
- Core supports sub-folders started with _ character.
- Regardless the place of RBF file, boot rom/vhd should be placed into either root of SD card or core's dedicated folder (should be created in root of SD card).
- Joystick (including emulation by keyboard) buttons defined in this core is default map for all cores unless defined in particalar core.
- Place menu.png or menu.jpg to the root of SD card to have it as background on HDMI (you can use vga_scaler=1 if you want it on VGA).
- Create "wallpapers" folder and place multiple .jpg or .png to it. Use F1 to cycle between standard MiSTer backgrounds and wallpapers in folder.