8302 pinout help request...

Nagging hardware related question? Post here!
User avatar
Dave
SandySuperQDave
Posts: 2765
Joined: Sat Jan 22, 2011 6:52 am
Location: Austin, TX
Contact:

8302 pinout help request...

Post by Dave »

8302 Pinout help...

1 ERASE
2 /EXTINT
3 /WORDW
4 NETOUT
5 BAUDX4
6 /DTR1
7 /CTS2
8 /DSMC
9 /RDW
10 /PCEN
11 5V
12 DB2
13 TX01
14 TX02
15 A5
16 NETIN
17 A1
18 A0
19 RAW2
20 RESINTGND
21 RAW1
22 DB7 ***OR*** COMCTL depending on, well, the schematic has both at pin 22.
23 DB6
24 DB3
25 CLKCPU
26 /IPL1
27 /RESINT
28 /RESETOUT
29
30 XTAL1
31 XTAL2
32 VSYNCH
33 MDSELCKN
34 MDSELDN
35 COMDATA
36 DB1
37 DB0
38 DB5
39 DB4
40 5V

What does pin 29 do?
Is pin 22 DB7 or COMCTL? Pin 29 is the other of those two?


Nasta
Gold Card
Posts: 443
Joined: Sun Feb 12, 2012 2:02 am
Location: Zapresic, Croatia

Re: 8302 pinout help request...

Post by Nasta »

From the Aurora board:
1 ERASE out
2 EXTINTL in
3 MDR/WL out
4 NETO out
5 BAUDX4 in?
6 CTS1 in
7 CTS2 in
8 DSL in
9 RDWL in
10 PCENL in (= chip select)
11 VCC (+5V)
12 D2 io
13 TXD1 out
14 TXD2 out
15 A5 in
16 NETI in
17 A1 in
18 A0 in
19 RAW2 io
20 GND
21 RAW1 io
22 D7 io
23 D6 io
24 D4 io
25 CLKIN (=CLKCPU) in
26 IPL1L out
27 RESINL in
28 RESOUTL out
29 COMCTL io
30 XTAL1
31 XTAL2
32 VSYNCH in
33 MDSELCK out
34 MDSELD out
35 COMDAT io
36 D1 io
37 D0 io
38 D5 io
39 D4 io
40 VBAT


User avatar
Dave
SandySuperQDave
Posts: 2765
Joined: Sat Jan 22, 2011 6:52 am
Location: Austin, TX
Contact:

Re: 8302 pinout help request...

Post by Dave »

Excellent :) Thanks Nasta!

According to my logic probing, BAUDX4 is output by the 8302 to the 8049.


Nasta
Gold Card
Posts: 443
Joined: Sun Feb 12, 2012 2:02 am
Location: Zapresic, Croatia

Re: 8302 pinout help request...

Post by Nasta »

Yes, checked - BAUDX4 is an input to the 8049 timer input pin.
I wonder if it's actually a constant frequency (baud rate base frequency) or actually chosen baud rate x4...


User avatar
tofro
Font of All Knowledge
Posts: 2685
Joined: Sun Feb 13, 2011 10:53 pm
Location: SW Germany

Re: 8302 pinout help request...

Post by tofro »

Nasta,

as there is a

Code: Select all

BAUD_CMD 13	change baud rate
in the list of documented IPC link commands, I am pretty sure he actual baud rate is generated on the IPC itself. That would imply that what goes into the IPC is a baud rate base clock.

Tobias


ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
User avatar
janbredenbeek
Super Gold Card
Posts: 629
Joined: Wed Jan 21, 2015 4:54 pm
Location: Hilversum, The Netherlands

Re: 8302 pinout help request...

Post by janbredenbeek »

tofro wrote:Nasta,

as there is a

Code: Select all

BAUD_CMD 13	change baud rate
in the list of documented IPC link commands, I am pretty sure he actual baud rate is generated on the IPC itself. That would imply that what goes into the IPC is a baud rate base clock.
The transmit baud rate is controlled by the lower three bits of SV.TMOD (SYS_TMOD on SMSQ); 000 means 19200 and 111 means 75 baud. This is written to the PC.TCTRL hardware register at $18002 (and bit 3 controls which serial port is used for transmission). The MT.BAUD trap both sends the IPC command and sets these bits.
When using Hermes as IPC it is possible to have split baud rate for send and receive; Hermes has an 'extended' IPC command (12) to set the receive baud rate independent of the rate set by MT.BAUD.
As the PC.TCTRL register controls the 8302, my opinion is that it's the 8302 which controls the baud rate and the BAUDX4 line is a clock signal to be used by the 8049 to read the incoming RS232 signal.
I'm not sure though how Hermes handles the split baud rates. Perhaps tomorrow after taking a night's sleep ;)

Jan.


User avatar
janbredenbeek
Super Gold Card
Posts: 629
Joined: Wed Jan 21, 2015 4:54 pm
Location: Hilversum, The Netherlands

Re: 8302 pinout help request...

Post by janbredenbeek »

After making a trip down memory lane I can indeed confirm that the 8302 generates a true BAUDX4 signal. I even used it back in 1987 to drive my own serial port using a 6850 ACIA. I took the signal from pin 5 and set the BAUD rate to 4800 in order to drive my dumb 1200/75 baud modem, thus avoiding the need for a clock oscillator on the SER3 board. See the circuit diagram below (sorry for the Dutch descriptions, it was published in the Dutch Quasar magazine).

Jan.
ser3-colour.jpg


Nasta
Gold Card
Posts: 443
Joined: Sun Feb 12, 2012 2:02 am
Location: Zapresic, Croatia

Re: 8302 pinout help request...

Post by Nasta »

That reminded me - I seem to remember Hermes does not use BAUDX4. The trick is, the 11MHz clock is close enough (0.6%) to the standard 11.0592 standard baud rate generator crystal (Sinclair must have had loads of 11MHz since this, unlike the 11.0592 is not standard and usually MUCH more expensive) is a /3 base clock. The IPC uses clock/12 as it's internal cycle clock (so 11/(3x4)) = 921600. Keep dividing this by 2 and you get standard baud rates. If you feed this to the IPC timer, you can divide it by 1, 2, 4, ...128 (8 total) and use this to generate an oversampling baud rate - or just handle it in software. This is why BAUDx4 was used - it's a standard way of oversampling the serial input so that the actual bit is sampled 'in the middle' and/or disturbances are suppressed by averaging.
If the IPC software generates it's own baud rate, you get a split baud rate feature.

The issue of multiplexing two ports into one is that it relies on external devices listening to their respective handshake signals and not transmit when told not to - if not, the two serial port input streams will simply be OR-ed, and thus corrupted. The actual QL hardware does not physically mute the unwanted input, if it did, only the chattering port would have it's data corrupted, the well behaved one would not.

TBH I'd rather dispense with the multiplexing and have one reliable port with split baud rate capability. The reason is that when both ports are enabled and multiplexing is functioning normally, the combined throughput of both ports is even a bit lower than when a single port is opened (either one) - in which case multiplexing is disabled (the multiplexer is parked in a single position).


User avatar
janbredenbeek
Super Gold Card
Posts: 629
Joined: Wed Jan 21, 2015 4:54 pm
Location: Hilversum, The Netherlands

Re: 8302 pinout help request...

Post by janbredenbeek »

Nasta wrote:That reminded me - I seem to remember Hermes does not use BAUDX4. The trick is, the 11MHz clock is close enough (0.6%) to the standard 11.0592 standard baud rate generator crystal (Sinclair must have had loads of 11MHz since this, unlike the 11.0592 is not standard and usually MUCH more expensive) is a /3 base clock. The IPC uses clock/12 as it's internal cycle clock (so 11/(3x4)) = 921600. Keep dividing this by 2 and you get standard baud rates. If you feed this to the IPC timer, you can divide it by 1, 2, 4, ...128 (8 total) and use this to generate an oversampling baud rate - or just handle it in software. This is why BAUDx4 was used - it's a standard way of oversampling the serial input so that the actual bit is sampled 'in the middle' and/or disturbances are suppressed by averaging.
If the IPC software generates it's own baud rate, you get a split baud rate feature.
I've taken a look at the Hermes manual and it indeed mentions that the BAUDX4 line (pin 39) is no longer used.
The issue of multiplexing two ports into one is that it relies on external devices listening to their respective handshake signals and not transmit when told not to - if not, the two serial port input streams will simply be OR-ed, and thus corrupted. The actual QL hardware does not physically mute the unwanted input, if it did, only the chattering port would have it's data corrupted, the well behaved one would not.

TBH I'd rather dispense with the multiplexing and have one reliable port with split baud rate capability. The reason is that when both ports are enabled and multiplexing is functioning normally, the combined throughput of both ports is even a bit lower than when a single port is opened (either one) - in which case multiplexing is disabled (the multiplexer is parked in a single position).
Well, I believe the ports were designed with the intention to drive a serial printer - at least one of them, while the other could be used for communications. The output lines are not multiplexed and could very well use different speeds. But back in the '80s most modems were dumb and non-buffered so you needed another expensive box (Qconnect) or a more expensive intelligent modem (Astracom or Hayes-compatible) to use the QL's SER ports reliably.

Jan.


User avatar
Dave
SandySuperQDave
Posts: 2765
Joined: Sat Jan 22, 2011 6:52 am
Location: Austin, TX
Contact:

Re: 8302 pinout help request...

Post by Dave »

The 8302 question has been nicely answered and given rise to some insightful discussion.

For the issue 8 I'll be leaving serial mostly alone, except I'll only be installing one socket for SER1. Ser1 and Ser2 will be a small header on the PCB compatible with the Aurora layout so it will be available externally AND for re-cased users in a civilized fashion. For the installed socket, I have relented and will use a female 9 pin D-SUB with the standard PC pinout. I will recess it a little, so UK QLers who do not wish to use it will not have to trim the hole on the back of their cases. German/US QLers can request a matching gasket like the one they already have attached to their existing motherboards.

I had the Astracom modem with the upgraded Hayes ROM. He even let me swap my grey case for a black one so it matched my QL. He was all "I have all these black cases and I don't know what to do with them!" I was all, "so, QLers, they like it black, ok!"

It was only after that when he started targeting QLers with specific advertising.

I guess I was an early adopter.


Post Reply