Opened 4 years ago

Closed 3 years ago

Last modified 3 years ago

#27 closed defect (fixed)

Air-Boot seems to think that empty slots in a multi-card reader should have MBRs

Reported by: gerry Owned by: Ben Rietbroek
Priority: major Milestone:
Component: Boot Manager Version: 1.0
Keywords: Cc:

Description

Taking the simplest possible scenario:

  1. boot DFSee to wipe the start of the disk
  2. boot eCS installation disk to create a partition table
  3. re-boot eCS installation disk to create a single primary partition and then add Air-Boot
  4. boot from hard drive. Air-Boot says: "Your system has at least one broken partition table entry or your hardware contains bad sectors. System halted."

Instead of a diskette drives, I had the system builder insert a multi-card reader, which plugs into a USB header ... unplug it and, hey presto, everything works.

Change History (7)

comment:1 Changed 3 years ago by Ben Rietbroek

Hi gerry,

This is a known problem.
Related tickets: #12 and others mentioning "LOAD ERROR" / "SAVE ERROR".
It will be fixed in the next release.
GA: Before ArcaOS v5.0.

Regards,

Ben (wondering why he has not received an e-mail when this ticket was created).

comment:2 Changed 3 years ago by Ben Rietbroek

Owner: set to Ben Rietbroek
Status: newaccepted

comment:3 Changed 3 years ago by erdmann

I suppose that Air Boot uses INT13 in real mode to find out about media, read sectors etc. I suggest to try reading from sector 0. If that fails it very likely means there is no media inserted (like for a USB attached SD card reader with no card inserted, an attached smartphone with MSD functionality not yet activated etc.)

There is also some INT13 call that can tell you if a media is removable or not. Unfortunately that has obviously led to great confusion what "removable" actually means for a USB attached MSD. Some USB sticks claim that they are "removable" while most of them claim they are not (the latter being the correct response in the sense of media removability/exchangeability). Therefore this INT13 call will not be of much help.

comment:4 in reply to:  3 Changed 3 years ago by Ben Rietbroek

Replying to erdmann:

I suppose that Air Boot uses INT13 in real mode to find out about media, read sectors etc.

Yes, it uses real mode INT13(X).
No, the current version does not understand the concept of (removable) media.
To AirBoot, all BIOS disks 0x80 and above are fixed disks.

I suggest to try reading from sector 0. If that fails it very likely means there is no media inserted (like for a USB attached SD card reader with no card inserted, an attached smartphone with MSD functionality not yet activated etc.)

There is also some INT13 call that can tell you if a media is removable or not. Unfortunately that has obviously led to great confusion what "removable" actually means for a USB attached MSD. Some USB sticks claim that they are "removable" while most of them claim they are not (the latter being the correct response in the sense of media removability/exchangeability). Therefore this INT13 call will not be of much help.

At first, I was planning to use such extended INT13X info.
But I have found BIOS disk emulations for USB devices to be highly unreliable.
Also, in retrospect, such stuff is not really needed.
The issue is that AirBoot has some too strict sanity checks, like disks needing to be partitioned and signatures needing be present. These checks need to be loosened.
So indeed, disks that cannot be read should be ignored, instead of AirBoot halting.
That's in the queue for the new release.

comment:5 Changed 3 years ago by Ben Rietbroek

On a side note:
Sticks reporting to have removable media are most of the time correct.
In this context, the 'removable' should not be interpreted that it has
media that can be physically removed, but that it supports 'ejecting'
the media. When the media of such sticks is 'ejected', it behaves
kinda like a cd-rom with no disc in it. Some sticks even support 'uneject',
like closing the door, in which case the physically fixed stick-media
is reattached and made accessible again.
This is different from 'removing' with calls that do 'power-down' or
otherwise remove or hide the physical device from the bus.

comment:6 Changed 3 years ago by Ben Rietbroek

Resolution: fixed
Status: acceptedclosed

* This issue is assumed to be fixed *

There is a new release of AiR-BOOT which should fix this issue.
It can be downloaded here: https://github.com/rousseaux/netlabs.air-boot/releases

If this specific issue is *not* fixed, then please create a *new* ticket
here, http://trac.netlabs.org/air-boot/newticket, describe the problem you
are experiencing and insert a *reference* to this issue if you think it is
related.

Happy booting,

Ben.

comment:7 Changed 3 years ago by gerry

Thanks, Ben .... you may wonder why you did not receive a copy of my original ticket ... I also wonder I why have I never received any of the tracking information!

I will update air-boot from the blue lion disk and then re-plug the usb header (that might take a few days) ......

and a few days later .... "scanning: load error!"

I will raise a new problem as requested. G

Note: See TracTickets for help on using tickets.