Prog8 version 10.1 has been released: https://github.com/irmen/prog8/releases/tag/v10.1
Please upgrade from 10.0, as a buch of important fixes have been made.
Also added cx16.get_program_args() and cx16.set_program_args(), and made a couple more code generator improvements.
(donation: If you'd like to buy me a hot coffee or spicy pizza, keeping the project going, you can do so at https://ko-fi.com/irmen Thanks.)
Prog8 language and compiler topic
- desertfish
- Posts: 1101
- Joined: Tue Aug 25, 2020 8:27 pm
- Location: Netherlands
Re: Prog8 language and compiler topic
Hi good afternoon.
I'm new to playing with the x16 emu at 75 years old.
I come from Germany.
I'm looking for a compiler that works well with the x16 and also
It's not as difficult to program as the CC65.
I was impressed by this prog8 and will use it.
The x16 is already used a lot with the prog8.
and there is already a lot of help for you if you
not progressing.
Maybe you can buy the x16 in Germany soon.
I would then buy one with accessories.
Thanks.
greeting
I'm new to playing with the x16 emu at 75 years old.
I come from Germany.
I'm looking for a compiler that works well with the x16 and also
It's not as difficult to program as the CC65.
I was impressed by this prog8 and will use it.
The x16 is already used a lot with the prog8.
and there is already a lot of help for you if you
not progressing.
Maybe you can buy the x16 in Germany soon.
I would then buy one with accessories.
Thanks.
greeting
Re: Prog8 language and compiler topic
What I'm missing at an overview are the commands from prog8 that can be used in the x16.
A list of the commands and the values passed would be helpful for this wonderful prog8 compiler.
the porg8 deserves it and so does the x16.
Thanks.
greeting
A list of the commands and the values passed would be helpful for this wonderful prog8 compiler.
the porg8 deserves it and so does the x16.
Thanks.
greeting
- desertfish
- Posts: 1101
- Joined: Tue Aug 25, 2020 8:27 pm
- Location: Netherlands
Re: Prog8 language and compiler topic
There are 2 main reasons there is no reference manual for prog8 (yet):
1. prog8 still is under active development and things still change or get added
2. I don't have time to write it.
for now, just consult the source code of the library modules and the example applications.
Also note that all of the X16's kernal routines are found under the same name in cx16, or in cbm if they are part of the CBM-compatible kernal routines (such as PLOT.)
1. prog8 still is under active development and things still change or get added
2. I don't have time to write it.
for now, just consult the source code of the library modules and the example applications.
Also note that all of the X16's kernal routines are found under the same name in cx16, or in cbm if they are part of the CBM-compatible kernal routines (such as PLOT.)
Re: Prog8 language and compiler topic
Hello, thanks for the help.
What you wrote helped me.
Thanks.
greeting
What you wrote helped me.
Thanks.
greeting
Re: Version 10.1 released
Wait! I haven't upgraded from 9.7 yet!desertfish wrote: ↑Sun Feb 04, 2024 3:35 pm Prog8 version 10.1 has been released: https://github.com/irmen/prog8/releases/tag/v10.1
Please upgrade from 10.0, as a buch of important fixes have been made.
Also added cx16.get_program_args() and cx16.set_program_args(), and made a couple more code generator improvements.
(donation: If you'd like to buy me a hot coffee or spicy pizza, keeping the project going, you can do so at https://ko-fi.com/irmen Thanks.)
I want that, get_program_args(), though, so here I go...
- desertfish
- Posts: 1101
- Joined: Tue Aug 25, 2020 8:27 pm
- Location: Netherlands
next version is coming
The next version is coming soon. If you can, please help me test the preview build of it.
you can snatch it from the github build action https://github.com/irmen/prog8/actions/runs/8240607070
biggest change is that the type checks for booleans are much stricter now. This enables better code generation (and less bugs).
you can snatch it from the github build action https://github.com/irmen/prog8/actions/runs/8240607070
biggest change is that the type checks for booleans are much stricter now. This enables better code generation (and less bugs).
Re: Prog8 language and compiler topic
Hi good afternoon.
the prog8 is a great thing.
Even at 75 years old, I can cope well with it.
It takes a little longer than it does for younger people, but it works.
For the new version, I would like the array byte to be able to hold more than 256 byte values, e.g. 1024 or 2048 bytes.
I would also like a command to write data from the video vera into a bank and back into the video ram vera.
You then take several banks for the data from Video-Vera.
Thanks.
greetings
the prog8 is a great thing.
Even at 75 years old, I can cope well with it.
It takes a little longer than it does for younger people, but it works.
For the new version, I would like the array byte to be able to hold more than 256 byte values, e.g. 1024 or 2048 bytes.
I would also like a command to write data from the video vera into a bank and back into the video ram vera.
You then take several banks for the data from Video-Vera.
Thanks.
greetings
- desertfish
- Posts: 1101
- Joined: Tue Aug 25, 2020 8:27 pm
- Location: Netherlands
Re: Prog8 language and compiler topic
You can use a uword pointer variable to point to an arbitrary length piece of memory. And you can initialize it with the memory() builtin function if you don't want to pin it on a fixed memory location.
The "real" arrays will likely always stay constrained to 256 bytes of element content because the 6502 cannot index beyond a single page of memory. Making this bigger would make the compiler much more complex and the resulting code much more inefficient (unless ofcourse the <256 case is optimized back but I don't have the time to make all that in the compiler...
About copying data to and from vram: for text screens like I said above, the VTUI library already contains those routines. I am not sure yet if I want to add something similar to the textio library. It's really more of the basics of a text windowing system (like VTUI) than part of a text output library. Then again, textio already contains routines to scroll the whole screen in all directions which is kinda special too....
The "real" arrays will likely always stay constrained to 256 bytes of element content because the 6502 cannot index beyond a single page of memory. Making this bigger would make the compiler much more complex and the resulting code much more inefficient (unless ofcourse the <256 case is optimized back but I don't have the time to make all that in the compiler...
About copying data to and from vram: for text screens like I said above, the VTUI library already contains those routines. I am not sure yet if I want to add something similar to the textio library. It's really more of the basics of a text windowing system (like VTUI) than part of a text output library. Then again, textio already contains routines to scroll the whole screen in all directions which is kinda special too....
Re: Prog8 language and compiler topic
Hello thanks for the information.
I didn't know that the 6502 was tailored for the 256-byte array at optimal speed.
I saw in the memory area of the x16, that it has several storage areas that you can use as a user.
this prog8 is an excellent wonderful compiler for den x16.
The prog8 is easy to learn, even for me as a beginner.
I quickly found my way around it and continue to admire the new discoveries I make.
The Prog8 is excellent and wonderful in graphics and text and super fast in execution and low memory consumption.
the diskspeed also in vram /ram....super.....
is thes banking 1-255 ?:
cx16.rambank(1...255) with 2mb
Can you please save from the rambank ?
cx16.rambank(1...255)
diskio.save("benchmark.dat",......
Can you please save from the vram ?
diskio.vsave("benchmark.dat",......
What a great job you did with the Prog8.
Thanks.
greeting
I didn't know that the 6502 was tailored for the 256-byte array at optimal speed.
I saw in the memory area of the x16, that it has several storage areas that you can use as a user.
this prog8 is an excellent wonderful compiler for den x16.
The prog8 is easy to learn, even for me as a beginner.
I quickly found my way around it and continue to admire the new discoveries I make.
The Prog8 is excellent and wonderful in graphics and text and super fast in execution and low memory consumption.
the diskspeed also in vram /ram....super.....
is thes banking 1-255 ?:
cx16.rambank(1...255) with 2mb
Can you please save from the rambank ?
cx16.rambank(1...255)
diskio.save("benchmark.dat",......
Can you please save from the vram ?
diskio.vsave("benchmark.dat",......
What a great job you did with the Prog8.
Thanks.
greeting