Prog8 language and compiler topic

All aspects of programming on the Commander X16.
User avatar
desertfish
Posts: 1093
Joined: Tue Aug 25, 2020 8:27 pm
Location: Netherlands

Re: Prog8 language and compiler topic

Post by desertfish »

Those versions have been deprecated, you should use R42 at all times.
Sometimes the code will still work with R41 or older, but it is useless to try to debug any issues as R42 or newer is where we stand now.

Also make sure you're not trying to run C64 examples on the X16. The .PRG will load, but will crash or hang.
X16 example code is in examples/cx16, and should be compiled with -target cx16.
*some* examples in the examples directory itself are compatible with both machines, this will be mentioned in a comment in the code if this is the case. But you STILL have to compile it specifically for the cx16 target. PRGs cannot be reused.

I noticed that a few links in the Prog8 documentation still linked to the old emulator software, I have updated those now.
mapifisher
Posts: 7
Joined: Fri Apr 21, 2023 10:59 pm

Re: Prog8 language and compiler topic

Post by mapifisher »

Ah, needed to find R42. The git repository I was looking at only had up to R41. Found R42 and all is well. Thanks!
mapifisher
Posts: 7
Joined: Fri Apr 21, 2023 10:59 pm

Re: Prog8 language and compiler topic

Post by mapifisher »

A little disappointing that array sizes are so limited.
Compiling program stereo.p8
ERROR file:///Users/mpf/Downloads/stereo.p8:37:9: float array length must be 1-51
ERROR file:///Users/mpf/Downloads/stereo.p8:56:24: byte array length must be 1-256
User avatar
desertfish
Posts: 1093
Joined: Tue Aug 25, 2020 8:27 pm
Location: Netherlands

Re: Prog8 language and compiler topic

Post by desertfish »

It's because the 6502 can only index over 256 bytes...

You can work around it with a uword pointer variable in combination with a memory() block , but the resulting code will not be very efficient.
User avatar
desertfish
Posts: 1093
Joined: Tue Aug 25, 2020 8:27 pm
Location: Netherlands

Re: Prog8 language and compiler topic

Post by desertfish »

:idea: Prog8 version 8.12 has been released https://github.com/irmen/prog8/releases/tag/v8.12
User avatar
desertfish
Posts: 1093
Joined: Tue Aug 25, 2020 8:27 pm
Location: Netherlands

Important Re: Prog8 language and compiler topic

Post by desertfish »

:!: Prog8 version 8.13 has been released https://github.com/irmen/prog8/releases/tag/v8.13

this one contains a bunch of optimizations to the expression evaluation code generation and many programs will be smaller and faster now
I think this is the last 8.xx release before version 9 which will introduce a bunch of breaking changes.
You can start reading about those here https://prog8.readthedocs.io/en/latest/todo.html
User avatar
desertfish
Posts: 1093
Joined: Tue Aug 25, 2020 8:27 pm
Location: Netherlands

version 8.14 released

Post by desertfish »

:idea: Prog8 version 8.14 has been released: https://github.com/irmen/prog8/releases/tag/v8.14

It contains a few bugfixes. I hope these were the last before version 9.0 comes out.
User avatar
ahenry3068
Posts: 1131
Joined: Tue Apr 04, 2023 9:57 pm

Re: Prog8 language and compiler topic

Post by ahenry3068 »

I'm very excited for version 9 if word array will actually be 256 elements.
I want to port the Mystify Clone to Prog8 and actually got started but I have
to store more than 128 values. :( ... I think it's actually going to run smoothly
in Prog8 with Integer Math. The line routine is actually pretty fast. I can't
tell what direction it draws in. LINE X1,Y1,X2,Y2 looks just like LINE X2,Y2,X1,Y1
User avatar
desertfish
Posts: 1093
Joined: Tue Aug 25, 2020 8:27 pm
Location: Netherlands

Re: Prog8 language and compiler topic

Post by desertfish »

Yeah if you can declare the word arrays as "split" arrays, you will be able to extend them to a maximum of 256 elements.
Most, but not all, array operations will be implemented on "split" arrays so there is a small chance that your code triggers an unsupported operation. Just try it out once 9.0 is released!
User avatar
ahenry3068
Posts: 1131
Joined: Tue Apr 04, 2023 9:57 pm

Re: Prog8 language and compiler topic

Post by ahenry3068 »

Any ETA on Version 9
Post Reply