6800 CDAT memory diag help

Brad H vintagecomputer at bettercomputing.net
Sun Aug 21 09:47:08 CDT 2016

Thanks Michael! I did read through those but I'm still getting used to operating the 6800 and am still a bit confused.  If I want to confine the program to a certain address range, say $0000 to $1111, is the most significant byte of $0000, 0?  As well as least?  And then 1 and 1 for the higher address?  And I'm assuming I set that using the M (addr) command?

Sent from my Samsung device

-------- Original message --------
From: Michael Holley <swtpc6800 at comcast.net> 
Date: 2016-08-20  9:12 PM  (GMT-08:00) 
To: "'General Discussion: On-Topic and Off-Topic Posts'" <cctalk at classiccmp.org> 
Subject: RE: 6800 CDAT memory diag help 

Here is the instructions for memory tests, CDAT is on page 3.


The CDAT memory diagnostic can be used to help locate memory problems in a SWTPC 6800 computer system that MEMCON and ROBIT may miss. The program itself resides entirely within the 128 byte SWTBUG® RAM. The program must be loaded in two parts to avoid interfering with the systems push down stack. The contiguous section of memory to be tested is set by loading the most significant byte of the lower memory address into A002, the least significant byte into A003, the most significant byte of the upper memory address in A004 and its least significant byte in A005. The low address must be less than or equal to the upper address. The test starts from the low address and writes a 00 into all memory up to the high address. An FF is then written into the first address and all other locations are checked to be sure they contain 00. If all are OK the FF is replaced with a 00 and an FF is written in the next memory location. This pattern continues until all memory is checked or an error is found. If the computer returns to SWTBUG®, then no errors were found.

       NAM    CDAT-2  
 E0E3           CONTRL  EQU    $E0E3 
A002                             ORG    $A002  
A002           LOTEMP  RMB    2         STARTING ADDRESS  
A004           HITEMP  RMB    2         ENDING ADDRESS

Michael Holley

-----Original Message-----
From: cctalk [mailto:cctalk-bounces at classiccmp.org] On Behalf Of Brad H
Sent: Saturday, August 20, 2016 12:49 PM
To: General Discussion: On-Topic and Off-Topic Posts
Subject: 6800 CDAT memory diag help

Hi there,
I'm still having some glitches with my 6800 system and would like to do a proper RAM diag.  From reading, it seems like CDAT is the most exhaustive.. but I cannot get it to run.  I can load and then run it.. but it immediately fails at address 8000.  Since I understand this is used for I/O I am wondering how I would adjust CDAT so it ignores that space and does everything else?  Any suggestions would be most appreciated.  I think you can alter the addresses with most and least significant bytes but don't understand quite how.

Sent from my Samsung device

More information about the cctalk mailing list