├── Legacy ├── .gitignore ├── README.md ├── packages.config ├── app.config ├── Properties │ └── AssemblyInfo.cs ├── Blucky │ └── Aliases.cs ├── Hyperspace │ └── BmpExtension.cs ├── Brownie │ ├── ImageNGW.cs │ └── AudioWAV.cs ├── Mink │ ├── ImageGDF.cs │ └── ImageMCP.cs └── UMeSoft │ ├── AudioIKE.cs │ └── AudioSTR.cs ├── GUI ├── Images │ ├── sample.ico │ ├── 32x32 │ │ ├── help.png │ │ ├── back button.png │ │ └── forward button.png │ ├── 64x64 │ │ ├── info.png │ │ ├── alert.png │ │ └── actions.png │ ├── Cursors │ │ ├── grab.cur │ │ └── grabbing.cur │ ├── search4files.ico │ ├── splashscreen.png │ └── 48x48 │ │ └── refresh.png ├── TextViewer.xaml ├── packages.config ├── ArcParameters.xaml.cs ├── GARbro.GUI.csproj.user ├── App.xaml ├── EnterMaskDialog.xaml.cs ├── EnterMaskDialog.xaml ├── UpdateDialog.xaml.cs ├── Settings.cs ├── TroubleShootingDialog.xaml ├── ArcParameters.xaml ├── ConvertMedia.xaml.cs ├── FileErrorDialog.xaml ├── FileExistsDialog.xaml ├── FileExistsDialog.xaml.cs └── Properties │ └── AssemblyInfo.cs ├── ArcFormats ├── Softpal │ ├── WaveTable1 │ ├── WaveTable2 │ └── AudioBGM.cs ├── Abogado │ └── keytable.dat ├── Resources │ └── Formats.dat ├── ScrPlayer │ ├── IControlTable1 │ ├── IControlTable2 │ ├── ImgDeltaTable2 │ ├── IColorBitsTable2 │ ├── ImgControlTable1 │ ├── IControlTable32 │ └── IColorBitsTable1 ├── RPM │ ├── WidgetARC.xaml.cs │ └── WidgetARC.xaml ├── CatSystem │ ├── CreateINTWidget.xaml │ └── CreateINTWidget.xaml.cs ├── FlyingShine │ ├── CreatePDWidget.xaml.cs │ └── CreatePDWidget.xaml ├── Will │ ├── CreateARCWidget.xaml.cs │ └── CreateARCWidget.xaml ├── NitroPlus │ ├── CreateSGWidget.xaml.cs │ ├── WidgetNPA.xaml │ ├── WidgetNPK.xaml │ ├── WidgetNPK.xaml.cs │ ├── CreateNPAWidget.xaml.cs │ ├── WidgetNPA.xaml.cs │ └── CreateSGWidget.xaml ├── KiriKiri │ ├── CreateXP3Widget.xaml.cs │ ├── WidgetXP3.xaml │ ├── WidgetXP3.xaml.cs │ └── CreateXP3Widget.xaml ├── AZSys │ ├── WidgetAZ.xaml │ └── WidgetAZ.xaml.cs ├── AnimeGameSystem │ ├── WidgetAGS.xaml │ └── WidgetAGS.xaml.cs ├── Cyberworks │ ├── WidgetBELL.xaml │ └── WidgetBELL.xaml.cs ├── MangaGamer │ ├── WidgetMGPK.xaml │ └── WidgetMGPK.xaml.cs ├── PkWare │ ├── WidgetZIP.xaml.cs │ └── WidgetZIP.xaml ├── ExHibit │ ├── WidgetGYU.xaml.cs │ └── WidgetGYU.xaml ├── Tamamo │ ├── WidgetPCK.xaml.cs │ └── WidgetPCK.xaml ├── Musica │ ├── WidgetPAZ.xaml.cs │ └── WidgetPAZ.xaml ├── NonColor │ ├── WidgetNCARC.xaml.cs │ └── WidgetNCARC.xaml ├── Leaf │ ├── WidgetLEAF.xaml.cs │ ├── WidgetLEAF.xaml │ └── AudioP16.cs ├── Entis │ ├── WidgetNOA.xaml │ └── WidgetNOA.xaml.cs ├── StudioJikkenshitsu │ ├── WidgetSJDAT.xaml.cs │ └── WidgetSJDAT.xaml ├── Ikura │ ├── WidgetISF.xaml │ └── WidgetISF.xaml.cs ├── Qlie │ ├── WidgetQLIE.xaml │ └── WidgetQLIE.xaml.cs ├── Eagls │ ├── WidgetEAGLS.xaml │ └── WidgetEAGLS.xaml.cs ├── Lucifen │ ├── WidgetLPK.xaml.cs │ └── WidgetLPK.xaml ├── DxLib │ ├── WidgetSCR.xaml │ └── WidgetSCR.xaml.cs ├── Tactics │ ├── WidgetTactics.xaml.cs │ └── WidgetTactics.xaml ├── YuRis │ ├── WidgetYPF.xaml │ ├── WidgetYPF.xaml.cs │ ├── CreateYPFWidget.xaml │ └── CreateYPFWidget.xaml.cs ├── ShiinaRio │ ├── WidgetWARC.xaml.cs │ └── WidgetWARC.xaml ├── NSystem │ ├── WidgetMSD.xaml.cs │ └── WidgetMSD.xaml ├── Marble │ ├── WidgetMBL.xaml.cs │ └── WidgetMBL.xaml ├── LiveMaker │ ├── WidgetGAL.xaml.cs │ └── WidgetGAL.xaml ├── packages.config ├── NScripter │ ├── WidgetNSA.xaml │ ├── CreateONSWidget.xaml │ ├── WidgetNSA.xaml.cs │ ├── CreateONSWidget.xaml.cs │ └── Script.cs ├── Unity │ └── strings.dat ├── Majiro │ ├── WidgetRCT.xaml │ └── WidgetRCT.xaml.cs ├── Selene │ ├── WidgetKCAP.xaml.cs │ └── WidgetKCAP.xaml ├── RenPy │ ├── CreateRPAWidget.xaml.cs │ └── CreateRPAWidget.xaml ├── Properties │ ├── Settings.cs │ └── AssemblyInfo.cs ├── Amaterasu │ ├── CreateAMIWidget.xaml │ └── CreateAMIWidget.xaml.cs ├── Dac │ ├── WidgetDPK.xaml.cs │ └── WidgetDPK.xaml ├── FC01 │ └── WidgetMCG.xaml ├── RealLive │ └── AudioOWP.cs ├── DraftAudio.cs ├── Eushully │ └── AudioAOG.cs ├── DraftImage.cs ├── MicroVision │ └── AudioIKM.cs ├── Key │ └── AudioOGGPAK.cs ├── C4 │ └── AudioVMD.cs ├── Slg │ └── AudioVOI.cs ├── EmbeddedResource.cs ├── Crowd │ └── AudioEOG.cs ├── Sviu │ └── AudioKOG.cs ├── Ice │ └── ScriptISD.cs ├── Aoi │ └── AudioAOG.cs ├── Ail │ └── ArcLNK2.cs ├── ResourceSettings.cs ├── DraftArc.cs ├── Ethornell │ └── AudioBGI.cs ├── MersenneTwister.cs └── Macromedia │ └── AudioEDIM.cs ├── Experimental ├── x64 │ └── libwebp.dll ├── x86 │ └── libwebp.dll ├── Artemis │ ├── IPT.parser │ ├── IPT.Language.analyzer.lex │ ├── IPT.Scanner.cs │ ├── IPT.Language.grammar.y │ └── IPT.Parser.cs ├── app.config ├── Properties │ └── AssemblyInfo.cs └── packages.config ├── Net20 ├── README.md └── Properties │ └── AssemblyInfo.cs ├── GameRes ├── packages.config ├── README.md ├── Properties │ ├── Settings.settings │ ├── Settings.cs │ └── AssemblyInfo.cs └── app.config ├── Console ├── README.md ├── App.config ├── GARbro.Console.csproj.user └── Properties │ └── AssemblyInfo.cs ├── Image.Convert ├── README.md ├── App.config ├── Image.Convert.csproj.user └── Properties │ └── AssemblyInfo.cs ├── .gitignore ├── packages └── repositories.config ├── .gitattributes ├── LICENSE ├── docs └── version.xml └── inc-revision.pl /Legacy/.gitignore: -------------------------------------------------------------------------------- 1 | Nanami 2 | -------------------------------------------------------------------------------- /GUI/Images/sample.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/sample.ico -------------------------------------------------------------------------------- /GUI/Images/32x32/help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/32x32/help.png -------------------------------------------------------------------------------- /GUI/Images/64x64/info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/64x64/info.png -------------------------------------------------------------------------------- /GUI/Images/64x64/alert.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/64x64/alert.png -------------------------------------------------------------------------------- /GUI/Images/Cursors/grab.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/Cursors/grab.cur -------------------------------------------------------------------------------- /GUI/Images/search4files.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/search4files.ico -------------------------------------------------------------------------------- /GUI/Images/splashscreen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/splashscreen.png -------------------------------------------------------------------------------- /ArcFormats/Softpal/WaveTable1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/Softpal/WaveTable1 -------------------------------------------------------------------------------- /ArcFormats/Softpal/WaveTable2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/Softpal/WaveTable2 -------------------------------------------------------------------------------- /Experimental/x64/libwebp.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/Experimental/x64/libwebp.dll -------------------------------------------------------------------------------- /Experimental/x86/libwebp.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/Experimental/x86/libwebp.dll -------------------------------------------------------------------------------- /GUI/Images/48x48/refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/48x48/refresh.png -------------------------------------------------------------------------------- /GUI/Images/64x64/actions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/64x64/actions.png -------------------------------------------------------------------------------- /ArcFormats/Abogado/keytable.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/Abogado/keytable.dat -------------------------------------------------------------------------------- /ArcFormats/Resources/Formats.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/Resources/Formats.dat -------------------------------------------------------------------------------- /GUI/Images/32x32/back button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/32x32/back button.png -------------------------------------------------------------------------------- /GUI/Images/Cursors/grabbing.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/Cursors/grabbing.cur -------------------------------------------------------------------------------- /ArcFormats/ScrPlayer/IControlTable1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/ScrPlayer/IControlTable1 -------------------------------------------------------------------------------- /ArcFormats/ScrPlayer/IControlTable2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/ScrPlayer/IControlTable2 -------------------------------------------------------------------------------- /ArcFormats/ScrPlayer/ImgDeltaTable2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/ScrPlayer/ImgDeltaTable2 -------------------------------------------------------------------------------- /GUI/Images/32x32/forward button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/GUI/Images/32x32/forward button.png -------------------------------------------------------------------------------- /ArcFormats/ScrPlayer/IColorBitsTable2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/ScrPlayer/IColorBitsTable2 -------------------------------------------------------------------------------- /ArcFormats/ScrPlayer/ImgControlTable1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/morkt/GARbro/HEAD/ArcFormats/ScrPlayer/ImgControlTable1 -------------------------------------------------------------------------------- /Net20/README.md: -------------------------------------------------------------------------------- 1 | GameRes.Net20 2 | ============= 3 | 4 | Package containing classes that require .NET 2.0 environment. 5 | -------------------------------------------------------------------------------- /GameRes/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Legacy/README.md: -------------------------------------------------------------------------------- 1 | Legacy File Formats 2 | =================== 3 | 4 | Collection of formats that were used in visual novels developed in late 90s/early 2000s. 5 | -------------------------------------------------------------------------------- /Legacy/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Experimental/Artemis/IPT.parser: -------------------------------------------------------------------------------- 1 | Parser placeholder 2 | ------------------ 3 | 4 | This is only a placeholder file for grouping the component files (LEX, YACC) that compose the parser. 5 | -------------------------------------------------------------------------------- /Console/README.md: -------------------------------------------------------------------------------- 1 | GameRes.Console 2 | =============== 3 | 4 | Console utility that extracts files from game archives. Used as a testing 5 | playground for GameRes library. 6 | 7 | No longer developed. 8 | -------------------------------------------------------------------------------- /Image.Convert/README.md: -------------------------------------------------------------------------------- 1 | Image.Convert 2 | ============= 3 | 4 | Console utility that converts images between various formats. Used as a 5 | testing playground for GameRes library. 6 | 7 | No longer developed. 8 | -------------------------------------------------------------------------------- /Console/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Image.Convert/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | obj 3 | tags 4 | *.exe 5 | *.dll 6 | *.pdb 7 | *.suo 8 | *.pfx 9 | *.psess 10 | *.vsp 11 | *;* 12 | *~ 13 | Images 14 | SchemeBuilder 15 | Makefile 16 | packages 17 | Experimental 18 | .nuget 19 | .vs 20 | -------------------------------------------------------------------------------- /packages/repositories.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /GameRes/README.md: -------------------------------------------------------------------------------- 1 | GameRes Library 2 | =============== 3 | 4 | Library of the base classes that deal with game resources, such as archives, 5 | images and audio files. All derived file formats are expected to register 6 | themselves by the means of [MEF](https://msdn.microsoft.com/en-us/library/dd460648.aspx) within 7 | repository class FormatCatalog. 8 | -------------------------------------------------------------------------------- /Image.Convert/Image.Convert.csproj.user: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -t tga uninstall.hg3 5 | 6 | -------------------------------------------------------------------------------- /ArcFormats/RPM/WidgetARC.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | 3 | namespace GameRes.Formats.Rpm 4 | { 5 | /// 6 | /// Interaction logic for WidgetARC.xaml 7 | /// 8 | public partial class WidgetARC : Grid 9 | { 10 | public WidgetARC () 11 | { 12 | InitializeComponent (); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /GUI/TextViewer.xaml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ArcFormats/CatSystem/CreateINTWidget.xaml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /GUI/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ArcFormats/FlyingShine/CreatePDWidget.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | 3 | namespace GameRes.Formats.GUI 4 | { 5 | /// 6 | /// Interaction logic for CreatePDWidget.xaml 7 | /// 8 | public partial class CreatePDWidget : Grid 9 | { 10 | public CreatePDWidget () 11 | { 12 | InitializeComponent (); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ArcFormats/Will/CreateARCWidget.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | 3 | namespace GameRes.Formats.GUI 4 | { 5 | /// 6 | /// Interaction logic for CreateARCWidget.xaml 7 | /// 8 | public partial class CreateARCWidget : Grid 9 | { 10 | public CreateARCWidget () 11 | { 12 | InitializeComponent (); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ArcFormats/CatSystem/CreateINTWidget.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | 3 | namespace GameRes.Formats.GUI 4 | { 5 | /// 6 | /// Interaction logic for CreateINTWidget.xaml 7 | /// 8 | public partial class CreateINTWidget : Grid 9 | { 10 | public CreateINTWidget () 11 | { 12 | InitializeComponent (); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ArcFormats/NitroPlus/CreateSGWidget.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | 4 | namespace GameRes.Formats.GUI 5 | { 6 | /// 7 | /// Interaction logic for CreateSGWidget.xaml 8 | /// 9 | public partial class CreateSGWidget : Grid 10 | { 11 | public CreateSGWidget () 12 | { 13 | InitializeComponent (); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ArcFormats/KiriKiri/CreateXP3Widget.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | 4 | namespace GameRes.Formats.GUI 5 | { 6 | /// 7 | /// Interaction logic for CreateXP3Widget.xaml 8 | /// 9 | public partial class CreateXP3Widget : Grid 10 | { 11 | public CreateXP3Widget () 12 | { 13 | InitializeComponent (); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ArcFormats/AZSys/WidgetAZ.xaml: -------------------------------------------------------------------------------- 1 | 5 | 7 | 8 | -------------------------------------------------------------------------------- /ArcFormats/AnimeGameSystem/WidgetAGS.xaml: -------------------------------------------------------------------------------- 1 | 5 | 7 | 8 | -------------------------------------------------------------------------------- /ArcFormats/Cyberworks/WidgetBELL.xaml: -------------------------------------------------------------------------------- 1 | 5 | 7 | 8 | -------------------------------------------------------------------------------- /ArcFormats/MangaGamer/WidgetMGPK.xaml: -------------------------------------------------------------------------------- 1 | 5 | 7 | 8 | -------------------------------------------------------------------------------- /ArcFormats/PkWare/WidgetZIP.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Windows.Controls; 3 | 4 | namespace GameRes.Formats.GUI 5 | { 6 | /// 7 | /// Interaction logic for WidgetZIP.xaml 8 | /// 9 | public partial class WidgetZIP : StackPanel 10 | { 11 | public WidgetZIP (IEnumerable titles) 12 | { 13 | InitializeComponent(); 14 | this.DataContext = titles; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ArcFormats/ExHibit/WidgetGYU.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Windows.Controls; 3 | 4 | namespace GameRes.Formats.GUI 5 | { 6 | /// 7 | /// Interaction logic for WidgetGYU.xaml 8 | /// 9 | public partial class WidgetGYU : StackPanel 10 | { 11 | public WidgetGYU (IEnumerable titles) 12 | { 13 | InitializeComponent(); 14 | Title.ItemsSource = titles; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ArcFormats/Tamamo/WidgetPCK.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Windows.Controls; 3 | 4 | namespace GameRes.Formats.GUI 5 | { 6 | /// 7 | /// Interaction logic for WidgetPCK.xaml 8 | /// 9 | public partial class WidgetPCK : StackPanel 10 | { 11 | public WidgetPCK (IEnumerable keys) 12 | { 13 | InitializeComponent (); 14 | Title.ItemsSource = keys; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ArcFormats/NitroPlus/WidgetNPA.xaml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/NitroPlus/WidgetNPK.xaml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/Musica/WidgetPAZ.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using System.Windows.Controls; 3 | using GameRes.Formats.Musica; 4 | 5 | namespace GameRes.Formats.GUI 6 | { 7 | /// 8 | /// Interaction logic for WidgetPAZ.xaml 9 | /// 10 | public partial class WidgetPAZ : StackPanel 11 | { 12 | public WidgetPAZ (PazOpener paz) 13 | { 14 | InitializeComponent(); 15 | Scheme.ItemsSource = paz.KnownTitles.Keys.OrderBy (x => x); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ArcFormats/NitroPlus/WidgetNPK.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Windows.Controls; 3 | using System.Linq; 4 | 5 | namespace GameRes.Formats.GUI 6 | { 7 | /// 8 | /// Interaction logic for WidgetNPK.xaml 9 | /// 10 | public partial class WidgetNPK : Grid 11 | { 12 | public WidgetNPK (IEnumerable titles) 13 | { 14 | InitializeComponent(); 15 | Scheme.ItemsSource = titles.OrderBy (x => x); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ArcFormats/NonColor/WidgetNCARC.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | using System.Linq; 3 | using GameRes.Formats.NonColor; 4 | 5 | namespace GameRes.Formats.GUI 6 | { 7 | /// 8 | /// Interaction logic for WidgetNCARC.xaml 9 | /// 10 | public partial class WidgetNCARC : StackPanel 11 | { 12 | public WidgetNCARC() 13 | { 14 | InitializeComponent(); 15 | Scheme.ItemsSource = DatOpener.KnownSchemes.OrderBy (x => x.Key); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ArcFormats/AZSys/WidgetAZ.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using System.Windows; 3 | using System.Windows.Controls; 4 | using GameRes.Formats.AZSys; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetAZ.xaml 10 | /// 11 | public partial class WidgetAZ : StackPanel 12 | { 13 | public WidgetAZ() 14 | { 15 | InitializeComponent(); 16 | Scheme.ItemsSource = ArcOpener.KnownKeys.Keys.OrderBy (x => x); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /ArcFormats/Leaf/WidgetLEAF.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using System.Windows.Controls; 4 | 5 | namespace GameRes.Formats.GUI 6 | { 7 | /// 8 | /// Interaction logic for WidgetLEAF.xaml 9 | /// 10 | public partial class WidgetLEAF : StackPanel 11 | { 12 | public WidgetLEAF (IEnumerable titles) 13 | { 14 | this.InitializeComponent(); 15 | this.DataContext = titles.OrderBy (x => x); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ArcFormats/Tamamo/WidgetPCK.xaml: -------------------------------------------------------------------------------- 1 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /ArcFormats/Entis/WidgetNOA.xaml: -------------------------------------------------------------------------------- 1 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /ArcFormats/FlyingShine/CreatePDWidget.xaml: -------------------------------------------------------------------------------- 1 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /ArcFormats/StudioJikkenshitsu/WidgetSJDAT.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using System.Windows.Controls; 4 | 5 | namespace GameRes.Formats.GUI 6 | { 7 | /// 8 | /// Interaction logic for WidgetSJDAT.xaml 9 | /// 10 | public partial class WidgetSJDAT : StackPanel 11 | { 12 | public WidgetSJDAT (IEnumerable known_schemes) 13 | { 14 | InitializeComponent (); 15 | this.Title.ItemsSource = known_schemes.OrderBy (x => x); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ArcFormats/Ikura/WidgetISF.xaml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/Qlie/WidgetQLIE.xaml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/StudioJikkenshitsu/WidgetSJDAT.xaml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/Musica/WidgetPAZ.xaml: -------------------------------------------------------------------------------- 1 | 7 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/ExHibit/WidgetGYU.xaml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/Eagls/WidgetEAGLS.xaml: -------------------------------------------------------------------------------- 1 | 7 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/Lucifen/WidgetLPK.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | using GameRes.Formats.Properties; 4 | using GameRes.Formats.Strings; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetWARC.xaml 10 | /// 11 | public partial class WidgetLPK : Grid 12 | { 13 | public WidgetLPK () 14 | { 15 | InitializeComponent(); 16 | // select default scheme 17 | if (-1 == Scheme.SelectedIndex) 18 | Scheme.SelectedIndex = 0; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /ArcFormats/RPM/WidgetARC.xaml: -------------------------------------------------------------------------------- 1 | 7 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/Lucifen/WidgetLPK.xaml: -------------------------------------------------------------------------------- 1 | 7 | 9 | 10 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # enabling this marks the whole repository as changed 2 | #* text=auto 3 | #*.txt text 4 | #*.xaml eol=crlf 5 | 6 | # Custom for Visual Studio 7 | *.cs diff=csharp 8 | *.sln merge=union 9 | *.csproj merge=union 10 | *.vbproj merge=union 11 | *.fsproj merge=union 12 | *.dbproj merge=union 13 | 14 | # Standard to msysgit 15 | *.doc diff=astextplain 16 | *.DOC diff=astextplain 17 | *.docx diff=astextplain 18 | *.DOCX diff=astextplain 19 | *.dot diff=astextplain 20 | *.DOT diff=astextplain 21 | *.pdf diff=astextplain 22 | *.PDF diff=astextplain 23 | *.rtf diff=astextplain 24 | *.RTF diff=astextplain 25 | -------------------------------------------------------------------------------- /ArcFormats/DxLib/WidgetSCR.xaml: -------------------------------------------------------------------------------- 1 | 7 | 9 | 10 | -------------------------------------------------------------------------------- /ArcFormats/Tactics/WidgetTactics.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Diagnostics; 3 | using System.Linq; 4 | using System.Windows.Controls; 5 | using GameRes.Formats.Properties; 6 | using GameRes.Formats.Tactics; 7 | 8 | namespace GameRes.Formats.GUI 9 | { 10 | /// 11 | /// Interaction logic for WidgetTactics.xaml 12 | /// 13 | public partial class WidgetTactics : StackPanel 14 | { 15 | public WidgetTactics() 16 | { 17 | InitializeComponent(); 18 | Title.ItemsSource = Arc2Opener.KnownSchemes.OrderBy (x => x.Key); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /GUI/ArcParameters.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace GARbro.GUI 4 | { 5 | /// 6 | /// Interaction logic for ArcParameters.xaml 7 | /// 8 | public partial class ArcParametersDialog : Window 9 | { 10 | public ArcParametersDialog (UIElement widget, string notice) 11 | { 12 | InitializeComponent(); 13 | this.WidgetPane.Children.Add (widget); 14 | this.Notice.Text = notice; 15 | } 16 | 17 | private void Button_Click (object sender, RoutedEventArgs e) 18 | { 19 | DialogResult = true; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ArcFormats/YuRis/WidgetYPF.xaml: -------------------------------------------------------------------------------- 1 | 8 | 10 | 11 | -------------------------------------------------------------------------------- /GUI/GARbro.GUI.csproj.user: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | publish\ 5 | 6 | 7 | 8 | 9 | 10 | en-US 11 | false 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /ArcFormats/ShiinaRio/WidgetWARC.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | using System.Linq; 4 | using GameRes.Formats.Properties; 5 | using GameRes.Formats.Strings; 6 | 7 | namespace GameRes.Formats.GUI 8 | { 9 | /// 10 | /// Interaction logic for WidgetWARC.xaml 11 | /// 12 | public partial class WidgetWARC : Grid 13 | { 14 | public WidgetWARC () 15 | { 16 | InitializeComponent(); 17 | // select the most recent scheme as default 18 | if (-1 == Scheme.SelectedIndex) 19 | Scheme.SelectedIndex = Scheme.ItemsSource.Cast().Count()-1; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Console/GARbro.Console.csproj.user: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | publish\ 5 | 6 | 7 | 8 | 9 | 10 | en-US 11 | false 12 | 13 | 14 | -l 15 | 16 | -------------------------------------------------------------------------------- /Experimental/Artemis/IPT.Language.analyzer.lex: -------------------------------------------------------------------------------- 1 | %namespace GameRes.Formats.Artemis 2 | %scannertype IPTScanner 3 | %visibility internal 4 | %tokentype Token 5 | 6 | %option stack, minimize, parser, verbose, persistbuffer, noembedbuffers 7 | 8 | Space [ \t\v\n\f] 9 | Number [0-9]+ 10 | 11 | %{ 12 | 13 | %} 14 | 15 | %% 16 | 17 | {Space}+ /* skip */ 18 | 19 | {Number} { GetNumber(); return (int)Token.NUMBER; } 20 | 21 | \"(\\.|[^\\"\n])*\" { GetStringLiteral(); return (int)Token.STRING_LITERAL; } 22 | 23 | [a-zA-Z]+ { yylval.s = yytext; return (int)Token.IDENTIFIER; } 24 | 25 | "{" { return '{'; } 26 | 27 | "}" { return '}'; } 28 | 29 | "=" { return '='; } 30 | 31 | "," { return ','; } 32 | 33 | %% -------------------------------------------------------------------------------- /ArcFormats/Leaf/WidgetLEAF.xaml: -------------------------------------------------------------------------------- 1 | 8 | 10 | 11 | -------------------------------------------------------------------------------- /ArcFormats/MangaGamer/WidgetMGPK.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using System.Windows.Controls; 3 | using GameRes.Formats.Mg; 4 | using GameRes.Formats.Strings; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetMGPK.xaml 10 | /// 11 | public partial class WidgetMGPK : StackPanel 12 | { 13 | public WidgetMGPK() 14 | { 15 | InitializeComponent(); 16 | var keys = new string[] { arcStrings.ArcNoEncryption }; 17 | Title.ItemsSource = keys.Concat (MgpkOpener.KnownKeys.Keys.OrderBy (x => x)); 18 | if (-1 == Title.SelectedIndex) 19 | Title.SelectedIndex = 0; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ArcFormats/Tactics/WidgetTactics.xaml: -------------------------------------------------------------------------------- 1 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /Legacy/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /ArcFormats/Ikura/WidgetISF.xaml.cs: -------------------------------------------------------------------------------- 1 | using GameRes.Formats.Ikura; 2 | using GameRes.Formats.Strings; 3 | using System.Linq; 4 | using System.Windows.Controls; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetISF.xaml 10 | /// 11 | public partial class WidgetISF : StackPanel 12 | { 13 | public WidgetISF () 14 | { 15 | InitializeComponent (); 16 | var keys = new string[] { arcStrings.ArcIgnoreEncryption}; 17 | Scheme.ItemsSource = keys.Concat (MpxOpener.KnownSecrets.Keys.OrderBy (x => x)); 18 | if (-1 == Scheme.SelectedIndex) 19 | Scheme.SelectedIndex = 0; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ArcFormats/Qlie/WidgetQLIE.xaml.cs: -------------------------------------------------------------------------------- 1 | using GameRes.Formats.Qlie; 2 | using GameRes.Formats.Strings; 3 | using System.Windows.Controls; 4 | using System.Linq; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetQLIE.xaml 10 | /// 11 | public partial class WidgetQLIE : StackPanel 12 | { 13 | public WidgetQLIE () 14 | { 15 | InitializeComponent (); 16 | var keys = new string[] { arcStrings.QLIEDefaultScheme }; 17 | Scheme.ItemsSource = keys.Concat (PackOpener.KnownKeys.Keys.OrderBy (x => x)); 18 | if (-1 == Scheme.SelectedIndex) 19 | Scheme.SelectedIndex = 0; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Experimental/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /ArcFormats/Cyberworks/WidgetBELL.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using System.Windows.Controls; 3 | using GameRes.Formats.Cyberworks; 4 | using GameRes.Formats.Strings; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetBELL.xaml 10 | /// 11 | public partial class WidgetBELL : StackPanel 12 | { 13 | public WidgetBELL() 14 | { 15 | InitializeComponent(); 16 | var keys = new string[] { arcStrings.ArcIgnoreEncryption }; 17 | Title.ItemsSource = keys.Concat (DatOpener.KnownSchemes.Keys.OrderBy (x => x)); 18 | if (-1 == Title.SelectedIndex) 19 | Title.SelectedIndex = 0; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ArcFormats/DxLib/WidgetSCR.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | using System.Linq; 3 | using GameRes.Formats.DxLib; 4 | using GameRes.Formats.Strings; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetSCR.xaml 10 | /// 11 | public partial class WidgetSCR : StackPanel 12 | { 13 | public WidgetSCR() 14 | { 15 | InitializeComponent(); 16 | var keys = new string[] { arcStrings.ArcIgnoreEncryption }; 17 | ScriptScheme.ItemsSource = keys.Concat (MedOpener.KnownSchemes.Keys.OrderBy (x => x)); 18 | if (-1 == ScriptScheme.SelectedIndex) 19 | ScriptScheme.SelectedIndex = 0; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ArcFormats/NSystem/WidgetMSD.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using System.Windows.Controls; 4 | using GameRes.Formats.NSystem; 5 | using GameRes.Formats.Properties; 6 | using GameRes.Formats.Strings; 7 | 8 | namespace GameRes.Formats.GUI 9 | { 10 | /// 11 | /// Interaction logic for WidgetMSD.xaml 12 | /// 13 | public partial class WidgetMSD : StackPanel 14 | { 15 | public WidgetMSD () 16 | { 17 | InitializeComponent (); 18 | var first = new Dictionary { { arcStrings.ArcNoEncryption, "" } }; 19 | Title.ItemsSource = first.Concat (FjsysOpener.KnownPasswords.OrderBy (x => x.Key)); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /GameRes/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | True 7 | 8 | 9 | True 10 | 11 | 12 | 100 13 | 14 | 15 | -------------------------------------------------------------------------------- /ArcFormats/Eagls/WidgetEAGLS.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | using System.Linq; 3 | using GameRes.Formats.Eagls; 4 | using GameRes.Formats.Strings; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetEAGLS.xaml 10 | /// 11 | public partial class WidgetEAGLS : StackPanel 12 | { 13 | public WidgetEAGLS () 14 | { 15 | InitializeComponent (); 16 | var schemes = new string[] { arcStrings.ArcIgnoreEncryption }; 17 | Scheme.ItemsSource = schemes.Concat (PakOpener.KnownSchemes.Keys); 18 | if (-1 == Scheme.SelectedIndex) 19 | Scheme.SelectedValue = PakOpener.KnownSchemes.First().Key; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ArcFormats/NSystem/WidgetMSD.xaml: -------------------------------------------------------------------------------- 1 | 5 | 9 | 11 | 12 | -------------------------------------------------------------------------------- /ArcFormats/Entis/WidgetNOA.xaml.cs: -------------------------------------------------------------------------------- 1 | using GameRes.Formats.Entis; 2 | using GameRes.Formats.Strings; 3 | using System.Linq; 4 | using System.Windows.Controls; 5 | 6 | namespace GameRes.Formats.GUI 7 | { 8 | /// 9 | /// Interaction logic for WidgetNOA.xaml 10 | /// 11 | public partial class WidgetNOA : Grid 12 | { 13 | public WidgetNOA () 14 | { 15 | InitializeComponent (); 16 | var keys = new string[] { arcStrings.ArcIgnoreEncryption }; 17 | Scheme.ItemsSource = keys.Concat (NoaOpener.KnownKeys.Keys.OrderBy (x => x)); 18 | // select first scheme as default 19 | if (-1 == Scheme.SelectedIndex) 20 | Scheme.SelectedIndex = 0; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /ArcFormats/Marble/WidgetMBL.xaml.cs: -------------------------------------------------------------------------------- 1 | using GameRes.Formats.Marble; 2 | using GameRes.Formats.Strings; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Windows.Controls; 6 | 7 | namespace GameRes.Formats.GUI 8 | { 9 | /// 10 | /// Interaction logic for WidgetMBL.xaml 11 | /// 12 | public partial class WidgetMBL : Grid 13 | { 14 | public WidgetMBL () 15 | { 16 | InitializeComponent (); 17 | var keys = new[] { new KeyValuePair (arcStrings.ArcDefault, "") }; 18 | EncScheme.ItemsSource = keys.Concat (MblOpener.KnownKeys); 19 | if (-1 == EncScheme.SelectedIndex) 20 | EncScheme.SelectedIndex = 0; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /ArcFormats/AnimeGameSystem/WidgetAGS.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using System.Windows.Controls; 4 | using GameRes.Formats.Ags; 5 | using GameRes.Formats.Strings; 6 | 7 | namespace GameRes.Formats.GUI 8 | { 9 | /// 10 | /// Interaction logic for WidgetAGS.xaml 11 | /// 12 | public partial class WidgetAGS : StackPanel 13 | { 14 | public WidgetAGS (IEnumerable known_titles) 15 | { 16 | InitializeComponent(); 17 | var keys = new string[] { arcStrings.ArcNoEncryption }; 18 | Scheme.ItemsSource = keys.Concat (known_titles.OrderBy (x => x)); 19 | if (-1 == Scheme.SelectedIndex) 20 | Scheme.SelectedIndex = 0; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /ArcFormats/NitroPlus/CreateNPAWidget.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | using GameRes.Formats.NitroPlus; 3 | 4 | namespace GameRes.Formats.GUI 5 | { 6 | /// 7 | /// Interaction logic for CreateNPAWidget.xaml 8 | /// 9 | public partial class CreateNPAWidget : Grid 10 | { 11 | public CreateNPAWidget () 12 | { 13 | InitializeComponent (); 14 | } 15 | 16 | private void Reset_Click (object sender, System.Windows.RoutedEventArgs e) 17 | { 18 | this.EncryptionWidget.Scheme.SelectedIndex = 0; 19 | this.Key1Box.Text = NpaOpener.DefaultKey1.ToString ("X8"); 20 | this.Key2Box.Text = NpaOpener.DefaultKey2.ToString ("X8"); 21 | this.CompressContents.IsChecked = false; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /ArcFormats/YuRis/WidgetYPF.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using System.Windows; 4 | using System.Windows.Controls; 5 | using GameRes.Formats.Properties; 6 | using GameRes.Formats.Strings; 7 | using GameRes.Formats.YuRis; 8 | 9 | namespace GameRes.Formats.GUI 10 | { 11 | /// 12 | /// Interaction logic for WidgetYPF.xaml 13 | /// 14 | public partial class WidgetYPF : Grid 15 | { 16 | public WidgetYPF () 17 | { 18 | InitializeComponent(); 19 | var guess = new Dictionary { { arcStrings.YPFTryGuess, null } }; 20 | Scheme.ItemsSource = guess.Concat (YpfOpener.KnownSchemes.OrderBy (x => x.Key)); 21 | if (-1 == Scheme.SelectedIndex) 22 | Scheme.SelectedIndex = 0; 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /GUI/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | https://github.com/morkt/GARbro#readme 9 | https://github.com/morkt/GARbro/issues 10 | https://morkt.github.io/GARbro/version.xml 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ArcFormats/NonColor/WidgetNCARC.xaml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /ArcFormats/Will/CreateARCWidget.xaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 17 | -------------------------------------------------------------------------------- /ArcFormats/NitroPlus/WidgetNPA.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | using System.Linq; 3 | using GameRes.Formats.Properties; 4 | using GameRes.Formats.NitroPlus; 5 | using GameRes.Formats.Strings; 6 | 7 | namespace GameRes.Formats.GUI 8 | { 9 | /// 10 | /// Interaction logic for WidgetNPA.xaml 11 | /// 12 | public partial class WidgetNPA : Grid 13 | { 14 | public WidgetNPA () 15 | { 16 | var selected = Settings.Default.NPAScheme; 17 | InitializeComponent(); 18 | var keys = new string[] { arcStrings.ArcNoEncryption }; 19 | Scheme.ItemsSource = keys.Concat (NpaOpener.KnownSchemes.Keys.OrderBy (x => x)); 20 | if (NpaTitleId.NotEncrypted == NpaOpener.GetTitleId (selected)) 21 | Scheme.SelectedIndex = 0; 22 | else 23 | Scheme.SelectedValue = selected; 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /ArcFormats/LiveMaker/WidgetGAL.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Globalization; 4 | using System.Linq; 5 | using System.Windows.Controls; 6 | using System.Windows.Data; 7 | using GameRes.Formats.LiveMaker; 8 | using GameRes.Formats.Properties; 9 | using GameRes.Formats.Strings; 10 | 11 | namespace GameRes.Formats.GUI 12 | { 13 | /// 14 | /// Interaction logic for WidgetGAL.xaml 15 | /// 16 | public partial class WidgetGAL : StackPanel 17 | { 18 | public WidgetGAL (IDictionary known_keys) 19 | { 20 | InitializeComponent(); 21 | var first_item = new KeyValuePair (arcStrings.ArcIgnoreEncryption, ""); 22 | var items = new KeyValuePair[] { first_item }; 23 | this.Title.ItemsSource = items.Concat (known_keys.OrderBy (x => x.Key)); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /ArcFormats/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Experimental/Artemis/IPT.Scanner.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace GameRes.Formats.Artemis 6 | { 7 | internal partial class IPTScanner 8 | { 9 | void GetNumber() 10 | { 11 | yylval.n = int.Parse (yytext); 12 | yylval.s = null; 13 | } 14 | 15 | void GetStringLiteral () 16 | { 17 | yylval.s = yytext.Substring (1, yytext.Length-2); 18 | } 19 | 20 | public override void yyerror (string format, params object[] args) 21 | { 22 | base.yyerror (format, args); 23 | if (args.Length > 0) 24 | throw new YYParseException (string.Format (format, args)); 25 | else 26 | throw new YYParseException (format); 27 | } 28 | } 29 | 30 | public class YYParseException : Exception 31 | { 32 | public YYParseException (string message) : base (message) 33 | { 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /ArcFormats/ScrPlayer/IControlTable32: -------------------------------------------------------------------------------- 1 |               2 |                 3 |                4 |                 5 |   -------------------------------------------------------------------------------- /Experimental/Artemis/IPT.Language.grammar.y: -------------------------------------------------------------------------------- 1 | %namespace GameRes.Formats.Artemis 2 | %partial 3 | %parsertype IPTParser 4 | %visibility internal 5 | %tokentype Token 6 | 7 | %union { 8 | public int n; 9 | public string s; 10 | public IPTObject o; 11 | } 12 | 13 | %start input 14 | 15 | %token NUMBER STRING_LITERAL IDENTIFIER 16 | 17 | %% 18 | 19 | input: root_definition ; 20 | 21 | root_definition: IDENTIFIER '=' object { RootObject[$1.s] = $3.o; } 22 | ; 23 | 24 | object: '{' { BeginObject(); } 25 | decl_list optional_comma 26 | '}' { EndObject(); } 27 | ; 28 | 29 | decl_list: statement 30 | | decl_list ',' statement 31 | ; 32 | 33 | optional_comma: ',' | /* empty */ ; 34 | 35 | statement: definition | lvalue ; 36 | 37 | definition: IDENTIFIER '=' value { CurrentObject[$1.s] = $3.Value; } 38 | ; 39 | 40 | lvalue: value { CurrentObject.Values.Add ($1.Value); } 41 | ; 42 | 43 | value: object | string | number ; 44 | 45 | string: STRING_LITERAL ; 46 | 47 | number: NUMBER ; 48 | 49 | %% -------------------------------------------------------------------------------- /ArcFormats/NScripter/WidgetNSA.xaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | 18 | -------------------------------------------------------------------------------- /ArcFormats/Unity/strings.dat: -------------------------------------------------------------------------------- 1 | AABBAnimationClipAnimationCurveAnimationStateArrayBaseBitFieldbitsetboolcharColorRGBAComponentdatadequedoubledynamic_arrayFastPropertyNamefirstfloatFontGameObjectGeneric MonoGradientNEWGUIDGUIStyleintlistlong longmapMatrix4x4fMdFourMonoBehaviourMonoScriptm_ByteSizem_Curvem_EditorClassIdentifierm_EditorHideFlagsm_Enabledm_ExtensionPtrm_GameObjectm_Indexm_IsArraym_IsStaticm_MetaFlagm_Namem_ObjectHideFlagsm_PrefabInternalm_PrefabParentObjectm_Scriptm_StaticEditorFlagsm_Typem_VersionObjectpairPPtrPPtrPPtrPPtrPPtrPPtrPPtrPPtrPPtrPPtrPPtrPPtrPrefabQuaternionfRectfRectIntRectOffsetsecondsetshortsizeSInt16SInt32SInt64SInt8staticvectorstringTextAssetTextMeshTextureTexture2DTransformTypelessDataUInt16UInt32UInt64UInt8unsigned intunsigned long longunsigned shortvectorVector2fVector3fVector4fm_ScriptingClassIdentifierGradient -------------------------------------------------------------------------------- /ArcFormats/KiriKiri/WidgetXP3.xaml: -------------------------------------------------------------------------------- 1 | 8 | 9 | 10 | 11 | 14 | 16 | 17 | -------------------------------------------------------------------------------- /ArcFormats/PkWare/WidgetZIP.xaml: -------------------------------------------------------------------------------- 1 | 8 | 16 | -------------------------------------------------------------------------------- /GUI/EnterMaskDialog.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Windows; 3 | using System.Windows.Controls; 4 | using System.Windows.Input; 5 | 6 | namespace GARbro.GUI 7 | { 8 | /// 9 | /// Interaction logic for EnterMaskDialog.xaml 10 | /// 11 | public partial class EnterMaskDialog : Window 12 | { 13 | public EnterMaskDialog (IEnumerable mask_list) 14 | { 15 | InitializeComponent (); 16 | Mask.ItemsSource = mask_list; 17 | Mask.Text = "*.*"; 18 | } 19 | 20 | private void Button_Click (object sender, RoutedEventArgs e) 21 | { 22 | this.DialogResult = true; 23 | } 24 | 25 | private void Mask_Loaded (object sender, RoutedEventArgs e) 26 | { 27 | var text_box = (TextBox)Mask.Template.FindName ("PART_EditableTextBox", Mask); 28 | FocusManager.SetFocusedElement (this, text_box); 29 | text_box.SelectionStart = 2; 30 | text_box.SelectionLength = 1; 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /ArcFormats/NitroPlus/CreateSGWidget.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 16 | 17 | -------------------------------------------------------------------------------- /ArcFormats/Marble/WidgetMBL.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 15 | 17 | 18 | -------------------------------------------------------------------------------- /GameRes/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 11 | True 12 | 13 | 14 | True 15 | 16 | 17 | 100 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014-2020 morkt 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /ArcFormats/Majiro/WidgetRCT.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 12 | 19 | -------------------------------------------------------------------------------- /ArcFormats/ShiinaRio/WidgetWARC.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 11 | 16 | 19 | 20 | -------------------------------------------------------------------------------- /ArcFormats/Selene/WidgetKCAP.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using System.Windows; 3 | using System.Windows.Controls; 4 | using GameRes.Formats.Properties; 5 | using GameRes.Formats.Selene; 6 | using GameRes.Formats.Strings; 7 | 8 | namespace GameRes.Formats.GUI 9 | { 10 | /// 11 | /// Interaction logic for WidgetKCAP.xaml 12 | /// 13 | public partial class WidgetKCAP : Grid 14 | { 15 | public WidgetKCAP () 16 | { 17 | InitializeComponent (); 18 | var keys = new[] { arcStrings.ArcDefault }; 19 | EncScheme.ItemsSource = keys.Concat (PackOpener.KnownSchemes.Keys); 20 | if (-1 == EncScheme.SelectedIndex) 21 | EncScheme.SelectedIndex = 0; 22 | EncScheme.SelectionChanged += OnSchemeChanged; 23 | } 24 | 25 | void OnSchemeChanged (object sender, SelectionChangedEventArgs e) 26 | { 27 | var widget = sender as ComboBox; 28 | var pass = PackOpener.GetPassPhrase (widget.SelectedItem as string); 29 | Passphrase.Text = pass; 30 | Settings.Default.KCAPPassPhrase = pass; 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /ArcFormats/LiveMaker/WidgetGAL.xaml: -------------------------------------------------------------------------------- 1 | 8 | 11 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /ArcFormats/Majiro/WidgetRCT.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Windows.Controls; 3 | using GameRes.Formats.Properties; 4 | 5 | namespace GameRes.Formats.GUI 6 | { 7 | /// 8 | /// Interaction logic for WidgetRCT.xaml 9 | /// 10 | public partial class WidgetRCT : Grid 11 | { 12 | public WidgetRCT () 13 | { 14 | InitializeComponent (); 15 | this.Password.Text = Settings.Default.RCTPassword; 16 | if (null != this.Title.SelectedItem) 17 | { 18 | var selected = (KeyValuePair)this.Title.SelectedItem; 19 | if (Settings.Default.RCTPassword != selected.Value) 20 | this.Title.SelectedIndex = -1; 21 | } 22 | } 23 | 24 | private void Title_SelectionChanged (object sender, SelectionChangedEventArgs e) 25 | { 26 | if (null != this.Title.SelectedItem && null != this.Password) 27 | { 28 | var selected = (KeyValuePair)this.Title.SelectedItem; 29 | this.Password.Text = selected.Value; 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /GUI/EnterMaskDialog.xaml: -------------------------------------------------------------------------------- 1 | 9 | 10 | 11 | 12 | 13 |