Analysis based on method found at ff30f8 (so 0x30F8 in BIOS)
This was probably already shared but something bugged me so I looked at it myself.
=> Does the manufucter code is related to size or any size could be used with any manufacturer ?
Please correct me!!!
To read info about current ROM, BIOS first enable CFI
write 0xAA at 0x??5555
write 0x55 at 0x??2AAA
write 0x90 at 0x??5555
First read a 0x??0000 is manufacture code
- 0x98 -> Toshiba
- 0xEC -> Samsung
- 0xB0 -> Sharp
Read custom Id at 0x??0003
- byte should a value between 0x80 to 0x87
Read size at 0x??0001
- 0xAB -> 512K -> 10th block reserved for system (see BIOS 0x2EC0)
- 0x2C -> 1M -> 18th
- 0X2F -> 2M -> 34th
Read custom id at 0x??0002
- at 0x200000+ (lo ROM), this value should be the same for EACH block, else game will reset
- at 0x800000+ (hi ROM), if it's 1, it seems to enable developer mode, with auto watchdog clear, etc.... (see BIOS 0x1DC0)
Based on this, it seems there is no link between manufacturerID and sizeID
This was probably already shared but something bugged me so I looked at it myself.
=> Does the manufucter code is related to size or any size could be used with any manufacturer ?
Please correct me!!!
To read info about current ROM, BIOS first enable CFI
write 0xAA at 0x??5555
write 0x55 at 0x??2AAA
write 0x90 at 0x??5555
First read a 0x??0000 is manufacture code
- 0x98 -> Toshiba
- 0xEC -> Samsung
- 0xB0 -> Sharp
Read custom Id at 0x??0003
- byte should a value between 0x80 to 0x87
Read size at 0x??0001
- 0xAB -> 512K -> 10th block reserved for system (see BIOS 0x2EC0)
- 0x2C -> 1M -> 18th
- 0X2F -> 2M -> 34th
Read custom id at 0x??0002
- at 0x200000+ (lo ROM), this value should be the same for EACH block, else game will reset
- at 0x800000+ (hi ROM), if it's 1, it seems to enable developer mode, with auto watchdog clear, etc.... (see BIOS 0x1DC0)
Based on this, it seems there is no link between manufacturerID and sizeID