UniFlash

The only universal flash utility

[Home] | [Download] | [Version history] | [Supported hardware] | [Compatibility tests]


Here's the minimum configuration you need to run UniFlash:

Supported chipsets

Manufacturer and chipset type Comments
Intel
* Triton 430FX No comments It works in 99% of cases
* Triton II 430HX
* Triton II 430VX
* Triton III 430TX
* Mobile 430MX
  Natoma 440FX
* AGPSet 440LX/EX
  450KX/GX
  Mecrucy 430LX
  Neptune 430NX
* AGPSet 440BX/ZX
  AGPSet 440GX
* i810 i810 tested and works OK, others should too
  i810E
  i810E2
  i815(P/G)
* i815E(P/G)
  i815EM
  i820
  i820E
  i830M(P/G)
  i840
  i845
  i845E
  i845G(E/L/V)/845PE
  i845MP/MZ
  i850(E)
* i852GM/855GM
  i855PM
  i860
  i865P(E)/G(V)/848P
  i875P
  E7205
  E7210
  E7221
  E7320
  E7500
  E7501
  E7505
  E7520
  E7525
  E8870
* i910/915/925 series
  mobile 910/925 series
VIA
  486 with VT82C505 486 chipsets with VT82C505 PCI bridge
  Apollo Master  
  Apollo VP
* Apollo VPX
* Apollo VP2
  Apollo VP3
* Apollo MVP3
  Apollo P6
  Apollo MVP4
* Apollo Pro
* Apollo Pro Plus/133
* Apollo Pro 133A If you have "Flash Write protect" in BIOS, disable it and it should work.
* Apollo ProMedia
  Apollo Pro 133Z/PM133
  Apollo KX133
* Apollo KT133(A)
  ProSavage KM133(A)
* Apollo KT266(A)/KT333
* Apollo KT400(A)
* UniChrome KM400(A)
  Apollo Pro 266
  Apollo Pro 266T These North Bridges are detected, but aren't used in any VIA's chipset (??):
VT8662, VT8615, VT8361, VT3133
  ProSavage P4M266
* P4X266(A)/P4X333/400
AMD
* AMD 640 (same as VIA Apollo VP2) Works just fine
  AMD 750 UniFlash supports true AMD chipsets since version 1.20. Their registers are very similar to VIA. AMD 760 should work with both VIA and AMD (does it really exist?) south bridges.
# AMD 760
  AMD 760MP
* AMD 760MPX
  AMD 8000  
  Geode SC1100 Geode bought from National, these chips have integrated south bridge
  Geode SCx200
SiS
* 85C496+497 I got the datasheets, but not from SiS.

To support 12 chipsets, I needed to write 5 different methods of enabling Flash ROM write access. (The more code, the more bugs :-)

All SiS South Bridges have the same device ID $0008 (SiS 540 and 630 can have either $0008 or $0018 - it can be configured(!!!) through registers.

* 501/5101/5501
  5511
  5571
* 5591/5592
  5596
* 5597/5598/5581/5120
* 530
  540 Boards with the new chipsets (540 and 630 and up) have often ITE IT8705F LPC Super IO (also called SiS 950 sometimes) which allows to use regular Flash ROM on LPC bus.

It's tested and works.

  600
* 620
* 630
  635
  640
  645
  645DX
  648
  650
  651
  655
  730
  733
* 735
  740
* 745
  746
* 748
  755
ALi
* FinALi 486 FinALi has very weird Flash ROM access but finally it works correctly.
* Aladdin <- The 1st ALi Pentium chipset
  Aladdin III  
  Aladdin IV/IV+ All chipsets with M1533/M1543/M1535 South Bridge should work.
* Aladdin V
  Aladdin 7
* Aladdin Pro/Pro II
  Aladdin Pro III Aladdin TNT2
  CyberBLADE Aladdin i1 Unlisted chipsets are not fully detected, but should work if they use M1533/43/35 or M1523 South Bridge.
  Aladdin Pro IV
* ALiMAGiK 1
  Aladdin Pro 5(T/M)
  Aladdin-P4
  CyberAladdin-P4
SMSC
  VictoryBX-66 i82443BX North Bridge with SMSC SLC90E66 South Bridge (UDMA-66 support)
Winbond/Symphony Labs
  W83C553F/4F South Bridge, probably very rare thing
* Winbond W83697(H)F LPC Super I/Os with Flash ROM support
  Winbond W83697SF
  Winbond W83697UF
  Winbond W83627(H)F LPC Super I/Os without Flash ROM interface
* Winbond W83627SF/GF
  Winbond W83627THF
  Winbond W83637HF
ITE
  IT8871F/2F and IT8888F South Bridges Don't know where used, untested. (No known chipset with these SBs)
* IT8700F/8705F LPC Super I/Os with Flash ROM support
(used with SiS 540, SiS 630 and newer)
  IT8710
  IT8702F LPC Super I/Os without Flash ROM interface
  IT8711F
  IT8712F
  IT8722F
Reliance/ServerWorks
  ServerSet III LE All chipsets with OSB4 South Bridge should work.
I don't have any official info.
  ServerSet III HE
National/PicoPower
  Vesuvius-LS Never seen this one.
National/Cyrix
  Geode GX1 (MediaGX) With Cx5510, Cx5520 and Cx5530(A) chips. New Geode chips are AMD.
OPTi
* Viper M/N/NK/N+/DP Tested and works
  Viper Max/Vendetta Untested, but should work too
HiNT
  VXPro-II Used on some PC Chips boards (like M559). I think that it's Utron UC85C501/502
UMC
* UM8881F+UM8886BF Don't have any datasheets, tested and works
Micron
  Copperhead+Coppertail Has no flash write protection.
Contaq/Cypress
  hyperCache CY82C691+CY82C693(U/UB)
  386/486 with PCI CY82C596/597+CY82C599
nVidia
* nForce Tested and works
# nForce2 nForce2 might not work

Support for specific boards
These boards use non-standard write protection using general purpose outputs (GPOs) of the chipset.
They're detected by reading the BIOS ID string from the top of 4GB. This means that the correct BIOS MUST be present in the socket when starting UniFlash or the flashing will not work.

These boards detected using DMI - by using board vendor, name and version:

PCI/AGP Cards with specific support in UniFlash:
(currently untested)

Cards with no specific support in UniFlash:
* Adaptec 19160/29160N (AIC-7892B chip) - Winbond W29EE512
* Adaptec 39160
# AdvanSys ASB-3940UA
# ATI Rage Magnum AGP
# Matrox Millennium PCI
* SIIG SC-PE4612 IDE controller (HighPoint HPT366) - SST 39SF010

Supported flash ROMs

Flash ROM manufacturer and type Size
Alliance Semiconductor
  AS29F040 512KB
  AS29F002T 256KB
  AS29F002B 256KB
  AS29F200T 256KB
  AS29F200B 256KB
  AS29LV400T 512KB
  AS29LV400B 512KB
  AS29LV800T 1024KB
  AS29LV800B 1024KB
AMD
  Am28F256 32KB
  Am28F256A 32KB
  Am28F512 64KB
  Am28F512A 64KB
  Am28F010 128KB
  Am28F010A 128KB
  Am28F020 256KB
  Am28F020A 256KB
* Am29F010(A/B) 128KB
* Am29F040(B) 512KB
  Am29F080(B) 1024KB
  Am29F016(B) 2048KB
  Am29F017B 2048KB
  Am29F032B 4096KB
  Am29F100T 128KB
  Am29F100B 128KB
  Am29F200AT/BT 256KB
  Am29F200AB/BB 256KB
  Am29F400AT/BT 512KB
  Am29F400AB/BB 512KB
  Am29F800(B)T 1024KB
  Am29F800(B)B 1024KB
  Am29F160DT 2048KB
  Am29F160DB 2048KB
* Am29F002(N)(B)T 256KB
  Am29F002(N)(B)B 256KB
  Am29F004BT 512KB
  Am29F004BB 512KB
  Am29LV010B 128KB
  Am29LV040B 512KB
  Am29LV017B 2048KB
  Am29LV033C 4096KB
  Am29LV065D 8192KB
  Am29LV081B 1024KB
  Am29LV001BT 128KB
  Am29LV001BB 128KB
  Am29LV002(B)T 256KB
  Am29LV002(B)B 256KB
  Am29LV004(B)T 512KB
  Am29LV004(B)B 512KB
  Am29LV008(B)T 1024KB
  Am29LV008(B)B 1024KB
  Am29LV200(B)T 256KB
  Am29LV200(B)B 256KB
  Am29LV400(B)T 512KB
  Am29LV400(B)B 512KB
  Am29LV800BT 1024KB
  Am29LV800BB 1024KB
  Am29LV160BT/DT 2048KB
  Am29LV160BB/DB 2048KB
  Am29LV116BT 2048KB
  Am29LV116BB 2048KB
  Am29LV320DT 4096KB
  Am29LV320DB 4096KB
  Am29SL800CT 1024KB
  Am29SL800CB 1024KB
  Am29SL160CT 2048KB
  Am29SL160CB 2048KB
  Am29PL160CB 2048KB
AMIC
  A29010 128KB
  A29040(A/B) 512KB
  A29001(1)T 128KB
  A29001(1)B 128KB
* A29002(1)T 256KB
  A29002(1)B 256KB
  A29400T 512KB
  A29400B 512KB
  A29800T 1024KB
  A29800B 1024KB
  A29L040 512KB
  A29L004T/400T 512KB
  A29L004B/400B 512KB
  A29L008T/800T 1024KB
  A29L008B/800B 1024KB
  A29L160T 2048KB
  A29L160B 2048KB
ASD
* AE29F1008 = Winbond W29EE011 128KB
* AE29F2008 = Winbond W29C020(C) 256KB
* AE49F2008 = Winbond W49F002U 256KB
Atmel
  AT29C256 or AT29C257 32KB
  AT29C512 64KB
* AT29C010(A) 128KB
  AT29C020(A) 256KB
  AT29C040A 512KB
  AT29LV256 32KB
  AT29LV512 64KB
  AT29xV010(A) series 128KB
  AT29xV020 series 256KB
  AT29xV040A series 512KB
  AT49x512 series 64KB
  AT49x001(A)(N)T series 128KB
  AT49x001(A)(N) series 128KB
* AT49x002(A)(N)T series 256KB
  AT49x002(A)(N) series 256KB
  AT49x008AT series 1024KB
  AT49x008(A) series 1024KB
  AT49x010 series 128KB
  AT49x020 series 256KB
  AT49x040(A) series 512KB
  AT49x080 series 1024KB
  AT49x080T series 1024KB
  AT49x2048(A) series 256KB
  AT49x4096(A) series 512KB
  AT49x8011T series 1024KB
  AT49x8011 series 1024KB
  AT49x160/161(4)T series 2048KB
  AT49x160/161(4) series 2048KB
  AT49BV320T/321T 4096KB
  AT49BV320/321 4096KB
  AT49LH002 (LPC/FWH) 256KB
  AT49LH004 (LPC/FWH) 512KB
  AT49LH00B4 (LPC/FWH) 512KB
* AT49LW080 (Firmware Hub) 1024KB
Bright Microelectronics
  BM29F040 = Hyundai HY29F040 512KB
  BM29F400T = Hyundai HY29F400T 512KB
  BM29F400B = Hyundai HY29F400B 512KB
Catalyst
  CAT28F512 64KB
* CAT28F010 128KB
  CAT28F015T 192KB
  CAT28F015B 192KB
  CAT28F020 256KB
* CAT28F001T 128KB
* CAT28F001B 128KB
  CAT28F002T 256KB
  CAT28F002B 256KB
  CAT28F150T 192KB
  CAT28F150B 192KB
  CAT29F(N)002T 256KB
  CAT29F(N)002B 256KB
EON
  EN29F512 64KB
  EN29F010 128KB
  EN29F040(A) 512KB
  EN29F080 1024KB
* EN29F002(A)T 256KB
  EN29F002(A)B 256KB
  EN29F800T 1024KB
  EN29F800B 1024KB
  EN29LV512 64KB
  EN29LV010 128KB
  EN29LV040 512KB
  EN29LV400T 512KB
  EN29LV400B 512KB
  EN29LV800(A)T 1024KB
  EN29LV800(A)B 1024KB
  EN29LV160T 2048KB
  EN29LV160B 2048KB
Fujitsu
  MBM29F002TC 256KB
  MBM29F002BC 256KB
  MBM29F200TC 256KB
  MBM29F200BC 256KB
  MBM29F400TC 512KB
  MBM29F400BC 512KB
  MBM29F040C 512KB
  MBM29F033C 4096KB
  MBM29LV160TE 2048KB
  MBM29LV160BE 2048KB
  MBM29PL160TD 2048KB
  MBM29PL160BD 2048KB
H.T.
* M21561 = Macronix MX28F1000P 128KB
* M21032T = Macronix MX28F1000P 128KB
* M20271H = Macronix MX28F1000P 128KB
Hyundai
  HY29F040 512KB
  HY29F040A 512KB
  HY29F080 1024KB
  HY29F002T 256KB
  HY29F002B 256KB
  HY29F400T 512KB
  HY29F400B 512KB
  HY29F800T 1024KB
  HY29F800B 1024KB
  HY29LV160T 2048KB
  HY29LV160B 2048KB
IMT
  IM29F001T 128KB
  IM29F001B 128KB
  IM29F002T 256KB
  IM29F002B 256KB
  IM29F004T 512KB
  IM29F004B 512KB
  IM29LV001T 128KB
  IM29LV001B 128KB
  IM29LV004T 512KB
  IM29LV004B 512KB
Intel
  28F256(A) 32KB
  28F512 64KB
* 28F010 128KB
  28F020 256KB
* 28F001BX/BN-T 128KB
  28F001BX/BN-B 128KB
  28F002-T series 256KB
  28F002-B series 256KB
# 28F004-T series 512KB
  28F004-B series 512KB
  28F008-T series 1024KB
  28F008-B series 1024KB
  28F008SA 1024KB
  28F004Sx series 512KB
  28F008Sx series 1024KB
  28F016Sx series 2048KB
  28F016S5 2048KB
  28F004B3-T 512KB
  28F004B3-B 512KB
  28F008B3-T 1024KB
  28F008B3-B 1024KB
  28F016B3-T 2048KB
  28F016B3-B 2048KB
  28F320J5 4096KB
  28F320J3A 4096KB
  28F640J5 8192KB
  28F640J3A 8192KB
  28F128J3A 16384KB
* 82802AB (Firmware Hub) 512KB
* 82802AC (Firmware Hub) 1024KB
ISSI
  IS28F010 128KB
  IS28F020 256KB
Macronix
* MX28F1000 128KB
* MX28F1000P 128KB
  MX28F2000P 256KB
  MX28F2000T 256KB
  MX28F002T 256KB
  MX28F002B 256KB
  MX29F040 512KB
  MX29F080 1024KB
  MX29F016 2048KB
* MX29F001T 128KB
* MX29F001B 128KB
* MX29F002(N)T 256KB
  MX29F002(N)B 256KB
  MX29F022T 256KB
  MX29F022B 256KB
  MX29F004T 512KB
  MX29F004B 512KB
  MX29F100T 128KB
  MX29F100B 128KB
  MX29F200T 256KB
  MX29F200B 256KB
  MX29F400T 512KB
  MX29F400B 512KB
  MX29F800T 1024KB
  MX29F800B 1024KB
  MX29F1610A 2048KB
  MX29F1615 2048KB
  MX29LV040 512KB
  MX29LV081 128KB
  MX29LV004T 512KB
  MX29LV004B 512KB
  MX29LV008T 1024KB
  MX29LV400T 512KB
  MX29LV400B 512KB
  MX29LV800T 1024KB
  MX29LV800B 1024KB
  MX29LV160T 2048KB
  MX29LV160B 2048KB
  MX29L1611 2048KB
  MX29L1611G 2048KB
  MX29L3211 4096KB
Megawin
  MM29F040 = AMD Am29F040(B)/5V 512KB
Micron
  MT28F004-T = Intel 28F004-T 512KB
  MT28F004-B = Intel 28F004-B 512KB
  MT28F400-T = Intel 28F400-T 512KB
  MT28F400-B = Intel 28F400-B 512KB
  MT28F008-T = Intel 28F008-T 1024KB
  MT28F008-B = Intel 28F008-B 1024KB
  MT28F800-T = Intel 28F800-T 1024KB
  MT28F800-B = Intel 28F800-B 1024KB
Mosel Vitelic
  V29C51000T 64KB
  V29C51000B 64KB
  V29C51001T 128KB
  V29C51001B 128KB
  V29C51002T 256KB
  V29C51002B 256KB
  V29C51004T 512KB
  V29C51004B 512KB
  V29C51400T 512KB
  V29C51400B 512KB
  V29LC51000 64KB
  V29LC51001 128KB
  V29LC51002 256KB
  V29C31004T 512KB
  V29C31004B 512KB
  V29C31400T 512KB
NexFlash Technologies
  NX29F010 = AMD Am29F010 128KB
  NX29F400B = AMD Am29F400B 512KB
PMC
* Pm29F002T 256KB
  Pm29F002B 256KB
  Pm29F004T or Pm29LV104T 512KB
  Pm29F004B or Pm29LV104B 512KB
  Pm39F010 or 39LV010(R) 128KB
  Pm39F020 256KB
  Pm39F040 512KB
  Pm39LV512(R) 64KB
  Pm39LV020 256KB
  Pm39LV040 512KB
  Pm49FL002 256KB
  Pm49FL004 512KB
  Pm49FL008 1024KB
SHARP
  LHF00L02/6/7 (LPC) 1024KB
  LHF00L03/4/5 (FWH) 1024KB
  LHF00L01 (LPC) 2048KB
SST
  28EE010/011 128KB
  29EE512 64KB
* 29EE010 128KB
* 29EE020 256KB
  28x040(A) series 512KB
  29x512 series 64KB
  29x010 series 128KB
  29x020 series 256KB
  29SF512 64KB
  29SF010 128KB
  29SF020 256KB
  29SF040 512KB
  29VF512 64KB
  29VF010 128KB
  29VF020 256KB
  29VF040 512KB
* 49LF020 (LPC) 256KB
* 49LF020A (LPC) 256KB
  49LF030(A) (LPC) 384KB
  49LF040 (LPC) 512KB
  49LF080(A) (LPC) 1024KB
* 49LF002(A) (Firmware Hub) 256KB
  49LF003A (Firmware Hub) 384KB
  49LF004 (Firmware Hub) 512KB
  49LF004A/B (Firmware Hub) 512KB
  49LF008 (Firmware Hub) 1024KB
* 49LF008A (Firmware Hub) 1024KB
  39SF512 64KB
  39SF010(A) 128KB
* 39SF020(A) 256KB
  39SF040 512KB
  39xF512 series 64KB
  39xF010 series 128KB
* 39xF020 series 256KB
  39xF040 series 512KB
  39xF080 series 1024KB
  39xF016 series 2048KB
STMicroelectronics
  M28F256 32KB
  M28F512 64KB
  M28F101 128KB
  M28F201 256KB
  M28W201 256KB
  M29F512B 64KB
  M29F010B 128KB
  M29F040(B) 512KB
  M29F080A 1024KB
  M29F016B 2048KB
  M29F002(B)(N)T 256KB
  M29F002(B)B 256KB
  M29F100(B)T 128KB
  M29F100(B)B 128KB
  M29F200(B)T 256KB
  M29F200(B)B 256KB
  M29F400(B)T 512KB
  M29F400(B)B 512KB
  M29F800AT 1024KB
  M29F800AB 1024KB
  M29F160BT 2048KB
  M29F160BB 2048KB
  M29W512B 64KB
  M29W010B 128KB
  M29W022BT 256KB
  M29W022BB 256KB
  M29W040(B) 512KB
  M29W200BT 256KB
  M29W200BB 256KB
  M29W400(B)T 512KB
  M29W400(B)B 512KB
  M29W800(A)T 1024KB
  M29W800(A)B 1024KB
  M29W160BB/DB 2048KB
  M29W004(B)T 512KB
  M29W004(B)B 512KB
  M29W008(A)T 1024KB
  M29W008(A)B 1024KB
  M50FW002 (FWH) 256KB
  M50LPW002 (LPC) 256KB
* M50FW040 (FWH) 512KB
  M50LPW040 (LPC) 512KB
  M50FLW040A (LPC/FWH) 512KB
  M50FLW040B (LPC/FWH) 512KB
* M50FW080 (FWH) 1024KB
  M50LPW080 (LPC) 1024KB
  M50FLW080A (LPC/FWH) 1024KB
  M50FLW080B (LPC/FWH) 1024KB
  M50FW016 (FWH) 2048KB
SyncMOS
  F29C51001T = Mosel V29C51001T 128KB
  F29C51001B = Mosel V29C51001B 128KB
# F29C51002T = Mosel V29C51002T 256KB
  F29C51002B = Mosel V29C51002B 256KB
  F29C51004T = Mosel V29C51004T 512KB
  F29C51004B = Mosel V29C51004B 512KB
  F29C31004T = Mosel V29C31004T 512KB
  F29C31004B = Mosel V29C31004B 512KB
  F29C31400T = Mosel V29C31400T 512KB
Texas Instruments
  TMS29xF040 512KB
  TMS28F002A-T = Intel 28F002-T 256KB
  TMS28F002A-B = Intel 28F002-B 256KB
  TMS28F200A-T = Intel 28F200-T 256KB
  TMS28F200A-B = Intel 28F200-B 256KB
  TMS28F200BZT = Intel 28F200-T 256KB
  TMS28F200BZB = Intel 28F200-B 256KB
  TMS28F400A-T = Intel 28F400-T 512KB
  TMS28F400A-B = Intel 28F400-B 512KB
  TMS28F400BZT = Intel 28F400-T 512KB
  TMS28F400BZB = Intel 28F400-B 512KB
  TMS28F004A-T = Intel 28F004-T 512KB
  TMS28F004A-B = Intel 28F004-B 512KB
  TMS28F008A-T = Intel 28F008-T 1024KB
  TMS28F008A-B = Intel 28F008-B 1024KB
  TMS28F800A-T = Intel 28F800-T 1024KB
  TMS28F800A-B = Intel 28F800-B 1024KB
  TMS28F010A/B = Intel 28F010 128KB
  TMS28F020 = Intel 28F020 256KB
  TMS28F512A = Intel 28F512 64KB
  TMS29F002RT = AMD Am29F002T 256KB
  TMS29F002RB = AMD Am29F002B 256KB
  TMS29F008T = AMD Am29F800T 1024KB
  TMS29F008B = AMD Am29F800B 1024KB
  TMS29F010 = AMD Am29F010 128KB
  TMS29F040 = AMD Am29F040 512KB
  TMS29F400T = AMD Am29F400AT 512KB
  TMS29F400B = AMD Am29F400AB 512KB
  TMS29F800T = AMD Am29F800T 1024KB
  TMS29F800B = AMD Am29F800B 1024KB
  TMS29LF008T = AMD Am29LV008T 1024KB
  TMS29LF008B = AMD Am29LV008B 1024KB
  TMS29LF800T = AMD Am29LV800BT 1024KB
  TMS29LF800B = AMD Am29LV800BB 1024KB
Winbond
* W29x010/011/012 series 128KB
* W29C020(C) 256KB
  W29C040 512KB
  W29x512 series 64KB
  W39F010 128KB
  W39L512 64KB
  W39L010 128KB
  W39L020 256KB
  W39L040 512KB
  W39L040A 512KB
  W39V040A (LPC) 512KB
  W39V040FA (Firmware Hub) 512KB
* W49F002U 256KB
  W49F020 256KB
  W49V002(A) (LPC) 256KB
  W49V002F(A) (Firmware Hub) 256KB

Thanks to X86-Secret for free webhosting