Jump to content











Photo
- - - - -

Infinite Loop with DOS using Memdisk over PXE


  • Please log in to reply
12 replies to this topic

#1 BrentNewland

BrentNewland

    Newbie

  • Members
  • 14 posts

Posted 29 April 2010 - 12:50 AM

Perhaps someone has some advice.

I just threw together a floppy image that should support USB, NTFS, FAT32, long file names, and Windows 3.1 on top of DOS 7.1 (fits in a 2.88MB image size). It's based on Wengier's 7.1 DOS image.

Problem is, when I boot it, I get an infinite loop from Memdisk.

(The following text is not mine, but is representative of how it looks when I boot)

MEMDISK 2.07 2.07-pre5 Copyright 2001-2003 H., Peter Anvin 

e820: 0000000000000000 000000000008d800 1 

e820: 000000000008d800 0000000000012800 2 

e820: 00000000000dc000 0000000000004000 2 

e820: 00000000000e4000 000000000001c000 2 

e820: 0000000000100000 0000000007df0000 1 

e820: 0000000007ef0000 000000000000c000 3 

e820: 0000000007efc000 0000000000004000 4 

e820: 0000000007f00000 0000000000100000 1 

e820: 00000000fec00000 0000000000010000 2 

e820: 00000000fee00000 0000000000001000 2 

e820: 00000000fffe0000 0000000000020000 2 

Ramdisk at 0x06b40000, length 0x1388000 

command line: initrd=dos.img keeppxe BOOT_IMAGE=memdisk 

MEMDISK: image seems to have fractional end cylinder 

Disk is hard disk, 20000 K, C/H/S = 317/2/63 

Total size needed = 1436 bytes 

Old dos memory at 0x8d800 (map says 0x8d800), loading at 0x8d000 

1588: 0xffff 15E801: 0x3c00 0x05b4 

INT 13 08: Success. count = 1, BPT = 0000:0000 

old: int13 = ec6c25fc int15 = f000f859 

new: int13 = 8d000008 int15 - 8d00023c 

Loading boot sector... booting... 

MEMDISK 2.07 2.07-pre5 Copyright 2001-2003 H., Peter Anvin 

e820: 0000000000000000 000000000008d800 1 

e820: 000000000008d800 0000000000012800 2 

e820: 00000000000dc000 0000000000004000 2 

e820: 00000000000e4000 000000000001c000 2 

e820: 0000000000100000 0000000007df0000 1 

e820: 0000000007ef0000 000000000000c000 3 

e820: 0000000007efc000 0000000000004000 4 

e820: 0000000007f00000 0000000000100000 1 

e820: 00000000fec00000 0000000000010000 2 

e820: 00000000fee00000 0000000000001000 2 

e820: 00000000fffe0000 0000000000020000 2 

Ramdisk at 0x06b40000, length 0x1388000 

command line: initrd=dos.img keeppxe BOOT_IMAGE=memdisk 

MEMDISK: image seems to have fractional end cylinder 

Disk is hard disk, 20000 K, C/H/S = 317/2/63 

Total size needed = 1436 bytes 

Old dos memory at 0x8d800 (map says 0x8d800), loading at 0x8d000 

1588: 0xffff 15E801: 0x3c00 0x05b4 

INT 13 08: Success. count = 1, BPT = 0000:0000 

old: int13 = ec6c25fc int15 = f000f859 

new: int13 = 8d000008 int15 - 8d00023c 

Loading boot sector... booting... 

MEMDISK 2.07 2.07-pre5 Copyright 2001-2003 H., Peter Anvin 

e820: 0000000000000000 000000000008d800 1 

e820: 000000000008d800 0000000000012800 2 

e820: 00000000000dc000 0000000000004000 2 

e820: 00000000000e4000 000000000001c000 2 

e820: 0000000000100000 0000000007df0000 1 

e820: 0000000007ef0000 000000000000c000 3 

e820: 0000000007efc000 0000000000004000 4 

e820: 0000000007f00000 0000000000100000 1 

e820: 00000000fec00000 0000000000010000 2 

e820: 00000000fee00000 0000000000001000 2 

e820: 00000000fffe0000 0000000000020000 2 

Ramdisk at 0x06b40000, length 0x1388000 

command line: initrd=dos.img keeppxe BOOT_IMAGE=memdisk 

MEMDISK: image seems to have fractional end cylinder 

Disk is hard disk, 20000 K, C/H/S = 317/2/63 

Total size needed = 1436 bytes 

Old dos memory at 0x8d800 (map says 0x8d800), loading at 0x8d000 

1588: 0xffff 15E801: 0x3c00 0x05b4 

INT 13 08: Success. count = 1, BPT = 0000:0000 

old: int13 = ec6c25fc int15 = f000f859 

new: int13 = 8d000008 int15 - 8d00023c 

Loading boot sector... booting...

And repeat infinitely.

I tried it with the regular DOS 7.1 floppy image and it works, but the "Super" floppy image does not work.

Source: http://ms-dos7.hit.bg/

Basic DOS boot disk: http://ms-dos7.hit.b...re/msdos71b.zip
Super DOS boot disk: http://msdos7.hit.bg...re/mdos71bd.zip


My boot entry for pxelinux:

label dos

  menu label ^DOS 7.1 Windows 3.1 USB NTFS LFN

  LINUX images/memdisk

  INITRD images/new/dos71-usb-ntfs-lfn-win32.IMA 

  APPEND floppy safeint

I am using the latest Memdisk/pxelinux. I have tried using "raw" instead of safeint to no effect.


I plan on rebuilding the DOS 7.1 super disk tomorrow, step by step, to see if something is interfering with MemDisk.

But until then, does anyone have any ideas? Have you seen a problem like this, where memdisk just keeps reloading?

#2 Wonko the Sane

Wonko the Sane

    The Finder

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

Posted 29 April 2010 - 08:36 AM

At first sight what you are using is not a 2.88 floppy image.
Yours has (or is seen by memdisk as having) a geometry of 317x2x63.
317x2x63x512=20,450,304

A 2.88 Mb image is exactly 2,949,120 bytes in size and has a geometry of 80x2x36

Compare with this:
http://www.911cd.net...showtopic=10853
http://www.911cd.net...o...10853&st=18

Cannot say if this is part of the problem, but it could be.

Which methot/tool/app are you using to create the image?
Some references:
http://www.911cd.net...w...c=11096&hl=

:mellow:
Wonko

#3 BrentNewland

BrentNewland

    Newbie

  • Members
  • 14 posts

Posted 29 April 2010 - 03:12 PM

At first sight what you are using is not a 2.88 floppy image.
Yours has (or is seen by memdisk as having) a geometry of 317x2x63.
317x2x63x512=20,450,304

A 2.88 Mb image is exactly 2,949,120 bytes in size and has a geometry of 80x2x36

Compare with this:
http://www.911cd.net...showtopic=10853
http://www.911cd.net...o...10853&st=18

Cannot say if this is part of the problem, but it could be.

Which methot/tool/app are you using to create the image?
Some references:
http://www.911cd.net...w...c=11096&hl=

:mellow:
Wonko




As I said above,

(the following text is not mine, but is representative of how it looks when I boot)



#4 Wonko the Sane

Wonko the Sane

    The Finder

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

Posted 29 April 2010 - 03:35 PM

As I said above,

(the following text is not mine, but is representative of how it looks when I boot)


Well, then, my post should be regarded as merely representative of how a helping post should be made. :mellow:

Since my crystall ball is in the shop for tuning, and notoriously Tarots and I-Ching are widely inaccurate, I cannot have even the faintest idea of what the problem could be unless of course you post ACTUAL data related to YOUR current problem.

See if this helps into clarifying what you may want to post (should you be interested in revceiving help for your issue):
http://homepages.tes...ard-litany.html
right now the situation is in the "I'm ill, doctor. Help!" stage.

The "common sense advice" within Rules might also help:
http://www.boot-land...?showtopic=9101
points d. and f5. appear as particularly relevant.

In other words, describe EXACTLY how you are attempting to use memdisk, where, on which media, within which hardware, etc. etc. AND post the EXACT report you are having, type it or post a screenshot, or find any other way to give the needed information for members willing to help you to do so.

From experience I can tell you that the total number of boot-land members with ESP capabilities is surprisingly low. :P

:mellow:
Wonko

#5 BrentNewland

BrentNewland

    Newbie

  • Members
  • 14 posts

Posted 29 April 2010 - 05:57 PM

Well, then, my post should be regarded as merely representative of how a helping post should be made. :mellow:

Since my crystall ball is in the shop for tuning, and notoriously Tarots and I-Ching are widely inaccurate, I cannot have even the faintest idea of what the problem could be unless of course you post ACTUAL data related to YOUR current problem.

See if this helps into clarifying what you may want to post (should you be interested in revceiving help for your issue):
http://homepages.tes...ard-litany.html
right now the situation is in the "I'm ill, doctor. Help!" stage.

The "common sense advice" within Rules might also help:
http://www.boot-land...?showtopic=9101
points d. and f5. appear as particularly relevant.

In other words, describe EXACTLY how you are attempting to use memdisk, where, on which media, within which hardware, etc. etc. AND post the EXACT report you are having, type it or post a screenshot, or find any other way to give the needed information for members willing to help you to do so.

From experience I can tell you that the total number of boot-land members with ESP capabilities is surprisingly low. :P

:mellow:
Wonko



You know, I posted a pretty comprehensive topic with a fair amount of information. You apparently can't read english very well, so I posted a short, unemotional, non-sarcastic response. Then you went off and made an a** of yourself. I even posted links to the files that were having issues that you could have downloaded yourself and looked at.

I don't care if you have almost 1,200 posts, if you want to be a dick, then I don't want your help. I'll figure it out myself, and I'll contact the developers of the Syslinux project when I find out what was wrong, so they can fix the incompatibility or post a warning about it.

#6 Wonko the Sane

Wonko the Sane

    The Finder

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

Posted 29 April 2010 - 06:20 PM

... then I don't want your help.

No prob, you are not going to get any more from me, after your attack to me. :mellow:

I'll figure it out myself, and I'll contact the developers of the Syslinux project when I find out what was wrong, so they can fix the incompatibility or post a warning about it.


That's fine. :P

Though I still fail to see the need to personally attack me, if not because you are incorrigibly lacking any form of "normal" politeness or "netiquette" (besides "common sense"). :P

What you got:
  • you offended the only member who tried to help you
  • you managed to break Rule #7 by flaming another member
  • you also managed to break Rule #12
  • you still have your problem unresolved

Really, really smart as your introduction to this Community. :mellow:

:P
Wonko

#7 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1062 posts
  •  
    Belgium

Posted 29 April 2010 - 09:18 PM

MEMDISK 2.07 2.07-pre5 Copyright 2001-2003 H., Peter Anvin

This doesn't look like the last version to me.
MEMDISk 3.86 is the last version.

I don't have any problem booting the Super DOS boot disk with qemu:
qemu -kernel ./syslinux-3.86/memdisk/memdisk -initrd ./MSDOS710.IMG


#8 BrentNewland

BrentNewland

    Newbie

  • Members
  • 14 posts

Posted 30 April 2010 - 11:56 PM

To avoid any further confusion, I painstakingly typed everything it threw out on the screen. There may be transcription errors, the keyboard I'm using occasionally repeats a key press three times - not just in a row, but sometimes after other letters (i.e. "bobbot" instead of boot)

stage1 MEMDISK 3.86 2010-04-01   Copyright 2001-2010 H. Peter Anvin et al

e820: 0000000000000000 000000000009b000 1

e820: 000000000009b000 0000000000005000 2

e820: 00000000000e0000 0000000000020000 2

e820: 0000000000100000 000000007f3bf000 1

e820: 000000007f4bf000 00000000002d0000 2

e820: 000000007f78f000 0000000000021000 1

e820: 000000007f7b0000 000000000000e000 3

e820: 000000007f7be000 0000000000032000 4

e820: 000000007f7f0000 0000000000010000 2

e820: 00000000fee00000 0000000000001000 2

e820: 00000000fff00000 0000000000100000 2

Ramdisk at 0x7f4bf000, length 0x002d0000

command line: floppy safeint initrd=images/new/dos71-usb-ntfs-lfn-win32.ima  BOOT_IMAGE=images/memdisk

Disk is fd0, 2880 K, C/H/S = 80/2/36 (FAT/FAT), EDD off, rw

Using safe INT 15h access to high memory

Cccode 1348, meminfo 216, cmdline 90, stack 512

Total size needed = 2166 bytes, allocating 3K

Old dos memory at 0x9b000 (map says 0x9b000), loading at 0x9a400

1588: 0xffff   15E801: 0x3c00 0x7e4b

INT 13 08: Success, count = 5, BTP = 9b00:0524

BIOS equipment byte says count = 4, go with that

Drive probing gives drive shift limit: 0x05

old: int13 = 9b00000a   int15 = 9b0002d1   int1e = 9ec00524

new: int13 = 9a40000a   int15 = 9a4002d1   int1e = 9ec00524

Loading boot sector... booting...


*edit* I just noticed that some of the values are changing when it's doing this - reminder, it repeats this output dozens or hundreds of times per second.

I didn't have time to record the changed values (had to go home), but I know the e820 values changed, as well as (IIRC) at least the 1588 address, and possibly the int13 addresses.

You can get the exact image I'm working with at http://216.160.181.2...s-lfn-win32.IMA

*edit2* Just tried booting that image in vmware, it gives me a "stage1" message and just sits there. Seems that the floppy image is using grub for some reason? (checking) Yep, inside of the "boot" folder of that image is a menu.lst and stage1/stage2.


So, somehow, i'm guessing that grub on that floppy is interfering with memdisk.

#9 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1062 posts
  •  
    Belgium

Posted 01 May 2010 - 12:40 AM

Does this happen on a real PC and/or in a virtual machine?

Can you share the image (eventually by PM)?

#10 BrentNewland

BrentNewland

    Newbie

  • Members
  • 14 posts

Posted 01 May 2010 - 01:12 AM

Sorry, I kept editing my post without refreshing the page. More details are at the bottom of the post above yours.

I copied all the files inside the image to another floppy image with a DOS bootloader and it booted right up (inside vmware, just using the floppy image; I haven't tested with PXE yet).

http://216.160.181.2...SDOS71Basic.IMG


BTW, don't worry about the links to those files, once I've gotten this all figured out I'll remove the files off my web server.


It seems pretty clear to me that the reason it's doing this MUST be because of that GRUB boot loader.


Here's the contents of the grub menu.lst off that floppy:

timeout 10

default 0

password dosunion



title Super MS-DOS 7.10 Boot Disk

root (fd0)

chainloader /boot/msdos.bs



title Boot from Hard Drive

root (hd0,0)

chainloader +1



title Boot from CD Drive

root (fd0)

chainloader /boot/cdboot.bs

However, since it never displays the boot menu, I think it must be related to the actual boot code in the MBR.

I suppose the easiest way to test it would be to delete everything from that image except for the "boot" directory, which should get at least the grub menu.

The only change I've made from the original image (posted earlier in the topic) is using WinImage to expand it to a 2.88MB floppy; but I am pretty sure that I downloaded the 1.44mb image without modifying it and had the same effect.

#11 BrentNewland

BrentNewland

    Newbie

  • Members
  • 14 posts

Posted 01 May 2010 - 08:01 PM

Update: I have removed all files inside of the image and reduced it to 1.44MB, and it appears to still be causing Memdisk to go into an infinite loop.

However, the same files with a DOS bootloader boots just fine.

The file that will make memdisk (over PXE at least) go into an infinite loop: http://216.160.181.2...oop-memdisk.img

#12 Icecube

Icecube

    Gold Member

  • Team Reboot
  • 1062 posts
  •  
    Belgium

Posted 01 May 2010 - 08:15 PM

This image hangs for me in qemu at 'stage1'.
It doesn't matter how I try to boot it:
  • image attached to the floppy drive
  • booted trough MEMDISK directly
  • booted trough MEMDISK via PXE


#13 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 06 May 2010 - 02:04 AM

If it's GRUB4DOS, I ran into versions which attempt to unhook any BIOS INTerrupt 13h handlers by trying to restore to the original vector. Recent GRUB4DOS versions haven't given me this trouble.

I'm sorry to read that a conflict emerged as a result of incompatible communications in this thread. Maybe next time a conflict can be avoided.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users