NEO-SMA: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
m (Added "used on" board)
No edit summary
Line 59: Line 59:
|?||?||?||?||?||?||?||?||?||?||?||?||?||?||?||?
|?||?||?||?||?||?||?||?||?||?||?||?||?||?||?||?
|}
|}
 
{{PROGLBA_NEOSMA_251_kof99}}
==Garou==
==Garou==


Line 106: Line 106:
|$5D8000||$6D8000||$5E0000||$6E0000||$5E8000||$6E8000||$6E8000||$000000||$000000||$000000||$000000||$000000||$000000||$000000||$000000||$000000
|$5D8000||$6D8000||$5E0000||$6E0000||$5E8000||$6E8000||$6E8000||$000000||$000000||$000000||$000000||$000000||$000000||$000000||$000000||$000000
|}
|}
 
{{PROGLBA_NEOSMA_253_garou}}
==Metal Slug 3==
==Metal Slug 3==


Line 132: Line 132:
|$4C0000||?||?||?||?||?||?||?||?||?||?||?||?||?||?||?
|$4C0000||?||?||?||?||?||?||?||?||?||?||?||?||?||?||?
|}
|}
 
{{PROGLBA_NEOSMA_256_mslug3}}
==KOF 2000==
==KOF 2000==


Line 158: Line 158:
|?||?||?||?||?||?||?||?||?||?||?||?||?||?||?||?
|?||?||?||?||?||?||?||?||?||?||?||?||?||?||?||?
|}
|}
 
{{PROGLBA_NEOSMA_257_kof2k}}
[[Category:Chips]]
[[Category:Chips]]

Revision as of 15:14, 15 January 2026

Package QFP144
Manufacturer
First use 1999 ?
Used on PROGLBA PROGSMA

Info from [MAME's source]

Security chip found connected to the P ROMs in The King of Fighters '99 - Millennium Battle (not all sets), The King of Fighters 2000 (not all sets), Metal Slug 3 (not all sets) and in Garou - Mark of the Wolves (all sets) cartridges. Bankswitches the second megabyte ($200000~$2FFFFF) of P ROM space and provides a 16bit pseudo-random number generator.

Upon system reset, the PRN is initialized to $2345.

The chip always (?) replies $9A37 on reads.

The stamp marking suggests that it is a programmable chip (OTP ?).

Pinout


Edit this pinout

Pin list by User:hpman.

PRNG

16bit LSFR with taps at bits 2, 3, 5, 6, 7, 11, 12, 15. Each read steps the register.

Bankswitching

Bankswitching is done by unscrambling the written bank number and using a 64 entry (256 bytes) lookup table to map the P ROM into $200000~$2FFFFF.

KOF 99

  • Bankswitching write at $2FFFF1
  • Read chip presence at $2FE447
  • PRN at $2FFFF8 and $2FFFFA

Bankswitch LUT (P2 ROM address):

0 1 2 3 4 5 6 7 8 9 A B C D E F
0 $000000 $100000 $200000 $300000 $3CC000 $4CC000 $3F2000 $4F2000 $407800 $507800 $40D000 $50D000 $417800 $517800 $420800 $520800
1 $424800 $524800 $429000 $529000 $42E800 $52E800 $431800 $531800 $54D000 $551000 $567000 $592800 $588800 $581800 $599800 $594800
2 $598000 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
3 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Board Protection
(NEO-SMA)
P1 P2 P3 P4
PROGLBA KA 251-P1 251-P2 -- --
KB 151-PG1K 151-PG2K -- --
KC 251-P1 251-PG2 -- --
KE 251-P1 251-PG2 -- --
?? 251-P1 251-P2 -- --
?? 251-EP1 251-EP2 251-EP3 251-EP4
PROGBK1 -- 152-P1 152-P2 -- --

Garou

  • Bankswitching write at $2FFFC0
  • Read chip presence at $2FE447
  • PRN at $2FFFCC and $2FFFF0


"KF" chip revision:

Bank scambling=12,14,6,7,9,5

0 1 2 3 4 5 6 7 8 9 A B C D E F
0 $000000 $100000 $200000 $300000 $280000 $380000 $2D0000 $3D0000 $2F0000 $3F0000 $400000 $500000 $420000 $520000 $440000 $540000
1 $498000 $598000 $4A0000 $5A0000 $4A8000 $5A8000 $4B0000 $5B0000 $4B8000 $5B8000 $4C0000 $5C0000 $4C8000 $5C8000 $4D0000 $5D0000
2 $458000 $558000 $460000 $560000 $468000 $568000 $470000 $570000 $478000 $578000 $480000 $580000 $488000 $588000 $490000 $590000
3 $5D0000 $5D8000 $5E0000 $5E8000 $5F0000 $5F8000 $600000 ? ? ? ? ? ? ? ? ?

"KE" chip revision:

Bank scambling=13,11,2,14,8,4

0 1 2 3 4 5 6 7 8 9 A B C D E F
0 $000000 $100000 $200000 $300000 $280000 $380000 $2D0000 $3D0000 $2C8000 $3C8000 $400000 $500000 $420000 $520000 $440000 $540000
1 $598000 $698000 $5A0000 $6A0000 $5A8000 $6A8000 $5B0000 $6B0000 $5B8000 $6B8000 $5C0000 $6C0000 $5C8000 $6C8000 $5D0000 $6D0000
2 $458000 $558000 $460000 $560000 $468000 $568000 $470000 $570000 $478000 $578000 $480000 $580000 $488000 $588000 $490000 $590000
3 $5D8000 $6D8000 $5E0000 $6E0000 $5E8000 $6E8000 $6E8000 $000000 $000000 $000000 $000000 $000000 $000000 $000000 $000000 $000000
Board Protection
(NEO-SMA)
P1 P2 P3 P4
PROGLBA KC 253-P1 253-P2 -- --
KC 253-EP1 253-EP2 253-EP3 253-EP4
KE 253-P1 253-P2 -- --
KE LBA-SUB LBA-SUB LBA-SUB LBA-SUB
KG 253-P1 253-P2 -- --

Metal Slug 3

  • Bankswitching write at $2FFFE5
  • Read chip presence at $2FE447
  • PRN at $2FFFF8 and $2FFFFA

Bankswitch LUT (P2 ROM address):

0 1 2 3 4 5 6 7 8 9 A B C D E F
0 $000000 $020000 $040000 $060000 $070000 $090000 $0B0000 $0D0000 $0E0000 $0F0000 $120000 $130000 $140000 $150000 $180000 $190000
1 $1A0000 $1B0000 $1E0000 $1F0000 $200000 $210000 $240000 $250000 $260000 $270000 $2A0000 $2B0000 $2C0000 $2D0000 $300000 $310000
2 $320000 $330000 $360000 $370000 $380000 $390000 $3C0000 $3D0000 $400000 $410000 $440000 $450000 $460000 $470000 $4A0000 $4B0000
3 $4C0000 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Board Protection
(NEO-SMA)
P1 P2 P3 P4
PROGLBA KC LBA-SUB LBA-SUB LBA-SUB LBA-SUB
KG 256-P1 256-P2 -- --
KG 256-PG1 256-PG2 -- --
?? 256-PG1 256-PG2 -- --
PROGBK1 -- 256-PH1 256-PH2 -- --

KOF 2000

  • Bankswitching write at $2FFFED
  • Read chip presence at $2FE447
  • PRN at $2FFFD8 and $2FFFDA

Bankswitch LUT (P2 ROM address):

0 1 2 3 4 5 6 7 8 9 A B C D E F
0 $000000 $100000 $200000 $300000 $3F7800 $4F7800 $3FF800 $4FF800 $407800 $507800 $40F800 $50F800 $416800 $516800 $41D800 $51D800
1 $424000 $524000 $523800 $623800 $526000 $626000 $528000 $628000 $52A000 $62A000 $52B800 $62B800 $52D000 $62D000 $52E800 $62E800
2 $618000 $619000 $61A000 $61A800 ? ? ? ? ? ? ? ? ? ? ? ?
3 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Board Protection
(NEO-SMA)
P1 P2 P3 P4
PROGLBA ?? 257-P1 257-P2 -- --
?? LBA-SUB LBA-SUB LBA-SUB LBA-SUB
PROGBK1 -- 257-PG1 257-PG2 -- --