System test rom/Board

Modern, Memotech inspired, hardware projects
stephen_usher
Posts: 205
Joined: 27 Nov 2016 19:58

Re: System test rom/Board

Post by stephen_usher » 09 May 2019 22:51

I take it that the test ROM contents can go on an EEPROM and go into the ROM A socket?

Martin A
Posts: 417
Joined: 09 Nov 2013 21:03

Re: System test rom/Board

Post by Martin A » 09 May 2019 23:32

stephen_usher wrote:
09 May 2019 22:51
I take it that the test ROM contents can go on an EEPROM and go into the ROM A socket?
It should work fine as a stand alone 8k image replacing the A rom. It's completely self contained.

stephen_usher
Posts: 205
Joined: 27 Nov 2016 19:58

Re: System test rom/Board

Post by stephen_usher » 24 May 2019 13:28

May I suggest a change to the memory test?

When the test fails could the test stop at that location and print a map of which bits failed? This would allow the determination of which chip the fault is in.

Also, is there space for a memory decode test for paged RAM. Maybe fill the "lower" 32K with '1's, page in the upper 16K and write '0's, page it out again and test the 32K again for flipped bits? Maybe do this constantly until interrupted. This would check that the RAM paging sub-system is working properly.

Martin A
Posts: 417
Joined: 09 Nov 2013 21:03

Re: System test rom/Board

Post by Martin A » 25 May 2019 22:21

The memory test could be re-written to stop at a failed read back, and then print something along the lines of "Value read :XX value expected :XX". at which point the test would have to stop. I don't think there's enough registers to do much more than that. Re-starting and only halting once the screen space runs out isn't an option.

If it's possible to print the diagnostic message without destroying the values needed to resume the test, then it probably also possible to add in a "press [a key] to resume or [a key] to exit" option too.

There's currently 3 of the EOR memory tests, but they use the same base code. It's the tweaking the input conditions that enables the testing of the 3 different area, which are the 32k of page 0, 48k of page 0 or 16k of page 1.

Before that last test is started, the equivalent area on page 0 is cleared. Though it can't be tested directly the memory dump function of the monitor can be used to check if any shadow writes occur on page 0 during the page 1 test.

Re-writing page 0 after page 1 is written, but before it's read back isn't an option with the current code, as the memory test itself doesn't use paging.

Reading OR Writing to the wrong bank should be picked up on the test, but not both. If, because of paging issues, read and write did go to different banks, the readback would fail. It's very unlikely though that the memory system could fail that way, as the PAL code doesn't use the *RD input in the RAM equations, just *MREQ.

stephen_usher
Posts: 205
Joined: 27 Nov 2016 19:58

Re: System test rom/Board

Post by stephen_usher » 28 May 2019 16:10

Having it print the expected and obtained values would definitely be useful to identify the bad bit. I'm not sure that you'd want to restart if you've found a bad chip until after you'd replaced that chip anyway. After all, if you replace the chip with a known good one then you only have a maximum of eight tests if they're all bad in some way.

As for the page tests, surely once you know that you have a working unpaged 16K memory then you can then switch over to using memory for further tests? This should simplify things for the code.

Martin A
Posts: 417
Joined: 09 Nov 2013 21:03

Re: System test rom/Board

Post by Martin A » 31 May 2019 18:14

Test rom updated to build 245.

the Ram test has been expanded to stop on read failure with a brief diagnostic as shown on this screen dump from the emulator. Since the emulator never actually fails the read back, this is actually fake, :D but it looks better than a photo of my 1980's green screen monitor would !
Expanded memory test
Expanded memory test
NEWTEST.JPG (136.61 KiB) Viewed 559 times
The update has been made to the common code, so all memory 3 tests will halt on failure and update the diagnostic line.

At this point there is, I think, 6 bytes free in the data area and 8 in the code area, so not much scope for any further changes.

Dumps of the full 32k rom and just the 8k diagnostic rom are in the ZIP below.
roms245.zip
8 and 32k rom binaries
(28.26 KiB) Downloaded 28 times

stephen_usher
Posts: 205
Joined: 27 Nov 2016 19:58

Re: System test rom/Board

Post by stephen_usher » 31 May 2019 19:03

Martin A wrote:
31 May 2019 18:14
Test rom updated to build 245.

the Ram test has been expanded to stop on read failure with a brief diagnostic as shown on this screen dump from the emulator. Since the emulator never actually fails the read back, this is actually fake, :D but it looks better than a photo of my 1980's green screen monitor would !

NEWTEST.JPG

The update has been made to the common code, so all memory 3 tests will halt on failure and update the diagnostic line.

At this point there is, I think, 6 bytes free in the data area and 8 in the code area, so not much scope for any further changes.

Dumps of the full 32k rom and just the 8k diagnostic rom are in the ZIP below.

roms245.zip
Excellent! Yeah, I'm not sure you'd be able to do much in 8 bytes. :-)

Post Reply