From d80736ab6e8e3cad2f1a30c6eaba2d6883dbe967 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 26 Aug 2017 20:31:40 +0200 Subject: Remove AmForth --- amforth-6.5/msp430/drivers/flash/words/flerase.asm | 39 ---------------------- 1 file changed, 39 deletions(-) delete mode 100644 amforth-6.5/msp430/drivers/flash/words/flerase.asm (limited to 'amforth-6.5/msp430/drivers/flash/words/flerase.asm') diff --git a/amforth-6.5/msp430/drivers/flash/words/flerase.asm b/amforth-6.5/msp430/drivers/flash/words/flerase.asm deleted file mode 100644 index e8cf97e..0000000 --- a/amforth-6.5/msp430/drivers/flash/words/flerase.asm +++ /dev/null @@ -1,39 +0,0 @@ -;Z FLERASE a-addr n -- - CODEHEADER(XT_FLERASE,7,"flerase") - MOV @PSP+,W ; get address in W - ADD W,TOS ; TOS=end adrs (first unerased adrs) -FLE_1: - CMP TOS,W ; adr-end - JC FLE_X ; if no borrow, adr>=end, do not erase - ; is it within Main flash? - CMP #FLASHSTART,W - JNC FLE_INFO ; if borrow, adrend, check if Info -FLE_INFO: ; is it within Info flash? - CMP #INFOSTART,W - JNC FLE_X ; if borrow, adrend, do not erase -FLE_OK: ; Address is either in Main flash, or in Info flash. - ; Segment Erase from flash. - ; Assumes ACCVIE = NMIIE = OFIE = 0, watchdog disabled. - ; Per section 5.3.2 of MSP430 Family User's Guide - DINT ; Disable interrupts - MOV #FWKEY,&FCTL3 ; Clear LOCK - MOV #FWKEY+ERASE,&FCTL1 ; Enable segment erase - MOV #-1,0(W) ; Dummy write in segment to erase - MOV #FWKEY,&FCTL1 ; Done. Clear erase command. - MOV #FWKEY+LOCK,&FCTL3 ; Done, set LOCK - EINT ; Enable interrupts - ; Advance flash pointer by 512 bytes or 128 bytes - ; is it within Main flash? - CMP #FLASHSTART,W - JNC FL_INFO ; if borrow, adrend, must be Info - ADD #(MAINSEG-INFOSEG),W -FL_INFO: ADD #INFOSEG,W - JMP FLE_1 ; continue till past end or outside limits -FLE_X: MOV @PSP+,TOS - NEXT -- cgit v1.2.3