[Coco] Color Forth Help Request
Arthur Flexser
flexser at fiu.edu
Sat Feb 21 14:58:10 EST 2015
A small relocatable monitor program could still be put above Super Extended
Basic. I take it VCC has no breakpoint and single-stepping capabilities?
Art
On Sat, Feb 21, 2015 at 2:19 PM, Stephen Pereira <spereira1952 at comcast.net>
wrote:
> Hi Art,
>
> You are absolutely right.
>
> The problem I face with my Color Forth project is that Color Forth
> (fig-FORTH in general) wants to take over the entire machine. My Color
> Forth Nucleus resides in the high portion of the low 32K on the CoCo, $5800
> and up. the rest of the Forth system resides above $2000, filling up from
> $2000 to $57FF. As you know, the display screen and DECB reside in lower
> memory from $0000 to $1FFF. So I face a real problem attempting to debug
> this code.
>
> So far, the good folks here have been able to lend a hand as I get in over
> my head.
>
> Thanks again, for all your patience and attention.
>
> smp
> --
> Stephen M. Pereira
> Bedford, NH 03110
> KB1SXE
>
>
> > On Feb 21, 2015, at 1:39 PM, Arthur Flexser <flexser at fiu.edu> wrote:
> >
> > I'd suggest acquiring a programming tool that allows you to set
> breakpoints
> > and single step, which would have quickly turned up the location of the
> > error. Perhaps VCC allows this as an option?
> >
> > Art
> >
> > On Sat, Feb 21, 2015 at 12:20 PM, Stephen Pereira <
> spereira1952 at comcast.net>
> > wrote:
> >
> >> Art & Darren:
> >>
> >> Thank you both so very much for your attention and assistance with my
> >> problem!
> >>
> >> As I said in a previous note, I am a good 8080 assembly language
> >> programmer, but I’m a rank beginner with the 6809. I am not surprised
> that
> >> I made this error, but I am surprised that the assembler did not catch
> it.
> >>
> >> I am using the EDTASM6309 that I purchased from Robert Gault. I’ll bet
> >> he’ll be interested to hear about this.
> >>
> >> This would have taken me quite a bit of time to figure out on my own, to
> >> say the least. I probably would have gone ahead and plugged in a 6809
> back
> >> into my computer in order to be using one machine for all my projects,
> >> rather than splitting between two different machines.
> >>
> >> Thanka a million, guys! I greatly appreciate your help with this!
> >>
> >> smp
> >> --
> >> Stephen M. Pereira
> >> Bedford, NH 03110
> >> KB1SXE
> >>
> >>
> >>> On Feb 20, 2015, at 8:16 PM, Darren A <mechacoco at gmail.com> wrote:
> >>>
> >>> On Fri, Feb 20, 2015 at 4:20 PM, Stephen Pereira <
> >> spereira1952 at comcast.net>
> >>> wrote:
> >>>
> >>>> Here is my code:
> >>>>
> >>>> *
> >>>> * BRUTE FORCE ROUTINE TO LOAD SCREENS 1 THRU 8
> >>>> * USING THE DECB LOADM ROUTINE
> >>>> * JAN 2015, SMP
> >>>> * ERROR CHECK & ADVICE FROM BRETT GORDON
> >>>> *
> >>>> FCB $84,'L,'S,'C,'R+$80
> >>>> FDB SSCR-7
> >>>> LSCR FDB *+2
> >>>> PSHS CC,A,B,DP,X,Y,U SAVE ALL JUST IN CASE
> >>>> LDX #$094C CLEAR FILE NAME LOCATION
> >>>> LDA #32
> >>>> L3 STA ,X+
> >>>> CMPX #$0954
> >>>> BNE L3
> >>>> LDX #$094C FILE NAME LOCATION
> >>>> L4 JSR $A1B1 GET KEY IN A
> >>>> TFR A,B SAVE KEY IN B
> >>>> PSHS B,X,Y
> >>>> JSR [$A002] ECHO KEY
> >>>> PULS Y,X,B
> >>>> TFR B,A GET KEY IN A
> >>>> CMPA #13 CR?
> >>>> BEQ NXT2 CR ENDS LOOP
> >>>> STA ,X+ STORE KEY IN FILE NAME
> >>>> CMPX #$0954 DONE IF 8 KEYS
> >>>> BNE L4
> >>>> NXT2 LDX #$0954 FILE EXTENSION LOCATION
> >>>> LDA #$42 B
> >>>> STA ,X+
> >>>> LDA #$49 I
> >>>> STA ,X+
> >>>> LDA #$4E N
> >>>> STA ,X
> >>>> LDD #$0200 FILE TYPE = 2, ASCII FLAG = 0
> >>>> STD $0957
> >>>> LDX #$0000
> >>>> STX #$00D3 OFFSET = 0
> >>>> JSR $CA07 OPEN NEXT AVAIL FILE FOR INPUT
> >>>> LDD #RET2 RETURN ADDR FOR LOADM RTS
> >>>> PSHS D
> >>>> JMP $CFE3 LOADM
> >>>> RET2 PULS U,Y,X,DP,B,A,CC RESTORE ALL
> >>>> JMP NEXT RETURN TO FORTH
> >>>>
> >>>> This code works fine on a stock CoCo 3, as well as in VCC with a 6809
> >>>> CPU. It is not elegant, and I don’t think I tried any fancy stuff.
> >> Don’t
> >>>> worry about the first few lines of code - they are for linking into
> >> Color
> >>>> Forth, and that seem to be fine.
> >>>>
> >>>> As far as I can tell, this code does not initiate any disk activity
> when
> >>>> the CPU is a 6309, the machine simply goes off into never-never-land.
> >>>>
> >>>> Thanks, in advance, for whatever observations or advice you may have
> to
> >>>> offer.
> >>>>
> >>>
> >>>
> >>> The code listing above contains an illegal instruction. In particular:
> >>>
> >>> STX #$00D3 OFFSET = 0
> >>>
> >>> You can't use an immediate operand with STX. If that is how it actually
> >>> appears in your source code then it should be fixed. I would be
> >> surprised
> >>> that an assembler accepts that without an error or warning.
> >>>
> >>> - Darren
> >>>
> >>> --
> >>> 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