skiselev / 8088_bios

BIOS for Intel 8088 based computers
GNU General Public License v3.0
513 stars 61 forks source link

NEC V20 optimized Book 8088 bios crashing #40

Closed ssvenn closed 1 year ago

ssvenn commented 1 year ago

At least I think it is crashing, I tried flashing the bios-book8088-xtide-v20.rom version first since my Book 8088 has a NEC chip in it. But this caused all the CGA games I tried to stop displaying video. Some of them seemed to crash entirely, others I could still hear the sound but had no display. Text mode programs all worked fine.

I've now switched to the other bios-book8088-xtide.rom version and all the games that worked with the stock Book 8088 bios work fine again. What are the NEC V20 optimizations, could they interfere with the CPLD CGA implementation or is it more likely that I have a dud CPU?

My particular CPU is marked NEC 9621ND V20 D70108C-10 (c)'84NEC

skiselev commented 1 year ago

The only difference between V20 version of the BIOS and the 8088 version is the XT-IDE BIOS extension flavor - with and without V20 instructions respectively. There are no differences in the BIOS, and it uses exactly the same binary image.

I am wondering if at boot the system identifies the CPU as NEC V20? I'd expect many more things to fail if the CPU is faulty. So it is definitely a weird and interesting issue. Have you tried running diagnostic software like CheckIt?

ssvenn commented 1 year ago

No I haven't tried checkit, but I can flash the V20 version again and do some more comparisons tomorrow. The BIOS does report Main Processor: NEC V20 during boot.

I can test some more eeprom chips too in case something weird is happening with the programmer. I'm using a minipro tl866cs and it verified the winbond 27c512 chip fine after writing both times.

ssvenn commented 1 year ago

Ok I've flashed the V20 optimized rom to a new chip and was unable to reproduce the issue, everything works fine now... I've also reflashed the chip that I had the problem on initially and can't reproduce it on that one either. Both BIOS versions pass all the checkit tests too. So I'm thinking the problem was the eeprom or the programmer, these are used chips from ebay that came with random data on them but it seems to have cleared up by programming them a couple more times. It was still weird that it worked for text mode but crashed when switching to graphics modes! :)