[Coco] Bit-Banger Serial as external console?
Arthur Flexser
flexser at fiu.edu
Tue Mar 26 19:34:07 EDT 2019
Other than that, I see no obvious source of incompatibility with the
CoCo 3, so I'd tend to suspect there might be one or more other errors
in entering the code, if you typed it in from the listing and assuming
the listing itself was rendered correctly in the Rainbow. Can an
already assembled binary copy be downloaded from Rainbow on Tape/Disk
or something, so you could see if that one runs correctly? Or
perhaps you could upload your binary to someplace people on the list
could access so we could see if it at least runs okay on a CoCo 1/2.
Art
On Tue, Mar 26, 2019 at 4:17 PM Stephen Pereira
<stephen.m.pereira.sr at gmail.com> wrote:
>
> Hi Art,
>
> That’s $8E0C, not $BE0C.
>
> I had fixed that - I don’t know how that typo go through. I’m pretty sure that if I had used $BE0c the system would have crashed.
>
> smp
> - - -
> Stephen Pereira
> Bedford, NH 03110
> KB1SXE
>
>
> > On Mar 26, 2019, at 3:36 PM, Arthur Flexser <flexser at fiu.edu> wrote:
> >
> > One thing I notice is that ROM call to $BE0C (RSOUT). This is not a
> > logical entry point for a character output routine, and might be a
> > typo. (It's in the middle of some floating point routines.)
> > You could try tweaking the baud rate constant a bit, to see if it's a
> > timing problem.
> >
> > You might check the letters in the following Rainbow issues and Dan
> > Downard's next column (I seem to remember that he was a regular
> > contributer) to see if any corrections are suggested.
> >
> > Art
> >
> > On Tue, Mar 26, 2019 at 3:18 PM Stephen Pereira
> > <stephen.m.pereira.sr at gmail.com> wrote:
> >>
> >> Hello again, folks,
> >>
> >> I took Arthur’s advice and started looking for BBS code. I ended up looking at an article in the November 1983 Rainbow titled “Remote Operation of the Color Computer”. It has exactly what I think I need. The tiny assembly language program installs input & output from a remote terminal along with the normal keyboard and screen. When running, a person at the remote terminal can operate the CoCo as if they were directly on the system.
> >>
> >> Of course, the trouble is that the program does not work for me on my CoCo 3. The communication gets established, but the actual characters get scrambled in both directions. I’ve tried 150, 300 and 600 Baud, as well as 1 or 2 stop bits, and 7 or 8 data bits.
> >>
> >> I’m concerned that maybe this code cannot work properly on the CoCo 3 because it had not yet arrived?
> >>
> >> Here’s a copy of the code if anyone else would like to try it out. Please let me know if you are successful!
> >>
> >> ********************************
> >> * REMOTE *
> >> * A REMOTE TERMINAL DRIVER *
> >> * FOR THE COCO *
> >> * DAN DOWNARD RAINBOW 11/83 *
> >> ********************************
> >> ORG $3F00
> >> * EQUATES FOR ROM & RAM ADDRESSES
> >> IHOOK EQU $016A
> >> OHOOK EQU $0167
> >> PIA EQU $FF22
> >> POLCAT EQU $A000
> >> RSOUT EQU $BE0C
> >> BAUD EQU $E6
> >> BAUDR EQU $C9
> >> DEV EQU $6F
> >> FLAG EQU $70
> >> * INITIALIZE RAM HOOKS
> >> START LDA #BAUDR
> >> STA <BAUD
> >> LDX 1+OHOOK
> >> STX 1+ORET2,PCR
> >> LDX 1+IHOOK
> >> STX 1+IRET2,PCR
> >> LDA #$7E
> >> STA IHOOK
> >> STA OHOOK
> >> LEAX OUT,PCR
> >> STX 1+OHOOK
> >> LEAX IN,PCR
> >> STX 1+IHOOK
> >> RET RTS
> >> * OUTPUT CHARACTER IF DEV=0
> >> * INSERT LINE FEED TO REMOTE DEVICE
> >> * USE ROM SUBROUTINE
> >> OUT PSHS A
> >> TST <DEV
> >> BNE ORET1
> >> CMPA #$0D
> >> BNE REMOUT
> >> LDA #$0A
> >> JSR RSOUT
> >> LDA #$0D
> >> REMOUT JSR RSOUT
> >> ORET1 PULS A
> >> ORET2 JMP RET
> >> * INPUT FROM KEYBOARD OR RS-232
> >> * IF DEV=0
> >> * USE RSIN FOR REMOTE INPUT
> >> IN CLR <FLAG
> >> TST <DEV
> >> BNE IRET2
> >> LEAS 2,S
> >> PSHS B,CC,X
> >> IN1 JSR [POLCAT]
> >> BEQ REMIN
> >> BRA IRET1
> >> * CHECK FOR REMOTE INPUT
> >> REMIN LDB $FF22
> >> RORB
> >> BCS IN1
> >> * RS-232 INPUT ROUTINE
> >> * BYTE INTO A REGISTER
> >> RSIN BSR HALF
> >> LDB #1
> >> PSHS B
> >> CLRA
> >> RSIN1 BSR FULL
> >> LDB PIA
> >> RORB
> >> BCC RSIN2
> >> ORA 0,S
> >> RSIN2 ASL 0,S
> >> BCC RSIN1
> >> LEAS 1,S
> >> ANDA #$7F
> >> IRET1 PULS B,CC,X,PC
> >> IRET2 JMP RET
> >> * BAUD RATE DELAYS
> >> FULL BSR HALF
> >> HALF PSHS A
> >> LDA <BAUD
> >> HALF1 BRN HALF1
> >> DECA
> >> BNE HALF1
> >> PULS PC,A
> >> END START
> >>
> >>
> >> smp
> >> - - -
> >> Stephen Pereira
> >> Bedford, NH 03110
> >> KB1SXE
> >>
> >>
> >>> On Mar 26, 2019, at 2:03 PM, Chester A Patterson <vchester at setec-cr.com> wrote:
> >>>
> >>> Years ago I used Cocos via their bit-bangers to communicate with remote screens connected to scales in production lines. The scale keyboard had three function keys to communicate back to the Coco. So the scale operator interacted with the Coco all day. I enjoyed those projects immensely. I got the idea because of reading in Rainbow (I think) of some oil drilling site that used a Coco to control the drilling. Ages ago that.
> >>>
> >>> -----Original Message-----
> >>> From: Stephen Fischer <SFischer1 at Mindspring.com>
> >>> Sent: Monday, March 25, 2019 9:47 PM
> >>> To: coco at maltedmedia.com
> >>> Subject: Re: [Coco] Bit-Banger Serial as external console?
> >>>
> >>>
> >>> It is out of scope for your project,
> >>>
> >>> But I remember vaguely using OS-9 to log in on another computer using the bit banger on the CoCo.
> >>>
> >>> If someone can confirm that, the NitrOS-9 source code might be useful to look at.
> >>>
> >>> It has been 25 +- 10 or more years so my memory is very fuzzy.
> >>>
> >>> SHF
> >>>
> >>>
> >>>
> >>> --
> >>> Coco mailing list
> >>> Coco at maltedmedia.com
> >>> https://pairlist5.pair.net/mailman/listinfo/coco
> >>
> >>
> >> --
> >> Coco mailing list
> >> Coco at maltedmedia.com
> >> https://pairlist5.pair.net/mailman/listinfo/coco
> >
> > --
> > Coco mailing list
> > Coco at maltedmedia.com
> > https://pairlist5.pair.net/mailman/listinfo/coco
>
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco
More information about the Coco
mailing list