aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEverything Windows <[email protected]>2024-01-18 15:06:39 +0700
committerEverything Windows <[email protected]>2024-01-18 15:06:39 +0700
commit89343f67577f239042df8c1069ed74a9913fa102 (patch)
tree73d68566a6e47a8b72ce0604531a224579effed6
parent540a9218830989293f0e5550235742fe3a6cc05e (diff)
downloadshiftos-therevival-old-freeroam-master.tar.gz
shiftos-therevival-old-freeroam-master.tar.bz2
shiftos-therevival-old-freeroam-master.zip
GUI lock, Multilanguage support, BackgroundWork early implementationfreeroam-master
-rw-r--r--ShiftOS-TheRevival/API/ConsoleAPI.vb22
-rw-r--r--ShiftOS-TheRevival/API/TerminalAPI.vb37
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/ROMs/Strings.vb3
-rw-r--r--ShiftOS-TheRevival/Languages/lang_en.Designer.vb76
-rw-r--r--ShiftOS-TheRevival/Languages/lang_en.resx123
-rw-r--r--ShiftOS-TheRevival/Languages/lang_id.Designer.vb76
-rw-r--r--ShiftOS-TheRevival/Languages/lang_id.resx123
-rw-r--r--ShiftOS-TheRevival/MainForms/ShiftOSMenu.vb1
-rw-r--r--ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj21
-rw-r--r--ShiftOS-TheRevival/TerminalApplications/Internal/Com_Lang.vb15
-rw-r--r--ShiftOS-TheRevival/TerminalApplications/Internal/Com_Ver.vb7
11 files changed, 488 insertions, 16 deletions
diff --git a/ShiftOS-TheRevival/API/ConsoleAPI.vb b/ShiftOS-TheRevival/API/ConsoleAPI.vb
index 34a4cec..bf7f0ad 100644
--- a/ShiftOS-TheRevival/API/ConsoleAPI.vb
+++ b/ShiftOS-TheRevival/API/ConsoleAPI.vb
@@ -1,5 +1,6 @@
Module ConsoleAPI
Public StayAtChapter As Boolean = False 'If this set to true, then intro for chapters are mostly going to be in
+ Public NewBackground As System.ComponentModel.BackgroundWorker
Public Sub Console_Windowed()
Console.WindowState = FormWindowState.Normal
@@ -43,4 +44,25 @@
Console.TextBox1.Select(Console.TextBox1.Lines.Length - 1, 0)
Console.TextBox1.ScrollToCaret()
End Sub
+
+ Public Function NewBackgroundWorker(WorkSub As System.ComponentModel.DoWorkEventHandler, ProgressSub As System.ComponentModel.ProgressChangedEventHandler, CompleteSub As System.ComponentModel.RunWorkerCompletedEventHandler)
+ NewLine("NewBW")
+ NewBackground = New ComponentModel.BackgroundWorker
+ NewBackground.WorkerReportsProgress = True
+ NewBackground.WorkerSupportsCancellation = True
+ AddHandler NewBackground.DoWork, WorkSub
+ AddHandler NewBackground.ProgressChanged, ProgressSub
+ AddHandler NewBackground.RunWorkerCompleted, CompleteSub
+ NewBackground.RunWorkerAsync()
+
+ 'Return NewBackground
+ End Function
+
+ Public Sub StopBackgroundWorker(WhichBackgroundWorker As System.ComponentModel.BackgroundWorker)
+ If WhichBackgroundWorker IsNot Nothing AndAlso WhichBackgroundWorker.WorkerSupportsCancellation Then
+ ' Request cancellation
+ NewLine("CloseBW")
+ WhichBackgroundWorker.CancelAsync()
+ End If
+ End Sub
End Module
diff --git a/ShiftOS-TheRevival/API/TerminalAPI.vb b/ShiftOS-TheRevival/API/TerminalAPI.vb
index d40e2cc..26b1179 100644
--- a/ShiftOS-TheRevival/API/TerminalAPI.vb
+++ b/ShiftOS-TheRevival/API/TerminalAPI.vb
@@ -309,21 +309,25 @@ Module TerminalAPI
Case "shutdown", "shut down"
TerminateShiftOS()
Case "startg"
- If Strings.AvailableFeature(35) = 1 Then
- If IsStartG = False Then
- StartG()
- AdvancedCommand = False
- NormalCommand()
- End If
- End If
+ NormalCommand()
+ Undeveloped()
+ 'If Strings.AvailableFeature(35) = 1 Then
+ ' If IsStartG = False Then
+ ' StartG()
+ ' AdvancedCommand = False
+ ' NormalCommand()
+ ' End If
+ 'End If
Case "stopg"
- If Strings.AvailableFeature(35) = 1 Then
- If IsStartG = True Then
- StopG()
- AdvancedCommand = False
- NormalCommand()
- End If
- End If
+ NormalCommand()
+ Undeveloped()
+ 'If Strings.AvailableFeature(35) = 1 Then
+ ' If IsStartG = True Then
+ ' StopG()
+ ' AdvancedCommand = False
+ ' NormalCommand()
+ ' End If
+ 'End If
Case "textpad"
If Strings.AvailableFeature(17) = "1" Then
TextPad_WarnFile()
@@ -402,6 +406,11 @@ Module TerminalAPI
Infobar()
End If
End If
+ If command Like "lang *" Then
+ Lang()
+ AdvancedCommand = False
+ NormalCommand()
+ End If
If command Like "taskkill *" Then
Taskkill()
AdvancedCommand = False
diff --git a/ShiftOS-TheRevival/Functions/InGame/ROMs/Strings.vb b/ShiftOS-TheRevival/Functions/InGame/ROMs/Strings.vb
index ab38b16..c960ba0 100644
--- a/ShiftOS-TheRevival/Functions/InGame/ROMs/Strings.vb
+++ b/ShiftOS-TheRevival/Functions/InGame/ROMs/Strings.vb
@@ -2,7 +2,7 @@
Public Shared OSInfo() As String
Public Shared ComputerInfo(7) As String
Public Shared IsFree As Boolean
- Public Shared OnceInfo(8) As String
+ Public Shared OnceInfo(9) As String
Public Shared AvailableFeature(53) As String
Public Shared CLIInterpreter As String
Public Shared SaveFile As String
@@ -38,6 +38,7 @@
'6 = GameMode (0.2.3) (dependant)
'7 = MaxWidth (0.2.4) (depentant)
'8 = MaxHeight (0.2.4) (depentant)
+ '9 = Language (0.2.9) (default : 1)
'
'ComputerInfo Strings:
'0 = Computer Name (0.1) (default : shiftos)
diff --git a/ShiftOS-TheRevival/Languages/lang_en.Designer.vb b/ShiftOS-TheRevival/Languages/lang_en.Designer.vb
new file mode 100644
index 0000000..8b0c195
--- /dev/null
+++ b/ShiftOS-TheRevival/Languages/lang_en.Designer.vb
@@ -0,0 +1,76 @@
+'------------------------------------------------------------------------------
+' <auto-generated>
+' This code was generated by a tool.
+' Runtime Version:4.0.30319.42000
+'
+' Changes to this file may cause incorrect behavior and will be lost if
+' the code is regenerated.
+' </auto-generated>
+'------------------------------------------------------------------------------
+
+Option Strict On
+Option Explicit On
+
+Imports System
+
+Namespace My.Resources
+
+ 'This class was auto-generated by the StronglyTypedResourceBuilder
+ 'class via a tool like ResGen or Visual Studio.
+ 'To add or remove a member, edit your .ResX file then rerun ResGen
+ 'with the /str option, or rebuild your VS project.
+ '''<summary>
+ ''' A strongly-typed resource class, for looking up localized strings, etc.
+ '''</summary>
+ <Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0"), _
+ Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
+ Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
+ Friend Class lang_en
+
+ Private Shared resourceMan As Global.System.Resources.ResourceManager
+
+ Private Shared resourceCulture As Global.System.Globalization.CultureInfo
+
+ <Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
+ Friend Sub New()
+ MyBase.New
+ End Sub
+
+ '''<summary>
+ ''' Returns the cached ResourceManager instance used by this class.
+ '''</summary>
+ <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
+ Friend Shared ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
+ Get
+ If Object.ReferenceEquals(resourceMan, Nothing) Then
+ Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ShiftOS_TheRevival.lang_en", GetType(lang_en).Assembly)
+ resourceMan = temp
+ End If
+ Return resourceMan
+ End Get
+ End Property
+
+ '''<summary>
+ ''' Overrides the current thread's CurrentUICulture property for all
+ ''' resource lookups using this strongly typed resource class.
+ '''</summary>
+ <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
+ Friend Shared Property Culture() As Global.System.Globalization.CultureInfo
+ Get
+ Return resourceCulture
+ End Get
+ Set
+ resourceCulture = value
+ End Set
+ End Property
+
+ '''<summary>
+ ''' Looks up a localized string similar to ShiftOS TheRevival version .
+ '''</summary>
+ Friend Shared ReadOnly Property Console_Ver_FullString() As String
+ Get
+ Return ResourceManager.GetString("Console_Ver_FullString", resourceCulture)
+ End Get
+ End Property
+ End Class
+End Namespace
diff --git a/ShiftOS-TheRevival/Languages/lang_en.resx b/ShiftOS-TheRevival/Languages/lang_en.resx
new file mode 100644
index 0000000..710734c
--- /dev/null
+++ b/ShiftOS-TheRevival/Languages/lang_en.resx
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="Console_Ver_FullString" xml:space="preserve">
+ <value>ShiftOS TheRevival version </value>
+ </data>
+</root> \ No newline at end of file
diff --git a/ShiftOS-TheRevival/Languages/lang_id.Designer.vb b/ShiftOS-TheRevival/Languages/lang_id.Designer.vb
new file mode 100644
index 0000000..5a57f14
--- /dev/null
+++ b/ShiftOS-TheRevival/Languages/lang_id.Designer.vb
@@ -0,0 +1,76 @@
+'------------------------------------------------------------------------------
+' <auto-generated>
+' This code was generated by a tool.
+' Runtime Version:4.0.30319.42000
+'
+' Changes to this file may cause incorrect behavior and will be lost if
+' the code is regenerated.
+' </auto-generated>
+'------------------------------------------------------------------------------
+
+Option Strict On
+Option Explicit On
+
+Imports System
+
+Namespace My.Resources
+
+ 'This class was auto-generated by the StronglyTypedResourceBuilder
+ 'class via a tool like ResGen or Visual Studio.
+ 'To add or remove a member, edit your .ResX file then rerun ResGen
+ 'with the /str option, or rebuild your VS project.
+ '''<summary>
+ ''' A strongly-typed resource class, for looking up localized strings, etc.
+ '''</summary>
+ <Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0"), _
+ Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
+ Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
+ Friend Class lang_id
+
+ Private Shared resourceMan As Global.System.Resources.ResourceManager
+
+ Private Shared resourceCulture As Global.System.Globalization.CultureInfo
+
+ <Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
+ Friend Sub New()
+ MyBase.New
+ End Sub
+
+ '''<summary>
+ ''' Returns the cached ResourceManager instance used by this class.
+ '''</summary>
+ <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
+ Friend Shared ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
+ Get
+ If Object.ReferenceEquals(resourceMan, Nothing) Then
+ Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ShiftOS_TheRevival.lang_id", GetType(lang_id).Assembly)
+ resourceMan = temp
+ End If
+ Return resourceMan
+ End Get
+ End Property
+
+ '''<summary>
+ ''' Overrides the current thread's CurrentUICulture property for all
+ ''' resource lookups using this strongly typed resource class.
+ '''</summary>
+ <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
+ Friend Shared Property Culture() As Global.System.Globalization.CultureInfo
+ Get
+ Return resourceCulture
+ End Get
+ Set
+ resourceCulture = value
+ End Set
+ End Property
+
+ '''<summary>
+ ''' Looks up a localized string similar to ShiftOS TheRevival versi .
+ '''</summary>
+ Friend Shared ReadOnly Property Console_Ver_FullString() As String
+ Get
+ Return ResourceManager.GetString("Console_Ver_FullString", resourceCulture)
+ End Get
+ End Property
+ End Class
+End Namespace
diff --git a/ShiftOS-TheRevival/Languages/lang_id.resx b/ShiftOS-TheRevival/Languages/lang_id.resx
new file mode 100644
index 0000000..620e2c1
--- /dev/null
+++ b/ShiftOS-TheRevival/Languages/lang_id.resx
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="Console_Ver_FullString" xml:space="preserve">
+ <value>ShiftOS TheRevival versi </value>
+ </data>
+</root> \ No newline at end of file
diff --git a/ShiftOS-TheRevival/MainForms/ShiftOSMenu.vb b/ShiftOS-TheRevival/MainForms/ShiftOSMenu.vb
index 762c95d..0933ba9 100644
--- a/ShiftOS-TheRevival/MainForms/ShiftOSMenu.vb
+++ b/ShiftOS-TheRevival/MainForms/ShiftOSMenu.vb
@@ -28,6 +28,7 @@ Public Class ShiftOSMenu
Try
Strings.IsFree = True
Strings.OnceInfo(6) = "free"
+ Strings.OnceInfo(9) = 1
IsConsoleParent = True
FreeRoamMode()
Console.Show()
diff --git a/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj b/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj
index 320f984..723980b 100644
--- a/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj
+++ b/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj
@@ -99,6 +99,16 @@
<Compile Include="Functions\InGame\ROMs\GUISCustomizations.vb" />
<Compile Include="Functions\InGame\SystemManager\CodepointSystem.vb" />
<Compile Include="Functions\InGame\SystemManager\Terminate.vb" />
+ <Compile Include="Languages\lang_en.Designer.vb">
+ <AutoGen>True</AutoGen>
+ <DesignTime>True</DesignTime>
+ <DependentUpon>lang_en.resx</DependentUpon>
+ </Compile>
+ <Compile Include="Languages\lang_id.Designer.vb">
+ <AutoGen>True</AutoGen>
+ <DesignTime>True</DesignTime>
+ <DependentUpon>lang_id.resx</DependentUpon>
+ </Compile>
<Compile Include="MainForms\Applications\DuWM\Shifter\Categories\DuWM_Shifter_About.Designer.vb">
<DependentUpon>DuWM_Shifter_About.vb</DependentUpon>
</Compile>
@@ -267,6 +277,7 @@
<Compile Include="TerminalApplications\Internal\Com_Help.vb" />
<Compile Include="TerminalApplications\Internal\Com_Hostname.vb" />
<Compile Include="TerminalApplications\Internal\Com_Infobar.vb" />
+ <Compile Include="TerminalApplications\Internal\Com_Lang.vb" />
<Compile Include="TerminalApplications\Internal\Com_Manual.vb" />
<Compile Include="TerminalApplications\Internal\Com_Mkdir.vb" />
<Compile Include="TerminalApplications\Internal\Com_Pwd.vb" />
@@ -302,6 +313,16 @@
<Compile Include="TerminalApplications\Internal\Com_Zip.vb" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="Languages\lang_en.resx">
+ <CustomToolNamespace>My.Resources</CustomToolNamespace>
+ <Generator>ResXFileCodeGenerator</Generator>
+ <LastGenOutput>lang_en.Designer.vb</LastGenOutput>
+ </EmbeddedResource>
+ <EmbeddedResource Include="Languages\lang_id.resx">
+ <CustomToolNamespace>My.Resources</CustomToolNamespace>
+ <Generator>ResXFileCodeGenerator</Generator>
+ <LastGenOutput>lang_id.Designer.vb</LastGenOutput>
+ </EmbeddedResource>
<EmbeddedResource Include="MainForms\Applications\DuWM\Shifter\Categories\DuWM_Shifter_About.resx">
<DependentUpon>DuWM_Shifter_About.vb</DependentUpon>
</EmbeddedResource>
diff --git a/ShiftOS-TheRevival/TerminalApplications/Internal/Com_Lang.vb b/ShiftOS-TheRevival/TerminalApplications/Internal/Com_Lang.vb
new file mode 100644
index 0000000..864a6ea
--- /dev/null
+++ b/ShiftOS-TheRevival/TerminalApplications/Internal/Com_Lang.vb
@@ -0,0 +1,15 @@
+Module Com_Lang
+ Public LangNum As Integer
+
+ Public Sub Lang()
+ LangNum = RawCommand.Substring(5)
+ Select Case LangNum
+ Case 1
+ ' English
+ Strings.OnceInfo(9) = 1
+ Case 2
+ ' Indonesian
+ Strings.OnceInfo(9) = 2
+ End Select
+ End Sub
+End Module
diff --git a/ShiftOS-TheRevival/TerminalApplications/Internal/Com_Ver.vb b/ShiftOS-TheRevival/TerminalApplications/Internal/Com_Ver.vb
index 8b2de41..dbbd541 100644
--- a/ShiftOS-TheRevival/TerminalApplications/Internal/Com_Ver.vb
+++ b/ShiftOS-TheRevival/TerminalApplications/Internal/Com_Ver.vb
@@ -1,5 +1,10 @@
Module Com_Ver
Public Sub Terminal_Version()
- NewLine("ShiftOS TheRevival version " & My.Resources.CurrentVersion)
+ Select Case Strings.OnceInfo(9)
+ Case 1
+ NewLine(My.Resources.lang_en.Console_Ver_FullString & My.Resources.CurrentVersion)
+ Case 2
+ NewLine(My.Resources.lang_id.Console_Ver_FullString & My.Resources.CurrentVersion)
+ End Select
End Sub
End Module