Xplorer carts

General information to do with the PlayStation 1 Hardware. Including modchips, pinouts, rare or obscure development equipment, etc.
User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » February 8th, 2016, 8:18 pm

You can use X-Killer > Tools > ROM Manager:
Image

Or hit select from the main menu:
Image

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » February 19th, 2016, 9:04 am

Added X-Terminator V2 to first post, basicaly same hardware as in standard Xplorer.
Image

Xplorer/Xploder/X-Terminator V1/V2/V3/Classic/Pro are certainly all the same hardware (SST 29EE020-120-4C-PH 256K x1) anyway, just with different packages/logos/roms.

Only saw different eeproms in FX cartridges so far.

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » February 24th, 2016, 2:08 am

Squaresoft74 wrote:
Shadow wrote:I've got:

Xplorer ROM V2.008 for the Standard Xplorer,
Xplorer ROM V3.20 for the Xplorer FX,
Xplorer ROM V4.52 for the Xplorer FX, and
Xplorer ROM V2.20 for the Xplorer Professional.
Are they original .fcd files or rom dumps ?
While i should have those already, can you check against my list below just in case ?

I'm trying to collect as many files as i can to build an updated X-Flash disc containing as many proper versions as possible.

So far i have:
Xploder FX (Germany) r3.16 PRO 1999-06-22 [!]
Xploder FX (Germany) r4.50 PRO 1997-05-25 [!] <--- they messed up the build date when they compiled that one ?
Xploder FX (Germany) r4.50 PRO 1999-10-25 <--- corrupted rom dump
Xploder FX (Germany) r4.52 PRO 1999-11-05 [!]
Xploder PRO (Germany) r2.19 PRO 1999-04-27 [!]
Xploder PRO (Germany) r2.19 PRO 1999-04-28 [!]
Xploder PRO (Germany) r3.3 petitPRO 1999-08-31 [!]
Xploder V1 (Germany) r1.091FT 1998-07-17
Xploder V1 (Germany) r1.97CL3 1998-10-16 [!]
Xploder V1 (USA) r1.094BP 1998-08-14
Xploder V2 (Germany) r2.005 1998-11-23
Xploder V2 (Germany) r2.008 1999-02-26
Xploder V2 (Germany) r2.0081 1999-03-08 [!]
Xploder V3 (Germany) r3.20 LIT 1999-07-30 [!]
Xplorer FX (England) r3.20 PRO 1999-07-30 [!]
Xplorer FX (England) r4.50 PRO 1999-10-25
Xplorer FX (England) r4.52 PRO 1999-11-05 [!]
Xplorer FX (England) r4.52 PRO 1999-11-22 [!]
Xplorer FX (Netherlands) r3.20 PRO 1999-07-30
Xplorer FX (Spain) r4.54 PRO 2000-05-26
Xplorer PRO (England) r2.20 PRO 1999-06-29 [!]
Xplorer V1 (England) r1.095BP 1998-08-29 [!]
Xplorer V2 (England) r2.005 1998-11-24
Xplorer V2 (England) r2.007 1999-02-10 [!]
Xplorer V2 (England) r2.008 1999-02-26 [!]
Xplorer V2 (England) r2.008 1999-03-03 [!]
Xplorer V3 (England) r3.20 LIT 1999-08-11 [!]
Xplorer V3 (Spain) r3.41 LIT 1999-10-05
X-Terminator PRO (Japan) r2.14 PRO 1999-02-17 [!]
X-Terminator PRO DX (Japan) r4.53 PRO 1999-11-22

256k roms : V1,V2,V3 (Classic)
384k roms : FX/DX

Some were made from original FCDs when i had them. (the [!] ones)

Some were made from dumps of my own carts. (the [!] ones were dumped from new carts)

Others were made from dumps found in krHACKen's overburn mod and will be replaced with roms made from original .fcd if/when if find them.

So it would be very appreciated if:
- Anyone who owns some of the files that were available from XplorerCodes or FireFly or Snakebite could share them.
- Anyone who owns a cart that has a rom version not listed above could dump and share it.

While i should be able to get a few more cartridges for my collection, i just can't afford to buy all of them for dumping purpose ! :mrgreen:
Hi there, is there any chance putting your FCD ROM collection up for download please? I'm desperately trying to find a stable version of 4.50 Pro (English UK) as my 4.52 Pro crashes during certain code searches. If I downgrade to a 2.x or 3.x ROM, it's fine but I remember my initial ROM being stable too.

There's a copy of 4.50 on the X-Flash 1.2 Beta 3 CD that Sticklebrick provided, but like you found it fails to flash due to incorrect ROM side.

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » February 24th, 2016, 6:23 am

I sent the pack to krHACKen so he can include them to his overburnmod, just keep an eye there. :)

Your Xplorer FX is a 256K double-banked (two SST 29EE020 or SST 29LE020) ?
If so X-Flash won't be able to flash 256k+ roms as it unfortunatly doesn't properly handle that model.

Luckily i have two of those so to reflash/unbrick one i can to use the hotswap trick as i mentionned here.

I didn't try yet but i recently came across this method you could give a try if you're already stuck to a 256k 3.xx or lower rom.

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » February 25th, 2016, 10:39 am

Could you please upload a blank codelist to a 4.52 UK rom please then capture via Xkiller & see if the Rom size decreases?
I think I'm right and you can get it down to 260~275kb, which should be enough to let Xlink flash a double bank back to 4.52.

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » February 25th, 2016, 10:30 pm

Ok i tried the method from the link i gave and that didn't work.

I made a backup of my rom, then cut it to 256k and saved it as "Fix.rom"

Try to flash it either :

From X-Flash CD with the rom on disc.
or
Using X-Killer but booting from X-Flash disc first without the cartridge plugged in.
When X-Flash main menu appears, plug the cart, detect eeprom using R2, enable comm using R1 then flash via X-killer.

If you can get it to boot, flash "Upgrade.rom" with X-Killer while on the Xplorer main screen.

Assuming nothing was altered on the second eeprom, that should work, i bricked my cart on purpose to try and that worked for me.

If that fails, you will need to find another working double-banked FX to do the hotswap trick.
Ultimately you could send me your card and i can perform it for you then send the card back.
Last edited by Squaresoft74 on February 28th, 2016, 1:14 am, edited 1 time in total.

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » February 25th, 2016, 10:36 pm

Many thanks, greatly appreciated - will give this a go later

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » February 26th, 2016, 7:28 am

Squaresoft74 wrote:Ok i tried the method from the link i gave and that didn't work.

I made a backup of my rom, then cut it to 256k and saved it as "Fix.rom"

Try to flash it either :

From X-Flash CD with the rom on disc.
or
Using X-Killer but booting from X-Flash disc first without the cartridge plugged in.
When X-Flash main menu appears, plug the cart, detect eeprom using R2, enable comm using R1 then flash via X-killer.

If you can get it to boot, flash "Upgrade.rom" with X-Killer while on the Xplorer main screen.

Assuming nothing was altered on the second eeprom, that should work, i bricked my cart on purpose to try and that worked for me.

If that fails, you will need to find another working double-banked FX to do the hotswap trick.
Ultimately you could send me your card and i can perform it for you then send the card back.
Again, thanks for your efforts. Unfortunately it looks like I've corrupted the secondary EEPROM's after trying to upgrade to various PRO roms:

Image

Amusingly, the 4.52 in-game trainer menu still works & loads via ON/OFF switch toggle.

If you have any other ideas, I'm more than happy to try.


Currently I have the following carts:
  • Xplorer FX (Double-bank) - 2x29EE020
    Image
  • Xplorer FX Professional (Double-bank) - 2x29LE020
    Image
Outer packaging
Image

Inside
Image

Xplorer FX 2x29EE020
Image

Xplorer FX Professional 2x29LE020
Image


Currently I've put UniROM 0.44 + Caetla NTSC + Plugin on the 2x29LE020 & 3.20 LITE onto the 2x29EE020.

Xplorer 3.20 LITE
Image

I can flash 3.20 PRO onto either cart, but it's unstable, can't make any data changes (codes, VMS) and can't upgrade to 4.5X PRO. 3.20 LITE is fully working but no VMS and restricted code list size.

I had managed to get the 2x29LE020 back to 4.52 PRO last night but stupidly flashed it via X-Link by mistake whilst uploading my code list (it had detected it as 2.20 PRO from an old instance - < 3.20 PRO = re-flash for code list updates where as >3.20 PRO just updates the list).

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » February 26th, 2016, 10:47 am

Aergan wrote: I had managed to get the 2x29LE020 back to 4.52 PRO last night but stupidly flashed it via X-Link by mistake whilst uploading my code list (it had detected it as 2.20 PRO from an old instance - < 3.20 PRO = re-flash for code list updates where as >3.20 PRO just updates the list).
Oh this is indeed a bad mistake as while on 4.52 on the 29LE020 you could have performed the hotswap trick to recover the 29EE020. :(

Do you remember exactly what version you originaly had on each ?
Maybe the 256k part i gave you doesn't match the one you had (it is from Xplorer FX (England) r4.52 PRO 1999-11-05).

I also have those we can try the same trick with:
Xplorer FX (England) r3.20 PRO 1999-07-30 // not sure if the upgrade modul in that one handle double banked eeproms.
Xplorer FX (England) r4.50 PRO 1999-10-25
Xplorer FX (England) r4.52 PRO 1999-11-22

Please dump your both cartridges as they are now and and attach the files so i can check on my side.
Aergan wrote:If you have any other ideas
1 - You could send me the device so i can perform the hotswap trick, but i'm in France, so maybe getting another working double banked cart to do it yourself could be cheaper than shipping costs.

2 - Someone with the required knowledge could code another tool similar to X-Flash but handling properly these models.

3 - Someone with the required knowledge could code a homebrew/UniRom plugin that would allow to load and execute Xplorer roms from a disc.
If this is something that can be done, that may allow to then plug the cart and reflash/unbrick/upgrade it with X-Killer.
You wouldn't need a second working device anymore.

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » March 2nd, 2016, 4:57 am

Cheers for all your efforts Squaresoft74.

I've managed to source another Xplorer FX from Germany (these are getting harder to come by when you actually need one). I used the swap method to resurrect both carts, then flash one back to UniROM. I'm going to box the latest one up with a label to something to the effect of "In case of Emergency; Boot Me".

Both carts are functioning well and I've restored my original code list to my "stock" 4.52 PRO cart.

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » March 2nd, 2016, 2:26 pm

Glad to see you could fix everything. :)
Yes put the third one in a secure place as it's getting easy when you have multiple carts to mix them up and flash the wrong one :?

Just to make sure, that third one you got is also a double banked one ?
And did you dump it ?

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » July 14th, 2016, 7:42 pm

Updated first post with a few more cartridges pictures.

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » July 16th, 2016, 9:30 pm

Squaresoft74 wrote:Glad to see you could fix everything. :)
Yes put the third one in a secure place as it's getting easy when you have multiple carts to mix them up and flash the wrong one :?

Just to make sure, that third one you got is also a double banked one ?
And did you dump it ?
All 3 are SST double-banked carts. Two are using the same revision chips (29LE020), the other is 29EE020.

User avatar
nocash
Verified
PSX Aficionado
PSX Aficionado
Posts: 541
Joined: Nov 12, 2012
Contact:

Post by nocash » July 16th, 2016, 10:23 pm

Why do you have 29LE020 chips in there? The datasheet says
– 5.0V-only for SST29EE020
– 3.0-3.6V for SST29LE020
– 2.7-3.6V for SST29VE020
The "LE" chip would be actually better for the PSX voltages... but the Xplorer carts are using 5V supply for all chips. Unless you have a different PCB version that uses 3.5V for the EEPROM chips? Can you make a photo of the PCB back side (for the cart with those "LE" chips)?
Would be interesting to see where the EEPROM supply is wired to. And to see if it's an uncommon PCB version (the two boards known to me are "PXT6" (with solder pads for one PLCC EEPROM) and "PXT6-3" (with pads for two PLCC EEPROMs, and pads for SRAM/GAL in alternate packages). Oh, and the voltage regulator (the black thing with three pins) is still a 5V-regulator (maked "7805") even on the board with "LE" chips?

Aside from the suspicious looking voltage, the "LE" chip should also have a different chip ID so some programming tools may fail on the chip identifications (good to know that the chip is used in some carts, I'll add support for it in my own software).
The homebrew xkiller/xflash seem to support a lot of random chip types (even such that were probably never used in xplorer carts), and the xplorer's built-in upgrade function does only check the maker byte for SST chips (and completely ignores the device byte on SST chips).

EDIT: Just noticed, the SRAM on the board with the "LE" is also low-voltage, from datasheet
- KM68V1000B family : 3.0~3.6V <--- whould be best for PSX (as long as it isn't wired to the xplorer's 5V supply)
- KM68U1000B family : 2.7~3.3V <--- very low voltage (the one you have on the board)

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » July 17th, 2016, 5:33 am

I've had identification issues with the LE one, you're quite correct. Verified it though on the chips themselves:
http://i.imgur.com/EC2Fm9n.jpg

I'll get updated photos soon.

Oh if it makes a difference, the non LE Xplorer FX one was a preorder via Gameplay.com (UK e-tailer, remember them?) so was one of the first into the UK for distribution. The FX Professional and 2nd Xplorer FX (imported recently from Germany) are likely later revisions of the same hardware.

Aergan
Curious PSXDEV User
Curious PSXDEV User
Posts: 23
Joined: Jul 26, 2015
Motto: Not today.
PlayStation Model: SCPH-7502b
Location: Staffordshire, UK
Contact:

Post by Aergan » July 17th, 2016, 6:18 am

nocash wrote:Why do you have 29LE020 chips in there? The datasheet says
– 5.0V-only for SST29EE020
– 3.0-3.6V for SST29LE020
– 2.7-3.6V for SST29VE020
The "LE" chip would be actually better for the PSX voltages... but the Xplorer carts are using 5V supply for all chips. Unless you have a different PCB version that uses 3.5V for the EEPROM chips? Can you make a photo of the PCB back side (for the cart with those "LE" chips)?
Here's some further photos of the PXT6-3 version of the "Xplorer FX Professional" model:


Voltage regulator is an NEC 78L05 ACP99

My other Xplorer FX (one from Germany) has an identical board to this but in a standard Xplorer FX stylised housing. It's only the silkscreen that's different anyway,

Feel free to add them into the thread.

User avatar
Squaresoft74
Verified
/// PSXDEV | ELITE ///
/// PSXDEV | ELITE ///
Posts: 303
Joined: Jan 07, 2016
PlayStation Model: SCPH-7502
Location: France
Contact:

Post by Squaresoft74 » July 17th, 2016, 10:06 am

Aergan wrote:Feel free to add them into the thread.
Added to first post, thank you. :)
nocash wrote: (the two boards known to me are "PXT6" (with solder pads for one PLCC EEPROM) and "PXT6-3" (with pads for two PLCC EEPROMs, and pads for SRAM/GAL in alternate packages)
My Xplorer FX Professional and X-Terminator PRO DX (both Winbond models), don't have any reference at all on their PCB.
I'll add pictures of the solder side.

*edit*
Here it is:
Image

User avatar
nocash
Verified
PSX Aficionado
PSX Aficionado
Posts: 541
Joined: Nov 12, 2012
Contact:

Post by nocash » July 19th, 2016, 1:32 am

Oh, that board really lacks the board name, and also lacks the COMP SIDE and SOLDER SIDE text. Chronologically it must be dated somewhere between "PXT6" and "PXT6-3" boards (since it's already having the alternate solder pads for smaller GAL & SRAM packages, but doesn't yet have solder pads for a second PLCC EEPROM).

User avatar
nocash
Verified
PSX Aficionado
PSX Aficionado
Posts: 541
Joined: Nov 12, 2012
Contact:

Post by nocash » July 23rd, 2016, 8:43 am

Here's a list of SRAM types spotted on Xplorer boards (mostly from above photos):

Code: Select all

  N/A                       (boards without SRAM)
  Hitachi HM628128BLFP-8    (128Kx8, in bigger SMD package)
  Toshiba TC551001BFTL-10V  (128Kx8, in smaller SMD package)
  NEC uPD431000 (or so?)    (128Kx8, in bigger SMD package)
  Mitsubishi M5M51008AFP    (128Kx8, in either bigger or smaller SMD package)
  Mitsubishi M5M51008BFP    (128Kx8, in smaller SMD package)
  SEC KM68U1000BLTE-10L     (128Kx8, in smaller SMD package... 2.7-3.3V !!)
The 2.7-3.3V chip seems to be some weird mistake, maybe the board manufacturer got the that SRAM type for cheap & didn't care about voltages, or maybe they believed that it would work better with the PSX's low voltage signals, but as it's wired to 5V supply (btw. thanks for the photo), it's effectively running "in 5V mode" just like normal 5V chips, the main difference is that it'll probably have a reduced lifetime.
Other than that, the SRAMs should be all compatible with each other, no matter what manufacturer they are from. And, as it seems, all Xplorer boards are having 128Kx8 SRAMs (or NONE), although the PCB & GAL would theoretically support other sizes (up to max 512Kx8 SRAM, in four 128K banks).

And, the Xplorer's FLASH/EEPROM chips... I've extracted the device table from "XFLASH v1.2 beta 3", reformatted it a bit, and added some comments... Some of the chips in that table are probably found only in Datel PAR carts, not Xplorer carts.

Code: Select all

 Make,Dev,  Size,Page, ?? ,'Name..............' ;Supported Used
 01Fh,0D5h, 128K, 128, 10 ,'ATMEL AT29C010A   ' ;v1.091    ??   (probably for older/prototype versions, the chip is only 128Kbyte, which should be too small even for the old version v1.091)
 01Fh,035h, 128K, 128, 20 ,'ATMEL AT29LV010A  ' ;-         -
 01Fh,0DAh, 256K, 256, 10 ,'ATMEL AT29C020    ' ;v4.52     ??
 01Fh,0BAh, 256K, 256, 20 ,'ATMEL AT29BV020   ' ;v4.52     ??   (29LV and/or 29BV ?)
 01Fh,0A4h, 512K, 256, 10 ,'ATMEL AT29C040A   ' ;v4.52     yes
 01Fh,0C4h, 512K, 256, 20 ,'ATMEL AT29xV040A  ' ;-         -    (not in idcodes.txt)
 0BFh,007h, 128K, 128, 10 ,'SST SST29EE010    ' ;-         -
 0BFh,008h, 128K, 128, 10 ,'SST SST29xE010    ' ;-         -
 0BFh,022h, 128K, 128, 10 ,'SST SST29EE010A   ' ;-         -    (not in idcodes.txt)
 0BFh,023h, 128K, 128, 10 ,'SST SST29xE010A   ' ;-         -    (but idcodes.txt says 3-byte ID 0BFh,023h,0xxh for SST39VFxx0x chips!)
 0BFh,010h, 256K, 128, 10 ,'SST SST29EE020    ' ;v4.52     yes
 0BFh,012h, 256K, 128, 10 ,'SST SST29xE020    ' ;v4.52     yes
 0BFh,024h, 256K, 128, 10 ,'SST SST29EE020A   ' ;-         -    (not in idcodes.txt)
 0BFh,025h, 256K, 128, 10 ,'SST SST2xEE020A   ' ;-         -    (but idcodes.txt says 3-byte ID 0BFh,025h,0xxh for SST25VF0xx chips!)
 0BFh,004h, 512K, 256,  0 ,'SST SST28SF040    ' ;??        ??   SST with page_size=100h ?  (28SF or 28LF ?) (said to be used in "AR/GS Pro")
 0DAh,0C1h, 128K, 128, 10 ,'WINBOND W29EE01x  ' ;-         -
 0DAh,045h, 256K, 128, 10 ,'WINBOND W29C020   ' ;??        ??   but the TWO chip detection does handle TWO of these chips?
 0DAh,046h, 512K, 256, 10 ,'WINBOND W29C040   ' ;v4.52     yes
 000h,000h,   0K,   0,  0 ,'UNKNOWN           ' ;end of list
The Xplorer firmware does also contain FLASH writing support, including chip ID detections, but it's very ugly detection code: Often only checking the Device ID in some cases, or only checking the Maker ID in other cases, so without knowing the Device+Maker ID pair, it's hard to say which exact chip(s) they were trying to detect.
There are some code sections that seem to be solely intended for Atmel Device IDs, so, although the Atmel Maker ID isn't checked, one can assume that those Device belong to Atmel chips.
Another section is checking Device IDs for 256K chips from different manufacturers (related to detecting carts with two 256K chips), so although the Maker ID's of those chips are unknown, one does at least know their size, and combined with PCB photos & the XFLASH device list one can guess what manufacturer they should belong to.
The chips marked "v4.52" should be supported in firmware v4.52. Firmware v1.091 does also support most of those chips (but not all) (and it supports only 1x256K or 1x512K, but not 2x256K). Additionally, v1.091 has some support for detecting a 128K chip, but that's probably just some prototype relict - or are there any Xplorer carts with only 128K of memory?

Btw. a nice compact list with chip IDs can be found here: http://www.cnc-lab.com/idcodes.txt (might be useful when dealing with chip detection, though the Xplorer firmware seems to support only IDs listed above).

Actually detecting the chips is a bit difficult (even when knowing their ID values). The first problem are carts with TWO 256K chips, which, the raw ID values will just identify them as 256K, without telling if there are one or two chips. The Xplorer firmware is solving that as so:

Code: Select all

  If Chip ID indicates 256K then
    Set ONE chip to Get ID mode (and leave other chip in normal mode)
    Compare the first 400h bytes from Chip1 and Chip2
    If result is Different, then assume TWO chips
That method should work quite well (it could only fail if somebody would (intentionally) re-program one of the chip(s) to contain the ID values from the (other) chip. Additionally, one could compare the chip contents in non-ID mode (that might fail if both contain the same data, eg. if both are erased). And additionally, one could also compare both chips in ID mode (apart from the ID bytes, the SST chips are also containing BCD manufacturing date (YY,MM,DD) and some serial/batch number, so it's quite possible that they return different values in ID mode, unless both chips have been manufactured at same date/batch).

Here are some ID Mode values dumped from three Xplorer carts (one cart with one SST chip, one cart with two SST chips, and one cart with one Atmel chip):

Code: Select all

SST 29EE020 EEPROM - ID Mode
single-chip cart:
  (package YYWW = 9814)
  00000  BF 10 BF 10 BF 01 BF 10 BF 10 BF 10 BF 01 BF 10   ;<-- 2x "01"
  00010  BF 10 BF 00 00 04 08 06 07 00 01 00 00 00 BF 10   ;<-- serial/batch?
  00020  BF 10 BF 10 98 04 19 10 BF 10 00 10 BF 10 BF 00   ;<-- date and 00,00
  00030  BF 10 BF 10 BF 10 BF 10 BF 10 BF 10 BF 10 BF 10   ;<-- nothing special
  00040  BF 10 BF 10 BF 10 BF 10 BF 10 BF 10 BF 10 BF 10   ;<-- nothing special
  00050  BF 10 BF 10 BF 10 BF 10 FF FF FF FF FF FF FF FF   ;<-- 8x "FF"
  00060  00 10 00 10 00 10 00 10 00 10 00 10 00 10 00 10   ;<-- 8x "00 10"
  00070  00 10 00 10 00 10 00 10 00 10 00 5D BF 10 BF 10   ;<-- specials 00,5D
  00080  00 00 00 ...                                      ;  ...    00 00 00 ...                                      ; zerofilled
  003F0  00 00 00 ...                                      ;/
  00400  mirrors of 00000..003FF                           ;-mirrors
chip 1 of dual-chip cart (same as above single-chip cart, except):
  (package YYWW = 9940)
  00010  BF 10 BF 09 09 02 04 02 01 00 00 00 00 00 BF 10   ;<-- serial/batch?
  00020  BF 10 BF 10 99 10 12 10 BF 10 00 10 BF 10 BF 07   ;<-- date and 00,07
  00070  00 10 00 10 00 10 00 10 00 10 00 59 BF 10 BF 10   ;<-- specials 00,59
chip 2 of dual-chip cart (same as above chip 1, except):
  (package YYWW = 9939)
  00010  xF 10 xF 09 09 02 01 03 06 00 00 00 00 00 xF 10   ;<-- serial/batch?
  00020  xF 10 xF 10 99 10 10 10 xF 10 00 10 xF 10 xF 00   ;<-- date and 00,00
  and, "BF" at 00000 is there, but all other "BF"'s at 00002..0007E are "3F"

AT29C040A FLASH - ID Mode
  00000  1F A4 FE FF FF 8B FF FF FF FF FF FF FF FF FF FF   ;<-- ID and FE and 8B
  00010  FF FF FE FF FF FF FF FF FF FF FF FF FF FF FF FF   ;\empty FF-filled,
  ...    FF FF FE FF FF FF FF FF FF FF FF FF FF FF FF FF   ; aside from the FE's
  000F0  FF FF FE FF FF FF FF FF FF FF FF FF FF FF FF FF   ;/
  00100  mirrors of 00000..000FF                           ;-mirrors
Note: [00002h] and [7FFF2h] indicate lower/higher 16Kbyte boot block locking
(FEh=normal, FFh=locked).
I don't have a Winbond chip, so no idea if/which extra values it might return in ID mode.

And, the most scary part about chip detection: There are two Get ID commands:
AA-55-90 ---> standard 3-byte JEDEC command, and
AA-55-80,AA-55-60 ---> alternate 6-byte command
Both commands are described in the SST datasheet, and the datasheet suggests to use the 3-byte command. Nethertheless, the Xplorer firmware is using the weird 6-byte command (for Winbond and SST chips) (and uses the 3-byte command for Atmel chips).
From my tests, SST29EE020 responds to both 3-byte and 6-byte commands (and returns the same values in either case). And ATMEL AT29C040A works only with the 3-byte command (and acts weird on the 6-byte command: it seems to enter the "toggle bit" mode for some milliseconds (as if it were writing/erasing memory), and then resumes to normal non-ID mode).
Anyway, as the firmware is using the 6-bytes command... are there any cases where it is required to use that command... for Xplorer carts with very old chips maybe?

And, one small caution: The Get ID and Exit ID commands don't seem to react immediatly. The datasheets suggest waiting 10us before reading the ID. Without the wait, I am getting values 1F and 5F as ID (ie. the chips seem to be in "Toggle Bit" mode at least for a short moment). So, one could either stick with the official "wait 10us", or wait for the undocumented "toggle bit" effect (or combine both waits). Or, for totally sticking with official timings: Wait "10ms" on Get ID/Exit ID (as defined in the AT29C040A datasheet, but I guess/hope that THAT must be a typo).

User avatar
Greg
Verified
Serious PSXDEV User
Serious PSXDEV User
Posts: 101
Joined: Sep 09, 2013
PlayStation Model: SCPH-7501
Location: Port-au-Prince, HAITI

Post by Greg » July 23rd, 2016, 12:53 pm

nocash wrote: ...
And, the Xplorer's FLASH/EEPROM chips... I've extracted the device table from "XFLASH v1.2 beta 3", reformatted it a bit, and added some comments... Some of the chips in that table are probably found only in Datel PAR carts, not Xplorer carts.

Code: Select all

 Make,Dev,  Size,Page, ?? ,'Name..............' ;Supported Used
 01Fh,0D5h, 128K, 128, 10 ,'ATMEL AT29C010A   ' ;v1.091    ??   (probably for older/prototype versions, the chip is only 128Kbyte, which should be too small even for the old version v1.091)
 01Fh,035h, 128K, 128, 20 ,'ATMEL AT29LV010A  ' ;-         -
 01Fh,0DAh, 256K, 256, 10 ,'ATMEL AT29C020    ' ;v4.52     ??
 01Fh,0BAh, 256K, 256, 20 ,'ATMEL AT29BV020   ' ;v4.52     ??   (29LV and/or 29BV ?)
 01Fh,0A4h, 512K, 256, 10 ,'ATMEL AT29C040A   ' ;v4.52     yes
 01Fh,0C4h, 512K, 256, 20 ,'ATMEL AT29xV040A  ' ;-         -    (not in idcodes.txt)
 0BFh,007h, 128K, 128, 10 ,'SST SST29EE010    ' ;-         -
 0BFh,008h, 128K, 128, 10 ,'SST SST29xE010    ' ;-         -
 0BFh,022h, 128K, 128, 10 ,'SST SST29EE010A   ' ;-         -    (not in idcodes.txt)
 0BFh,023h, 128K, 128, 10 ,'SST SST29xE010A   ' ;-         -    (but idcodes.txt says 3-byte ID 0BFh,023h,0xxh for SST39VFxx0x chips!)
 0BFh,010h, 256K, 128, 10 ,'SST SST29EE020    ' ;v4.52     yes
 0BFh,012h, 256K, 128, 10 ,'SST SST29xE020    ' ;v4.52     yes
 0BFh,024h, 256K, 128, 10 ,'SST SST29EE020A   ' ;-         -    (not in idcodes.txt)
 0BFh,025h, 256K, 128, 10 ,'SST SST2xEE020A   ' ;-         -    (but idcodes.txt says 3-byte ID 0BFh,025h,0xxh for SST25VF0xx chips!)
 0BFh,004h, 512K, 256,  0 ,'SST SST28SF040    ' ;??        ??   SST with page_size=100h ?  (28SF or 28LF ?) (said to be used in "AR/GS Pro")
 0DAh,0C1h, 128K, 128, 10 ,'WINBOND W29EE01x  ' ;-         -
 0DAh,045h, 256K, 128, 10 ,'WINBOND W29C020   ' ;??        ??   but the TWO chip detection does handle TWO of these chips?
 0DAh,046h, 512K, 256, 10 ,'WINBOND W29C040   ' ;v4.52     yes
 000h,000h,   0K,   0,  0 ,'UNKNOWN           ' ;end of list
...
I think the 10 and 20 in the column #5 are the "Fast Sector Program Cycle Time Max time" as is 10ms for "ATMEL AT29C040A" and 20ms for "ATMEL AT29BV020" according to the data sheet of each one.
1 x SCPH-7501, 2 x SCPH-7001, 2 x SCPH-5501
1 x Pro Action Replay with "Dual Rom Mod", ROM 1: Caetla, ROM 2: UNIROM
1 x Xplorer V2 with Caetla
1 x GameShark V2.1
1 x GameShark Pro V3.0
1 x CommLinkUSB
1 x XLinkUSB

Post Reply

Who is online

Users browsing this forum: No registered users and 6 guests