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:
Yamaha V9958 Video Display Processor (the same used in MSX2+ and TurboR machines)
128K VRAM
RGB 15Khz output
Hardware sprites (16 colours, 32 sprites in total, 8 max in the same horizontal line)
32, 40 and 80 column text modes
512 x 212 (4 or 16 colours out of 512) and 256 x 212 (16, 256, 12499 or 19268 colours)
Horizontal and Vertical scroll registers
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
1x V9958
4x 4464 64K-4BIT DRAM
1x 74LS138
1x 74LS133
3x 10uF Elko
4x 220uF Elko
2x 22uF Elko
3x 2N5401
1x BC548 (if 2N3901 reverse orientation)
1x 21.477270Mhz Oscillator
3x 104 Ceramic Capacitor
1x 22pF Ceramic Capacitor
3x 10K Ohms
3x 27K Ohms
3x 12K Omhs
4x 100 Ohms
4x 1K Ohms
1x DSUB-15 Female PCB mounting
4x 18-DIP sockets
2x 16-DIP sockets
1x 64-SDIP (shrink) socket
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: