RAM tester for MSX

Door Alexey

Guardian (2393)

afbeelding van Alexey

28-09-2018, 17:00

Folks, to my knowledge there exists only 2 known programs on MSX that test the memory mapper (testmap and testram) and only one program that tests VRAM (testram). Also there's a dedicated Yamaha YIS503II testing program, but it's hardly usable for other computers. I heard there are also some dedicated cartridges for certain MSX hardware.

The testram and testmap programs have their own problems, for example testram only tests 64kb of RAM. It doesn't properly test RAM on computers with less than 64kb and besides, it copies parts of itself into the RAM at startup, which is a really bad idea, especially if a computer's RAM is not working properly. Also it can't work on computers that have less than 16kb of RAM. The testmap program only tests the mapper and it doesn't work on MSX1 computers. And none of the programs test the entire physical RAM for problems.

We have all sorts of devcompos, so why don't we have a compo for writing a proper RAM tester? It should find and test the entire RAM on the computer and in the extended slots. That would be a real help for those who are trying to fix malfunctioning MSX computers. Such program could be put on a simple cartridge and work only from ROM, so only its stack will be in RAM.

Anyone up for the challenge? We will include the best RAM tester application into our (still secret) upcoming RBSC project and we will share the donations with the author of the testing application.

Aangemeld of registreer om reacties te plaatsen

Van luppie

Paladin (854)

afbeelding van luppie

28-09-2018, 17:31

Does testram also have these limitations when it is run from a cartridge ?

Van Alexey

Guardian (2393)

afbeelding van Alexey

28-09-2018, 17:56

luppie wrote:

Does testram also have these limitations when it is run from a cartridge ?

Yes, as I wrote, it tries to copy parts of itself into RAM without proper checking for its presence (it just assumes the RAM is there) and passes control to that copied code in RAM. This causes it to fail on certain systems with less than 16kb of available RAM. And it will obviously fail if RAM is partially faulty.

 .data:00004010 21 40 40               ld hl,0x4040
 .data:00004013 11 00 80               ld de,0x8000
 .data:00004016 01 30 11               ld bc,0x1130
 .data:00004019 ed b0                  ldir
 .data:0000401b 21 10 52               ld hl,0x5210
 .data:0000401e 11 00 b0               ld de,0xb000
 .data:00004021 01 10 08               ld bc,0x0810
 .data:00004024 ed b0                  ldir
 .data:00004026 21 20 5a               ld hl,0x5a20
 .data:00004029 11 00 a5               ld de,0xa500
 .data:0000402c 01 40 05               ld bc,0x0540
 .data:0000402f ed b0                  ldir
 .data:00004031 21 60 5f               ld hl,0x5f60
 .data:00004034 11 00 e0               ld de,0xe000
 .data:00004037 01 60 01               ld bc,0x0160
 .data:0000403a ed b0                  ldir
 .data:0000403c c3 00 e0               jp 0xe000

Van gdx

Prophet (3042)

afbeelding van gdx

29-09-2018, 14:34

I working on a (simple) VRAM checker. It's almost finish. Do you want to try it?

Van Alexey

Guardian (2393)

afbeelding van Alexey

29-09-2018, 17:16

Sure, when it is more or less finished, I could give it a try. Maybe you should also implement the full testing mode for every RAM bit testing. Such test will take forever, but it will allow to diagnose the chips better.

Van gdx

Prophet (3042)

afbeelding van gdx

30-09-2018, 18:07

I finished the pre-release. It tests the 16k, 64k or 128kB of VRAM of the MSX without giving details. It's a simple tester.

Download: VRAMCHK-BETA.ZIP

Can someone test on an MSX with 192kB of VRAM to see if it's detected?

Van Manuel

Ascended (15760)

afbeelding van Manuel

30-09-2018, 20:15

Did you try in openMSX?

Van Alexey

Guardian (2393)

afbeelding van Alexey

30-09-2018, 23:14

VRAM testing is usually not a problem, it can be done with the TestRAM. But what about testing the on-board RAM?

Van Wild_Penguin

Hero (546)

afbeelding van Wild_Penguin

05-10-2018, 20:58

Are you aware of memtest.com by Masatoshi Fujimoto?

Van Alexey

Guardian (2393)

afbeelding van Alexey

06-10-2018, 16:42

Nope, I've never seen this test before. Thanks! This test is good to run from a cartridge with its own RAM to test the entire RAM on the motherboard. Also testing the cartridge's RAM could be done when the test and DOS are loaded into the main RAM. Would be nice to have a ROM version of this test though.

I wish Fujimoto-san could make his project open-source. This test, however, does not test RAM on MSX1 computers. But for those I managed to make use of the special YAMAHA.ROM complex test that was designed for YIS503II machines. It tests RAM and VRAM as well as other parts of the computer. But it expects the JCUKENG keyboard layout, so using it on QWERTY machines is a bit difficult.

http://podrezov.com/temp/yamaha_msx1_diag.rom

This test doesn't work properly on Casio with 8kb or RAM. I have found quite a limited amount of software that is able to work with so little RAM...