VMWare - Configure a Serial Port via Named Pipe for Kernel Debugging

This commit is contained in:
Homes32
2025-02-08 10:08:55 -06:00
parent 069ba834a5
commit baf050eba4

View File

@@ -32,15 +32,15 @@
Title=VMware Title=VMware
Author=Homes32 Author=Homes32
Description=Run your ISO in VMware Player/Workstation Description=Run your ISO in VMware Player/Workstation
Version=1.1.3.0 Version=1.1.4.0
Level=9 Level=9
Selected=False Selected=False
Mandatory=False Mandatory=False
NoWarning=False NoWarning=False
Date=2024-06-28 Date=2025-02-08
[Variables] [Variables]
%VMPath%=%ProjectTemp%\VMware %VMPath%="%ProjectTemp%\VMware"
%VMCfg%="%VMPath%\%ProjectTitle%.vmx" %VMCfg%="%VMPath%\%ProjectTitle%.vmx"
[Process] [Process]
@@ -136,9 +136,9 @@ If,%cmb_numProc%,Equal,Auto,Begin
System,GetEnv,"NUMBER_OF_PROCESSORS",%numProcessors% System,GetEnv,"NUMBER_OF_PROCESSORS",%numProcessors%
If,%numProcessors%,Equal,"",Set,%numProcessors%,1 If,%numProcessors%,Equal,"",Set,%numProcessors%,1
Else,Begin Else,Begin
// Assign the VM half of the total CPU's, reserving the other half for the host system. IntDiv used to prevent error if NUM_OF_PROCESSORS returns an odd number. // Assign the VM half of the total CPU's, reserving the other half for the host system. IntDiv used to prevent error if NUM_OF_PROCESSORS returns an odd number.
Math,IntDiv,%numProcessors%,%remainder%,%numProcessors%,2 Math,IntDiv,%numProcessors%,%remainder%,%numProcessors%,2
Set,%remainder%,Nil Set,%remainder%,Nil
End End
End End
Else,Set,%numProcessors%,%cmb_numProc% Else,Set,%numProcessors%,%cmb_numProc%
@@ -175,7 +175,7 @@ If,Not,%cmb_NetworkAdapter%,Equal,Disabled,Begin
Else,If,%cmb_NetworkAdapter%,Equal,"AMD 79C970",TXTAddLine,%VMCfg%,"Ethernet0.virtualDev = #$qvlance#$q",Append Else,If,%cmb_NetworkAdapter%,Equal,"AMD 79C970",TXTAddLine,%VMCfg%,"Ethernet0.virtualDev = #$qvlance#$q",Append
Else,If,%cmb_NetworkAdapter%,Equal,"VMXNET 3",TXTAddLine,%VMCfg%,"Ethernet0.virtualDev = #$qvmxnet3#$q",Append Else,If,%cmb_NetworkAdapter%,Equal,"VMXNET 3",TXTAddLine,%VMCfg%,"Ethernet0.virtualDev = #$qvmxnet3#$q",Append
Else,Halt,"INTERNAL LOGIC ERROR: No configuration has been defined for Network Adapter [%cmb_NetworkAdapter%]" Else,Halt,"INTERNAL LOGIC ERROR: No configuration has been defined for Network Adapter [%cmb_NetworkAdapter%]"
//TXTAddLine,%VMCfg%,Ethernet0.virtualDev=#$qvmxnet#$q,Append //TXTAddLine,%VMCfg%,Ethernet0.virtualDev=#$qvmxnet#$q,Append
End End
// Audio // Audio
@@ -214,6 +214,12 @@ Else,Halt,"INTERNAL LOGIC ERROR: No configuration has been defined for Firmware
// Trusted Platform Module (TPM) - This setting is not available in VMWare Player Pref. -- We should check and make sure Firmware is UEFI...) // Trusted Platform Module (TPM) - This setting is not available in VMWare Player Pref. -- We should check and make sure Firmware is UEFI...)
If,%cb_EnableTPM%,Equal,True,TxtAddLine,%VMCfg%,"managedvm.autoAddVTPM = #$qsoftware#$q",Append If,%cb_EnableTPM%,Equal,True,TxtAddLine,%VMCfg%,"managedvm.autoAddVTPM = #$qsoftware#$q",Append
// Configure a Serial Port via Named Pipe for Kernel Debugging
TxtAddLine,%VMCfg%,"serial0.fileType = #$qpipe#$q",Append
TxtAddLine,%VMCfg%,"serial0.fileName = #$q\\.\pipe\PhoenixPE#$q",Append
TxtAddLine,%VMCfg%,"serial0.yieldOnMsrRead = #$qTRUE#$q",Append
TxtAddLine,%VMCfg%,"serial0.present = #$qTRUE#$q",Append
// Shared Folder // Shared Folder
If,Not,%cmb_SharedFolder%,Equal,Disabled,Begin If,Not,%cmb_SharedFolder%,Equal,Disabled,Begin
@@ -251,15 +257,15 @@ If,Not,%cmb_VirtualHDD%,Equal,Disabled,Begin
If,%cmb_VirtualHDD%,Equal,"Empty 10GB NTFS Disk",Begin If,%cmb_VirtualHDD%,Equal,"Empty 10GB NTFS Disk",Begin
ExtractFile,%ScriptFile%,VHD,10GB-ntfs.vmdk,%VMPath% ExtractFile,%ScriptFile%,VHD,10GB-ntfs.vmdk,%VMPath%
TXTAddLine,%VMCfg%,"sata0:0.fileName = #$q%VMPath%\10GB-ntfs.vmdk#$q",Append TXTAddLine,%VMCfg%,"sata0:0.fileName = #$q%VMPath%\10GB-ntfs.vmdk#$q",Append
End End
Else,If,%cmb_VirtualHDD%,Equal,"Empty 10GB Linux Disk",Begin Else,If,%cmb_VirtualHDD%,Equal,"Empty 10GB Linux Disk",Begin
ExtractFile,%ScriptFile%,VHD,10GB-ext4.vmdk,%VMPath% ExtractFile,%ScriptFile%,VHD,10GB-ext4.vmdk,%VMPath%
TXTAddLine,%VMCfg%,"sata0:0.fileName = #$q%VMPath%\10GB-ext4.vmdk#$q",Append TXTAddLine,%VMCfg%,"sata0:0.fileName = #$q%VMPath%\10GB-ext4.vmdk#$q",Append
End End
Else,If,%cmb_VirtualHDD%,Equal,"User Defined .vmdk",Begin Else,If,%cmb_VirtualHDD%,Equal,"User Defined .vmdk",Begin
If,ExistFile,%fb_VirtualHDD%,TXTAddLine,%VMCfg%,"sata0:0.fileName = #$q%fb_VirtualHDD%#$q",Append If,ExistFile,%fb_VirtualHDD%,TXTAddLine,%VMCfg%,"sata0:0.fileName = #$q%fb_VirtualHDD%#$q",Append
Else,Halt,"Error: The virtual hard disk [%fb_VirtualHDD%] does not exist." Else,Halt,"Error: The virtual hard disk [%fb_VirtualHDD%] does not exist."
End End
Else,Halt,"INTERNAL LOGIC ERROR: No configuration exists for [%cmb_VirtualHDD%]" Else,Halt,"INTERNAL LOGIC ERROR: No configuration exists for [%cmb_VirtualHDD%]"
End End
@@ -377,9 +383,9 @@ System,SetLocal
ReadInterface,Visible,%ScriptFile%,Interface,cmb_Firmware,%state% ReadInterface,Visible,%ScriptFile%,Interface,cmb_Firmware,%state%
If,%state%,Equal,False,Begin If,%state%,Equal,False,Begin
If,Question,"WARNING!#$x#$xAdvanced options are intended for expert users only!#$x#$xModifying advanced options without knowing what you are doing can cause permanent damage to your project and may result in unexpected behavior and/or build failures.#$x#$xAre you sure you want to continue?",Begin If,Question,"WARNING!#$x#$xAdvanced options are intended for expert users only!#$x#$xModifying advanced options without knowing what you are doing can cause permanent damage to your project and may result in unexpected behavior and/or build failures.#$x#$xAre you sure you want to continue?",Begin
Set,%Toggle%,True Set,%Toggle%,True
WriteInterface,Resource,%ScriptFile%,Interface,btn_AdvancedOptions,Advanced_Exit_16.png WriteInterface,Resource,%ScriptFile%,Interface,btn_AdvancedOptions,Advanced_Exit_16.png
WriteInterface,Tooltip,%ScriptFile%,Interface,btn_AdvancedOptions,"Hide Advanced Options" WriteInterface,Tooltip,%ScriptFile%,Interface,btn_AdvancedOptions,"Hide Advanced Options"
End End
Else,Set,%Toggle%,False Else,Set,%Toggle%,False
End End