Jump to content











Photo
- - - - -

Strange FAT12 BIOS boot issue


  • Please log in to reply
7 replies to this topic

#1 steve6375

steve6375

    Platinum Member

  • Developer
  • 7072 posts
  • Location:UK
  • Interests:computers, programming (masm,vb6,C,vbs), photography,TV,films,guitars, www.easy2boot.com
  •  
    United Kingdom

Posted 4 weeks ago

An Easy2Boot user reported that he could not boot to a FAT12 partition image from his EeePC but it worked OK on QEMU and some other systems (TBC). 

This pointed to a BIOS issue.

The partition image contained grub4dos.

 

We eventually found that whether it hung with a flashing cursor or it booted to grub4dos depended on the start position of the FAT12 partition on the USB drive. Here are some experimental results when booting on an EeePC.

 

This was reproduced on my EeePC as well as his.

On failure, the Flash drive's LED does flash a few times before it hangs with a flashing cursor so some sort of sector loading is occurring before the hang.

 

P1   Start=4,626,360 (2,368,696,320 bytes) End=4,627,959 (2,369,515,008 bytes)
FAILS

P1   Start=4,623,160 (2,367,057,920 bytes) End=4,624,759 (2,367,876,608 bytes)
FAILS

 

P1   Start=3,922,008 (2,008,068,096 bytes) End=3,923,607 (2,008,886,784 bytes)
WORKS !!!!!! boots to grub4dos

 

In all cases the contents of Ptn1 were byte-for-byte identical as a partition image was used only the start location was changed by changing the Primary partition table values (and the no. hidden sectors for partition offset in the BPB). e.g.

 

Partition 1   SIZE=0.781MiB   Type: 0E FAT16LBA  *ACTIVE*
START POS   = CYL:1023 HD:254 SEC:63       END POS = CYL:1023 HD:254 SEC:63
START (LBA) = 3,922,008 (003BD858) SIZE (LBA) = 1,600 (00000640) [End=3,923,607]

 

 

Since it boots OK on other systems and QEMU and VBox, it must be some sort of EeePC bug (and probably other BIOSes too).

 

Any ideas? Looks like some sort of 2GB limit??

 

However, a FAT32 partition boots OK even if it starts way past 4GB on the drive - so it only seems to be a problem with the FAT12 partition.


Edited by steve6375, 4 weeks ago.


#2 steve6375

steve6375

    Platinum Member

  • Developer
  • 7072 posts
  • Location:UK
  • Interests:computers, programming (masm,vb6,C,vbs), photography,TV,films,guitars, www.easy2boot.com
  •  
    United Kingdom

Posted 4 weeks ago

Here is the FAT16/FAT12? first sectors (works)


COMMAND LINE: DRIVE=1 USBINFO USBSTART=P1 SURE
RMPARTUSB v2.1.734 (c)2019 RM Education plc [SSi]
=================================================
Accessing Drive 1 - "SanDisk Extreme Pro" (128,043,712,512 bytes)
Sector at LBA 3922008
============= SECTOR DATA ================

[Sector 3922008]  1915MB
0000 EB 3C 90 4D 53 44 4F 53 - 35 2E 30 00 02 01 06 00  ë<MSDOS 5.0.....
0010 02 00 02 40 06 F8 05 00 - 3F 00 01 00 58 D8 3B 00  ...@.ø.. ?...XØ;.
0020 00 00 00 00 80 00 29 AB - 94 36 30 4E 4F 20 4E 41  ....€.)« ”60NO NA
0030 4D 45 20 20 20 20 46 41 - 54 31 32 20 20 20 FA FC  ME    FA T12   úü
0040 31 C0 BD 00 7C 89 EC 8E - D0 8E D8 8E C0 FB 89 56  1À½.|‰ìŽ ÐŽØŽÀû‰V
0050 24 B4 41 BB AA 55 1E 06 - CD 13 07 1F 72 10 81 FB  $´A»ªU. Í.rû
0060 55 AA 75 0A C0 C9 01 73 - 05 C6 06 73 7D 42 66 0F  Uªu.ÀÉ.s .Æ.s}Bf
0070 B7 5E 0E 66 03 5E 1C 66 - 89 5E 28 66 0F B6 46 10  ·^f.^f ‰^(f¶F
0080 66 0F B7 4E 16 66 F7 E1 - 66 01 C3 66 89 5E 2C 8B  f·Nf÷á f.Ãf‰^,‹
0090 46 11 83 C0 0F B9 10 00 - F7 F1 66 98 89 C1 66 01  FƒÀ¹. ÷ñf˜‰Áf.
00A0 C3 66 89 5E 30 66 8B 46 - 2C C4 9E 8E 01 E8 8E 00  Ãf‰^0f‹F ,ÄžŽ.èŽ.
00B0 C4 BE 8E 01 BE E3 7D B1 - 0B 57 F3 A6 5F 74 10 83  ľŽ.¾ã}± .Wó¦_tƒ
00C0 C7 20 74 05 26 38 2D 75 - EB BE E0 7D E9 C6 00 26  Ç t.&8-u ë¾à}éÆ.&
00D0 FF 75 1A 8B 4E 16 66 8B - 46 28 06 E8 60 00 1F 58  ÿu‹Nf‹ F(.è`.X
00E0 1E 16 07 BF 00 20 AB 89 - C6 5A 52 01 F6 73 03 80  .¿. «‰ ÆZR.ös.€
00F0 C6 10 81 7E 39 31 32 75 - 13 01 C6 C1 EE 01 AD 73  Æ~912u .ÆÁî.­s
0100 03 C1 E8 04 80 E4 0F 3D - F7 0F EB 06 8E DA AD 83  .Áè.€ä= ÷ë.ŽÚ­ƒ
0110 F8 F7 76 D2 31 C0 AB 07 - 16 1F BE 00 20 AD 83 E8  ø÷vÒ1À«. ¾. ­ƒè
0120 02 72 13 66 0F B7 C0 8A - 4E 0D 66 F7 E1 66 03 46  .rf·ÀŠ N.f÷áf.F
0130 30 E8 0A 00 EB E7 8B 56 - 24 52 FF AE 8E 01 66 60  0è..ëç‹V $Rÿ®Ž.f`
0140 66 31 D2 66 52 66 50 06 - 53 6A 01 6A 10 80 3E 73  f1ÒfRfP. Sj.j€>s
0150 7D 42 74 1D 66 31 C9 66 - FF 76 18 59 66 F7 F1 42  }Btf1Éf ÿvYf÷ñB
0160 59 52 31 D2 66 F7 F1 86 - D6 59 86 C5 C0 E4 06 08  YR1Òf÷ñ† ÖY†ÅÀä..
0170 E1 B8 01 02 89 E6 8A 56 - 24 1E 06 CD 13 5B 1F 72  á¸..‰æŠV $.Í[r
0180 11 8D 5F 20 8E C3 61 66 - 61 66 40 E2 B1 C3 00 00  _ ŽÃaf af@â±Ã..
0190 00 20 BE EF 7D AC B4 0E - CD 10 3C 00 75 F7 EB FE  . ¾ï}¬´ Í<.u÷ëþ
01A0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01B0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01C0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01D0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01E0 00 00 20 47 52 4C 44 52 - 20 20 20 20 20 20 00 44  .. GRLDR       .D
01F0 69 73 6B 20 65 72 72 6F - 72 00 00 00 00 00 55 AA  isk erro r.....Uª

========= END OF SECTOR DATA ================

FAT16
000B Bytes Per Sector = 512 (0200h)
000D Sectors Per Cluster = 1 (01h)
000E Reserved Sectors before first FAT = 6 (0006h)
0010 Number of FATs = 2 (02h)
0011 Root Entries = 512 (0200h)
0013 Total Log Sectors (small) = 1600 (0640h)
0015 Media Descriptor = 248 (F8h) HDD
0016 Sectors per FAT table = 5 (0005h)
0018 Sectors per Track = 63 (003Fh)
001A Number of Heads per Cylinder = 1 (0001h)
001C Hidden Sectors preceding Partition = 3922008 (003BD858h)
0020 Total Log. Sectors (big) = 0 (00000000h)
0024 Physical Drive Number = 128 (80h) First Fixed Disk
0026 Extended Boot Signature = 41 (29h)
0027 Volume ID Serial No. = 808883371 (303694ABh)
002B Volume Label = NO NAME   
0036 FileSystem Type = FAT12  
First FAT begins at LBA 3922014
Second FAT begins at LBA 3922019
Root Directory begins at LBA 3922024
Cluster 0 begins at LBA 3922054
First file data (cluster #2) begins at LBA 3922056
Drive 1  SanDisk Extreme Pro  F/W Rev.=0  Serial No.= [ bytes = 00 00 00 00 00 00 00 00 ]
Reported size 128,043,712,512 bytes (119.25GiB)  Last LBA 250,085,375
RMPrepUSB Max 128,034,708,480 bytes (119.2416GiB)  Last LBA 250,067,789


#3 tinybit

tinybit

    Gold Member

  • Developer
  • 1157 posts
  •  
    China

Posted 4 weeks ago

obviously it is a BIOS issue.

and i think it is not a bug, but a problem intentionally made.


i am not so sure about wether or not they were aiming at grub4dos. it is possible that they were attacking some other software, but just accidentally injured grub4dos.

anyway, it may be treated as a bios bug.

sorry i have no idea of how to solve the issue or just workaround it.

 

Edit: sorry, my misjudgment. see wonko's post.



#4 steve6375

steve6375

    Platinum Member

  • Developer
  • 7072 posts
  • Location:UK
  • Interests:computers, programming (masm,vb6,C,vbs), photography,TV,films,guitars, www.easy2boot.com
  •  
    United Kingdom

Posted 4 weeks ago

Interestingly, my Asus Z87 PC also fails to boot from the USB stick (flashing cursor) (but QEMU and VBox do boot to grub4dos OK).

 

Here is a 'bad' setup

COMMAND LINE: DRIVE=4 USBINFO USBSTART=0 SURE
RMPARTUSB v2.1.734 (c)2019 RM Education plc [SSi]
=================================================
Accessing Drive 4 - "SanDisk Extreme Pro" (128,043,712,512 bytes)
Sector at LBA 0
============= SECTOR DATA ================

[Sector 0]  0MB
0000 33 C0 EB 5C 80 00 20 39 - FF FF 00 00 00 00 00 00  3Àë\€. 9 ÿÿ......
0010 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
0020 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
0030 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
0040 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
0050 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
0060 FA 31 DB 8E D3 BC 80 05 - E8 00 00 5B 81 EB 6B 00  ú1ÛŽÓ¼€. è..[ëk.
0070 C1 EB 04 8C C8 01 C3 8E - DB 53 6A 7D CB 68 00 20  Áë.ŒÈ.ÃŽ ÛSj}Ëh.
0080 17 BC 00 90 FB 16 07 B9 - 12 00 B8 01 02 89 CB 4B  ¼.û.¹ .¸..‰ËK
0090 C1 E3 09 BA 80 00 51 53 - E8 A4 00 5B 59 72 04 E2  Áã.º€.QS è¤.[Yr.â
00A0 E9 F6 DC 0E 1F 9C 31 F6 - 31 FF B9 DF 00 FC F3 A5  éöÜœ1ö 1ÿ¹ß.üó¥
00B0 BB FC 1F 66 B8 05 4D CB - 93 66 39 07 75 03 E8 39  »üf¸.MË “f9.u.è9
00C0 1C EA C6 00 00 20 16 1F - 66 39 07 74 28 66 60 BF  êÆ..  f9.t(f`¿
00D0 03 00 B8 11 02 99 BB 00 - 02 B9 02 00 E8 80 00 73  ..¸.™». .¹..è€.s
00E0 02 75 EF 66 61 66 39 07 - 75 4D C7 06 08 00 00 FF  .uïfaf9. uMÇ....ÿ
00F0 80 26 04 00 FE 9D 72 33 - 0E 1F AD 88 E6 AD 89 C1  €&..þr3 ­ˆæ­‰Á
0100 24 3F 74 14 B0 01 BF 03 - 00 B4 02 68 00 0D 07 31  $?t°.¿. .´.h...1
0110 DB E8 4B 00 73 03 75 F1 - F9 E8 5C 11 0F 87 F3 1B  ÛèK.s.uñ ùè\‡ó
0120 83 C6 0C 81 FE FE 01 72 - CF 77 0C BE B2 31 B0 04  ƒÆ.þþ.r Ïw.¾²1°.
0130 B9 01 00 31 D2 EB CF BE - 91 01 E8 4D 00 EB FE 1E  ¹..1ÒëϾ ‘.èM.ëþ
0140 06 52 56 57 55 F9 CD 13 - 5D 5F 5E 5A 07 1F C3 FA  .RVWUùÍ ]_^Z.Ãú
0150 B8 00 20 8E D0 BC DC 8F - FB 66 61 07 1F EB C1 60  ¸. ŽÐ¼Ü ûfa.ëÁ`
0160 50 53 51 FE C8 00 C1 D0 - E0 00 C7 B0 01 E8 CF FF  PSQþÈ.ÁÐ à.Ç°.èÏÿ
0170 59 5B 58 72 04 FE C8 75 - E7 61 73 09 60 31 C0 E8  Y[Xr.þÈu ças.`1Àè
0180 BD FF 61 4F F9 C3 B4 0E - CD 10 2E AC 3C 00 75 F6  ½ÿaOùô Í.¬<.uö
0190 C3 0D 0A 4D 69 73 73 69 - 6E 67 20 4D 42 52 2D 68  Ã..Missi ng MBR-h
01A0 65 6C 70 65 72 2E 00 00 - 00 00 00 00 00 00 00 00  elper... ........
01B0 00 00 00 00 00 00 00 00 - B8 97 46 00 00 00 80 FE  ........ ¸—F...€þ
01C0 FF FF 06 FE FF FF B8 97 - 46 00 40 06 00 00 00 00  ÿÿ.þÿÿ¸— F.@.....
01D0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 DF  ........ .......ß
01E0 C5 FF A5 28 F0 FF B0 4D - 1D 01 BC C5 73 00 00 00  Åÿ¥(ðÿ°M .¼Ås...
01F0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 55 AA  ........ ......Uª

========= END OF SECTOR DATA ================

Disk Signature bytes (1B8h-1BBh) = B8 97 46 00
Partition 1   SIZE=0.781MiB   Type: 06 16-bit FAT (32GB max)  *ACTIVE*
START POS   = CYL:1023 HD:254 SEC:63       END POS = CYL:1023 HD:254 SEC:63
START (LBA) = 4,626,360 (004697B8) SIZE (LBA) = 1,600 (00000640) [End=4,627,959]
Partition 2   SIZE=0MiB   Type: 00       
START POS   = CYL:0 HD:0 SEC:0       END POS = CYL:0 HD:0 SEC:0
START (LBA) = 0 (00000000) SIZE (LBA) = 0 (00000000)
Partition 3   SIZE=3704.717MiB   Type: A5       
START POS   = CYL:1023 HD:223 SEC:5       END POS = CYL:1023 HD:40 SEC:48
START (LBA) = 18,697,648 (011D4DB0) SIZE (LBA) = 7,587,260 (0073C5BC) [End=26,284,907]
Partition 4   SIZE=0MiB   Type: 00       
START POS   = CYL:0 HD:0 SEC:0       END POS = CYL:0 HD:0 SEC:0
START (LBA) = 0 (00000000) SIZE (LBA) = 0 (00000000)
P1   Start=4,626,360 (2,368,696,320 bytes) End=4,627,959 (2,369,515,008 bytes)
P3   Start=18,697,648 (9,573,195,776 bytes) End=26,284,907 (13,457,872,384 bytes)
Drive 4  SanDisk Extreme Pro  F/W Rev.=0  Serial No.= [ bytes = 00 00 00 00 00 00 00 00 ]
Reported size 128,043,712,512 bytes (119.25GiB)  Last LBA 250,085,375
RMPrepUSB Max 128,034,708,480 bytes (119.2416GiB)  Last LBA 250,067,789

COMMAND LINE: DRIVE=4 USBINFO USBSTART=P1 SURE
RMPARTUSB v2.1.734 (c)2019 RM Education plc [SSi]
=================================================
Accessing Drive 4 - "SanDisk Extreme Pro" (128,043,712,512 bytes)
Sector at LBA 4626360
============= SECTOR DATA ================

[Sector 4626360]  2258MB
0000 EB 3C 90 4D 53 44 4F 53 - 35 2E 30 00 02 01 06 00  ë<MSDOS 5.0.....
0010 02 00 02 40 06 F8 05 00 - 3F 00 01 00 B8 97 46 00  ...@.ø.. ?...¸—F.
0020 00 00 00 00 80 00 29 AB - 94 36 30 4E 4F 20 4E 41  ....€.)« ”60NO NA
0030 4D 45 20 20 20 20 46 41 - 54 31 32 20 20 20 FA FC  ME    FA T12   úü
0040 31 C0 BD 00 7C 89 EC 8E - D0 8E D8 8E C0 FB 89 56  1À½.|‰ìŽ ÐŽØŽÀû‰V
0050 24 B4 41 BB AA 55 1E 06 - CD 13 07 1F 72 10 81 FB  $´A»ªU. Í.rû
0060 55 AA 75 0A C0 C9 01 73 - 05 C6 06 73 7D 42 66 0F  Uªu.ÀÉ.s .Æ.s}Bf
0070 B7 5E 0E 66 03 5E 1C 66 - 89 5E 28 66 0F B6 46 10  ·^f.^f ‰^(f¶F
0080 66 0F B7 4E 16 66 F7 E1 - 66 01 C3 66 89 5E 2C 8B  f·Nf÷á f.Ãf‰^,‹
0090 46 11 83 C0 0F B9 10 00 - F7 F1 66 98 89 C1 66 01  FƒÀ¹. ÷ñf˜‰Áf.
00A0 C3 66 89 5E 30 66 8B 46 - 2C C4 9E 8E 01 E8 8E 00  Ãf‰^0f‹F ,ÄžŽ.èŽ.
00B0 C4 BE 8E 01 BE E3 7D B1 - 0B 57 F3 A6 5F 74 10 83  ľŽ.¾ã}± .Wó¦_tƒ
00C0 C7 20 74 05 26 38 2D 75 - EB BE E0 7D E9 C6 00 26  Ç t.&8-u ë¾à}éÆ.&
00D0 FF 75 1A 8B 4E 16 66 8B - 46 28 06 E8 60 00 1F 58  ÿu‹Nf‹ F(.è`.X
00E0 1E 16 07 BF 00 20 AB 89 - C6 5A 52 01 F6 73 03 80  .¿. «‰ ÆZR.ös.€
00F0 C6 10 81 7E 39 31 32 75 - 13 01 C6 C1 EE 01 AD 73  Æ~912u .ÆÁî.­s
0100 03 C1 E8 04 80 E4 0F 3D - F7 0F EB 06 8E DA AD 83  .Áè.€ä= ÷ë.ŽÚ­ƒ
0110 F8 F7 76 D2 31 C0 AB 07 - 16 1F BE 00 20 AD 83 E8  ø÷vÒ1À«. ¾. ­ƒè
0120 02 72 13 66 0F B7 C0 8A - 4E 0D 66 F7 E1 66 03 46  .rf·ÀŠ N.f÷áf.F
0130 30 E8 0A 00 EB E7 8B 56 - 24 52 FF AE 8E 01 66 60  0è..ëç‹V $Rÿ®Ž.f`
0140 66 31 D2 66 52 66 50 06 - 53 6A 01 6A 10 80 3E 73  f1ÒfRfP. Sj.j€>s
0150 7D 42 74 1D 66 31 C9 66 - FF 76 18 59 66 F7 F1 42  }Btf1Éf ÿvYf÷ñB
0160 59 52 31 D2 66 F7 F1 86 - D6 59 86 C5 C0 E4 06 08  YR1Òf÷ñ† ÖY†ÅÀä..
0170 E1 B8 01 02 89 E6 8A 56 - 24 1E 06 CD 13 5B 1F 72  á¸..‰æŠV $.Í[r
0180 11 8D 5F 20 8E C3 61 66 - 61 66 40 E2 B1 C3 00 00  _ ŽÃaf af@â±Ã..
0190 00 20 BE EF 7D AC B4 0E - CD 10 3C 00 75 F7 EB FE  . ¾ï}¬´ Í<.u÷ëþ
01A0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01B0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01C0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01D0 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00  ........ ........
01E0 00 00 20 47 52 4C 44 52 - 20 20 20 20 20 20 00 44  .. GRLDR       .D
01F0 69 73 6B 20 65 72 72 6F - 72 00 00 00 00 00 55 AA  isk erro r.....Uª

========= END OF SECTOR DATA ================

FAT16
000B Bytes Per Sector = 512 (0200h)
000D Sectors Per Cluster = 1 (01h)
000E Reserved Sectors before first FAT = 6 (0006h)
0010 Number of FATs = 2 (02h)
0011 Root Entries = 512 (0200h)
0013 Total Log Sectors (small) = 1600 (0640h)
0015 Media Descriptor = 248 (F8h) HDD
0016 Sectors per FAT table = 5 (0005h)
0018 Sectors per Track = 63 (003Fh)
001A Number of Heads per Cylinder = 1 (0001h)
001C Hidden Sectors preceding Partition = 4626360 (004697B8h)
0020 Total Log. Sectors (big) = 0 (00000000h)
0024 Physical Drive Number = 128 (80h) First Fixed Disk
0026 Extended Boot Signature = 41 (29h)
0027 Volume ID Serial No. = 808883371 (303694ABh)
002B Volume Label = NO NAME   
0036 FileSystem Type = FAT12  
First FAT begins at LBA 4626366
Second FAT begins at LBA 4626371
Root Directory begins at LBA 4626376
Cluster 0 begins at LBA 4626406
First file data (cluster #2) begins at LBA 4626408
Drive 4  SanDisk Extreme Pro  F/W Rev.=0  Serial No.= [ bytes = 00 00 00 00 00 00 00 00 ]
Reported size 128,043,712,512 bytes (119.25GiB)  Last LBA 250,085,375
RMPrepUSB Max 128,034,708,480 bytes (119.2416GiB)  Last LBA 250,067,789


#5 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 15046 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 4 weeks ago

Hmmm.

Whenever you have a flashing cursor (or a J or a G in top left of screen) first thing to check is CHS geometry (of the device, of the partition/volume entry in the MBR and of the filesystem/PBR/VBR).

From the data you posted the volume has a HS geometry of 1/63 :w00t: while it resides on a device with a 255/63 geometry.

As a side note, it seems like the output of RMPREPUSB you posted does not have a line for size of the volume in bytes :dubbio: and I wonder why you have "Log" sectors, those are actual sectors (either "small" or "large" is used) so the image is 1600 sectors in size, i.e. 1600*512=819200 bytes, an "underfloppy".

:duff:
Wonko
  • tinybit likes this

#6 steve6375

steve6375

    Platinum Member

  • Developer
  • 7072 posts
  • Location:UK
  • Interests:computers, programming (masm,vb6,C,vbs), photography,TV,films,guitars, www.easy2boot.com
  •  
    United Kingdom

Posted 4 weeks ago

Well spotted! Changing 001B from 01 to FF seems to fix the problem  :D



#7 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 15046 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 4 weeks ago

Well spotted! Changing 001B from 01 to FF seems to fix the problem  :D

 

Good. :)

 

Very likely the "base" issue (or original cause of it) is the exact way the volume/partition filesystem was created.

 

A lot of software (that could be virtual disk drivers or formatting tools, etc. ) for one reason or the other doesn't seem to take properly into account the CHS values which on the other hand may be vital in some booting code (MBR or PBR), among others this is the reason why I still often use good ol' vdk using a .pln descriptor file (that allows to specify geometry) and mtools (and thoroughly check the HS values anyway ;)), particularly when dealing with "odd sized" images/filesystems such as this one and "moving" them to a different HS geometry device.

 

And conversely BIOSes may be either "lax" i.e. either ignoring these values or correcting them on-the-fly or "strict" requiring correct values, the "queer" part (to me) is that (as always generally speaking) the QEMU (virtual) BIOS is normally "strict" (or maybe better "picky") so I was more surprised by the fact that it did boot on Qemu than by the fact that it did not boot on the eeepc.

 

It is entirely possible that in this particular case the wrong HS geometry generates a "by-pass" of some sort in the Qemu BIOS (i.e. it finds the 1 Cylinder so "out of standard" that it replaces it with the "right" value on the fly) ad the same doesn't happen on the eeepc.

 

All in all it revolves around doing things "properly" and "the old way", as you will never know which possible relic of old conventions/standards is inside some code, see also:

 

http://reboot.pro/to...b4dos/?p=212650

 

:duff:

Wonko


  • steve6375 likes this

#8 tinybit

tinybit

    Gold Member

  • Developer
  • 1157 posts
  •  
    China

Posted 3 weeks ago

eagle's eye , wonko

 

well done!

 

 

JFYI:

 

multimbr (a work by me, and could be googled) could work with unknown(may be read as "arbitrary") geometry. And, it will try both CHS and LBA mode of BIOS calls at boot time. So if CHS mode fails, it will try LBA mode. This could increase chances of boot success. The drawback is, it needs a header as large as 8MB at the very beginning of your boot device.

 

 

 

 

 

 






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users