Skip to content

Commit

Permalink
Release 0.5.5.4 - added Transparency color selection in the asset loa…
Browse files Browse the repository at this point in the history
…der.
  • Loading branch information
dtremblay committed Jun 4, 2021
1 parent 277c621 commit 47b02ee
Show file tree
Hide file tree
Showing 14 changed files with 299 additions and 82 deletions.
109 changes: 70 additions & 39 deletions FoenixIDESetup/FoenixIDESetup.vdproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,12 @@
"SccProvider" = "8:"
"Hierarchy"
{
"Entry"
{
"MsmKey" = "8:_02B9AD39E664BFB03C80ABF08BCAEE25"
"OwnerKey" = "8:_05BB69B027C149C699B0E2980589B4DF"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_05BB69B027C149C699B0E2980589B4DF"
Expand Down Expand Up @@ -99,6 +105,12 @@
}
"Entry"
{
"MsmKey" = "8:_6EC8C89816114AD78C1733F511C5CE42"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_6FDDB1F1722B4E5094B4B6E7CF1F55F3"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
Expand Down Expand Up @@ -165,12 +177,6 @@
}
"Entry"
{
"MsmKey" = "8:_B423A87FCDE404551AD29B717843A708"
"OwnerKey" = "8:_05BB69B027C149C699B0E2980589B4DF"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_B7646B74D1344494AA0483CB2EF5407B"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
Expand Down Expand Up @@ -220,7 +226,7 @@
"Entry"
{
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_B423A87FCDE404551AD29B717843A708"
"OwnerKey" = "8:_02B9AD39E664BFB03C80ABF08BCAEE25"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
Expand Down Expand Up @@ -288,6 +294,11 @@
"ComponentsUrl" = "8:"
"Items"
{
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:.NETFramework,Version=v4.6.1"
{
"Name" = "8:Microsoft .NET Framework 4.6.1 (x86 and x64)"
"ProductCode" = "8:.NETFramework,Version=v4.6.1"
}
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:.NETFramework,Version=v4.7.2"
{
"Name" = "8:Microsoft .NET Framework 4.7.2 (x86 and x64)"
Expand Down Expand Up @@ -324,6 +335,37 @@
}
"File"
{
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_02B9AD39E664BFB03C80ABF08BCAEE25"
{
"AssemblyRegister" = "3:1"
"AssemblyIsInGAC" = "11:FALSE"
"AssemblyAsmDisplayName" = "8:FastColoredTextBox, Version=2.16.28.1, Culture=neutral, PublicKeyToken=fb8aa12b994ef61b, processorArchitecture=MSIL"
"ScatterAssemblies"
{
"_02B9AD39E664BFB03C80ABF08BCAEE25"
{
"Name" = "8:FastColoredTextBox.dll"
"Attributes" = "3:512"
}
}
"SourcePath" = "8:FastColoredTextBox.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_E6F0D81DDC2A4228B28F5AF3B10C767F"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
"ReadOnly" = "11:FALSE"
"Hidden" = "11:FALSE"
"System" = "11:FALSE"
"Permanent" = "11:FALSE"
"SharedLegacy" = "11:FALSE"
"PackageAs" = "3:1"
"Register" = "3:1"
"Exclude" = "11:FALSE"
"IsDependency" = "11:TRUE"
"IsolateTo" = "8:"
}
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_12B7D8CBF6E540459FE06AE6AE39F9FA"
{
"SourcePath" = "8:..\\Main\\Resources\\base_asm\\interrupt_handler.asm"
Expand Down Expand Up @@ -584,6 +626,26 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6EC8C89816114AD78C1733F511C5CE42"
{
"SourcePath" = "8:..\\Main\\Resources\\foenix-game-generator-syntax.xml"
"TargetName" = "8:foenix-game-generator-syntax.xml"
"Tag" = "8:"
"Folder" = "8:_E6F0D81DDC2A4228B28F5AF3B10C767F"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
"ReadOnly" = "11:FALSE"
"Hidden" = "11:FALSE"
"System" = "11:FALSE"
"Permanent" = "11:FALSE"
"SharedLegacy" = "11:FALSE"
"PackageAs" = "3:1"
"Register" = "3:1"
"Exclude" = "11:FALSE"
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6FDDB1F1722B4E5094B4B6E7CF1F55F3"
{
"SourcePath" = "8:..\\Main\\Resources\\base_asm\\timer_def.asm"
Expand Down Expand Up @@ -815,37 +877,6 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_B423A87FCDE404551AD29B717843A708"
{
"AssemblyRegister" = "3:1"
"AssemblyIsInGAC" = "11:FALSE"
"AssemblyAsmDisplayName" = "8:FastColoredTextBox, Version=2.16.24.0, Culture=neutral, PublicKeyToken=fb8aa12b994ef61b, processorArchitecture=MSIL"
"ScatterAssemblies"
{
"_B423A87FCDE404551AD29B717843A708"
{
"Name" = "8:FastColoredTextBox.dll"
"Attributes" = "3:512"
}
}
"SourcePath" = "8:FastColoredTextBox.dll"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_E6F0D81DDC2A4228B28F5AF3B10C767F"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
"ReadOnly" = "11:FALSE"
"Hidden" = "11:FALSE"
"System" = "11:FALSE"
"Permanent" = "11:FALSE"
"SharedLegacy" = "11:FALSE"
"PackageAs" = "3:1"
"Register" = "3:1"
"Exclude" = "11:FALSE"
"IsDependency" = "11:TRUE"
"IsolateTo" = "8:"
}
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B7646B74D1344494AA0483CB2EF5407B"
{
"SourcePath" = "8:..\\Main\\Resources\\GameGeneratorTemplates.txt"
Expand Down Expand Up @@ -1076,7 +1107,7 @@
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:FoenixIDE Setup"
"ProductCode" = "8:{0F09CD7A-6292-4AD4-B99E-D088A15D65C9}"
"PackageCode" = "8:{445CF6A4-DD3A-42B3-8209-7384B98B9E97}"
"PackageCode" = "8:{0C342159-8165-474E-9E0E-A03DC08270C0}"
"UpgradeCode" = "8:{A91983FA-7F1D-495E-8BFB-CB92EECA466F}"
"AspNetVersion" = "8:4.0.30319.0"
"RestartWWWService" = "11:FALSE"
Expand Down
9 changes: 7 additions & 2 deletions Main/FileFormat/FoenixLexer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,9 @@ public enum TokenType
DISABLE_TILEMAP,
SET_TILEMAP_POS,
IF,
VAR
VAR,
INCR,
DECR
}

public class TokenMatch
Expand Down Expand Up @@ -113,9 +115,12 @@ public FoenixLexer(string code)
_tokenDefinitions.Add(new TokenDefinition(TokenType.ASSET, @"^[ \t]*asset\s+("".+""|\S+)\s+(\w+)(\s*//.*^\r)?", 1));
_tokenDefinitions.Add(new TokenDefinition(TokenType.SUB, @"(\S+)\s*{((?>[^{}]+|{(?<c>)|}(?<-c>))*(?(c)(?!)))}", 1));
_tokenDefinitions.Add(new TokenDefinition(TokenType.COPY, @"^[ \t]*copy\s+(\S*)\s+(\S*)\s+(\S*)(\s*//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.ASSIGNMENT, @"^[ \t]*(\w+)\s*=\s*(\S*)(\s*//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.ASSIGNMENT, @"^[ \t]*(?!var\s+)(\w+)\s*=\s*(\S*)(\s*//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.VAR, @"^[ \t]*var\s+(\w+)\s*=\s*(\S*)(\s*//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.LABEL, @"^[ \t]*(\w+)\s*:(\s*//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.GOTO, @"^[ \t]*goto\s+(\S*)(\s//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.INCR, @"^[ \t]*incr\s+(\S*)(\s//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.DECR, @"^[ \t]*decr\s+(\S*)(\s//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.FILL, @"^[ \t]*fill\s+(\S*)\s+(\S*)\s+(\S*)(\s*//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.VGM_INIT, @"^[ \t]*vgm_init\s+(\S*)(\s*//.*^\r)?", 2));
_tokenDefinitions.Add(new TokenDefinition(TokenType.VGM_PLAY, @"^[ \t]*vgm_play(\s*//.*^\r)?", 2));
Expand Down
10 changes: 6 additions & 4 deletions Main/FoenixIDE.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,9 @@
<StartupObject>FoenixIDE.Program</StartupObject>
</PropertyGroup>
<ItemGroup>
<Reference Include="FastColoredTextBox, Version=2.16.24.0, Culture=neutral, PublicKeyToken=fb8aa12b994ef61b, processorArchitecture=MSIL">
<HintPath>..\packages\FCTB.2.16.24\lib\FastColoredTextBox.dll</HintPath>
<Reference Include="FastColoredTextBox, Version=2.16.28.1, Culture=neutral, PublicKeyToken=fb8aa12b994ef61b, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\FastColoredTextBox\FastColoredTextBox\bin\Release\FastColoredTextBox.dll</HintPath>
</Reference>
<Reference Include="Microsoft.VisualBasic" />
<Reference Include="System" />
Expand Down Expand Up @@ -324,7 +325,6 @@
<EmbeddedResource Include="UI\WatchForm.resx">
<DependentUpon>WatchForm.cs</DependentUpon>
</EmbeddedResource>
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
Expand Down Expand Up @@ -356,7 +356,9 @@
</ItemGroup>
<ItemGroup>
<Content Include="icon.ico" />
<Content Include="Resources\foenix-game-generator-syntax.xml" />
<Content Include="Resources\foenix-game-generator-syntax.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="roms\kernel.lst">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
Expand Down
4 changes: 2 additions & 2 deletions Main/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("0.5.5.3")]
[assembly: AssemblyFileVersion("0.5.5.3")]
[assembly: AssemblyVersion("0.5.5.4")]
[assembly: AssemblyFileVersion("0.5.5.4")]
25 changes: 24 additions & 1 deletion Main/Resources/GameGeneratorTemplates.txt
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@
JSL FILL_VRAM

[VGM_INIT]
; VGM_INIT template
; Address {1}
JSL VGM_INIT_TIMERS
; load the game over music
LDA #`{1}
Expand All @@ -91,6 +93,7 @@
JSL VGM_SET_SONG_POINTERS

[VGM_PLAY]
; VGM_PLAY template
JSL VGM_WRITE_REGISTER

[ENABLE_INTERRUPTS]
Expand Down Expand Up @@ -200,4 +203,24 @@
STA TL0_WINDOW_X_POS_L + {1}*12
LDA #{3}
STA TL0_WINDOW_Y_POS_L + {1}*12
setas
setas

[INCR]
; INCR template
; address {1}
LDA @l {1}
INC A
STA @l {1}

[DECR]
; DECR template
; address {1}
LDA @l {1}
DEC A
STA @l {1}

[VAR]
; VAR template
; name {1}
; value {2}
{1} .byte {2}
18 changes: 14 additions & 4 deletions Main/Resources/foenix-game-generator-syntax.xml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<doc>
<brackets left="{" right="}" />

<!-- STYLES -->
<style name="Maroon" color="Maroon" fontStyle="Bold,Italic" />
<style name="Blue" color="Blue" fontStyle="Bold"/>
<style name="Red" color="Red" backColor="#f5f5e5" />
<style name="Green" color="Green" fontStyle="Italic" />
<!-- COMMENTS -->
<rule style="Green">//.*</rule>
<style name="var" color="Orange" fontStyle="Bold" />
<style name="sub" color="Black" fontStyle="Bold" />


<!-- KEYWORDS -->
<rule style="Blue" options="IgnoreCase">ASSET</rule>
Expand All @@ -32,11 +33,20 @@
<rule style="Maroon">\s+([\w_]+:)</rule>

<!-- ASSIGNMENTS -->
<rule style="Maroon">([\w_]+)\s*=\s*</rule>
<rule style="Maroon" options="IgnoreCase,Multiline">^\s*(?!var\s*)(?&lt;range&gt;\w+)\s*=.*$</rule>
<!-- VAR -->
<rule style="var" options="IgnoreCase">\s*(?&lt;range&gt;var\s*\w+)\s*=.*</rule>


<rule style="Red" options="IgnoreCase">[$][0-9a-f]{1,2}:?[0-9a-f]{1,4}</rule>
<rule style="Red" options="IgnoreCase">(?:GOTO)\s+(?&lt;range&gt;\w+)</rule>

<!-- COMMENTS -->
<rule style="Green">//.*</rule>


<!-- SUB ROUTINES, IF THEN -->
<rule style="sub" options="Multiline">(?&lt;range&gt;\S+)\s*{((?&gt;[^{}]+|{(?&lt;c&gt;)|}(?&lt;-c&gt;))*(?(c)(?!)))}</rule>

<folding start="{" finish="}" options="IgnoreCase"/>
</doc>
Loading

0 comments on commit 47b02ee

Please sign in to comment.