X68C64
6
WRITE AA
TO X555
WRITE 55
TO XAAA
WRITE A0
TO X555
PERFORM BYTE
OR PAGE WRITE
OPERATIONS
WAIT tWC
EXIT ROUTINE
X = A
12
:
A
12
= 1 IF DATA TO BE WRITTEN IS WITHIN
ADDRESS 1000 TO 1FFF.
A
12
= 0 IF DATA TO BE WRITTEN IS WITHIN
ADDRESS 0000 TO 0FFF.
DATA PROTECTION
The X68C64 provides two levels of data protection
through software control. There is a global software data
protection feature similar to the industry standard for
E
2
PROMs and a new Block Protect write lockout protec-
tion providing a secondary level of data security.
Writing with SDP
Setting write lockout is accomplished by writing a five-
byte command sequence, opening access to the Block
Protect Register (BPR). After the fifth byte is written, the
user writes to the BPR, selecting which blocks to protect
or unprotect. All write operations, both the command
sequence and writing the data to the BPR, must conform
to the page write timing requirements.
3868 FHD F09
Software Data Protection
Software Data Protection (SDP) is employed to protect
the entire array against inadvertent writes. To write to
the X68C64, a three-byte command sequence must
precede the byte(s) being written.
All write operations, both the command sequence and
any data write operations, must conform to the page
write timing requirements.
Block Protect Write Lockout
The X68C64 provides a secondary level of data security
referred to as Block Protect write lockout. This is ac-
cessed through an extension of the SDP command
sequence. Block Protect allows the user to lockout
writes to any 1K x 8 blocks of memory. Unlike SDP which
prevents inadvertent writes, but still allows easy system
access to writing the memory, Block Protect will lockout
all attempts unless it is specifically disabled by the host.
This could be used to set a higher level of protection in
a system where a portion of the memory is used for
Program Storage and another portion is used as Data
Storage.
Block Protect Register Format
3868 FHD F11
6
5
4
3
2
1
0
7
0000–03FF
0400–07FF
0800–0BFF
0C00–0FFF
1000–13FF
1400–17FF
1800–1BFF
1C00–1FFF
BLOCK
ADDRESS
1 = Protect, 0 = Unprotect Block Specified
MSB
LSB
Setting BPR Command Sequence
3868 FHD F12
WRITE AA
TO X555
WRITE BPR
MASK VALUE TO
ANY ADDRESS
WAIT tWC
EXIT ROUTINE
WRITE 55
TO XAAA
WRITE C0
TO XAAA
WRITE AA
TO X555
WRITE A0
TO X555
X = A
12
:
A
12
= 1 IF PROGRAM BEING EXECUTED IS
WITHIN 0000 TO 0FFF.
A
12
= 0 IF PROGRAM BEING EXECUTED
RESIDES WITHIN 1000 TO 1FFF.