Of course you can ask. Please do. All questions will improve GCBASIC.
Below is the error list from build 1444 ( which I have just built ). If you look at your source program errors ( there are many ) then this would help you.
The compiler was crashing with the large number of parameters passed. The GCBASIC function called I2CSend ( which you are calling ) does not accept those parameters and the compiler simply crashed. In build 1444 there is a new capability to ensure this crash does not happen and a user error message is issued. An example TEST_Oxygen_Sensor_0010.gcb (111): Error: Maximum number of parameters (50) exceeded
I can send you the new compiler but it may be best to wait for the update to be published.
So, now the compiler is NOT crashing ( here... ) I can see the errors.
I2CSEND is being called without the correct setup
I2CSEND is being called with incorrect parameters.
Missing labels
The errors from i2c.h are caused by issue #1 above.
Below is the error list from build 1444 ( which I have just built ). If you look at your source program errors ( there are many ) then this would help you.
Thanks Evan.
Let's wait for the update then 😉
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I would not have installed to Program Files (x86) as this can lead to many issued with 3rd party tools - just be aware for when/if you hit issues. I saw the original installation in the root and thought it was my bad. I might follow your advice and reinstall from fresh.
Do you get build 1444? Yes Do you get the error messages? Yes, unfortunately but yes, great!
Last edit: Flotul 2024-11-26
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
This is not about a "compiler" issue but much more likely mine (😁).
I don't see why no HEX file is generated with my appended test file. I also appended the task manager's logfile.
BTW, I compiled other programs that did work great so there must be a beam in my eye.
...and the second file is here.
Thank you.
The code is not fully ported from the source.
$ should be 0x and there are many more conversion needed.
- [] does not work on GCBASIC. These wont work
I2CSend SDA,SCL,I2CDevice,[$40,144,96,96,144]
But, why not just use the GCBASIC SSD1306 GLCD driver ? It will be a lot faster and it will work. None of the following would be need.
..DEMOS\GLCD_Solutions\GLCD_Simple_Demonstration_Solutions\GLCD_Simple_Demonstration_Software_I2C_18F16Q20_for_SSD1306_128_64@16.gcb
Just rename the chip, change the ports and it should work.
Here is a quick version.
Clearly the old chip with little RAM has few GLCD capabilities.
Thanks a lot Anobium.
I'm still discovering GCB and its capacities and it looks really amazing!!!
I'll definitively use the existing stuff much better written as I, hobbyist, would be able to.
So I'll give it a try tonight 👍
Since I gently move from PICBasic as you may have seen, I'm not that aware about the conversions I have to make unless I'm warned by the compiler.
If I may, I would like to ask about the task manager's window after hitting the F6 key: where would I see the compiling errors I made please?
Of course you can ask. Please do. All questions will improve GCBASIC.
Below is the error list from build 1444 ( which I have just built ). If you look at your source program errors ( there are many ) then this would help you.
The compiler was crashing with the large number of parameters passed. The GCBASIC function called I2CSend ( which you are calling ) does not accept those parameters and the compiler simply crashed. In build 1444 there is a new capability to ensure this crash does not happen and a user error message is issued. An example
TEST_Oxygen_Sensor_0010.gcb (111): Error: Maximum number of parameters (50) exceeded
I can send you the new compiler but it may be best to wait for the update to be published.
So, now the compiler is NOT crashing ( here... ) I can see the errors.
BR
Evan
Thanks Evan.
Let's wait for the update then 😉
If you are confident with replacing a few files within your installation then I will upload a ZIP for you.
Let's try then
Download the ZIP. Unpack to you gcbasic folder. If when you compile you do not get the build 1444... you did it incorrectly. :-)
https://1drv.ms/u/s!Ase-PX_n_4cvhYtDUCmkcUMUd_lKEw?e=8O2M90
Okay, works.
I had to extract the files in the upper-level gcbasic directory cause I have this:
C:\Program Files (x86)\GCstudio\gcbasic\gcbasic
I would not have installed to Program Files (x86) as this can lead to many issued with 3rd party tools - just be aware for when/if you hit issues.
Do you get build 1444?
Do you get the error messages?
I still have some homework to do to convert my PBP code to GCB....
Meanwhile, thanks a lot for your great support ;-)
I would not have installed to Program Files (x86) as this can lead to many issued with 3rd party tools - just be aware for when/if you hit issues. I saw the original installation in the root and thought it was my bad. I might follow your advice and reinstall from fresh.
Do you get build 1444? Yes
Do you get the error messages? Yes, unfortunately but yes, great!
Last edit: Flotul 2024-11-26
The initial issue of the compiler crash was not good. But, as more people report issues the better the compiler becomes.
It should not crash. :-) Now you at least get meaningful error messages.
:-)