Image Map Image Map
Results 1 to 7 of 7

Thread: Help with modifying PT Memtest

  1. #1
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,170
    Blog Entries
    2

    Default Help with modifying PT Memtest

    I am trying to modify the listing provided by Processor Technology (page 45) for testing their 8KRA memory boards on my Sol-20 computer.

    I am aware that there are other, Sol-20 friendly memory testing programs out there. However, I think with all these vintage computers it's probably time for me to start dabbling in programming. Plus, I really like how this particular RAM test program will produce a 'diagram' showing you exactly where on the board your problem IC is (assuming that's the issue).

    From a read of the guide, it appears PT assumed you were using a generic 8080 computer of the time with some sort of serial terminal. They are quite specific in that you need to have one that supports the ESC function.

    I thought to start off, I'd just try entering the program as is with my serial terminal connected, and then transfer it over and run it from $0000. The manual says you need to do reset and run on whatever computer they intended you to use, I assume that would be a machine like the Altair, but that it would start at 0000 and thus EX 00 would do the same thing on the Sol. The result unfortunately in my case is just a total freeze up. There's no evidence it's doing anything and it does not respond, of course, to hitting ESC on the Sol. I've thought using my breakout box to loop data from the Sol back to itself and try running the program in terminal mode, but I don't know if that'll work.

    I want to be clear I'm not looking for anyone to do this for me.. maybe just some pointers around I/O and what I should be researching to figure out how to modify and redirect that. And maybe a few pointers on what else could be problematic with this code, which I'm assuming based on the description is 8080 code, but may not be?

    Many thanks. It's about time I started delving into this.

  2. #2
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,619
    Blog Entries
    20

    Default

    I'd first start with something simple--how about a little program that reads a character from the keyboard and displays it?

  3. #3
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,170
    Blog Entries
    2

    Default

    Yeah you're right.

    But are we doing this in assembly or entering things in the monitor? I know in my SWTPC manual the latter is how they go about a lot of it, and you just have to remember which bytes trigger which operations.

  4. #4
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,619
    Blog Entries
    20

    Default

    Do it the way I started with the Altair. I had the 8080 reference card (still do, FWIW) and a pad of paper. I carefully coded out the hex and entered it into the front panel, bit by bit. I think the SOL actually has a monitor, that makes it much easier.

    Write a few thousand instructions out this way and you'll have no need for the card.

  5. #5

    Default

    Quote Originally Posted by falter View Post
    The result unfortunately in my case is just a total freeze up.
    I think this might be the consequence of the fact that the memtest program you are using uses the very ram you are testing, so if that low ram is defective or faulty, the program will fail. You cannot test the memory from 0000h upwards if the program is resident there.

    This was the whole idea behind the memtest program that Mike Douglas has on his site. It does not occupy any of the memory locations on the ram cards (which may be defective).

    You program executing from 0000h can work of course, if you have a known good ram card at that address and you are testing another card higher up in the address range.

    Mike's program runs in the system ram space on the Sol-20's motherboard starting at CAC0h. You can select the address range from 0000h upwards that you want to test, before it executes and when it detects faulty ram it throws up the addresses, from that its easy to determine which ram IC's on the pcb are not working. Moreover, you can go to the defective address and enter and retrieve data easily on the Sol, to determine which array of IC's are likely defective or which bit is stuck.

    If you examined Mike's memtest program, which appears to be about the same length as the one you are trying, you could probably re-assign the addresses of the program you like to start at CAC0h.

  6. #6
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,170
    Blog Entries
    2

    Default

    Thanks Hugo.

    That's not how I read the instructions - in the preamble to the long test program, they say you *must* have the memory board set to $2000, $4000, etc, and that it will *not* work if the board is set to $0000, as that is where the program is resident. So I'm not sure that's the issue here. I *am* curious, since i see no input for the addressing to test, how it "knows" which one of the optional address ranges you've set your board to.

  7. #7

    Default

    I'm not sure how that works either. On Mike's version you input the address range (start address and finish address) and it starts automatically after that.

    I agree, your program needs to be told what address range to test. Perhaps without that input, its just defaulting to range $0000-$0000 and that is why its crashing. Or it may just be fixed to a range of 8k above $2000 where they tell you to set the board switch and the program has got corrupt in some way. But that makes little sense if they have suggested address options like $2000 or $4000, which suggests after you open the program you are expected to enter an address before it starts.

    Do try Mike's program, then perhaps at least it will get you further forward testing and repairing your 8kRA cards.
    Last edited by Hugo Holden; Yesterday at 02:42 PM.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •