Diagnostic test rom for bbc hardware

bbc/electron apps, languages, utils, educational progs, demos + more
Post Reply
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Diagnostic test rom for bbc hardware

Post by Andre »

Hi,

Based on learning from Tricky's testrom and Rich Talbot-Watkins rom template , I made a testrom which does diagnostic tests using the
keyboard leds. I hope this does not offend anyone by using the code.

If the image is blown into an eprom you can place it in different IC locations. This eprom can be placed in IC sockets: 51, 101 or 88
socket IC 51: It will be testing the memory as a OS-rom
socket IC 101: It will mimick basic rom to do memory testing and System via and user via testing.
socket IC 88: It is just a sideway rom with some memory test tools and simple via tests.


I wrote a small manual, which I attach (as well as the sourche code)

Since i do not have a BBC that is defective, maybe anyone can test it on real hardware?

=========an updated version in a post below=======
Attachments
comby.rom
(16 KiB) Downloaded 246 times
manual and sourcecode.zip
(365.13 KiB) Downloaded 346 times
Last edited by Andre on Tue Jun 29, 2021 6:14 pm, edited 1 time in total.
iainfm
Posts: 602
Joined: Thu Jan 02, 2020 8:31 pm
Location: Dumbarton
Contact:

Re: Diagnostic test rom for bbc hardware

Post by iainfm »

This looks amazing! Definitely going to give it a try when I get chance / need to!
User avatar
DutchAcorn
Posts: 2674
Joined: Fri Mar 21, 2014 9:56 am
Location: Maarn, Netherlands
Contact:

Re: Diagnostic test rom for bbc hardware

Post by DutchAcorn »

Brilliant, thanks for sharing! =D> =D>

Curious on how the memory testing is implemented, memory can fail in creative ways.
Paul
User avatar
tricky
Posts: 7692
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by tricky »

Great work.
This is just where I was going to go with it, but never got around to it!
My ROM doesn't take account of Shadow RAM on the Master, but the code can be loaded where it can't be shadowed - someone else did this but I can't remember where this was.
It might be worth "flashing" the screen memory as well as an indicator, just in case the system via has failed.
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Andre »

Hi,
About memory testing:
Memory testing is done the most simplistic way. Only “always completely defective IC chips “ can be detected. Not the way human memory is failing:not remembering what i had for dinner yesterday, but searching LDA #03 in a game and replacing it with LDA #255 to get more "lives", is still in there.

Shadow Ram: on the master is not tested. I have no experience with masters and get this rom to work on a master.

“Flashing” the screen:
I want to use some kind of cursor animation for that, because the memory can fail completely and then no flashing can be done.
I encountered one problem. I reprogrammed the 6845 to give a big cursor and extra “blank” mode 6 alike lines. It works only with real hardware, the emulater does not show the same cursor size(in height), and that makes that I still have to write that part.
I attach the program which i wrote to fool around to get some “cursor animation”
Attachments
cursor_animation.ssd
(2.5 KiB) Downloaded 71 times
User avatar
tricky
Posts: 7692
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by tricky »

I think beebjit is the most accurate emulator with jsbeeb a very close second. Beebem is probably the most used, but has the least accurate gfx.
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Andre »

Thank you for the tip!

Beebjit gives indeed the same result as on my hardware beeb.

I was using Beebem.
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Andre »

Using beebjit for emulation I have updated the code (also the manual).

Now also the cursor blinking is used to indicate errors.

Is anyone able to test it on real (defective) hardware?
Attachments
testrom_v2.zip
(3.79 MiB) Downloaded 240 times
Graeme
Posts: 1
Joined: Sat Apr 03, 2021 6:13 pm
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Graeme »

Just downloaded test rom at 7am and have a working beeb at 10am. So my bbc b had no display and constant noise from speaker. Removed the OS rom and installed test rom. Powered up and got test display It ran up to bit:01 and three beeps. This indicated IC63. Replaced it but still the same. Replaced IC55 next just incase it was pulling the data bus down although it looked normal on the scope. Still the same. A quick look at the circuit diagram and guessed IC14 was the next most likely cause and bingo it ran through the test with no errors with original ram chips installed. Retrospectively for ram errors I would probably just remove the 74LS245 and replace it first as it is easy to obtain and costs pennies.

Happy days and thank you to all that contributed in getting this test rom up and running
JackB
Posts: 13
Joined: Thu Aug 19, 2021 2:01 pm
Location: Netherlands
Contact:

Re: Diagnostic test rom for bbc hardware

Post by JackB »

I have a defect Beeb. It is a German version so is is very hard to diagnose using the schematic. Because it IC numbering does not match the pcb.
So a testrom would be very helpful to get me pointed in the right direction.
Am I right to assume that the ROM image needs a 27128 EPROM?
Acorn Atom / Electron German Issue 1/BBC Model B issue 7 / BBC Model B German / BBC Model B issue 4 board without case/ Coco2 / Dragon64.
User avatar
tricky
Posts: 7692
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by tricky »

In an ordinary Beeb you can usually just program it twice into a 32K eprom, but it would be good practice to pull the highest address pin out a little to miss the socket and connect it hi or lo and make sure it doesn't short.
tomkinsg
Posts: 61
Joined: Wed Dec 01, 2021 2:32 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by tomkinsg »

Andre

i burned this into an AT28C256 4000-7FFF range (like i successfully do with all my eeproms) and when i put it in IC51, replacing the OS Rom, all i get is a solid power on noise and no LEDs.

This happens on an issue 7 and an issue 3 (the one i am trying to diagnose)

Am i doing something fundamentally wrong?

thanks
Glyn
User avatar
tricky
Posts: 7692
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by tricky »

I'm not sure what the extra address pin is connected to on the OS socket, but I would burn both halves the same, just to be sure.
I did have a machine where the OS socket was faulty and although it doesn't need ram, it does need enough to be working to run the rom.
Maybe try some basic continuity tests between the CPU and ROM.
User avatar
hoglet
Posts: 12658
Joined: Sat Oct 13, 2012 7:21 pm
Location: Bristol
Contact:

Re: Diagnostic test rom for bbc hardware

Post by hoglet »

You also probably need to isolate pin 27 (WE) of the 28C256, which is connected to AA14 (which is low for the MOS and for ROMS 9,12 and 13). This will cause all manner of wierdness, even if the 28C256 is write locked.
skipzoid
Posts: 9
Joined: Sun Mar 26, 2023 3:40 pm
Contact:

Re: Diagnostic test rom for bbc hardware

Post by skipzoid »

Andre wrote: Tue Jun 29, 2021 6:13 pm Using beebjit for emulation I have updated the code (also the manual).

Now also the cursor blinking is used to indicate errors.

Is anyone able to test it on real (defective) hardware?
I've been testing this on real hardware :-) works well.

Do you have any plans to expand the tests , simple things like a keyboard key test, sound, etc. turn it into a one stop test ?

Another thought, when I repair Amiga's I use the serial output to view the diagnostic info which can be useful for certain failures.
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Andre »

Nice to hear that you can use the test rom.

Not yet planned an update, i am not able to test it on real hardware. (Unfortunately in holland it is not cheap/easy to get hold of defective beebs :-) )

However ideas are always welcome.
Kepler
Posts: 30
Joined: Wed Feb 28, 2024 7:56 pm
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Kepler »

Could anyone help interpret the results of my attempt to run the ROM?

I receive:

Andre Test ROM at OS location v0. 05
first led flash=rom code executed
START of bittest &1000;Bit=

There is one beep and the shift lock LED comes on.

Any ideas?
derek
Posts: 258
Joined: Thu May 07, 2015 8:31 pm
Location: Sunny Runcorn, UK
Contact:

Re: Diagnostic test rom for bbc hardware

Post by derek »

Hi

What is test best Test ROM for a Master 128?
Regards,

Derek
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Andre »

Hi,

I had to read my own manual again, I forgot how it worked.

Your beeb is able to execute code from the os rom location. Thus eprom is ok, 6502 is ok. 6845 is ok

However accessing ram bit 0 at adress &1000 it encounters an error.

It could be the ram ic or ram selection ics.

What is interesting is that mode 7 screen memory works (&7C00..&7FFF), because you can see and read the screen, so the memory ic's for 7c00-7fff are working correct.

I hope that helps a little bit.
Kepler
Posts: 30
Joined: Wed Feb 28, 2024 7:56 pm
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Kepler »

Thank you. That is helpful.

How do I identify which physical ICs refer to "7c00-7fff"? and which IC is at Bit 0?
User avatar
vanekp
Posts: 1413
Joined: Thu Nov 30, 2000 7:09 am
Location: The Netherlands
Contact:

Re: Diagnostic test rom for bbc hardware

Post by vanekp »

one of my previous posts may help with locating which chip is at fault.
https://www.stardot.org.uk/forums/viewt ... 21#p166721
Regards Peter.
User avatar
grobda
Posts: 118
Joined: Tue Apr 23, 2013 2:46 pm
Location: Glasgow
Contact:

Re: Diagnostic test rom for bbc hardware

Post by grobda »

Hi

I have a faulty motherboard that does the low beep then a flickering display with the odd cursor character (almost like it's lost vertical sync).

I tried the test rom in place of the OS rom and it boots into the bit test and passes (17 led flashes) then goes into large cursor mode where it displays alternating black and white lines, which seems different than what is expected. after 17 more flashes and a pause it resets to the test.

I've removed the vias, fdd and other roms and it tests the same.

the keyboard and psu have been tested on another machine, and the OS rom swapped and is OK.

anyone got any ideas what might be a likely culprit? something preventing the OS from booting but seemingly not memory related.
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Andre »

Do you see the following screen while executing the testrom in ic51?

If so install the original bbc os rom in ic51 and place the testrom in ic101. (Remove all other roms).

After reset a similar screen should be shown and 19 led flashes.
Attachments
Screenshot_20240430-190002_Drive.jpg
User avatar
grobda
Posts: 118
Joined: Tue Apr 23, 2013 2:46 pm
Location: Glasgow
Contact:

Re: Diagnostic test rom for bbc hardware

Post by grobda »

test rom ic 51, no other roms, 17 led flashes;
PXL_20240430_172843471.MP.jpg
then cursor alternating;
PXL_20240430_172735788.jpg
PXL_20240430_172743078.jpg
os rom ic51, test rom ic 101, caps led on, shift lock on, no flashing;
PXL_20240430_173034875.MP.jpg
this screen is not static, the characters scroll upward rapidly
User avatar
grobda
Posts: 118
Joined: Tue Apr 23, 2013 2:46 pm
Location: Glasgow
Contact:

Re: Diagnostic test rom for bbc hardware

Post by grobda »

my (uneducated) thoughts are that either the OS is failing to initialise something that the test rom doesnt address, or something is interrupting the OS from initialising that doesn't affect the test rom routines.

im guessing the ram test passing means the data and address lines are ok, and because of this the 'common fault' 245 buffer is also ok. so before i get the logic probe out and start prodding I wondered if there was some obvious (to the educated) culprit that could be causing this behaviour.

ive swap tested both vias, the os rom, the video ula, the serial ula, the crtc and the OS ROM. theres no floppy controller in it at the moment and everything else is soldered rather than socketed.
Andre
Posts: 32
Joined: Tue Jan 19, 2021 10:13 am
Contact:

Re: Diagnostic test rom for bbc hardware

Post by Andre »

Mode 7 and display is working.
So 6845 and video ula are indeed ok. As well as memory i think.

Maybe the rom selection is faulty or a problem when two roms are installed.

Could you renove all roms and only put bbc os rom in ic 51, maybe it will startup and hang on language? Message.


Also testrom in ic51 and basic rom installed is maybe a test worth doing.
Post Reply

Return to “8-bit acorn software: other”