Jump to content











Photo
- - - - -

Still issues... - Lenovo's and MEMDISK fails to load any floppy image - Lets tackle it!


  • Please log in to reply
43 replies to this topic

#1 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 27 July 2009 - 04:39 PM

Eek! looks like I jumped the gun too soon. Looks like we have an issue with latest memdisk. See last/latest posts.

SOLVED!

Much thanks to Andy Tim, H. Peter Anvin, and Icecube.


Resolution: Update memdisk to latest version (tested successfully using the syslinux 3.83pre6 memdisk)

Notes:
FreeDos (and possibly other images) may require memdisk with raw option to fully work with all options.
MSDOS/Win98bootdisk/Lenovo Maintenance disks all seem to work well with just memdisk.



Original Post:

Hi,

I have noticed that all newer Lenovo laptops (x61, x200s, T60, T61, W500) that I have tried have failed to load floppy based images (anything that uses memdisk to load up the files). They will attempt to load the image and then lock up. Latest bios, latest ubcd, updated syslinux files, etc.

I have a feeling that a memdisk just needing a minor adjustment as there just seems to be a blanket failure on the lenovo machines and memdisk. Perhaps a memory addressing issue?

Regardless I would like to help to tackle this problem. How could we go about pinpointing this problem?

thanks,
dpc



#2 ktp

ktp

    Silver Member

  • Advanced user
  • 727 posts

Posted 27 July 2009 - 04:44 PM

This is a known problem with memdisk/syslinux. You can use grub4dos floppy emulation to bypass the problem :
http://www.boot-land...?...=4486&st=10
and
http://www.boot-land...?...20&start=20

#3 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 27 July 2009 - 04:57 PM

This is a known problem with memdisk/syslinux. You can use grub4dos floppy emulation to bypass the problem :
http://www.boot-land...?...=4486&st=10
and
http://www.boot-land...?...20&start=20

Hi KTP, Thanks for the quick reply.

Ok so it seems that this is a known issue - would it be possible for me to assist in pinpointing the problem (or is it more of a design limitation/technically not possible kind of issue?).

As a side note - would it be possible to put an entry into the syslinux menu that would directly load grub+floppy image desired? Why I ask is I put together a set of tools using syslinux as menu/loader system and would rather avoid maintaining two menu systems (grub+syslinux) but wouldn't mind for certain images to be directly loaded via grub floppy emulation as a one time thing.

thank you,
dpc

#4 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 28 July 2009 - 01:02 PM

Did you try to boot the problematic images with the grub4dos menu in UBCD like I asked you at the UBCD forums? Does it work, or not.
If it works in grub4dos, it should be possible to let MEMDISK work too (if the developers do some effort).

#5 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 28 July 2009 - 02:51 PM

@Icecube - Sorry about no reply. I am trying to get my hands on a lenovo that I can run some tests on (mostly working with dells lately it seems). I will try to do a full test with grub/latest syslinux beta and so.

thank you,

#6 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 28 July 2009 - 02:59 PM

Don't forget to update memdisk (you can find it in the Syslinux package).

#7 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 28 July 2009 - 10:03 PM

Still trying to get my hands on a Lenovo to test out...

However one of people using my UBCD build say that the USB stick version fails to load the floppy images BUT the DVD ISO build (which contains the identical files, well chain.c32 is from syslinux 3.82 on usb and on DVD iso its the 3.83 patched syslinux chain.c32- see icecube's post - but that shouldn't apply in this case) loads the floppy images successfully.

What could be causing this? Is it possible the chain.c32 is causing this behavior? Or does isolinux.bin render the floppy images differently?

thanks,
dpc

#8 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 28 July 2009 - 10:30 PM

What could be causing this? Is it possible the chain.c32 is causing this behavior? Or does isolinux.bin render the floppy images differently?

chain.c32 isn't used for emulating floppies, MEMDISK is.
It probably means that the BIOSes on these PCs are crap. They assume things that they shoudn't assume (comparable with BIOSes that only will booty USB sticks with a certain partition scheme).

If you get your hands on those PCs:
  • Update MEMDISK to the last version (Syslinux package)
  • Build CD/DVD and USB version
  • Test floppy emulation on the syslinux menu (uses MEMDISK) and the grub4dos menu (uses its own way to emulate floppies) with the CD/DVD and USB version.
  • Post the results in a structured manner.


#9 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 29 July 2009 - 07:35 AM

To help standardize the tests...

I have taken UBCD 5.0b12, stripped out all the extra images and software and basically left syslinux, grub, and freedos floppy image for this scenario. I have not updated grub and am using grub that came with ubcd 5.0b12. Using the scripts that came with UBCD to create the ISOs and install to USB (all are included in packages under tools). I am posting these here so that anybody who wants to jump in and see what code/files I am using can quickly download and recreate the same fileset. I will keep these files posted for a while.

Files updated from syslinux:
isolinux.bin
syslinux.exe
memdisk
chain.c32
menu.c32
vesamenu.c32
reboot.c32
ldlinux.sys

UBCD with Syslinux 3.82 (Latest Stable syslinux)
http://delicatepc.com/ubcd-3.82.iso (ISO - 4.02MB)
http://delicatepc.com/ubcd-3.82.zip (ZIP - 3.22MB)

UBCD with Syslinux 3.83pre2 (Latest Beta syslinux - Released just today)
http://delicatepc.co...cd-3.83pre2.iso (ISO - 4.10MB)
http://delicatepc.co...cd-3.83pre2.zip (ZIP - 3.24MB)

Will try to test on a Lenovo today and provide feedback.

thanks,
dpc

#10 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 29 July 2009 - 03:45 PM

Lenovo X61
BIOS 2.13 - 04/30/2008

UBCD-3.82 - USB Edition
Syslinux Menu
- Freedos plain: Fails at Init Disk
- Freedos w/ raw: Fails with Invalid Opcode at 6469 0001 0206 6275 6463 692E 7A67 4220 4F4F 5F54 4D49 4741 3D45
- Freedos w/ bigraw: Fails at Init Disk (and then auto reboots)
Grub Menu
- FreeDos: All options load ok (0 through 8).

UBCD-3.83pre2 - USB Edition
Syslinux Menu
- Freedos plain: Fails at Init Disk
- Freedos w/ raw: Fails with Invalid Opcode at 6469 0001 0206 6275 6463 692E 7A67 4220 4F4F 5F54 4D49 4741 3D45
- Freedos w/ bigraw: Fails at Init Disk
Grub Menu
- FreeDos: All options load ok (0 through 8).

UBCD-3.82 - ISO Edition - Not tested redundant to 3.83pre2 ISO. Dont have too many blank cds here...

UBCD-3.83pre2 - ISO Edition
Syslinux Menu
- Freedos plain: Boots good
- Freedos w/ raw: Boots good
- Freedos w/ bigraw: Boots good
Grub Menu
- FreeDos: Boots good

#11 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 29 July 2009 - 04:09 PM

Did all entries in the freedos image (0-8) in the USB version with MEMDISK, result in the same opcode?

#12 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 29 July 2009 - 04:20 PM

Did all entries in the freedos image (0-8) in the USB version with MEMDISK, result in the same opcode?

It doesnt get that far. It goes initdisk and right after that it claims invalid opcode (only when using the memdisk raw other ones just fail at initdisk) (doesn't get to the point of offering the options) - same opcode for both usb versions.

#13 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 30 July 2009 - 08:50 AM

Can you try also MEMDISK with grub4dos (probably it won't make any difference, but you never know) (from USB is enough).
title UBCD FreeDOS R1.33 (Based on NwDsk V3.40) with MEMDISK raw\n FreeDOS boot disk used to run many of the other DOS apps on the UBCD. Revised\n version of Eric Veermans' FreeDOS NwDsk 3.40. Addresses many bug fixes,\n performance enhancements and compatibility issues.

kernel /boot/syslinux/memdisk raw

initrd /ubcd/images/fdubcd.igz



title UBCD FreeDOS R1.33 (Based on NwDsk V3.40) with MEMDISK bigraw\n FreeDOS boot disk used to run many of the other DOS apps on the UBCD. Revised\n version of Eric Veermans' FreeDOS NwDsk 3.40. Addresses many bug fixes,\n performance enhancements and compatibility issues.

kernel /boot/syslinux/memdisk bigraw

initrd /ubcd/images/fdubcd.igz



title UBCD FreeDOS R1.33 (Based on NwDsk V3.40) with MEMDISK\n FreeDOS boot disk used to run many of the other DOS apps on the UBCD. Revised\n version of Eric Veermans' FreeDOS NwDsk 3.40. Addresses many bug fixes,\n performance enhancements and compatibility issues.

kernel /boot/syslinux/memdisk

initrd /ubcd/images/fdubcd.igz


#14 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 30 July 2009 - 02:24 PM

UBCD-3.82 - USB Edition
Grub Menu
- FreeDos w/ MEMDISK RAW: Invalid Opcode at 0003 0001 0202 5250 0000 0000 0000 0000 0000 0000 0000 0000 0000
- FreeDos w/ MEMDISK BIGRAW: Invalid Opcode at 0003 0001 0202 5250 0000 0000 0000 0000 0000 0000 0000 0000 0000
- FreeDos w/ MEMDISK: Invalid Opcode at 0003 0001 0202 5250 0000 0000 0000 0000 0000 0000 0000 0000 0000

UBCD-3.83pre2 - USB Edition
Grub Menu
- FreeDos w/ MEMDISK RAW: Invalid Opcode at 0003 0001 0202 5250 0000 0000 0000 0000 0000 0000 0000 0000 0000
- FreeDos w/ MEMDISK BIGRAW: Invalid Opcode at 0003 0001 0202 5250 0000 0000 0000 0000 0000 0000 0000 0000 0000
- FreeDos w/ MEMDISK: Invalid Opcode at 0003 0001 0202 5250 0000 0000 0000 0000 0000 0000 0000 0000 0000

Same invalid opcode response for all of them.

~
dpc

#15 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 30 July 2009 - 08:29 PM

Some good news Syslinux 3.83-pre3:

I *think* I have found and fixed the Thinkpad MEMDISK problem. The
problem with MS-DOS I understand... not so when it comes to an
apparently unrelated FreeDOS problem, and as such I really don't know
*why* the hack I did works, nor if it will *stay* fixed, but at least it
seems to boot on my T61 (at least until it crashes due to another error...)

-hpa

--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.

http://syslinux.zyto...uly/012958.html

He was fixing it for his own Thinkpad, so maybe it won't help in your case, but try MEMDISK of Syslinux 3.83-pre3 anyway and report as before (USB only is fine (syslinux and grub4dos)). You only need to update MEMDISK, not syslinux itself (doesn't harm, but not necessary).

#16 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 30 July 2009 - 08:58 PM

very quick post...

Lenovo X301 with UBCD-3.83pre2 with memdisk from syslinux 3.83pre3...

Using freedos with option 2 (optimal) for test.

with plain memdisk it fails and gives out opcode. With memdisk raw or memdisk bigraw it seems to successfully load the image (behavior same in syslinux and in grub)

returning the x301 but we are definitely close or solved.

thanks,
dpc

#17 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 30 July 2009 - 09:21 PM

Nice to hear this :idea:.

Does the FreeDos image boots completely when you use 'raw' (or 'bigraw') or does it only get further than previously?

Let me know, if you can boot all entries now.

I also found an older topic on the UBCD forums, which had the same problem (MEMDISK from CD works, from USB not):
http://www.ultimateb...php?p=7339#7339

#18 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 30 July 2009 - 09:53 PM

Does the FreeDos image boots completely when you use 'raw' (or 'bigraw') or does it only get further than previously?

Let me know, if you can boot all entries now.

Define (with a picture?) "boots completely". On the X61 when it was able to load the image it would load it, run the keyboard,cd,usb scripts or whatever and then put me an a: prompt (didnt seem to be any failures anywhere I assumed that it was what it was supposed to do). On the X301 when it was able to boot image it would load it and go through those scripts and then at the end would pop up a white/grey menu with options to load ubcd programs etc. Which one is boot completely?

I will try to check all the entries when I have chance.

thanks,
dpc

#19 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 30 July 2009 - 10:00 PM

The X301 one boots completely.
The X61one doesn't boot completely (can't find /ubcd/dosapps/ubcd.ini), but this isn't related to the MEMDISK problem you had, but a problem in the FreeDos image itself (or with some of your hardware).

Download the newer FreeDos Image for UBCD and see if its helps for the X61 (and other models eventually):
http://localhostr.co...d/fdubcd.img.gz 9rename the file to fdubcd.igz or rename fdubcd.igz in the config files to fdubcd.img.gz).

#20 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 30 July 2009 - 10:31 PM

UBCD with Syslinux 3.83pre3 (Latest Beta syslinux and latest FreeDos)
http://delicatepc.co...cd-3.83pre3.iso (ISO - 3.51MB)
http://delicatepc.co...cd-3.83pre3.zip (ZIP - 2.63MB)

Just adding in for standardized testing....

~
dpc

#21 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 31 July 2009 - 02:47 PM

What are the implications of using the RAW command on memdisk? I ask because I want to add the RAW commands to all my diagnostic tools so that they can work on the lenovos.

I will testing out the updated image later once I can get my hands on another lenovo.

Thank you,
dpc

#22 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 31 July 2009 - 05:06 PM

Ok Updated to syslinux 3.83pre5....

FreeDos seems to be working ok with the RAW command. I do get a lot of gibberish at the top of the screen once its finished loading (not distortion, just command line gibberish looks like some weird exceptions occuring). The same thing doesnt happen in virtualbox.

MSDOS/PCDOS based bootdisks seem to be failing. For example Win98SE bootdisk loads img says loading bootsector... loaded.... starting Win98 start up disk.... then it says type in command interpreter (ie its telling us it cannot find command.com which is defintely there). Another example, Drive Fitness Test from UBCD (using memdisk raw) loads boot img says loading bootsector..... loaded... starting PCDos... and then it just sits there. Seatools 2 (from ubcd) works well though.

Seems like there is a failure of accessing the mounted imaged after msdos loads?

ideas?
dpc

#23 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1,050 posts
  •  
    Belgium

Posted 31 July 2009 - 05:14 PM

Part of the memdisk documentation (/doc/memdisk.txt):

d) MEMDISK normally uses the BIOS "INT 15h mover" API to access high
memory. This is well-behaved with extended memory managers which load
later. Unfortunately it appears that the "DOS boot disk" from
WinME/XP *deliberately* crash the system when this API is invoked.
The following command-line options tells MEMDISK to enter protected
mode directly, whenever possible:

raw Use raw access to protected mode memory.

bigraw Use raw access to protected mode memory, and leave the
CPU in "big real" mode afterwards.

int Use plain INT 15h access to protected memory. This assumes
that anything which hooks INT 15h knows what it is doing.

safeint Use INT 15h access to protected memory, but invoke
INT 15h the way it was *before* MEMDISK was loaded.
This is the default since version 3.73.

For most images you don't need 'raw' at all. Only if the image uses DOS and extended memory managers, this is sometimes required (differs from PC to PC). For the FreeDOS image, I need to use 'raw' too, while all other floppy images work fine without it.

#24 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1,676 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 31 July 2009 - 08:14 PM

delicatepc: Are you suggesting a regression? That is, are you saying the Win98 DOS floppy images that previously worked with MEMDISK no longer work with the -pre5 you just tried? - Sha0

#25 delicatepc

delicatepc

    Member

  • Members
  • 42 posts
  •  
    United States

Posted 31 July 2009 - 08:44 PM

delicatepc: Are you suggesting a regression? That is, are you saying the Win98 DOS floppy images that previously worked with MEMDISK no longer work with the -pre5 you just tried? - AndyTim

Not that I know of yet at least (I do not have any reason to believe so). Previously I used FreeDos for testing and it seems to be still working in pre5. What I didnt test before is other images (Win98SE, hdd diag imgs, etc.)

I will definitely want to test the other images with pre3 to and see how it differs.

thanks,
dpc




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users