
cdrom --init doesn't find cdrom drive
#1
Posted 06 September 2010 - 05:57 AM
The PC has a Matsushita UJDA750 (PATA DVDROM+CDRW combo drive) on the secondary controller.
cdrom --init finds the secondary controller with the usual port and IRQ that we've seen since some previous millennium. However, it finds no cd-rom drives and guesses that the BIOS isn't ATAPI compatible.
Windows thinks the DVD drive is the secondary master. I think Grub4dos thinks the DVD drive is the secondary slave, before Grub4dos changes its mind and decides that the drive isn't found. I can't figure out if Linux thinks the DVD drive is master or slave. The BIOS isn't saying. Anyway, everyone except Grub4dos can see the drive. If the BIOS boots the DVD drive then Linux runs perfectly. Only Grub4dos won't boot the DVD drive because it can't see the drive.
Intuition says the notebook PC's wiring and the drive's internal wiring disagree about whether the drive is master or slave. I cannot adjust either of them. Everyone except Grub4dos can deal with it.
Is there any way to trick Grub4dos into recognizing the drive?
#2
Posted 06 September 2010 - 06:33 AM
Before you completely accept the failure, you may try once more with "cdrom --add-io-ports=...",
See details in section "The New `cdrom' Command Syntax" in README_GRUB4DOS.txt.
#3
Posted 06 September 2010 - 06:38 AM
Yours sincerely,
Norman Diamond
#4
Posted 06 September 2010 - 07:34 AM
You can try using another bootmanager, the Smart Boot Manager (since the code is basically the same) should work (please read as "fail to work") in the same way, but what do other bootloaders do?
Like PLoP:
http://www.plop.at/
And/or Syslinux:
http://syslinux.zyto...yslinux_Project
It is possible that after booting one of the two you can chainload grub4dos and you will need not the cdrom --init at all.
Which EXACT version of grub4dos are you trying?
Sometimes another (older or newer) version may work.


Wonko
#5
Posted 06 September 2010 - 07:50 AM
I need a boot loader that can read these:
[a] NTFS and FAT partitions on hard drives
[b] CD drives
[c] USB memory keys
[d] ISO images that might be found in [a] through [c],
and then boot anything that it might find in [a] through [d].
Grub4dos can do all of these except for sometimes [b] because of inconsistent hardware configuration.
Also Grub4dos can be installed by adding 3 files and modifying 1 existing file in an existing Windows boot partition, without rewriting the MBR or PBR, and this is a big advantage.
I could not find all of these advantages in any other boot loader.
#6
Posted 06 September 2010 - 08:03 AM
I use Grub4dos 0.4.4, the latest I could find.
0.4.4 means nothing.
Take your time reading (something that you should ALREADY have done) the grub4dos WHERETO sticky:
http://www.boot-land...hp?showtopic=14
EXACT means "EXACT" (as opposed to "VAGUE")
Well, you haven't looked very accurately.Also Grub4dos can be installed by adding 3 files and modifying 1 existing file in an existing Windows boot partition, without rewriting the MBR or PBR, and this is a big advantage.
I could not find all of these advantages in any other boot loader.
grub4dos IS great

BTW why 3 files (last time I checked they were two)?

Life is tough


Just for the record:
- PLoP can as well be chainloaded from NTLDR/BOOT.INI
- Syslinux can as well (using a bootsector).

Wonko
#7
Posted 06 September 2010 - 08:25 AM
Google had found downloads here:0.4.4 means nothing.
http://download.gna.org/grub4dos/
whose latest files are:
grub4dos-0.4.4-src.zip
grub4dos-0.4.4.zip
OK, now I see a link toTake your time reading (something that you should ALREADY have done) the grub4dos WHERETO sticky:
http://www.boot-land...hp?showtopic=14
EXACT means "EXACT" (as opposed to "VAGUE")
http://nufans.net/gr...urrent_release/
and see that 0.4.4 is newer than 0.4.4. Therefore I understand your statement that 0.4.4 means nothing, though wonder why the number 0.4.4 was not removed from the name when the date was added. I swear Google searches did not find that page for me.
grldr.mbr, grldr, and menu.lstBTW why 3 files (last time I checked they were two)?
I read that page just before coming back here. Yes I have in mind to experiment with PLoP.PLoP can as well be chainloaded from NTLDR/BOOT.INI
Last I saw, Syslinux can't read NTFS partitions.Syslinux can as well (using a bootsector).
#8
Posted 06 September 2010 - 09:33 AM
Yepgrldr.mbr, grldr, and menu.lst


SureLast I saw, Syslinux can't read NTFS partitions.


You can boot to grub4dos, and use direct mapping or memdisk to load a Syslinux floppy/HD image, just as an example.
Complex?




Wonko
#9
Posted 06 September 2010 - 11:18 PM
In my experience the same grldr.mbr file works whether loaded by BOOTMGR or NTLDR. I didn't think of trying to omit grldr.mbr and do think there's no need to try.Yep
, that is for BOOTMGR (I thought that on a 2003 machine you were gong to use NTLDR
I came here hoping to find a bugfix for Grub4dos for a PC that was made in 2003 (and more importantly, that has a built-in inconsistency on whether its ATAPI DVD drive is master or slave on the secondary channel, and it's a notebook PC so I can't fix either part of that inconsistency). However, my applet was intended to run on PCs that have other kinds of Windows preinstalled not just 2003.
There's no need for me to figure out how to make a Syslinux HD image. If I want to write a CD's ISO image to the user's hard drive then Grub4dos can boot the CD image. I was hoping to boot the actual CD though (instead of putting a CD's ISO image on the CD and copying the image to the user's hard drive).You can boot to grub4dos, and use direct mapping or memdisk to load a Syslinux floppy/HD image, just as an example.
I will study PLoP more when I have time. Thank you for that pointer.
#10
Posted 07 September 2010 - 12:13 AM
Hi,
just for the record : you didn't omit the necessary "map --hook" after "cdrom --init", did you ?
Kind Regards
COD 11
#11
Posted 07 September 2010 - 12:39 AM
I wonder how to answer that.just for the record : you didn't omit the necessary "map --hook" after "cdrom --init", did you ?
On most PCs, cdrom --init succeeds. After that, map --hook succeeds and chainloader (cd0) succeeds.
On a PC where cdrom --init fails, map --hook accomplishes nothing. Grub4dos does not change its mind about its already completed failure to find the DVD drive.
#12
Posted 07 September 2010 - 07:44 AM
In my experience the same grldr.mbr file works whether loaded by BOOTMGR or NTLDR. I didn't think of trying to omit grldr.mbr and do think there's no need to try.
Well, in the case of NTLDR is an added step, ONLY needed for BOOTMGR.
If you check the guide, this is clear enough:
http://diddy.boot-la...all_windows.htm
Load via ntldr (Windows NT/2K/XP) - 1
Copy C:\Grub4dos\grldr to the root directory of an existing windows install and add the following line to the [operating systems] section of the configuration file boot.ini
Load via bootmgr (Windows Vista/2008/7)
The Windows Vista/2008/7 boot loader bootmgr can not directly load grldr, it can however be used to load grldr.mbr.
Back to the original problem, what happens if you use a latish grub4dos version and DO NOT issue a cdrom --init at all?

Just boot to grub4dos, (remove/rename temporarily menu.lst) and get to command line.
Type:
root (and press [TAB]
which devices you see listed?
Can you name the exact brand/model of the notebook PC?
It's "strange" that a relatively recent (2003) PC doesn't work.
This statement makes me a bit suspicious

the whole point (see above) is that with grub4dos after, say, later evolutions of 0.4.3, the cdrom --init is NOT anymore normally used, as it is NOT needed, grub4dos by itself finds a cd-rom device and maps it to (cd).On most PCs, cdrom --init succeeds. After that, map --hook succeeds and chainloader (cd0) succeeds.

Is it not that you are using some older instructions/documentation and you haven't tried the (now) "normal" way?

Can you please confirm that this is not the case?

Wonko
#13
Posted 07 September 2010 - 11:40 PM
OK, I understand. But it's not worth the added code now to avoid copying grldr.mbr in cases where the Windows system uses NTLDR, since grldr.mbr is already working.Well, in the case of NTLDR is an added step, ONLY needed for BOOTMGR.
I guess you mean either the newer 0.4.4 release since nufans has a newer 0.4.4 than the 0.4.4 that Google had found for me. I will try it. But if you mean a beta, I'm undecided about whether to try it. I should test the beta in order to help in testing, but hesitate to use it "officially".Back to the original problem, what happens if you use a latish grub4dos version and DO NOT issue a cdrom --init at all?
Um, what's wrong with letting menu.lst stay there and get a command line anyway?Just boot to grub4dos, (remove/rename temporarily menu.lst) and get to command line.
I don't remember if I tried "root" or "find" but whichever way it found hd0 and did not find cd0 because cdrom -- init did not find the drive. But if you mean with a later 0.4.4 or beta, I will try it later.root (which devices you see listed?
Sharp Mebius PC-CL1-C1FCan you name the exact brand/model of the notebook PC?
It doesn't seem strange after one of the developers already answered my initial query by saying the inconsistency is a known problem. The BIOS and Windows and Linux somehow find a way to access the drive even though the PC's wiring says the drive should be master on the secondary channel and the drive itself says the drive is slave. But the developer who answered my initial query said that Grub4dos is known to be unable to handle this inconsistency.It's "strange" that a relatively recent (2003) PC doesn't work.
Then it seems to me that any version of 0.4.4 should have been the same, since even the 0.4.4 from March 2009 that I am using is newer than 0.4.3 (isn't it?). The manual should say that its advice to use cdrom --init is obsolete, and 0.4.4 should have found the DVD drive anyway, and the redundant cdrom --init command though unnecessary still should have also found the DVD drive again anyway. But none of this happened.the whole point (see above) is that with grub4dos after, say, later evolutions of 0.4.3, the cdrom --init is NOT anymore normally used,
#14
Posted 08 September 2010 - 06:44 AM
Look, I spend, say, 1/10 of my time on this board telling people to READ the WHERETO thread:I guess you mean either the newer 0.4.4 release since nufans has a newer 0.4.4 than the 0.4.4 that Google had found for me. I will try it. But if you mean a beta, I'm undecided about whether to try it. I should test the beta in order to help in testing, but hesitate to use it "officially".
http://www.boot-land...hp?showtopic=14
I expect also that they understand it and comply with it.

Maybe it is asking too much.

In a nutshell:
- FORGET (temporarily) about ANY version you have found elsewhere
and try the one in "current release" folder:
http://nufans.net/gr...urrent_release/ - just §@ç#ing try it
and report what happens
IF that version gives problems, will talk about trying another one (newer or older).
Please do compare with points #f. of the "common sense advice":
http://www.boot-land...?showtopic=9101
Nothing.Um, what's wrong with letting menu.lst stay there and get a command line anyway?

Just a way to make sure you have not a "forgotten" menu.lst that may do something *queer* BEFORE you can get to command line.
Yep, I mean testing with the suggested "current release".I don't remember if I tried "root" or "find" but whichever way it found hd0 and did not find cd0 because cdrom -- init did not find the drive. But if you mean with a later 0.4.4 or beta, I will try it later.
Problem is that there are "strange" BIOSes around, and notebook ones are re-known to behave "strangely", but although the issue happens from time to time, we don't have an actual "database" of "problematic" boards/BIOSes.Sharp Mebius PC-CL1-C1F
It doesn't seem strange after one of the developers already answered my initial query by saying the inconsistency is a known problem. The BIOS and Windows and Linux somehow find a way to access the drive even though the PC's wiring says the drive should be master on the secondary channel and the drive itself says the drive is slave. But the developer who answered my initial query said that Grub4dos is known to be unable to handle this inconsistency.
So what tinybit posted has to be read and interpreted in the sense:
- there are known issues on some "queer" hardware/BIOS (but there is NO evidence that your particular machine - at the time of the post unknown - belongs to those)
So the suggested troubleshooting path is :
- try (it costs nothing and takes five minutes of time) if by chance the new version/method works with "current release" version
- if it doesn't, we will try again with the version but with old method esperimenting with "cdrom --add-io-ports=..." as tinybit suggested. (this - even if finally sucessful, will take anyway some time for the experiments)
- try (it costs nothing but will take more time) if by chance any of the new experimental/beta versions work (or even if any of the old, deprecated versions do)
Not really, what you assume is logicThen it seems to me that any version of 0.4.4 should have been the same, since even the 0.4.4 from March 2009 that I am using is newer than 0.4.3 (isn't it?). The manual should say that its advice to use cdrom --init is obsolete, and 0.4.4 should have found the DVD drive anyway, and the redundant cdrom --init command though unnecessary still should have also found the DVD drive again anyway. But none of this happened.


If a new version (16-10-2009) is used (casually since 17-10-2009) as reference, there must be a reason, otherwise we would be using the 0.4.4 version (the one 31-03-2009) or any of the several versions released after 31-03-2009 and before 16-10-2009:
http://nufans.net/grub4dos/history/
The reason is quite simple: over the time it has proved to be the most stable, most featured, almost everywhere working one.


Wonko
#15
Posted 08 September 2010 - 11:10 PM
Well Google does find a bunch of other sites before it finds this one (except maybe if I include some particularly lucky search term). Google found the 0.4.4 download that dated from March 2009. I still think it would be better if release numbers were bumped when releases were bumped, in order to avoid ambiguities that affected this conversation.Look, I spend, say, 1/10 of my time on this board telling people to READ the WHERETO thread:
http://www.boot-land...hp?showtopic=14
From later in your answer, I infer that "that version" means the 0.4.4 that dates from October 2009 and not a beta (not yet anyway). It will take longer than 5 minutes but I will try it.IF that version gives problems, will talk about trying another one (newer or older).
Well I did read a bunch of other pages that Google had found, most of which addressed problems that weren't the same as my current problem, and then one that hinted at the possibility that the mismatch between primary and slave might be the problem. Google also found a dead mailing list, but some kind person posted to the dead mailing list a link to this discussion board. I did not come here thinking I was smarter than you, but came here thinking I'd done my research.Please do compare with points #f. of the "common sense advice":
I know, I have to contend with lots of them, but oddly that isn't the problem this time. The BIOS includes a way to handle the hardware mismatch so ordinary users never even know there's a problem -- just like Windows and Linux handle the hardware mismatch and users never know there's a problem. As far as I can tell, the notebook's wiring says the DVD drive is master, the DVD drive's own wiring says it is slave, and there's nothing a user can do about it. I already posted this in my original posting. A developer already answered it too. But nonetheless I will try the 0.4.4 from October 2009 as you requested. It will take more than 5 minutes so please be patient. (I have to work on a bunch of other stuff too that doesn't involve Grub4dos.)Problem is that there are "strange" BIOSes around,
#16
Posted 09 September 2010 - 12:10 AM
Well Google does find a bunch of other sites before it finds this one (except maybe if I include some particularly lucky search term). ...
Google found the 0.4.4 download that dated from March 2009. ....
Well I did read a bunch of other pages that Google had found, most of which addressed problems that weren't the same as my current problem, and then one that hinted at the possibility that the mismatch between primary and slave might be the problem.
Google also found a dead mailing list, but some kind person posted to the dead mailing list a link to this discussion board.
Do you suggest we sue Google for inefficiency


Actually doing this:
http://tinyurl.com/37w3dnt
First result leads you here:
http://grub4dos.sour...ub4dos_tutorial
from which getting here:
http://grub4dos.sour...x.php/Main_Page
is natural, and on the main page there are BOTH a link to:
new grub4dos tutorial -> http://diddy.boot-la...os/Grub4dos.htm comments welcome here ->http://www.boot-land...?showtopic=5187
AND
English support forum -> http://www.boot-land...hp?showforum=66
Second result is unrelated.
Third result leads you to:
http://diddy.boot-la.../files/boot.htm
So, I wouldn't say that the grub4dos guide and boot-land (and it's grub4dos section) is actually "hidden", nor I would held Google responsible for hiding this info from public availability



Wonko
#17
Posted 09 September 2010 - 06:08 AM
Of course not, Google needs to be sued for neglecting to warn otherwise competent adults that they should look both ways before crossing the middle of a street.Do you suggest we sue Google for inefficiency
or we may try working on your google-fu?
Let's take another look at that WHERETO.
And guess what I found on the first of those two sites?http://sites.google.com/site/grubdos/[/url]
http://nufans.net/grub4dos/
Now you see why I found old code? Google AND YOUR WHERETO. You complain to people who obey your own WHERETO. Sure the WHERETO like everything else is maintained by volunteers and I can't complain, but your complaint is somewhat out of line is it not?https://gna.org/projects/grub4dos/[/url]
[...]
Download the binary build: http://download.gna.org/grub4dos/.
But now I've just downloaded the October 2009 version of 0.4.4 from nufans and will try it after a few more minutes.
#18
Posted 09 September 2010 - 06:41 AM
root ( [tab] found (hd0) and I forgot what else, but not (cd0).
find ( [tab] was the same, as expected.
cdrom --init found the ATAPI controller the same as always, but failed to find any cd drives the same as always.
The ATAPI controller's port is the bog standard one as mentioned in my initial posting. Setting the port number to be the bog standard port makes no difference.
Surely the problem is the inconsistent settings of master and slave, and the developer's first answer in this thread is surely correct. If the code can be improved to solve this problem like the BIOS and Windows and Linux do, that will be great, but the port assignment is not the part that needs doing.
#19
Posted 09 September 2010 - 09:33 AM
a server with latest-latest versions is here:
http://nufans.net/grub4dos/
UPDATE 23 June 2010:****************************************************
"current release" is now in:
http://nufans.net/gr...urrent_release/
example 2009-10-16
http://nufans.net/gr...-2009-10-16.zip
Unless otherwise stated all comments, hints, howto etc., will always be related to the NEWISH experimental version you can find in /current_release folder/.****************************************************
Please, PM me the name and address of your optometrist (just to make sure I go to someone else when needing to change lenses to my spectacles)

root ( [tab] found (hd0) and I forgot what else, but not (cd0).
find ( [tab] was the same, as expected.
cdrom --init found the ATAPI controller the same as always, but failed to find any cd drives the same as always.
Can you post actual details, I cannot read on youtr monitor, unfortunately.

Check if the what else finds a (cd) device. (NOT a (cd0) one)
There won't probably be one, but I have to make sure before attempting (provided that you are willing to follow some advice) to send you to something that could anyway reveal itself as a wise goose chase.
WHICH is the "usual" port ?
WHICH OS are you running? Vista?

Is the laptop capable of booting from a bootable CD/DVD?
What happens if you try booting a bootable CD/DVD using grldr as no-emulation bootsector?
Can you run a hardware info of some kind and check which port(s) are detected ifro the CD/DVD devic es when grub4dos is NOT used?
Let's try PLoP, OK?
http://www.plop.at/en/bootmanager.html
http://www.plop.at/e...er.html#rungrub
What happens?

Wonko
#20
Posted 10 September 2010 - 12:20 AM
I think you are right. However, in this discussion, you seemed to think that I shouldn't try betas until after trying the latest release.I guess you didn't notice the bolded part:
Megane Toppo in downtown Hamura City. Since I need separate reading glasses they did make separate reading glasses from distance glasses.Please, PM me the name and address of your optometrist
Commands "find ( [tab]" and "root ( [tab]" produce this:Can you post actual details, I cannot read on youtr monitor, unfortunately.
Possible disks are: fd0 hd0 rd
The machine does not have an fd0. I did not create an rd and do not know where it came from. hd0 is correct and (hd0,0) is bootable. As mentioned a dozen times already, no cd is listed.
The unnecessary "cdrom --init" command produces this:
ATAPI device found: Data=170, Ctrl=376, dev=1(Note: 0=master, 1=slave)
No CD-ROMs found. Perhaps the hardware does not fully support ATAPI. If your
CD-ROM uses unusual I/O ports, please specify them with "--add-io-ports=P".
(I might have made typos in transcribing.)
I don't know what the what else is.Check if the what else finds a (cd) device. (NOT a (cd0) one)
Too late, we've been there for days already.There won't probably be one, but I have to make sure before attempting (provided that you are willing to follow some advice) to send you to something that could anyway reveal itself as a wise goose chase.
My mistake, it's plural, Data=170 and Ctrl=376, same as I've seen for the past 14 years with maybe one antique exception.WHICH is the "usual" port ?
GRUB4DOSWHICH OS are you running? Vista?

XP is installed on (hd0,0) and as mentioned Windows found a way to deal with the inconsistency between configurations of master or slave.
Linux runs from cd if the cd is booted (unfortunately not when Grub4dos is booted, except that it does work on most other PCs when Grub4dos is booted), and as mentioned Linux found a way to deal with the inconsistency between configurations of master or slave.
Yes, if I tell the BIOS to boot the DVD drive instead of booting the hard drive where I temporarily installed Grub4dos, then the BIOS does boot the DVD drive and Linux runs perfectly.Is the laptop capable of booting from a bootable CD/DVD?
Good question, but I'm not going to waste time building grldr into the CD image. The CD already boots fine as it is when it gets booted by a booter that finds the DVD drive.What happens if you try booting a bootable CD/DVD using grldr as no-emulation bootsector?
Both Windows and Linux show port numbers and IRQ (14) that look pretty normal.Can you run a hardware info of some kind and check which port(s) are detected ifro the CD/DVD devic es when grub4dos is NOT used?
I agree, when I have time I will try PLoP, and if it works I will give up with Grub4dos.Let's try PLoP, OK?
#21
Posted 10 September 2010 - 09:16 AM
Very goodGood question, but I'm not going to waste time building grldr into the CD image. The CD already boots fine as it is when it gets booted by a booter that finds the DVD drive.



BTW, something I should have done several posts before, seeing the way you like to behave.

Be well, and good luck, I am sure you will get very far with that attitude of yours...


Wonko
#22
Posted 12 September 2010 - 11:58 PM
Considering that it really looks like a developer gave the correct answer in the first response to my posting, I'm not really sure what you were doing, but I was trying to help you too.I'm not going to waste any more time in trying helping you.
Here's the last bit of news that you don't need, and which the developer doesn't need because it demonstrates that the developer really did already know the correct answer.
I borrowed a 10 year old CD-ROM drive from another notebook PC, and swapped it into this one in place of the DVD combo drive. Everything worked perfectly INCLUDING GRUB4DOS.
The cdrom --init command WAS REQUIRED as documented.
The cdrom --init command found drive (CD0) with the 0 which you said would not be present in (CD).
So the BIOS is not a problem because it works with correct hardware and it manages to work with inconsistent hardware. Windows, same answer. Linux, same answer. Grub4dos gets confused when the PC's wiring says master and the drive's wiring says slave.
'Bye.
#23
Posted 13 September 2010 - 10:16 AM

I had interpreted your original question:
Is there any way to trick Grub4dos into recognizing the drive?
as :
Is there any way to trick Grub4dos into recognizing the drive?
If not, how can I manage to boot this PC from CD-ROM and access grub4dos and/or boot the CD from grub4dos?
You are right, the original question was answered by tinybit allright


Wonko
#24
Posted 13 September 2010 - 05:43 PM

cdrom --init is getting less and less useful.
1. The CDROM device might not be driven by the built-in ATAPI driver of grub4dos.
2. Even the system could have no cdroms.
#25
Posted 14 September 2010 - 12:13 AM
It seems to me to be equally useful as it always used to be.cdrom --init is getting less and less useful.
That unfortunate situation was already true in 2003 when the PC's manufacturer put a DVD drive in the PC and the DVD drive was internally wired to be a slave device.1. The CDROM device might not be driven by the built-in ATAPI driver of grub4dos.
That's irrelevant. If the user puts our live Linux CD in their drive while Windows is running, we offer to install Grub4dos and offer to try to make their PC reboot to Linux. If the user doesn't have a CD drive then they're not going to put our live Linux CD in it.2. Even the system could have no cdroms.
If the user puts our live Linux USB memory key in their USB port while Windows is running, then they'll have to open Windows Explorer and double click a file (unless they're running an unpatched Windows XP that dangerously runs autorun files). Then we offer to install Grub4dos and offer to try to make their PC reboot to Linux.
cdrom --init continues to be useful. I am sad to see its limitation but I thank you for answering properly, twice.
Yours sincerely,
Norman Diamond
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users