I am just fed up seeing him advertising his so-called OS when he has no clue how to do anything without relying on AI. It will never get released, so he is wasting everyone’s time.
You won’t learn a thing if you keep on relying on AI, and furthermore your error messages make it seem very doubtful as to whether you really know what you are doing. For starters, do you know the difference between the GNU arm-none-eabi toolchain and mingw? And if so, why are you attempting to assemble code for an ARM Cortex-M microcontroller with the latter?
If you actually have real code, and it was not AI-generated, you could dispell our doubts by opening it. With what we have seen here, the fact that you are so insistent on keeping your code closed only helps lead to thoughts like maybe the code is significantly AI-generated and you don’t want us to see that.
Of course, if your code is largely AI-generated your OS will not get far, particularly as you seem very new to all this and to code effectively with AI you need to be able to write everything the AI is writing all by yourself to fix all the errors the AI will inevitably make. If anything, in many use cases AI will be a hindrance rather than a help.
You are wrong. I’m having so much fun in this rabbithole
Indeed, he doesn’t setup cmake with the proper arm toolchain.
I am very disappointed that, because of the advertising done by Copilot and others “vibecoders”, many people are starting to think that being a coder is SOOOO simple as putting together Lego…
Yes it’s help, but you still require to understand what you do.
I don’t like to leave fish to die outside of the water. @Astrox, you don’t have the right technical skills or the right coding philosophy. But you can work on that, it will come… At least you have a head for marketing.
Be humble and accept that what you were looking for was mainly recognition. It’s normal to want to prove yourself at the beginning, but the humility to know when you’re overwhelmed by the scale of the task is already a sign of progress: at least you tried.
Progress doesn’t necessarily mean success!
If you keep this going like you’re doing now, you’ll come across as pretentious and no one will want to encourage you, even less to help you.
I’d highly recommend the following resources to Astrox if they haven’t already come up in the thread:
-
Getting started with Raspberry Pi Pico-series (PDF)
(Covers toolchain setup and VS Code integration.) -
API Documentation from Raspberry Pi
(Handy reference for function prototypes and struct definitions.) -
Hunter V. Adams RP2040 Cornell Lecture Series on YouTube
(An excellent primer on how the hardware ties into the C SDK in a structured way.)
These resources helped me tremendously when I was starting out with the RP2040 and, I now use them in over 90% of my MCU projects.
They’ll give you a strong foundation and conceptual framework. It still takes a lot of hands-on experience to confidently tackle a large project like this but these resources will set you on the right path.
edit: change Yale to Cornell, whoops
and the most important tip: break the project down into small steps and test often
I would ignore the screen and just print the text to serial console for the first versions
This. Start small, test often, build incrementally. Don’t think about implementing the whole thing in one go or you will be overwhelmed, and probably end up abandoning the project. It seems that the OP has big ambitions that they are attempting to tackle in one huge effort, which is not the way to go about it. And yes, the serial console is your friend.
@Astrox This here is invaluable advice!
We’re not saying using AI is bad, we’re saying you have to be able to find it’s mistakes because a lot of it’s mistakes are unseeable to the untrained eye. God knows I’ve used Chatgpt for dumb stuff like commenting on code I didn’t comment on & learning how to use opengl in c. Just take your time with this, there’s no rush. If it takes you 2 years it takes you 2 years, at least you’ll have done all of your OWN code.
To reiterate my earlier suggestions, try writing a program to simply write “Hello, world!” to the serial console. Once you have this working, write a simple multitasking kernel such that one task constantly writes “AAAAAAAAAAA…” to the serial console while another task constantly writes “BBBBBBBBBBBB…” to the serial console such that they are interleaved in the actual output. Don’t attempt to go further until you have this working reliably. And don’t use AI in the process at all – doing so would deny yourself an important learning opportunity.
Thanks a lot for the advice everyone. I guess I will just remove the release dates and just release it whenever I feel like It’s all right. If you have any other valuable advice, feel free to tag me, as I will most likely read it within a day.
Once again, thanks a lot.
I will be mostly restarting the development of my OS, but I will take snippets and improve them for some parts from my old code. I will keep you all updated here.
please use some of the suggestions / documentation that people have left here for you. Astralixi OS Megathread - #170 by Kelpiscool
Astralixi OS Megathread - #169 by JackCarterSmith
I have a question:
Is the PicoCalc, display, SD card slot, speakers, etc, all connected over SPI?
AstralixiOS
Astralixi’s Kernel will be a modified Minix kernel, but more ram efficient.
Astralixi’s File System will be based off: GitHub - strawberryhacker/fat32: Minimal FAT32 file system implementation
Astralixi’s CLI, Memory Management, etc, will be done fully original.
I have fond memories of Minix.
When I was a teaching assistant in graduate school, it was a hassle to look for students copying answers from each other. I actually built a semantic analyser of sorts to help me.
I cannot imagine how hard this job would be today with AI. Hopefully AI can detect AI reasonably well to help.
it might be better if you use it properly, but I’ll never forget this story
Nop.
The pico have access to 2 SPI bus, one for the screen and one shared between the SD card and the PSRAM.
Speakers are “directy” connected to the pico, you drive them directly using PWM.
And the keyboard is interfaced on the I2C bus with the pico.
Take a look on the “helloworld” program of the github, everything is connected/interfaced to test the board, should be a good start point!