Add project files.
63
.gitattributes
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
###############################################################################
|
||||
# Set default behavior to automatically normalize line endings.
|
||||
###############################################################################
|
||||
* text=auto
|
||||
|
||||
###############################################################################
|
||||
# Set default behavior for command prompt diff.
|
||||
#
|
||||
# This is need for earlier builds of msysgit that does not have it on by
|
||||
# default for csharp files.
|
||||
# Note: This is only used by command line
|
||||
###############################################################################
|
||||
#*.cs diff=csharp
|
||||
|
||||
###############################################################################
|
||||
# Set the merge driver for project and solution files
|
||||
#
|
||||
# Merging from the command prompt will add diff markers to the files if there
|
||||
# are conflicts (Merging from VS is not affected by the settings below, in VS
|
||||
# the diff markers are never inserted). Diff markers may cause the following
|
||||
# file extensions to fail to load in VS. An alternative would be to treat
|
||||
# these files as binary and thus will always conflict and require user
|
||||
# intervention with every merge. To do so, just uncomment the entries below
|
||||
###############################################################################
|
||||
#*.sln merge=binary
|
||||
#*.csproj merge=binary
|
||||
#*.vbproj merge=binary
|
||||
#*.vcxproj merge=binary
|
||||
#*.vcproj merge=binary
|
||||
#*.dbproj merge=binary
|
||||
#*.fsproj merge=binary
|
||||
#*.lsproj merge=binary
|
||||
#*.wixproj merge=binary
|
||||
#*.modelproj merge=binary
|
||||
#*.sqlproj merge=binary
|
||||
#*.wwaproj merge=binary
|
||||
|
||||
###############################################################################
|
||||
# behavior for image files
|
||||
#
|
||||
# image files are treated as binary by default.
|
||||
###############################################################################
|
||||
#*.jpg binary
|
||||
#*.png binary
|
||||
#*.gif binary
|
||||
|
||||
###############################################################################
|
||||
# diff behavior for common document formats
|
||||
#
|
||||
# Convert binary document formats to text before diffing them. This feature
|
||||
# is only available from the command line. Turn it on by uncommenting the
|
||||
# entries below.
|
||||
###############################################################################
|
||||
#*.doc diff=astextplain
|
||||
#*.DOC diff=astextplain
|
||||
#*.docx diff=astextplain
|
||||
#*.DOCX diff=astextplain
|
||||
#*.dot diff=astextplain
|
||||
#*.DOT diff=astextplain
|
||||
#*.pdf diff=astextplain
|
||||
#*.PDF diff=astextplain
|
||||
#*.rtf diff=astextplain
|
||||
#*.RTF diff=astextplain
|
||||
369
.gitignore
vendored
Normal file
@@ -0,0 +1,369 @@
|
||||
## Ignore Visual Studio temporary files, build results, and
|
||||
## files generated by popular Visual Studio add-ons.
|
||||
##
|
||||
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
|
||||
|
||||
# User-specific files
|
||||
*.rsuser
|
||||
*.suo
|
||||
*.user
|
||||
*.userosscache
|
||||
*.sln.docstates
|
||||
|
||||
# User-specific files (MonoDevelop/Xamarin Studio)
|
||||
*.userprefs
|
||||
|
||||
# Mono auto generated files
|
||||
mono_crash.*
|
||||
|
||||
# Build results
|
||||
[Dd]ebug/
|
||||
[Dd]ebugPublic/
|
||||
[Rr]elease/
|
||||
[Rr]eleases/
|
||||
x64/
|
||||
x86/
|
||||
[Ww][Ii][Nn]32/
|
||||
[Aa][Rr][Mm]/
|
||||
[Aa][Rr][Mm]64/
|
||||
bld/
|
||||
[Bb]in/
|
||||
[Oo]bj/
|
||||
[Oo]ut/
|
||||
[Ll]og/
|
||||
[Ll]ogs/
|
||||
|
||||
# Visual Studio 2015/2017 cache/options directory
|
||||
.vs/
|
||||
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||
#wwwroot/
|
||||
|
||||
# Visual Studio 2017 auto generated files
|
||||
Generated\ Files/
|
||||
|
||||
# MSTest test Results
|
||||
[Tt]est[Rr]esult*/
|
||||
[Bb]uild[Ll]og.*
|
||||
|
||||
# NUnit
|
||||
*.VisualState.xml
|
||||
TestResult.xml
|
||||
nunit-*.xml
|
||||
|
||||
# Build Results of an ATL Project
|
||||
[Dd]ebugPS/
|
||||
[Rr]eleasePS/
|
||||
dlldata.c
|
||||
|
||||
# Benchmark Results
|
||||
BenchmarkDotNet.Artifacts/
|
||||
|
||||
# .NET Core
|
||||
project.lock.json
|
||||
project.fragment.lock.json
|
||||
artifacts/
|
||||
|
||||
# ASP.NET Scaffolding
|
||||
ScaffoldingReadMe.txt
|
||||
|
||||
# StyleCop
|
||||
StyleCopReport.xml
|
||||
|
||||
# Files built by Visual Studio
|
||||
*_i.c
|
||||
*_p.c
|
||||
*_h.h
|
||||
*.ilk
|
||||
*.meta
|
||||
*.obj
|
||||
*.iobj
|
||||
*.pch
|
||||
*.pdb
|
||||
*.ipdb
|
||||
*.pgc
|
||||
*.pgd
|
||||
*.rsp
|
||||
*.sbr
|
||||
*.tlb
|
||||
*.tli
|
||||
*.tlh
|
||||
*.tmp
|
||||
*.tmp_proj
|
||||
*_wpftmp.csproj
|
||||
*.log
|
||||
*.vspscc
|
||||
*.vssscc
|
||||
.builds
|
||||
*.pidb
|
||||
*.svclog
|
||||
*.scc
|
||||
|
||||
# Chutzpah Test files
|
||||
_Chutzpah*
|
||||
|
||||
# Visual C++ cache files
|
||||
ipch/
|
||||
*.aps
|
||||
*.ncb
|
||||
*.opendb
|
||||
*.opensdf
|
||||
*.sdf
|
||||
*.cachefile
|
||||
*.VC.db
|
||||
*.VC.VC.opendb
|
||||
|
||||
# Visual Studio profiler
|
||||
*.psess
|
||||
*.vsp
|
||||
*.vspx
|
||||
*.sap
|
||||
|
||||
# Visual Studio Trace Files
|
||||
*.e2e
|
||||
|
||||
# TFS 2012 Local Workspace
|
||||
$tf/
|
||||
|
||||
# Guidance Automation Toolkit
|
||||
*.gpState
|
||||
|
||||
# ReSharper is a .NET coding add-in
|
||||
_ReSharper*/
|
||||
*.[Rr]e[Ss]harper
|
||||
*.DotSettings.user
|
||||
|
||||
# TeamCity is a build add-in
|
||||
_TeamCity*
|
||||
|
||||
# DotCover is a Code Coverage Tool
|
||||
*.dotCover
|
||||
|
||||
# AxoCover is a Code Coverage Tool
|
||||
.axoCover/*
|
||||
!.axoCover/settings.json
|
||||
|
||||
# Coverlet is a free, cross platform Code Coverage Tool
|
||||
coverage*.json
|
||||
coverage*.xml
|
||||
coverage*.info
|
||||
|
||||
# Visual Studio code coverage results
|
||||
*.coverage
|
||||
*.coveragexml
|
||||
|
||||
# NCrunch
|
||||
_NCrunch_*
|
||||
.*crunch*.local.xml
|
||||
nCrunchTemp_*
|
||||
|
||||
# MightyMoose
|
||||
*.mm.*
|
||||
AutoTest.Net/
|
||||
|
||||
# Web workbench (sass)
|
||||
.sass-cache/
|
||||
|
||||
# Installshield output folder
|
||||
[Ee]xpress/
|
||||
|
||||
# DocProject is a documentation generator add-in
|
||||
DocProject/buildhelp/
|
||||
DocProject/Help/*.HxT
|
||||
DocProject/Help/*.HxC
|
||||
DocProject/Help/*.hhc
|
||||
DocProject/Help/*.hhk
|
||||
DocProject/Help/*.hhp
|
||||
DocProject/Help/Html2
|
||||
DocProject/Help/html
|
||||
|
||||
# Click-Once directory
|
||||
publish/
|
||||
|
||||
# Publish Web Output
|
||||
*.[Pp]ublish.xml
|
||||
*.azurePubxml
|
||||
# Note: Comment the next line if you want to checkin your web deploy settings,
|
||||
# but database connection strings (with potential passwords) will be unencrypted
|
||||
*.pubxml
|
||||
*.publishproj
|
||||
|
||||
# Microsoft Azure Web App publish settings. Comment the next line if you want to
|
||||
# checkin your Azure Web App publish settings, but sensitive information contained
|
||||
# in these scripts will be unencrypted
|
||||
PublishScripts/
|
||||
|
||||
# NuGet Packages
|
||||
*.nupkg
|
||||
# NuGet Symbol Packages
|
||||
*.snupkg
|
||||
# The packages folder can be ignored because of Package Restore
|
||||
**/[Pp]ackages/*
|
||||
# except build/, which is used as an MSBuild target.
|
||||
!**/[Pp]ackages/build/
|
||||
# Uncomment if necessary however generally it will be regenerated when needed
|
||||
#!**/[Pp]ackages/repositories.config
|
||||
# NuGet v3's project.json files produces more ignorable files
|
||||
*.nuget.props
|
||||
*.nuget.targets
|
||||
|
||||
# Microsoft Azure Build Output
|
||||
csx/
|
||||
*.build.csdef
|
||||
|
||||
# Microsoft Azure Emulator
|
||||
ecf/
|
||||
rcf/
|
||||
|
||||
# Windows Store app package directories and files
|
||||
AppPackages/
|
||||
BundleArtifacts/
|
||||
Package.StoreAssociation.xml
|
||||
_pkginfo.txt
|
||||
*.appx
|
||||
*.appxbundle
|
||||
*.appxupload
|
||||
|
||||
# Visual Studio cache files
|
||||
# files ending in .cache can be ignored
|
||||
*.[Cc]ache
|
||||
# but keep track of directories ending in .cache
|
||||
!?*.[Cc]ache/
|
||||
|
||||
# Others
|
||||
ClientBin/
|
||||
~$*
|
||||
*~
|
||||
*.dbmdl
|
||||
*.dbproj.schemaview
|
||||
*.jfm
|
||||
*.pfx
|
||||
*.publishsettings
|
||||
orleans.codegen.cs
|
||||
|
||||
# Including strong name files can present a security risk
|
||||
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
|
||||
#*.snk
|
||||
|
||||
# Since there are multiple workflows, uncomment next line to ignore bower_components
|
||||
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
|
||||
#bower_components/
|
||||
|
||||
# RIA/Silverlight projects
|
||||
Generated_Code/
|
||||
|
||||
# Backup & report files from converting an old project file
|
||||
# to a newer Visual Studio version. Backup files are not needed,
|
||||
# because we have git ;-)
|
||||
_UpgradeReport_Files/
|
||||
Backup*/
|
||||
UpgradeLog*.XML
|
||||
UpgradeLog*.htm
|
||||
ServiceFabricBackup/
|
||||
*.rptproj.bak
|
||||
|
||||
# SQL Server files
|
||||
*.mdf
|
||||
*.ldf
|
||||
*.ndf
|
||||
|
||||
# Business Intelligence projects
|
||||
*.rdl.data
|
||||
*.bim.layout
|
||||
*.bim_*.settings
|
||||
*.rptproj.rsuser
|
||||
*- [Bb]ackup.rdl
|
||||
*- [Bb]ackup ([0-9]).rdl
|
||||
*- [Bb]ackup ([0-9][0-9]).rdl
|
||||
|
||||
# Microsoft Fakes
|
||||
FakesAssemblies/
|
||||
|
||||
# GhostDoc plugin setting file
|
||||
*.GhostDoc.xml
|
||||
|
||||
# Node.js Tools for Visual Studio
|
||||
.ntvs_analysis.dat
|
||||
node_modules/
|
||||
|
||||
# Visual Studio 6 build log
|
||||
*.plg
|
||||
|
||||
# Visual Studio 6 workspace options file
|
||||
*.opt
|
||||
|
||||
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
|
||||
*.vbw
|
||||
|
||||
# Visual Studio LightSwitch build output
|
||||
**/*.HTMLClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/ModelManifest.xml
|
||||
**/*.Server/GeneratedArtifacts
|
||||
**/*.Server/ModelManifest.xml
|
||||
_Pvt_Extensions
|
||||
|
||||
# Paket dependency manager
|
||||
.paket/paket.exe
|
||||
paket-files/
|
||||
|
||||
# FAKE - F# Make
|
||||
.fake/
|
||||
|
||||
# CodeRush personal settings
|
||||
.cr/personal
|
||||
|
||||
# Python Tools for Visual Studio (PTVS)
|
||||
__pycache__/
|
||||
*.pyc
|
||||
|
||||
# Cake - Uncomment if you are using it
|
||||
# tools/**
|
||||
# !tools/packages.config
|
||||
|
||||
# Tabs Studio
|
||||
*.tss
|
||||
|
||||
# Telerik's JustMock configuration file
|
||||
*.jmconfig
|
||||
|
||||
# BizTalk build output
|
||||
*.btp.cs
|
||||
*.btm.cs
|
||||
*.odx.cs
|
||||
*.xsd.cs
|
||||
|
||||
# OpenCover UI analysis results
|
||||
OpenCover/
|
||||
|
||||
# Azure Stream Analytics local run output
|
||||
ASALocalRun/
|
||||
|
||||
# MSBuild Binary and Structured Log
|
||||
*.binlog
|
||||
|
||||
# NVidia Nsight GPU debugger configuration file
|
||||
*.nvuser
|
||||
|
||||
# MFractors (Xamarin productivity tool) working folder
|
||||
.mfractor/
|
||||
|
||||
# Local History for Visual Studio
|
||||
.localhistory/
|
||||
|
||||
# BeatPulse healthcheck temp database
|
||||
healthchecksdb
|
||||
|
||||
# Backup folder for Package Reference Convert tool in Visual Studio 2017
|
||||
MigrationBackup/
|
||||
|
||||
# Ionide (cross platform F# VS Code tools) working folder
|
||||
.ionide/
|
||||
|
||||
# Fody - auto-generated XML schema
|
||||
FodyWeavers.xsd
|
||||
|
||||
# Extra misc solution files
|
||||
misc/
|
||||
|
||||
# Libraries
|
||||
*.dll
|
||||
@@ -0,0 +1,95 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{F0DD14E6-BDD1-408B-B826-D45DFDD2F4AB}</ProjectGuid>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<ReleaseName>AutomatedRedump2IRD</ReleaseName>
|
||||
<ReleaseVersion>0.0.8</ReleaseVersion>
|
||||
<PortableName>AutomatedRedump2IRD-Portable</PortableName>
|
||||
<AltName>AutomatedRedump2IRD-Alt</AltName>
|
||||
<SourceName>AutomatedRedump2IRD-Source</SourceName>
|
||||
<PortableDir>$(OutputPath)Portable\</PortableDir>
|
||||
<AltDir>$(OutputPath)Alt\</AltDir>
|
||||
<SourceDir>$(OutputPath)Source\</SourceDir>
|
||||
<ReleasesDir>$(OutputPath)Releases\</ReleasesDir>
|
||||
</PropertyGroup>
|
||||
<Target Name="Build">
|
||||
<CallTarget Targets="Clean" />
|
||||
<CallTarget Targets="CreatePortableFiles" />
|
||||
<CallTarget Targets="CreateSourceFiles" />
|
||||
<CallTarget Targets="CreateReleasesFiles" />
|
||||
</Target>
|
||||
<Target Name="Clean">
|
||||
<RemoveDir Directories="$(PortableDir)" />
|
||||
<MakeDir Directories="$(PortableDir)" />
|
||||
<RemoveDir Directories="$(AltDir)" />
|
||||
<MakeDir Directories="$(AltDir)" />
|
||||
<RemoveDir Directories="$(SourceDir)" />
|
||||
<MakeDir Directories="$(SourceDir)" />
|
||||
<RemoveDir Directories="$(ReleasesDir)" />
|
||||
<MakeDir Directories="$(ReleasesDir)" />
|
||||
</Target>
|
||||
<Target Name="CreatePortableFiles">
|
||||
<ItemGroup>
|
||||
<MySourceBINs Condition="$(Configuration) == 'Debug'" Include="$(SolutionDir)$(ReleaseName)\bin\$(Configuration)\**\*.*;" />
|
||||
<MySourceBINs Condition="$(Configuration) == 'Release'" Include="$(SolutionDir)$(ReleaseName)\bin\$(Configuration)\**\*.exe;$(SolutionDir)$(ReleaseName)\bin\$(Configuration)\System.Data.SQLite.dll;" />
|
||||
<MySourceLibsx64 Include="$(SolutionDir)$(ReleaseName)\bin\$(Configuration)\x64\**\*.dll;" />
|
||||
<MySourceLibsx86 Include="$(SolutionDir)$(ReleaseName)\bin\$(Configuration)\x86\**\*.dll;" />
|
||||
<MySourceLibsAlt Include="$(SolutionDir)$(ReleaseName)\bin\$(Configuration)\*.dll;" />
|
||||
<MySourceDB Include="$(SolutionDir)$(ReleaseName)\Resources\DB\**\*.*;" />
|
||||
<MySourceDocs Include="$(SolutionDir)$(ReleaseName)\Resources\Docs\**\*.*;" />
|
||||
<MySourceIRDs Include="$(SolutionDir)$(ReleaseName)\Resources\IRDs\**\*.*;" />
|
||||
<MySourceLogs Include="$(SolutionDir)$(ReleaseName)\Resources\Logs\**\*.*;" />
|
||||
<MySourceROMs Include="$(SolutionDir)$(ReleaseName)\Resources\ROMs\**\*.*;" />
|
||||
<MySourceTmp Include="$(SolutionDir)$(ReleaseName)\Resources\Tmp\**\*.*;" />
|
||||
</ItemGroup>
|
||||
<Copy SourceFiles="@(MySourceBINs)" DestinationFiles="@(MySourceBINs->'$(PortableDir)%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceLibsx64)" DestinationFiles="@(MySourceLibsx64->'$(PortableDir)x64\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceLibsx86)" DestinationFiles="@(MySourceLibsx86->'$(PortableDir)x86\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceDB)" DestinationFiles="@(MySourceDB->'$(PortableDir)DB\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceDocs)" DestinationFiles="@(MySourceDocs->'$(PortableDir)Docs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceIRDs)" DestinationFiles="@(MySourceIRDs->'$(PortableDir)IRDs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceLogs)" DestinationFiles="@(MySourceLogs->'$(PortableDir)Logs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceReports)" DestinationFiles="@(MySourceReports->'$(PortableDir)Reports\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceROMs)" DestinationFiles="@(MySourceROMs->'$(PortableDir)ROMs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceTmp)" DestinationFiles="@(MySourceTmp->'$(PortableDir)Tmp\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceBINs)" DestinationFiles="@(MySourceBINs->'$(AltDir)%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceLibsx64)" DestinationFiles="@(MySourceLibsx64->'$(AltDir)x64\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceLibsx86)" DestinationFiles="@(MySourceLibsx86->'$(AltDir)x86\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceLibsAlt)" DestinationFiles="@(MySourceLibsAlt->'$(AltDir)%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceDB)" DestinationFiles="@(MySourceDB->'$(AltDir)DB\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceDocs)" DestinationFiles="@(MySourceDocs->'$(AltDir)Docs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceIRDs)" DestinationFiles="@(MySourceIRDs->'$(AltDir)IRDs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceLogs)" DestinationFiles="@(MySourceLogs->'$(AltDir)Logs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceReports)" DestinationFiles="@(MySourceReports->'$(AltDir)Reports\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceROMs)" DestinationFiles="@(MySourceROMs->'$(AltDir)ROMs\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
<Copy SourceFiles="@(MySourceTmp)" DestinationFiles="@(MySourceTmp->'$(AltDir)Tmp\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
</Target>
|
||||
<Target Name="CreateSourceFiles">
|
||||
<ItemGroup>
|
||||
<MySourceSourceFiles Include="$(SolutionDir)**\*;" Exclude="$(SolutionDir)**\obj\**\*.*;$(SolutionDir)**\bin\**\*.*;$(SolutionDir)**\misc\**\*.*;$(SolutionDir)**\packages\**\*.*;$(SolutionDir)**\.git\**\*.*;$(SolutionDir)**\.vs\**\*.*;" />
|
||||
</ItemGroup>
|
||||
<Copy SourceFiles="@(MySourceSourceFiles)" DestinationFiles="@(MySourceSourceFiles->'$(SourceDir)\%(RecursiveDir)%(Filename)%(Extension)')" />
|
||||
</Target>
|
||||
<Target Name="CreateReleasesFiles">
|
||||
<Delete Files="$(ReleasesDir)$(PortableName).$(ReleaseVersion).zip" />
|
||||
<ZipDirectory SourceDirectory="$(PortableDir)" DestinationFile="$(ReleasesDir)$(PortableName).$(ReleaseVersion).zip" />
|
||||
<Delete Files="$(ReleasesDir)$(SourceName).$(ReleaseVersion).zip" />
|
||||
<ZipDirectory SourceDirectory="$(SourceDir)" DestinationFile="$(ReleasesDir)$(SourceName).$(ReleaseVersion).zip" />
|
||||
<Delete Files="$(ReleasesDir)$(AltName).$(ReleaseVersion).zip" />
|
||||
<ZipDirectory SourceDirectory="$(AltDir)" DestinationFile="$(ReleasesDir)$(AltName).$(ReleaseVersion).zip" />
|
||||
</Target>
|
||||
</Project>
|
||||
45
AutomatedRedump2IRD.sln
Normal file
@@ -0,0 +1,45 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.5.33627.172
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AutomatedRedump2IRD", "AutomatedRedump2IRD\AutomatedRedump2IRD.csproj", "{4535930B-6F1D-43C5-B661-3CB8A8332F07}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AutomatedRedump2IRD-Release", "AutomatedRedump2IRD-Release\AutomatedRedump2IRD-Release.csproj", "{F0DD14E6-BDD1-408B-B826-D45DFDD2F4AB}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{4535930B-6F1D-43C5-B661-3CB8A8332F07} = {4535930B-6F1D-43C5-B661-3CB8A8332F07}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{7703CBE6-6FAB-46BB-B637-ECF2326A6D2E}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
CHANGELOG.md = CHANGELOG.md
|
||||
CODE_OF_CONDUCT.md = CODE_OF_CONDUCT.md
|
||||
CONTRIBUTING.md = CONTRIBUTING.md
|
||||
LICENSE = LICENSE
|
||||
README.md = README.md
|
||||
TODO.md = TODO.md
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Description = The Original Automated IRD Builder
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{4535930B-6F1D-43C5-B661-3CB8A8332F07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4535930B-6F1D-43C5-B661-3CB8A8332F07}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4535930B-6F1D-43C5-B661-3CB8A8332F07}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{4535930B-6F1D-43C5-B661-3CB8A8332F07}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F0DD14E6-BDD1-408B-B826-D45DFDD2F4AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F0DD14E6-BDD1-408B-B826-D45DFDD2F4AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F0DD14E6-BDD1-408B-B826-D45DFDD2F4AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F0DD14E6-BDD1-408B-B826-D45DFDD2F4AB}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {CDE9A6F7-33F3-44CC-A41B-50EA62F8FDF4}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
29
AutomatedRedump2IRD/App.config
Normal file
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
|
||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||
</configSections>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
|
||||
</startup>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.6.8.0" newVersion="2.6.8.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.6.8.0" newVersion="2.6.8.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<entityFramework>
|
||||
<providers>
|
||||
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
|
||||
<provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6" />
|
||||
</providers>
|
||||
</entityFramework>
|
||||
|
||||
</configuration>
|
||||
BIN
AutomatedRedump2IRD/App.ico
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
158
AutomatedRedump2IRD/AutomatedRedump2IRD.csproj
Normal file
@@ -0,0 +1,158 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{4535930B-6F1D-43C5-B661-3CB8A8332F07}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>AutomatedRedump2IRD</RootNamespace>
|
||||
<AssemblyName>AutomatedRedump2IRD</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<TargetFrameworkProfile />
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>bin\Debug\AutomatedRedump2IRD.xml</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>none</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>App.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="DiscUtils, Version=0.11.0.0, Culture=neutral, PublicKeyToken=d28ce54a2723c342, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>Resources\Libs\IsoTools.1.34.9\DiscUtils.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Ionic.Zip, Version=1.9.1.8, Culture=neutral, PublicKeyToken=edbe51ad942a3f5c, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>Resources\Libs\IsoTools.1.34.9\Ionic.Zip.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="IsoTools.Common, Version=1.34.5151.16661, Culture=neutral, PublicKeyToken=d28ce54a2723c342, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>Resources\Libs\IsoTools.1.34.9\IsoTools.Common.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CompilerServices.AsyncTargetingPack.Net4, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>Resources\Libs\IsoTools.1.34.9\Microsoft.CompilerServices.AsyncTargetingPack.Net4.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.118.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.118.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Net" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions">
|
||||
<EmbedInteropTypes>False</EmbedInteropTypes>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data">
|
||||
<EmbedInteropTypes>False</EmbedInteropTypes>
|
||||
</Reference>
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="FrmAutomatedRedump2IRD.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FrmAutomatedRedump2IRD.Designer.cs">
|
||||
<DependentUpon>FrmAutomatedRedump2IRD.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DatabaseSQLite.cs" />
|
||||
<Compile Include="IsoTools\IrdCreateRedumpFile.cs" />
|
||||
<Compile Include="IsoTools\RedumpFileStream.cs" />
|
||||
<Compile Include="IsoTools\RedumpInteraction.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<EmbeddedResource Include="FrmAutomatedRedump2IRD.resx">
|
||||
<DependentUpon>FrmAutomatedRedump2IRD.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.ico" />
|
||||
<None Include="packages.config" />
|
||||
<None Include="Resources\DB\ps3.redump.sqlite.db" />
|
||||
<None Include="Resources\Docs\AutomatedRedump2IRD-LICENSE.txt" />
|
||||
<None Include="Resources\Docs\AutomatedRedump2IRD-HELP.txt" />
|
||||
<None Include="Resources\Icons\App.ico" />
|
||||
<None Include="Resources\Images\Cancel_16x16.png" />
|
||||
<None Include="Resources\Images\BuildIRDs_32x32.png" />
|
||||
<None Include="Resources\Images\Exit_32x32.png" />
|
||||
<None Include="Resources\Images\Help_32x32.png" />
|
||||
<None Include="Resources\Images\License_32x32.png" />
|
||||
<None Include="Resources\Images\Log_32x32.png" />
|
||||
<None Include="Resources\Images\Options_32x32.png" />
|
||||
<None Include="Resources\Images\SaveLog_32x32.png" />
|
||||
<None Include="Resources\Images\Toolbar_32x32.png" />
|
||||
<None Include="Resources\Libs\IsoTools.1.34.9\BouncyCastle.Crypto.dll" />
|
||||
<None Include="Resources\Libs\IsoTools.1.34.9\CommandLine.dll" />
|
||||
<None Include="Resources\Libs\IsoTools.1.34.9\DiscUtils.dll" />
|
||||
<None Include="Resources\Libs\IsoTools.1.34.9\Ionic.Zip.dll" />
|
||||
<None Include="Resources\Libs\IsoTools.1.34.9\IsoTools.Common.dll" />
|
||||
<None Include="Resources\Libs\IsoTools.1.34.9\Microsoft.CompilerServices.AsyncTargetingPack.Net4.dll" />
|
||||
<None Include="Resources\Libs\IsoTools.1.34.9\NUnrar.dll" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\DB\put your databases in this directory.txt" />
|
||||
<None Include="Resources\Reports\put your reports in this directory.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\IRDs\put your irds in this directory.txt" />
|
||||
<None Include="Resources\Logs\put your logs in this directory.txt" />
|
||||
<None Include="Resources\ROMs\put your roms in this directory.txt" />
|
||||
<None Include="Resources\Tmp\put your tmp files in this directory.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Images\DB_32x32.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>
|
||||
</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.118.0\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.118.0\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.118.0\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.118.0\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
</Project>
|
||||
231
AutomatedRedump2IRD/DatabaseSQLite.cs
Normal file
@@ -0,0 +1,231 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.SQLite;
|
||||
|
||||
namespace AutomatedRedump2IRD
|
||||
{
|
||||
/// <summary>
|
||||
/// Database SQLite class.
|
||||
/// </summary>
|
||||
class DatabaseSQLite
|
||||
{
|
||||
#region Constructors
|
||||
|
||||
/// <summary>
|
||||
/// Constructor
|
||||
/// </summary>
|
||||
public DatabaseSQLite()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Overloaded Constructor
|
||||
/// </summary>
|
||||
/// <param name="strPathDatabaseFile"></param>
|
||||
public DatabaseSQLite(string strPathDatabaseFile)
|
||||
{
|
||||
connectionString = @"Data Source=" + strPathDatabaseFile + "; Version=3";
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Fields
|
||||
|
||||
/// Connection string
|
||||
public string connectionString = @"Data Source=dbfile; Version=3";
|
||||
|
||||
string sqlSelectAllPS3IRDs = @"SELECT * FROM `ps3_irds`";
|
||||
string sqlSelectAllPS3ISOs = @"SELECT * FROM `ps3_isos`";
|
||||
|
||||
#endregion
|
||||
|
||||
#region Update Methods
|
||||
|
||||
/// <summary>
|
||||
/// Update the PS3 IRDs database.
|
||||
/// </summary>
|
||||
/// <param name="dt"></param>
|
||||
/// <returns></returns>
|
||||
public bool UpdatePS3IRDs(DataTable dt)
|
||||
{
|
||||
using (SQLiteConnection con = new SQLiteConnection(connectionString))
|
||||
{
|
||||
con.Open();
|
||||
|
||||
SQLiteCommand command = new SQLiteCommand();
|
||||
command.Connection = con;
|
||||
command.CommandText = sqlSelectAllPS3IRDs;
|
||||
|
||||
SQLiteDataAdapter daPS3IRDs = new SQLiteDataAdapter(command);
|
||||
|
||||
SQLiteCommandBuilder scbPS3IRDs = new SQLiteCommandBuilder(daPS3IRDs);
|
||||
|
||||
daPS3IRDs.Update(dt);
|
||||
|
||||
con.Close();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Update the PS3 ISOs database.
|
||||
/// </summary>
|
||||
/// <param name="dt"></param>
|
||||
/// <returns></returns>
|
||||
public bool UpdatePS3ISOs(DataTable dt)
|
||||
{
|
||||
using (SQLiteConnection con = new SQLiteConnection(connectionString))
|
||||
{
|
||||
con.Open();
|
||||
|
||||
SQLiteCommand command = new SQLiteCommand();
|
||||
command.Connection = con;
|
||||
command.CommandText = sqlSelectAllPS3ISOs;
|
||||
|
||||
SQLiteDataAdapter daPS3ISOs = new SQLiteDataAdapter(command);
|
||||
|
||||
SQLiteCommandBuilder scbPS3ISOs = new SQLiteCommandBuilder(daPS3ISOs);
|
||||
|
||||
daPS3ISOs.Update(dt);
|
||||
|
||||
con.Close();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Select Methods
|
||||
|
||||
/// <summary>
|
||||
/// Selects all PS3 IRDs and returns a DataTable.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public DataTable SelectAllPS3IRDsDataTable()
|
||||
{
|
||||
DataTable dt = new DataTable();
|
||||
dt.Locale = System.Globalization.CultureInfo.InvariantCulture;
|
||||
|
||||
using (SQLiteConnection con = new SQLiteConnection(connectionString))
|
||||
{
|
||||
con.Open();
|
||||
|
||||
SQLiteCommand command = new SQLiteCommand();
|
||||
command.Connection = con;
|
||||
command.CommandText = sqlSelectAllPS3IRDs;
|
||||
|
||||
SQLiteDataAdapter daPS3IRDs = new SQLiteDataAdapter(command);
|
||||
|
||||
SQLiteCommandBuilder scbPS3IRDs = new SQLiteCommandBuilder(daPS3IRDs);
|
||||
|
||||
daPS3IRDs.Fill(dt);
|
||||
|
||||
con.Close();
|
||||
}
|
||||
|
||||
return dt;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Selects all PS3 ISOs and returns a DataTable.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public DataTable SelectAllPS3ISOsDataTable()
|
||||
{
|
||||
DataTable dt = new DataTable();
|
||||
dt.Locale = System.Globalization.CultureInfo.InvariantCulture;
|
||||
|
||||
using (SQLiteConnection con = new SQLiteConnection(connectionString))
|
||||
{
|
||||
con.Open();
|
||||
|
||||
SQLiteCommand command = new SQLiteCommand();
|
||||
command.Connection = con;
|
||||
command.CommandText = sqlSelectAllPS3ISOs;
|
||||
|
||||
SQLiteDataAdapter daPS3ISOs = new SQLiteDataAdapter(command);
|
||||
|
||||
SQLiteCommandBuilder scbPS3ISOs = new SQLiteCommandBuilder(daPS3ISOs);
|
||||
|
||||
daPS3ISOs.Fill(dt);
|
||||
|
||||
con.Close();
|
||||
}
|
||||
|
||||
return dt;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Insert Methods
|
||||
|
||||
/// <summary>
|
||||
/// Inserts the PS3 ISO into the database.
|
||||
/// </summary>
|
||||
/// <param name="arrPS3ISOInfo"></param>
|
||||
/// <returns></returns>
|
||||
public bool InsertPS3ISO(string[] arrPS3ISOInfo)
|
||||
{
|
||||
using (SQLiteConnection con = new SQLiteConnection(connectionString))
|
||||
{
|
||||
con.Open();
|
||||
|
||||
SQLiteCommand cmd = new SQLiteCommand();
|
||||
cmd.Connection = con;
|
||||
|
||||
cmd.CommandText = @"INSERT INTO `ps3_isos` (disc_redump_id, disc_dkey, disc_did, disc_dpic, ps3_iso_filename, ps3_iso_size, ps3_iso_crc32, ps3_iso_md5, ps3_iso_sha1) VALUES (@disc_redump_id, @disc_dkey, @disc_did, @disc_dpic, @ps3_iso_filename, @ps3_iso_size, @ps3_iso_crc32, @ps3_iso_md5, @ps3_iso_sha1)";
|
||||
cmd.Parameters.AddWithValue("@disc_redump_id", arrPS3ISOInfo[0]);
|
||||
cmd.Parameters.AddWithValue("@disc_dkey", arrPS3ISOInfo[1]);
|
||||
cmd.Parameters.AddWithValue("@disc_did", arrPS3ISOInfo[2]);
|
||||
cmd.Parameters.AddWithValue("@disc_dpic", arrPS3ISOInfo[3]);
|
||||
cmd.Parameters.AddWithValue("@ps3_iso_filename", arrPS3ISOInfo[4]);
|
||||
cmd.Parameters.AddWithValue("@ps3_iso_size", arrPS3ISOInfo[5]);
|
||||
cmd.Parameters.AddWithValue("@ps3_iso_crc32", arrPS3ISOInfo[6]);
|
||||
cmd.Parameters.AddWithValue("@ps3_iso_md5", arrPS3ISOInfo[7]);
|
||||
cmd.Parameters.AddWithValue("@ps3_iso_sha1", arrPS3ISOInfo[8]);
|
||||
cmd.ExecuteNonQuery();
|
||||
|
||||
con.Close();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Inserts the PS3 IRD into the database.
|
||||
/// </summary>
|
||||
/// <param name="arrPS3IRDInfo"></param>
|
||||
/// <returns></returns>
|
||||
public int InsertPS3IRD(string[] arrPS3IRDInfo)
|
||||
{
|
||||
int intIRDID;
|
||||
|
||||
using (SQLiteConnection con = new SQLiteConnection(connectionString))
|
||||
{
|
||||
con.Open();
|
||||
|
||||
SQLiteCommand cmd = new SQLiteCommand();
|
||||
cmd.Connection = con;
|
||||
|
||||
cmd.CommandText = @"INSERT INTO `ps3_irds` (ps3_iso_md5, ps3_ird_filename, ps3_ird_size, ps3_ird_crc32, ps3_ird_md5, ps3_ird_sha1) VALUES (@ps3_iso_md5, @ps3_ird_filename, @ps3_ird_size, @ps3_ird_crc32, @ps3_ird_md5, @ps3_ird_sha1)";
|
||||
cmd.Parameters.AddWithValue("@ps3_iso_md5", arrPS3IRDInfo[0]);
|
||||
cmd.Parameters.AddWithValue("@ps3_ird_filename", arrPS3IRDInfo[1]);
|
||||
cmd.Parameters.AddWithValue("@ps3_ird_size", arrPS3IRDInfo[2]);
|
||||
cmd.Parameters.AddWithValue("@ps3_ird_crc32", arrPS3IRDInfo[3]);
|
||||
cmd.Parameters.AddWithValue("@ps3_ird_md5", arrPS3IRDInfo[4]);
|
||||
cmd.Parameters.AddWithValue("@ps3_ird_sha1", arrPS3IRDInfo[5]);
|
||||
cmd.ExecuteNonQuery();
|
||||
intIRDID = (Int32)con.LastInsertRowId;
|
||||
|
||||
con.Close();
|
||||
}
|
||||
|
||||
return intIRDID;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
1207
AutomatedRedump2IRD/FrmAutomatedRedump2IRD.Designer.cs
generated
Normal file
1377
AutomatedRedump2IRD/FrmAutomatedRedump2IRD.cs
Normal file
232
AutomatedRedump2IRD/FrmAutomatedRedump2IRD.resx
Normal file
@@ -0,0 +1,232 @@
|
||||
<?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>
|
||||
<metadata name="msMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="tsMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>112, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ssMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>200, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="tsbCancel.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAKhSURBVDhPlZJdSNNhFMZPQgRFF95kIIS1jCzSbroJu1OL
|
||||
LgoqpBtTQ52rTd3K6bKJfWh103dRlxUZkqZz6ubUmTOXEGlR1jS1ufyYfeg2m18ZT+f9/6dEdFEv/HgP
|
||||
55zneT9J7fSpNe1+X+5zP/L+EdGrcfqnNE6fgVLNI9PZljFobV5orGMSIv4bv9dVrEk1v12gg/f7kFkx
|
||||
iPRH/dCbh1DU8Alp5f3IfjwIZQgRi1xhnQeGeo8UC82hB32g3de7kXznDdTlvfAG5jERXIDqoQuJV7uw
|
||||
7/ZriaRr3Th6791SXVvxQdLsudENii91IvFiJ5JvdcHrn4MYw5NzOHDzJWKNDmwvbsfeKy8w8GVaqk0E
|
||||
fyDl7isksGZXmRMUa7Ajjtl4oglJlzrg+TYjNY5MznJTB3aecaB/PCjlxgNz2H+5EwqdTdLEGVpA63Ms
|
||||
EGzIsyAi24z4kla4v8qriblv7LsUi90llDmwhntEr6xrAEVkmSChlFmdVoVt+Y1wjU5JQjHcvP0dRU1Y
|
||||
lVq11CfrakDhGdUIz6hBeKbMiiOVUGgb0DMcCMmBgc9BbNVbsTylcqlP0rCWViprIaGqxbL0aigKbHB5
|
||||
5W27+T56Q+cXx9lyuhmU9kTqlXUmUNixOggo04R1p5rxPiQe4kvcZGxBpJ4NQyaDbBJdbAdlmBB2XOjM
|
||||
INLwRbBBlNGOgdALuFkcc7YNlFULUpqlmouPIYbHx7VzXFPxopp6NsizcmBBpLEVPd4gRvmpNp93yA1a
|
||||
rglU9YgqeYqPEzMYn5pHTGk7SM0L82sQ6ZpA/Aco14q1JW1QXHgmGdLJUF4gYs6JWjT/DcphU5HXNbJB
|
||||
fsssAypgFkUi1v+ByC0ailhoDjf/JCq066jQFiD+Wf+Fzh6kAnvxLyFRu/khQA4QAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="bgwBuildIRDs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>435, 17</value>
|
||||
</metadata>
|
||||
<metadata name="bgwStartupTasks.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>291, 17</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>47</value>
|
||||
</metadata>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAC2aQAAt2oASrhqAMO4agDruGoA7bhqAO24agDtuGoA7bhqAO24agDtuGoA7bhqAO24agDtuGoA7bhq
|
||||
AO24agDtuGoA7bhqAO24agDtuGoA7bhqAO24agDtuGoA7bhqAO24agDtuGoA7bhqAO24agDtuGoA6rhq
|
||||
AMK3agBIt2kAALZoAEa2aAD8tmgA/7ZoAP+2aAD/tmgA/7ZoAP+2aAD/tmgA/7ZoAP+2aAD/tmgA/7Zo
|
||||
AP+2aAD/tmgA/7ZoAP+2aAD/tmgA/7ZoAP+2aAD/tmgA/7ZoAP+2aAD/tmgA/7ZoAP+2aAD/tmgA/7Zo
|
||||
AP+2aAD/tmgA/7ZoAPu2aQBDtWcAxbRnAP+0ZgD/tGYA/7RnAP+0ZwD/tGcA/7RnAP+0ZwD/tGcA/7Rn
|
||||
AP+1ZwD/tGYA/7JiAP+wXgD/sF4A/7BeAP+zZAD/tWcA/7RnAP+0ZwD/tGcA/7RnAP+0ZwD/tGcA/7Rn
|
||||
AP+0ZwD/tGcA/7RnAP+0ZwD/tGcA/7VnAMGzZQDts2QA/7NlAf+yYQD/r10A/7JjAP+zZQD/s2UA/7Nl
|
||||
AP+zZQD/smIA/69cAP+xXwD/vnsn/9Ola//fvpP/0aFj/7ZqDf+uWwD/s2MA/7NlAP+zZQD/s2UA/7Nl
|
||||
AP+zZQD/s2UA/7NlAP+zZQD/s2UA/7NlAP+zZQD/s2UA6rJjAO6yYgD/smMD/968kf/Nmlv/smMF/61Z
|
||||
AP+vXQD/rlwA/61ZAP+0aA3/zJhZ/+nStv/8+vb/////////////////8+fY/86dYf+wYAH/rlwA/7Jj
|
||||
AP+yYwD/smMA/7JjAP+yYwD/smMA/7JjAP+yYwD/smMA/7JjAP+yYwDrsGEA7bBgAP+vXgD/8OLP////
|
||||
///w4dD/1Kh1/758L//Bgzn/2rSI//Tp3P///////////////////////////////////////////+rV
|
||||
vP++fTL/q1cA/69fAP+wYgD/sGEA/7BhAP+wYQD/sGEA/7BhAP+wYQD/sGEA/7BhAOqvXwDtr14A/65c
|
||||
AP/t28X//////////////////v79////////////////////////////////////////////////////
|
||||
//////////////z59v/WrX7/r2AH/6tYAP+vYAD/r2AA/69fAP+vXwD/r18A/69fAP+vXwD/r18A6q1e
|
||||
AO2tXQD/rFsA/+zbxf//////////////////////////////////////////////////////////////
|
||||
///////////////////////////////////t3Mf/vHw0/6hTAP+sXAD/rV4A/61eAP+tXgD/rV4A/61e
|
||||
AP+tXgDqrFwB7axbAP+qWQD/7+DP////////////////////////////////////////////////////
|
||||
//////////////Lm2P/s2sn/7t3L/+7fzf/v4M//8OLU///////8+fb/0aZ2/6pYAf+pVgD/rFwB/6xc
|
||||
Af+sXAH/rFwB/6xcAeqqWgPtqlkC/6dUAP/Qo3T/////////////////////////////////////////
|
||||
////////////////////////5s60/9q2k//buZP/2riR/9q3kP/Vrob/1a2C///+/v//////59C3/7Rs
|
||||
I/+lUAD/qlkC/6paA/+qWgP/qloD6qlYBO2pWAT/qVcE/6RPAP/Ejlb/9/Do////////////////////
|
||||
///////////////////////////////////////////////////////////////////VrYT/+PHp////
|
||||
////////9+/n/8SOVv+mUgD/qVgE/6lYBP+pWATqqFYE7ahWBP+oVwT/p1YD/6JNAP+xaiP/38Kl//38
|
||||
+v///////////////////////////////////////////////////////////////////////////8eU
|
||||
YP/TqoL//v38/////////////////8qZaP+jTgD/qFYE/6hWBOqmVAPtplQD/6ZUA/+mVAP/plUD/6NP
|
||||
AP+jTgD/tnIw/8mYZ//Vr4n/17GM/9Sshf/SqYD/0KV7/86hdf/Lm2z/yJZk/8aSX//GkFz/xY9Z/8OL
|
||||
VP++g0j/p1YG/6FKAP+5eT3/6NTA////////////0qh//6FLAP+mVAP/plQD6qVTA+2lUwP/pVMD/6VT
|
||||
A/+lUwP/pVMD/6VSAv+iTQD/oEkA/6BIAP+gSQD/n0gA/59HAP+bQAD/m0EA/6NPAP+pWw7/qVoN/6JO
|
||||
AP+cQQD/nEMA/6FKAP+kUgH/pVMC/6FKAP+kUQT/yplq/9Gnf/+nVwv/pFEB/6VTA/+lUwPqpFEC7aRR
|
||||
Av+kUQL/pFEC/6RRAv+kUQL/pFEC/6RRAv+kUQL/pFEC/6RRAv+iTAD/oUsA/72ASf/gw6n/8+nf//r2
|
||||
8v/69fH/8uba/9y8nv+4dzz/oEgA/6JOAP+kUQL/pFEC/6NPAP+fSAD/n0cA/6NPAP+kUQL/pFEC/6RR
|
||||
AuqiTwHtok8B/6JPAf+iTwH/ok8B/6JPAf+iTwH/ok8B/6JPAf+jTwH/n0kA/6dXEv/fwqj/////////
|
||||
///////////////////////////////+/v/YtJP/o1AH/6BLAP+jTwH/ok8B/6JPAf+iTwD/ok8B/6JP
|
||||
Af+iTwH/ok8B6qNQAu2jUAL/o1AC/6NQAv+jUAL/o1AC/6NQAv+jUAL/o1AD/6FMAP+mVhH/6tfF////
|
||||
///////////////////////////////////////////////////iyK//o08H/6JOAP+jUAP/o1AC/6NQ
|
||||
Av+jUAL/o1AC/6NQAv+jUALqplUI7aZVCP+mVQj/plUI/6ZVCP+mVQj/plUI/6ZVCP+mVAf/ok0B/96/
|
||||
of/////////////////////////////////////////////////////////////////TqoP/oUsA/6ZV
|
||||
CP+mVQj/plUI/6ZVCP+mVQj/plUI/6ZVCOqqWgvtqloL/6paC/+qWgv/qloL/6paC/+qWgv/qloL/6dU
|
||||
Av+8fT////////////////////////////////////////////////////////////////////////v4
|
||||
9P+0bSf/qFYF/6paC/+qWgv/qloL/6paC/+qWgv/qloL6q5gCe2uYAn/rmAJ/65gCf+uYAn/rmAJ/65g
|
||||
Cf+uYAn/qlcA/928mP/////////////////////////////////z6Nv/9ezh////////////////////
|
||||
/////////////9KoeP+pVwD/rmAJ/65gCf+uYAn/rmAJ/65gCf+uYAnqs2cH7bNnB/+zZgb/s2cH/7Nn
|
||||
B/+zZwf/s2cH/7JmBf+yZQX/79/M////////////////////////////27aI/7JlCf+0aRD/4sWg////
|
||||
////////////////////////5s6v/7BgAP+zZwf/s2cH/7NnB/+zZgb/s2cH/7NnB+q4bgntuW8P/7lx
|
||||
FP+3bQf/uG4K/7huCv+4bgr/t2wH/7pyEv/27N7///////////////////////r17/+7dBX/tWgB/7Rm
|
||||
AP/Cgi3//v38///////////////////////u3cb/tmoE/7htCf+4bgr/t20H/7lxE/+5bw//uG4J6r12
|
||||
Fe2+eBz/w4E7/796I/+9dRX/vXUU/712Fv+8dBP/vngb//Xq2////////////////////////Pr2/8eL
|
||||
O/+4agP/t2kA/8+aVP///v7//////////////////////+7cxP+7cQ7/vXUT/711FP+/eiL/w4E6/754
|
||||
HP+9dhXqwn4j7cN/KP/Jikb/yYtI/8eHPP/EgS7/wn4m/8J9Iv/AeRv/7tvD////////////////////
|
||||
////////8+bU/9SkZP/WqW7/9+3h////////////////////////////5sum/793Gf/EgS3/x4Y7/8mL
|
||||
R//JikX/w38o/8J+I+rHhi/tyIc0/86STv/Okk//zpNR/86TUP/NkUv/zI5F/8iFM//hvpL/////////
|
||||
///////////////////////////////////////////////////////////////////cs4H/y4tB/86S
|
||||
UP/Ok1H/zpJP/86RTf/IhzT/x4Yv6s2ONu3OkDv/1JpW/9SaV//Umlf/1JpY/9SbWP/Um1n/1JlW/9eh
|
||||
ZP/79vD/////////////////////////////////////////////////////////////////9+3h/9Wc
|
||||
Wv/Umlf/1JpY/9SaV//Umlj/1JpW/86PPP/Njjbq1Jg97dWZQ//Zo1//2aNg/9mjYP/Zo2D/2aNg/9mj
|
||||
YP/Zo2D/151X/+fEmP////////////////////////////////////////////////////////////79
|
||||
/P/juof/2J5Y/9mjYP/Zo2D/2aNg/9mjYf/Zo17/1ZlD/9SYPeraoUru2qJM/96qZv/eq2n/3qto/96r
|
||||
aP/eq2j/3qto/96raP/eq2j/3Kdg/+3Srf//////////////////////////////////////////////
|
||||
///+/Pv/6sme/9ymX//eq2j/3qto/96raP/eq2j/3qtp/96qZf/aokz/2qFK6+CrWezgqlj/4a9k/+O0
|
||||
cv/jtHD/47Rw/+O0cP/jtHD/47Rw/+O0cP/js2//4q9p/+zKmv/68OP/////////////////////////
|
||||
////////+e3c/+rEkP/ir2j/47Nw/+O0cP/jtHD/47Rw/+O0cf/jtHH/4a9k/+CqWP/gq1np5rRjvea0
|
||||
Y//mtGL/57ht/+i7dv/ovHf/6Lx3/+i8d//ovHf/6Lx3/+m8d//ovHf/57hv/+m8eP/vzpv/9N67//fm
|
||||
zP/35sv/89y4/+7Mlv/ou3X/57hw/+m8d//ovHf/6Lx3/+i8d//ovHf/6Lt2/+e4bf/mtGL/5rRj/+a0
|
||||
Y7rrvm077L9u9ey/bv/rv23/7L9v/+y/b//sv2//7L9v/+y/b//sv2//7L9v/+y/b//sv3D/679u/+q8
|
||||
af/qu2f/6rxp/+q8aP/qu2f/67xq/+u/bv/sv3D/7L9v/+y/b//sv2//7L9v/+y/b//sv27/679t/+y/
|
||||
bv/sv2/z675uOO3BcADvxnY68cl6s/LKeuXyyXrr8sl56/LJeevyyXnr8sl56/LJeevyyXnr8sl56/LJ
|
||||
eevyyXnr8sl56/LJeevyyXnr8sl56/LJeevyyXnr8sl56/LJeevyyXnr8sl56/LJeevyyXnr8sl56/LJ
|
||||
euvyynrl8cl5su/GdTjtwXAAgAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAE=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
106
AutomatedRedump2IRD/IsoTools/IrdCreateRedumpFile.cs
Normal file
@@ -0,0 +1,106 @@
|
||||
using DiscUtils.Udf;
|
||||
using IsoTools.Common.Properties;
|
||||
using IsoTools.Iso9660;
|
||||
using AutomatedRedump2IRD.IsoTools;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace IsoTools
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public class IrdCreateRedumpFile : IrdCreateFile {
|
||||
private readonly byte[] header_3k3y = Encoding.ASCII.GetBytes("Encrypted 3K ISO");
|
||||
private readonly byte[] sector_3k3y = new byte[16 + 16 + 16 + 115];
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="decrypted"></param>
|
||||
/// <param name="createIrdFile"></param>
|
||||
/// <param name="d1"></param>
|
||||
/// <param name="d2"></param>
|
||||
/// <param name="pic"></param>
|
||||
public IrdCreateRedumpFile(bool decrypted, bool createIrdFile, byte[] d1, byte[] d2, byte[] pic) : base(decrypted, createIrdFile) {
|
||||
System.Diagnostics.Debug.Assert(header_3k3y.Length == 16, "Unexpected header_3k3y size.");
|
||||
System.Diagnostics.Debug.Assert(d1.Length == 16, "Unexpected d1 size.");
|
||||
System.Diagnostics.Debug.Assert(d2.Length == 16, "Unexpected d2 size.");
|
||||
System.Diagnostics.Debug.Assert(pic.Length == 115, "Unexpected pic size.");
|
||||
|
||||
// Write the generic 3k3y header inforatmion.
|
||||
Array.Copy(header_3k3y, sector_3k3y, header_3k3y.Length);
|
||||
|
||||
// Write the dynamic 3k3y information.
|
||||
Array.Copy(d1, 0, sector_3k3y, 16, d1.Length);
|
||||
Array.Copy(d2, 0, sector_3k3y, 32, d2.Length);
|
||||
Array.Copy(pic, 0, sector_3k3y, 48, pic.Length);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
protected override async Task<bool> CheckIfValid() {
|
||||
// Get the ps3 header from the iso.
|
||||
byte[] ps3_header = null;
|
||||
using (Stream iso_stream = this.Open()) {
|
||||
long ps3_header_size = 0;
|
||||
PS3CDReader ps3_cd_reader = new PS3CDReader(iso_stream);
|
||||
ICollection<DirectoryMemberInformation> members = ps3_cd_reader.Members;
|
||||
List<DirectoryMemberInformation> list = (
|
||||
from d in members
|
||||
where d.IsFile
|
||||
select d).Distinct<DirectoryMemberInformation>().ToList<DirectoryMemberInformation>();
|
||||
ps3_header_size = list.First<DirectoryMemberInformation>().StartSector * 2048;
|
||||
|
||||
// Note: The full ps3_header_size isn't needed, the IRD's "Header" seems to always be smaller than 0>StartSector, but can't find why (from code seems to write all, so why IrdViewer is missing some)...
|
||||
if (ps3_header_size == 0)
|
||||
return false;
|
||||
ps3_header = new byte[ps3_header_size];
|
||||
iso_stream.Seek(0, SeekOrigin.Begin);
|
||||
if (iso_stream.Read(ps3_header, 0, (int)ps3_header_size) != ps3_header_size)
|
||||
return false;
|
||||
}
|
||||
|
||||
// Modify the header with the d1/d2/key information at the 3k3y location (0xF70), and write it to the temporary Redump2IRD.exe.header file.
|
||||
string tmp_header_info_file = new Uri(System.Reflection.Assembly.GetEntryAssembly().GetName().CodeBase + ".ps3-header-only.iso").LocalPath;
|
||||
if (File.Exists(tmp_header_info_file))
|
||||
File.Delete(tmp_header_info_file);
|
||||
Array.Copy(sector_3k3y, 0, ps3_header, 0xF70, sector_3k3y.Length);
|
||||
File.WriteAllBytes(tmp_header_info_file, ps3_header);
|
||||
|
||||
// Analayze the "header" file above so we can get correct information.
|
||||
IsoCryptoClass isoCryptoClass = new IsoCryptoClass();
|
||||
if (await isoCryptoClass.AnalyseISO(tmp_header_info_file) && isoCryptoClass.IsEncrypted) {
|
||||
FileInfo fileInfo = new FileInfo(base.Path);
|
||||
base.Regions = isoCryptoClass.Regions;
|
||||
base.EndOfDataSector = (long)base.Regions.Last<Region>().End;
|
||||
base.TotalSectors = (long)((uint)(fileInfo.Length / (long)2048));
|
||||
|
||||
File.Delete(tmp_header_info_file);
|
||||
this.IsValid = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
File.Delete(tmp_header_info_file);
|
||||
this.IsValid = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
protected override Stream Open() {
|
||||
return new RedumpFileStream(base.Path, FileMode.Open, FileAccess.Read, sector_3k3y);
|
||||
}
|
||||
}
|
||||
}
|
||||
52
AutomatedRedump2IRD/IsoTools/RedumpFileStream.cs
Normal file
@@ -0,0 +1,52 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace AutomatedRedump2IRD.IsoTools {
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public class RedumpFileStream : FileStream {
|
||||
private const long size_3k3y_ = 16 + 16 + 16 + 115;
|
||||
private const long start_3k3y_ = 0xF70;
|
||||
private const long end_3k3y_ = start_3k3y_ + size_3k3y_;
|
||||
private byte[] sec_3k3y_;
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="path"></param>
|
||||
/// <param name="mode"></param>
|
||||
/// <param name="access"></param>
|
||||
/// <param name="sec_3k3y"></param>
|
||||
public RedumpFileStream(string path, FileMode mode, FileAccess access, byte[] sec_3k3y) : base(path, mode, access) {
|
||||
System.Diagnostics.Debug.Assert(sec_3k3y.Length == size_3k3y_, "Unexpected sec3k3y size.");
|
||||
sec_3k3y_ = sec_3k3y;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="array"></param>
|
||||
/// <param name="offset"></param>
|
||||
/// <param name="count"></param>
|
||||
/// <returns></returns>
|
||||
public override int Read(byte[] array, int offset, int count) {
|
||||
int ret = base.Read(array, offset, count);
|
||||
|
||||
// Check if the read has data inside our 3k3y sector, if so copy the memory over.
|
||||
if (base.Position >= start_3k3y_ && base.Position - ret <= end_3k3y_) {
|
||||
long start_position_of_read = base.Position - ret;
|
||||
long offset_of_3k3y_sector = start_position_of_read <= start_3k3y_ ? 0 : start_position_of_read - start_3k3y_;
|
||||
long offset_of_3k3y_in_array = offset + (start_position_of_read >= start_3k3y_ ? 0 : start_3k3y_ - start_position_of_read);
|
||||
Array.Copy(sec_3k3y_, offset_of_3k3y_sector, array, offset_of_3k3y_in_array, Math.Min(array.Length - offset_of_3k3y_in_array, size_3k3y_ - offset_of_3k3y_sector));
|
||||
|
||||
// TODO: array.Length - offset_of_3k3y_in_array is over-estimate, we can copy less...
|
||||
// Could be some off-by-1 errors above for edge cases?
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
}
|
||||
76
AutomatedRedump2IRD/IsoTools/RedumpInteraction.cs
Normal file
@@ -0,0 +1,76 @@
|
||||
using IsoTools;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AutomatedRedump2IRD {
|
||||
internal class RedumpInteraction : EmptyInteraction {
|
||||
private readonly Timer progress_timer_ = null;
|
||||
private readonly ProgressBar progress_bar_ = null;
|
||||
private readonly RichTextBox output_ = null;
|
||||
private int progress_ = 0;
|
||||
public string pathIRDFileName_ = String.Empty;
|
||||
public string pathISOFileName_ = String.Empty;
|
||||
|
||||
public RedumpInteraction(ProgressBar progress_bar, RichTextBox output, string pathIRDFileName, string pathISOFileName) {
|
||||
progress_bar_ = progress_bar;
|
||||
output_ = output;
|
||||
pathIRDFileName_ = pathIRDFileName;
|
||||
pathISOFileName_ = pathISOFileName;
|
||||
progress_timer_ = new Timer();
|
||||
progress_timer_.Interval = 200;
|
||||
progress_timer_.Tick += new EventHandler(ProgressTimerTick);
|
||||
progress_timer_.Start();
|
||||
}
|
||||
|
||||
private string ird_output_inital_dir_ = String.Empty;
|
||||
public override Task<string> GetIrdOutputFile(string inputFile)
|
||||
{
|
||||
ird_output_inital_dir_ = Path.GetDirectoryName(pathIRDFileName_);
|
||||
return TaskEx.FromResult<string>(pathIRDFileName_);
|
||||
}
|
||||
|
||||
private string iso_file_inital_dir_ = String.Empty;
|
||||
public override Task<string[]> GetIsoFile(bool verify = false, bool multiple = true)
|
||||
{
|
||||
iso_file_inital_dir_ = Path.GetDirectoryName(pathISOFileName_);
|
||||
return TaskEx.FromResult<string[]>(new string[] { pathISOFileName_ });
|
||||
}
|
||||
|
||||
public override void ReportMessage(string message, ReportType reportType) {
|
||||
if (output_ != null)
|
||||
output_.Invoke((Action)(() => { output_.AppendText("Info: " + message + Environment.NewLine); }));
|
||||
}
|
||||
|
||||
public override void ReportProgress(int progress) {
|
||||
if (progress != -1)
|
||||
progress_ = progress;
|
||||
if (progress_bar_ != null)
|
||||
progress_bar_.Invoke((Action)(() => { progress_bar_.Value = progress_; }));
|
||||
}
|
||||
|
||||
public override void SetProgressMaximum(int max) {
|
||||
if (progress_bar_ != null)
|
||||
progress_bar_.Invoke((Action)(() => { progress_bar_.Maximum = max; }));
|
||||
}
|
||||
|
||||
public override void TaskBegin(TaskType taskType) {
|
||||
progress_ = 0;
|
||||
if (progress_timer_ != null)
|
||||
progress_timer_.Start();
|
||||
if (progress_bar_ != null)
|
||||
progress_bar_.Invoke((Action)(() => { progress_bar_.Value = progress_; }));
|
||||
}
|
||||
|
||||
public override void TaskComplete() {
|
||||
if (progress_timer_ != null)
|
||||
progress_timer_.Stop();
|
||||
}
|
||||
|
||||
private void ProgressTimerTick(object sender, EventArgs e) {
|
||||
if (progress_bar_ != null)
|
||||
progress_bar_.Value = progress_;
|
||||
}
|
||||
}
|
||||
}
|
||||
22
AutomatedRedump2IRD/Program.cs
Normal file
@@ -0,0 +1,22 @@
|
||||
using System;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AutomatedRedump2IRD
|
||||
{
|
||||
/// <summary>
|
||||
/// The main Program class.
|
||||
/// </summary>
|
||||
static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new FrmAutomatedRedump2IRD());
|
||||
}
|
||||
}
|
||||
}
|
||||
36
AutomatedRedump2IRD/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("Automated Redump 2 IRD")]
|
||||
[assembly: AssemblyDescription("The Original Automated IRD Builder")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Automated Redump 2 IRD")]
|
||||
[assembly: AssemblyProduct("Automated Redump 2 IRD")]
|
||||
[assembly: AssemblyCopyright("Copyright (c) 2016-2025 Automated Redump 2 IRD - All Rights Reserved")]
|
||||
[assembly: AssemblyTrademark("Automated Redump 2 IRD - The Original Automated IRD Builder")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("4535930b-6f1d-43c5-b661-3cb8a8332f07")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// 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.0.8")]
|
||||
[assembly: AssemblyFileVersion("0.0.8")]
|
||||
213
AutomatedRedump2IRD/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,213 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace AutomatedRedump2IRD.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||
/// </summary>
|
||||
// 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.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns the cached ResourceManager instance used by this class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AutomatedRedump2IRD.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <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)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ------------------------------------------------------------------
|
||||
///Automated Redump 2 IRD - Help version 20240906
|
||||
///Copyright (c) 2016-2024 Automated Redump 2 IRD - All Rights Reserved
|
||||
///------------------------------------------------------------------
|
||||
///
|
||||
///[I] About
|
||||
///[II] Requirements
|
||||
///[III] Installation
|
||||
///[IV] How To Build IRDs
|
||||
///[V] FAQ
|
||||
///[VI] Contributing
|
||||
///[VII] Contact
|
||||
///[VIII] Disclaimers
|
||||
///
|
||||
///[I] About
|
||||
///----------
|
||||
///Automated Redump 2 IRD, or AR2I is The Original Automated IRD Builder.
|
||||
///
|
||||
///Automated Redump 2 I [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
internal static string AutomatedRedump2IRD_HELP {
|
||||
get {
|
||||
return ResourceManager.GetString("AutomatedRedump2IRD_HELP", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ***************************************************************
|
||||
///Automated Redump 2 IRD - License version 20240906
|
||||
///Copyright (c) 2016-2024 Automated Redump 2 IRD
|
||||
///All Rights Reserved
|
||||
///***************************************************************
|
||||
///
|
||||
///TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
///
|
||||
///1. Redistributions in any form are not permitted whatsoever,
|
||||
/// under any conditions.
|
||||
///
|
||||
///2. This software may not be reverse engineered, decompiled,
|
||||
/// or disassembled.
|
||||
///
|
||||
///3. Automated Redump [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
internal static string AutomatedRedump2IRD_LICENSE {
|
||||
get {
|
||||
return ResourceManager.GetString("AutomatedRedump2IRD_LICENSE", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap BuildIRDs_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("BuildIRDs_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Cancel_16x16 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Cancel_16x16", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap DB_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("DB_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Exit_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Exit_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Help_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Help_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap License_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("License_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Log_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Log_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Options_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Options_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap SaveLog_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("SaveLog_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap Toolbar_32x32 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Toolbar_32x32", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
157
AutomatedRedump2IRD/Properties/Resources.resx
Normal file
@@ -0,0 +1,157 @@
|
||||
<?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>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="AutomatedRedump2IRD_HELP" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Docs\AutomatedRedump2IRD-HELP.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
|
||||
</data>
|
||||
<data name="AutomatedRedump2IRD_LICENSE" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Docs\AutomatedRedump2IRD-LICENSE.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
|
||||
</data>
|
||||
<data name="BuildIRDs_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\BuildIRDs_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Cancel_16x16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Cancel_16x16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="DB_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\DB_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Exit_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Exit_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Help_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Help_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="License_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\License_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Log_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Log_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Options_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Options_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="SaveLog_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\SaveLog_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="Toolbar_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Images\Toolbar_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
BIN
AutomatedRedump2IRD/Resources/DB/ps3.redump.sqlite.db
Normal file
@@ -0,0 +1 @@
|
||||
This file can be deleted.
|
||||
105
AutomatedRedump2IRD/Resources/Docs/AutomatedRedump2IRD-HELP.txt
Normal file
@@ -0,0 +1,105 @@
|
||||
------------------------------------------------------------------
|
||||
Automated Redump 2 IRD - Help version 20250731
|
||||
Copyright (c) 2016-2025 Automated Redump 2 IRD - All Rights Reserved
|
||||
------------------------------------------------------------------
|
||||
|
||||
[I] About
|
||||
[II] Requirements
|
||||
[III] Installation
|
||||
[IV] How To Build IRDs
|
||||
[V] FAQ
|
||||
[VI] Contributing
|
||||
[VII] Contact
|
||||
[VIII] Disclaimers
|
||||
|
||||
[I] About
|
||||
----------
|
||||
Automated Redump 2 IRD, or AR2I is The Original Automated IRD Builder.
|
||||
|
||||
Automated Redump 2 IRD builds all the IRDs for all of the ISO files and Zipped ISO files in a directory recursively, using information from an SQLite DB.
|
||||
|
||||
The SQLite database can be viewed and edited directly from the app, allowing you to add IRDs and ISOs to the database.
|
||||
|
||||
IRDs cannot be built for ROMs with nonmatching titles. Please use a ROM manager to rename your ROMs to match the correct title in the DB.
|
||||
|
||||
IRDs are named using the MD5 hash value of the Redump ISO, enabling you to colect the IRDs in the IRDs folder.
|
||||
|
||||
[II] Requirements
|
||||
------------------
|
||||
This app does not ship with the following necessary IsoTools Libraries, which are distributed with IsoTools.
|
||||
* DiscUtils.dll
|
||||
* Ionic.Zip.dll
|
||||
* IsoTools.Common.dll
|
||||
* Microsoft.CompilerServices.AsyncTargetingPack.Net4.dll
|
||||
|
||||
Place these libraries in the program folder with the AutomatedRedump2IRD.exe file.
|
||||
|
||||
IsoTools appears to have been discontinued. We do not know where to find the necessary libraries.
|
||||
|
||||
[III] Installation
|
||||
-----------------
|
||||
Download and unzip the program to any new location that you wish to use. However, this software should be installed as close to the drive's root directory as possible.
|
||||
|
||||
Place the IsoTools libraries into the program folder with the AutomatedRedump2IRD.exe file.
|
||||
|
||||
I like to put my installation in a directory called AR2I on my C:\ drive. My installation layout looks like this:
|
||||
|
||||
C:\AR2I\DB\
|
||||
C:\AR2I\IRDs\
|
||||
C:\AR2I\Logs\
|
||||
C:\AR2I\ROMs\
|
||||
C:\AR2I\Tmp\
|
||||
C:\AR2I\AutomatedRedump2IRD.exe
|
||||
C:\AR2I\DiscUtils.dll
|
||||
C:\AR2I\Ionic.Zip.dll
|
||||
C:\AR2I\IsoTools.Common.dll
|
||||
C:\AR2I\Microsoft.CompilerServices.AsyncTargetingPack.Net4.dll
|
||||
|
||||
[IV] How to Build IRDs
|
||||
--------------------------------
|
||||
* If you have an account at Automated Redump 2 IRD, set your username and password by editing the Options from the GUI. This will allow you to send IRDs to the database.
|
||||
* Rename your ROMs using a ROM manager to match the Redump DB you are using.
|
||||
* Place your Redump DB file in the DB directory, or set the path to it.
|
||||
* Set the other paths and options as needed.
|
||||
* Click one of the Build IRDs buttons.
|
||||
|
||||
[V] FAQ
|
||||
---------
|
||||
Q1) I didn't read or follow the instructions in the help file and I can't get this software to work properly. Can you help?
|
||||
A1) No.
|
||||
|
||||
Q2) Why do I keep getting errors about path and file lengths?
|
||||
A2) Obviously, you chose an installation path that is too long. This won't happen if you follow the installation instructions. Please read the Installation Section again and this time follow the instructions.
|
||||
|
||||
Q3) I appear to be blocked from some or all databases, or appear to be blocked from using this software. What gives?
|
||||
A3) There are way too many reasons why this may or may not be happening. One example might be that you are using a blacklisted or abusive host, which may be blocked by some networks. In many cases, the network filtering may also be completely out of anyone's control.
|
||||
|
||||
Q4) Why can't this software find matches based on ROM hashes? My ROMs are not named according to the Redump datafile that corresponds to the matching SQLite DB.
|
||||
A4) This software is designed to be used specifically for the Redump database. Finding matches using this info takes a fraction of a second. Finding matches based on hash values could take many days to find a SINGLE match and build a SINGLE IRD. Using hash values to find matches would defy all common sense.
|
||||
|
||||
[VI] Contributing
|
||||
----------------
|
||||
Let's work better together. We are looking to collaborate with like-minded people who want to contribute in any capacity. Collaboration is open to everyone and we need your help if you are a:
|
||||
* Collector
|
||||
* Database Administrator
|
||||
* Datter
|
||||
* Developer
|
||||
* Dumper
|
||||
* Graphic Artist
|
||||
* Translator
|
||||
* Player
|
||||
* Tester
|
||||
|
||||
Feel free to:
|
||||
* Fork the repository
|
||||
* Create an issue
|
||||
* Branch your repository with the issue number and a meaningful name related to the changes you are making
|
||||
* Create a pull request
|
||||
|
||||
[VII] Contact
|
||||
----------------
|
||||
GitEmAll: https://gitemall.devemall.int.eu.org/TommySalami/AutomatedRedump2IRD
|
||||
|
||||
[VIII] Disclaimers
|
||||
----------------
|
||||
We do not upload, share, distribute or provide links to anything illegal, including ROMs or patches.
|
||||
@@ -0,0 +1,40 @@
|
||||
***************************************************************
|
||||
Automated Redump 2 IRD - License version 20250731
|
||||
Copyright (c) 2016-2025 Automated Redump 2 IRD
|
||||
All Rights Reserved
|
||||
***************************************************************
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Redistributions in any form are not permitted whatsoever,
|
||||
under any conditions.
|
||||
|
||||
2. This software may not be reverse engineered, decompiled,
|
||||
or disassembled.
|
||||
|
||||
3. Automated Redump 2 IRD may publish revised and/or new
|
||||
versions of the license from time to time. Each version
|
||||
will be given a distinguishing version number. No one other
|
||||
than Automated Redump 2 IRD has the right to modify the
|
||||
terms applicable to covered code created under this
|
||||
License.
|
||||
|
||||
4. It is your responsibility to use this software in accordance
|
||||
with all applicable laws.
|
||||
|
||||
***************************************************************
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTOMATED REDUMP 2 IRD
|
||||
DEVELOPMENT TEAM 'AS IS' AND ANY EXPRESSED OR IMPLIED
|
||||
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTOMATED REDUMP
|
||||
2 IRD DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
OF SUCH DAMAGE.
|
||||
@@ -0,0 +1 @@
|
||||
This file can be deleted.
|
||||
BIN
AutomatedRedump2IRD/Resources/Icons/App.ico
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/BuildIRDs_32x32.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/Cancel_16x16.png
Normal file
|
After Width: | Height: | Size: 933 B |
BIN
AutomatedRedump2IRD/Resources/Images/DB_32x32.png
Normal file
|
After Width: | Height: | Size: 7.8 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/Exit_32x32.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/Help_32x32.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/License_32x32.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/Log_32x32.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/Options_32x32.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/SaveLog_32x32.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
AutomatedRedump2IRD/Resources/Images/Toolbar_32x32.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1 @@
|
||||
This file can be deleted.
|
||||
@@ -0,0 +1 @@
|
||||
This file can be deleted.
|
||||
@@ -0,0 +1 @@
|
||||
This file can be deleted.
|
||||
BIN
AutomatedRedump2IRD/Resources/redump.ps3.sqlite.db
Normal file
5
AutomatedRedump2IRD/packages.config
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.118.0" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.118.0" targetFramework="net40" />
|
||||
</packages>
|
||||
29
CHANGELOG.md
Normal file
@@ -0,0 +1,29 @@
|
||||
Version 0.0.8 - 2025-07-31
|
||||
|
||||
* Update repository info and related URLs
|
||||
* Minor changes
|
||||
|
||||
Version 0.0.7 - 2024-09-06
|
||||
|
||||
* New repository created and URLs fixed
|
||||
* Minor changes
|
||||
|
||||
Version 0.0.6 - 2023-06-12
|
||||
|
||||
* Add SQLite DB browser
|
||||
|
||||
Version 0.0.5 - 2023-05-27
|
||||
|
||||
* Fix GUI SQLite DB file selector
|
||||
* Fix some cross threading issues with 2 way data binding
|
||||
* Update all documentation
|
||||
* Minor code changes
|
||||
|
||||
Version 0.0.4 - 2023-04-30
|
||||
|
||||
* Add CHANGELOG file
|
||||
|
||||
Version 0.0.3 - 2023-00-00
|
||||
|
||||
* Update to .NET Framework 4.8
|
||||
* Initial release
|
||||
127
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,127 @@
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, religion, or sexual identity
|
||||
and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to a positive environment for our
|
||||
community include:
|
||||
|
||||
* Demonstrating empathy and kindness toward other people
|
||||
* Being respectful of differing opinions, viewpoints, and experiences
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the
|
||||
overall community
|
||||
|
||||
Examples of unacceptable behavior include:
|
||||
|
||||
* The use of sexualized language or imagery, and sexual attention or
|
||||
advances of any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or email
|
||||
address, without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Enforcement Responsibilities
|
||||
|
||||
Community leaders are responsible for clarifying and enforcing our standards of
|
||||
acceptable behavior and will take appropriate and fair corrective action in
|
||||
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||
or harmful.
|
||||
|
||||
Community leaders have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||
decisions when appropriate.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement.
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
reporter of any incident.
|
||||
|
||||
## Enforcement Guidelines
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining
|
||||
the consequences for any action they deem in violation of this Code of Conduct:
|
||||
|
||||
### 1. Correction
|
||||
|
||||
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||
unprofessional or unwelcome in the community.
|
||||
|
||||
**Consequence**: A private, written warning from community leaders, providing
|
||||
clarity around the nature of the violation and an explanation of why the
|
||||
behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series
|
||||
of actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or
|
||||
permanent ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
**Community Impact**: A serious violation of community standards, including
|
||||
sustained inappropriate behavior.
|
||||
|
||||
**Consequence**: A temporary ban from any sort of interaction or public
|
||||
communication with the community for a specified period of time. No public or
|
||||
private interaction with the people involved, including unsolicited interaction
|
||||
with those enforcing the Code of Conduct, is allowed during this period.
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within
|
||||
the community.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 2.0, available at
|
||||
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||
|
||||
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||
enforcement ladder](https://github.com/mozilla/diversity).
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
https://www.contributor-covenant.org/faq. Translations are available at
|
||||
https://www.contributor-covenant.org/translations.
|
||||
25
CONTRIBUTING.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# @AutomatedRedump2IRD
|
||||
### The Original Automated IRD Builder
|
||||
## Contributing
|
||||
Let's work better together. We are looking to collaborate with like-minded people who want to contribute in any capacity. Collaboration is open to everyone and we need your help if you are a:
|
||||
* Collector
|
||||
* Database Administrator
|
||||
* Datter
|
||||
* Developer
|
||||
* Dumper
|
||||
* Graphic Artist
|
||||
* Translator
|
||||
* Player
|
||||
* Tester
|
||||
|
||||
Feel free to:
|
||||
* Fork the repository
|
||||
* Create an issue
|
||||
* Branch your repository with the issue number and a meaningful name related to the changes you are making
|
||||
* Create a pull request
|
||||
|
||||
## Contact
|
||||
GitEmAll: [https://gitemall.devemall.int.eu.org/TommySalami/AutomatedRedump2IRD](https://gitemall.devemall.int.eu.org/TommySalami/AutomatedRedump2IRD "GitEmAll")
|
||||
|
||||
---
|
||||
###### Copyright (c) 2016-2025 Automated Redump 2 IRD - All Rights Reserved v2025-07-31-00
|
||||
40
LICENSE
Normal file
@@ -0,0 +1,40 @@
|
||||
***************************************************************
|
||||
Automated Redump 2 IRD - License version 20250731
|
||||
Copyright (c) 2016-2025 Automated Redump 2 IRD
|
||||
All Rights Reserved
|
||||
***************************************************************
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Redistributions in any form are not permitted whatsoever,
|
||||
under any conditions.
|
||||
|
||||
2. This software may not be reverse engineered, decompiled,
|
||||
or disassembled.
|
||||
|
||||
3. Automated Redump 2 IRD may publish revised and/or new
|
||||
versions of the license from time to time. Each version
|
||||
will be given a distinguishing version number. No one other
|
||||
than Automated Redump 2 IRD has the right to modify the
|
||||
terms applicable to covered code created under this
|
||||
License.
|
||||
|
||||
4. It is your responsibility to use this software in accordance
|
||||
with all applicable laws.
|
||||
|
||||
***************************************************************
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTOMATED REDUMP 2 IRD
|
||||
DEVELOPMENT TEAM 'AS IS' AND ANY EXPRESSED OR IMPLIED
|
||||
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTOMATED REDUMP
|
||||
2 IRD DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
OF SUCH DAMAGE.
|
||||
59
README.md
Normal file
@@ -0,0 +1,59 @@
|
||||
# @AutomatedRedump2IRD
|
||||
### The Original Automated IRD Builder
|
||||
## About
|
||||
Automated Redump 2 IRD, or AR2I is The Original Automated IRD Builder.
|
||||
|
||||
Automated Redump 2 IRD builds all the IRDs for all of the ISO files and Zipped ISO files in a directory recursively, using information from an SQLite DB.
|
||||
|
||||
The SQLite database can be viewed and edited directly from the app, allowing you to add IRDs and ISOs to the database.
|
||||
|
||||
IRDs cannot be built for ROMs with nonmatching titles. Please use a ROM manager to rename your ROMs to match the correct title in the DB.
|
||||
|
||||
IRDs are named using the MD5 hash value of the Redump ISO, enabling you to collect the IRDs in the IRDs folder.
|
||||
## Dependencies
|
||||
.NET Framework 4
|
||||
|
||||
The following NuGet Packages are required to build a Debug and/or Release version of this app:
|
||||
* System.Data.SQLite.Core
|
||||
|
||||
This app does not ship with the following necessary IsoTools Libraries, which are distributed with IsoTools.
|
||||
* DiscUtils.dll
|
||||
* Ionic.Zip.dll
|
||||
* IsoTools.Common.dll
|
||||
* Microsoft.CompilerServices.AsyncTargetingPack.Net4.dll
|
||||
|
||||
Place these libraries in the AutomatedRedump2IRD/Resources/Libs/IsoTools.1.34.9 project folder.
|
||||
|
||||
IsoTools appears to have been discontinued. We do not know where to find the necessary libraries.
|
||||
## Projects
|
||||
* AutomatedRedump2IRD - Windows Forms App
|
||||
* AutomatedRedump2IRD-Release - Release Project
|
||||
## How to Build IRDs
|
||||
* If you have an account at Automated Redump 2 IRD, set your username and password by editing the Options from the GUI. This will allow you to send IRDs to the database.
|
||||
* Rename your ROMs using a ROM manager to match the Redump DB you are using.
|
||||
* Place your Redump DB file in the DB directory, or set the path to it.
|
||||
* Set the other paths and options as needed.
|
||||
* Click one of the Build IRDs buttons.
|
||||
## Contributing
|
||||
Let's work better together. We are looking to collaborate with like-minded people who want to contribute in any capacity. Collaboration is open to everyone and we need your help if you are a:
|
||||
* Collector
|
||||
* Database Administrator
|
||||
* Datter
|
||||
* Developer
|
||||
* Dumper
|
||||
* Graphic Artist
|
||||
* Translator
|
||||
* Player
|
||||
* Tester
|
||||
|
||||
Feel free to:
|
||||
* Fork the repository
|
||||
* Create an issue
|
||||
* Branch your repository with the issue number and a meaningful name related to the changes you are making
|
||||
* Create a pull request
|
||||
|
||||
## Contact
|
||||
GitEmAll: [https://gitemall.devemall.int.eu.org/TommySalami/AutomatedRedump2IRD](https://gitemall.devemall.int.eu.org/TommySalami/AutomatedRedump2IRD "GitEmAll")
|
||||
|
||||
---
|
||||
###### Copyright (c) 2016-2025 Automated Redump 2 IRD - All Rights Reserved v2025-07-31-00
|
||||