English
Language : 

HD6433044 Datasheet, PDF (612/867 Pages) Hitachi Semiconductor – Hitachi Single-Chip Microcomputer
LOOPR1: DEC.W
BPL
MOV.B
MOV.W
MOV.W
MOV.W
LOOPR2: DEC.W
BPL
MOV.B
BEQ
PWVFNG: CMP.B
BEQ
INC.B
SHLL.W
BRA
PWVFOK: INC.L
CMP.L
BEQ
BRA
PWADD2: INC.B
BRA
; Execute erase
ERASES: MOV.W
ERASE:
LOOPE:
SUB.W
MOV.W
MOV.W
MOV.W
MOV.W
MOV.W
MOV.B
PUSH.L
POP.L
PUSH.L
POP.L
PUSH.L
POP.L
DEC.W
BPL
MOV.B
MOV.W
MOV.W
#1,
LOOPR1
R5L,
#A500,
R5,
#c,
#1,
LOOPR2
@ER3,
PWVFOK
#06,
ABEND1
R1H
E0
PREWRS
#1,
ER4,
PWADD2
PREW
R1L
PRETST
R6,
E6,
#d,
#f ,
R5,
E0,
#4240,
R5H,
ER5
ER5
ER5
ER5
ER5
ER5
#1,
LOOPE
R5L,
#A500,
R5,
E1
; Program
;
@FLMCR:8 ; Clear P bit
R5
;
@TCSR:16 ; Stop watchdog timer
R5
; Prewrite-verify loop counter
R5
;
;
R5H
R1H
; Read data = #'00?
; If read data = #'00, branch to PWVFOK
; Prewrite-verify executed 6 times?
; If prewrite-verify executed 6 times, branch to ABEND1
; Prewrite-verify fail count + 1 → R1H
; Double prewrite loop counter value
; Prewrite again
ER3
; Address + 1 → ER3
ER3
; Last address?
;
;
; Used to test (R1L + 1)–th bit in R0
; Branch to PRETST
@EBR1:16 ; Set EBR1/EBR2
E6
; E6: erase-verify fail count
E0
; Set initial erase loop counter value
R5
;
@TCSR:16 ; Start watchdog timer
E1
; Set erase-loop counter
R5
;
@FLMCR:8 ; Set E bit
E1
; Erase
@FLMCR:8 ; Clear E bit
R5
;
@TCSR:16 ; Stop watchdog timer
603