WordPak 2+

Description

This page shows the details how to build your own WordPak 2+, a new video cartridge for the TRS-Color 1,2 and 3. This cartridge provides:

In this page you will find the 80 column drivers for Disk Basic as well OS-9. Ready to use NitrOS-9 distros for download as well.

Schematics

PCB Layout

 Although I'm using a DB-15F as video output this is not a VGA output. You will need to find a 15 KHz compatible monitor (the sync is negative) or a converter board. 

The RGB2VGA described in this website is not compatible (there is a voltage drain I cannot understand when using VDPs). You can use a 1084-S Amiga monitor, a SCART to HDMI converter or a GBS-8220 board. To use with the CoCo3 RGB monitor you will need to invert the horizontal and vertical sync. Optionally you can use the Sony PVM CRT broadcast monitors as long they have RGB inputs.

The V9958 has no composite video output (this feature was removed from V9938). You can with a little change use a V9938 and implement a composite video output, but this is not covered here.

How it Works

The board is mapped to the FF78,79,7A and 7B addresses. If you compare to MSX computers, they are the same respective ports as 98, 99, 9A and 9B.

I will not be covering how the VDP works, you can check the V9958 Technical Manuals on internet. Here a screenshot of OS-9 Level 1 in 80 columns:

And a BASIC example how to activate the GRAPHIC MODE 7 (256x212 with 256 colours):

10 POKE &HFF79,&H0E:POKE&HFF79,&H80

20 POKE &HFF79,&H40:POKE&HFF79,&H81

30 POKE &HFF79,&H0A:POKE&HFF79,&H88

40 POKE &HFF79,&H88:POKE&HFF79,&H89

50 POKE &HFF79,&H11:POKE&HFF79,&H87

60 POKE &HFF79,&H1F:POKE&HFF79,&H82

100 POKE &HFF79,&H00:POKE&HFF79,&H40

105 FOR Y=0 TO 211

110 FOR X=0 TO 255

120 POKE &HFF78,X

130 NEXT X

140 NEXT Y

Part List

Assembling the Board

In the files zone you can find the WordPak2.brd. It's the Eagle board file format. You can use this file to order a PCB set from OSH-Park.

Here is the final board assembled. It fits a Coco cartridge you just need to cut a hole for the connector: