Jump to content

Need CDShell Help Plz


MCT

Recommended Posts

ive just started my AIO DVD project

but i cannot "test" my project, i dunno where 2 put the files for cdshell :P

flyakite doesnt really explain it 2 well on his guide, or im not looking in the correct place , can someone explain it 2 me plz?

CDShell.ini Not 100% complete yet

menu:
set textColor= color[grey on black]
set boldColor= color[cyan on black]

print "1)  Windows XP Professional SP2 Corporate \n"
print "2)  Windows XP Professional SP2 Retail \n"
print "3)  Windows 2K Professional SP4 \n"

mainkey:
if $lastKey == key[1]; then goto XP_Pro

xp_pro:
print c "\n\Windows XP Professional SP2"
Print "1) Regular \n"
print "2) Unattended \n"
print "3) Unattended + Programs\n"
print c "\n\n"
print "Press any key to return to main menu... \n"

XP_Pro_Key:
getkey 20 goto menu
if $lastKey == key[1]; then chain /BOOT\FILES\PRO1.DAT
if $lastKey == key[2]; then chain /BOOT\FILES\PRO2.DAT
if $lastKey == key[3]; then chain /BOOT\FILES\PRO3.DAT
if $lastKey == key[F1]; then goto Help
goto menu

end

EDIT: found out how 2 get cd 2 boot by reading cdshell.org a bit, but what am i doing wrong, everything displays on 1 screen, i wanted it 2 be like

choose os (press key, then it goes to next screen)

screen 2 (os type ,xp home,pro,unattened pro,home) blah :P but it all does this on 1 screen, how can i make them seperate?

EDIT2: Fixed

i just put getkey 100 goto menu

under XP_PRO_KEY:

Link to comment
Share on other sites


Hi MCT,

After playing with this for some time, finally got most of this multi-boot thing figured out (I'm sure someone will correct me if I make a mistake). Here's a shot of what my AIODVD folder looks like.

AIODVD.jpg

Here's a copy of an .ini file for CDShell I got from flyakite's site and I modified it to suit my likings.

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)  Windows XP Professional SP1 Corporate \n"
print "2)  Windows XP Home SP1 Retail \n"
print "3)  Windows Server 2003 Corporate \n"
print "4)  Windows 2000 \n"
print "5)  Windows 98 SE \n"
print "6)  Windows ME \n"
print "7)  Windows NT 4.0 Server \n"
print "8)  ERD Commander 2003 \n"
print "9)  ERD Commander 2003 /inram \n"
print "\n"
print "X)  More Options... \n\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 goto XP_Pro
if $lastKey == key[2]; then goto XP_Home
if $lastKey == key[3]; then goto Server2003
if $lastKey == key[4]; then goto 2000
if $lastKey == key[5]; then memdisk /98SE.IMA
if $lastKey == key[6]; then memdisk /ME.IMA
if $lastKey == key[7]; then chain /NT4S.DAT
if $lastKey == key[8]; then chain /ERD1.DAT
if $lastKey == key[9]; then chain /ERD2.DAT
if $lastKey == key[q]; then end
if $lastKey == key[r]; then reboot
if $lastKey == key[x]; then goto MoreOptions
if $lastKey == key[F1]; then goto Help
if $lastKey == key[esc]; then boot 0x80

MoreOptions:
cls
print r "\n\cXXPress \c0BF1 \cXXfor Help \n"
print c "\n\cXXMore Options \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "1)  Read/Copy Files From NTFS Volumes To FAT32/16 Drives \n"
print "2)  Partition Magic 8.0 \n"
print "3)  Norton Ghost \n"
print "4)  View Serial Numbers \n"
print c "\n\n"
print "Press any key to return to main menu... \n"

MoreOptions_Key:
getkey 20 goto menu
if $lastKey == key[1]; then memdisk /NTFS.IMA
if $lastKey == key[2]; then memdisk /PM8.IMG
if $lastKey == key[3]; then memdisk /GHOST.IMA
if $lastKey == key[4]; then goto SerialNumbers
goto menu

SerialNumbers:
cls
print r "\n\cXXPress \c0BF1 \cXXfor Help \n"
print c "\n\cXXSerial Numbers\n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ"
type /Serial~1.txt
print c "\n\n"
print "Press any key to return to main menu... \n"
getkey
goto menu

XP_Pro:
cls
print r "\n\cXXPress \c0BF1 \cXXfor Help \n"
print c "\n\cXXMicrosoft Windows XP Professional SP1 Corporate \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "1)  Regular \n"
print "2)  Unattended \n"
print "3)  OEMPreinstall \n"
print c "\n\n"
print "Press any key to return to main menu... \n"

XP_Pro_Key:
getkey 20 goto menu
if $lastKey == key[1]; then chain /PRO1.DAT
if $lastKey == key[2]; then chain /PRO2.DAT
if $lastKey == key[3]; then chain /PRO3.DAT
if $lastKey == key[F1]; then goto Help
goto menu

XP_Home:
cls
print r "\n\cXXPress \c0BF1 \cXXfor Help \n"
print c "\n\cXXMicrosoft Windows XP Home SP1 Retail \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "1)  Regular \n"
print "2)  Unattended \n"
print c "\n\n"
print "Press any key to return to main menu... \n"

XP_Home_Key:
getkey 20 goto menu
if $lastKey == key[1]; then chain /HOM1.DAT
if $lastKey == key[2]; then chain /HOM2.DAT
if $lastKey == key[F1]; then goto Help
goto menu

Server2003:
cls
print r "\n\cXXPress \c0BF1 \cXXfor Help \n"
print c "\n\cXXMicrosoft Windows Server 2003 Corporate \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "1)  Enterprise \n"
print "2)  Standard \n"
print "3)  Web \n"
print "4)  Datacenter \n"
print c "\n\n"
print "Press any key to return to main menu... \n"

Server2003_Key:
getkey 20 goto menu
if $lastKey == key[1]; then chain /3ENT.DAT
if $lastKey == key[2]; then chain /3STD.DAT
if $lastKey == key[3]; then chain /3WEB.DAT
if $lastKey == key[4]; then chain /3DCT.DAT
if $lastKey == key[F1]; then goto Help
goto menu

2000:
cls
print r "\n\cXXPress \c0BF1 \cXXfor Help \n"
print c "\n\cXXMicrosoft Windows 2000 \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "1) Professional \n"
print "2) Server \n"
print "3) Advanced Server \n"
print c "\n\n"
print "Press any key to return to main menu... \n"

2000_Key:
getkey 20 goto menu
if $lastKey == key[1]; then chain /2PRO.DAT
if $lastKey == key[2]; then chain /2SRV.DAT
if $lastKey == key[3]; then chain /2ADV.DAT
if $lastKey == key[F1]; then goto Help
goto menu


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

Here's a copy of my .ini file after some tweaking:

boot:
cls
print "\n"
print "Press Enter to boot from DVD... \n"
getkey 15 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:
cls
set textColor= color[brightblue on black]
set boldColor= color[red on black]
print c "\n\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n\n"
print c "\cXX<\c0B$time ÄÄÄÄ $date\cXX> \n\n"
print c "\cXXMy \cXXMulti-Boot\cxx DVD v1.7\n\n"
print l "\cXXPress \c0BF1 \cxxfor Help \n\n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n\n"
print "\n"
print "1)  Windows XP Professional SP1 Corporate \n"
print "2)  Windows 2000 \n"
print "3)  Windows 98 SE \n"
print "4)  Bart's PE \n"
print "5)  Knoppix \n"
print "\n"
print "S)  Serials \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 chain /PRO1.DAT
if $lastKey == key[2]; then chain /2PRO.DAT
if $lastKey == key[3]; then memdisk /98SE.IMA
if $lastKey == key[4]; then chain /BPE1.DAT
if $lastKey == key[5]; then memdisk /4320.IMA
if $lastKey == key[s]; then goto SerialNumbers
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
getkey
goto menu
end


SerialNumbers:
cls
print c "\n\cXXSerial Numbers\n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n\n"
print "\n"
print "     ********** Windows 98 ------- \c0BXXXXX-XXXXX-XXXXX-XXXXX-XXXXX\cxx********** \n"
print "\n"
print "     ********** Windows 2000 Pro - \c0BXXXXX-XXXXX-XXXXX-XXXXX-XXXXX\cxx********** \n"
print "\n"
print "     ********** Windows XP Pro --- \c0BXXXXX-XXXXX-XXXXX-XXXXX-XXXXX\cxx********** \n"
print "\n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n\n"
print c "\n\n"
print c"\c0BPress any key to return to main menu... \n"
getkey
goto menu

Help:
cls
print c "\n\c0BMulti-Boot DVD - Main Menu\cxx Help \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "Pressing the \cXXKEY\cxx of your choice in the main menu will \cXXinitiate\cxx: \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "Key = \cXX1\cxx   - \c0BWindows 98\cxx or\cxx \n"
print "Key = \cXX2\cxx   - \c0BWindows 2000\cxx or\cxx \n"
print "Key = \cXX3\cxx   - \c0BWindows XP Pro \n"
print "            \cXXOperating System setup with the normal prompts.\cxx \n"
print "\n"
print "Key = \cXX4\cxx   - \c0BBart's PE\cxx - \CXXA Pre-installed XP OS with many utilities\cxx \n"
print "\cXX            that is run entirely from the DVD.\cxx \n"
print "\n"
print "Key = \cXX5\cxx   - \c0BKnoppix\cxx - \cXXA Linux distribution that can be run entirely\cxx \n"
print "\cXX            from the DVD or installed to the HDD.\cxx \n"
print "\n"
print "Key = \cXXS\cxx   - \c0BSERIAL NUMBERS \cxx - \cXXFor the listed Operating Systems\cxx \n"
print "\n"
print "Key = \cXXQ\cxx   - \c0BCOMMAND PROMPT\cxx \n"
print "\n"
print "Key = \cXXESC\cxx - \c0BREBOOT\cxx \cXXto the system HDD\cxx \n"
print c "\cXXÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ \n"
print "\n"
print c"\c0BPress any key to return to main menu...\cxx \n"
getkey
goto menu
end

I'm still trying to figure out the $OEM$ folders and how to implement them.

Once I figure out how to take a screenshot of how it looks while booting, I'll post it for you.

Oh, BTW, the files for CDShell go into the "boot" folder.

Hope this helps.........

JohnSteven

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...