; *************************************************************************** ; copyright : (C) 2025 by Martin Preuss ; email : martin@libchipcard.de ; ; *************************************************************************** ; * This file is part of the project "AqHome". * ; * Please see toplevel file COPYING of that project for license details. * ; *************************************************************************** .equ FLASH_PAGESIZE = (PAGESIZE*2) ; *************************************************************************** ; data .dseg flashPageStart: .byte 2 flashPageBuffer: .byte FLASH_PAGESIZE ; *************************************************************************** ; code .cseg ; --------------------------------------------------------------------------- ; flash1pMegaWritePage ; ; Interrupts must be disabled! ; ; @clobbers r0, r1, r20, r24, r25, X, Z flash1pMegaWritePage: lds zl, flashPageStart lds zh, flashPageStart+1 ; copy from SDRAM into MCUs temporary page buffer ldi xl, LOW(flashPageBuffer) ldi xh, HIGH(flashPageBuffer) ldi r24, LOW(PAGESIZE) flash1pMegaWritePages_loop: ld r0, X+ ; read source data from buffer (low) ld r1, X+ ; read source data from buffer (high) ldi r20, (1<