XC-BASIC icon indicating copy to clipboard operation
XC-BASIC copied to clipboard

Port to Commodore 128 in C128 mode

Open odflor opened this issue 5 years ago • 7 comments

Are there plans to make it work on Commodore 128 in C128 mode?

It Is hard to make it work?

Best Regards

odflor avatar Dec 20 '19 22:12 odflor

Hi Well first I must admit that I don't know the C128 very well.. Targeting the compiler to other platforms is currently on the way and we're working on the C Puls/4 and VIC-20 targets. Adding other targets should be relatively easy. I think the bottleneck is the assembler backend, which is DASM in our case. We can only target those CPU's that DASM supports. What CPU is ticking in the C128 when in C128 mode? Forgive me for the dumb question ;-)

neilsf avatar Dec 22 '19 14:12 neilsf

Hi: The c64 and the c128 does not vary very much. The processor it uses is 8502, that is complete compatible with the 6502, only it can run at 2mhz. 1mhz default.The memory mapping of c128 vary some but not too much, because it have 128k of ram and can be expanded to 2mb, and the rom it have is larger. But on the basis much of the programs can run on a c128 with some patches.

odflor avatar Dec 22 '19 20:12 odflor

Okay, so far it seems doable but requires quite a lot of research from my side. Are you interested in contributing to the project? Either with your advises or with actually porting the runtime library to the C128. It's a pretty small library, less than 1K currently. Thanks

neilsf avatar Dec 22 '19 20:12 neilsf

Yes!I want to collaborate in whatever i can. I have full c128 documentation available. And I know some of programming. Maybe I can help with something. I'm not strong on assembler but I will do that I can.

odflor avatar Dec 23 '19 12:12 odflor

That's great! Things we can start with:

  • Read thread no #82 for some background
  • Check these files: https://github.com/neilsf/XC-BASIC/tree/feature/multiarch/lib/c64 - it should be enough to rewrite these three for any target system including the C128
  • Join our Slack channel where we can discuss all the details. Here's the public link: https://join.slack.com/t/xcbasic/shared_invite/enQtODM1NjI3MTE0MDM1LTZlOTg5NmU5OWVkM2ZkZjE4OTU4MjgyM2U0MWUxMzhmZGYwMDlhOWQyYTY5MTYxMzI3ZDQ3MzgzNzA5YzFhODU

Many thanks

neilsf avatar Dec 24 '19 07:12 neilsf

* Join our Slack channel where we can discuss all the details. Here's the public link: https://join.slack.com/t/xcbasic/shared_invite/enQtODM1NjI3MTE0MDM1LTZlOTg5NmU5OWVkM2ZkZjE4OTU4MjgyM2U0MWUxMzhmZGYwMDlhOWQyYTY5MTYxMzI3ZDQ3MzgzNzA5YzFhODU

Slack message: This invite link is no longer active.

I think something is wrong on the slack link.

odflor avatar Dec 24 '19 12:12 odflor

It just expired. Here's the new one: https://join.slack.com/t/xcbasic/shared_invite/enQtODcyNTUwODk4MTE0LWZkNzEzZTRjMTA3ODA3MTVjNTY0NDIwMjFjZjJmNzdmNjNlMWNiNDljNTNhOTI1ODhjYzNhMTlkNDJiNGFiOGI

neilsf avatar Dec 24 '19 13:12 neilsf