NEO-B1

From NeoGeo Development Wiki
Revision as of 23:36, 29 September 2016 by Furrtek (talk | contribs) (Added buffer size)
Jump to navigation Jump to search
Package QFP160
Manufacturer
First use 1992 ?
Used on NEO-AES3-4...
(Damaged) B1 die showing pre-built memory cells.

The NEO-B1 chip is found in second generation cartridge-based systems.

Graphics

Both fix graphics from the S ROM and serialized sprite graphics from the C ROMs are fed to NEO-B1 for display on screen via 2 pairs of alternating line buffers. Sprite graphics come from the C ROM multiplexer (NEO-ZMC2, PRO-CT0 or NEO-CMC), while fix graphics come directly from the currently enabled fix ROM. Two pixels are written at a time.

It is believed that there are four 192 * 12 bits buffers, giving space for two 384 pixel lines with 4096 colors max.

The chip outputs the palette RAM address to select colors for pixel output. The data output of the palette RAM is latched by a pair of 8bit registers, which in turn feed the video DAC. The NEO-B1 handles address bus switching between the 68k bus and palette RAM. Priority is always given to the 68k which results in harmless display glitches when games access palette RAM during active display.

Watchdog

The watchdog is integrated into NEO-B1. HALT and RESET are generated by this chip on power-on and whenever the 68k fails to kick the watchdog in time. The write to REG_DIPSW is decoded on the chip instead of using a signal from NEO-C1.

Watchdog can be disabled by bringing pin 94 DOGE to ground (J2 jumper on main board).

Pinout

(Max size:File:neo-b1_pinout.png)
File:Neo-b1 pinout.png

OpenOffice Draw file: File:Neo-b1.odg

Signals

  • A1~A21: 68k address bus
  • A22I,A23I: 68k A22,A23 passed through NEO-E0
  • FIX0~FIX7: Fix ROM data bus
  • PCK1/PCK2: Latch signals, shared with LSPC2-A2 (inverted for NEO-273)
  • PA0~PA11: Palette RAM address bus
  • TDO0~TDO11: NC on the MV1F
  • GAD0~GAD3, GBD0~GBD3: Sprite pixel data (2 pixels)
  • FLIP: Flip display horizontally ? Always tied to ground.
  • WE1~WE4: Write enable for sprite pixels
  • CK1~CK4: Stepping clocks
  • SS1/SS2: ?
  • LD1/LD2: Odd/Even scanline load ? Changes according to sprite list ?
  • TMS0: Line buffer selection
  • DOGE: Watchdog enable (internal pullup)