msx-vdp-audit
Validate MSX video emulation for the TMS9918A/TMS9928A/TMS9929A VDP family in EMULATORS, including ports
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Validate MSX video emulation for the TMS9918A/TMS9928A/TMS9929A VDP family in EMULATORS, including ports
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Apply the local C++ coding conventions of the EMULATORS framework. Use when Codex adds, edits, reviews, or scaffolds C++ code in this repository, especially new classes, headers, cpp files, CORE/COMMODORE module code, emulator components, registers, chips, memory, sound, IO, commands, or InfoClass-derived objects.
Validate and implement Sinclair ZX Spectrum 48K ROM-visible behavior in the EMULATORS repository, including reset and restart vectors, IM1/NMI handling, keyboard scanning and repeat, beeper and tape routines, screen/printer output, channels and streams, BASIC tokenization and execution, expression evaluation, memory movement, system variables, calculator stack, floating-point formats, ROM traps, localized ROM selection, and firmware/hardware timing contracts. Use when Codex reviews or edits ZX Spectrum ROM loading, KERNAL-style traps, keyboard, tape, screen, printer, BASIC files, tokens, system variables, startup, interrupts, or compatibility tests.
Validate and implement Sinclair ZX Spectrum 16K/48K ULA and board-level behavior in the EMULATORS repository, including PAL/NTSC raster timing, bitmap and attribute fetches, FLASH/BRIGHT/INK/PAPER rendering, CPU clock generation, lower-RAM and I/O contention, floating bus, snow effect, DRAM addressing and refresh, port FE keyboard/tape/border/sound behavior, interrupts, and ULA revision boundaries. Use when Codex reviews or edits namespace ZXSPECTRUM ULA, ULARegisters, Memory, PortManager, Screen, Sound, Datasette, Z80 bus timing, raster, contention, or ZX Spectrum hardware tests.
Build, audit, and modify EMULATORS runtime `.fmt` formatter files and keep them synchronized with C++ `getInfoStructure()` producers and their `.hpp` field documentation. Use when adding, renaming, or removing `InfoStructure` attributes or nested structures; diagnosing missing console fields; reviewing formatter includes, formatter names, placeholders, arrays, nested invocations, or table parameters; or changing namespace-specific `.fmt` files under `projects`.
Validate and implement Sinclair ZX80 video emulation in the EMULATORS repository, including CPU-driven display generation, display-file execution, Z80 M1/refresh/HALT/INT interactions, character and inverse-video fetches, line counter and shift register behavior, horizontal and vertical sync, collapsed display files, PAL timing, flicker, and cassette/video coupling. Use when Codex reviews or edits namespace ZX81 code for the /mZX80 model, especially ULA, ULARegisters, MemoryVideoCode, Memory, PortManager, Screen, CPU interrupt timing, raster, or video tests.
Validate and implement Sinclair ZX81 video emulation in the EMULATORS repository for /mZX811, /mZX812, and /mZX813, including ULA character generation, Z80 display-file execution, M1/refresh/HALT/INT behavior, scanline timing, HSYNC/VSYNC, NMI generator and WAIT synchronization, SLOW and FAST modes, PAL/NTSC margins, collapsed display files, inverse video, high-resolution techniques, ROM-version interactions, and ULA revision boundaries. Use when Codex reviews or edits namespace ZX81 ULA, ULARegisters, MemoryVideoCode, Memory, PortManager, Screen, CPU interrupt timing, raster, ROM-specific video flow, or ZX81 video tests.
| name | msx-vdp-audit |
| description | Validate MSX video emulation for the TMS9918A/TMS9928A/TMS9929A VDP family in EMULATORS, including ports |
Use this skill to audit whether EMULATORS models the MSX1 VDP family as a port-driven video chip with separate VRAM and TMS9918A-compatible side effects.
references/vdp.md before making claims or edits.include/MSX/VDP.hpp, src/MSX/VDP.cppinclude/MSX/Screen.hpp, src/MSX/Screen.cppinclude/MSX/PortManager.hpp, src/MSX/PortManager.cppinclude/MSX/Commands.hpp, src/MSX/Commands.cppinclude/TEXASINSTRUMENTS/TMS99xxFamily/TMS99xxFamily.hpp, src/TEXASINSTRUMENTS/TMS99xxFamily/TMS99xxFamily.cppinclude/TEXASINSTRUMENTS/TMS99xxFamily/TMS99xxFamilyRegisters.hpp, src/TEXASINSTRUMENTS/TMS99xxFamily/TMS99xxFamilyRegisters.cpp$emulators-framework-cpp-style.Prioritize correctness in this order:
Useful local anchors:
emulators/MSXPrograms/KEY/GRAPHICS1.keyemulators/MSXPrograms/KEY/SPRITES1.keyemulators/MSXEmulator*/MSX.fmtemulators/MSXEmulatorC/TexasInstruments.hlpsrc/MSX/Commands.cppFor visual bugs, reduce to a small VRAM/register setup before comparing whole games. For port bugs, write Z80 tests that touch #98/#99 directly and also through BIOS routines such as WRTVDP, RDVRM, WRTVRM, SETRD, and SETWRT.