Close

What a nightmare!

A project log for MAINFRAME COMPUTE OBSERVATOR

A SciFi inspired PC Hardware Monitor

mangus-tiranusMangus Tiranus 04/16/2022 at 17:340 Comments

This last couple of days I've been pulling out the non-existent hair on my head trying to get the flash working on the hardware. 

I made a program that would take my binary files combine them and then push them to the flash chip on my project. 

As I made this program from scratch, and heavily reworked my framed serial library I've previously made to work with this project. 

So right away I was adding many points of failure. 

I was also going into this with a basic assumption that I would be able to slightly reverse engineer the graphics chip library I'm using to get the data off the flash and into the graphics chip. The library is designed with SD cards in mind.

So after seemingly getting the data to transfer from PC to the project as per my last post. I thought the next steps would be... fairly simple. 

Of course it wasnt. 

Most of yesterday I simple could not get the data to both send to the flash or read off the flash to the graphics chip. Each time I tried to do so, the project would hang, and I found is so hard to figure out why or where.

Through tiny bits of trial and error and running the project with bits commented out to narrow down segments of code. I thought the issue might be some strange hardware level incompatibility.

As I was jumping between Mode3 and Mode0 as I talked to each device, I thought maybe somewhere this was causing some data to trip one or the other up. So I did the one thing I didnt want to do.

Hacked my PCB to connect the flash chip to the second SPI bus. 

ImageIt wasnt pretty, I didnt like doing it. But with the deadline for the competition looming, there was no chance of my spinning another PCB. So this had to be done to move forward.... 

And it didnt work.

The project was still hanging... 

At that point I did what any other sane person did, went to bed and screamed into a Pillow! 

This morning, some what refreshed and coffee fed, I found an issue RIGHT away with the code. 

It wasnt anything to do with switching between modes or some strange incompatibility. it was the INIT code for the flash simple was commented out. 

At some point I commented it out and forgot to bring it back in. This was causing the hang. Pretty much a WHOLE DAY wasted on this! *bangs his head in the desk*

So today I've mostly been refining my code being sent to the hardware, discovering how flash actually works (Ie must erase chip or sector first before writing data as it works subtractively) and then setting up a simple few lines of code to get it into the gram and hay presto!


Image

Assets are loading up onto the display now. !

Now with less than 9 days to go I can start quickly putting together a working prototype program displaying all the data I want, and thats phase 1 complete! 

Discussions