The new boards that use the 41464 DRAM memory chips have arrived and been built.
A couple of interesting things were discovered. On first power up, the board exhibited the same 'faults' as my SRAM based boards - what tha?
The issues were:
- Running a test app to write/read to VRAM would identify the occasional failed write.
- Running RomWBW TTY emulation code (using the compatible TMS9918 driver) - would generate some on screen corruptions - some characters would be duplicated and some characters would get blanked.
So perhaps the issue is not hardware but software.
So in the course of investigating, I ended up learning two things:
- Although the V9958 is backwards compatible with the TMS9918, its timing requirements are a little different - especially in text mode - it needs a few more wait states for VRAM access - generally in the order of about 4us or about 30T states for a cpu at 7.3Mhz. Once I updated the RomWBW TMS driver to include some additional wait states - the TTY emulator worked perfect. Now my RC2014 RomWBW has native support for 80 column text.
- But what about the test code that was identifying failed writes? Well it turns out I had failed to disable interrupts during some of the IO to the chip - the RomWBW interrupt handler within the TMS driver also interacts with the chip. By not disabling interrupts, the sequencing of register writes can become disrupted, causing random like errors. I knew this, but simply had not noticed a section without the appropriate DI/EI instructions. It definitely was a facepalm moment.
Perhaps the SRAM version works? I may go back and test again with that version - but I don't have enough spare parts at the moment - so gonna keep moving forward for the moment, with the DRAM version.
So far I have only been able to test using the composite video signal - using a cheap ebay video to VGA converter. The conversion works, but colours are not very good - and text can be very blurry. At 80 columns it very difficult to read text.
So next step is to try the RGB signal, using the OSSC. I wonder what drama awaits me?