Page 1

TREVOR BROWN GSCJS CHRIS SMITH G1FEF

MIKE WOODING GSIQM BOB ROBSON GWBAGI

BRITISH AMATEUR TELEVISION CLUB


12C Part-l — THE VDU INTRODUCTION These pages are the first instalment of an I20 project book, other instalments will follow with further issues of CQ—TV, building finally into a concise reference and project book on the subject. The book will support a full construction project finalising in a complete l2C unit that will control all video modules to be described in future instalments. The final unit will also control existing l2C equipped commercial equipment, such as VCR’s etc. So. it is well worth looking to see if that new VCR or whatever you are about to buy is equipped with PC capabilities.

The project will be backed by a set of printed circuit boards that will aid construction of the complete unit. The first PCB is available now from Members' Services, and is for the Visual Display Unit, and will generate an RGB signal that can be used to drive an RGB monitor, or can be PAL coded to provide a composite colour signal for a monitor or TV set after modulation to channel 36 or wherever). The unit will display the options menu generated by the CPU card to be described in the next instalment with the next issue. It will also display an in-built test card, teletype, or even decode and display Teletext should a suitable video feed be available.

THE I20 STANDARD So what is it, this IZC ?

PC is a two—wire serial interface, designed by Philips and used in the majority of their equipment. if you have a TV or a VCR built over the past five or six years, it will probably have some form of IZC bus used internally, and this is often brought out to a socket somewhere on the equipment for external connection.

British Amateur Television Club

The bus was designed to allow different devices within an item of equipment to communicate with each other. The interface had to be inexpensive to implement electrically (i.e: no high-speed synchronous bit streams) and use the minimum of interconnections. IZC fills all these requirements very nicely. IZC is not a particularly high—speed system, the maximum clock rate is only 100kHz. It is a serial system, so all the bits of digital information have to be sent one after the other down the same piece of wire. The system is, however, robust. It can exist inside a television set alongside the high electrical and magnetic fields that exist therein without being affected. The timing constraints are quite wide, so different devices can communicate at different speeds.

Physically, the bus consists of two wires,

SDA (Serial DAta) and SCL (Serial CLock).

The drivers that talk to the bus must be open-collector devices, so different chip types can all communicate on the same bus (e.g: TTL, CMOS, NMOS, etc). Both lines should be pulled up to the positive supply rail (+5V in the case of TTL). This mechanism allows many output devices to sit on the bus together without causing any conflicts.

This arrangement is called a ‘WIFlED AND’ function, because the outputs are wired together and will only be high if driver—1 is high, and driver—2 is high AND ...... etc. The only limit on the number of devices that can be connected to the bus is the maximum bus capacitance of around 400pF.

Before going any deeper into the way l2C works we need to understand some of the terminology used by Philips when describing a typical configuration.


«12V

2

.5v '1

/

v

RLLK7

RED

coNa

l7

5

s

$5115

03

Its 7117

3,

SYNC.

1521.

day

R10 “‘2

INQIQB

‘3

CON3.'I

s

R3

4K7

2< ‘<JI3

R2 4K7

R1 4K7

I

R20 1K

Its 7417 GREEN 7

5Q

BLUE 8

#15 12

EL H1 at

A7 22 23

m

A5 24

.

_

,__._,

._...____

s

I

s4

Is

an

3

8

111

151

15 “ as -——,___._, E 1

As 25

L

E

138

333

I

own

O

:U

DU 1!

4

12

3

m

Ice 171. 9

5‘5 SW

9

s

Egon?

—‘

.13,

19

6

7LLS32

13

13

24

._._H—.—

.

.___'

o——-—-

,__,,

mp

'11

515 :93F

_

em:

_

56K

23

14

FE

‘7 25

SAND

TE

47"?

HEflL

51an ,r,

"'

0—7

38._

1.7 E7”.

II H

I

ZERO

+12v

H

coN2.1 E

‘ £23

In:

STORE

LUCK

’—*

5

:13 EENF

can l—~——l

TTC

As

F6

AB

vcs

,I

A5

36 35

M

3,

i

,1

CRYSTAL

‘ —

H

Ci 22m

C13 XSPF

'

lei GND

an

a; DE

j

5

END «70? R22

_ we m,

W «7

131 Imus

l

13

c1: 15UF

—-4

I]

3E 31

M

R8 4K7

:19 tuner

j

33

A2

1E7

21

470R HEB

~sv

A3

EURO 0:1

1s gm

J\Iu I/

I

39 37

1? TE/fg

11

lI

39

A7 A5

sAASEB

4

l '

ENPF

V;C§7 __8<}S

f jl

47uPF

1‘ ya 13.579142

L

15

7

190

an 5m

5

22

40 A11 nu 2

1‘ 5mm

3[\4

I

23

A12

HDK

5 TTD

couzg

2:

D" 3

PHASE

C 12 ”‘7‘ TER

Fido] L1 15w

10M"

DATA ”"1”“

“:3 AASEEX S

MHZ

‘L_

— 8

STORE AMPLITUDE

a

21 PLL FILTER 1

osc.

m is. Y

R5 “‘7

FXLTFfi

STORE

m?

10x

D!

16

’—

Hf.

F'LL ”MING

19 PLL FILTER

RES 330a

an

[)4

D3 24 be

:24 15PF

ca

1.,_,

e

KBLAN

RS 4K7

32 29

ma

47NF

Eu? .sv

1

as

cxa

1

TTC

vcs BLACK

1”

C10

S IC4

17

TTD

1._.__H_._'-EVEL

as

°_.

._1__SYTV cv 1N E

L

14 15

Vt?”

_._H]_.i vILs

5

an

5N”

Ex” muF C7

.13,

1

|7

541

I

16

D6 as 27

.5v

com[VHS SVNC].

‘5V

T

:17 25 28

5

H

e

11

e

13 R

15

WfiJ

Z

m

1

Eu?

5

9

12

15v

101m;

Ice

t7§ BESS a7

: Z

1

15

C3

BE

E

12C BUS \l ‘\ \

i I) I

__

—_

,

i

ave

NICAD

T tflUL 1

.

.

5m 3 SCL 4

Fig.1

Visual Display Unit Circuit Diagram

British Amateur Television Club

British Amateur Television Club


R3

RE

m

«<7

«<7

4K7

R12 4711a

T

COM

CS “F

II

1—,

—1

a vaao

IN

R13

”1

~12v R15 10K

.sv

~sv

- ‘2v

as

as

D4 25

15

no as

15

be 24

‘3

«7

’5” DD EB

my

A12 3 111 E

7

I—tk.

9 FE

TTC

w

VCS

‘2

Taxis

s

[\4 I/$51157

_{>

19

38

25

AB

35

4

5 35

s a

37

M

34

A3

33

«2

32

EURO GET

M 31

IE7

M]

DE an

SEL

W

LINK THISWAY +— TO OMITIcg AND

LosE GENLOCK

ALso LJNK P11113115

1m Icq Secret-r:

7

8

1K8

9

em

10 22

Ice 6264

27

s

NOTE‘I

3

14

I I1

923

van

R22

was

lo w

————————————————

.

Y4

II

.

I

Il

Rtslk

II

I

Ic11 I LEEEE F‘I|

:5);

RB 4K7 1:1? 1K2

R7 4K7

D2 lN‘Il‘IE

m

12c BUS

I

7|

\

rave

_N1CAD

T

:2 100%

s S

British Amateur Television Club

%I

a

ICED g

W,

355,:

j :lVB

2

IK

ICII

s

a

I 5012.1

|

ICii ILEEEEL+E51L_J I

l:

D1 1N‘rl48

\\

I I I

lét’m“

'D‘ €2.10"

RIBIk

j.

I

XTAL.USC. IF NO GEN,LOCK

I | I

20

21

10

~5v

‘ 24

AB A7

$115243

s

E3 21

33

20 gm

3

” E

w

AS A10

11 SAND

26

12

23

? TTD CON2.2

*<I

17

17 SUN

CoN2.‘l

11

19

-ices 1e V

oa-l-NOTE‘I

a

19

ea

D5 27

4K7

a

s

D7 23

D6

v

REAL TIME CLOCK

32.7saKi-17


MASTER: A device on the bus which starts a data transfer, generates the clock signal (on SCL) and stops the transfer when finished. The IZC bus is a ‘multi—master' bus, so there can be more than one controlling ‘master’. The protocol laid down in the IZC specification ensures that two masters won’t collide and try to take control together. SLAVE: The device which the master addresses. TRANSMITTER: The device which sends data over the bus. RECEIVER: The device which receives data over the bus.

These four terms are used a lot in describing lZC operations, and it is important that we understand what they mean. There are four basic modes of operation on the IZC bus: 1) The MASTER TRANSMITTER. This is where a device will initiate a data transfer from itself to another device. The MASTER TRANSMITTER generates a ‘START CONDlTlON’ on the bus and addresses a device, that device then becomes the SLAVE READER. 2) The SLAVE READER. This device acknowledges the MASTER TRANSMITTER and patiently sits and gets talked at, until the MASTER TRANSMITTER decides that enough data has been sent and generates a ‘STOP CONDITION’. 3) The MASTER RECEIVER. This is where a device will initiate a data transfer from another device to itself. The MASTER TRANSMITTER generates a ‘START CONDlTlON’ on the bus and addresses a device, when the device being addressed acknowledges the MASTER TRANSMITTER becomes the MASTER RECEIVER and receives data from it. 4) The SLAVE TRANSMITTER. The device acknowledges the MASTER RECEIVER and starts sending data.

British Amateur Television Club

The transfer is not over until the MASTER RECEIVER generates a ‘STOP CONDITION. The ‘START CONDITION’ and ‘STOP CONDlTlON’ are two unique conditions that can only occur on the bus when a MASTER wishes to start or stop data transfer.

The ‘START CONDlTlON’ occurs when there is a high—to—low transition on the SDA line whilst the SCL line is high. The ‘STOP CONDlTlON’ occurs when there is a low—to—high transition on the SDA line whilst the SCL line is high. These two conditions should not occur at any other time, because the only time the SDA line is allowed to change state under normal conditions is whilst the SCL line is low.

A PRACTICAL APPLICATION In this first practical application of IZC we will look at a design for a VDU board. This PCB contains the SAA5243 and SAA5531 Teletext chip set. The SAA 5243 is controlled via the PC bus, and, apart from decoding Teletext information, it can display up to eight pages of information stored in an 8K 6264 RAM chip. Any of the eight pages can be updated whilst a different page is being displayed. The display is fully Teletext compatible (BBC Mode—7 graphics), thus graphics as well as text can be displayed.

The circuit is shown in Fig.1, and was originally designed to interface with the Teletron and CPU board. However, the board will also interface with the Spectrum computer.

All the l/O decoding is carried out ‘on board' by lCt, lC2, lCS and |C6. This provides an l2C bus to control the SAA5243, but the bus may be taken to other PC devices as well. In fact, on the PCB there is another l2C device, lCtO, a PCF8583. This is a clock/calendar IC and is battery backed-up so the controlling CPU now has a real—time clock facility!


The incoming video is buffered by TR1 and TR2. This is a high—impedance input, so the video may be looped or terminated into a 75—ohm resistor. The buffered video is then routed to lCS, the SAA5231. This device effectively genlocks to the video signal, synchronising all its clocks, and then attempts to extract Teletext data and clock signals from the video signal. If the applied signal contains Teletext information (i.e: from the BBC etc.) then the SAA5243 will be able to decode and display it, providing that the controlling CPU tells it to do so!

Whether the incoming video contains Teletext information or not, the board is now genlocked to the signal, and the Red, Green and Blue outputs from the SAA5243 will be in synchronisation. So, all that is required now is a PAL coder and you can really go to town — unless you have an RGB monitor that is. Of course, the SAA5231 can be left out altogether and the SAA5243 allowed to free—run. The device will still generate RGB and sync. pulses and can then be used to generate captions, test cards etc. If the Teletron option to control the board is taken, there is some custom software available that will allow you to display a test card, generate captions, decode and display Teletext, control an IZC vision switcher (to be described in a later part of this book) and generate l2C control signals.

This last option is possibly the most interesting. For example: if your video recorder has IZC capability how about a computer controlled VCR? There must be a good application there, especially for all you TV repeater builders!

CONSTRUCTING THE VDU The circuit diagram of the Video Display Unit is shown in Fig.1, with a component overlay in Fig.2. The PCB is of standard Eurocard size and will accept a DIN 41612 connector. The only specialised lC’s are the SAA5243 and the SAA5231, but details

British Amateur Television Club

of suppliers of these devices will be forwarded with the PCB, which is available from Members’ Services. The SAA5231 need not be fitted to the PCB if Genlock or Teletext decoding facilities are not required. The links should be set as per the notes on the circuit diagram (Fig.1) depending on whether this device is fitted or not. The PCB is double—sided but does not feature plated—through holes (a matter of keeping the costs as low as possible for you) so attention must be directed to those components which are to be connected to both sides of the board, ensuring that they are soldered on both sides.

Ideally, sockets should be used for all the lC’s wherever possible, but choose ones that enable soldering to both sides of the PCB wherever necessary.

COMMENTS Unfortunately, it will not, be possible to test this unit until it is mated with the CPU card to be described in the next instalment. However, do not be put off building this card until then. We need to get some idea of how many people are building the project in order to get the PCB’s ordered in the correct quantity. Orders for future PCB’s will be based on the orders we receive for this VDU PCB. It is hoped that this entire project will be well supported and that the end result will be a useful addition to the shack and that the book will become a useful reference text on the subject of IZC. The whole concept has been designed to be very flexible, so that new ideas can be incorporated by simple software updates. The book is being supplied in this instalment form in order that every member receives one free—of—charge. This method will also allow the book to grow as necessary by the inclusion of extra projects and new ideas. lt is hoped that the Club may be able to supply a binder for the


book at a very reasonable cost in the near future.

software mentioned above. If you require any further information on this series, or about l2C itself, please send an SAE to Trevor Brown GBCJS, 14 Stairfoot Close, Adel, Leeds, L816 BJR.

In the next issue we shall be describing the CPU board and running the custom

I

N

LN”.was..::22322::23:aaaaaaacsam

INUJ %) at

l

451—

filai:~

4%.

A “QaT 395+; x) a

8

3+— «_E

«E g

53 .3

m

g ___glfii 2—"

g

..

ri 9

5:“ :2:

a?

I» ?

I.

ii

a“

“at“ em =

II 2:: g

Fig.2

33%:

%‘

CON3

g.

I I

i5

.3

5

<33“;

I

%)

(on

Printed Circuit Board Component Overlay

British Amateur Television Club

‘3:

:


12C Part—2

This chapter deals with the building of the CPU (Central Processor Unit) board. interconnecting it with an ASCII keyboard and the VDU card, which was described in the previous chapter. This section also covers installing and operating the custom software that controls the unit. The end product will be a unit which generates an IZC bus (the two wires called SCL and SCA, as described in the last section), which will connect to, and control all, the future modules. The only other connections to this pair of cards will be RGB and Sync, which are the outputs to a monitor to display the control menu’s that will help you operate the unit, or display decoded Teletext or locally generated teletype messages, and a power supply. The video input, which is two—fold, will enable you to genlock the RGB to the rest of your station for superimposition work, and, if the video at that input is complete with Teletext data on it, will allow you to decode it. The video feed can be an off—air feed of broadcast TV signals (not off-tape), but it could also be an off—air feed from a satellite receiver, where some channels also carry Teletext data. Decoding Teletext is nothing new, but being able to edit and superimpose that data onto your station output is something you don’t see every day.

NOTE: As with all new and complex state—of-the-art projects such as this we encounter unforeseen problems as we go along, and of course uncover the odd mistake or two. To cover this eventuality, as and where necessary, each part of this book will feature a "fie/a’BU/Ast/hflsj’ listing any problems etc. encountered with previous parts of the project. This field bulletin(s) will appear on the rear page(s) of each part and will be included with each PCB it relates to. If you are building this

British Amateur Television Club

THE CPU project without using the Club’s PCBs send me (Trevor Brown) an SAE marked IZC field bulletin. If you send more than one SAE I will send out further bulletins as they are issued.

CARD INTERCONNECT The PCB cards are in a format known as Euro—card, and as such they are a standard size for housing in a card frame. The edge connectors are called DIN 41612 and are indirect edge connectors, i.e: they come in two parts; a plug which solders directly to the PCB, and a socket which it plugs into. They are available with a choice of one, two, or three rows of connectors (a, b and c), and there are 32—pins in each row. They also have two kinds of plastic housings, one that only allows for two rows of connectors, and one that will take all three.

It is suggested that the type with the wider mouldings is used incorporating a connecter having three row of pins. This is not necessary for any of the cards yet designed or planned for the future, but allows us to set a standard at the outset, which will mean that cards from any one system will plug into another, useful for testing and fault finding. Also, the use of an extender card is extremely helpful when working on racked card systems such as this, and if you standardise one one type of connector system you will only need one type of extender card.

The diagram in Fig.1 shows the interconnections between the VDU card and the CPU card. Unfortunately. try as hard as we did we could not avoid a design that has some wires crossing, the cards are quite small and the circuits complex. The a,b and c rows are identified on the plugs and sockets, as are the pin numbers, but you do need 20/20 vision or 7


VDU CARD

CPU

a1

a1

b1

VCC

a2

a2

a3

b2 b3

bit 0

aLr

bit 1

SDA

b4

bit: 2

SCL

alr—I

all

CARD

KEYBOARD

a5 36

[———-aS.36

g) GREEN—a7 BLUE a8

a7

b7

a8

b8

bit 6

| a1o———."LI [_a‘)

b9

ground

m SYNC

E

RED

[‘3

VIDEO

IN—-39

alO

D0

MO

b13

__a14

an

blll

P—alS

315

b15

———al6

al6

blé

——al7

a17

bl7

>——a18

e118

b18——————

a19

b19———J

aZO—j

aZO

r5121

M1

821'——

A7

a22__. .|_. ..... a23————~1

aZZ

bZO

b23

a2&

b24

aZS

bZS

a26-fi

2126

b26

8255 ce a27

a27

b2fi

5128

5128

1328

2129

a29

b29

a30

a30

b30

a31

L‘b31

a32

b32

A5

A4

a25—~]———-

a3l

I

a32

Fig.1

Cardlnterconnections

British Amateur Television Club

The new CPU is shown in Fig.2, although compatible with an upr Teletron CPU the pin—outs are different interconnections must be made with I will assume that all constructors of th project are using the new CPU pr circuit board. The component overt: shown in Fig.3. Like the VDU circuit I: this board is through hole plated, s sockets can be fitted for all the chips.

b22

-a23

aZZI

The only external connections are to monitor and keyboard, video in I required for Teletext or genlocking), power supply and the PC bus (SCL SDA), which is the interconnect to forthcoming modules and any comm: IZC equipment.

This card is the brains of the system. where the 280 microprocessor is tc found, along with the RAM and EPI memory, where all the software instruc that run the system are stored. The circuit evolved from the original Tali CPU, which appeared in the E publication “Micro and Television Proje The original CPU can still be used for project, but it will require some char If you have one and would like to upn please send an SAE to me (Trevor Br and I will let you have the details.

b21

1

IORQ A6

MODULES

strong glasses to see them. The v between the cards should be kept as s as possible and the cards should ideall mounted vertically, as is the case in a frame. The power supply needs to ”clean” and well regulated.

THE CENTRAL PROCESSOR UNIT (CPU) CARD

a13

L—a19 WR

ground

‘1—

b11

—-—-a13

T0 FUTURE

bit 5

all

al2———l

RD

+ 5 volts

b5——-bit 3 b6 bit 4

all———+—IL alZ—l—Er—strobe

D1

POWER PACK

+12

VOltS

ground

NOTE: on page-5 it was stated the VDU circuit board would not feature thrt plated holes, which was the ori intention. However, the probl encountered by the Committee Guinea (yours truly) in building the protr convinced me that, hang the expem would go for plated through holes. British Amateur Television Club


strong glasses to see them. The wires between the cards should be kept as short as possible and the cards should ideally be mounted vertically, as is the case in a card frame. The power supply needs to be ”clean" and well regulated.

The only external connections are to the monitor and keyboard, video in (only required for Teletext or genlocking), the power supply and the lac bus (SCL and SDA), which is the interconnect for all forthcoming modules and any commercial l2C equipment.

THE CENTRAL PROCESSOR UNIT (CPU) CARD This card is the brains of the system. It is where the 280 microprocessor is to be found, along with the RAM and EPROM memory, where all the software instructions that run the system are stored. The CPU circuit evolved from the original Teletron CPU, which appeared in the BATC publication “Micro and Television Projects". The original CPU can still be used for this project, but it will require some changes. If you have one and would like to uprate it please send an SAE to me (Trevor Brown) and I will let you have the details.

There are several link connection options on the PCB and these are as follows: 0 CON2 - should be made so that pin-6 of the 8255 is routed to 831 of the 41612 edge connector. 0 CON3 — should be made A—C because we are using a 6256 RAM chip.

The other connection configuration of CON2 allows the CPU to be used independently of the VDU, and the other configuration for CONS allows the use of the smaller 6264 RAM chips to be used for less ambitious projects. The back—up battery 81 is a luxury and need not be fitted in this application. The interconnection diagram in Fig.1 shows how to connect the two cards together and also how to add an ASCII keyboard to drive the system. ICS is a preprogrammed EPROM containing the lac software and must be purchased from Members’ Services. When the EPROM is fitted the two units can be powered up and, if all is well, the start—up menu will appear on the monitor. This is irrespective of whether a keyboard is connected or not.

The video signal produced by the VDU module can be connected to an RGB monitor, or to a PAL monitor via a suitable coder, such as the Maplin kit described on page—45 of CQ—TV 152.

The new CPU is shown in Fig.2, and although compatible with an uprated Teletron CPU the pin~outs are different and interconnections must be made with care. I will assume that all constructors of the PC project are using the new CPU printed circuit board. The component overlay is shown in Fig.3. Like the VDU circuit board this board is through hole plated, so IC sockets can be fitted for all the chips.

The same rules apply if using this coder kit with the lac VDU - R0 and R1 are joined together for the red input, GO and G1 for the green and BO and B1 for the blue. Pin-3 of PL4 on the coder (blanking) should be grounded.

NOTE: on page-5 it was stated that the VDU circuit board would not feature through plated holes, which was the original intention, However, the problems encountered by the Committee Guinea pig (yours truly) in building the prototype convinced me that, hang [/79 expense, we would go for plated through holes.

The keyboard should be an ASCII type and have a negative strobe. Most keyboards have a strap facility for selecting the strobe polarity, if yours does not and is of the incorrect polarity, then you will have to add an invertor chip, having first read John Wood’s series on Logic Circuits in CO—TV 145 onwards.

British Amateur Television Club


Y‘

C14

47pf

R4 330R

820R

.

4 OMHZ

n3

1KOFI

R5

Ic12c

c1

L.)

22“ TR1 2N3702

TRZ

2N3702

3x195

I

‘;21OD ~4oo

1? C2

1000f

Ra

seen

__.

ACB CON2 3 HEAD

,

csc

17402

Ic11c

IC1OB

490p

7400

R 3K3

1N4 48

muth»

1

10n 10h

1;:

Fig.2

SEL

1

103I161_161_161_161_161'161T

CPU Circuit Diagram

British Amateur Television Club

10

British Amateur Television Club


OSC SEL

jICiiC 7402

1

1N4 48

‘°'“T‘°"T‘6T‘°"f‘5T“TTWT 1

1

—l—

3V6

NICAD

British Amateur Television Club

11


4+

-—°'

—I:J—:xu

_

It should go without saying that you v get a menu on the screen, or even 2 pulse out of the unit, if you have not the custom EPROM I06, and correctly and populated both the CPU and thi cards and the interconnects.

"E‘?’ ED .MSG" a

8

{L

9

am

Ial‘

§

E

i~

S

In

“'00 99°52

_m

8

U

_.

In the next issue we shall be descril vision switcher that has eight inputs 2 controlled via the IZC bus.

m

"K-

3—: — 2”.

5 __

I

U

I".

U

DRIVING THE I20 VDU USIN THE EXISTING TELETRON (

S)

TELETRON VERSION 2.2

;<eza

not

N

This is the documentation that 906: version 2.22 of the Teletron firmware, is supplied in a 32K Byte EPROM (27 and contains all the code necessary ' the new Teletron CPU card and the teletext display card.

§

m—

i -oa —

.—‘

m

”— “E’-

are

3f... 0131

U—

to

Future upgrades will be provided nominal charge and will provide supp all the PC projects as they appear in tl booklet, attached to CQ—TV.

(J

I I '0

(J H

‘"

___

SNDJ

- :3 8 I‘-

3W

x

I

H

U

u

H

a) L}

—N

__U

I I «-

'-’

suit

S!Ll

we

Upon switch—on a menu syste displayed which allows you to dis; built in test card, enter a teletype mo caption generation, set the date and and has provision to include futur projects, such as a vision switcher, switcher, and so on.

g

won

__r1_l

I

Hg

C P U BR TC

BOR D

The TOS option on the first menu r you in the command line environmer commands for which require The commands recog explaining. from TOS are as follows :— CALL, CLS, DISASSEMBLE, EXAI FILL, IN, MENU, MODIFY, REGISTERS, SEARCH i

aI] {I}o

Each of these commands will looked at in some detail.

l

Fig.3

This allows you to call a machine routine held anywhere in the 280's mt

CPU Circuit Board Component Overlay

British Amateur Television Club

not

CALL

hasaaseasasassszsassszsn°~m“*""1I

\

12

British Amateur Television Club


It should go without saying that you will not get a menu on the screen, or even a sync pulse out of the unit, if you have not fitted the custom EPROM I06, and correctly wired and populated both the CPU and the VDU cards and the interconnects.

In the next issue we shall be describing a vision switcher that has eight inputs and is controlled via the IZC bus.

DRIVING THE I20 VDU USING THE EXISTING TELETRON CPU TELETRON VERSION 2.22 This is the documentation that goes with version 2.22 of the Teletron firmware, which is supplied in a 32K Byte EPROM (270256) and contains all the code necessary to run the new Teletron CPU card and the new teletext display card. Future upgrades will be provided at a nominal charge and will provide support for all the IZC projects as they appear in the IZC booklet, attached to CQ—TV.

Upon switch—on a menu system is displayed which allows you to display a built in test card, enter a teletype mode for caption generation, set the date and time, and has provision to include future l2C projects, such as a vision switcher, audio switcher, and so on. The TOS option on the first menu places you in the command line environment, the commands for which require some explaining. The commands recognised from TOS are as follows :— CALL, CLS, DISASSEMBLE, EXAMINE, FILL, IN, MENU, MODIFY, OUT, REGISTERS, SEARCH

Each of these commands will now be looked at in some detail. CALL This allows you to call a machine code routine held anywhere in the 280’s memory

British Amateur Television Club

map. Typically, you will enter a routine into RAM and use this command to start

running it.

The syntax for this command is: CALL moor where 50006 is a four digit hexadecimal address, i.e: 0000 to FFFF.

Example: CALL 9A00. This command will transfer control to the address at 9A00h. Tips : If your code keeps the stack tidy, you may return control to TOS by executing a RETurn instruction. The registers are saved on return to TOS and may be examined using the REGISTERS command - see later.

CLS Perhaps the simplest of the commands, this will clear the screen and return the cursor to the top left hand of the screen. The syntax for this command is: CLS there are no parameters. DISASSEMBLE

This command will disassemble machine code from the address passed. This part of the system has only just been written and may still contain some bugs, but on the whole it will disassemble machine code in the 280’s memory map quite effectively. The syntax for this command is: where 50006 is a four disassemble )ooo( digit hexadecimal address, i.e: 0000 FFFF.

Example : disassemble 0000. This will start disassembling the machine code at 0000h. (The start of the operating system EPROM). Tips : Try disassembling from address 0000 and follow the code through, the first instruction should be ‘Dl’ then 'IM 1' and ‘JMP xxxx' after you see the JMP instruction press ESCAPE and start disassembling from the address after the JMP instruction. This is the start of the operating system itself. 00/77 /00k [00

my bags /

hard thong/7, you’// see all C/Ixz's .9/77/7/7.

13


EXAMINE This command allows you to dump area’s of memory to the screen for examination. This command will display the area of memory you pass it, so if you ask it to display more than one screenful at once, it will do so. The display will scroll when the bottom of the screen is reached. The syntax for this command is: EXAMINE where ‘xxxx’ is a four digit xxxx yyyy hexadecimal start address and ‘yyyy' is a four digit hexadecimal stop address. Example : EXAMINE 1200 12FF. This will display 256 bytes of data from 1200h to 12FFh (Part of the EPROM) the display is in the following format :— Address Hex data bytes Characters 1200 41 53 43 49 49 20 54 65 ASCII Te 1208 78 74 2E 00010203 04xt

......

If the data is a valid ASCII character then it will be displayed on the right if the data is not an ASCII character, then a dot will be displayed instead.

Tips: Use this command to look at the text in the EPROM, you never know what you’ll find I

FILL This command fills an area of memory will the value you pass it. The syntax for this command is: FILL xxxx yyyy zz where ‘xxxx’ is a four digit hexadecimal start address, ‘yyyy’ is a four digit stop address and ‘22’ is a two digit hexadecimal value to fill the memory with.

Example: FILL 9000 9100 AA. This will fill the area of RAM from 9000h to 9100h (256 bytes) with the value AAh. Tips: Remember you can only alter the contents of RAM, if you try to fill the EPROM nothing will happen. Try to keep away from the areas of RAM between 8000h and 87FFh, as this is used by the operating system and altering values in that range can cause the CPU to crash, or produce some strange results. British Amateur Television Club

This command will display the data at a port on the I/O map. The syntax for this where ‘xx’ is a two command is: IN >0( digit hexadecimal address.

Example: IN 00. This will input the data at I/O address 00h (Port A of the 8255 chip what the keyboard is connected to) and display it on the screen.

Tips: Use this command in conjunction with the OUT command to control devices on the CPU's l/O map, i.e:: Port B and C of the 8255 can be connected to external devices and these commands will allow you to control them.

MENU This command has no parameters and once executed will transfer control back to the menu driven system, leaving TOS.

MODIFY This command allows you to modify data in the CPU’s RAM. Data at the current address is displayed, you may then alter it or scroll forwards or backwards through the memory map. The syntax for this command is: MODIFY where ‘xxxx’ is a four digit xxxx hexadecimal start address. Example: MODIFY 9000. This will display the contents of RAM at address 9000h and allow you to alter it, or move forwards or backwards through memory, one byte at a time. The above command will produce a display something like this :—- 9000 00. The ‘9000' is the current address, the ‘00’ is the contents of RAM at that address (this will vary), the ’.’ means the data byte is not an ASCII character (If it was an ASCII character, it would be displayed), finally the ‘_’ is the cursor and is waiting for you to enter some data. At this point you have four options, 1) Enter new data as a two digit hexadecimal byte. 14

2) Press the ‘full stop’ key — this wi you back to the command line. 3) Pvess the ‘PLUS' key - this will m the next address, without altering contents of memory.

4) Press the ‘MINUS’ key this will In the previous address, without alterir contents of memory. Tips: Use this command to enter In: code programs that you write. execute them with the CALL commam

OUT This command is the opposite of t command and allows you to output If the CPU’s I/O ports. The syntax fc where ‘)0 command is: OUT xx,yy two digit hexadecimal address and ‘y two digit hexadecimal data byte.

Example: OUT 01,55. This will outpi value 55h to port 01h (Port B of the chip).

REGISTERS

This command will display the conte the CPU's registers, as they were on from the CA& command. If you her used the CALL command yet, the dis; values will all be zero. The syntax fr command is: REGISTERS thii produce a display on the screen as fol HL DE BC 000000000000 IX

IY

AF

000000000000 Meaning that the contents of all reg were zero (usually only seen whe CALL command has not been used ye

Tips: See the memory map at the 6 this document and locate the address RAM where these values are held. then use the MODIFY command to them, when you next use the command, the registers will be set 1 values you have entered BEFORE routine is called. British Amateur Television Club


2) Press the ‘full stop' key — this will take you back to the command line.

3) Pvess the ‘PLUS’ key - this will move to the next address, without altering the contents of memory. 4) Press the ‘MINUS’ key -— this will move to the previous address, without altering the contents of memory.

Tips: Use this command to enter machine code programs that you write. Then execute them with the CALL command.

OUT This command is the opposite of the IN command and allows you to output data to the CPU's I/O ports. The syntax for this command is: OUT )o(,yy where ‘xx’ is a two digit hexadecimal address and ‘yy’ is a two digit hexadecimal data byte.

Example: OUT 01,55. This will output the value 55h to port 01h (Port 8 of the 8255 chip).

REGISTERS This command will display the contents of the CPU‘s registers, as they were on return from the CA& command. If you have not used the CALL command yet, the displayed values will all be zero. The syntax for this command is: REGISTERS . this will produce a display on the screen as follows: HL DE BC 000000000000

IX

IY

SEARCH This command allows you to search through the entire memory map for a particular sequence of hexadecimal bytes, or for a particular sequence of ASCII characters. The syntax for this command is: SEARCH )ooor yyyy aa bb cc where ‘iooor’ is a four digit hexadecimal start address, ‘yyyy' is a four digit hexadecimal stop address and ‘aa' ‘bb’ ‘cc' are two digit hexadecimal data bytes. or: SEARCH moor yyyy "STRING" where ')000(’ is a four digit hexadecimal start address, ‘yyyy’ is a four digit hexadecimal stop address and STRING is a string up to 80 characters long of ASCII characters, enclosed in double quotes. Examples: 1) SEARCH 9000 FFFF 55 AA. This will search for the sequence 55h AAh in memory from 9000h to FFFFh. 2) SEARCH 0000 7FFF “BATC”. This will search for the string “BATC" in memory from OOOOh to 7FFFh. If the search is successful, the message ‘Match found at need will be displayed, where )000( is a four digit hexadecimal address corresponding to the address at which the search succeeded. If the search was not successful, the message ‘No match tound' will be displayed.

AF

000000000000 Meaning that the contents of all registers were zero (usually only seen when the CALL command has not been used yet).

Tips: See the memory map at the end of this document and locate the address of the RAM where these values are held. If you then use the MODIFY command to alter them, when you next use the CALL command, the registers will be set to the values you have entered BEFORE your routine is called. British Amateur Television Club

MEMORY MAP: ADDRESS DESCRIPTION

0000 Start of EPROM containing the code to run the CPU board. 7FFF End of the EPROM. It is 32K bytes long. not all of it Is used.

BIDOStartofRAM 9FFFEndofRAMifonly8Kisfitted

FFFFEndofRAMiIthefuIlSZKIsfitted.

15


Within the first 2K of RAM are the variables used by the operating system, these can be safely looked at with the EXAMINE command. However, it is not advisable to alter any of them, apart from the area used to store the registers before using the CALL command. For completeness the locations used are as follows : 8000 Two byte vector for the lNTerrupt line 8002 Two byte vector for the NMI line 8004 Two byte vector for the error handler 8006 Two byte pointer to the error table 8080 Two bytes used for temporary storage in some routines 8082 Length and frequency of the beep 8084 Copy of the contents of the 8255 control register 8085 Maximum length of string input The following locations are those used to hold the register values:

8086 AF Register 8088 HL Register pair 808A DE Register pair 808C BC Register pair 808E IX Register 8090 IY Register 8092 RAMTOP Variable, holds the current top of RAM 8094 FLAGS Holds various system flags 8096 Current key press 8097 Last key pressed 8098 Flash rate for cursor 809A Temporary storage for interrupt routines 8090 Cursor row (For old Teletron vdu board) 809E Cursor column (For old teletron vdu board) The following locations are variable used to control the IZC bus:

FIELD

80A0 Teletext chip register 1 RAM copy 80A1 register 2 80A2 register 3 80A3 register 4 80A4 register 5 80A5 register 6 80A6 register 7 80A7 register 8 80A8 Page zero row position (For the cursor) 80A9 col position 80AA Page one row 80AB col 80AC Page two row 80AD col BOAE Page three row 80AF col 8030 Page four row 80B1 col 8082 Page five row 80B3 col 8084 Page six row 80B5 col 8036 Page seven row 80B7 col 8100 IIC message buffer (1K Bytes long) 8500 String input buffer (7Fh bytes long) 8580 Disassembler workspace 8600 Operating system buffer

CIRCUIT ERROR IC4 is incorrectly drawn on the I diagram and the edge connector numbers for ICS pins—4 and 3. A15 input connections to IC4 are s incorrectly. The printed circuit boa correct and will not need modifiwdior corrected part of the drawing is 5 below. The real time clock crystal is Y3 and

RC

as annotated on the circuit

lIO Map The I/O map has only two devices connected to it (at the moment I) and there is plenty of free space to add your own devices i.e: Speech synthesisers, Music synthesisers, Control ports to switch other items of equipment on and off, Input ports to monitor activity in the outside world, Printer ports, Serial ports, the list is endless.

The address’s used so far are :

00 Port A of the 8255 chip 01 Port B 02 Port C 03 Control port for the 8255 chip. 60 IIC l/O Port.

BATC

MEIR/i

6 EAST

WARGR R( g

British Amateur Television Club

16

British Amateur Television Club


FIELD BULLETIN 1 CIRCUIT ERROR

PCB LAYOUT

IC4 is incorrectly drawn on the circuit diagram and the edge connector pin numbers for Ica pins—4 and 3. Also the input connections to lC4 are shown incorrectly. The printed circuit board is correct and will not need modification. the corrected part of the drawing is shown below.

C12 and C14 are not shown on the circuit diagram. They are decoupling capacitors. R21 is wrongly labelled and should be R25 (there is no R21). IC5 is an open—collector IC and requires pull—up resistors on its outputs. i.e: RGB and Sync. These components have been added on the production PCBs.

The real time clock crystal is Y3 and not Y2 as annotated on the circuit.

British Amateur Terese-2‘ C40:

17


IFIELD BULLETIN 2 DRIVING THE IZC VDU WITH THE TELETRON CPU At this point in time it is hoped that we will be marketing the new CPU circuit board to drive the PC system. The new CPU is an improved version of the Teletron CPU that first appeared in the BATC publication “Micro and Television Projects”, which is still available from BATC Publications.

For those of you that already have a Teletron CPU and wish to use it to drive the l2C VDU, following is a list of the modifications that will need to be carried out to the memory map in order that it will accommodate the larger 27256 EPROM that the system will use to store the l2C program. The RAM part of the memory map will also need to be enlarged to accommodate the 32k single Chip static RAM. The modifications are not so great that those of you with existing Teletron CPUs cannot add them. EPROM MODIFICATIONS Pin—27 needs rerouting to pin—4 of the 280

Pin—26 needs rerouting to pin-3 of the 280. Link-2 should be put to A—C. RAM MODIFICATIONS The RAM socket needs changing from a 24—pin to a 28—pin type. Two holes will need to be drilled in the PCB above pin—1 and two above pin-24, and the four new pins connecting as per the diagram opposite.

British Amateur Television Club

Counting the pins of the new socket arrangement as a 28-pin, then pin—23 will need rerouting to pin—1 of the Z80, pin—26 will need rerouting to pin—3 of the 280 along with pin—26 of the EPROM to which it is joined.

The socket should now be fitted with a 32k static RAM chip type 62256, available from Maplin under part number UH4OT. 8255 MODIFICATIONS

The 390 ohm resistor connected to pin—6 will need rerouting to the VDU by disconnecting it from pin—20 of the 280 and connecting it to edge connector pin—27 of the VDU.

All the other CPUNDU Interconnects are available on the pads in the centre of the PCB, except M1 and IORQ, which are available on pins—27 and 20 of the 280 respectively. If you now add an RGB monitor, or PAL coder and composite monitor, to the VDU, fit the custom EPROM and switch on you should see the start—up menu.

PIN 4 OF 280 PIN 2 //’ OF PROM

.

.._+5

I

I

\\PIN 22 OF Z80

18


12C Part—3

-

THE VISION SWITCHER

The third board in the IZC project is a video switcher. It has been designed as an eight in, two out board. This means that you can feed up to eight video signals into the board and each of the two outputs can be connected to any one input, independently of the other. The circuit features vertical interval cutting and broadcast quality performance. The circuit diagram is shown on two double pages in parts—1 and 2, and at first sight may appear rather complex, but don‘t be discouraged as this is not so. Further study of the circuit diagrams reveals that there are four parts to the circuit:— 0

A) Input stage

0

B) Channel select

0

C) Video amplifier

0

D) IZC decode and latch

CIRCUIT DESCRIPTION There are eight identical input circuits. The purpose of these is to buffer the incoming video and provide a high impedance input to the board, so that more than one board may be strapped together and so the video signal can be either looped or terminated. The video signal is fed in via the 6.8uF DC blocking capacitor, and onto the gate of the FET. The PNP transistor wrapped across the FET Iinearises it. The output from the FET is then fed to the video switch le. The DC bias for the FET is fed to its gate via the 1M resistor. This bias signal is derived from two places: 1) Firstly the ‘no signal' condition forces the output to zero volts because the eve zener diode bias’s the FET to the correct point, at this point the second PNP transistor is switched off.

British Amateur Television Club

2) Secondly, when video is present, the sync tips will turn on the second PNP transistor, effectively clamping the sync tips to the reference voltage fed to each input stage.

This form of clamp works better than the more familiar ‘diode clamp’ as it only clamps the sync pulse, without affecting the rest of the video signal. The outputs of the clamps feed the GX414 four channel video selector IC’s. These have their inputs wired in pairs, i.e: |01 and |02 have channels—1, 2, 3, and 4 as their inputs, and I03 and l04 have channels—5, 6 ,7 and 8 as inputs. The outputs of I01 and 3 are commoned via 22 Ohm resistors to feed one video amplifier, and l02 and lC4 feed the second video amplifier. The two video amplifiers are identical. The input signal is fed via a damped inductor to the base of TR3. This point is shunted to ground by a variable capacitor to set the HF roll off of the video amplifier. The damped inductor sets the bandwidth of the amplifier and also counteracts the effect of a rather nasty peak in the response of the GX414 switches. The inverted signal at the collector of TR3 is fed to the base of TR8 (V01 allows the response to be trimmed flat) where it is once more inverted and fed to the bases of the output pair, TR9 and 16, with D4 adjusting the DC conditions for these two transistors which are configured as complementary emitter followers. The output point is fed back to the emitter of TR3 to act as a bias stabilising network and the gain of the circuit is set by RV2. The output of the video amplifier is fed via a 75 Ohm resistor to present the correct impedance to the outside world. The two I20 signals (SDA and SCL) are fed to Ice which decodes the data into eight 19


VCC

V1

; 4

V4

7

3 SEC) 6ND 22: To vs v_pur 08V

V1

E:

END

v4

GX414 2

V5

. 2

v7

E E

V3

7 V4

—av

a

rev A0

‘3 ‘

R29

c9

:I—

— T

100m

TR9 2N2219A

22”

R54

Ice v1 GND v2

V5

cc,

10mm

[01

V2 V3

IOOme

C44

3 o

A1_

5N“

E vs v_pur -ev

a

75“

2:1:o

R75

m

E

Egggos

22“

.

5x414

[(22

V1

v1 GND v2

. 5

-

v2

c

v3

57

v4

«av A0

4 3

A,

GND E v3 v_our —5v

,

R“

a1 o

R53

8

22a

220::

fl—i

V'ZD

+1;

GX414 [CA

21

V5

v1

E

7

VB

1:

_

g

+av

ND

4E

V7

vs

1 O

—-<

v_Our

3':

8

—av

3K9

R100 f:——4

b

I

III

22::

C26 47mm

GX414

RE

(:39

Rios 220R

om av2

100n

_I_

___..—

«

cars mefu

———‘——“

SET GAIN n1

1r<e

:

‘12

vet:

_I_

0

V

R F

R115

C37

330R

room '

I

[C7

2 VIDEO RSET

=

c:

csmc

LM1581

;

g6 n

55

100mm

Rio-gt?!

5

BGATE

_

§I843K3

3

VSYNC

OEFLD

3

5

13

100mm

sw

=

‘4

DIP—a

395

I

‘5

106 A0 A1

A2

[CS

PO P1

P2

pa

.25 INT ”4 SCI. p5 son P7

5574

2.:

6 7 9 1° 1‘

12

37

a 3

“7 a

DO 01 02

ca

05 04

DB D7

i

00 pi

;

5

oz 03

g

05 Cd 05

5

07

9

5

‘30:

‘1

CLK

74HCT374

Fig.1

Vrsron Switcher Circuit Diagram Part—1

British Amateur Televrsron Club

i

’cafj

R95 3K3 R99 3K3

20

British Amateur Television Club


mi. I.

toomfc

toon

TR9 2N2219A

R54

VIQEQ DH

4{::3

759

Rafi 3K9

c15 220mfu

1

:17

R44

22mfa

470g

Rva 200R

TRIS

2N2905

SET GAIN R4

1K8

mg; I

——'EC mO

D

100mfu'

IOOmfu

I

7

An

TR27

IC27

E012

100n T931

1?

2N2219A R120

VIDEO OUT

4a::: 75R

EL

2

CBS 22me

i

SET GAIN

T932 ZNZQOS

J

R1

1K8

-

I

’Eiidt T

C45 100n

100mfd

British Amateur Television Club

21


v

1

—I—I Bu+

R18

soon are 1M R

2N3905

R1 —Li:°.

GNP [Ll

VIDEO

U‘i ’w

VI2

VIDEO

V13

VIDEO

+12

VI4

VIDEO

V15

VIDEO

V16

VIDEO

TR11 ZNBQOS

VIZ

VIDEO

TH17 2N3906

V15

VIDEO

0

I

VIDEO OUT 2 V

T

1

>

g

C

In

I

:9

TRZA 2N3906

VI7

VI

#1

1 13 B 10K

CZB 10041

R F

82R

(:35

‘lOOn

Fig.1

_1

R102 47;,

—E. '

Teas 10K

"

D10

R F

2N3906 Rae

5 5

Vision Switcher Circuit Diagram Part-2

British Amateur Television Club

22

British Amateur Television Club


+12

TRZS 2N3906

R105 K8 390R

629

iOOn

12 R103 47R

_L

_ _

E

R90

ngK

2N3906

R91 1M0

A

D13

5V5

British Amateur Television Club

23


outputs. These are fed to an octal latch ICS which stores the data sent over the IZC bus. These signals enable the GX414‘s and decide which inputs are connected to which outputs. The data is clocked into the latch during the vertical interval, so that the picture will not 'jump' when switched. The vertical interval is detected by lC7, an LM1881 sync separator. The vertical pulse output is ted to the clock input of lCS, the latch. The other enable input to |C7a is fed from the lac bus chip Ice and provides a ‘G0' signal to activate the switching

process. The four DIP switches set the PC address at which the switcher sits, so that if more than one switcher is required then separate control over them is possible, by moving the switches to diflerent positions. The input to the sync separator has been brought out via the connector so that it can be fed from which ever source you want rather than being connected to channel-1. If it is fed from any other source than one of the sources fed to channels—1 to 8, then it will need to be terminated on the connector

FIELD

into which the card plugs with a 75 Ohm resistor.

CONSTRUCTION NOTES

VDU BOARD

One point about the construction. The through hole plated printed circuit card that will be available from BATC Members services is quite densely populated and whilst it is possible to use quarter watt resistors tor the clamp circuits it will look heater if you can use one eighth watt ones — sorry about that ill

Component reference list and values suggested on the published circuit die NOTE: on the circuit diagram referent decoupling capacitor.

We have also reproduced in this issue a component list for populating the CPU and VDU boards. Some values have been optimised from the values given on the circuit diagram in the light of experience gained from the production PCBs. Thereiore, please adhere to the list rather than the circuit diagram. We hope to have an IZC ‘clinic' and demonstration at the Convention, so please bring along your ideas, questions, and any problem boards.

CAPACITORS: Quantity

V

3

1 1 1

2 3 2

2

1 1 2 1 1 1 1 1 1 2 1 1 2

2

1 6 2 1 11 2‘ 1i 4‘ 1 1I 1l 4‘ 2: 3-

INTEGRATED CIRCUITS: 1 1 1 1 1 1 2 1 1 1

”j/(Ify/I/M V

/

7‘

Pl 74 7‘ 7‘ 7‘ 7‘

Si i Si CON‘I

British Amateur Television Club

24

British Amateur Television Club


FIELD BULLETIN 3 VDU BOARD Component reference list and values for the l2C VDU board. This list replaces the values suggested on the published circuit diagram. NOTE: on the circuit diagram reference Cl becomes 026. The correct Ct is 10nF and is a decoupfing capachon

CAPACITORS:

()uanflhy

N— L J b M Q

INTEGRATED CIRCUITS: 1 1 1 1 1 1

2 1 1 1

British Amateur Television Club

vmue 10nF 18pF 10uF 22nF 10nF 68nF 27pF 15pF 100pF 270pF 10nF 470pF 1nF 10nF 1uF 47nF 220pF 3-22pF

Components C1,C25,C3 C10,C15 C11,C12,C6 C13,C26 C14,CZ C16 C17 C18,C24 C19 C20

021

74LS138 PCF8583 74LSO4 74LS541 74LS174 74LS32 7417 SAA5243 6264 SAA5231

CONTINUED OVERLEAF 25


Value

Components

15uH

L1

14

4k7

R1, R10, R11, R12, R13, R14, R15, R16, R2, R3, R4, R5, R6, R9

1 1 3 2 2

1k0

330 1k5 aka Wire Link

R20 R25 R26, R27, R28 R7, R8 R22, R23

2N3819 2N3906

TR1 TR2

6MHz Crystal 8.75MHz Crystal AB_EURO 3—pin Header lN4148 3.8V NICAD

Y1 Y2 CON1 CON2, CONS, CON4 D1, 02, Da NICAD

Quantity

INDUCTORS: 1

RESISTORS:

TRANSISTORS & DIODES: 1 1

MISCELLANEOUS: 1 1 1 3 3 1

CPU BOARD An extra track has been found which, if left in, will cause problems. The offending track is between the junction of C18, Y2 and C26. Cut this track near C26. Two tracks are missing and the connections should be hard-wired. they are as follows: lC4 pin—19 to ICZ pin—19

ICS pin—1 to ICE pin—19

SOFTWARE NOW RELEASED FOR THIS PROJECT CUSTOMISED EPROM - £9.99 INC P&P CONTACT MEMBERS’ SERVICES British Amateur Television Club

26


12C Part—4 - THE RELAY BOARD I'C RELAY BOARD.

COMPONENTS

Discussions at THE SHOW revealed the need for our l'C system to be able to control parts of the external world. To this end we have designed a simple, but effective, relay board.

The relays are standard 12 Volt, PCB mounting Double pole double throw manufactured by OMRON and are available from Farnell (part No.179-351), RS Components, and several other suppliers.

All of the contacts of the eight relays are brought to the edge connector for use as required. Each relay is a double pole change—over type and provision has been made for pull up or pull down resistors (or links) on the normally open, and normally closed contacts.

There are 32 pull—up/puIl—down resistors shown on the circuit diagram. They are only shown for guidance and it is only necessary to fit them if they are required by the input circuitry 01 the device that is being controlled by that particular relay.

SOFTWARE

The circuit consists of a PCF8574A eight bit port integrated circuit (lC2), which can be set to one of 8 possible addresses by the setting of the three switches on the A0—A2 inputs. The eight individually addressable 'bits’ are each connected to a section of IC1 ULN2803. This is an octal relay driver lC which has built in protection diodes to ‘snub' the back EMF from the relays when they are de—energised.

The next version of firmware is now available, everyone who has received the EPROM containing version 2.26 should return this with return postage enclosed and version 2.27 will be sent to you. Version 2.27 includes full support for the relay card described in this article, as well as some enhancements to the existing functions.

WARNING: The relays are only rated at 1Amp at 115 Volts, so MUST NOT be used to switch mains voltages direct.

Chris Smith G1FEF, 107 Hithcin Street, Biggleswade, Bedfordshire. SG18 88L

Any feedback regarding the software would be most useful and should be sent to:

Download a Back Issue

British Amateur Television Club

27


R10 R9 1KO’IKO

vcc R1 “<0

$50

RL1

1 RL A--C

.4 RM

RL B—No RL 13—: RL

__

e—vc

RLEB-NO ”L28":

(:29

C28 A28 527 A27

2;: 62“

31:35—38 —

252

A24

23: ES: C21 A21

RLaa—: RLaa-vc RL4B—\l0 RLae—-

-

C20 A20 C19 “9 C15 “5 C17 “7 C15 A15 :15 A15

FlL4B—\lC

RLse—vo RLsa—c

stggno

RLse—vc

RLSB—NC RL7s—vo RL7e—: RL7a—vc RLBB-NO ‘5 —5F“-B RLee—uc

S13

2};

Ego as

‘13 A6

c11 A“

c7

_—

E?

c4

— c3

— ET

A7

23

2?

R 1 -\lC RL' —vo RL _-

A_ St — 38 RL

R37 «7

“35 4K7

FlL3A-NC

RLeA—No

\

'.

e

“L35 “C

1

RL33_N0

W

-

,_

RELAY DPDT VCC R25 R25

ULNzeos

1KO1KO

Ic1E 14

5

_

' _Ogic

13

-

2

:30

—vc

IC2 .30 A0 1

13

INT R4 SCL

9 1o 11

SDA p7

12

:3

8574A

ULNzeoe

E

2; :2 P3

‘4

“2"

4

a

15

c1 10011

3kg

T

I

“<0

1K0

RLSA—NC

& ,4

RLsA—No

''

RLse—Nc

'Lfig—M

“L58“:

W

.

15

L.

RELAY DPDT

2115115803 1

3

1s

vcc

R21 R22

1K0 1K0 ULNEBOS

T

é

:

1510

4

EI/cc

R18

RLe

RL5A~c

e

R17

3K

Ac_EURo

_—

_j_

._ 2

7&— 1

I

AT

.m-

o ,L

21.352 IC1F

sw1—4

¢ ::DIP—SW

Rle—uc RL7i-vo RL7 t—" RL" —~ic

RL

Rs :

,L

a 7 'E—':— e 5

2:.= _—~

A4 A3

RL3A~c

vcc 9

-

R

K

RLs

R36 4K7

A—" RI- ““9 FIL‘ —v0 R A _,.. RL —\lC —\lO R RL= RL= _20 —vc

Ell.

51.18 11213

R5

I

RL A—vo

RL1A-"

R 7

c2 1ou

-

R30

R29

1K0

“<0

RLe

,t

FlL7A-NO

:J;

RL7e—Nc

'

RL7B‘C

11:18

2

17

ULNZBOS IC1A

1

o

.

_‘

T

RL7A-Nc

: :L

L A;g

I ?

RL7B—NQ

e

W l

’_

RELAY DF'DT

1a

ULNaeoe

IZC Relay Board Circuit Diagram

British Amateur Television Club

_

DPDT VCC

12

7

1:32 A32

2:2, 232. A29 _

-

ULNEBOS IC1G

VIEPC

com

FlL1B—NC

RL‘lB—NQ

___—4%RELAY

11

a

RL1A—No

:

I

§-~c

—o-I-ie

IC‘lH

?

RL1A—Nc

1L

28

British Amateur Television Club


vcc

R10RQ

1KO1KO

vcc

R1 1K0

R2 1K0

T

9L1

:

1K0

RL1A—Nc

0,4

RL1A—No

Ii

RL1B—NC

x

:

o

RL1a—No

g

:g

vcc

R14 ‘IKO

5

1K0 RL3

;_4}Ti ,4

J

:::ji

RL2a—c

o

.:

RL2A-No RLza—Nc

i

o

RL2B—ND

4

__

2:

RL3A—Nc RL4A—c

o

RLaa—c

RL4A—NO

e

RL4B—NO

:i

O

RLAB—NC

vcc

R31 :: ' 1K0

RL5A—No

;

RLse—Nc

RL7 RLeA—c

HLSB-NO

RLeA—Nc

o i

.

,QL,

I

L——

R23 R24 1K0 1K0

““0

RL5A—Nc

;_04i.

DPDT

R32

1K0

:%

RL4A—Nc

i

é;RELAY

,gg,

'

.1. l

F133

2_01_i

R8 1K0

RL4

RLss—Nc RLse—No

R15 R15 1K0 1K0

R7 1K0

1K0

RELAY DPDT vcc R25 R26 1K0 1K0 R34 1K0

RLzA—Nc

i

.t

vcc

Rs

RL3A—No

.

:

: o i ¢___________

RLaA—c

RELAY DPDT

R13 1K0

J

RL2

RELAY opp-r

RLe

R12 R11 1K0 1K0

R3

RLSA—NO

{

RLea-Nc

M044:

RLee-No

;

__________:::fi

RELAY DPDT

RELAY DPDT

vcc R30 ’lKO

RLs

__

.

RL5

.:

RLeA-c

c i

RLee—c

O

.4

RL7a—Nc

RL7E-No

F119 R20 1K0 1K0

R23 ‘KO

7

RL7A—No

: __O4i :@g

vcc R29 “<0

RL7A—Nc

3—01-4: .QLL

J

R21R22 1K0 1K0

i

e _fl

1:127T 1K0'

RLaA—Nc RLaA—No RLea—Nc RLBB-NO

RELAY DPDT

RELAY DPDT

British Amateur Television Club

29


FIELDI IC2

[1’1

1?

FIELD BULLETIN 3 — REVISEE In last months l'C supplement we F introduce more errors than it correctec the definitive version (please delete the

This bulletin will optimise component errors that have crept into the system. from the circuit diagrams that have a component lists. The following text in1 PCB needs modifying, or a componer diagram should be fitted.

RL8

:1 i RL‘I

1

41 R

CPU BOARD 0

RL7

RL3

0

Link IC5, pin 1 to I05, pin 10 Link 104, pin—19 to IC2 pin—19

R15 on the diagram (connected betv R16. The PCB silk—screen identifies it cc 0 C14 on the diagram (connected acr also incorrect. There are two C14’s sf actually C15, its value is 47pF. The ‘otf its value is 470pF. o The track shown on the diagram 9 CON1, pin A3 on the PCB. This is ‘ conjunction with the VDU board.

R13

til [I]

0

R1

i I]

RL8

RL2

R 12

R10

R23 1

o if the CPU doesn’t reset correctly, eve

Connect a 1N4148 diode across R10, ca

RL5

RL1

I:

Ensure that 013 is a tantalum bead c

218

nac

CON1

ISSSESfi8185285238635538533°““°’“‘””“I

O D' ID

47uF)

VDU BOARD 0

Cut track between C18/Y2 and C26

0

Replace R22 and R23 with wire links. C25 should be 100nF ceramic.

0

C21 should be 10nF ceramic. Resist PCB : R26, R27 and R28. They should GREEN and BLUE outputs.

0

PC Relay Board Component Overlay

British Amateur Television Club

30

British Amateur Television Club


FIELD BULLETIN 3

REVISED FIELD BULLETIN 3 — REVISED In last months I'C supplement we produced in error field bulletin 3 which seems to introduce more errors than it corrected. I can only apologise for this, and reproduce below the definitive version (please delete the earlier bulletin 3 from your folder). This bulletin will optimise component values and correct the few PCB and circuit diagram errors that have crept into the system. in all cases the component values should be taken from the circuit diagrams that have appeared in the CQ—TV supplement, rather than the component lists. The following text indicates where the circuit diagrams are incorrect, the PCB needs modifying, or a component value other than the value indicated on the circuit diagram should be fitted.

CPU BOARD a Link l05, pin 1 to I05, pin 10 0

Link lC4, pin-19 to

|02 pin-19

R15 on the diagram (connected between Vcc and the line marked RAMDIS) should read R16. The PCB silk—screen identifies it correctly. It's value is correct, at 3K3. 0 014 on the diagram (connected across R3) should read 015. The PCB silk-screen is also incorrect. There are two 014’s shown on the PCB. The one between R3 and R4 is actually 015, its value is 47pF. The ‘other’ 014 is shown correctly on the diagram and PCB, its value is 470pF. o The track shown on the diagram going from R8 to CON1, pin 331, actually goes to CON1, pin A3 on the PCB. This is the chip select line for the 8255, when used in conjunction with the VDU board. 0 if the CPU doesn’t reset correctly, every time you power up, try the following mods: 0

Connect a 1N4148 diode across R10, cathode to Vcc, anode to junction of R10/C13. Ensure that 013 is a tantalum bead capacitor. (013 could also be increased in value to

47uF)

VDU BOARD 0

Cut track between C18/Y2 and 026

0

Replace R22 and R23 with wire links.

0

025 should be 100nF ceramic.

o 021 should be 10nF ceramic. Resistors not shown on the diagram, but present on the PCB : R26, R27 and R28. They should all be 4K7. They are pull—up resistors for the RED,

GREEN and BLUE outputs.

British Amateur Television Club

31


o Capacitors not shown, or shown incorrectly, on the diagram, but present on the PCB: 01, 02, C4 and 014. They should all be 10nF ceramic.

ODE

o Capacitor between ICQ, pins 16 and 13 on the diagram, should read 026 and its value is 22nF ceramic. It is identified correctly on the PCB silk—screen. o Capacitor 011 should be 10uF electrolytic. o Capacitor between ICB, pin 26 and GND should read 02 and its value is 10nF ceramic. It

is identified correctly on the PCB silk—screen.

o The outline on the PCB for TR2 (2N3906) is reversed. Place TR2 in the PCB rotated by

180 degrees. Omit D3. Hard—wire top two connections of CONS. We shall not be using this link. To select between ‘GENLOCK’ and ‘FREE-RUN’ use CON2 only.

0

0 The SYNC output (CON1, pin 5) has no pull—up resistor on the PCB. It will require one, as the output chip is an open collector device. Therefore, connect a 4K7 resistor on the PCB between CON1, pin 5 and CON1, pin 1.

VISION SWITCHER BOARD Replace the following resistors with wire links: R7, R9, R34, R36, R63, R65, R87, R89, R23, R24, R49, R50, R73, R74, R102, R103

0

0

Morse Code This is an option on the menu to d CW and display the message 0 screen. The software is resident i custom EPROM and only requires selected. The input is via pin 3 of con 4 on the CPU card. Connector—4 is It: directly below I08 (8255) and ce extended to the main edge connector one of the spare pins if you so 1 The input is designed to respond to C 5v, so a pull up resistor of 1K is m along with a Morse key.

Alter the following resistors from 47R to 1K: R3, R5, R30, R32, R58, R60, R83, R84

The following transistors should be type BF244 or 2N3819, not BFR30 as shown on the diagram: TR4, TR6, TR12, TR14, TR20, TR22, TR28, TR29

0

o The following capacitors should be 10uF electrolytic, not 6u8 as shown on the diagram:

C10, 08, 014, 016, 022, 024, 030, C32

The track from R113 to a plated—through hole on the underside of the PCB should be out. A link should then be wired between R113 and +12V, EG: CON1, pin A1. On the diagram alter the —12 to +12 on the top side of R113. 0 Link I05, pin1 to I05, pin 10. 0

PIN 3 CON 4 CPU

AU.

6_f‘f:::::I—‘+5

WM MORSE KEY

o The edge connector (CON1) as shown on the diagram is incorrect. It is actually wired as

follows: 1A +12V Power in SA SCL I'C Bus clock 5A VIDREF Video reference input 7A Video out 2 Channel 2 output 9A Video in 8 Video inputs, high impedance 11A Ground 13A Ground 15A Video in 6 17A Ground 19A Ground 21A Video in 4 23A -= Ground 25A Ground 27A Video in 2 29A Ground 31A +5V Power in ( on—board regulator)

-

-------

--

British Amateur Television Club

2A 4A 6A 8A

—12V Power in - SDA I'C Bus data

-

-----= ----

10A 12A 14A 16A

18A 20A 22A

24A

26A 28A 30A 32A

Video out 1 Channel 1 output No Connection Ground Video in 7 Ground Ground Video in 5 Ground Ground Video in 3 Ground Ground Video in 1 Ground

Tone decoder for receiving Mors

Electronic Test-card This menu option refers to the elec Test—card designed by G4BAU whic appeared in the ATV HANDBOOK cover) and later in Micro and TV prc The test card had a decade switch allowed any single test pattern in th 32

British Amateur Television Club


ODDS & ENDS If you want to expand the system FOR decoding Morse received over the air then you will need a tone decoder circuit. This can be achieved using an NE567, which will convert the tone to a logic level suitable for connection to pin 3 on connector 4.

Morse Code This is an option on the menu to decode

CW and display the message on the screen. The software is resident in the custom EPROM and only requires to be selected. The input is via pin 3 of connector 4 on the CPU card. Connector—4 is located directly below l08 (8255) and can be extended to the main edge connector using one of the spare pins if you so desire. The input is designed to respond to CV and 5v, so a pull up resistor of 1K is needed along with a Morse key.

The circuit reproduced below is taken from the data book, RV1 is set to the frequency of the tone which in the case of CW is set by the BFO in the receiver, so adjust both for the best result.

+5

PIN CON 3 CPU

E]

AUDIO INPUT

4

f—r—-— +5

)—

II

0.1 RFD

———0

MORSE KEY

3

——_

[—

NE567

5

4

612

8 7

pm 3 CON 11 ’ CPU \

@l

X

[j

10 MFD

1MF 2.2 MFD

Tone decoder for receiving Morse code

Electronic Test-card This menu option refers to the electronic Test—card designed by G4BAU which first appeared in the ATV HANDBOOK (blue cover) and later in Micro and TV projects. The test card had a decade switch which allowed any single test pattern in the test

British Amateur Television Club

-

card to be expanded to fill the whole screen. If you have one of these very test—cards in the shack then you can interface the waveform selection to the I20 micro by the following circuit. The gate is a 74LSO2 nand gate and the A B C D refer to the decade switch which is located on the original test—card. 33


Connector 1 is the card edge connector of the CPU board and the diodes are 1N4148's. The switch should be left in A

I;

1:

position 8 and the test waveform selection can then be carried out from the keyboard.

7 (7:11.11

Lilli» I CPI}

it.) I

#111414,

11211

:11 41

1118

72.1.3211"

Electronic Test-Card Interface

STOP PRESS TR1 CPU BOARD This device is shown on the circuit as a 2N3702 and should be a 2N3906 which has a different lead configuration and is the one that matches the PCB layout.

Sorry for all the errors but because of the complexity of this circuit and level of support we have endeavoured to provide, the project has been run by a team that are well distributed around the country. All the members having day jobs that often get in the way of pushing back the frontiers of ATV.

Can I also add that if you are thinking of building this project please order your PCB’s now so that future PCB runs can be set. i.e: I will order the correct number of future PCB’s to match the number of CPU and VDU boards sold.

GBsET REPEATER GROUP KEYBOARD PROBLEMS 7?? If you have a PC in the shack then you can connect its parallel or Centronics output direct to the I20 projects keyboard input with no hardware other than the connecting lead. This removes the need for dual keyboards in the shack and in addition allows the down load of Intel Object Code Format direct to the lac computer. All you need is the software for the PC which is now available at a cost of £110 including post and packing, from The GBSET repeater group care of: Trevor Brown, 14 Stairfoot Close, Adel, Leeds LS16 BJR. The software comes complete with any necessary documentation and instructions. Please state which floppy disc format you require.

All proceeds go to maintaining and improving GBaET

British Amateur Television Club

34


12C Part—5 SOFTWARE V2.27 This is the documentation that goes with version 2.27 of the IZC firmware. It is supplied in a 32k Byte EPROM (270256) and contains all the code necessary to run the new Teletron CPU card, the new teletext display card and vision switcher. Future upgrades will be made available as the hardware appears in the l'C booklet, attached to CQ-TV. The software provides a menu driven environment enabling full access to all of the I'C projects. For those of you who require more control than the menu system provides, there is an operating system called TOS (Teletron Operating System). This is accessed by the first selection from the main menu and provides a machine code monitor type environment, with the more familiar command line entry and prompt.

The commands recognised from TOS are asfollows :— CALL DATE EXAMINE IN MENU OUT SEARCH

CLS DISASSEMBLE FILL DOWNLOAD MODIFY REGISTERS TIME

Each of these commands are described in full at the end of this document. The menu system is very easy to use, simply press the key indicated by the menu options. From the main menu, you have, seven choices:1 — Exit to TOS. This places you in the machine code monitor, described at the end of this document. 0

0 2 - Set date and time. This option allows you to set the correct date and time for the real time clock chip. You simply enter the correct date and time then press return. If you want to exit without altering anything, press ESCape.

o 3 — Enter TELETYPE mode. This places you in the teletext editing mode. You are presented with a blank screen. At this point you can start typing, anything you type will appear on the screen. The cursor keys allow you to move around the screen without disturbing anything. There are also some control characters available, these are generated by holding the CONTROL key down whilst pressing a letter from A—Z.

The control characters available are: CTRL—D Turn cursor on CTRL—E Turn cursor off '

CTRL—H Move cursor left (same as left cursor key)

CTRL—l CTRL—J

Move cursor right (same as right cursor key) Move cursor down (same as down cursor key)

CTRL—K Move cursor up (same as cursor up key) CTRL—L Clear screen and cursor home CTRL—M Move cursor to start of current line (Carriage return) If you press the ESCape key at any time, a menu will appear at the foot of the page. If you press ESCape again, you will be returned to the main menu, OthenNise you may now enter one of the following commands:

Save - Save the current screen to RAM Load — Load from RAM to screen

British Amateur Television Club

35


Hex — Enter a two digit HEX number, which will be deposited at the current cursor position. This allows you to generate colour and graphics. Top — Displays the top half of the screen in double height Bottm — Displays the bottom half of the screen in double height Norm height

Returns the display to normal

Graphics — Allows easy generation of graphics. If the cursor is at a position on the screen that is in graphics mode, this command will let you build up the graphics block. You toggle the pixels on/off by pressing ‘1’ and ‘2’ for the bottom row, ‘4’ and ‘5’ for the middle row, '7’ and ‘8’ for the top row. It you see characters appearing when you use this command, then you where not in graphics mode. Use the Hex command described above to place a graphics colour code at the start of the current line. For further reference on how to produce graphics on a Teletext system, see CQ—TV 154 Page 23. o 4 - Display inbuilt test card. There is a test card programmed into the operating system, with your callsign in. Press ESCape to return to the main menu.

5 — Enter system control menu. This displays another menu, each option on the new menu allows you access to the IIC projects. A detailed description follows later.

0

6 — Teletext acquisition. This option allows you to capture teletext information off air. When you first enter, page 100 will be requested. After a short delay, if all is well, this will be displayed. The menu on the bottom line is always present and the following commands may be entered at any time:

British Amateur Television Club

ESCape — Return to the main menu Hold - Places the current page on hold.

Page Enter a new page request. This is in the form of a three digit number. The software will accept full HEX numbers, although the broadcasters only transmit the decimal pages normally. You may also enter the letter ‘X’ in any digit position, this will set that digit to ‘don't care' the result being that the acquisition circuits will accept any page number for that digit. The resuits of this are quite spectacular if you enter ‘XXX’ in other words, display ANY page.

Save Save current page to RAM. N075 7'/7e area elm/flusedto (save’ls the same area used by Me 751577795 opt/on. 7770s you can save a te/eteflpage, then ’/oao”/t lhto t/7e fELEfYPEscreen ande07? it

Timed—page Enter a four digit HEX number to request a timed page. IE: When teletext transmits a page, it may send page 1 of 4, then 2 of 4, etc. If you enter 0001 here, it will only display page 1 of 4. This will contain all X’s by default, which means all timed pages will be shown.

Displays the broadcasters ldent identification packet on the status line. The while this is being done, disappears menu press any key to get the menu back.

0 7 Morse code decoder. This option is a full morse code decoder, it looks for morse on bit 2 of port C of the 8255 chip. You can connect a morse key and practice your morse, or attach a tone decoder and ‘read’ Morse off air. The port should be normally high (3K3 pull—up resistor) and go low when the key is down, or tone present.

Option 5 on the main menu, takes you to

another menu. This new menu allows access to the IIC projects appearing in CQ—TV. The options are as follows: 1 — Return to main menu

36

2 — Relay control. This allows contro eight channel relay card. When 36 you are presented with another men the following options: 1 — Return to previous menu. This takes you back to the previous menu 2 — Redefine inputs. This option alI01 to give each relay a unique Iabe default labels are ‘RELAY 1’ ‘RELAY You may alter these with this selectio pressing ‘2' you will be asked whic you wish to alter 1—8. Press a r between 1 and 8. You will Ihl prompted for the new text, up maximum of 29 characters. When yo entered the new text, press RETUR text you have just entered will appe: to that relay.

A—H. Pressing each of these letters t the appropriate relay on or off. You 1 the colour of the letter alter as you pri key. Red means that relay is off, means it is on.

— —

3 Audio switcher control. This wil control of an eight input, two channe switcher, yet to appear in CQ—TV.

Vision switcher control. This control of the eight input, two channe switcher. When selected, you are pre with another menu, and the fol options: 4

1 Return to previous menu. This takes you back to the previous menu 2 Redefine inputs. This option allm to give each input a unique label. S description above, for the relay card.

A—H. These are the letters corresponi the first channel. The letter ‘A’ is inpu is input 2, etc. To select input 4 ‘ channel, press the letter ‘D' Input 4 w be connected to the first channel. l—P These are the letters for the 5 channel. They work in exactly the way. You should see the colour of thl change as you press it. This indicat current choice.

British Amateur Television Club


2 - Relay control. This allows control of the eight channel relay card. When selected, you are presented with another menu, with the following options: 1 — Return to previous menu. This option takes you back to the previous menu

2 — Redefine inputs. This option allows you to give each relay a unique label. The default labels are ‘RELAY 1’ ‘RELAY 2’ etc. You may alter these with this selection. After pressing ‘2' you will be asked which relay you wish to after 1—8. Press a number between 1 and 8. You will then be prompted for the new text, up to a maximum of 29 characters. When you have entered the new text, press RETURN. The text you have just entered will appear next to that relay. A—H. Pressing each of these letters toggles the appropriate relay on or off. You will see the colour of the letter after as you press the key. Red means that relay is off, Yellow means it is on.

1 — Return to previous menu

A-J These letters allow you to select the pattern you require. They are all labelled on the screen. See the previous IIC booklet for information on how to connect. this option. If you still require manual control as well, the computer control connections can be wired in parallel with the existing decade switch. Turning the decade switch to the full test card option will allow computer control. Selecting the full test card on TELETRON, or turning TELETRON off, will give manual control.

THE MACHINE CODE

MONITOR COMMANDS

There now follows a detailed description of the machine-code monitor commands:

CALL xxxx. Where ‘xxxx’ is a four digit hexadecimal address. IE: 0000 to FFFF.

3 Audio switcher control. This will allow control of an eight input, two channel audio switcher, yet to appear in CQ—TV. 4 — Vision switcher control. This allows control of the eight input, two channel vision switcher. When selected, you are presented with another menu, and the following options: 1 Return to previous menu. This option takes you back to the previous menu

2

- External test card control. This option gives computer control to the electronic test card that appeared in the CQ—TV handbook. The options are as follows: 5

-—

Redefine inputs. This option allows you

to give each input a unique label. See the description above, for the relay card.

A—H. These are the letters corresponding to the first channel. The letter ‘A’ is input 1, ‘B’ is input 2, etc. To select input 4 to this channel, press the letter ‘0’ Input 4 will now be connected to the first channel. l—P These are the letters for the second channel. They work in exactly the same way. You should see the colour of the letter change as you press it. This indicates the current choice.

British Amateur Television Club

CALL: This allows you to call a machine code routine held anywhere in the 280's memory map. Typically, you will enter a routine into RAM and use this command to start running it. The syntax for this command is:

Bramp/e' CALL 9A00. This command will transfer control to the address at 9A00h.

770$ Ifyour code keeps [be stack tidy, you may return contro/ to 705‘ by execuung a RETurn lnsfruct/on. f/7e reg/37ers are saved on return to 7'08 and may be examined using the REGISTERS command — see later CLS: Perhaps the simplest of the commands, this will clear the screen and return the cursor to the top left hand of the screen. The syntax for this command Is: CLS. There are no parameters. 37


DATE: This command will display the current date (Providing you have the Real Time Clock chip fitted on the VDU card) and depending on whether you passed any parameters, will either set the date or return the READY prompt. The syntax for this command is: DATE [dd/mm/yyyy]. Where dd is a two digit date (01—31), mm is a two digit month (01—12) and yyyy is a four digit year (1900 2999)

The fact that the date is in square brackets means that this is optional and if omitted, the current date will be displayed then you will be returned to the prompt. Eramp/e: DATE 24/11/1990. This will set the current date to 24th November 1990.

DISASSEMBLE: This command will disassemble machine code from the address passed, this part of the system has only just been written and may still contain some bugs, but on the whole it will disassemble machine code in the 280’s memory map quite effectively. To get the prompt back, press ESCape. The syntax for this command is: DISASSEMBLE xxxx. Where ‘)000(’ is a four digit hexadecimal address. IE: 0000 FFFF. Eramp/e: DISASSEMBLE 0000. This will start disassembling the machine code at moon. (The start of the operating system EPROM).

bps: Try otsassemb/mg [from address 0000 and follow [be code [broug/I, [be first instruc[ion .sbou/d be Dl’ [ben 711/ 7’ and (IMPm’afleryou see [be JMPInstruction press ESCAPE and s[a/[ oisassemb/mg [rom [be address afler [be .11th instruc/Ion. ibis is [be star[ of [be operating system itseb.’ Don’[ look too bard [bougb, youllsee allmy bugs /

EXAMINE: This command allows you to dump area’s of memory to the screen for examination. This command will display the area of memory you pass it, so if you ask it to display more than one screenful at once, British Amateur Television Club

it will do so. The display will scroll when the bottom of the screen is reached. The syntax for this command is:

EXAMINE xxxx yyyy. Where ‘)000(’ is a four digit hexadecimal start address and ‘yyyy’ is a four digit hexadecimal stop address. Bramp/e' EXAMINE 1200 12FF. This will display 256 bytes of data from 1200h to 12FFh (Part of the EPROM) the display is in the following format: Add Hex data bytes Characters 1200 41 53 43 49 49 205465 ASCII Te 1208 78742E0001020304 x1......

If the data is a valid ASCII character then it will be displayed on the right if the data is not an ASCII character, then a dot will be displayed instead. bps: Use [bis command [a look at [be [en in [be EPROM you never know wba[ youll find / FILL: This command fills an area of memory will the value you pass it. The syntax for this command is : FILL yyyy zz. Where ‘xxxx’ is a four digit hexadecimal start address, ‘yyyy’ is a four digit stop address and ‘zz’ is a two digit hexadecimal value to fill the memory with. X)00(

Bramp/e.’ FILL 9800 9900 AA. This will fill

the area of RAM from 9800h to 990011 (256 bytes) with the value AAh.

bps: Remember you can only aber [be contents of 7014/, If you [xy [0 ill [be EPROM no[b/ng w/ll bappen. 77y to keep away [ram [be areas of MM between 0000b and .97l-7-'b as [bis is used by [be ope/atmg system anda/[en'ng values m [bat range can cause [be CPU to crasb, or produce some strange results. IN: This command will display the data at a port on the l/O map. The syntax for this command is: IN xx. Where ‘xx’ is a two digit hexadecimal address.

38

Eramp/e: IN 00. This will input the di l/O address 00h (Port A of the 8255 c What the keyboard is connected to: display it on the screen.

7705': Use [bis commandin con/uncbb.

0U7' command to con[rol devia CPUis //0 map. /E' Pod 5 and C 82.55 can be connected to external at and [bese commands mil allow yr control[benz DOWNLOAD: This command is us download data into the CPU’s RAM, high rate of knots. It has no param Unless you have a program that will c parallel data in the INTEL HEX f: (GBsET repeater group have sul program) I suggest you don’t bother this option. I use it to download an: machine code programs compiled 0 PC with a cross—assembler, b committing them to EPROM. [be [be

I would be nappy to supply [1 information on [bis command If any; /n[eres[ed GIFEE MENU: This command has no paran and once executed will transfer control to the menu driven system, leaving TO

MODIFY: This command allows yr modify data in the CPU’s RAM. Data 1 current address is displayed, you may alter it or scroll forwards or back1 through the memory map.

The syntax for this command is:

xxxx.

MODIFY Where ‘xxxx’ is a four hexadecimal start address. (Si/ample: MODIFY 9800. This will d the contents of RAM at address 9800| allow you to alter it, or move forwar backwards through memory, one byte time. The above command will prodi display something like this: 9800 00. The ‘9800’ is the current adr the ‘00’ is the contents of RAM at address (this will vary), the ’.’ mean data byte is not an ASCII character (If I an ASCII character, it would be disple

British Amateur Television Club


Evample.‘ IN 00. This will input the data at l/O address 00h (Port A of the 8255 chip — What the keyboard is connected to) and display it on the screen. lips: Use [bis commandin conjunction witb [be 0U7' command to control devices on [be CPUfs //0 map. /5' Port 5 and C of [be 0255 can be connected to external dew'ces and [bese commands will allow you to control[bem.

DOWNLOAD: This command is used to download data into the CPU's RAM, at a high rate of knots. It has no parameters. Unless you have a program that will output parallel data in the INTEL HEX format (GBSET repeater group have such a program) I suggest you don’t bother with this option. I use it to download and test machine code programs compiled on my PC with a cross—assembler, before committing them to EPROM. l would be bappy to supply bJflber information on [bis command if anyone is interested GIFEE

MENU: This command has no parameters and once executed will transfer control back to the menu driven system, leaving TOS. MODIFY: This command allows you to modify data in the CPU’s RAM. Data at the current address is displayed, you may then alter it or scroll forwards or backwards through the memory map.

The syntax for this command is:

MODIFY xxxx. Where ‘xxxx’ is a four digit hexadecimal start address. Evamp/e; MODIFY 9800. This will display the contents of RAM at address 9800h and allow you to alter it, or move forwards or backwards through memory, one byte at a time. The above command will produce a display something like this: 9800 00. The ‘9800' is the current address, the “00’ is the contents of RAM at that address (this will vary), the ’.’ means the data byte is not an ASCII character (If it was an ASCII character, it would be displayed),

British Amateur Television Club

finally the ‘_’ is the cursor and is waiting for you to enter some data. At this point you have four options, 1) Enter new data as a two digit hexadecimal byte. 2) Press the ‘full stop’ key — This will take you back to the command line 3) Press the ‘PLUS‘ key — This will move to the next address, without altering the contents of memory. 4) Press the ‘MINUS’ key - This will move to the previous address. without altering the contents of memory.

lips: Use [bis command to enter macb/ne code programs [bat you write. fben execute [bem mtb [be CALL command

OUT: This command is the opposite of the IN command and allows you to output data to the CPU’s l/O ports. The syntax for this command is:

OUT xx,yy. Where ‘)0(’ is a two digit hexadecimal address and 'yy’ is a two digit hexadecimal data byte. Brample' OUT 01,55. This will output the value 55h to port 01h (Port B of the 8255 chip). REGISTERS: This command will display the contents of the CPU‘s registers, as they were on return fiom the CALL command. If you have not used the CALL command yet, the displayed values will all be zero. The syntax for this command is:

REGISTERS. This will produce a display on the screen as follows: BC 000000000000 HL DE IX

lY

AF

000000000000

Meaning that the contents of all registers were zero (Usually only seen when the CAII command has not been used yet). lips: See [be memory map at [be end of document and locate [be address of HAM wbere [bese values are be/d it you [ben use [be MOD/FY command to alter [bem, wben you next use [be CALL command [be registers Mil be set to [be [bis

[be

39


values you bave entered BEFORE your routine is called

SEARCH: This command allows you to search through the entire memory map for a particular sequence of hexadecimal bytes, or for a particular sequence of ASCII characters. The syntax for this command is: SEARCH xxxx yyyy aa bb cc. Where ‘xxxx’ is a four digit hexadecimal start address, ‘yyyy’ is a four digit hexadecimal stop address and ‘aa’ 'bb’ ‘cc’ are two digit hexadecimal data bytes. Of:

SEARCH xxxx yyyy “STRING”. Where 'xxnt’ is a four digit hexadecimal start address, ‘yyyy’ is a four digit hexadecimal stop address and STRING is a string up to 80 characters long of ASCII characters, enclosed in double quotes. Eramples.’ 1) SEARCH 9000 FFFF 55 AA. This will search for the sequence 55h AAh in memory from 9000h to FFFFh 2) SEARCH 0000 7FFF “BATC". This will search for the string “BATC” in memory from 0000h to 7FFFh If the search is successful, the message ‘Match found at xxxx’ will be displayed, where XX)0( is a four digit hexadecimal address corresponding to the address at which the search succeeded. If the search was not successful, the message 'No match found’ will be displayed.

TIME: This command works in the same manner as the DATE command, but allows you to display and alter the time. The syntax for this command is: TIME [hh:mm:ss]. Where ‘hh’ is a two digit decimal number depicting the hours, ‘mm’ is the minutes and ‘s’ is the seconds. Example: TIME 19:55:00. This will set time to ‘five to eight pm’. If you omit parameters, the current time will displayed, you will then be returned to prompt.

British Amateur Television Club

the the be the

MEMORY MAP

The following locations are variable u: control the I'C bus:

ADDRESS DESCRIPTION Start of EPROM containing the code to run the CPU board. 7FFF End of the EPROM. It is 32K bytes long, not all of it is used. 8000 Start of RAM 9FFF End of RAM if only 8K is fitted FFFF End of RAM if the full 32K is fitted.

0000

Within the first 4.5K of RAM are the variables used by the operating system, these can be safely looked at with the EXAMINE command, however it is not advisable to alter any of them, apart from the area used to store the registers before using the CALL command. For completeness the locations used are as follows: 8000 Two byte temporary storage 8002 Length and frequency of the beep 8004 Copy of the contents of the 8255 control register 8005 Maximum length of string input

The following locations are those used to hold the register values:

8006 8008 800A 8006 800E 8010 8012

8014 8018 801A 801C 8010

AF Register HL Register pair DE Register pair BC Register pair IX Register W Register RAMTOP Variable, holds the current top of RAM FLAGS Holds various system flags Flash rate for cursor Temporary storage for interrupt routines Cursor row Cursor column

40

801E 801F 8020 8021 8022 8023 8024 8025 8026

Teletext chip register 1 RAM or register 2 register 3 register 4 register 5 register 6 register 7 register 8 Page zero row position (Forth cursor) column Page one row column Page two row column Page three row column Page four row column Page five row column Page six row column Page seven row column Keyboard buffer start address Keyboard buffer and address Vector for INT Vector for NMI Vector for error handler routine 807E Vector to error table 8080 I'C message buffer (1K Bytes long String input buffer (7Fh bytes l Disassembler workspace 8500 Teletext acquisition buffer

BATC MEM

6 EAST

WARGRAVE. British Amateur Television Club


u

I

The following locations are variable used to control the l'C bus:

801E 801F 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 802A 8028 802C 802D 802E 802F 8030 8031 8032 8033 8034 8035 8036 8038 8078 807A 807C 807E 8480 8500 8500

Teletext chip register 1 RAM copy register 2 register 3 register 4 register 5 register 6 register 7 register 8 Page zero row position (For the cursor) column Page one row column Page two row column Page three row column Page four row column Page five row column Page six row column Page seven row column Keyboard buffer start address Keyboard buffer end address Vector for INT Vector for NMI Vector for error handler routine Vector to error table 8080 I'C message buffer (1K Bytes long) String input buffer (7Fh bytes long) Disassembler workspace Teletext acquisition buffer

British Amateur Television Club

8600 8A00 8800 8880 9000 9000 9100 9400 9800

Operating system buffer Real Time Clock buffer Keyboard bufier Machine stack, up to 8FFF 4 pages of checksum protected RAM Video switcher NVRAM space Relay card NVRAM space Teletext and Teletype ‘save’ area From here on up, is clear for user applications.

INPUT/OUTPUT MAP The l/O map has only two devices connected to it (at the moment i) and there is plenty of free space to add your own devices, i.e: 0

Speech synthesisers

0

Music synthesizers.

Control ports to switch other items of equipment on and off.

0

Input ports to monitor activity in the outside world.

0

0

Printer ports.

0

Serial ports.

0

— the list is endless.

The address’s used so far are: 00 01 02 03 60

Port A of the 8255 chip Port B Port C Control port for the 8255 chip. I'C l/O Port.

41


A SIMPLE TEST PROGRAM Here is a short 280 machine— code program for you to type in and try, just follow the instructions listed below: Exit to TOS by selecting Option—1 from the main menu, then type in:

MODIFY 9800

followed by RETURN (or ENTER). Type in the following Hex. digits exactly as they appear: CD 45 170C05003EOE32 10803EOF321D 80 CD B1 14 CD 7F183EOA32 1C 803E 1032 1D 80

CDBI14CD24180730DDCD4517040CO0C9 After entering the last set of Hex. digits (C9) 'enter a full stop. This will take you back to the prompt. You can then run the program by entering: CALL 9800 followed by RETURN (or ENTER).

The source code for this program can be downloaded from the CQ-DATV web site https://cq-datv.mobi/downloads.php

ADVERTISEMENT If anyone is interested in accessing the BATC Bulletin Board ( see CQ—TV 156 page 76) but does not have a modem yet then all is not lost!! Chris Smith has talked an Oxford based company into giving a generous discount to BATC members purchasing modemsl rfrom them. Anyone interested should contact the following company stating that you are a BATC Ed): and member (it might be a good idea to have your membership number handy would like to buy a cheap modem!

4—Sight Computers. Tel: 0235 770128 Fax: 0235 770018 British Amateur Television Club

42


12C Part-6- THE AUDIO SWITCHER To compliment the vision switcher that was featured in part three of this supplement, we now present an audio switcher. Like the vision switcher, it has broadcast quality specifications and a doubled sided, plated through PCB is available from Members’

Services. It is an eight input (uh—balanced into 47K) two-channel unit. The switching devices feed to a virtual earth bus, so you can mix as well as switch. The software allows two operating modes: (6’1. Audio follow video: in this mode, the input selected is the same as the vision switcher. No mixing is allowed and there is no separate control over the audio switcher, it simply follows the vision switcher.

“$2.

Independent: this mode allows greater freedom of control, you can switch any of the eight inputs to either or both of the two outputs. You may turn more than one input on at any time and the result will be a mix.

The operation of the software is very similar to the way the relay menu works, pressing the letter corresponding to the input toggles that input on or off. There is however an extra menu option, this toggles the switcher between the two modes described above. When in the ‘audio follow video’ mode the input selections are inoperative.

CIRCUIT DESCRIPTION There are eight identical input circuits and two identical output circuits, I will therefore describe only one of each. The circuit references will be to input circuit 1 and output circuit 1.

British Amateur Television Club

Audio arrives on pin A6 of the connector CON 1. It is terminated by R79 (47k) and AC coupled by C45 (1uF) to the non— inverting input of op—amp IC15a, R78 (100k) providing a DC reference. The input impedance of IC15a is extremely high, so the parallel combination of R78 and R79 set the input impedance. If a higher or lower impedance is required, alter the value of R79 appropriately. IC15a is configured as a voltage follower and has unity gain set by applying 100% negative feedback from its output pin (pin—1) to the inverting input (pin—2). It therefore acts as a buffer between the switching [Cs and the outside world.

The output from the buffer is split into two, one half going to each of the two output channels (via the switch IC’s). Two 10k resistors are used to perform this task (R80 and R72). IC17 is the switching device for this channel. It is a state—of-the—art audio switch— ing device, providing very high off isolation, low noise and low distortion. There are several ground pins on these devices, allow— ing a good ground plane to be formed, thus isolating the input from the output even more. These switches are so good, that any ‘bleed—through’ of signal you detect in the off state is likely to be cross—talk on the PCB itself, rather than through the IC’s! The output from each switch is fed to a virtual earth bus, one for each- output channel. This allows the audio signals to be mixed as well as switched.

Following output channel one, the bus is termed virtual earth because is is connected 43


AUDIO

1

979 7K

RED

1o

___:3»~——L 10K “72

‘IOK

A11 1 A10 2 GND GND GND GND A20 A2I

GND "#1 ,___3_ GND

2.2.1?—

—-—— 2

_

1 EN12EN2

CHA EN‘I R75

10K

—12

64

[g

7

5 10

%__. 13

c HB

N1

4

W

GND A20

9

2

EN12EN2

13

3

1012 1 SSM 2412 4

R66

+12

47F}

+

10x

1:34

1E7

CHA

5

5

11

;——J

+

GND GND AiléA‘IO GND GND

1

H64

10K

C5

R16

—|U.— 100

22,,

E

47“

GND A21

_1

a 10 12

a

3\

103A 1

,,__, 2 CHE EN2

+1

NE5532 1:: 4

<

1

ENE

7 637

10K R28

C14

_12

+ >——{

—1

10':

n53

10K

~—1:t——~5 221:1

C15

R34

DD;— 100

22:1

+1

CHA 5N3 AUDIO

a

R59

n4

47K

10K R46

L—E—L————-——J

+12

10K

+12

E—l

3 5

11

2

5

g

1

100

GND A2: EN1

_

GND A20

2EN2

11:6A1

3

2

1o 12

NE5532

9

R32

4——‘:’“

CH5 EN“

‘3

10K

025

+

[1

|—‘

R31

_12

221::

101.:

R56 3K3 VCl

R57

3K3

1

CHE EN6

sw1~a —-4

2

_2‘:

4 3

-:t

a7 5 6

5w 0 P—d

+12

10K

. can

CHA EN7

1000

AUDIO v

C3 1000 —12

e

RS 47K

R70 AK?

m

9 10K

vcc CH

3

ENB

SCL 50A

I I I L125 cae

ceséj

T1On 10n1on

The Audio Switcher Circuit Diagram

44

British Amateur Television Club

British Amateur Television Club

+


+12

510$7

_|

cs

R16

Hr—E— 229 100

a 4L,

+12

8

12

A20 ~A2I #EM 21 EN2

_

.

5

9

4” FM

CHE EN2

13

m

cm

CHE EN4

C18

124124

1:57 3K3

5

~A1r

1A1o

1377 47K

1455

3K3v01:

+ 10

1

47s:

11:15

1:155 3K3

13

1 2 3

a

«GND GND ~GN025Nor—1—o—4

"2 g

‘3 ND *GND “.521 _A20

N6

1 2

3 4

7 C16

47R

_,

—:

"Z”

-:

7 B

2

3

s 5

-: SN 0

.

_

1013

941—!

CH

13

1

. JEN12EN2 «6 10

A

14

<1

5 5 7

P:

479 1 2412 4

+

|%

EN1 2 1 EN2

13

7

(:47

.

3

10 12

_

LED

10

—4A11 1A10 «GND 2 GND GND ‘GND -GND GND A20 « A21

4 SCL

vcc

9 CHE ENS

<7

T

I

I

l

_025 CSBCd T1On 10n10n

British Amateur Television Club

’ C30 101.!

4

"r-A

g

_j“

..

.._,

=

1

g4

5

~16 ~47 “a

169 13 1 2 3

02K

67

01

7 -_ 02 03 g a_ 04 1o 2_ 05 -1 11 06 12 c L Fl 07 741.5259

9 1o

11

PCF8574A +

no

so

s1 52

rats 5

4

p p0 p1

E1

T

——’

_

A? A2

0

7

U

D1 1

14

N414

5

o so

s1 $2

00

m 02 03

04 05

4 :HB E_N1 5 :45 E_N2 6 3-18 E_N3

:43 E_N4 E_N5 9 :43 1o :43 E_N6 7

11

H15 05 15 12 CLR 07 74L5259

-

"H8 E_N7 .HB 1515


inverting input of op—amp IC3a. This pin on an op-amp is maintained at ground or earth potential, it being a current input, rather than a voltage input. The gain of IC3a is set at unity by virtue of the fact that it has a 10K feedback resistor (R14) and the input impedance of the inverting input is also 10k (RBO + O/P impedance of IC15a + ‘on’ resistance of IC17). OK, so the input impedance isn’t exactly 10k, but the ‘on’ resistance of IC17 + the O/P impedance of IC15a doesn’t add up to a whole lot, so it’s near as makes no difference.

to the

The output from IC3a is fed straight to the outside world via R13 (22R) and C1 (100uF). R13 is to protect lC3a in case you short circuit the output and C1 is to block any DC. The output from IC3a is also fed to IC3b, which is configured as a unity gain inverting buffer, who’soutput is also fed to the outside world in an identical fashion. This is a simple (but effective) way of providing an electronically balanced output

signal. If you’re not interested in balanced signals, just use one leg of the output, referenced to

ground. The last part of the circuit is the 12C control. Unfortunately, this is slightly more compli— cated than the vision switcher circuit, mainly because we want to mix and switch, so more outputs are required. Rather than do it the easy way and use two 12C ports and hence two 12C address’s, Ithought it would be best to keep to one board, one address. Hence

P7 is used as a reset, whenever the software Strobes this line low, both latches are cleared, thus turning all inputs off. There is also a capacitor (C47) that holds this pin low for a short while after power is applied, thus providing a power on reset.

This all left one spare bit (P7), so waste not want not! I stuck an LED on it. The software turns this LED on (briefly) whene— ver you address this card. As usual, the address input pins of IC13 are taken to a DIP switch allowing more than one switcher to reside on the same PC system. Note also that IC13 is a PCF8574A while the device on the vision switcher is a PCF8674. The difference is that the preset (internal) part of the 12C address is different in the two devices. This means that you can set your Vision switcher AND your audio switcher to address ‘0’ on the DIP switches, the software automatically takes care of the internal offset. This is how any one audio card is ‘married’ up to a vision card.

CONCLUSION The next project in the pipeline is a two charmel vision mixer/fader, after that we may give PC a rest for a while, depending on any response we get from YOU. We may publish another software description as the software has altered quite a bit as more and more functions are added. If anyone has a particular project they would like to see added to the system, please let us know.

IC16 and 1C9! The idea is that you make P0 (IC13) go low (to tum a switch off) or high (to turn a switch on), then you select which input it is you want to address, in binary, on P1, P2 and P3. Finally, ‘you strobe either P4 low (for output channel one) or P5 low (for output channel two). 46

CQ-DA TV dotMOBI

British Amateur Television Club

I2C Bus projects  

I2C bus projects for the archives

I2C Bus projects  

I2C bus projects for the archives

Advertisement