Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Earliest version bootloaders (128K v2.0, 32K v1.0) might use 'return' global vars for something else #7

Open
basilhussain opened this issue Dec 15, 2020 · 0 comments

Comments

@basilhussain
Copy link
Owner

The earliest versions of RAM erase/write routines (128K v2.0 and 32K v1.0) do not check whether a write has been attempted to a protected page (by checking WR_PG_DIS flag of FLASH_IAPSR register like later versions do), and so consequently do not have 'return' global variables (i.e. global_0x9b and global_0x9c) that they set the value of.

We need to check whether it is safe to still set the contents of the aforementioned global variables when running from these earliest bootloader versions. Examining the disassembly of a dump of the bootloader ROM from these versions will be the easiest way to tell.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant