Difference between revisions of "Port"

From veswiki
Jump to: navigation, search
(Port 0)
Line 1: Line 1:
 +
If you came looking for Channel F II (and compatibles) joystick port pinout this is it:<br>
 +
<br>
 +
Standard 9 pin D-SUB connector<br>
 +
1: clockwise<br>
 +
2: counter-clockwise<br>
 +
3: pull up<br>
 +
4: push down<br>
 +
5: right<br>
 +
6: forward<br>
 +
7: back<br>
 +
8: left<br>
 +
9: common<br>
 +
<br>
 +
<br>
 +
But this page is really about the data ports in the F8 processor system...<br>
 +
<br>
 
The VES has four usable 8-bit data ports in the console, port 0 and 1 that are in the 3850 CPU and port 4 and 5 on one of the 3851 Program Storage Units. These I/O:s are hooked to specific functions as shown in the table below.
 
The VES has four usable 8-bit data ports in the console, port 0 and 1 that are in the 3850 CPU and port 4 and 5 on one of the 3851 Program Storage Units. These I/O:s are hooked to specific functions as shown in the table below.
 
<br>
 
<br>

Revision as of 07:53, 22 September 2014

If you came looking for Channel F II (and compatibles) joystick port pinout this is it:

Standard 9 pin D-SUB connector
1: clockwise
2: counter-clockwise
3: pull up
4: push down
5: right
6: forward
7: back
8: left
9: common


But this page is really about the data ports in the F8 processor system...

The VES has four usable 8-bit data ports in the console, port 0 and 1 that are in the 3850 CPU and port 4 and 5 on one of the 3851 Program Storage Units. These I/O:s are hooked to specific functions as shown in the table below.

Port 0

0 TIME console button
1 MODE console button
2 HOLD console button
3 START console button
4 - not connected -
5 RAM WRT - A pulse here executes a write to Video RAM.
6 Enable data from controllers (1 equals enable), also needs pulse to write to Video RAM.
7 - not connected -

Port 1

0 Right controller right
1 Right controller left
2 Right controller back
3 Right controller forward
4 Right controller counter clockwise
5 Right controller clockwise
6 Right controller pull
7 Right controller push

Two bits have a second function, they decide the color of a plotted pixel:

6 Write Data0, Indicates that valid data is present for both VRAM ODD0 and EVEN0
7 Write Data1, Indicates that valid data is present for both VRAM ODD1 and EVEN1

Port 4

Port 4 has double duties and serve left controller
as well as horizontal video position.

0 Left controller right
1 Left controller left
2 Left controller back
3 Left controller forward
4 Left controller counter clockwise
5 Left controller clockwise
6 Left controller pull
7 Left controller push

Also:

0 Video Select
1 Video Horizontal A
2 Video Horizontal B
3 Video Horizontal C
4 Video Horizontal D
5 Video Horizontal E
6 Video Horizontal F
7


Port 5

Port 5 serves the vertical video position and also sound.

0 Video Vertical A
1 Video Vertical B
2 Video Vertical C
3 Video Vertical D
4 Video Vertical E
5 Video Vertical F
6 Tone AN (beep sound)
7 Tone BN (beep sound)


When looking at the opcodes we'll see that using the two ports on the CPU requires half the CPU time compared to using Port 4 and 5 on the PSU, this means that you can fetch right hand controller data two cycles faster than from left one.