[Coco] Dual UART with FIFO Card for the CoCo
Phill Harvey-Smith
afra at aurigae.demon.co.uk
Sun Jun 13 20:07:24 EDT 2010
Gene Heskett wrote:
> On Sunday 13 June 2010, Phill Harvey-Smith wrote:
>> Gene Heskett wrote:
>
> There is an echo in here Phill. ;-) And as long as we use modern cmos
> chips, the additional drain on the coco's supply should be minimal,
> particularly if we replace some of the old hungry TTL stuff that wouldn't be
> needed as it would just dup what we'll do but we'll do it better.
Indeed, though there is one fly in the ointment I noticed from the CoCo
rom disassebilies, the Init code on the CoCo 1/2 actually takes
advantage of the mirrored PIA 1 addresses :(
A02A 8E FF 20 LA02A LDX #PIA1 POINT X TO PIA1
A02D 6F 1D CLR -3,X CLEAR PIA0 CONTROL
REGISTER A
A02F 6F 1F CLR -1,X CLEAR PIA0 CONTROL
REGISTER B
A031 6F 1C CLR -4,X SET PIA0 SIDE A TO INPUT
A033 CC FF 34 LDD #$FF34 *
A036 A7 1E STA -2,X * SET PIA0 SIDE B TO OUTPUT
A038 E7 1D STB -3,X * ENABLE PIA0 PERIPHERAL
REGISTERS, DISABLE PIA0
A03A E7 1F STB -1,X * MPU INTERRUPTS, SET
CA2, CA1 TO OUTPUTS
A03C 6F 01 CLR 1,X CLEAR CONTROL REGISTER A
ON PIA1
A03E 6F 03 CLR 3,X CLEAR CONTROL REGISTER B
ON PIA1
A040 4A DECA A REG NOW HAS $FE
A041 A7 84 STA ,X BITS 1-7 ARE OUTPUTS,
BIT 0 IS INPUT ON PIA1 SIDE A
A043 86 F8 LDA #$F8 =
A045 A7 02 STA 2,X = BITS 0-2 ARE INPUTS,
BITS 3-7 ARE OUTPUTS ON B SIDE
A047 E7 01 STB 1,X * ENABLE PERIPHERAL
REGISTERS, DISABLE PIA1 MPU
A049 E7 03 STB 3,X * INTERRUPTS AND SET
CA2, CB2 AS OUTPUTS
A04B 6F 02 CLR 2,X SET 6847 MODE TO
ALPHA-NUMERIC
A04D C6 02 LDB #$02 *
A04F E7 84 STB ,X * MAKE RS232 OUTPUT MARKING
By the looks of things both the Dragon 32 and 64 roms don't have the
same problem, however the 64 has the 6551 ACIA at $FF04-$FF08. I guess
the Tandy roms could probably be fixed, but that would mean blowing new
roms to do so.
> We just need to standardize how its done so that we don't have 250
> individually unique versions, one for each of us left. That would be a
> disaster to the group as a whole.
Indeed :(
> Hint, leave the stuff at $ff40+ alone, because many of us have worked out
> what works for us already.
That would seem sensible.
Cheers.
Phill.
--
Phill Harvey-Smith, Programmer, Hardware hacker, and general eccentric !
"You can twist perceptions, but reality won't budge" -- Rush.
More information about the Coco
mailing list