jaclaz Posted April 2, 2014 Share Posted April 2, 2014 (edited) What is the gfxmenu line in your menu.lst? (in "Bugfix Version 4.8")?gfxmenu /GFX-BOOT.GFXorgfxmenu /Boot/GFX-BOOT.GFXgo to the grub4dos command line and issue the ls command, check if the file is seen as ALL CAPITALS, as all small letters or in any different way from the one in menu.lst. (or use find / and [TAB] autocompletion)Usually a line *like*:gfxmenu /GFX-BOOT.GFX || gfxmenu /gfx-boot.gfxis used when in doubt, this will attempt loading GFX-BOOT.GFX and IF this fails, attempt to load gfx-boot.gfx.BUT there is a generic issue with the dash or minus "-", as it is considered to be the "small letters" correspondent to the "CAPITAL" underscore "_", a good idea to avoid issues would be to rename the file without the dash, to GFXBOOT.GFX, then this will surely work:gfxmenu /GFXBOOT.GFX || gfxmenu /gfxboot.gfxno matter if the file is (or is made by mkisofs parameters) in upper or lower case.jaclaz Edited April 2, 2014 by jaclaz Link to comment Share on other sites More sharing options...
whocares02 Posted April 2, 2014 Author Share Posted April 2, 2014 (edited) The used line was:gfxmenu /GFX-BOOT.GFXI'll try rename it to GFXBOOT.GFX and use thegfxmenu /GFXBOOT.GFX || gfxmenu /gfxboot.gfx-command in my next run.I'll look up the filenames with ls-command now. Any clue about the combinations for mkisofs-settings? Only two versions were actually booting.Edit:In grub the files are all Uppercase. GFX-BOOT.GFX appears as GFX_BOOT.GFX. I tried the ls-command in grub in Bugfix 4.8. Edited April 2, 2014 by whocares02 Link to comment Share on other sites More sharing options...
jaclaz Posted April 2, 2014 Share Posted April 2, 2014 In grub the files are all Uppercase. GFX-BOOT.GFX appears as GFX_BOOT.GFX. I tried the ls-command in grub in Bugfix 4.8.Yep, that is a clear example of the dash/underscore issue. A file named gfx-boot.gfx would be normally "uppercased" to GFX-BOOT.GFX, and a file GFX-BOOT.GFX is ALREADY uppercased (as the dash is not in itself an alphabetic character subject to lower/upper case) but for *some* reasons in the process also the dash is uppercased to underscore and the result is the GFX_BOOT.GFX (that the gfxmenu command cannot possibly find). To be fair, more than two versions (actually seemingly all of them) were actually booting (to grub4dos), the issues showed after booting (txtsetup not running and/or grub4dos failing to load the gfxmenu). jaclaz Link to comment Share on other sites More sharing options...
whocares02 Posted April 2, 2014 Author Share Posted April 2, 2014 (edited) Okay, but I'll try to understand why.The two installable versions 4.4 and 4.8 use the same combination in the list: Iso-3 + Joliet and no other fancy stuff. So why do I get a graphical grub in 4.4?version 4.4 switched codepage with the switches-input-charset cp850 -output-charset cp850For version 4.8 I usedset LC_ALL=en_US.CP850to change codepage. Using the switches here in addition, caused mkisofs to complain. (unknown switch: -input-charset (I just upgraded mkisofs) or output-codepage must be same as input-codepage).Also interesting is Version 4.3, which is using Iso-4 + Joliet and nothing else but is not installing. I didn't change codepage there.Some strange thing: In all cases grub didn't go graphical, it also didn't accept the color-command. Not sure if this is an important clue. I used:color grey/light-blue white/light-bluein first line of menu.lst. I wanted it looking like the XP-textsetup.Edit:Just running the old 4.2-version again. For some reason no graphics-grub anymore... I tried the ls-command. GFX-BOOT.GFX doesn't seem to be on disk at all. Don't know how and why...maybe I noted something wrong. Propably I added GFX-BOOT.GFX in a later version and didn't miss it in 4.2.Edit2:I made a bugfix-version 4.9 in addition. It's the same as 4.3 but I ranset LC_ALL=en_US.CP850before the mkisofs-call. As well as in version 4.3, textsetup fails with v4.9. But for some reason graphical-grub is coming up now!It's Iso-4 + Joliet without fancy stuff.For comparison: The installable version 4.8 was Iso-3 + Joliet without additional stuff. LC_ALL was set-up too, but I didn't get graphical grub. So Iso-4 made the difference here. Edited April 2, 2014 by whocares02 Link to comment Share on other sites More sharing options...
jaclaz Posted April 2, 2014 Share Posted April 2, 2014 Which exact version of grub4dos are you using?At the command prompt issue:help colorand check the symbolic names listed:http://diddy.boot-land.net/grub4dos/files/menu.htm#displayColours must be one of the following - black, blue, green, cyan, red, magenta, brown, light-gray, dark-gray, light-blue, light-green, light-cyan, light-red, light-magenta, yellow and white."gray" is not a colour light-gray and dark-gray are.http://www.rmprepusb.com/tutorials/grub4dos#TOC-Grub4dos-color-valuesThere may be a typo in the actual output of "help color":http://diddy.boot-land.net/grub4dos/files/commands.htm#colorwhere "light-gray" is spelled (or spelt) as "light-grey".OT , shades of gray (or grey):http://reboot.pro/topic/15878-world-is-not-black-and-white/jaclaz Link to comment Share on other sites More sharing options...
whocares02 Posted April 2, 2014 Author Share Posted April 2, 2014 (edited) Thanks, it's grub 0.4.5c in my installable bugfix-version 4.8 (remember, I changed the version during my testings, when someone provided a link in this threat).help colorindeed shows that grey is not a valid color. Same to dark-blue. Guess XP-setup is usinglight-gray/blue white/blueI will change that in my menu.lstEdit:If someone else is interested: XP-Setup is using the colors:color light-gray/blue blue/light-gray Edited April 2, 2014 by whocares02 Link to comment Share on other sites More sharing options...
jaclaz Posted April 2, 2014 Share Posted April 2, 2014 Good , but there are n versions of 0.4.5c, by EXACT version I was meaning EXACT, like 0.4.5c-2014-01-17 (right now latest 0.4.5c) or 0.4.5c-2013-03-03 (right now "featured" 0.4.5c).One or the other version won't change the behaviour with "classic" commands (like color) but may behave differently regarding behaviour when loading (like finding /menu.lst vs. /MENU.LST and similar, cannot remember when that changed).jaclaz Link to comment Share on other sites More sharing options...
whocares02 Posted April 2, 2014 Author Share Posted April 2, 2014 grub4dos-0.4.5c-2014-01-17 Link to comment Share on other sites More sharing options...
cdob Posted April 2, 2014 Share Posted April 2, 2014 Are you sure ISO 1999 is a good choice? Somewhere within all the posted links someone stated, ISO1999 was worst-case with compatibility.http://en.wikipedia.org/wiki/ISO_9660http://de.wikipedia.org/wiki/ISO_9660ISO9660:1988 is a standard. http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=17505ISO9660:1999 is a draft and won't get a standard anymore. No Windows support this on purpose.A lot of limitations are removed. Be careful: you may shoot your own foot.Umlaute are impossible at ISO9660:1988, and possible at ISO9660:1999.Yes, worst-case compatibility, but required if you need ISO9660 Umlaute.I don't need to change upper- or lowercase because they are all perfect already (e.g. files in Root-folder are all uppercase. Some specific files in some subfolder are lowercase, ...).What about?rem UpperCase XP files at hard diskrem Win32 Console ToolBox http://stevemiller.net/apps/ren F:\n-Lite-Temp\i386 I386filecase.exe /u F:\n-Lite-Temp\win*filecase.exe /u /s /d F:\n-Lite-Temp\i386I created a GFX-BOOT.GFXGrldr may search GFX-BOOT.GFX or gfx-boot.gfx. I don't know.Just because menu.lst is found both cases, dosn't require this for GFX-BOOT.GFX.RunOnceEx.cmd can't use Umlaute. I discovered it was a problem with the codepage of the cmd-file, not the file-system.chcp cp850Bugfix-version 4.5: Iso Level4, NO Joliet, NO RockRidge, -relaxed-filename, -allow-lowercaseTextsetup fails (cdrom.sys not found)Does exist ISO9600 uppercase filename \I386\CDROM.SY?Which mkiosfs -version do you use currently?by what method ("I smelled my way there...").Yes, ImgBurn creates nice ISO images too. Link to comment Share on other sites More sharing options...
jaclaz Posted April 2, 2014 Share Posted April 2, 2014 Between your test 4.7 and 4.8 you changed TWO things at the same time:Bugfix-Version 4.7: ISO-Level 3, Joliet, RockRidge, NO relaxed-filenames, allow-lowercase,Bugfix Version 4.8: ISO Level 3, Joliet, NO RockRidge, NO relaxed-filenames, NO allow-lowercaseWindows setup (SETUPLDR.BIN, etc,) or more generally "windows" knows nothing about Rockridge, but the setup is sensible to uppercase/lowercase, i.e. if you try with RockRidge enabled but with NO allow-lowercase you should have the same result as 4.8, implying that there are one or more files involved in the setup that are *somehow* in lowercase (whilst they should be in uppercase).If you do (from windows command prompt) a (let's say that your CD/DVD drive - real or virtual - is drive letter E: ):DIR E:\ /s /b> C:\my47dir.txton the 4.7 test and:DIR E:\ /s /b>C:\my48dir.txtwith the 4.8 one you should be able to find the differences comparing the two filesAs a further test you could - to make sure - uppercase everything related to the Windows setup on hard disk before creating the .iso, as cdob just re-suggested and re-enable the allow-lowercase.jaclaz Link to comment Share on other sites More sharing options...
whocares02 Posted April 2, 2014 Author Share Posted April 2, 2014 (edited) Does exist ISO9600 uppercase filename \I386\CDROM.SY?I'm sorry, it seems I erased Bugfix-Version 4.5.iso to save diskspace. I can't look it up anymore. However, in my nlite-temp-folder (source for my iso-builds) \I386\cdrom.sys is one of the view exceptions of lowercase-files. Almost everything else is uppercase there.Umlaute are impossible at ISO9660:1988, and possible at ISO9660:1999.Yes, worst-case compatibility, but required if you need ISO9660 Umlaute.The fact I get Umlaute in bugfix4.8 is propably due to the joliet-extension then (it uses ISO-3). Windows-Explorer reads all foldernames properly. In textmode I don't need Umlaute. So no problem here.Which mkiosfs -version do you use currently?mkisofs --versionmkisofs 3.00 (i686-pc-cygwin) Copyright (C) 1993-1997 Eric Youngdale (C) 1997-2010 J▒rg SchillingQuoteRunOnceEx.cmd can't use Umlaute. I discovered it was a problem with the codepage of the cmd-file, not the file-system.chcp cp850That's not enough. In addition I had to switch Codepage in Notepad++ to cp850 to save the file in proper format.What about?rem UpperCase XP files at hard diskrem Win32 Console ToolBox http://stevemiller.net/apps/ren F:\n-Lite-Temp\i386 I386filecase.exe /u F:\n-Lite-Temp\win*filecase.exe /u /s /d F:\n-Lite-Temp\i386I don't wanna modify my HDD-files. There are propably good reasons why some files are lowercase and most of them not. Or do you think nlite made mistakes during integration of hotfixes?! Renaming all of them was a non-reversible operation.Not sure if this is off-topic: At end of my RunOnceEx.cmd I reactivate windows file protection (without setup is faster). It shows up then and wants to replace files. It doesn't accept my nlite-ISO as original CD. Is this usual or could it be related to the filesystem as well?Edit:Just reading jaclaz' post: I tried no-lowercase + RockRidge in V4.2. However, it's using ISO-4 instead of ISO-3.Do you mean I should try: ISO-3 + NO Joliet + RockRidge + No lowercaseor: ISO-3 + Joliet + RockRidge + NO lowercaseCan the finally installed Windows-XP read RockRidge-DVDs? Edited April 2, 2014 by whocares02 Link to comment Share on other sites More sharing options...
jaclaz Posted April 2, 2014 Share Posted April 2, 2014 However, in my nlite-temp-folder (source for my iso-builds) \I386\cdrom.sys is one of the view exceptions of lowercase-files. Almost everything else is uppercase there.Well, TXTsetup expects an uppercase CDROM.SY_/CDROM.SYS, so if you are not going to uppercase it in the source, you cannot have -allow-lowercase in the mkisofs.exe (which may cause other issues, like the dash/underscore one).jaclaz Link to comment Share on other sites More sharing options...
whocares02 Posted April 2, 2014 Author Share Posted April 2, 2014 I see...Why is setup working in 4.8? Does Iso-3 allow lowercase? Can Textsetup read Joliet? Does the -allow-lowercase-switch force all filenames to lowercase? I don't get it. Link to comment Share on other sites More sharing options...
cdob Posted April 2, 2014 Share Posted April 2, 2014 \I386\cdrom.sys is one of the view exceptions of lowercase-files. Almost everything else is uppercase there.Setupldr.bin searches \I386\CDROM.SY? at textmode and won't find a lower case file, textmode will fail. The fact I get Umlaute in bugfix4.8 is propably due to the joliet-extension then (it uses ISO-3). Windows-Explorer reads all foldernames properly.Yes, cdfs.sys reads Joliet. cdfs is loaded at installed windows. mkisofs 3.00 (i686-pc-cygwin)What about cdrtools-3.01a23-win32-bin.zip? http://www.student.tugraz.at/thomas.plank/index.html I don't wanna modify my HDD-files. There are propably good reasons why some files are lowercase and most of them not. Or do you think nlite made mistakes during integration of hotfixes?! Renaming all of them was a non-reversible operation.Neither Nlite nor MS care about case at hotfix integration. Both expect uppercase at following step. Not sure if this is off-topic: At end of my RunOnceEx.cmd I reactivate windows file protection (without setup is faster). It shows up then and wants to replace files. It doesn't accept my nlite-ISO as original CD. Is this usual or could it be related to the filesystem as well?I doubt file case as a reason. Can the finally installed Windows-XP read RockRidge-DVDs?No, Windows can't read rock ridge. If possible avoid rock ridge at XP installation cd. Grub4dos maybe case sensitive still. Does filenames within menu.lst has to match case at DVD? Why is setup working in 4.8? Does Iso-3 allow lowercase? Can Textsetup read Joliet? Does the -allow-lowercase-switch force all filenames to lowercase?Iso9660 Level 3 proihibits lowercase, hence mkisofs uppercase the name. Compare the name at ISOBuster. Textmode can't read joliet, cdfs.sys is not active that erarly. -allow-lowercase allows lower case: it's preservers case from the hard disk: uppercase names goes uppercase, lowercase names goes lowercase Link to comment Share on other sites More sharing options...
jaclaz Posted April 2, 2014 Share Posted April 2, 2014 Iso level 3 - if I recall correctly - does not change in itself the "base" requirement of files needing to be uppercase.The joliet extension should provide support for longer filenames and for "mixed case". Iso level 4 does not really exist, it is a form of iso level 2 or 3 with some restrictions removed.The -allow-lowercase is a violation of ISO9660:http://cdrecord.berlios.de/private/man/cdrecord/mkisofs.8.html-allow-lowercaseThis options allows lower case characters to appear inISO-9660 filenames.This violates the ISO-9660 standard, but it happens to work on some systems. Use with caution.i.e. if the -allow-lowercase switch is NOT used, then any non-conforming filename (in iso-level up to 3) will be uppercased to conform to ISO9660.So, your cdrom.sy_ will become CDROM.SY_ (and txtsetup will find it), or if you had cdrom.sys it will become CDROM.SYS (and txtsetup will still find it).The downside is that the gfx-boot.gfx or GFX-BOOT.GFX may become GFX_BOOT.GFX.A "Windows XP install CD" (original) has ALL FILES CAPITAL and txtsetup wants to have them like that (at least for the files used in it, it is very possible that after txtsetup the files used in the GUI part of setup can be in *any* case, as they are accessed by the "standard" windows which is case insensitive).In a "pure" install Cd you simply don't use "-allow-lowercase" and everything is fine.Grub4dos is historically hardcoded to find a /menu.lst (or /boot/grub/menu.lst or /grub/menu.lst) and until recently you needed to (as explained early) change in the the embedded menu.lst the string "menu.lst" to "MENU.LST" (and grub to GRUB and boot to BOOT, if you used the subdirectories).Recently (but as said cannot really remember when) it was patched in such a way that the menu is found anyway, but cannot say if it accesses "generically" the file-system as CaSe InSeNsItIvE now, traditionally it needed (and used only) the Rockridge extension, which is case sensitive, recent version may access either the ISO9660 or the Joliet names.A PE 2.x (or later) has normally a "boot" subdirectory (where the boot.sdi is), though cannot say if making it "BOOT" will change anything, a Linux may need a given file in lowercase (or in uppercase or MiXed MoDe/whatever).Any of the other things that you added to your DVD (and that you won't talk about ) may have one requisite or the other, some mkisofs parameter that "fixes" one thing may "create an issue" with something else, this is the dificult part when making "multi" CD/DVD's.The traditional way for me has been that of using -iso-level 4 and adding a Rockridge extension, and NOT add the "-allow-lowercase" i.e. this set of commands :http://reboot.pro/topic/9696-oscdimg-and-grub4dos/page-2#entry84348and that I believe correspond to your 4.2 attempt (but I have ALL FILES UPPERCASE in the source directory on hard disk from which I build, and the above post does contain a reference on why this is done - that is year 2004, ten years ago).If you insist on having the files on the hard disk in lowercase because n-lite or some other program tweak made them like that, and you don't want to change them, you will have to use a "lower" -iso-level than 4 and NOT use with -iso-level 2 or 3 the "-allow-lowercase", and find workarounds for the issues that this choice may cause.The example with GFX-BOOT.GFX vs. GFX_BOOT.GFX represents one of such issues that is easily fixable, it is to be seen what other "needs", such as the "Umlauts" may require in the mkisofs parameters.jaclaz Link to comment Share on other sites More sharing options...
Recommended Posts