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

Add TIC-80 libretro renderer #846

Merged
merged 59 commits into from
Jun 20, 2019
Merged

Add TIC-80 libretro renderer #846

merged 59 commits into from
Jun 20, 2019

Conversation

RobLoach
Copy link
Contributor

@RobLoach RobLoach commented Jun 1, 2019

This adds a TIC-80 libretro core for playing TIC-80 cartridges in RetroArch. There are some issues that I'd love attention on...

TODO

  • Crackling audio
  • Fix up the color palette
  • Move libretro-common to 3rd-party submodule?
  • Is set(CMAKE_POSITION_INDEPENDENT_CODE ON) in the correct place?
  • Clean up more of the code
  • Platform Testing
    • Linux
    • MacOSX
    • Windows
    • Raspberry Pi
  • Update the Makefile with libretro buildbot PLATFORM definitions (cross-compile)

Usage

  1. Make sure RetroArch is installed.
  2. Build it
    cmake .
    make
    
  3. Run it
    retroarch -L lib/tic80_libretro.so demos/sfx.tic
    

Screenshot

Here is 8-Bit Panda running through the libretro core...

tic80_libretro

Fixes #519 libretro/libretro-lutro#52

@RobLoach RobLoach changed the title libretro: Add libretro renderer libretro: Add libretro core Jun 2, 2019
@RobLoach RobLoach changed the title libretro: Add libretro core libretro: Add TIC-80 libretro core Jun 2, 2019
Thanks to @fr500 for this recommendation.
This adds some remaining API docs, along with inline comments.
Copy link
Owner

@nesbox nesbox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be better if you move tic80_libretro.c and dependent files to the src/system folder.
@RobLoach What do you think?

@RobLoach
Copy link
Contributor Author

How about src/system/libretro/tic80_libretro.c? Don't want to clutter the folder too much.

@RobLoach
Copy link
Contributor Author

Moved to src/system/libretro. Thanks!

@RobLoach
Copy link
Contributor Author

Lots of commits. When merging, you may want to do a squash & merge. Or not, I'll leave that to you 😄

y3JEz

Copy link
Owner

@nesbox nesbox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let's merge it :)

@nesbox nesbox merged commit e008b6d into nesbox:master Jun 20, 2019
@paradadf
Copy link

When the makefile is properly updated, I plan to add this to recalbox. Thanks both for your work!

@hugh-hoang
Copy link

hugh-hoang commented Oct 14, 2019

@RobLoach Sorry if this is a dumb question because I have very limited knowledge on how cross compiling work (still learning...) but is this possible to make more build targets for this core for the Nintendo devices such as 3DS and Switch? Retroarch running there with the devkitpro toolchains.

Thanks!

@RobLoach
Copy link
Contributor Author

@hugh-hoang Quite possibly, yes! While I haven't tested it, nor do I understand it entirely, but it should be possible to...

  1. git clone https://github.com/libretro/libretro-super.git
  2. Add the platform recipe to https://github.com/libretro/libretro-super/tree/master/recipes
  3. Run...
    ./libretro-fetch.sh tic80
    SINGLE_CORE=tic80 ./libretro-buildbot-recipe.sh recipes/nintendo/libnx
    

@hugh-hoang
Copy link

@RobLoach Cool thanks, thats a good start and I will try then we will see.

@BarOSGithub
Copy link

Please make a .dol version for the Wii.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

How about a possible Libretro core?
8 participants