PaulSwan said:Is the DRAM completely inoperable, as in the RAM Write-Read test doesn't return anything like the write pattern?
The DRAM has RAS/CAS maximums of 10uS that may be tough to hit without a lot of optimizations. If you are able to measure the results of RAS/CAS with a scope and confirm the pulse length it may help point us in the right direction (versus some other specific bug in the implementation).
Dave2084 said:For this little project the last bit is interrupts.
I need to get this to work as the sound inputs drive the PIA CB1 to generate an IRQ to the 6802. This needs testing to ensure it all works properly (the 4068 at IC6 that feeds CB1 is a common fail).
Judder said:Also is the "Input Read" test checking IOJ3 Sound Select input (CB2, PB0, PB1 etc.)?
Input Read test is giving
U10 ff PB0-7 = 1f
but not totally sure how to interpret the results!
Judder said:Dave2084 said:For this little project the last bit is interrupts.
I need to get this to work as the sound inputs drive the PIA CB1 to generate an IRQ to the 6802. This needs testing to ensure it all works properly (the 4068 at IC6 that feeds CB1 is a common fail).
Is the Interrupt Check test working at the moment BTW?
Just testing a Defender Sounds Board here, and everything passes fine except for this which just gives "E: Timeout", but I think that was the same for the other boards I tested
//
// This is used to test /IRQ: 6802 CPU U9 Pin 4 is pulled low by 6821 PIA U10 /IRQA Pin 37 or /IRQB Pin 38
// This is triggered by 6821 PIA U10 CB1 Pin 18 being pulled high when a sound input is triggered through 4068 U6
//
Judder said:Also is the "Input Read" test checking IOJ3 Sound Select input (CB2, PB0, PB1 etc.)?
Input Read test is giving
U10 ff PB0-7 = 1f
but not totally sure how to interpret the results!
//
// Input region - IC10 6821 PIA Inputs from ROM board (PB0-7)
//
// Sound board Inputs on 0x4000
// 4J3-1 - Key 0x01 PB0 - 4J3-3
// 0x02 4J3-2 - PB1 0x02 PB1 - 4J3-2
// 0x01 4J3-3 - PB0 0x04 PB2 - 4J3-5
// 0x08 4J3-4 - PB3 0x08 PB3 - 4J3-4
// 0x04 4J3-5 - PB2 0x10 PB4 - 4J3-7
// 0x20 4J3-6 - PB5 (W4 Installed & W9 Removed) 0x20 PB5 - 4J3-6 (W4) / DSW-2 (W9)
// 0x10 4J3-7 - PB4 0x40 PB6 - DSW-1
// 0x80 4J3-8 - PB7 (W12 Installed) 0x80 PB7 - 4J3-8 (W12)
// 4J3-9 - No Connection
//
// 0x40 DSW-1 - PB6
// 0x20 DSW-2 - PB5 (W4 Removed & W9 Installed)
//
Arv said:Would you be able to test Williams system 3-7 boards with this?
Obviously with a bit coding like?
Dave2084 said:I did add some comments to the source code but maybe it needs more:
Code:// // This is used to test /IRQ: 6802 CPU U9 Pin 4 is pulled low by 6821 PIA U10 /IRQA Pin 37 or /IRQB Pin 38 // This is triggered by 6821 PIA U10 CB1 Pin 18 being pulled high when a sound input is triggered through 4068 U6 //
Judder said:Also is the "Input Read" test checking IOJ3 Sound Select input (CB2, PB0, PB1 etc.)?
Judder said:I'd probably add a little comment highlighting the grounding of an active PIA pin in the 1.5 second window to test.
Judder said:Also the DAC test works great - here's a slightly amended array which produces a chromatically scaling test - a bit more dog / lounge friendly![]()
PaulSwan said:I only have a corroded Defender main board that I'm hoping works enough to try out. LMK when you've pushed.
PaulSwan said:I tested out the clock master version of 6502 on Astro Fighter this morning and it worked OK. There is 16Kb of 4116 on this platform as well. In test, I got a consistent single bit error in the RAM test of the DRAM. Splitting the block into two halves was enough to get a consistent DRAM test pass on this platform with ITT 4027 DRAM.
The DRAM timing logic is probably the most complicated bus cycle in most platforms, especially since it's often shared with video access, so given that I suspect in the Defender case there is a bug in the 6809 implementation or special accommodation needed for Defender specifically (I needed one for 6502 on Astro Fighter). I'll see if I can deduce the DRAM cycle to see where the problem is.