UNPKG

nes-emu

Version:

A NES emulator

25 lines (24 loc) 1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = visibleLines; var _renderBackground = _interopRequireDefault(require("./renderBackground")); var _renderSprites = _interopRequireDefault(require("./renderSprites")); var _constants = _interopRequireDefault(require("../../constants")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } /** Runs for each visible scanline. Renders the image. */ function visibleLines(context) { const { ppu, mapper } = context; const { ppuMask } = ppu.registers; if (ppu.cycle === _constants.default.PPU_CYCLE_RENDER_BACKGROUND) (0, _renderBackground.default)(context); if (!ppuMask.isRenderingEnabled) return null; if (ppu.cycle === _constants.default.PPU_CYCLE_RENDER_SPRITES && ppuMask.showSprites) (0, _renderSprites.default)(context); ppu.loopy.onLine(ppu.cycle); return ppu.cycle === _constants.default.PPU_CYCLE_MAPPER_TICK ? mapper.tick() : null; }