Jump to content











Photo
- - - - -

PE3x86_DOS_Subsystem


  • Please log in to reply
13 replies to this topic

#1 FerrariGuy

FerrariGuy

    Member

  • Members
  • 50 posts
  • Location:South Carolina
  •  
    United States

Posted 05 September 2011 - 10:01 AM

Posted Image

File Name: PE3x86_DOS_Subsystem
File Submitter: FerrariGuy
File Submitted: 31 Aug 2011
File Updated: 20 Sep 2011
File Category: System scripts

This is a first attempt at making 16 Bit DOS available in WinPE 3.0 X86. So far this script has been used only under the WinPE7_SE project.

I created this script in order to support an old DOS program for testing COM ports (which also required the serial port service and drivers to be installed in PE --> a seperate issue). It was created based on using ProcMon to assess the needs of the DOS program, and supplmented by looking at the details of Smiley's DOSPE.script for XP builds.

I've tried a few DOS games with it, and although they do fire up, mouse cursor support is spotty and they've often eventually crashed. Perhaps it can be improved upon with further feedback.\

~FerrariGuy

Click here to download this file
  • Nuno Brito likes this

#2 Wonko the Sane

Wonko the Sane

    The Finder

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

Posted 05 September 2011 - 02:57 PM

Nice. :)
Games are the most "unlikely" thing to be able to run ina MS-DOS subsysten/ NTVDM anyway, the sheer fact that they load is in itself a great success :worship:, just for the record, to actually play a DOS game, AFAIK the most viable solution is DOSBOX:
http://www.dosbox.com/


:cheers:
Wonko
  • homes32 likes this

#3 thefuse

thefuse

    Member

  • Members
  • 33 posts
  •  
    Australia

Posted 20 September 2011 - 11:05 AM

i used this script many times in pe builds,works great with one apparent problem.I found i could(or had to)modify the script very slightly to look for the required files from a XPsp2 installation disk placed in my dvd drive at build time,after doing so,i now thank you for now having solid 16bit support for all my DOS stuff,and yes,games run just great too....nice work!:-)
  • Nuno Brito likes this

#4 homes32

homes32

    Gold Member

  • .script developer
  • 1021 posts
  • Location:Minnesota
  •  
    United States

Posted 20 September 2011 - 01:27 PM

nice work, thanks for sharing. I ditched DOS in favor of DOSBOX for my old games long ago...

one suggestion though: could you change the name of the download topic to something that better reflects the script? by looking at the topic name right now it looks like you are offering a DOS based PE like ubcd or something.

"MSDOS Subsystem" or something similar?

regards,
Homes32
  • FerrariGuy likes this

#5 FerrariGuy

FerrariGuy

    Member

  • Members
  • 50 posts
  • Location:South Carolina
  •  
    United States

Posted 20 September 2011 - 11:38 PM

nice work, thanks for sharing. I ditched DOS in favor of DOSBOX for my old games long ago...

one suggestion though: could you change the name of the download topic to something that better reflects the script? by looking at the topic name right now it looks like you are offering a DOS based PE like ubcd or something.

"MSDOS Subsystem" or something similar?

regards,
Homes32



Good observation. Done! --> PE3x86_DOS_Subsystem

~FerrariGuy

#6 homes32

homes32

    Gold Member

  • .script developer
  • 1021 posts
  • Location:Minnesota
  •  
    United States

Posted 21 September 2011 - 12:16 AM



Good observation. Done! --> PE3x86_DOS_Subsystem

~FerrariGuy

:thumbsup:

#7 TheHive

TheHive

    Platinum Member

  • .script developer
  • 4138 posts

Posted 22 September 2011 - 08:02 AM

i used this script many times in pe builds,works great with one apparent problem.I found i could(or had to)modify the script very slightly to look for the required files from a XPsp2 installation disk placed in my dvd drive at build time,after doing so,i now thank you for now having solid 16bit support for all my DOS stuff,and yes,games run just great too....nice work!:-)

You mind posting the modified script. It might help to improve the original script.

#8 thefuse

thefuse

    Member

  • Members
  • 33 posts
  •  
    Australia

Posted 23 September 2011 - 03:49 AM

i certainly will,im away from home but give me a few days and ill post it for you,i have loads of scripts to post here so stay tuned:-)

#9 thefuse

thefuse

    Member

  • Members
  • 33 posts
  •  
    Australia

Posted 23 September 2011 - 12:27 PM

i just checked the script....the only change i had to make is in [Variables] section. I changed %source_win% value to E:\I386.......E:\ being my dvd drive on my system,the script then looks for the files in I386 folder in the dvd drive from any XP install disk placed there,for some reason the script would return errors for the required files missing when run on Win7 source.so changing the one variable did the trick nicely!...you must remember to provide the disk on each time you build lol!(i regularly forget lol:-)).other than that the script is unmodified:-)

#10 luar

luar
  • Members
  • 3 posts
  •  
    United States

Posted 27 September 2011 - 04:35 AM

would dosbox or any other dos util be able to run inside of winpe7SE? I was able to create the necessary batch files to load all files into the %target_sys% along with the 16 bit executables that launch if they are in a regular dos boot disk. If I launch those commands in command prompt, they are initiated but promptly get a error message that quickly closes out the command prompt within winpe7. The reason for it is that I use those same files to run certain repairs to the MBR belonging to a encrypted drive.

#11 thefuse

thefuse

    Member

  • Members
  • 33 posts
  •  
    Australia

Posted 28 September 2011 - 03:39 AM

i run dosbox with a frontend without issue in win7pe after using this script....Its pretty rare for me to use dos utils in my day to day work and im no expert by far but it "simply works out of the box" for me...the only pointer i could give you is to check the build log to make sure ALL the required files are copied successfully during the build.then check that your list of required files is complete....maybe ferrariguy could help you further....

#12 luar

luar
  • Members
  • 3 posts
  •  
    United States

Posted 28 September 2011 - 12:50 PM

Thanks Fuse. I am trying to build it just with the bare essentials that I need, as I noticed I had to many plugins that might be making it more difficult to properly troubleshoot it. Since I am using it with a custom script brought over from bartpe for securedoc disk encryption, some of those scripts load to Upperfilter. Along with this securedoc plugin that allows me to access the encrypted drive after starting PE, it also has some 16 bit exe commands that are custom to the securedoc encryption and run from DOS they attempt to rebuild the Encrypted SecureDoc MBR or remove the MBR and restore to Windows default. Will play around with less plugins and see what errors I get in the process.

#13 FerrariGuy

FerrariGuy

    Member

  • Members
  • 50 posts
  • Location:South Carolina
  •  
    United States

Posted 28 September 2011 - 11:37 PM

would dosbox or any other dos util be able to run inside of winpe7SE? I was able to create the necessary batch files to load all files into the %target_sys% along with the 16 bit executables that launch if they are in a regular dos boot disk. If I launch those commands in command prompt, they are initiated but promptly get a error message that quickly closes out the command prompt within winpe7. The reason for it is that I use those same files to run certain repairs to the MBR belonging to a encrypted drive.


If you're having trouble with your 16bit app, you might try (for a start) adding Sysinternals ProcMon.exe to your build (such that it's on the ramdrive). Fire it up just before you attempt to execute the 16 bit app. Execute the 16 bit app and as soon as it fails, stop logging in ProcMon (the logs can get quite large). Filter out all the *success* entries, and Fast IO Not allowed... etc.. essentially you're looking primarly for your EXE, or it's dependencies not finding what they're looking for ... like *file not found* or *path not found* etc..

If you can, test this as a virual ISO mounted on a VM with a test install of Win 7 / XP... this way you'll be able to grab possibly needed files off of the VM hard drive and drop them into %WinDir% on X drive (ram drive) where the program you're testing can find them. Rinse, lather, repeat... and maybe you'll get your app working. This is essentially how I created this DOS script in the first place. Additional files (that I didn't need, but were present both in XP & Win 7) were added based on what had been added in Smiley's DOS PE script for XP.

TheFuse: Your modification --> you're simply using XP as the source for the DOS files in the PE3.0 Build? Interesting! If so I could (when I get around to it) add a check box to allow this as an alternative way to add DOS to PE3.0.

Edited by FerrariGuy, 28 September 2011 - 11:40 PM.


#14 se2k

se2k
  • Members
  • 1 posts
  •  
    Canada

Posted 17 October 2014 - 07:08 PM

Hello,

 

I am new to the WinBuilder community and just started using the EzPE3 project for a Windows 7 PE boot disk.  I had a need for 16-bit DOS support within EzPE3 for some old internal programs.  I noticed that the PE3x86_DOS_Subsystem script does not work with EzPE3 due to old registry API calls and source location differences.

 

I have updated this script so that it works with EzPE3 9 and fixed the unsupported registry API calls.  It will get all required files from the Windows 7 32-bit wim files.  This was tested with EzPE3 9 using the english version of Windows 7 Professional with SP1.

 

Full updated script is here:

http://pastebin.com/VqXH4Wm5

 






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users