diff --git a/INSTALL b/INSTALL index ad94ba93..53dfc974 100644 --- a/INSTALL +++ b/INSTALL @@ -11,8 +11,17 @@ Curses ncurses should be installed on just about every unix distro. For win32 get pdcurses at http://pdcurses.sourceforge.net +Libpng + Needed for the screenshots. + For win32 get libpng from http://www.sourceforge.net/projects/gnuwin32 + +Zlib + Needed by libpng. + For win32 get libz (rename to zlib) from http://www.sourceforge.net/projects/gnuwin32 + + If you want compile from the CVS under a unix system, you'll also need -automake, autoconf. Should be available at http://www.gnu.org +automake (>=1.6), autoconf(>=2.50). Should be available at http://www.gnu.org For building on unix systems. If you are building from the cvs run ./autogen.sh first before doing the following. @@ -21,8 +30,7 @@ If you are building from the cvs run ./autogen.sh first before doing the followi 2. Check settings.h for some setup options. 3. make -Check the src subdir for the binary and dosbox.lang file. -These 2 files should be in the same dir if you want to run dosbox. +Check the src subdir for the binary. Compiling on FreeBSD might be a problem since SDL has no joystick support there. To get around this edit sdlmain.cpp to enable some #define. @@ -32,5 +40,4 @@ Let's hope someday the sdl people will just report 0 joysticks in freebsd or get Build instructions for VC++6 Open the workspace in the visualc subdir and build from there. -Copy the src/dosbox.lang file to the same dir as your executable. diff --git a/README b/README index 10156103..16f1a7d7 100644 --- a/README +++ b/README @@ -1,10 +1,11 @@ -DOSBox v0.55 +DOSBox v0.56 Usage: ====== With the new internal shell I've changed the command line a bit, so let's just give some examples of what you can do now. + dosbox With nothing on the command line you'll end up on the internal drive and from there you can mount directories as drives. @@ -14,6 +15,11 @@ dosbox [filename/directory] .bat .com .exe. Doesn't need to have extension included. Then it'll strip the directory from the filename and mount that as c:\ and then run the file. +dosbox -fullscreen + starts dosbox in fullscreen mode. +dosbox -conf file + loads file as a configfile. + You can also add commands to be executed before the main program starts. Or you can use them to start the program. To add commands use the -c command line switch. diff --git a/src/cpu/cpu.cpp b/src/cpu/cpu.cpp index 6ab41391..96e00840 100644 --- a/src/cpu/cpu.cpp +++ b/src/cpu/cpu.cpp @@ -170,5 +170,6 @@ void CPU_Init(Section* sec) { reg_al=0; reg_ah=0; + MSG_Add("CPU_CONFIGFILE_HELP","The amount of cycles to execute each loop. Lowering this setting will slowdown dosbox\n"); } diff --git a/src/debug/debug.cpp b/src/debug/debug.cpp index 24e96674..f111318c 100644 --- a/src/debug/debug.cpp +++ b/src/debug/debug.cpp @@ -706,6 +706,7 @@ void DEBUG_Init(Section* sec) { #ifdef WIN32 WIN32_Console(); #endif + MSG_Add("DEBUG_CONFIGFILE_HELP","Nothing to setup yet!\n"); memset((void *)&dbg,0,sizeof(dbg)); debugging=false; dbg.active_win=3; diff --git a/src/dos/dos.cpp b/src/dos/dos.cpp index af57714d..13c66fd7 100644 --- a/src/dos/dos.cpp +++ b/src/dos/dos.cpp @@ -830,6 +830,7 @@ static Bitu DOS_20Handler(void) { void DOS_Init(Section* sec) { + MSG_Add("DOS_CONFIGFILE_HELP","Setting a memory size to 0 will disable it.\n"); call_20=CALLBACK_Allocate(); CALLBACK_Setup(call_20,DOS_20Handler,CB_IRET); RealSetVec(0x20,CALLBACK_RealPointer(call_20)); diff --git a/src/dosbox.cpp b/src/dosbox.cpp index 7cc8d219..deed99d2 100644 --- a/src/dosbox.cpp +++ b/src/dosbox.cpp @@ -123,7 +123,8 @@ static void DOSBOX_RealInit(Section * sec) { Section_prop * section=static_cast(sec); /* Initialize some dosbox internals */ errorlevel=section->Get_int("warnings"); - LastTicks=GetTicks(); + MSG_Add("DOSBOX_CONFIGFILE_HELP","General Dosbox settings\n"); + LastTicks=GetTicks(); DOSBOX_SetLoop(&Normal_Loop); MSG_Init(section); } @@ -137,7 +138,7 @@ void DOSBOX_Init(void) { /* Setup all the different modules making up DOSBox */ secprop=control->AddSection_prop("dosbox",&DOSBOX_RealInit); - secprop->Add_string("language",""); + secprop->Add_string("language",""); secprop->Add_int("warnings",4); secprop->AddInitFunction(&MEM_Init); @@ -191,7 +192,7 @@ void DOSBOX_Init(void) { secprop->Add_int("xmssize",8); secline=control->AddSection_line("autoexec",&AUTOEXEC_Init); - + control->SetStartUp(&SHELL_Init); #if C_FPU diff --git a/src/gui/sdlmain.cpp b/src/gui/sdlmain.cpp index b88af150..6178b325 100644 --- a/src/gui/sdlmain.cpp +++ b/src/gui/sdlmain.cpp @@ -225,6 +225,7 @@ static void GUI_ShutDown(Section * sec) { } static void GUI_StartUp(Section * sec) { + MSG_Add("SDL_CONFIGFILE_HELP","SDL related options.\n"); sec->AddDestroyFunction(&GUI_ShutDown); Section_prop * section=static_cast(sec); sdl.active=false; @@ -507,7 +508,7 @@ int main(int argc, char* argv[]) { #endif ) < 0 ) E_Exit("Can't init SDL %s",SDL_GetError()); Section_prop * sdl_sec=control->AddSection_prop("SDL",&GUI_StartUp); - sdl_sec->Add_bool("FULLSCREEN",false); + sdl_sec->Add_bool("fullscreen",false); /* Init all the dosbox subsystems */ DOSBOX_Init(); std::string config_file; @@ -529,7 +530,7 @@ int main(int argc, char* argv[]) { JOYSTICK_Enable(0,true); } #endif - if (control->cmdline->FindExist("-fullscreen") || sdl_sec->Get_bool("FULLSCREEN")) { + if (control->cmdline->FindExist("-fullscreen") || sdl_sec->Get_bool("fullscreen")) { SwitchFullScreen(); } /* Start up main machine */ diff --git a/src/hardware/mixer.cpp b/src/hardware/mixer.cpp index 553abe41..bbf00b33 100644 --- a/src/hardware/mixer.cpp +++ b/src/hardware/mixer.cpp @@ -218,6 +218,7 @@ static void MIXER_CallBack(void * userdata, Uint8 *stream, int len) { void MIXER_Init(Section* sec) { + MSG_Add("MIXER_CONFIGFILE_HELP","Nothing to setup yet!\n"); /* Initialize the internal stuff */ first_channel=0; mix_ticks=GetTicks(); diff --git a/src/hardware/pcspeaker.cpp b/src/hardware/pcspeaker.cpp index 34f06b79..5043df46 100644 --- a/src/hardware/pcspeaker.cpp +++ b/src/hardware/pcspeaker.cpp @@ -96,6 +96,7 @@ static void PCSPEAKER_CallBack(Bit8u * stream,Bit32u len) { } void PCSPEAKER_Init(Section* sec) { + MSG_Add("SPEAKER_CONFIGFILE_HELP","pcspeaker related options.\n"); spkr.chan=MIXER_AddChannel(&PCSPEAKER_CallBack,SPKR_RATE,"PC-SPEAKER"); MIXER_Enable(spkr.chan,false); MIXER_SetMode(spkr.chan,MIXER_16MONO); diff --git a/src/hardware/sblaster.cpp b/src/hardware/sblaster.cpp index f023ad6d..fd9564f7 100644 --- a/src/hardware/sblaster.cpp +++ b/src/hardware/sblaster.cpp @@ -557,6 +557,7 @@ static void SB_Enable(bool enable) { } void SBLASTER_Init(Section* sec) { + MSG_Add("SBLASTER_CONFIGFILE_HELP","Sound Blaster related options.\n"); Section_prop * section=static_cast(sec); if(!section->Get_bool("enabled")) return; sb.chan=MIXER_AddChannel(&SBLASTER_CallBack,22050,"SBLASTER"); diff --git a/src/ints/bios.cpp b/src/ints/bios.cpp index a02c2454..64c80207 100644 --- a/src/ints/bios.cpp +++ b/src/ints/bios.cpp @@ -208,6 +208,7 @@ void BIOS_SetupKeyboard(void); void BIOS_SetupDisks(void); void BIOS_Init(Section* sec) { + MSG_Add("BIOS_CONFIGFILE_HELP","Nothing to setup yet!\n"); /* Clear the Bios Data Area */ for (Bit16u i=0;i<1024;i++) real_writeb(0x40,i,0); /* Setup all the interrupt handlers the bios controls */ diff --git a/src/misc/setup.cpp b/src/misc/setup.cpp index 2dce0ee3..09cfa7a4 100644 --- a/src/misc/setup.cpp +++ b/src/misc/setup.cpp @@ -41,7 +41,7 @@ void Prop_string::SetValue(char* input){ void Prop_bool::SetValue(char* input){ input=trim(input); - if((input[0]=='0') ||(input[0]=='D')||( (input[0]=='O') && (input[0]=='F'))){ + if((input[0]=='0') ||(input[0]=='D')||( (input[0]=='O') && (input[0]=='F'))||(input[0]=='f')){ __value._bool=false; }else{ __value._bool=true; @@ -231,6 +231,7 @@ void Config::ParseConfigFile(const char* configfilename){ case '%': case '\0': case '\n': + case '#': case ' ': continue; break; diff --git a/src/shell/shell.cpp b/src/shell/shell.cpp index 46bc49f8..730a00dd 100644 --- a/src/shell/shell.cpp +++ b/src/shell/shell.cpp @@ -134,6 +134,7 @@ void DOS_Shell::SyntaxError(void) { void AUTOEXEC_Init(Section * sec) { + MSG_Add("AUTOEXEC_CONFIGFILE_HELP","Add here the lines you want to execute on startup.\n"); /* Register a virtual AUOEXEC.BAT file */ Section_line * section=static_cast(sec);