Cry Compression Support

Compressed Cries can now be imported.
This commit is contained in:
Dreuu 2018-12-02 02:08:51 -05:00
parent e104a8a0f2
commit 322e6dbc8d
19 changed files with 262 additions and 136 deletions

Binary file not shown.

View File

@ -363,115 +363,115 @@ Module CryFunctions
36, 49, -64, -49, -36, -25,
-16, -9, -4, -1}
crytosave.Compressed = False
crytosave.Compressed = Pokemonedit.chkCompressed1.Checked
' copy cry data to be written
Dim data = New List(Of Byte)()
If crytosave.Compressed Then
MsgBox("This should not be enabled!")
End
'MsgBox("This should not be enabled!")
'End
'' data is compressed in blocks of 1 + 0x20 bytes at a time
'' first byte is normal signed PCM data
'' following 0x20 bytes are compressed based on previous value
'' (for a value not in lookup table, closest value will be chosen instead)
''Console.WriteLine("compressed");
' data is compressed in blocks of 1 + 0x20 bytes at a time
' first byte is normal signed PCM data
' following 0x20 bytes are compressed based on previous value
' (for a value not in lookup table, closest value will be chosen instead)
'Console.WriteLine("compressed");
'' each block has 0x40 samples
'Dim blockCount = crytosave.Data.Length / &H40
'If crytosave.Data.Length Mod &H40 > 0 Then
' blockCount += 1
'End If
' each block has 0x40 samples
Dim blockCount = crytosave.Data.Length / &H40
If crytosave.Data.Length Mod &H40 > 0 Then
blockCount += 1
End If
'' truncates the length of the last block
'' so we don't waste space
'Dim lastBlockSize = crytosave.Data.Length - crytosave.Data.Length / &H40 * &H40
'If lastBlockSize = 0 Then
' lastBlockSize = &H21
'Else
' lastBlockSize = 1 + (lastBlockSize / 2) + (If(lastBlockSize Mod 2 = 0, 0, 1))
'End If
' truncates the length of the last block
' so we don't waste space
Dim lastBlockSize = crytosave.Data.Length - crytosave.Data.Length / &H40 * &H40
If lastBlockSize = 0 Then
lastBlockSize = &H21
Else
lastBlockSize = 1 + (lastBlockSize / 2) + (If(lastBlockSize Mod 2 = 0, 0, 1))
End If
'Dim blocks = New Byte(blockCount - 1)() {}
'For n As Integer = 0 To blockCount - 1
' ' create new block
' If n < blockCount - 1 Then
' blocks(n) = New Byte(32) {}
' Else
' blocks(n) = New Byte(lastBlockSize - 1) {}
' End If
Dim blocks = New Byte(blockCount - 1)() {}
For n As Integer = 0 To blockCount - 1
' create new block
If n < blockCount - 1 Then
blocks(n) = New Byte(32) {}
Else
blocks(n) = New Byte(lastBlockSize - 1) {}
End If
' Dim i As Integer = n * &H40
' Dim k As Integer = 0
Dim i As Integer = n * &H40
Dim k As Integer = 0
' If i < crytosave.Data.Length Then
' ' set first value
' blocks(n)(k) = BitConverter.GetBytes(crytosave.Data(i))(0)
' End If
If i < crytosave.Data.Length Then
' set first value
blocks(n)(k) = BitConverter.GetBytes(crytosave.Data(i))(0)
End If
' k = k + 1
k = k + 1
' Dim pcm As SByte
Dim pcm As SByte
' If i < crytosave.Data.Length Then
If i < crytosave.Data.Length Then
' pcm = crytosave.Data(i)
pcm = crytosave.Data(i)
' End If
End If
' i = i + 1
i = i + 1
' Dim j As Integer = 1
' While j < &H40 And i < crytosave.Data.Length
' ' get current sample
' Dim sample As SByte = crytosave.Data(i)
Dim j As Integer = 1
While j < &H40 And i < crytosave.Data.Length
' get current sample
Dim sample As SByte = crytosave.Data(i)
' i = i + 1
i = i + 1
' ' difference between previous sample and this
' Dim diff As Integer = sample - pcm
' difference between previous sample and this
Dim diff As Integer = sample - pcm
' ' check for a perfect match in lookup table
' Dim lookupI = -1
' For x As Integer = 0 To 15
' If lookup(x) = diff Then
' lookupI = x
' Exit For
' End If
' Next
' check for a perfect match in lookup table
Dim lookupI = -1
For x As Integer = 0 To 15
If lookup(x) = diff Then
lookupI = x
Exit For
End If
Next
' ' search for the closest match in the table
' If lookupI = -1 Then
' Dim bestDiff As Integer = 255
' For x As Integer = 0 To 15
' If Math.Abs(CInt(lookup(x)) - diff) < bestDiff Then
' lookupI = x
' bestDiff = Math.Abs(lookup(x) - diff)
' End If
' Next
' End If
' search for the closest match in the table
If lookupI = -1 Then
Dim bestDiff As Integer = 255
For x As Integer = 0 To 15
If Math.Abs(CInt(lookup(x)) - diff) < bestDiff Then
lookupI = x
bestDiff = Math.Abs(lookup(x) - diff)
End If
Next
End If
' ' set value in block
' ' on an odd value, increase position in block
' If j Mod 2 = 0 Then
' blocks(n)(k) = blocks(n)(k) Or CByte(lookupI << 4)
' Else
' blocks(n)(k) = blocks(n)(k) Or CByte(lookupI)
' set value in block
' on an odd value, increase position in block
If j Mod 2 = 0 Then
blocks(n)(k) = blocks(n)(k) Or CByte(lookupI << 4)
Else
blocks(n)(k) = blocks(n)(k) Or CByte(lookupI)
' k = k + 1
k = k + 1
' End If
End If
' ' set previous
' pcm = sample
' j += 1
' End While
'Next
' set previous
pcm = sample
j += 1
End While
Next
'For n As Integer = 0 To blockCount - 1
' data.AddRange(blocks(n))
'Next
For n As Integer = 0 To blockCount - 1
data.AddRange(blocks(n))
Next
Else
' uncompressed, copy directly to data
'Console.WriteLine("uncompressed");
@ -568,13 +568,13 @@ Module CryFunctions
36, 49, -64, -49, -36, -25,
-16, -9, -4, -1}
crytosave.Compressed = False
crytosave.Compressed = Pokemonedit.imptCompChk.Checked
' copy cry data to be written
Dim data = New List(Of Byte)()
If 0 Then
If crytosave.Compressed Then
'MsgBox("This should not be enabled!")
@ -638,7 +638,7 @@ Module CryFunctions
i = i + 1
' difference between previous sample and this
Dim diff As Integer = sample - pcm
Dim diff As Integer = Int32.Parse(sample) - Int32.Parse(pcm)
' check for a perfect match in lookup table
Dim lookupI = -1
@ -653,7 +653,7 @@ Module CryFunctions
If lookupI = -1 Then
Dim bestDiff As Integer = 255
For x As Integer = 0 To 15
If Math.Abs(CInt(lookup(x)) - diff) < bestDiff Then
If Math.Abs(lookup(x) - diff) < bestDiff Then
lookupI = x
bestDiff = Math.Abs(lookup(x) - diff)
End If
@ -690,7 +690,7 @@ Module CryFunctions
End If
' set new cry offset
crytosave.Offset = SearchFreeSpaceFourAligned(LoadedROM, &HFF, data.Count, "&H" & GetString(GetINIFileLocation(), header, "StartSearchingForSpaceOffset", "800000"))
crytosave.Offset = SearchFreeSpaceFourAligned(LoadedROM, &HFF, data.Count + 16, "&H" & GetString(GetINIFileLocation(), header, "StartSearchingForSpaceOffset", "800000"))
' write cry
@ -698,7 +698,7 @@ Module CryFunctions
WriteHEX(LoadedROM, crytosave.Offset + 2, ReverseHEX(VB.Right("0000" & CUShort(If(crytosave.Looped, &H4000, 0)), 4)))
WriteHEX(LoadedROM, crytosave.Offset + 4, ReverseHEX(VB.Right("00000000" & Hex(crytosave.SampleRate << 10), 8)))
WriteHEX(LoadedROM, crytosave.Offset + 8, ReverseHEX(VB.Right("00000000" & Hex(crytosave.LoopStart), 8)))
WriteHEX(LoadedROM, crytosave.Offset + 12, ReverseHEX(VB.Right("00000000" & Hex(crytosave.Data.Length - 2), 8)))
WriteHEX(LoadedROM, crytosave.Offset + 12, ReverseHEX(VB.Right("00000000" & Hex(crytosave.Data.Length - 1), 8)))
Dim tempbuff As String = ByteArrayToHexString(data.ToArray)
@ -707,18 +707,18 @@ Module CryFunctions
' write cry table entry
WriteHEX(LoadedROM, cryTable + (crytosave.Index * 12), ReverseHEX(If(crytosave.Compressed, "00003C20", "00003C00")))
WriteHEX(LoadedROM, cryTable + (crytosave.Index * 12) + 4, ReverseHEX(VB.Right("00000000" & Hex(crytosave.Offset + &H8000000), 8)))
WriteHEX(LoadedROM, cryTable + (crytosave.Index * 12) + 8, "FF00FF")
WriteHEX(LoadedROM, cryTable + ((crytosave.Index - 1) * 12), ReverseHEX(If(crytosave.Compressed, "00003C20", "00003C00")))
WriteHEX(LoadedROM, cryTable + ((crytosave.Index - 1) * 12) + 4, ReverseHEX(VB.Right("00000000" & Hex(crytosave.Offset + &H8000000), 8)))
WriteHEX(LoadedROM, cryTable + ((crytosave.Index - 1) * 12) + 8, "FF00FF")
WriteHEX(LoadedROM, growlTable + (crytosave.Index * 12), ReverseHEX(If(crytosave.Compressed, "00003C30", "00003C00")))
WriteHEX(LoadedROM, growlTable + (crytosave.Index * 12) + 4, ReverseHEX(VB.Right("00000000" & Hex(crytosave.Offset + &H8000000), 8)))
WriteHEX(LoadedROM, growlTable + (crytosave.Index * 12) + 8, "FF00FF")
WriteHEX(LoadedROM, growlTable + ((crytosave.Index - 1) * 12), ReverseHEX(If(crytosave.Compressed, "00003C30", "00003C00")))
WriteHEX(LoadedROM, growlTable + ((crytosave.Index - 1) * 12) + 4, ReverseHEX(VB.Right("00000000" & Hex(crytosave.Offset + &H8000000), 8)))
WriteHEX(LoadedROM, growlTable + ((crytosave.Index - 1) * 12) + 8, "FF00FF")
If crytosave.Index > 276 Then
Dim offset As Integer = Int32.Parse((GetString(GetINIFileLocation(), header, "CryConversionTable", "")), System.Globalization.NumberStyles.HexNumber)
WriteHEX(LoadedROM, ((offset)) + ((crytosave.Index - 277) * 2), ReverseHEX(VB.Right("0000" & Hex(crytosave.Index), 4)))
WriteHEX(LoadedROM, ((offset)) + ((crytosave.Index - 277) * 2), ReverseHEX(VB.Right("0000" & Hex(crytosave.Index - 1), 4)))
End If

View File

@ -229,8 +229,6 @@ Partial Class Pokemonedit
Me.Clr1 = New System.Windows.Forms.ComboBox()
Me.TabPage6 = New System.Windows.Forms.TabPage()
Me.GroupBox35 = New System.Windows.Forms.GroupBox()
Me.Button35 = New System.Windows.Forms.Button()
Me.Button36 = New System.Windows.Forms.Button()
Me.Button37 = New System.Windows.Forms.Button()
Me.Panel2 = New System.Windows.Forms.Panel()
Me.pSample2 = New System.Windows.Forms.PictureBox()
@ -287,6 +285,7 @@ Partial Class Pokemonedit
Me.Button39 = New System.Windows.Forms.Button()
Me.Button41 = New System.Windows.Forms.Button()
Me.CheckBox1 = New System.Windows.Forms.CheckBox()
Me.imptCompChk = New System.Windows.Forms.CheckBox()
Me.TabControl1.SuspendLayout()
Me.TabPage1.SuspendLayout()
Me.GroupBox26.SuspendLayout()
@ -2570,6 +2569,9 @@ Partial Class Pokemonedit
'
'TabPage6
'
Me.TabPage6.Controls.Add(Me.Button34)
Me.TabPage6.Controls.Add(Me.imptCompChk)
Me.TabPage6.Controls.Add(Me.Button33)
Me.TabPage6.Controls.Add(Me.GroupBox35)
Me.TabPage6.Controls.Add(Me.GroupBox34)
Me.TabPage6.Controls.Add(Me.GroupBox21)
@ -2584,8 +2586,6 @@ Partial Class Pokemonedit
'
'GroupBox35
'
Me.GroupBox35.Controls.Add(Me.Button35)
Me.GroupBox35.Controls.Add(Me.Button36)
Me.GroupBox35.Controls.Add(Me.Button37)
Me.GroupBox35.Controls.Add(Me.Panel2)
Me.GroupBox35.Controls.Add(Me.chkCompressed2)
@ -2605,27 +2605,6 @@ Partial Class Pokemonedit
Me.GroupBox35.TabStop = False
Me.GroupBox35.Text = "Growl Cry"
'
'Button35
'
Me.Button35.Location = New System.Drawing.Point(428, 265)
Me.Button35.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.Button35.Name = "Button35"
Me.Button35.Size = New System.Drawing.Size(84, 41)
Me.Button35.TabIndex = 30
Me.Button35.Text = "Export"
Me.Button35.UseVisualStyleBackColor = True
'
'Button36
'
Me.Button36.Enabled = False
Me.Button36.Location = New System.Drawing.Point(336, 264)
Me.Button36.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.Button36.Name = "Button36"
Me.Button36.Size = New System.Drawing.Size(84, 41)
Me.Button36.TabIndex = 29
Me.Button36.Text = "Import"
Me.Button36.UseVisualStyleBackColor = True
'
'Button37
'
Me.Button37.Location = New System.Drawing.Point(245, 265)
@ -2734,8 +2713,6 @@ Partial Class Pokemonedit
'
'GroupBox34
'
Me.GroupBox34.Controls.Add(Me.Button34)
Me.GroupBox34.Controls.Add(Me.Button33)
Me.GroupBox34.Controls.Add(Me.Button32)
Me.GroupBox34.Controls.Add(Me.chkCompressed1)
Me.GroupBox34.Controls.Add(Me.panel1)
@ -2757,7 +2734,7 @@ Partial Class Pokemonedit
'
'Button34
'
Me.Button34.Location = New System.Drawing.Point(428, 264)
Me.Button34.Location = New System.Drawing.Point(776, 300)
Me.Button34.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.Button34.Name = "Button34"
Me.Button34.Size = New System.Drawing.Size(84, 41)
@ -2767,7 +2744,7 @@ Partial Class Pokemonedit
'
'Button33
'
Me.Button33.Location = New System.Drawing.Point(336, 264)
Me.Button33.Location = New System.Drawing.Point(776, 254)
Me.Button33.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.Button33.Name = "Button33"
Me.Button33.Size = New System.Drawing.Size(84, 41)
@ -2788,7 +2765,6 @@ Partial Class Pokemonedit
'chkCompressed1
'
Me.chkCompressed1.AutoSize = True
Me.chkCompressed1.Enabled = False
Me.chkCompressed1.Location = New System.Drawing.Point(26, 230)
Me.chkCompressed1.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.chkCompressed1.Name = "chkCompressed1"
@ -3173,6 +3149,17 @@ Partial Class Pokemonedit
Me.CheckBox1.Text = "Efficient Imports"
Me.CheckBox1.UseVisualStyleBackColor = True
'
'imptCompChk
'
Me.imptCompChk.AutoSize = True
Me.imptCompChk.Location = New System.Drawing.Point(777, 227)
Me.imptCompChk.Margin = New System.Windows.Forms.Padding(3, 4, 3, 4)
Me.imptCompChk.Name = "imptCompChk"
Me.imptCompChk.Size = New System.Drawing.Size(125, 24)
Me.imptCompChk.TabIndex = 28
Me.imptCompChk.Text = "Compressed"
Me.imptCompChk.UseVisualStyleBackColor = True
'
'Pokemonedit
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(9.0!, 20.0!)
@ -3283,6 +3270,7 @@ Partial Class Pokemonedit
Me.GroupBox28.PerformLayout()
Me.GroupBox2.ResumeLayout(False)
Me.TabPage6.ResumeLayout(False)
Me.TabPage6.PerformLayout()
Me.GroupBox35.ResumeLayout(False)
Me.GroupBox35.PerformLayout()
Me.Panel2.ResumeLayout(False)
@ -3543,12 +3531,10 @@ Partial Class Pokemonedit
Private WithEvents panel1 As System.Windows.Forms.Panel
Private WithEvents pSample As System.Windows.Forms.PictureBox
Private WithEvents chkCompressed2 As System.Windows.Forms.CheckBox
Private WithEvents chkCompressed1 As System.Windows.Forms.CheckBox
Friend WithEvents chkCompressed1 As System.Windows.Forms.CheckBox
Private WithEvents Panel2 As System.Windows.Forms.Panel
Private WithEvents pSample2 As System.Windows.Forms.PictureBox
Friend WithEvents Button32 As System.Windows.Forms.Button
Friend WithEvents Button35 As System.Windows.Forms.Button
Friend WithEvents Button36 As System.Windows.Forms.Button
Friend WithEvents Button37 As System.Windows.Forms.Button
Friend WithEvents Button34 As System.Windows.Forms.Button
Friend WithEvents Button33 As System.Windows.Forms.Button
@ -3567,4 +3553,5 @@ Partial Class Pokemonedit
Friend WithEvents Button41 As Button
Friend WithEvents CheckBox1 As CheckBox
Friend WithEvents Label61 As Label
Friend WithEvents imptCompChk As CheckBox
End Class

View File

@ -3871,7 +3871,7 @@ Public Class Pokemonedit
End If
End Sub
Private Sub Button35_Click(sender As Object, e As EventArgs) Handles Button35.Click
Private Sub Button35_Click(sender As Object, e As EventArgs)
SaveFileDialog.FileName = (PKMNames.SelectedIndex + 1) & ".wav"
'SaveFileDialog.CheckFileExists = True
@ -4410,4 +4410,7 @@ Public Class Pokemonedit
MenuItem.Update()
End Sub
Private Sub chkCompressed1_CheckedChanged(sender As Object, e As EventArgs) Handles chkCompressed1.CheckedChanged
End Sub
End Class

View File

@ -16,7 +16,7 @@
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
<dsig:DigestValue>oZKsscV6XweG+loQmZbBDiZO0BQCP7F/TfwY0asCaA8=</dsig:DigestValue>
<dsig:DigestValue>qlWgrVBTpVw4hLqEVRImdygkQNID/FbqnREvHRkh3fg=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>

View File

@ -43,14 +43,14 @@
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="PokemonGameEditor.exe" size="2120704">
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="PokemonGameEditor.exe" size="2122240">
<assemblyIdentity name="PokemonGameEditor" version="3.8.1.0" language="neutral" processorArchitecture="msil" />
<hash>
<dsig:Transforms>
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
<dsig:DigestValue>FERwyly55XAx5w762wu7/jegdIJ2KFH+zg+3gAm1/30=</dsig:DigestValue>
<dsig:DigestValue>PnJ0OCLYEgr3gDHSY6A9cKr5cJsIbrLg0fS2PYuUlVU=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>

View File

@ -37,3 +37,139 @@ Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPalCount is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPalCount is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPalCount is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPalCount is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPalCount is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPalCount is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPointerTable2 is missing for ROM BPEE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPalCount is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!
Error! IconPointerTable2 is missing for ROM BPRE!

View File

@ -1 +1 @@
3c28dccb3590a299f877aecd8a64b5acf689d462
ef0dc9cc3316fe1b4494e557fc7828a03aa4043f

View File

@ -16,7 +16,7 @@
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
<dsig:DigestValue>oZKsscV6XweG+loQmZbBDiZO0BQCP7F/TfwY0asCaA8=</dsig:DigestValue>
<dsig:DigestValue>qlWgrVBTpVw4hLqEVRImdygkQNID/FbqnREvHRkh3fg=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>

View File

@ -43,14 +43,14 @@
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="PokemonGameEditor.exe" size="2120704">
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="PokemonGameEditor.exe" size="2122240">
<assemblyIdentity name="PokemonGameEditor" version="3.8.1.0" language="neutral" processorArchitecture="msil" />
<hash>
<dsig:Transforms>
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
<dsig:DigestValue>FERwyly55XAx5w762wu7/jegdIJ2KFH+zg+3gAm1/30=</dsig:DigestValue>
<dsig:DigestValue>PnJ0OCLYEgr3gDHSY6A9cKr5cJsIbrLg0fS2PYuUlVU=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>