Supermicro PDSGE, какая микросхема биоса должна стоять?

Имеется Supermicro PDSGE, на ней отсутствует МС биоса. Что должно стоять или можно поставить?
PLCC32 колодка, 8Mbit bios.

IMHO интерфейс FWH должен быть. Как вариант - универсалка LPC/FWH.

8 Mbit fwh флешки в руках нет. Есть только 4 Mbit. Можно ли как-нибудь исхитриться затолкать прошивку на то, что есть? Убедиться, что материнка хоть какие-то признаки жизни подает.

IMHO можно попробовать залить старшую половину и смотреть/слушать, что скажет bootblock:).

Залил старшую половину - материнка отозвалась! Бутблок выполняется. Посткоды бегут. Пауза на 0d с писком - "не нашла vga биос", останавливается на post 41 и обращается к флопику за прошивкой.

8Мбит флешки в пределах видимости нет. Можно ли как-нибудь перепаковать биос в 4 Мбит?

CBROM195.exe V1.95 [12/14/07] (C)Phoenix Technologies 2001-2007

              ******** DSG43169.BIN BIOS component ********

 No. Item-Name         Original-Size   Compressed-Size Original-File-Name 
================================================================================
  0. System BIOS       20000h(128.00K)14064h(80.10K)DSG43169.BIN
  1. XGROUP CODE       0FF60h(63.84K)0ADD5h(43.46K)awardext.rom
  2. ACPI table        0473Dh(17.81K)019AEh(6.42K)ACPITBL.BIN
  3. YGROUP ROM        0BDF0h(47.48K)05292h(20.64K)awardeyt.rom
  4. GROUP ROM[ 0]     05930h(22.30K)02828h(10.04K)_EN_CODE.BIN
  5. SETUP0             01C40h(7.06K)00B8Dh(2.89K)_ITEM.BIN
  6. PCI ROM[A]        1A400h(105.00K)13BB4h(78.93K)ADDON.ROM\7901B_HR.ROM
  7. PCI ROM[B]        0EC00h(59.00K)0916Dh(36.36K)ADDON.ROM\raid562.bin
  8. PCI ROM[C]        0CE00h(51.50K)07D72h(31.36K)ADDON.ROM\BA1228L2.LOM
  9. PCI ROM[D]        0CE00h(51.50K)07D8Ch(31.39K)ADDON.ROM\BA1230L2.LOM
 10. GV3                01A2Dh(6.54K)00B4Ch(2.82K)PPMINIT.ROM
 11. OSB LOGO ROM      4B30Ch(300.76K)011BCh(4.43K)LOGO\SMLOGO.BMP
 12. OSB BMP ROM       03476h(13.12K)007BBh(1.93K)LOGO\64N8IIP.BMP
 13. OSB BMP1 ROM      0345Dh(13.09K)008D3h(2.21K)LOGO\64N8P4P.BMP
 14. OSB BMP2 ROM      0345Dh(13.09K)008DCh(2.21K)LOGO\64N8P4HT.BMP
 15. OSB BMP3 ROM      04286h(16.63K)00A67h(2.60K)LOGO\64N8P4E.BMP
 16. OSB BMP4 ROM      04286h(16.63K)00B61h(2.84K)LOGO\64N8P4HE.BMP
 17. OSB BMP5 ROM      0345Dh(13.09K)006AAh(1.67K)LOGO\64N8PDP.BMP
 18. OSB BMP6 ROM      0345Dh(13.09K)00932h(2.30K)LOGO\64N8PDE.BMP
 19. Flash ROM         0BB2Ch(46.79K)06621h(25.53K)ADDON.ROM\AWDFLASH.EXE
 20. RPB ROM           029EAh(10.48K)01F8Fh(7.89K)ADDON.ROM\rpb_c.rom
(SP) NCPUCODE          0E400h(57.00K)0E400h(57.00K)NCPUCODE.BIN

  Total compress code space  = C9000h(804.00K)
  Total compressed code size = 71C33h(455.05K)
  Remain compress code space = 573EDh(348.98K)

                          ** Micro Code Information **
Update ID  CPUID  |  Update ID  CPUID  |  Update ID  CPUID  |  Update ID  CPUID
------------------+--------------------+--------------------+-------------------
PGA478 2E   0F29|  PGA478 09   0F65|  SLOT1  04   0F64|  PGA478 0F   0F62
PGA478 07   0F61|  SLOT1  05   0F60|  SLOT1  03   0F49|  SLOT1  06   0F44
SLOT1  05   0F43|  SLOT1  17   0F41|  SLOT1  02   0F37|  SLOT1  17   0F34
SLOT1  08   0F34|  SLOT1  03   0F47|  SLOT1  03   0F4A|  PGA423 2C   0F25
SLOT1  0C   0F33|  SLOT1  0A   0F32|  SLOT1  05   0F31|  PGA478 12   0F30

IMHO попробовать можно, но перепаковывать придется руками.

pci rom a - adaptec scsi; pci rom c, d - pxe; awdflash - если их выкинуть, то в 512k влезает вроде как.
Попробовл их изъять cbrom'ом, получил посреди биоса сплошной кусок FF, как раз 512k+ размером. Вырезал.
Удивился, обнаружив, что cbrom32v195 извлеченные модули еще и распаковывает.
Результат открывается в modbin'e, на вид корректно. Сохранил, чексумму поправить.
Зашил. Поведение материнки не изменилось. Или я что-то делаю не так, или-или...

Скорее всего проблема возникает в процессе копирования из ПЗУ и распаковки в ОЗУ, т.к. обычно начальный адрес копируемого участка IMHO задается константой в bootblock'е. Т.е. возможно придется искать это место в bootblock'е.
Поскольку я не особо интересовался деталями работы bootblock'а, то могу и ошибаться:).

Аватар пользователя apple_rom

В случае достаточного количества места - переделать с большой долей вероятности можно. Особенно если вышеупомянутые модули сетевух-рэйдов сотоварищи не нужны.

п.с. Не забывайте указывать (прямую) ссылку на BIOS, чтобы проще было другим интересующимся и желающим помочь.

Ссылка на оригинальный биос:
supermicro.com/about/policies/disclaimer.cfm?url=/support/resources/getfil...

Поиском по команде пересылки цепочек нашел такой кусок кода (вызывается после выдачи POST C3):

sub_FFC65:
	push    2000h			; segment
	call    near ptr sub_F61F0	; call near, but ret far
					; --> 2000:xxxx
	mov     esi, 0
	jnz     short loc_FFC79
	mov     esi, 0FFF00000h
loc_FFC79:
	movzx   ecx, cx
	shl     ecx, 4
	or      esi, ecx

	cld

	mov     ax, cs			; unreal mode on
	mov     ds, ax
	lgdt    qword ptr ds:0FBF6h
	mov     eax, cr0
	or      al, 1
	mov     cr0, eax
	jmp     short $+2
	mov     ax, 8
	mov     ds, ax
	mov     es, ax

	and     esi, 0FFF00000h		; all flash ROM, if 8 Mbit
	mov     edi, 300000h
	mov     ecx, 40000h		; 8 Mbit
	rep movs dword ptr es:[edi], dword ptr [esi]


	mov     eax, cr0		; unreal mode off
	and     al, 0FEh
	mov     cr0, eax
	jmp     short $+2

	push    2000h			; segment
	call    near ptr sub_F61F6	; call near, but ret far
					; --> 2000:xxxx

	call    sub_FE5CC		; search '*BBSS*'

	mov     si, [si]
	and     si, 0FFF0h
	push    si
	mov     bx, [si+0Ah]
	and     bx, 0FFF0h
	pop     ax
	add     ax, bx
	and     ax, 0F000h
	add     ax, 0FFEh
	push    ax
	call    sub_FE705		; unreal mode on
	pop     ax

	mov     esi, 300000h
	mov     ecx, 0E0000h
	add     ecx, esi
loc_FFCF2:
	mov     ebx, [esi]
	and     ebx, 0FFFFFFh
	cmp     ebx, 686C2Dh		; search '-lh'
	jz      short loc_FFD0A
	inc     esi
	jmp     short loc_FFCF2

loc_FFD0A:
	sub     esi, 2
	add     cx, ax
	sub     ecx, esi
	xor     ah, ah
loc_FFD15:
	lods    byte ptr [esi]
	add     ah, al			; checksum
	loopd   loc_FFD15
	mov     al, [esi]
	push    ax
	call    sub_FE720		; unreal mode off
	pop     ax
	cmp     ah, al
	jnz     loc_FE58B		; checksum wrong
	.....

sub_FE5CC:
	mov     ax, cs
	mov     es, ax
	mov     ax, 0E000h
	mov     ds, ax
	mov     ax, 0FFF0h
	cld
loc_FE5D9:
	mov     si, ax
	lea     di, ds:0E045h   ; '*BBSS*'
	mov     cx, 6
	repe cmpsb
	jz      short locret_FE5ED
	sub     ax, 10h
	jnz     short loc_FE5D9
	xor     si, si
locret_FE5ED:
	retn

sub_F61F0:
	mov     cx, 0C000h
	xor     cl, cl
	retf

sub_F61F6:
	pusha
	popa
	retf

Сначала там какие-то извращения с ESI/ECX, но в конце концов ESI указывает на FFF00000h, т.е. на начало флешки, если я правильно понимаю.
Потом копируем всю 8-мимегабитную флешку в память, начиная с 300000h.
Скопировав, ищем строку '*BBSS*', потом с ориентиром на эту строку начинаем вытаскивать какие-то данные и куда-то их запихивать.
Далее начинаем искать сигнатуру '-lh', затем определяем длину модуля и начинаем считать контрольную сумму.
Ежели КС не сошлась, уходим по последней метке - там потом будет выдан C5, а за ним 01 и дальнейшие коды по восстановлению.
Если КС сошлась, то ползем дальше - это я особо не смотрел.
P.S. Мог где-то и ошибиться с интерпретацией.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей