I have just begun trying to develop a multi-OS boot CD, and decided to start simple. I've created a CD that is supposed to boot DOS 5.0, DOS 6.22, Win ME or Win 98. On my desktop computer, it totally fails to boot DOS 5.0 and DOS 6.22 (the system seems to hang). On Win ME, it boots to A: but will not accept any input from the keyboard. With Win 98, it boots normally, except that the system will not accept any keyboard inputs while config.sys and/or autoexec.bat are being executed (i.e., I can not choose things like menu items in config.sys, nor can I provide any inputs, like pressing the enter key, during execution of autoexec.bat).
I have partially tested the same CD on my IBM Thinkpad T40, and it seems to work. The most obvious difference between the two systems is that my desktop uses a Logitech Keyboard/Mouse under Bluetooth, with the transceiver plugged into one of the USB ports.
I created the CD using the guide on http://flyakite.msfnhosting.com/, and I believe that I have implemented it properly (seems to work on the Thinkpad).
My desktop system configuration is as follows:
Motherboard: Abit BD7-RAID with 512 MB RAM
Video: NVIDIA GeForce2 MX
BIOS: Phoenix Award BIOS version i845-W83627HF-6A69VA1DC (date 07/15/2003 - it's the latest)
Logitech Keyboard/Mouse under Bluetooth (USB)
100 MB Zip Drive
2 Sandisk SDIO/CF USB Drives
2 Western Digital HDs (120 GB, 200 GB, lots of free space)
The cshell.ini that I used is:
boot:
cls
print "\n"
print "Press Enter to boot from DVD... \n"
getkey 5 boot 0x80
if $lastKey == key[enter]; then goto time
# When no key found...
goto boot
# Function to display time of day
time:
set hour = $timeHour
set ampm = "am"
if $timeHour > 12; then set hour = $timeHour - 12
if $timeHour > 12; then set ampm = "pm"
set time = "$hour:$timeMinute$ampm"
# Function to display date
date:
set month = "n/a"
if $dateMonth == 1; then set month = "Jan."
if $dateMonth == 2; then set month = "Feb."
if $dateMonth == 3; then set month = "Mar."
if $dateMonth == 4; then set month = "Apr."
if $dateMonth == 5; then set month = "May."
if $dateMonth == 6; then set month = "Jun."
if $dateMonth == 7; then set month = "Jul."
if $dateMonth == 8; then set month = "Aug."
if $dateMonth == 9; then set month = "Sep."
if $dateMonth == 10; then set month = "Oct."
if $dateMonth == 11; then set month = "Nov."
if $dateMonth == 12; then set month = "Dec."
set date = "$month$dateDay,$dateYear"
# Printing the Interface
menu:
set textColor= color[grey on black]
set boldColor= color[cyan on black]
cls
print c "\n\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ<\c0B$time $date\cXX>ÄÄ \n\n"
print c "\cXXAdvanced Multi-Boot DVD v1.7\n\n"
print l "\cXXPress \c0BF1 \cXXfor Help"; print r "\c0Bckite@portraitofakite.com \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n\n"
print "1) MSDOS 5.0 \n"
print "2) MSDOS 6.22 \n"
print "3) Win ME \n"
print "4) MSDOS 7.0 \n"
print "\n"
print "Q) Quit to Command Prompt \n"
print "R) Reboot \n"
print "ESC) Boot 1st Harddisk \n"
print c "\n"
MainKey:
getkey 20 boot 0x80
if $lastKey == key[1]; then memdisk /DOS5P0.IMG
if $lastKey == key[2]; then memdisk /MSDOS6P22.IMG
if $lastKey == key[3]; then memdisk /ME.IMG
if $lastKey == key[4]; then memdisk /MSDOS7.IMG
if $lastKey == key[q]; then end
if $lastKey == key[r]; then reboot
if $lastKey == key[F1]; then goto Help
if $lastKey == key[esc]; then boot 0x80
Help:
cls
print c "\n\cXXMulti-Boot DVD Help \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "\n"
print "Hit the key of your choice in the main menu -> \n"
print "\n"
print "\n"
print "Install Types \n"
print "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "Regular - Install will prompt you for all information during setup. \n"
print "Unattended - Install with no user prompts. \n"
print "OEMPreinstall - Install Windows and additional programs with no user prompts. \n"
print "\n"
print "\n"
print "Press any key to return to main menu... \n"
getkey
goto menu
end
Any help would be greatly appreciated.
Page 1 of 1
Problems with Multiboot CD and USB Keyboard
#2
Posted 28 December 2004 - 12:48 AM
First thing you should check is the BIOS of your computer.
Make sure that USB LEGACY DEVICES or USB KEYBOARD SUPPORT is enable.
Another option would be to use the USB to PS/2 adapter provided with your keyboard.
Then come back with the results...
Make sure that USB LEGACY DEVICES or USB KEYBOARD SUPPORT is enable.
Another option would be to use the USB to PS/2 adapter provided with your keyboard.
Then come back with the results...
Share this topic:
Page 1 of 1



Help
Back to top









