Slot Programming the Propeller
Unsoundcode
Posts: 1,532
Playing around with a modified version of the ROM's own bootloader I created an object that loads and launches a Propeller program from any attached I2C EEPROM at any chip address on any adjacent pin pair at any EEPROM address.
Only tested with small and simple programs as yet.
For anyone that cares to use an app that runs on a Windows OS there is a Visual Basic app attached that writes to specified EEPROM addresses. If not there are still other means of testing the object
There are two examples , the two attached spin files are a program (with the object) that repeatedly launches itself .
The zip file contains the VB application with an example of loading and launching 4 separate Propeller binaries (programs ) from the Propellers own EEPROM. The programs are written at various locations in the memory , address's $0000 , $2000 , $4000 and $7000.
Jeff T.
Only tested with small and simple programs as yet.
For anyone that cares to use an app that runs on a Windows OS there is a Visual Basic app attached that writes to specified EEPROM addresses. If not there are still other means of testing the object
There are two examples , the two attached spin files are a program (with the object) that repeatedly launches itself .
The zip file contains the VB application with an example of loading and launching 4 separate Propeller binaries (programs ) from the Propellers own EEPROM. The programs are written at various locations in the memory , address's $0000 , $2000 , $4000 and $7000.
Jeff T.
Comments
The idea was inspired by one of WBA Consulting's projects where he had a Propeller powered instrument that required multiple configurations depending on what was being tested.
The source assembly of the ROMs bootloader is so well commented it was not difficult to modify considering my novice knowledge of assembly, not only that but the source contains several stand alone routines that make it a very versatile program. For example I was also able to create a 2 wire serial loader ( RES not required ).
A little more information I inadvertantly omitted from post #1. The actual object is Launch.spin , Program1.spin is an example of the objects usage and calling method. These two spin files are all that are needed to run a small example. The zip file contains a slightly more complex example and a small EEPROM writing utility, the drawback with the zip is Win OS required.
Jeff T.