Knowledge Base Article
Flash is read and written using SSC instruction which uses RAM locations (0,F8) through (0,FF) for passing variables to the supervisory ROM. (Please refer SROM section of the Technical reference Manual for more details on the same).
Apart from these locations, an additional 6 bytes of RAM is required which means that the bFlashWrite API uses a total of 14 bytes of RAM. Therefore you must not only assure that 0xF8 through 0xFF are free (for the SSC call), you need to also have 6 other bytes available in order to execute the bFlashWriteBlock API.