![]() |
Forum Index : Microcontroller and PC projects : MPLAB C18 for Linux
Author | Message | ||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
As anyone knows, Microchip will replace his own C compiler for PIC18 with the one acquired from Hi-Tech, named XC8, providing support for all microcontrollers (from PIC10 to PIC18). But, there is and incredible issue. XC8 is at version 1.12 by now and it still come with the Hitech licensing scheme. I mean, there are free, standard and pro versions, with difference in the offered optimization: ![]() Why I say incredible? Until now, MPLAB C18 was (it still is) a very nice option regarding to C language for PIC18. In free version, it outperformed (the also free version of) XC8 in all aspects. And I didn't believed to my eyes when I saw the linux version! So, for linux guys, until Microchip decide what will do with XC8 (hopefully, in free version XC8 will be as good as C18), there is still C18 for linux, available for download. Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
Aaaand you know the secret? It is a full version (this boon only for Linux). That means you don't have to reinstall it after an expiring period in order to (re)compile your USB bootloader with full optimizations. Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
I didn't wanted to create a new topic just for this short information (considering that it will be of little interest anyway): The new MPLAB XC8 v1.31 compiler compiles the HID Bootloader from the latest MLA much better than the full free version of C18 for Linux, but only in PRO edition. It refuses to compile in Free and Standard editions. as the generated code will not fit in the reserved area. C18 3.40: - RAM used: 510 - Flash used: 3984 XC8 1.31: - RAM used: 443 - Flash used: 3770 In the commercial zone, this is a big news considering that the Hi-Tech PRO compilers had big problems in the past with the USB stack, but for the Makers community, the complete C18 compiler for Linux remains the main option in compiling the bootloaders. The last barricade for C18 compiler remains the PIC18 support for SD-Card - until the next release of MLA. Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
C18 has a problem with arrays bigger than 256 bytes and for a SD-Card access, you need an array of 512 bytes. C18 has his own file system for SD-Card but, if you want to port another library from a different compiler or micro, then you should read here how to use arrays bigger than 256 bytes. Pretty easy I would say, but I am accustomed with 8bit linker scripts (even if I hate them). Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
The new MPLAB XC8 v1.32 compiler come with a new concesion regarding optimizations in Free mode. And Microchip considers that this is enough so, your compiler will work only in Free mode, no matter your arguments. If you convinced your previous version to behave in a more civilised manner, you have to stay with it, as the new one does not understand english! ![]() And this means also that Microchip considers that XC8 compiler matured and does not need such a large pool of beta testers. Now, we have to compare the Free mode with the linux version of MCC18 to see if is on par (it should be!). Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
Mistery revealed. XC8 1.32 issue rages on Microchip forum! I wanted to quote two replies, the question and the answer, but every post is delicious, so here is the link. _____ BTW, is the same for XC16 and XC32 compilers if your license expired - you won't get the new update released after your expiration date which last only one year. The problem is, what if I bought a defective compiler? Will Microchip offer the patch free even if my license expired? And the version 1.0 of the compiler was the buggiest and the worst code generator than the current one. Still, it didn't matter regarding price. But the broken thing is that every client just endure "the thing". Is not their problem, is the poor work Microchip is doing with their compiler and requests your money to repair the problem - if you still are eligible for their care. In which other industry things are working the same? Or I'll have to admit that I am so biased... I didn't know that you are allowed to do bussiness like they do. Can I try myself (as a one person company) without getting smashed by the clients and their lawyers? Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
JohnS Guru ![]() Joined: 18/11/2011 Location: United KingdomPosts: 3998 |
vasi - Your post could have been written about Microsoft, especially about Windows. Which probably answers your question... John |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
Today I've noticed that the link for the full linux version of MPLAB C18 is dead. Sorry guys, I couldn't keep it to myself! Now it values gold. Maybe my new blog dedicated to it was the last drop of water. Maybe Microchip head will reconsider what they did to the MPLAB C18 development team... Anyway, personally I will use it to the fullest. Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
Ok, here is the link for the now missing file. And there you can read good news for the Mac OS X users. ________ Edit: And, because 3.40 does not come with 46K22 support, here is a backup of mine, where I've added support for the missing controllers. If you don't trust me, take from there everything except executables and make your own cocktail. Sorry, 3.40 for linux does come with support for PIC18F46K22... Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
vasi![]() Guru ![]() Joined: 23/03/2007 Location: RomaniaPosts: 1697 |
The old kind of links (lite, standard, upgrade) are available again on the official page of MPLAB C18 v3.47 compiler on Microchip site. They changed their mind again but they can't change the fact that the 3.40 linux full version and 3.46 OS X full version are in public domain. Anyway, we are thankful that at least a Lite version continues to be available for Windows for the existing code (projects and libraries) on the internet. It remains to be seen if it was "engineered" in any way or it is still at the same level with the previous Lite versions. Hobbit name: Togo Toadfoot of Frogmorton Elvish name: Mablung Miriel Beyound Arduino Lang |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |