Page 1 of 1

XC=BASIC

Posted: Thu Dec 31, 2020 4:48 pm
by jnewman

I saw this basic cross-compiler on YouTube "8-bit Show and Tell 2".  This is a cool project and I was curious what others thought about it, especially regarding the possibility of getting it to work with the X16.  It looks like some of the memory locations are configurable but not all based on what I was reading.  There is a github page with source and they are looking for contributors.  It looks like some of the code is written in D (https://dlang.org/) and some in Assembly.

It may also be possible to use this project as a guide for developing a similar branch/offshoot for something a little more tailored to the X16.  The cross compiler is using a grammar parsing library that could be helpful for that: https://github.com/PhilippeSigaud/Pegged

https://xc-basic.net/doku.php

https://github.com/neilsf/XC-BASIC

Compiler Options: https://xc-basic.net/doku.php?id=compiler_options

Memory Layout: https://xc-basic.net/doku.php?id=memory_layout

Examples: https://xc-basic.net/doku.php?id=examples

 





 


XC=BASIC

Posted: Tue Jan 19, 2021 10:23 am
by neils

XC=BASIC is able to compile to platforms other than the C-64, however that branch of code is not yet officialy released. VIC-20 support is somewhat done and X16 can be added, too. It is relatively easy because the compiler's source code (the one written in D) does not need to be changed, only those .asm files that are platform-dependent must be copied and ported to the X16. It's basicaly a standard library that's less than 1K.



If someone would like to contribute with code, I'll be happy (and very grateful) to invite you to the project. I'll also explain what exactly needs to be written.



If anyone interested, let me know. Thanks


XC=BASIC

Posted: Sat Dec 31, 2022 7:50 pm
by Jakebullet70

Looks like support for the Commander 16 has been added. This includes sprites, sound and interrupts. (pre-release)

I have done some XC=Basic programming on the C64 and it is supper fast!

Commander X16 support [XC=BASIC v3.x] (xc-basic.net)

 

Take a look at how interrupts are supported!  very cool!  Interrupts [XC=BASIC v3.x] (xc-basic.net)