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

S7 Scheme language support #2113

Merged
merged 20 commits into from
Feb 5, 2023
Merged

S7 Scheme language support #2113

merged 20 commits into from
Feb 5, 2023

Conversation

sthilaid
Copy link
Contributor

@sthilaid sthilaid commented Feb 2, 2023

These changes add scheme support to tic-80

@nesbox
Copy link
Owner

nesbox commented Feb 2, 2023

Please make all the builds passed https://github.com/nesbox/TIC-80/actions/runs/4074721024
image

@nesbox nesbox marked this pull request as draft February 2, 2023 14:45
@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 2, 2023

@nesbox I'm having a hard time with the rpi-baremetal and n3ds platforms with those jmp issues. I need to distinguish those platforms so that I can get them to use the other set of jmps definitions but I don't know how to. Is there any macros that you know that would distinguish them?

Thanks!

@nesbox
Copy link
Owner

nesbox commented Feb 3, 2023

Try something like

#if defined(BAREMETALPI) || defined(_3DS)
#endif

#if defined(BAREMETALPI) || defined(_3DS)

@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 3, 2023

and... nope! but maybe those need to be included from somewhere... I'll look more in details tonight. At least, IO should be officially disabled now :)

@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 4, 2023

okay, I need more help. I managed to make all the targets compile, but there remains this link issue on baremetalpi that I have no clue why it's happening. It seems that the (now renamed) libs7scheme.a lib doesn't get linked properly with libtic80core for some reason... :( Can anyone help me?

@sogaiu
Copy link

sogaiu commented Feb 4, 2023

@sthilaid Not sure, but is it possible something for s7 needs to be added around here?

@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 4, 2023

@sogaiu omg, you're a genius! hehe I didn't know that the baremetal target had it's own makefile...

@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 4, 2023

image

@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 4, 2023

i'm noticing that Janet and Scheme would probably be need to be added to the export-stub actions once they make it fully into the version.

@sthilaid sthilaid marked this pull request as ready for review February 4, 2023 14:14
@nesbox
Copy link
Owner

nesbox commented Feb 4, 2023

Yes, pls add scheme to export stubs here

script: [lua, moon, fennel, ruby, js, wren, squirrel, wasm]

@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 4, 2023

I don't know why this would fail, I simply added scheme to the workflow list. Was there more to do? I don't know much about github workflows...

@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 5, 2023

ok i think we're good to go!

@nesbox
Copy link
Owner

nesbox commented Feb 5, 2023

Everything looks good now and I'm going to merge it, one thing could you please make vendor/s7 folder as a submodule to your repo, perhaps as separate pull request.
Thank you for the help.

BTW, pls don't forget add yourself to the Credits page https://github.com/nesbox/TIC-80#credits

@nesbox nesbox merged commit 27501f6 into nesbox:main Feb 5, 2023
@sthilaid
Copy link
Contributor Author

sthilaid commented Feb 5, 2023

I wanted to use s7 as a submodule, but I wasn't able to clone their git repo (it's hosted in the Standford university gitlabs https://cm-gitlab.stanford.edu/bil/s7). I also had to edit it to disable io and make it compile on some targets, so we're not on sync with them. I will try to get my changes merged up and see if they can make their repo more accessible.

I would love to continue contributing to tic80, I'm having a ton of fun. I have a few questions about that:

  • Is there a good place where all the tic80 contributors to chat about changes? I'm discussing in the tic80 general chat but it seems this should be more a place for users to talk about stuff...
  • I'm working on code editor changes to add support for "structured editing" of lisp-like language. I'll send a pull request soon, but I also want to make an emacs-like mode to the editor. I've put the option to toggle it on in the code theme config, but I feel it's a bit obscure... Is there a better place for that?

Thanks!

@nesbox
Copy link
Owner

nesbox commented Feb 6, 2023

Is there a good place where all the tic80 contributors to chat about changes?

Usually, we discuss changes directly in the Issues.

I've put the option to toggle it on in the code theme config, but I feel it's a bit obscure... Is there a better place for that?

You already put the option to theme config and main menu in your PR :) there is no better place for it

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.

3 participants