Jump to content











Photo
- - - - -

Disable the F8 Startup Menu on WIN98 Boot Disk.


  • Please log in to reply
33 replies to this topic

#1 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 24 May 2008 - 01:52 PM

Hello this is my first post. Ok i have a W98 boot disk. I need to use W98 as it uses JO.sys to prompt to insert CD. If i use less version of DOS there's no cd prompt. I need to disable the F8 startup menu. This can be done with 6.22 by editing MSDOS.SYS and putting 0 on certain Boot [Options]. This has no effect on W98 disk and actually makes it hang. So it's a catch 22. I thought if i can patch IO.SYS to disable F8 and the rest of the function keys. I looked up the keyboard scan codes and hex 42 00 is coming up on F8. I also looked up what interrupts use the keyboard. INT9 INT21 and INT16 seem to be the ones. I went through the code and 4200 looks suspicious, comes up a few times but too many times... Does anyone have a clue on assembler or knows anything can try and help me find the right opcode to patch. Thanks.

There are 2 scan codes. 1 for when the key is pressed called the make code and another scan code called break when depressed.

F8 Inactive Make 42 Break C2 Active Make Break E0 42 E0 C2

http://www.win.tue.n...es-1.html#ss1.4

Here's a free trick to make the DOS screen change colour by editing COMMAND.COM and searching for MOV BH,07 and change the 7 to one of the below.

Black - 0 Grey - 8
Blue - 1 Bright Blue - 9
Green - 2 Bright Green - A
Cyan - 3 Bright Cyan - B
Red - 4 Bright Red - C
Magenta - 5 Bright Magenta - D
Brown - 6 Yellow - E
White - 7 Bright White - F

#2 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,100 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 24 May 2008 - 02:30 PM

Last time I checked, the MSDOS.SYS from 6.22 was a binary file, no "Boot" nor "[Options] in it. ;)

The DOS 7.1 (W98) DOS has an option in MSDOS.SYS:
http://www.mdgx.com/msdos.htm

[Options] BootKeys= Startup keys access: F4, F5, F6, F8, Ctrl and Shift
1 Enabled
0 Disabled

But the above should apply only after boot menu appears, most probably what you wish must be done using a combination of setups, see this:
http://www.mdgx.com/msdos.htm#MEN

Maybe, just maybe, having:
"BootGUI=0"
"BootMenu=1"
"BootKeys=0"
could work.

On a completely different direction, how does LZDOS behave?
http://dos.nm.ru/

jaclaz

#3 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 24 May 2008 - 03:28 PM

I meant to say W95 MSDOS.SYS not DOS 6.22. I have tried 7.1 aka WIN98 and whatever i put it in the MSOS.SYS it hangs after Starting. I also tried with LZ DOS you kindly provided but still hangs. Its good that it detects JO.SYS. Certain dos utils didnt run right though. I need to maybe mess with it. Why won't it work with MSDOS.SYS??? Does MSDOS.SYS only work for when it's on your hard drive and not a floppy image?

I have tried

[Options]

BootGUI=0

BootMenu=1

BootKeys=0



[Options]

BootGUI=0

BootMenu=0

BootKeys=0

I also tried

[Options]

BootGUI=0

BootMenu=0

BootKeys=0

;

;Some programs on this system expect the Msdos.sys file to be at least

;1024 bytes in length; hence, the following lines create an Msdos.sys

;file that is greater than 1024 bytes in length. These lines are not

;needed for Windows to boot or run.

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxa

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxb

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxc

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxd

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxe

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxf

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxg

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxh

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxi

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxj

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxk

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxl

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxm

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxn

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxo

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxp

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxq

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxr

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxs


#4 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,100 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 24 May 2008 - 03:45 PM

Why won't it work with MSDOS.SYS??? Does MSDOS.SYS only work for when it's on your hard drive and not a floppy image?


It's a possibility that some of the MSDOS.SYS options only work from hard disk ;), or maybe you need to have in MSDOS.SYS also a "[Paths]" section with something in it?

Logically there is no sense in having a "safe mode" from floppy.

Cam't you try a HD image in Qemu or other VM to check if this is the problem?

Maybe you can then make a HD image and boot it through grub4dos or syslinux, but if I may, what is the reason for the need to disabling the F8? :thumbup:

jaclaz

#5 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 24 May 2008 - 03:52 PM

I thought that too about the PATHS section pointing to A:\. I gave it all it wanted but still wouldn't have it! One benefit i saw the Windows 98 logo lol. When you get a W98 boot disk it just has ;W98EBD in MSDOS.SYS. I actually tried 3 days ago this is why i went down the hacking IO.SYS route now but could be i screwed up with MSDOS.SYS but doing what you say it still same. I try an image. I releasing a CD and trying to protect my work.

I am going slightly mad. Arghhhhhh. This is old skool. I will not be beaten ;)

Somehow it should work from floppy it still the same IO.SYS file and scans MSDOS.SYS if it wrong it alerts you. Maybe it scans your hd for Win98.

#6 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 24 May 2008 - 04:33 PM

I found this very amusing.

I bet nobody wants to touch this one! I have read that the IO.SYS is impossible to edit. Is this true? I would like to learn how to edit it if possible. Can somebody direct me to a good website tha might talk abou this. There are a few things in it that I'd like to edit. Thank you.


Who in the bloody hell told you it's impossible? I HAVE DONE IT BEFORE! It works fine! All you have to do is unATTRIB the System, Read-Only, and Hidden attributes on it. Then get a good hexadecimal editor; don't use DOS's EDIT program unless you're in Binary mode (file menu) and extremely careful. Hey, give me the email address or website of whoever said you can't edit IO.SYS, they have a lot to learn.

;) :thumbup: :thumbup: :thumbup:

#7 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 24 May 2008 - 05:24 PM

I found the problem. The MSDOS.SYS works fine with the Boot Menu options alone but when i add JO.SYS to the disk that's when it hangs.
The 2 together don't mix.

#8 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,100 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 24 May 2008 - 05:34 PM

Good. ;)

Which JO.SYS are you using?

I mean the original one or the Bart Lagerwej's free one?

jaclaz

#9 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 24 May 2008 - 05:58 PM

The Bart Special.

What is more interesting is just inserting the word [Options] in the MSDOS.SYS it still hangs with JO.

IO.SYS is maybe thinking which one should i load...

Could it be it's thinking its in a dual boot environment.

In case it isn't obvious i made a bootable CD from a floppy image with JO.SYS included. I not booting the floppy seperately.

#10 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 25 May 2008 - 01:02 AM

I dont know how to solve the clash with JO.SYS but I am getting nearer to patch IO.SYS. I found for NTLDR.

#11 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 25 May 2008 - 03:12 AM

I tried the official W98 JO.SYS and it does the same. I get the same just testing it out on a floppy drive and not a boot cd. I can disable the F8 to boot off the CD-ROM but then i lose the choice to boot off the hard drive ;)

Adding BootKeys=0 to MSDOS.SYS messes up loading of JO.SYS.

#12 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,100 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 25 May 2008 - 01:36 PM

Just an idea, mind you, and most probably totally and utterly wrong/undoable. ;)

The idea of using Jo.sys is basically that of having the possibility to hit a key to boot to CD, i.e. the same as what BOOTFIX.BIN does on 2K/XP/2003 boot CD's.

The CDFS bootsector (the NO-emulation 2048 bytes one usually referred to as Arnes Boot Record or MicrosoftCorporation.img) invokes two files:
SETUPLDR.BIN
BOOTFIX.BIN

What if one finds a way to load BOOTFIX.BIN ?

Would renaming it to WINBOOT.SYS or JO,SYS work?

(And another alternative would be of course to use Syslinux or grub4dos as loaders)

jaclaz

#13 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 25 May 2008 - 07:39 PM

Just an idea, mind you, and most probably totally and utterly wrong/undoable. ;)


Thanks for your ideas.

Yes maybe use MSDOS.SYS to disable and then use some boot manager to load up another image then there's always GRUB which has the knack of solving all problems but then it would mean the image has to be stored on the disk and then that would require loading the cd with drivers, to access it. All abit over the top i think. The deeper i go the more i am getting confused how io.sys msdos.sys and jo.sys work together as it not making logical sense of what is happening. When the menu disabled it's as if JO can't see or trying to boot something else. I thought WINBOOT.SYS is IO.SYS for when Win98 is installed. I will try that.

I was alerted to this

This problem can occur if you install Windows 98 or Windows Millennium Edition (Me) in a dual-boot environment with MS-DOS, install Windows again, and then uninstall Windows. The Master Boot Record (MBR) may not be properly updated after you uninstall Windows. The MBR loads the Jo.sys file instead of the Io.sys file from the root folder of drive C. The Jo.sys file can not load the MS-DOS versions of the Msdos.sys file and the Command.com file that are restored after you uninstall Windows 98.


Could it be JO.SYS not seeing WIN98 trys to load the modified MSDOS.SYS and just falls over as it needs the menu to work.

The idea of using Jo.sys is basically that of having the possibility to hit a key to boot to CD, i.e. the same as what BOOTFIX.BIN does on 2K/XP/2003 boot CD's.


Yes Jo.sys is just a delayed boot block to load up the ISO or the first bootable drive is it not. ISO is a very complex structure. Different ways i welcome.

#14 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 25 May 2008 - 08:18 PM

I managed to solve it the dirty way after stepping through the smaller IO.SYS of W98SE. There is numerous INT16 and INT21 but I patched it after many attempts and disabled F8, F4, F5, Shift F4, Shift F5. I can have JO.SYS on there with no modified MSDOS.SYS and all disabled keys. The Jo.sys works fine as the menu is seen to be active in IO.SYS but just the keys are disabled. I can also see this useful for disabling Safe Mode or users trying to get into your system through the backdoor. I binded another key to access Safe Mode ;). This is 1 solution.

#15 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,100 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 26 May 2008 - 07:40 AM

I managed to solve it the dirty way after stepping through the smaller IO.SYS of W98SE. There is numerous INT16 and INT21 but I patched it after many attempts and disabled F8, F4, F5, Shift F4, Shift F5. I can have JO.SYS on there with no modified MSDOS.SYS and all disabled keys. The Jo.sys works fine as the menu is seen to be active in IO.SYS but just the keys are disabled. I can also see this useful for disabling Safe Mode or users trying to get into your system through the backdoor. I binded another key to access Safe Mode ;). This is 1 solution.


GOOD! :thumbup:

It would be nice if you could share your findings. :thumbup:

jaclaz

#16 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 26 May 2008 - 07:37 PM

Offset 84DB Change the ax, 01 to 00. Narrowed it down to 1 byte so far that disables the F8,F7,F6,F5,F4 and loads disk up normal with Jo.sys fully functional. IO.SYS file size should be 217K.

#17 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,100 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 26 May 2008 - 08:39 PM

I must have a different version,
size 222.390 (217Kb) Date 23/04/1999, 22.22.00
at 84DB I have not the 01.

I'll check with other versions, could you post some more details?

jaclaz

#18 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 27 May 2008 - 12:49 AM

I wrote down wrongly it's ah,01 not ax,01 but it still the same 01. IO.SYS 217 KB (222,390 bytes) 29 June 1998 I have seen a IO.SYS of 114K and 123K from WinME. IO.SYS is a hybrid file that can work with some others. I wouldn't be surprised if yours is different. There's quite a few. It can be the exact same file size but the code can be different. I be interested to see what you see at that location on the one you have. I make that work too.

#19 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 27 May 2008 - 01:30 AM

I had it working better before. Testing it fresh i noticed i have to hold any key down or press 2x to load the CD. If i press it once it hangs. If hold down like F8 it works lol. Needs abit more work yet. I am getting patch ache i patched that many locations. You can use the smaller millenium IO.SYS on W98 disk and it still works fine, good for reducing space.

#20 FloKo84

FloKo84

    Member

  • Members
  • 53 posts
  • Location:Berlin, Germany
  •  
    Germany

Posted 02 June 2008 - 09:58 AM

Hi guys,

the Win9X MSDOS.SYS is not designed to work with [Options] alone, they only work if you set [Paths] as well.
But I never experienced this sort of hang.

Personally, I think Hex-editing any system files should be done with a balance of benefit and risk constantly in mind - messing with an integral part like keyboard interrupts, you are asking for trouble.

Anyway, these settings work on a floppy, with JO.SYS and displayed LOGO.SYS :
;MS-DOS 7.10 System Configuration File

;(C)Copyright Microsoft Corp 1981-1999

;=====================================



[Options]

AutoScan=0

BootKeys=0

BootGUI=0

BootMenu=0

BootMulti=0

BootSafe=0

BootWarn=0

DisableLog=1

DoubleBuffer=0

Logo=1

SystemReg=0

;

;For compatibility with Windows 9x GUI only:

WinVer=4.10.



[Paths]

WinDir=.

WinBootDir=.

HostWinBootDrv=C



;

;=====================================

;MS-DOS 7.10 System Configuration File

;(C)Copyright Microsoft Corp 1981-1999

;=====================================

;
(yes, the dots in the path are intended)

Also, Bart's JO.SYS is nice, but if you can get your hands on a WinME CD-Boot JO.SYS, I can really recommend it - it looks very similar to the NT based setups, and like Bart's, "auto-fires" when no active partition is detected.

Cheers,
Flo

#21 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,100 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 02 June 2008 - 12:06 PM

Floko84,
thanks for your suggestion. :thumbup:

I forgot ;) to update the thread, it was continued here:
http://www.msfn.org/...nu-t118073.html

where a working hexedit has been refined, however your report is interesting, as it avoids any fiddling with system files.

jaclaz

#22 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 04 June 2008 - 09:22 AM

@FloKo84


Hello , thanks but i tried it with PATHS before and it displayed the Logo and permanently hung on the Logo. Thats why i went to the trouble. There is no problem from modifying IO.SYS and disabling the keys as everything else is kept working as intended. I will try all you suggested. The IO.SYS of millenium is half the size so even better to use that. Thanks again.

#23 dencorso

dencorso

    Member

  • Advanced user
  • 87 posts
  •  
    Brazil

Posted 06 June 2008 - 07:09 AM

Doing as FloKo84 suggested, but with Logo=0, resulted in hanging just after the Loading Windows message, also.

So here is a clearer description of the patch, for those who want to try it:

1) Search for B4 02 CD 16 A8 07 74 and patch the red 74 to EB
2) Search for 3E 01 B4 01 CD 16 75 :
you'll find it to be 3E 01 B4 01 CD 16 75 XX , where XX is any value.
Patch this to become 3E 01 B4 01 CD 16 90 90

This patch works for all 4 existing versions of Win 98 IO.SYSs:
Win 98 FE IO.SYS 222390 05/11/1998 21:01 (Win 98FE original)
Win 98 FE IO.SYS 222670 11/30/2001 15:31 (Win 98FE Q311561)
Win 98 SE IO.SYS 222390 04/23/1999 22:22 (Win 98SE original)
Win 98 SE IO.SYS 222670 12/01/2001 09:37 (Win 98SE Q311561)

Now, Win ME IO.SYS presents the problem that it is compressed, so that to develop a patch for either of the two known versions of it is much more difficult and probably not worth it.

#24 wendy

wendy

    Frequent Member

  • Lady
  • 238 posts
  • Location:one mile from the QR main line
  • Interests:Operating systems, Weights and Measures, Geometry
  •  
    Australia

Posted 30 August 2008 - 05:41 AM

The 98/98se kernels in Q311561 are identical, and are the basis of tihiy's reduced kernel (IONOLOGO), or revolutions pack.

So you can add these your list.

#25 scrumpyjack

scrumpyjack

    Newbie

  • Members
  • 20 posts
  •  
    United Kingdom

Posted 07 September 2008 - 01:08 PM

The 98/98se kernels in Q311561 are identical, and are the basis of tihiy's reduced kernel (IONOLOGO), or revolutions pack.

So you can add these your list.


Yes that one is a good one to patch as the file size is only 122KB :whistling:

Ideally i would like a small command.com and io.sys to reduce the disk size. The command.com is usually around 90K but using a smaller command.com with the 122K io.sys would be alot better. Probably not possible as the DOS versions would not be compatible. Is there any stripped down command.com? and you mentioned a chinese command.com somewhere but can't find where you posted.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users