Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] HSP and GB Player support #8067

Open
wants to merge 2 commits into
base: master
from

Conversation

5 participants
@endrift
Copy link
Contributor

commented May 2, 2019

Still very rough, lots left to do:

  • Figure out how to handle the added dependency
  • Fix audio
  • Get GBC working properly
  • Add UI options
  • Refactor timing code
  • Get savestates working
  • Get working with mgba/master
  • Optimize it so it's actually fast
  • Get GBP features (rumble) working

@endrift endrift force-pushed the endrift:hsp branch from 08fd8a1 to da1e7be May 2, 2019

@endrift endrift force-pushed the endrift:hsp branch from da1e7be to ce38f20 May 2, 2019

@endrift endrift force-pushed the endrift:hsp branch from ce38f20 to cde0f0e May 2, 2019

Show resolved Hide resolved CMakeLists.txt Outdated
if (_M_X86)
add_subdirectory(Externals/Bochs_disasm)
endif()
add_subdirectory(Externals/cpp-optparse)
add_subdirectory(Externals/glslang)
add_subdirectory(Externals/imgui)

set(DISABLE_FRONTENDS ON CACHE BOOL "" FORCE)

This comment has been minimized.

Copy link
@lioncash

lioncash May 2, 2019

Member

You may want to consider making these qualified upstream in mGBA then modifying them here, (like MGBA_DISASBLE_DEPS), etc. These variables can now potentially leak into other dependencies. The build is essentially more fragile now.

This comment has been minimized.

Copy link
@lioncash

lioncash May 2, 2019

Member

Should have added this during the initial review, but, this can be a lot to ask for a separate project. I mean, going, "lol just change ur build option flag names", isn't realistic in some scenarios, especially if the emulator is already being used as a lib elsewhere, since that'd be a minor forward-breaking change. Because of that, I definitely won't block on this or anything if that's too much of a chaotic change (hopefully it wasn't implied that I would on the initial review message 😅).

Pinging the CMake wiz @Orphis. Is there a nicer way to avoid this that doesn't involve upstream changes, or is that the only way in this scenario?

This comment has been minimized.

Copy link
@Orphis

Orphis May 2, 2019

Member

It depends on the extent of functionality that this option adds.
Possibly the best option would be to just use add_subdirectory(Externals/mgba EXCLUDE_FROM_ALL) without any special option. The final solution will have all the targets, but they won't be built unless they're actually used.

Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceARAMExpansion.cpp Outdated
Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceARAMExpansion.cpp Outdated
Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceARAMExpansion.h Outdated
Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceGBPlayer.cpp Outdated
Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceGBPlayer.cpp Outdated
Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceGBPlayer.cpp Outdated
Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceGBPlayer.cpp Outdated
Show resolved Hide resolved Source/Core/Core/HW/HSP/HSP_DeviceGBPlayer.cpp Outdated
Show resolved Hide resolved CMakeLists.txt Outdated
if (_M_X86)
add_subdirectory(Externals/Bochs_disasm)
endif()
add_subdirectory(Externals/cpp-optparse)
add_subdirectory(Externals/glslang)
add_subdirectory(Externals/imgui)

set(DISABLE_FRONTENDS ON CACHE BOOL "" FORCE)

This comment has been minimized.

Copy link
@Orphis

Orphis May 2, 2019

Member

It depends on the extent of functionality that this option adds.
Possibly the best option would be to just use add_subdirectory(Externals/mgba EXCLUDE_FROM_ALL) without any special option. The final solution will have all the targets, but they won't be built unless they're actually used.

Show resolved Hide resolved CMakeLists.txt Outdated
Show resolved Hide resolved CMakeLists.txt Outdated
Show resolved Hide resolved CMakeLists.txt Outdated
@endrift

This comment has been minimized.

Copy link
Contributor Author

commented May 2, 2019

Will be fixing stuff upstream as needed, don't worry. I'm at lunch right now but I have a good chunk of this stuff resolved already. Will finish when I get home.

@endrift

This comment has been minimized.

Copy link
Contributor Author

commented May 2, 2019

Might splitting out the base HSP changes from the GBP changes into separate PRs make sense? That was we can get the easy stuff merged first, not that it's actually useful without the GBP changes.

@endrift endrift force-pushed the endrift:hsp branch 6 times, most recently from 04afdef to 08bd121 May 3, 2019

@endrift endrift force-pushed the endrift:hsp branch from 08bd121 to 3d8a68c May 6, 2019

@endrift endrift force-pushed the endrift:hsp branch 2 times, most recently from 23a6ef1 to 2df8c30 May 6, 2019

@endrift endrift force-pushed the endrift:hsp branch from 2df8c30 to 6164a5e May 6, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.