Comments (16)
Got one of Iced Lizard Games' games booting using XnaToFna + the Windows content:
https://twitter.com/0x0ade/status/921486706334937088
I still need to figure out all differences between the X360 and Windows content formats and to start working on the converters, but this is already a milestone in itself.
from xnatofna.
cf99acf takes care of X360 global settings and wave banks, also adding "support" for XMA2 based on the existing XWMA feeder. It creates a technically incorrect extended header but ffmpeg doesn't complain... yet.
Fixing sound banks is the next step.
from xnatofna.
"Death vs. The IRS" boots now using just XnaToFna to convert the content... but it has got some rendering issues:
Tweet: https://twitter.com/0x0ade/status/922228083108835328
from xnatofna.
Had to fix the variation handling:
XnaToFna/src/Content/SoundBank.cs
Lines 328 to 338 in 5113314
I don't know if platform
or endianness affects this (they're two separate values for us but who knows how XACT actually sees this). platform
seems to always be 1 for PC anyway.
EDIT: It really seems to be one u32, not two u16. https://twitter.com/fesh0r/status/922586589796081664
from xnatofna.
X360 texture support has been merged into FNA: FNA-XNA/FNA@2c4121c
I got "Amazing Princess Sarah" to boot using FNA, unfortunately using hacks to get the SoundEffectReader
to read the big endian values. Sounds don't play as the game uses XMA2 for its sound effects (format == 0x0166
).
I already wiped those changes from existence as that's too hacky. Instead, I see the following ways to progress:
- XnaToFna reads any .xnb content using something similar to the FNA
ContentReader
. It'll heavily rely on reflection magic as XnaToFna could otherwise destroy any "unknown" data.- Pro: It's more in line with what XnaToFna currently does: Transform any "incompatible" content into a compatible format.
- Con: We're running the game's code outside of the game.
- New FNA extension allowing games to offer a "unknown audio format processor," using ffmpeg if available by default.
- Pro: Way easier to set up.
- Con: ffmpeg C# wrappers / bindings do exist, but it's effectively adding an optional dependency to FNA. Depending on ffmpeg as a "process" and not as a "library" is quite dirty (process overhead, platform limitations).
I don't want to "clutter" FNA with XnaToFna-only features. XnaToFna should do the heavy lifting.
Yet on the other hand, ffmpeg "support" for FNA could help with making FNA support wma and wmv, but the way I'm planning it to do is too hacky (converting from wma / wmv to ogg / ogv at runtime) and it'll only find usage in XnaToFna.
I'll sleep on it and decide on how to progress tomorrow.
from xnatofna.
@flibitijibibo What do you think is the best option here? Making XnaToFna deal with the game's content (risking issues with how XnaToFna should deal with content type readers)? Or offering a way for games (or anything sitting in between) to deal with unknown audio formats via an FNA extension / making FNA optionally depend on ffmpeg (which may only get used with XnaToFna anyway)?
from xnatofna.
Because of the ffmpeg license and bulkiness of the library in general I would keep that kind of stuff in XnaToFna.
Long-term, we need to figure out how to decode xWMA and possibly XMA without using GPL sources and add it to FACT. Support is wayyyy overdue and sidestepping it is by far the biggest headache for XNA devs (even bigger than threaded GL, which is saying something).
from xnatofna.
It seems like effects are affected by the endianness swap, too:
MojoShader expects 0xbcf00bcf
while effectCode
effectively contains 0xcf0bf0bc
.
... although honestly, I completely forgot about X360 effects...
from xnatofna.
My guess is it's going to be a problem through the entire shader. Additionally you have to worry about vfetch instancing:
https://blogs.msdn.microsoft.com/shawnhar/2010/06/17/drawinstancedprimitives-in-xna-game-studio-4-0/
It's possible the vfetch instruction could just be turned into gl_InstanceID but good luck doing all the swapping throughout the parser. SWAPXX will only get you so far:
from xnatofna.
4b79f57 adds a XNB content handler, which is implemented in actually not the worst way possible. Short explanation:
- Load the game assemblies after patching them.
- Also set up
AppDomain.CurrentDomain.AssemblyResolve
to return the assemblies when looking them up based on their simple name only.
- Also set up
- Start a FNA "game" to set up a working environment.
- Use MonoMod.Detour to hook...
ContentManager.GetContentReaderFromXnb
to set up the output stream in theCopyingStream
and to write a basic XNB header.ContentReader..ctor
to wrap the passed stream in aCopyingStream
.
- Set up
ContentTypeReaderManager.typeCreators
to useEffectTransformer
(currently bypasses effect loads) andSoundEffectTransformer
instead of FNA'sEffectReader
andSoundEffectReader
. Game.Content.Load<object>
every XNB
This seems to work surprisingly well! I initially thought about creating a custom ContentTransformer
based on the ContentReader
, but that'd just reinvent the wheel... and would introduce issues with the game's ContentTypeReader
s.
The SoundEffectTransformer
fixes any endianness issues if platform == 'x'
and currently converts XMA2 to PCM if format == 0x0166
(I still need to setup a xWMA sound effect "feeder"). It wraps the existing data in a RIFF container and passes it on to ffmpeg.
The only issue right now is a "clicking" noise at the start of every sound (in the game I'm testing this with), but other than that, it seems to work just fine.
This is effectively the last thing I wanted to get working before the weekend.
from xnatofna.
Although not strictly X360-related, I made XnaToFna "man-in-the-middle" GraphicsDeviceManager.ApplyChanges
, checking for the following environment variables:
XNATOFNA_DISPLAY_FULLSCREEN
(can be either0
or1
to force-disable / force-enable fullscreen).XNATOFNA_DISPLAY_WIDTH
XNATOFNA_DISPLAY_HEIGHT
XNATOFNA_DISPLAY_SIZE
(format:WxH
, f.e.1600x900
)
This allows me to finally fit "Amazing Princess Sarah" X360 on a monitor smaller than 1080p.
from xnatofna.
is there a way to check what version of xna a game is using?
from xnatofna.
Trying to get "Amazing Princess Sarah" Xbox 360 indie or any indie to work on Windows 10, can anyone help? No idea what I'm doing wrong.
I downloaded latest prebuilt release from this repo and following the release notes added ffmpeg.exe and fnalibs (dead links, downloaded with wayback machine)
I extract the game with Horizon:
Then put it in the folder previously prepared and run XnaToFna.exe in PowerShell:
PowerShell log:C:\Users\gioia\Downloads\XNAtoFNA> .\XnaToFna.exe
[XnaToFna] [Version] 18.5.0.42592
[XnaToFna] [ScanPath] Scanning directory C:\Users\gioia\Downloads\XNAtoFNA
[XnaToFna] [ScanPath] Found Content directory: C:\Users\gioia\Downloads\XNAtoFNA\Content
[XnaToFna] [ScanPath] Checking assembly AmazingPrincessSarah (rw)
[XnaToFna] [ScanPath] XnaToFna-ing AmazingPrincessSarah
[XnaToFna] [ScanPath] Checking assembly FNA (r-)
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Avatar -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Content.Pipeline -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Game -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Graphics -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Input.Touch -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Storage -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Video -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Xact -> FNA
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\gioia\Downloads\XNAtoFNA\Mono.Cecil.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path) in D:\Repos\XnaToFna\src\XnaToFnaUtil.cs:line 258
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil.Mdb (rw)
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil.Pdb (rw)
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil.Rocks (rw)
[XnaToFna] [ScanPath] Checking assembly MonoMod (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\gioia\Downloads\XNAtoFNA\MonoMod.exe' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path) in D:\Repos\XnaToFna\src\XnaToFnaUtil.cs:line 258
[XnaToFna] [ScanPath] Checking assembly MonoMod.RuntimeDetour (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\gioia\Downloads\XNAtoFNA\MonoMod.RuntimeDetour.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path) in D:\Repos\XnaToFna\src\XnaToFnaUtil.cs:line 258
[XnaToFna] [ScanPath] Checking assembly MonoMod.Utils (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\gioia\Downloads\XNAtoFNA\MonoMod.Utils.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path) in D:\Repos\XnaToFna\src\XnaToFnaUtil.cs:line 258
[XnaToFna] [ScanPath] Checking assembly XnaToFna (r-)
[XnaToFna] [OrderModules] Unordered:
[XnaToFna] [OrderModules] #1: AmazingPrincessSarah
[XnaToFna] [OrderModules] #2: FNA
[XnaToFna] [OrderModules] #3: XnaToFna
[XnaToFna] [OrderModules] Reordered:
[XnaToFna] [OrderModules] #1: AmazingPrincessSarah
[XnaToFna] [OrderModules] #2: FNA
[XnaToFna] [OrderModules] #3: XnaToFna
[XnaToFna] [Relink] Relinking AmazingPrincessSarah
[XnaToFna] [Relink] Updating dependencies
[XnaToFna] [Relink] Replacing dependency Microsoft.Xna.Framework.Game -> FNA
[XnaToFna] [Relink] Adding dependency XnaToFna
[XnaToFna] [Relink] Updating module attributes
[XnaToFna] [Relink] Mapping dependencies for MonoMod
[XnaToFna] [MonoMod] Cannot map dependency AmazingPrincessSarah.exe -> ((Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553), (Microsoft.Xna.Framework.GamerServices)) - not found
[XnaToFna] [Relink] Pre-processing
[XnaToFna] [Relink] Relinking (MonoMod PatchRefs pass)
[XnaToFna] [Relink] Post-processing
[XnaToFna] [PostProcess] Found type overriding Game: AmazingPrincessSarah.MainPRG)
[XnaToFna] [PostProcess] Injecting call to XnaToFnaHelper.PreUpdate into game Update
[XnaToFna] [Relink] Injecting XnaToFna entry point hook
[XnaToFna] [Relink] Rewriting and disposing module
OpenAL not found! Need FNA.dll.config?
Unhandled Exception: System.DllNotFoundException: Unable to load DLL 'soft_oal.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
at Microsoft.Xna.Framework.SDL2_FNAPlatform.CreateALDevice()
at Microsoft.Xna.Framework.Audio.AudioDevice.Initialize()
at Microsoft.Xna.Framework.FrameworkDispatcher.Update()
at Microsoft.Xna.Framework.Game..ctor()
at XnaToFna.ContentHelperGame..ctor() in D:\Repos\XnaToFna\src\Content\ContentHelperGame.cs:line 26
at XnaToFna.XnaToFnaUtil.UpdateContent() in D:\Repos\XnaToFna\src\XnaToFnaUtil.cs:line 549
at XnaToFna.Program.Main(String[] args) in D:\Repos\XnaToFna\src\Program.cs:line 130
What should I do? Thx
from xnatofna.
sup trying to port city tuesday with this
getting this weird azz error
C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1>XnaToFna.exe
[XnaToFna] [Version] 18.5.0.42592
[XnaToFna] [ScanPath] Scanning directory C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1
[XnaToFna] [ScanPath] Found Content directory: C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1\Content
[XnaToFna] [ScanPath] Checking assembly CityTuesday (rw)
[XnaToFna] [ScanPath] XnaToFna-ing CityTuesday
[XnaToFna] [ScanPath] Checking assembly EasyStorage (rw)
[XnaToFna] [ScanPath] XnaToFna-ing EasyStorage
[XnaToFna] [ScanPath] Checking assembly fbDeprofiler (rw)
[XnaToFna] [ScanPath] Checking assembly FNA (r-)
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Avatar -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Content.Pipeline -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Game -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Graphics -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Input.Touch -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Storage -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Video -> FNA
[XnaToFna] [ScanPath] Mapping Microsoft.Xna.Framework.Xact -> FNA
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1\Mono.Cecil.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path)
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil.Mdb (rw)
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil.Pdb (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1\Mono.Cecil.Pdb.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path)
[XnaToFna] [ScanPath] Checking assembly Mono.Cecil.Rocks (rw)
[XnaToFna] [ScanPath] Checking assembly MonoMod (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1\MonoMod.exe' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path)
[XnaToFna] [ScanPath] Checking assembly MonoMod.RuntimeDetour (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1\MonoMod.RuntimeDetour.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path)
[XnaToFna] [ScanPath] Checking assembly MonoMod.Utils (rw)
[XnaToFna] [ScanPath] WARNING: Cannot load assembly: System.IO.IOException: The process cannot access the file 'C:\Users\bruh johnson\Desktop\City TuesdayXNA\584E07D1\MonoMod.Utils.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
at MonoMod.Utils.MonoModExt.ReadModule(String path, ReaderParameters rp) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod.Utils\MonoModExt.cs:line 45
at XnaToFna.XnaToFnaUtil.ScanPath(String path)
[XnaToFna] [ScanPath] Checking assembly SharedXML (rw)
[XnaToFna] [ScanPath] Checking assembly XnaToFna (r-)
[XnaToFna] [OrderModules] Unordered:
[XnaToFna] [OrderModules] #1: CityTuesday
[XnaToFna] [OrderModules] #2: EasyStorage
[XnaToFna] [OrderModules] #3: FNA
[XnaToFna] [OrderModules] #4: XnaToFna
[XnaToFna] [OrderModules] Reordering CityTuesday dependency FNA.dll
[XnaToFna] [OrderModules] Reordering CityTuesday dependency XnaToFna.exe
[XnaToFna] [OrderModules] Reordering EasyStorage dependency FNA.dll
[XnaToFna] [OrderModules] Reordering EasyStorage dependency XnaToFna.exe
[XnaToFna] [OrderModules] Reordered:
[XnaToFna] [OrderModules] #1: FNA
[XnaToFna] [OrderModules] #2: XnaToFna
[XnaToFna] [OrderModules] #3: EasyStorage
[XnaToFna] [OrderModules] #4: CityTuesday
[XnaToFna] [Relink] Relinking EasyStorage
[XnaToFna] [Relink] Updating dependencies
[XnaToFna] [Relink] Updating module attributes
[XnaToFna] [Relink] Mapping dependencies for MonoMod
[XnaToFna] [MonoMod] Cannot map dependency EasyStorage.dll -> ((Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553), (Microsoft.Xna.Framework.GamerServices)) - not found
[XnaToFna] [Relink] Pre-processing
[XnaToFna] [Relink] Relinking (MonoMod PatchRefs pass)
[XnaToFna] [Relink] Post-processing
[XnaToFna] [Relink] Rewriting and disposing module
[XnaToFna] [Relink] Relinking CityTuesday
[XnaToFna] [Relink] Updating dependencies
[XnaToFna] [Relink] Updating module attributes
[XnaToFna] [Relink] Mapping dependencies for MonoMod
[XnaToFna] [MonoMod] Cannot map dependency CityTuesday.exe -> ((Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553), (Microsoft.Xna.Framework.GamerServices)) - not found
[XnaToFna] [Relink] Pre-processing
[XnaToFna] [Relink] Relinking (MonoMod PatchRefs pass)
Unhandled Exception: System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
at Mono.Collections.Generic.Collection`1.get_Item(Int32 index)
at MonoMod.MonoModder.PatchRefsInMethod(MethodDefinition method) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod\MonoModder.cs:line 1804
at MonoMod.MonoModder.PatchRefsInType(TypeDefinition type) in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod\MonoModder.cs:line 1725
at MonoMod.MonoModder.PatchRefs() in D:\Repos\XnaToFna\lib-projs\MonoMod\MonoMod\MonoModder.cs:line 1592
at XnaToFna.XnaToFnaUtil.Relink(ModuleDefinition mod)
at XnaToFna.XnaToFnaUtil.RelinkAll()
at XnaToFna.Program.Main(String[] args)
from xnatofna.
Is there any way to get Ancient's Protect Me Knight! (まもって騎士) working through porting it to FNA? I have no idea how to code or program and ran into these problems with the log I got in the attached log.
from xnatofna.
Is there any way to get Ancient's Protect Me Knight! (まもって騎士) working through porting it to FNA? I have no idea how to code or program and ran into these problems with the log I got in the attached log.
Surprisingly I was working on this yesterday. drop me a line at [email protected]
from xnatofna.
Related Issues (20)
- Latest release has wrong behavior on Windows HOT 4
- IndexOutOfRangeException when relinking Super Puzzle Platformer Deluxe HOT 4
- Remove FFmpeg use in WaveBank/SoundEffect processors HOT 3
- Add "Platform" modes, isolate tools based on target HOT 3
- new build requirements? HOT 1
- Move to FNA.NetStub
- Remove XNA Relinking Process HOT 1
- Is this used to play Xbox Live arcade indie games on the pc? HOT 2
- Develop Steam-FNA (Codename Rhys) HOT 10
- The Monolithic WMA/WMV Content Thread HOT 5
- Old FNA games HOT 13
- Crashing on Mac HOT 1
- Is it can support for XNA3.1's game...? HOT 1
- hello, do you know how to make text input in ImGuiCS XNA work? I've been trying to fix it for a very long time but it doesn't work
- Why file suffix .xnb_? (Hints for CSTW) HOT 4
- Content directory HOT 5
- Wave bank fatal error (non-negative number required) with several XNA games HOT 1
- NullReferenceException when running build compiled from source HOT 11
- Loading game ModuleDefinition can fail on macOS HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from xnatofna.