Paia 8700 Guide

T.M.
8700
COMPUTER/CONTROLLER
ASSEMBLY
AND
USING
MANUAL.
© 1977
PAIA
Electronics,
Inc.,
1020 W.
Wilsbire
Blvd.,
Oklahoma
City,
OK 73116

8700
ASSEMBLY
The
PAIA 8700 COMPUTER/CONTROLLER
is
assembled
on
the
double-
sided,
plated
through
...
hole,
etched
circuit
board
provided.
Unlike
other
PAIA
circuit
boards,
this
board
has
all
conductive
traces
pre-tinned
for
easy
solderability
and
does
not
require
scrubbing
before
assembly.
Also unlike many
other
PAIA
circuit
boards,
the
8700
board
is
oomplex;
and on
complex
boards,
unintended conducting
paths
between
conductors
(particularly
where
a
conductor
passes
between pins
on
an
IC)
are
not
unheard
of. While
all
reasonable
quality
control
precautions
have
been
taken,
it
is
a
wise
assembler
who
will
spend
several
minutes
closely
ex-
amining
the
circuit
board
for
these
unintentional
bridges.
Prints
of
the
circuit
board
artwork
have
been
provided
for
this
purpose
in
figures
(1)
and(2).
Bridges
(particularly
on
the
component
side
of
the
board)
will
be
particularly
difficult to find
once
sockets
and
other
components
are
in
place.
Because
of
the
close
proximity
of
some
conductors
to
one
another,
extreme
care
should
be
exercised
during
soldering
to
prevent
unintentional
solder
bridges
during
assembly.
The
likelihood
of
assembly-caused
bridges
has
been
lessened
by
laying
out
the
board
with
an
absolute
minimum
number
of
conductors
passing
between
IC
pins
on
the
soldered
side
of
the
board,
but
care
is
nevertheless
advised.
Use a
clean,
low-wattage
iron
for
soldering
(40
watts
max.).
While
most
temperature-sensitive
components (with
the
exception
of
discrete
tran-
sistors)
are
mounted
in
sockets,
excessive
temperature
can
weaken
or
destroy
the
bond
between
the
conducting
copper
and
the
fibre-glass
board
material.
All
sockets
and
other
components
are
mounted on
the
side
of
the
board
with
the
silk-screened
parts
placement
designators
and
soldered
from
the
opposite
side
ONLY.
00
NOT SOLDER COMPONENTS ON BOTH SIDES
OF
THE BOARD.
NOT
ALL
HOLES
ON
THE cmcuIT BOARD WILL HAVE A PART
ASSOCIATED WITH THEM. Many
of
the
holes
are
conductive
pass-throughs
from
one
side
of
the
board
to
the
other
while
others
are
holes
reserved
for
mounting optional
components.
Some
manufacturers
recommend
filling
through-board
holes
with
solder
to
insure
that
a conductive
path
is
established
from
one
side
of
the
board
to
the
other.
If
you
elect
to do
this,
make
sure
that
you
know which
holes
are
which.
It
is
for
all
practical
purposes
im-
possible
to mount a component
in
a
plated-through
hole
that
has
been
filled
with
solder.
NOT
ALL
PART NUMBERS ARE USED
ON
THIS CffiCUIT BOARD,
some
part
numbers
(
e.
g.
R4)
are
reserved
for
future
expansion.
3

~
:
.......
'-4_•--=
-
-D~__...,
••
·=
=
~~----=·
o-!!-.._
- - - •
-
---
--:----....•
=
-
-
-
--=-
-::::.-
-
4

•• •
1
• •
-
-
--
--
--
--
--
-
--
-- -
----
---
--
--
- - --
„ „ „ „ „ „ „
••
••
••
••
••
••
•
•
-
-
---
---•
•
•
•
•
•
•
-
-
-
-
• •
··~~-i
--
·-:tr:~
:
:'\.~-
:J/:
~-------;;-~
- - -
•••••
~==----=
FIGURE
2 -
CIRCUIT
BOARD
FOIL
PATTERN
5

FIGURE
3
8700
COMPUTER/CONTROLLER
PARTS
PLACEMENT

When mounting
components
such
as
resistors,
diodes
and
capacitors,
the
leads
of
the
part
should
be
passed
through
the
mounting
hole
and
then
bent
to a
slight
angle
to
hold
the
part
in
place
for
soldering.
00
NOT
"cinch"
the
leads
directly
against
the
board
(bend
to
a 90° angle).
This
technique
while
great
for
the
government
(and
others
who
are
in
the
habit
of
throwing
away
things
that
don't
work)
provides
only
marginal
additional
mechanical
strength
and
makes
removing
malfunctioning
components
extra-ordinarily
difficult.
AND
REMEMBER.
..
pre-tinned
boards
require
very
little
additional
solder.
With
all
of
these
DOs
and
OON'Ts
out
of
the
way,
we
begin:
HAVE
YOU
INSPECTED THE BOARD?
It
might
just
save
you
a
lot
of
trouble.
U
sing
parts
placement
designators
and
the
parts
placement
drawing
in
figure
3
as
guides,
solder
the
following
resistors
in
place.
Notice
that
many
of
these
r~sistors
are
close
together
and
consequently
may
need
tobe
"stacked"
as
shown to
the
left.
Note
that
resistors
are
non-polarized
components
and
that
either
lead
may
be
placed
in
either
hole
without
affecting
performance.
Installation
of
all
resistors
within
a
given
group
before
any
of
the
resistors
in
the
group
are
soldered
in
place
is
highly
recommended.
ABC
1111,
1 '
Silver
or
gold -
disregard
this
band.
,PART NUMBER(s) VALUE COLOR CODE
A-B-C
(
v5/Rl
-R3 (3
parts).
„
...
3300
ohms.
„ „
„.
orange-orange-red
"#'
/'f.:."
(
'')
1
R5
............................
3300
ohms
........
orange-orange-red
<J
R6
- R 13 (8
parts)
..
„.27K„„
...
„.„
.....
red-v~olet-orange
(
,)
R14 -R21 (8
parts)„
..
27K„„
..„
...
„„
...
red-v1olet-orange
(<YR22
..........................
27K.
................
red-violet-orange
('/) R23 -R25
(3
parts)
....
27K.
................
red-violet-orange
(
")
.;R.26
-R30
(5
parts)„„
lOK.„.„„
.....
„ ..
brown-black-orange
(
jt
1R31 -R37
(7
parts).
„.
lOK„
...
„
........
„
brown-black-orange
(~
) R38 -R45 (8
parts)„
..
lOK„„„.„„„„„brown-black-orange
Install
the
following
ceramic
disk
capacitors.
Like
resistors,
these
components
arenon-polarized
and
either
lead
may
be
installed
in
either
of
the
holes
provided.
;''
(/)
Cl-C7
(7
parts)„„
„ „
.•
05
mfd
disk
(1 C9„..
„„
„.
„„.„
...
„„„„.
05
mfd
disk
V)
Cll,
C12 (2
parts)„.„„.
05
mfd
disk
(V)
C8
............................
33 pfd.
disk
Install
the
Integrated
Circuit
sockets.
Note
that
four
different
socket
sizes
have
been
supplied;
14
pin,
16
pin,
24
pin,
and
28 pin.
00
NOT INSTALL
ANY
OF
THE
INTEGRATED CIRCUITS AT THIS
TIME!
When
installing
the
sockets;
note
that
there
is
a
small
notch
at
one
end,
between
the
rows
of
pins.
This
notch
should
correspond
to
the
notch
on
the
circuit
board
graphics
for
convenient
reference
later
on. 7

8
Install
the
14 pin
sockets
(17
supplied)
in
the
following
locations
Jl
J5
IC5
IClO
IC21
J2
!Cl
IC7
ICll
/
(
\)
J3
( ) IC3
( ) IC8
( ) IC12
( )
( )
( )
( )
J4
IC4
IC9
IC13
Install
the
16 pin
sockets
(9
supplied)
in
the following
locations
( )
( )
.)
'
;·
IC2
IC23
IC31
t
(l,
)
<
(
\~
IC6
IC26
(.
) IC14
( ) IC29 ( ) IC22
( ) IC30
(
!~
Install
the
24
pin
socket
supplied
at
the
location of
IC
19
(
J)
Install
the
28
pin
socket
supplied
at
the
location of IC15
J)
Install
the
3 pin power
connector
at
the
location
indicated
as
J6.
Note that
this
connector
i$ keyed by
the
shape
of
its
base
and
must
be
installed
properly.
(see
figure
on
page
27)
Install
the
8
discrete
transistors.
Note
that
the
transistors
are
keyed
by
the
flat
on
the
side
of
their
cases
and
must
be
installed
properly
for
proper
operation.
Because
of
later
mechanical
assemblies,
it
is
also
important
that
the
transistors
seat
as
closely
as
possible
to
the
board.
The
tops
of
the
transistors
ßhould
be
no
more
than
3/8"
above
the
surface
of
the
board.
. J
( )
QO
)
Q4
(
/>
Ql
(
i)
Q5
(~
)
Q2
(\)
Q6
Q3
Q7
Install
the
three
ln914
diodes
provided.
Like
the
transistors,
these
parts
are
polarized
and
must
be
installed
so
that
the
banded
end of
the
diode
co~responds
to
the
band
indicated
on
the
circuit
board
graphics.
I \
(L
)D3 (
)>n4
V )D5
\
'
Like the
IC's,
the
seven-segment
displays
are
socketed,
but
since
the
pins
on
the
displays
are
not to
standard
tolerances,
Molex
pins
must
be
used
to
mount
these
parts.
The
molex
pins
are
tied
together
at
the
top by a
metal
strip
referred
to
as
a
"carrier",
and to
be
perfectly
correct
the
carrier
should
be
on
the
outside
of
the
two
strips
that
will
constitute
the
socket.
The
molex
pins
are
supplied
in
a continuous
strip
and
must
be
cut
into lengths of 5 pins
each
prior
to
installation
on
the
circuit
board.
Install
and
solder
the
four
rows
of
molex
pins
at
the
IC27 and IC28
locations.
Snap off
the
carrier
strip
after
the
pins
are
soldered
in
place.

We
are
now
ready
to
begin
installing
the
lntegrated
Circuits,
but
first
a
brief
explanation of
where
we're
headed.
The
chances
are
good
that
with
careful
assembly
the
8700
Computer/Controller
will
be
ready
to
operate
when
power
is
first
applied.
Nevertheless,
it
is
a good
idea
to
go
through
the
"power-up"1"
procedure
that
we
will
outline.
The
procedure
entails
the
use
of
an
oscilloscope
and should
be
used
by anyone
with
access
to
one
of
these
devices.
If
you
absolutely
cannot
get
a
scope
to
use,
you
may
skip
this
procedure,
but
for
those
who
can
use
it,
it
will
give
you confidence
in
certain
sections
of
the
computer
and
simplify
trouble-shooting
procedures
in
the
event
that
there
is
a
failure
when
the
unit
is
fully
assembled.
Open
the
integrated
circuit
package
and
install
the
following
integrated
circuits
in
their
respective
sockets.
Notice
that
the
orientation
of
the
ICs
is
keyed
by
a
semi-circular
notch
at
one
end
of
the
device,
and
that
the
position of
this
notch
should
correspond
with
the
notch
that
is
part
of
the
circuit
board
graphics.
WARNING CMOS cmcurrs
Some of
the
integrated
circuits
used
in
this
kit
are
Complementary
Metallic
Oxide
Semiconductors
(CMOS). While
state
of
the
art
internal
protection
is
provided,
these
circuits
are
still
susceptible
to
damage
from
STATIC ELECTRICITY. You should
not
experience
any
difficulties
if
you
observe
the
following
precautions.
1)
The
circuits
are
supplied
to
you
inserted
in
blocks
of
conductive
foam.
Leave
them
in
these
blocks
until
you
are
ready
to
install
the
part
•.
2)
Do
not
install
the
parts
in
sequence
other
than
that
called
for
in
the
instructions.
3)
Do
not
wear
synthetic
(
e.
g.
nylon) clothing while handling
these
parts.
Inst
all
the
following
IC
s
in
their
sockets.
NOTE: FND 357
displays
are
k~.yed
by
a
series
of
small
grooves
on
their
top edge•
.
,.
( l
ICl
74LSOO
(i
) IC2 4042
()
IC3
~
JIC4 4001 ( ) IC5 4011 ( ) IC6
IC7 4001 ( ) IC8 4001 ( ) IC9
:l
IClO 74LS02 ( )
ICll
4001 ( ) IC12
IC13 4011 ( ) IC14 4556 ( ) IC15
~···
~
IC21 4001 ( ) IC26 9368 ( ) IC29
IC27 FND 357 Display ) IC28 FND 357
4001
4042
4011
4011
6503
9368
This
should
leave
you
with
5
ICs
that
have
not
been
installed;
four
2112 RAMs and one
170'/A PIEBUG
monitor
PROM.
(A U
sing
a
section
of
resistor
clipping,
form
and
install
the
jumper
indicated
as
S2
on
the
parts
placement
diagram.
Leave
a
generous
loop
in
this
jumper
as
it
will
be
cut
open
later.
9

10
The
jumper
that
was
installed
above
enables
a
test
feature
of
the
8700,
described
in
the
"Self
Test"
section
of
this
manual,
you should
at
this
point ski.p to
that
section
and
perform
the
tests
outlined
there.
Return
to
tllis
point
for
final
assembly
when
the
procedure
outlined
has
been
·com.pleted.
v{/
Clip
the
jumper
:i.nstalled
as
S2
in
a
previous
step
into two
sections
and
spread
the
sections
apart
so
they do
not
touch, but so
that
they
may
be
re-soldered
if
needed.
<j(
Using a section
of
excess
resistor
lead,
form
and
install
the
jumper
indicated
as
Sl
on
the
circuit
board
graphics.
(This
jumper
enables
"normal"
operation
of
the
system,
and
~
be
in
place
for
the
unit to function
properly.
·
c6
In.stall
the
rema:i.ning
Integrated
Circuits
in
their
respective
soc~ets
(observe
. . • 1
orientation
markings).
i
d)
IC22
(~)
IC31 2112
2112
/
<(>
( ) IC23
IC19 2112
1702A PROM
{
<\t
IC30 2112
This
completes
assembly
of
the
8700 CPU
board.
Proceed
to
assembly
of
the
8700A
active
keyboard.
·
87
00
/A KEYBOARD ASSEMBLY
Prepare
for
asseinbly
by
thoroughly
cleaning
the
exposed
copper
circuitry
above
colored
keyboard
area.
U
se
steel
wool
and/
or
scouring
cleanser.
00
NOT
USE
PRE-SOAPED
STEEL
WOOL
PAD.
Use
particular
care
to
avoid
scratching
the
printed
keyboard
area.
Rinse
and
dry
the
board
completely
before
beginning
assembly.
A
WORD
OF
ADVICE:
-
Do
not
clean
th~
circuit
board
until
you
are
ready
to
assemble
and
test
this
unit. When
assembly
is
complete
and
the
unit
verified
as
being
operational,
a
coat
of
artist
1
~
spray
fixative (
available
at
most
artist
1
s/
,
engineers
supply
stores;
e. g.
11
Blair
Spray
Fix'')
will
keep
the
copper
bright
and
shiny and
prevent
oxidation.
DO
NOT
try
to
protect
the
copper
with any
oil-based
sprays
as
these
may
entrain
moisture
or
otherwise
become
conductive;
NOTE
that
there
are
no
sockets
used
in
the
8700/
A.
And finally,
just
so
there
is
no confusion,
the
parts
are
mounted
on
the
side
of
the
board
marked
"ICl",
11
Rl
11
9
etc.
·
ABC
l_l
l_l,
__
I ,
Silver
or
gold
-
disregard
this
band.
Begin
assembly
by
soldering
all
resistors
in
place
as
per
the
parts
placement
designators
printed
on
the
circuit
board
and
the
detail
figure
4.

Figure
4
DESIGNATION VALUE COLOR CODE
A-B-C
(})
Rl
-R16 (16
resistors)
.........
82K
....................
grey-red-orange
( )
Rl
7 - R20 ( 4
resistors)
.........
lOOK
.....................
brown-black-yellow
( ) R21 -R24 ( 4
res~stors)
.........
150K
.....................
bro~-green-yellow
( ) R25-R48 (24
res1stors)
.........
27K
.......................
red-v1olet-orange
T~~re
are
13
solid
wire
jumpers
used
on
this
board.
for7/a'.nd
install
these
jumpers.
(
~··
Form
and
install
13
jumpers.
Count
them.
(1
Locate
the
RESET
push-button
(Sl
) and
prepare
it
for
installation
by
using
a
pair
of
needle-nose
pliers,
to
carefully
bend
its
two
solder
lugs
out
to
90°
angles
as
/
1·
shown
in
detail
figure
5.
( )
Cut
the
length
of
insulated
wire
provided
into two
equal
5-inch
lengths,
strip
1/4
inch
of
insulation
from
each
end
of
each
wire
and
twist
and
tin
the
exposed
ends.
Solder
one
end
of
each
of
the
lengths
to
the
lugs
of
the
switch.
U
sing
the
solid
wire
provided,
SOLDER
TWO
LENGTHS
OF
INSULA
TED
WIRE
Figure
5
11

12
1
:t
i
Using
the
hardware
supplied, mount
the
RES~T
button
in
the
circular
hole
directly
above
the
rectangular
display
cut-out. NOTE
that
the
pushbutton
m.ounts
from
the
component
side
of
the
board
so
that
the
actuating
stud
protrudes
from
the
side
of
the
board
printed
with
the
keyboard
designations.·
Solder
one
of
the
two
wires
connected
to
the
RESET button
to
the
circuit
board
point
labeled
"A"
and
the
other
to
the
circuit
board
point
labeled
"B".
Install
the
14
lead,
DIP
header
terminated
I/O
connector
as
follows:
(f)
From
the
component
side
of
the
board,
push
the
14
pins
of
the
keyboard
I/O
cable
header
(
either
end
may
be
used)
into
the
14
holes
provided
at
the
circuit
board
location
marked
"I/0". While
either
end
of
the
jumper
may
be
used
here,
the
header
MUST
be
installed
so
that
the
wires
coming
from
it
point TOWARDS THE NEAREST EDGE
OF
THE CffiCUIT BOARD
as
shown
in
detail
figure
6.
(
\)
Carefully
solder
all
14
pins
of
the
header
in
place.
Excessive
heat
at
this
operation
can
melt
the
header.
Make
sure
that
the
copper
is
very
clean
before
soldering.
INSTALL
DIP
HEADER
50
THAT
WIRES
COME
FROM
SIDE
NEXT
TO
CIRCUIT
BOARD
EDGE
WARNING
CMOS
CIRCUITS:
Observe
cautions
previously
outline •
Figure
6
A
three-wire
grounded
soldering
iron
is
ideal
but
if
you
don't
have
one,
your
present
iron
may
be
used
by allowing
it
to
heat,
then
UNPLUGGING
it
during
the
soldering
operation.
Before
soldering
and
after
unplugging
touch
the
tip
of
the
iron
momentarily
to
the
ground
screw
of
an
electrical
outlet
or
other
source
of
ground
to
drain
the
static
charges.
Install
the
six
4001 CMOS
NOR
gate
packages
IC-1
through IC-6.
t~~~~~~-6
............
~:::lB
.
THIS COMPLETES ASSEMBLY
OF
THE PAIA
8700/
A KEYBOARD.

FINAL ASSEMBLY-
/'.
Using
the
hardware
illustrated,
mount
the
8700A
active
keyboard
above
the
8700
CPU
board.
Note
that
two
5/16"
spacers
are
used
on
each
of
the
1"
machine
screws
that
hold
the
keyboard
above
the
processor,
and
that
the
displays
are
visible
through
the
rectangular
cut-out
above
the
RESET·
switch.
ALSO
check
that
the
solder
lugs
on
the
RESET
switch
(S3 on
the
8700A)
do
not
contact
any
of
the
components
on
the
CPU
board.
If
necessary,
loosen
the
switcb
and
re-orient.
Uusing
the
hardware
illustrated,
mount
the
two
remaining
rubber
feet
at
the
rear
edge
of
the
8700
board.
(
~l\fate
the
14
pin
header
of
the
keyboard
I/O
cable
with
the
14
pin
socket
J3
(the
middle
socket
of
the
five
along
the
rear
edge
of
the
CPU
board).
4-40X
(-4
PLACES
,„
4-
40
X
"'4
- 2 PLACES
Figure
7
S_...1
6" SPACER-8
PLACES
RUBBER
FEET-
6 PLACES
4-40NUTS-6
PLACES
THIS
COMPLETES
ASSEMBLY
OF
THE PAIA 8700
COMPUTER/CONTROLLER.
Check
out
the
system
using
the
Testing
and
Preliminary
Familiarization
section
which
follows.
13

;>,,
',
NOTES
14

TESTING &
FAMILIARIZATION
THE
PAiA
MONITOR
(PIEBUGl
Now
that
you
have
your
computer
assembled
the
next
step
is
obviously to
try
it
out.
To
do
that
you
will
have to know a
little
bit
about
the
monitor
program.
We
will
assume
that
you know
little
or
nothing about
computers
and
attempt
to explain why
there
is
a
monitor
program
in
the
first
place.
You
can
think of
your
computer
as
a
machine
that
follows
your
instructions
to
the
letter.
That's
really
all
that
any
computer
is.
The
group
of
instructions
you give
it
to do a
specific
job
is
called
a
program.
A
person
that
writes
a
set
of
instructions
(program)
for
a
computer
is
commonly
called
a
"computer
programmer".
There
are
lots
of
computers
in
the
world,
consequently
there
are
lots
of
computer
programmers.
You
are
about to
become
one!
In
general,
a
computer
by
itself
is
useless.
There
is
no way to feed
instructions
into
it
or
get
results
out of
it.
Although
it
has
the
ability
to follow
your
directions
it
must
rely
on
external
equipment
or
devices
for
input and output
operations.
The
external
equipment and
devices
fall
into a
category
known
as
"peripherals"
and include
such
things
as
printers,
CRT
terminals,
teletype
terminals,
tape
drives,
card
readers,
and
so
on.
On
small
computers
you may find
peripherals
such
as
cassette
recorders,
A/D
and
D/
A
converters,
relays
to
control
external
events,
etc.
The
PAIA 8700
Computer/Controller
has
two
peripherals
that
come
with
it;
a keyboard and
display.
The
keyboard
has
24
"touch-pad"
keys.
Each
key
is
activated
by
simply
touching
it
with
your
finger,
there
is
no
key
movement.
If
you
have
the
CS-87
Cassette
option
each
keystroke
is
accompanied
by
the
muted
"beep"
of
the
audible
feed-back
circuitry.
Eight
of
the
keys
are
for
control
functions
while
the
other
sixteen
represent
the
hexadecimal
number
set.
Hexadecimal
is
a
number
set
that
fits
computers
very
well
but
contains
sixteen
symbols
instead
of
ten
like
you
are
used
to working
with
now.
The
symbols
used
in
the
hex
(short
for
hexadecimal)
set
are
O
through
9 and A
through
F (
i.
e.
, O
12
34 56 7 89
AB
CD E
F).
If
you
don't
know
hex
it
will
be
fairly
easy
for
you to
learn
since
you
are
already
familiar
with
all
the
symbols.
Obviously
the
purpose
of the
keyboard/display
is
to
get
programs
and
infor-
mation
into and out of
your
PAIA
computer.
However, to do
this
task
the
computer
must
have the
instructions
(program)
to
tell
it
how to
perform.
That
is
the
purpose
of
the
monitor
program.
It
instructs
the
computer
on how to
interpret
the
information
from
the
keyboard
and what
information
is
to
be
sent
to
the
display.
The
basic
use
of
the
monitor
is
in
loading and examining the
contents
of
memory
using
the
keyboard
and disp1ay.
That
gives
you the ability to
enter
a
program
into
the
computer
from
the
keyboard,
try
it
out,
and change
it
if
necessary
.•
The
Monitor
will
perform
other
functions to
aid
you
in
your
feat
of using the
computer
and
those
functions
will
be
explained
as
you
read
on.
15

ENTERING
A
PROGRAM.INTO
THE
COMPQTER
' .
-·
The
following
is
a
sample
program
that
we
will
use
as
an
example:
ADDR CODE LABEL INSTRUCTION COMMENTS
0000 A9 00 BEGIN LDA
#0
;CLEAR ACCUMULATOR
0002
BD
20 08
REPEAT
STA $0820 ;DISPLAY ACC
0005
AO
00 LDY #0
;CLRY
0007 A2 50 LDX #$50 ;SPEED SETTING (IN HEX)
0009 es LOOP INY ;DELAY LOOP
OOOA
DOFD
BNE LOOP ;BRANCH UNTIL
Y=O
oooc
CA DEX ;CHECK
SPEED
OOOD
DQ
FA BNE LOOP ;BRANCH UNTIL
X=O
OOOF
F8
SED ;SET DECIMAL
MODE
0010 18 CLC ;CLR CARRY
0011 69
01
ADC
#1
;ADD
1 TO ACC
0013 4C 02 00
JMP
REPEAT
;00
IT
ALL
AGAIN
Fig
1.
This
program
will
make
your
computer
count
from
O
to
99 and
then
start
over.
You
will
be
able
to
see
it
count
by
watching
the
display.
You
will
notice
that
the
format
of
this
program
listing
is
divided into
five
"fields";
ADDR, CODE, LABEL, INSTRUCTION and COMMENT.
Each
of
these
fields
has
its
own
significance.
The
ADDR
column
is
the
"address"
in
memory
(more
on
this
shortly)
of
the
data
or
instruction.
The
CODE
column
is
the
actual
"machine
language"
which
will
be
stored
at
the
memory
location
specified
by
the
ADDR
field.
The
first
two
digits
of
the
CODE
field
are
referred
to
as
the
OP-CODE,
this
is
the
part
of
the
code
field
that
tells
the
computer
which
instruction~
among
its
repertoire
of
many
dozen,
it
is
to
execute.
The
pairs
of
digits
following
the
op-code
are
called
the
OPERAND and
in
general
this
part
of
the
CODE
field
tells
the
computer
where
and how to
execute
the
instruc-
tion
specified
by
the
op-code.
Notice
that
some
op-codes
have
one
pair
of
digits
for
the
operand
while
others
have
two
pair
or
none
at
all.
In
general,
a.
computer
executes
instructions
in
a
linear
manner;
doing
one,
then
the
next
in
line,
then
the
next
,
etc;
but,
there
will
be
times
when a
program
will
"loop";
that
is,
repeat
a given
section
of
the
program
a
number
of
times
to
obtain
the
required
result.
For
the
convenience
of
the
programmer
(this
is
!!2.t
entered
into
the
macbine)
the
LABEL
field
is
provided
for
naming
specific
locations
or
parts
of
the
program
that
are
to
be
"jumped"
to
out
of
their
normal
sequence.
For
example,
the
last
instruction
in
our
demo
program
is
JuMP
REPEAT,
which
mea.n.s
that
when
the
computer
executes
this
instruction
it
will
jump
back
to
the
portion
of
the
program
marked
as
REPEAT
in
the
label
field
(in
this
case,
at
location
0002) and continue
running
the
program
from
that
point on.
The
INSTRUCTION
field,
like
the
LABEL
field
is
provided
as
an
assistance
16
to
the
programmer.
lt
is
difficult
(at
least)
to
remember
all
of
the
op-codes
in

the
computer'
s
repertoire,
and
the
INSTRUCTlON
field
provides
space
for
a
mnemonic
(pronounced
ne
1
-mon-ic
- a
memory
aid)
for
the
instruction
that
the
computer
is
to
execute.
Some
programmers
may
be
able
to
look
at
the
op-code
A9
and
remember
that
it
is
the
instruction
for
loading
the
accumulator
in
the
immed-
iate
mode,
but
LDA #0 (LoaD
Accumulator;
#,
an
almest
universal
symbol
for
"immediate";
and
O,
the
thing
tobe
entered
in
the
accumulator)
is
a whole
lot
easier
to
remember.
The
COMMENT
field
is
another
aid
to
the
programmer.
In
this
area
is
written
a
short
comment
on
the
reason
for
using
that
instruction.
ldeally,
the
scope
of
the
comments
used
should
be
sufficient
for
a
person
other
than
the
programmer
to
make
out
what
it
is
that
the
program
is
doing
(this
rarely
happens
in
practice).
As
you
may
have
concluded,
the
ADDR
and
CODE
fields
are
the
only
ones
that
have
anything
to
do
with
the
numbers
that
you
enter
into
the
computer
to
make
the
program
run.
At
this
point
it
becomes
necessary
to
define
a
"byte".
As
we
mentioned
above,
some
of
the
instructions
consist
of
two
digits,
some
four,
and
some
six,
but
all
of
them
were
in
two-digit
clusters.
Each
cluster
is
called
a
''byte"
and
that
is
the
main
unit
of
measurement
we
will
be
working
with.
For
example:
instead
of
saying
each
instruction
can
consist
of
two,
four,
or
six
digits,
we
say
that
it
consists
of
one,
two,
or
three
bytes.
The
memory
of
your
computer
is
also
measured
in
bytes.
lt
comes
with
512
bytes
and
an
additional
512
bytes
can
be
added by
simply
plugging
in
four
more
memory
lC
's.
lt
takes
three
bytes
of
memory
to
store
(hold) a
three-byte-instruction.
Each
byte
of
mem-
ory
has
a unique
address
associated
with
it
which
enables
the
computer
to
pick
out
the
particular
byte
it's
looking
for.
You
can
easily
visualize
how
the
computer's
memory
is
organized
if
you
think
of
it
as
a town
with
only one
very
long
street.
All
the
houses
of
the
town
are
on
that
one
street
and
the
only way
you
can
locate
a
particular
house
is
by
its
address.
If
you
think
of
each
house
as
representing
one
byte
of
memory
then
that's
what
your
computer's
memory
looks
like.
Each
unique
address
is
specified
using
a
four-
digit
hex
number.
Look
under
the
"ADDR"
column
of
the
program
listing
(Fig.
1)
for
µn.
example
of
this.
Notice
that
some
numbers
are
skipped
in
the
column.
Each
address
shown
is
the
address
of
the
first
byte
of
the
instruction
on
the
same
line.
In
the
case
of
a
two-
or
three-byte
instruction
the
addresses
of
the
additional
bytes
are
not
shown
but
they
are
counted.
Count
the
bytes
in
the
program
and
you
will
notice
that
each
time
you
start
on
a new
line,
the
count
will
agree
with
the
address
listed
on
that
line
until
you
get
past
nine.
Remember
now
that
we
are
working
in
hexadecimal
(hex)
and
there
are
six
more
symbols
to
count
after
the
"9"
symbol.
Here
is
an
example
of
how to
count
in
hex:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E~F,10,ll,
12,13,14,15,16,17,18,19,
lA,
lB,
lC,
lD,
lE,
lF,
20~21,
...••....•....
97,98,99,9A,9B,9C,
9D,9E,
9F,
AO,Al,A2,
..•..••
A8,A9,AA,AB,AC,AD,AE,AF,
BO,
Bl,
B2,
.......•
F8,
F9,.FA,FB,
FC,
FD,
FE,
FF,
100, 101, 102,
..••.•...•
and
so
on.
17

\
Now
you should
be
ready
to
enter
the
program
from
Fig.
1 into
yourcomputer.
·.Start by applying
power
tO
the
computer
•
then
press
the
reset
button.
Arbitrarily
touch
some
of
the
numbered
keys
and
notice
how
the
.numbers
shift
left
through
the
display.
The
display
only shows
the
last
two
entries
from
the
keyboard
but
the
computer
can
remember
as
many
as
the
last
twelve.
If
anything
goes
wrong and
the
display
stops
responding
to
the
keyboard,
press
the
reset
button
and
it
should
return
to
normal;
. 18
Now
type:
0-0-0-0
DISPLAYshows: 00
(Touch
the
Okey
four
times)
DISPLAY
xx
<x-don't know,
don't
care)
(Touch
the
DISP key)
Tbis
sets
the
pointer
to
memory
location 0000, which
is
the
address
of
the
first
byte
to
be
entered
into
the
memory
(see
ADDR column
of
Fig.
1.
).
The
display
will
show
the
contents
of
that
location.
This
operation
lets
the
monitor
know
where
in
memory
your
program
is
tobe
stored
(programs
don't
always
start
at
0000).
Type:
A-9
ENTER
DISPLAY shows:
A9
XX
Tbis
ente:rs
the
first
byte
of
the
program
into
the
computer's
memory,
moves
the
pointer
to
the
nex.t
address
in
memory
and
displays
the
contents
of
that
next
address.
lt
is
important
to
understand
the
concept
of
the
pointer
since
it
will
be
referred
to
quite
often.
Each
time
the
"ENTER"
key
is
touched1 what you
see
in
the
display
will
be
stored
in
the
memory
location
specified
by
the
pointer.
The
pointer
will
then
be
increment-
ed
to
the
nex.t
memory
location and
the
contents
of
that
location
will
be
displayed.
Type:
0-0
ENTER DISPLAY shows: 00
XX
This
enters
the
second
byte
of
the
progra.m into
memory.
The
first
and
second
bytes
of
the
program
form
the
first
instruction
of
the
program
which
is
a LDA
(load
accumulator)
instruction
(See
Fig.
1).
Type:
8-D
ENTER
2-0
ENTER
0-8
ENTER
DISPLAYshows:
8D
XX
20
XX
08
XX
These
three
bytes
form
the
second
instruction
(STA-store
accumulator)
of
the
program
(See
Fig.
1).
Now
that
you
have
the
hang
of
it,
enter
the
rest
of
the
program
listing
under
the
"CODE"
column
in
Fig.
1
starting
with
AO,
00, A2,
etc
•

CORRECTING
ERRORS
lf
you
make
a
mistake
in
typing
but
catch
it
before
touching
the
"ENTER"
key
then
you
can
correct
it
by
simply
retyping
the
correct
entry;
the
mistake
will
be
shifted
out
of
the
display.
If
you
have
already
entered
the
mistake
in
memory;
then
touch
the
"BACKSPACE"
key
and
the
mistake
will
reappear
in
the
display.
Now
type
the
correct
entry
and
then
be
sure
to
touch
the
11
ENTER"
key
or
the
memory
will
still
contain
the
mistake.
Touching
the
"BACKSPACE"
causes
the
mon.itor to
decrement
the
pointer
and
then
display
that
location.
EXAMINING
THE
PROGRAM
Now
that
you
have
the
program
in
memory
it's
a good
idea
to go
back
and
cneck
it
to
make
sure
it
was
entered
100%
correctly.
If
even
one
digit
is
wrong
then
the
program
will
not
operate
properly.
First
you
must
let
the
monitor
know
where
in
memory
your
program
is;
or
in
more
technical
terms:
set
the
pointer
to
the
beginning
of
the
program.
To
do
that
you
must
type:
"0-0-0-0-DISPLAY".
Always
remember
that
the
"DISPLAY"
key
is
used
to
set
the
pointer.
The
display
should
now show
the
first
byte
of
the
program
(A9).
If
it
doesn't
then
you
have
done
something
wrong
and
you
should
start
all
over.
If
it
does
then
you
can
examine
the
next
byte
by
simply
touching
the
"ENTER"
key.
This
causes
the
data
shown
in
the
display
(which
is
what
was
in
the
memory
location
in
the
first
place)
tobe
entered
back
into
the
same
memory
location
and
increments
the
pointer
to
display
the
next
location.
You
can
step
through
the
program
by
repeatedly
touching
the
"ENTER"
key.
The
series
of
bytes
seen
in
the
display
should
correspond
with
the
ones
in
the
program
("CODE"
column
of
Fig.
1).
lf
you
find a
byte
that's
not
correct
you
should
retype
it
while
it's
in
the
display
and
then
touch
the
"ENTER"
key.
RUNNING
THE
PROGRAM
Everything
should
be
set
to
run
the
sample
program
now.
To
execute
(run) a
program
you
must
tell
the
computer
where
the
starting
point
of
the
program
is.
lt)
the
sample
program
the
starting
point
is
at
the
beginning
instruction
(ADDR 0000);
However,
not
all
programs
start
at
their
beginning.
Type:
0-0-0-0
RUN DISPLAY
shows:
00
the
program
countiri.g
This
tells
the
monitor
to
execute
a
program
starting
at
location
0000.
If
all
is
well
your
display
should
have
started
with
00
and
should
be
counting
its
way
to
99
at
which
time
it
will
start
over.
It
will
take
approximately
30
seconds
to
count
from
00
to 99.
If
your
display
is
not
counting
then
something
is
wrong
and you
should
go
back
and
examine
the
program
for
errors.
Notice
that
touching
keys
on
the
keyboard
produces
no
results
since
the
computer
is
running
the
sample
program
and
not
the
monitor
program.
Keyboard
control
can
only
be
regafaed
by
pressing
the
"RESET"
button
which
causes
the
computer
to
return
to
the
monitor
program.
19

MODIFYING
THE
PROGRAM
Y
ou
can
make
your
computer
count
faster
or
slower
by changing
the
speed
setting
at
address
0008.
To
make
it
count
faster,
a
smaller
number
should
be
sub-
stituted.
For
example;
Type:
RESET
0-0-0-8
DISP
2-0
ENTER
0-0-0-0
RUN
DISPLAY
shows:
00
08
50
20
es
00
counting
This
will
cause
the
counting
rate
to
increase
by
more
than
double.
Notice
that
the
operations
performed
were:
(
o-o-o-8-DISPLAY)
set
the
pointer
to
location
0008;
(2-0-ENTER)
enter
20
in
location
0008;
(0-0-0-0-RUN)
run
the
program
starting
at
location
0000. (Note:
the
speed
setting
is
in
hex;
therefore
the
largest
number
that
can
be
used
is
"FF"
and
not
"99".)
·
Y
ou
can
change
the
number
that
the
program
counts
with
by
changing
location
0012
(presently
"Ol").
Try
"05".
For
an
interesting
effect
restore
location
0012 to
"Ol"
and
then
change
locations
0007
and
0008 to "AA"
and
"EA"
respectively.
(The
easiest
way to
accom-
plish
this
is
as
follows:
0-0-0-7-DISPLAY-A-A-ENTER-E-A-ENTER-O-O-l-2-
DISPLAY-0-1-ENTER).
This
replaces
a
two-byte
instruction
(LDX #$50)
with
two
one-byte
instructions
("TAX"
and
"NOP")• Now
run
the
program
and
note
that
the
effect
produced
is
to
count
slower
as
the
number
gets
larger.
It
is
left
as
an
exercise
to
the
user
to
determine
why
these
changes
produce
this
effect.
If
you would
like
for
the
computer
to
teach
you how
to
Count
in
hex
then
restore
the
program
to
normal
and
then
Change
location
OOOF
to
"D8".
Run
the
program
and
watch
the
display
count
up
in
hexadecimal
(You
may
want
to slow
it
down
as
noted
above).
OTHER
GOODIES
IN
PIEBUG
So
far
you
have
used
four
control
keys
(DISPLAY,
ENTER,
BACKSPACE,
and
RUN).
Four
more
remain
tobe
defined
(POINTER HIGH,
POINTER
LOW,
TAPE,
and
RELATIVE ADDRESS COMPUTE).
Since
the
pointer
contains
four
digits
but
the
display
can
only show two
digits,
the
pointer
is
divided
into
two
segments:
POINTER HIGH
and
POINTER
I.DW.
Each
contains
two
digits
of
the
pointer.
POINTER
HtGH
(PH)
AND
POINTER
LOW
(PL)
These
two
keys
are
used
to
see
exactly
what
address
the
pointer
contains.
Touching
key
"PH"
will
display
the
first
two
digits
of
the
pointer
and
likewise
"PL"
will
display
the
last
two
digits.
Normal
sequence
is
'·'PH-PL-DISP"
which
will
show
you
2othe
pointer
and
then
the
contents
of
the
location
it's
pointing
to.

TAPE
lf
you
have
the
cassette
tape
option
this
key
can
be
used
to
save
programs
on
tape
and load
them
back
into
the
computer
at
a
later
time.
Details
of
its
use
are
supplied
with
the option.
***CAUTION***
lf
your
computer
does
not
have
this
option and you touch
this
key, you
may
lose
control
of
the
computer
and
it
may
overwrite
portions
of
your
program
with
garbage
and
it
may
just
eat
your
lunch!
RELATIVE
ADDRESS
COMPUTE
As
you
learn
to
write
programs
you
will
develop a
need
to
compute
relative
addresses.
These
addresses
take
only two
digits
instead
of
the
usual
four
and
can
be
computed
by
hand. However, a much
faster
and
more
accurate
way
is
to
let
the
computer
do
it
at
the touch of a button.
The
monitor
contains
a
program
to compute
relative
addresses
for
you.
To
use
it
you
simply
enter
a
program
as
you
normally
would and
then
when you
come
to a
brauch
operand,
instead
of
typing
in
the
operand
(relative
address)
type
in
the
absolute
(4-digit)
address
of
the
destination
and
then
touch
the
"REL"
key.
Instantly
the
correct
operand
will
appear
in
the
display.
lf
the
display
indicates_
11
00
11
then the
destination
was
out
of
range.
Otherwise
you
may
enter
the
operand
with
the
"ENTER"
key.
Part
of
the
sample
program
is
used
for
an
example.
Starting
at
location
0009;
Type:
0-0-0-9
DISP
C-8
ENTER
D-0
ENTER
0-0-0-9
REL
ENTER
DISPLAY shows: 09
X.X
es
X.X
DO
X.X
09
FD
When you touched
the
"REL"
key
the
display
should have
indicated
"FD"
9
as
shown
in
the
program.
DEBUGGING
YOUR
PROGRAMS
Normally
a new
program
will
never
run
properly
the
first
time
(this
is
a
perfect
example
of
Murphy's
Law:
lf
anything
can
go
wrong,
it
will!).
Therefore
some
means
of
determining
what
went
wrong
with
your
program
is
necessary.
Most
computers
use
a
"breakpoint"
for
this
purpose.
The
idea
behind
it
is
to
stop
the
computer
at
some
specified
point
in
your
program
and
display
the contents of
the
processor's
internal
registers
as
well
as
any
other
memory
locations
pertinent
to
your
program
(such
as
those
containing
status
information).
By doing
this
you
can
compare
the
status
of
the
computer
against
what you thought
it
should
be
at
that
point.
lf
it
doesn't
agree
then
you
have
a
clue
to
what
is
wrang
and
by
placing
the
breakpoint
at
previous
points
in
your
program
you
can
determine
just
where
it
is
that
you and
your
computer
disagree.
21
Table of contents
Popular Controllers manuals by other brands

MULTISPAN
MULTISPAN MMC-1046T operating manual

Walchem
Walchem WTCW100 Series instruction manual

STEINEL PROFESSIONAL
STEINEL PROFESSIONAL Light Sensor Dual Information

C-COM Satellite Systems
C-COM Satellite Systems iNetVu 7710 user manual

EAS Electric
EAS Electric ECEN Series instruction manual

Fortinet
Fortinet FortiWLC-500D quick start guide