TerryCavanagh / boscaceoil

A simple music making program
http://boscaceoil.net/
583 stars 73 forks source link

Proposal to Migrate the codebase to C++ with the help of Community #87

Open Pikachuxxxx opened 3 years ago

Pikachuxxxx commented 3 years ago

Bosca Ceoil has served in making thousands of games and will continue to do so. But with Apple ousting support for AIR in coming future and the installation getting more complicated to get it running on Apple platforms I guess migrating to C++ would help Bosca Ceoil serve for many years to come and also make it work on a wide range of devices. I think with us the community taking the bigger hand and Terry giving us input we can make this happen. Please let me know your opinions on this proposal.

TerryCavanagh commented 3 years ago

I'd have no objections to this, but I don't see it happening: Bosca's main dependency is the SiON synth library, and there's no C++ port for that (and it's beyond my abilities to port it).

The most promising direction would seem to be this: https://github.com/TerryCavanagh/boscaceoil/issues/47

i.e. a Haxe port. Haxe compiles to native C++ code, and is close enough to Adobe AIR that it would be an easy port. This would still depend on the SiON library, which has been partially ported to haxe (https://github.com/gunnbr/SiON). However, any time I've tried to use the haxe SiON port, I haven't been able to get it to work. I check back in every six months or so, but no luck yet.

TerryCavanagh commented 3 years ago

Because this is the most recent issue of this type: I've just checked in again, and as of Feb 9th 2020, there's no working haxe port of SiON. The most recent attempts I can find do compile to native, but don't produce any sounds, and crash if you actually try to run any of the examples. HTML5 (and Flash!) targets don't compile at all. So it doesn't seem as though there's any progress on that front, sadly.

Pikachuxxxx commented 3 years ago

I guess the only way is to port SiON to C++, I think that's the only way and it doesn't look too impossible for the near future. I will try to do that if day comes that bosca doesn't work. I wonder how hard that could be.

TerryCavanagh commented 1 year ago

A 2023 update: some attempts were made last year to port SiON to haxe, but so far nobody has been able to get it to a usable point. It might not be possible!

Dot32Dev commented 1 year ago

Is the sound library used by SiON available online? Or can it be retrieved in some way? I'd be interested in having a look at it and potentially doing something with it. I was digging around in SiON's source code but I couldn't see anything that looked like sound files, though I may be missing something.

auroraanna commented 1 year ago

@Dot32IsCool https://sites.google.com/site/sioncenter/ has download and source code links

Dot32Dev commented 1 year ago

@Dot32IsCool https://sites.google.com/site/sioncenter/ has download and source code links

Those download links don't work for me (This site can't be reached error), but regardless, i'm less looking to download the action script library and more looking to download any sound font or audio assets it uses. Pointers to where in the source code audio synthesis is done would also be nice, as I couldn't find it when I went looking.

The source code is available on github, so no need to download it :>

superseeker13 commented 1 year ago

Another possible solution would be Apache Royale. The main upside is being able to keep some of the current A3 code.

superseeker13 commented 1 year ago

I have forked the branch and will look into it later. Hopefully I can clean up the build process while I'm at it, although that should probably be a seperate branch