About the NeoGeo Pocket

General No-Intro related discussions.
Post Reply
User avatar
Posts: 148
Joined: 14 Aug 2008 10:07

About the NeoGeo Pocket

Post by psykopat »

Hello there.

I wanted to start a little thread about the NeoGeo Pocket systems (monochrome or color). A long forgotten console, with a rather small game library. New roms are rare, and that's mainly because dumping tools were not so common. But things are moving a bit recently, and maybe some redumps will appear in the next weeks/months. Two tools in particular are now available :

"Tengu neo geo pocket dumper", sometimes sold under "GAMEBANK NGP Damper" name on chinese websites. The v1 was giving a lot of reading errors, and the v2 is quite more stable. The pc client is not open source so we are stuck with the publickly available exe. Even if not perfect and a bit expensive, this is doing the job. To be nearly sure about your rom result, it's adviced to dump the same game multiple times, compare their CRCs, and keep the most frequent given one...

And sanni's cart reader, in combination with a NGP-to-SNES adapter. I updated the NGP source code this week and it should now handle the majority of 4, 8 and 16 Mbits carts. I would be interested by your feedbacks if you got all the needed stuff to try it. What is working well and what is not, to improve the global compatibility.
32M games are untested since I don't own one. 32M games are actually designed as 2 x 16Mbits chips inside the cart, so the dumping process/addressing may be a bit different for them.

Now that tools are available, I wanted to share some important info I noticed during the process.

First, and this is maybe the most important, you have to know that NGP(C) games do not have a save battery as GameBoy games. They are flash, and the save is written directly to the chip. Unfortunately, for the ones who are familiar with 3DS card2 games, things are not working the same here. For 3DS card2 the save data was stored after game location. Here it's not the case. Save data can be placed here and there, splitted in various sectors, and doing a full dump of the cart will give you a rom with game + save data all together. So if your CRC doesn't match dat-o-matic info, don't be surprised. And for datters, take care when a rom will be submitted, because it won't be easy to say if save data are present or not inside of it.

Dumping tools can maybe be improved on this. If we manage to detect precisely the "locked" sectors (reserved for game data) and then "open" ones disigned for saves (that could be filled with "FF" during the process). FlashMasta members were working on that problem a long time ago, but I don't know how it ended.
EDIT : at the end I coded it myself lol. Sectors scan is now added to the latest commit of Sanni's cart reader :p

Quick speech about how game serials/IDs work : they are 4 digits long, stored inside the rom and also visible on the cart front sticker.
Depending of the game localization/region the sticker is not the same and one more digit can be added, but the game/rom will stay the same. Example :
"Dark Arms - Beast Buster 1999" : sticker displays NEOP0045 (for Europe) / NEOP00450 (Japan) / NEOP00451 (USA) but the rom is strickly the same worldwide, with gameID "0045".
I think this serial info (4 digits) and the rom version (2 digits) are quite important to identify a rom and its revision, and really should be added in dat-o-matic for each NGP game. I can help on that if needed, I made my own database. I've already found many rom revisions, totally undumped.

Then about oddities, I can talk about various things I've found when opening/dumping cartridges :
- The same game can have multiple revisions, and it's not visible from the cart sticker. For example NEOP0052 got at least 3 revisions, and maybe more. Some early revisions are stored on 4Mbits chips, and more recent ones seems to be on 8Mbits.
- The same game + same revision could have been produced by different manufacturers. For example NEOP0110 was burned onto Samsung chips, but also on Toshiba ones. The PCBs are differents, flash chips too, but data is exactly same on both variations.
- Prototypes sometimes haven't a gameID, so the serial is "0000". Physical chips and PCBs seem not different from retail ones.
- Games manufactured by Samsung usually got a 48 pins flash chip and a fully green PCB (visible by looking under a closed cartridge) and Toshiba are often 40 pins flash, with a brownish PCB.
Last edited by psykopat on 26 Aug 2021 19:45, edited 1 time in total.
User avatar
Posts: 148
Joined: 14 Aug 2008 10:07

Re: About the NeoGeo Pocket

Post by psykopat »

All right, more info about that little handled. Since documentation was not easy to find online, I did my own researches about the hardware and sharing little by little here. Hope it will be useful for datters or collectors.

Cartridge PCBs
So far, three distinct models :
NP-CFL16 : are used for Toshiba flash chips, 40 pins. Games can be 4/8/16Gbits ("16" is probably for "16" Gbits max)
NP-CFL16-S : are used for Samsung flash chips, 48 pins. Games are 8 and 16 Gbits. ("-S" is probably for "Samsung")
NP-CFL32-D : are only used for 32 Gbits games. Two 16Gbits Toshiba chips are on it. Note that it's the only PCB exploiting both sides of the cart ("32" is probably for 32 Gbits, and "D" for "Dual" chips ?)

Flash chips
The last line printed on chips is the most useful one.
For Toshiba :
T8U66 or T8U66A : 4 Mbits
T8U67A : 8 Mbits
T8V12A : 16 Mbits
For Samsung :
Chips starting by "R8" are 8 Mits (R8F050AA, R8F037AA)
Chips starting by "R5" are 16 Mbits (R5FE70AA, R5H070AA)
Even before dumping them you can already have a guess on the expected rom size.

Unlike nintendo cartridges, the NGP is quite exotic. You can find the SAME game + SAME version sometimes burned on Samsung chips or sometimes on Toshiba ones. But once dumped, data is identical.
Also, the SAME game but DIFFERENT version are sometimes burned on different sized flash chips, of different brands. Lot of fun :)

Flash memory
Games are stored on flash chips, splitted into various sectors. Some of them are protected against writing commands (game data) and others are not (can be used by save data). Most of time games are storing their save data in the last sectors, but not all of them. They can be found between game data blocks as well. Note that the very last sector is reserved for the system only and must never be written.

Game ID
Software id can be found at address 0x21 and 0x20. They follow the "NEOPxxxx" code printed on cartridge's sticker, boxart etc.
Prototypes can have different values, or blank ones "0000".

Game version
Probably the most neglected info in NGP roms until now.
Stored at address 0x22. This value should REALLY be added to DoM.
I've found many revisions so far. Some of them were already dumped (and named randomly "v1.1" in dats), but others were totally unknown and undumped. I'll try to help on this, but some work clearly need to be done on the existing NGP & NGPC romsets

Unfortunately game ID and revision can't be guessed from the cart sticker, or flash chip printings. Dumping seems to be the only solution...
You do not have the required permissions to view the files attached to this post.
Last edited by psykopat on 26 Aug 2021 19:48, edited 2 times in total.
Posts: 109
Joined: 16 Jun 2014 21:09

Re: About the NeoGeo Pocket

Post by sCZther »

Great work on this!
Would be good to get some dumps from unplayed carts, to know how the save area looks from the factory.
User avatar
Posts: 148
Joined: 14 Aug 2008 10:07

Re: About the NeoGeo Pocket

Post by psykopat »

Yup. But who is going to open blisters ? :D
Here I bought a lot of different carts for experiments. That's how I found unknown revisions. All loosy of course, already opened and probably hardly played. And most of them do have savedata on chip. But a few are still virgin. All unprotected sectors totally blank. And that's fun because not all games do have in-game option to reset the save manually. Even a "soft reset" sometimes write shitty data in these sectors. So I don't know what happened with their previous owners, but I've got a few save-less games here. Quite useful to compare with the existing spreaded roms.

I'm now making a list of all strange dumps/serials existing. A few titles will really need to be redumped, and maybe some region changed in dats too. I need a bit more time. If people in the US are interested to help, message me. Many suspicious roms are from USA.
Post Reply