@evanh said:
The ROM booter loads the first 1 KB from the EEPROM. It's up to that small code to do the rest. Not unlike a boot block.
Yeah I also looked at the code linked to by Tubular and see it loads the first 1kB before executing that. Perhaps if this first 1kB loaded could branch out to another area it might be possible to have two micro's share the first 1024 bytes. The RasPi Pico seems to only load up the first 256 bytes of flash, and make use of that as its first stage loader. So if some instruction branch sequence combination was found that didn't corrupt the other micro then it might be possible to share it for both. This may allow an augmented PropPlug idea where you could drag/drop suitably formatted P2 images into the P2 flash from a $4 RasPi Pico board over USB which could be a rather useful way to flash the P2. It could also then potentially pass through serial as well over the USB connection after the P2 boots, like a PropPlug would.
Just realized this idea is not going to work the way I was first anticipating because the Pico has its own on board SPI flash bus that is not exposed to the outside world unlike an ESP32 for example. The overall concept can still work but needs two flashing steps, one from PC to Pico flash, next from Pico flash to P2 flash. If you built your own programmer board with just the RP2040 on it you could probably do what I was initially thinking (ie. boot the Pi chip from the shared P2 SPI flash and program it in one step). I don't know, the whole thing is pretty nebulous right now anyway...
Comments
Hmm actually the "ROM2019" or ROM2v0 on Peter's site might be later
https://u.pcloud.link/publink/show?code=kZg8GbXZeUueaWSMaefSL6FlIQADM4pnftJy#folder=8368157132
Yeah I also looked at the code linked to by Tubular and see it loads the first 1kB before executing that. Perhaps if this first 1kB loaded could branch out to another area it might be possible to have two micro's share the first 1024 bytes. The RasPi Pico seems to only load up the first 256 bytes of flash, and make use of that as its first stage loader. So if some instruction branch sequence combination was found that didn't corrupt the other micro then it might be possible to share it for both. This may allow an augmented PropPlug idea where you could drag/drop suitably formatted P2 images into the P2 flash from a $4 RasPi Pico board over USB which could be a rather useful way to flash the P2. It could also then potentially pass through serial as well over the USB connection after the P2 boots, like a PropPlug would.
Just realized this idea is not going to work the way I was first anticipating because the Pico has its own on board SPI flash bus that is not exposed to the outside world unlike an ESP32 for example. The overall concept can still work but needs two flashing steps, one from PC to Pico flash, next from Pico flash to P2 flash. If you built your own programmer board with just the RP2040 on it you could probably do what I was initially thinking (ie. boot the Pi chip from the shared P2 SPI flash and program it in one step). I don't know, the whole thing is pretty nebulous right now anyway...
https://forums.parallax.com/discussion/comment/1480216/#Comment_1480216
IIRC only the SD boot code (minor) and TAQOZ. I believe Chip's boot code remained unchanges as did my monitor/debugger.