diff --git a/Build/ISO/isolinux.cfg b/Build/ISO/isolinux.cfg index 4036e295f..76fc547db 100644 --- a/Build/ISO/isolinux.cfg +++ b/Build/ISO/isolinux.cfg @@ -1,7 +1,7 @@ default cosmos label cosmos kernel mboot.c32 - append output.obj + append output.bin prompt 0 diff --git a/Build/Tools/gdb.exe b/Build/Tools/gdb.exe new file mode 100644 index 000000000..7a8c966b4 Binary files /dev/null and b/Build/Tools/gdb.exe differ diff --git a/source/Cosmos.Build.Windows/Builder.cs b/source/Cosmos.Build.Windows/Builder.cs index 203c97075..f6297127e 100644 --- a/source/Cosmos.Build.Windows/Builder.cs +++ b/source/Cosmos.Build.Windows/Builder.cs @@ -48,7 +48,7 @@ namespace Cosmos.Build.Windows { protected void MakeISO() { RemoveFile(mBuildPath + "cosmos.iso"); RemoveFile(mISOPath + "output.bin"); - File.Move(mBuildPath + "output.bin", mISOPath + "output.bin"); + File.Copy(mBuildPath + "output.bin", mISOPath + "output.bin"); // From TFS its read only, and one of the utils doesnt like that File.SetAttributes(mISOPath + "isolinux.bin", FileAttributes.Normal); @@ -96,13 +96,14 @@ namespace Cosmos.Build.Windows { case Target.QEMU: case Target.QEMU_GDB: MakeISO(); - RemoveFile(mISOPath + "serial-debug.txt"); - //Call(mCosmosPath + @"tools\qemu\qemu.exe", @"-L . -cdrom ..\..\build\Cosmos\ISO\Cosmos.iso -boot d -hda ..\..\build\Cosmos\ISO\C-drive.img -serial " + "\"" + @"file:..\..\build\Cosmos\ISO\serial-debug.txt" + "\"" + " -S -s", mCosmosPath + @"tools\qemu\", aType == Target.QEMU); + RemoveFile(mBuildPath + "serial-debug.txt"); + Call(mToolsPath + @"qemu\qemu.exe" + , "-L . -cdrom \"" + mBuildPath + "Cosmos.iso\" -boot d -serial \"file:" + mBuildPath + "serial-debug.txt" + "\" -S -s", mToolsPath + @"qemu\", aType == Target.QEMU); if (aType == Target.QEMU_GDB) { - // Call(mCosmosPath + @"tools\gdb\bin\gdb.exe" - // , mBuildPath + @"ISO\files\output.obj" + " --eval-command=\"target remote:1234\" --eval-command=\"b _CODE_REQUESTED_BREAK_\" --eval-command=\"c\"" - // , mCosmosPath + @"tools\qemu\", true); + Call(mToolsPath + "gdb.exe" + , mBuildPath + @"output.bin" + " --eval-command=\"target remote:1234\" --eval-command=\"b _CODE_REQUESTED_BREAK_\" --eval-command=\"c\"" + , mToolsPath + @"qemu\", true); } break;