Close

Up and running =)

A project log for TX8 Retro computer

This is my retro inspired 8 bit 65C02 based home computer. It is a newly designed computer completely built on old integrated circuits.

retro-chipguyRetro Chipguy 01/30/2021 at 10:520 Comments

It has been a while since I had time to work on the TX8 but the past two days I managed to squeeze a few hours in.

The last time working on the system I got the new TMS9929A devices in and they all seemed to be working. At the time I did not have a display connected so I assumed that when I could read and write data properly to the VRAM that the VDP was working. Unfortunately that was not the case. After finally building a SCART RGB cable for the system I could see that the monitor was getting a proper sync but the displayed pattern did not make any sense at all.

After playing around (using BASIC) I noticed that the display memory seemed non linear. When writing a sequence of data to the display area I could see on the display that different segments of the display getting updated in a non linear way. Obviously that was not what I expected.

I went back to the schematic and studied the VDP section and actually had to study it for a while before I caught my mistake. Can you spot the error ?

The data sheet is extremely clear on how to connect the VRAM and I missed it. Look at the AD0 to AD7 pins of the VDP. I have mistakenly reversed the naming. This was probably done very early on the design process and I never caught it even though I spent months mulling over the schematic.

Bah, never mind, mistakes were made but it is a rather complex design with a lot of different buses and signals.

After fixing this error (cutting and replacing traces) the system started up as expected.

The BASIC that I am running is a 65C02 enhanced version of ehBasic. ehBasic was written by Lee Davison and is a derivative of Microsoft BASIC. It is a bit slow and I wold have preferred an integer BASIC but it has proven instrumental in debugging the hardware.

In the next update I will talk a little about implementing the keyboard driver.

Discussions